automake-1.16: Conditional Subdirectories

 
 7.2 Conditional Subdirectories
 ==============================
 
 It is possible to define the ‘SUBDIRS’ variable conditionally if, like
 in the case of GNU Inetutils, you want to only build a subset of the
 entire package.
 
    To illustrate how this works, let’s assume we have two directories,
 ‘src/’ and ‘opt/’.  ‘src/’ should always be built, but we want to decide
 in ‘configure’ whether ‘opt/’ will be built or not.  (For this example
 we will assume that ‘opt/’ should be built when the variable ‘$want_opt’
 was set to ‘yes’.)
 
    Running ‘make’ should thus recurse into ‘src/’ always, and then maybe
 in ‘opt/’.
 
    However ‘make dist’ should always recurse into both ‘src/’ and
 ‘opt/’, because ‘opt/’ should be distributed even if it is not needed in
 the current configuration.  This means ‘opt/Makefile’ should be created
 _unconditionally_.
 
    There are two ways to set up a project like this.  You can use
 Automake conditionals (⇒Conditionals) or use Autoconf ‘AC_SUBST’
 variables (⇒Setting Output Variables (autoconf)Setting Output
 Variables.).  Using Automake conditionals is the preferred solution.
 Before we illustrate these two possibilities, let’s introduce
 ‘DIST_SUBDIRS’.
 

Menu