Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Next: , Previous: Configuration Links, Up: Setup

4.11 Configuring Other Packages in Subdirectories

In most situations, calling AC_OUTPUT is sufficient to produce makefiles in subdirectories. However, configure scripts that control more than one independent package can use AC_CONFIG_SUBDIRS to run configure scripts for other packages in subdirectories.

— Macro: AC_CONFIG_SUBDIRS (dir ...)

Make AC_OUTPUT run configure in each subdirectory dir in the given blank-or-newline-separated list. Each dir should be a literal, i.e., please do not use:

          if test "$package_foo_enabled" = yes; then
            $my_subdirs="$my_subdirs foo"
          fi
          AC_CONFIG_SUBDIRS([$my_subdirs])
     

because this prevents ‘./configure --help=recursive’ from displaying the options of the package foo. Instead, you should write:

          if test "$package_foo_enabled" = yes; then
            AC_CONFIG_SUBDIRS([foo])
          fi
     

If a given dir is not found, an error is reported: if the subdirectory is optional, write:

          if test -d "$srcdir/foo"; then
            AC_CONFIG_SUBDIRS([foo])
          fi
     

If a given dir contains configure.gnu, it is run instead of configure. This is for packages that might use a non-Autoconf script Configure, which can't be called through a wrapper configure since it would be the same file on case-insensitive file systems. Likewise, if a dir contains configure.in but no configure, the Cygnus configure script found by AC_CONFIG_AUX_DIR is used.

The subdirectory configure scripts are given the same command line options that were given to this configure script, with minor changes if needed, which include:

  • adjusting a relative name for the cache file;
  • adjusting a relative name for the source directory;
  • propagating the current value of $prefix, including if it was defaulted, and if the default values of the top level and of the subdirectory configure differ.

This macro also sets the output variable subdirs to the list of directories ‘dir ...’. Make rules can use this variable to determine which subdirectories to recurse into.

This macro may be called multiple times.


 
 
  Published under the terms of the GNU General Public License Design by Interspire