Although nesting packages isn’t something we would recommend to someone who is discovering the Autotools, it is a nice feature worthy of mention in this small advertising tour.
Autoconfiscated packages (that means packages whose build system have been created by Autoconf and friends) can be nested to arbitrary depth.
A typical setup is that package A will distribute one of the libraries
it needs in a subdirectory. This library B is a complete package with
its own GNU Build System. The
configure script of A will
configure script of B as part of its execution;
building and installing A will also build and install B. Generating a
distribution for A will also include B.
It is possible to gather several packages like this. GCC is a heavy user of this feature. This gives installers a single package to configure, build and install, while it allows developers to work on subpackages independently.
When configuring nested packages, the
given to the top-level
configure are passed recursively to
configures. A package that does not understand an
option will ignore it, assuming it is meaningful to some other
configure --help=recursive can be used to display
the options supported by all the included packages.
See Subpackages, for an example setup.