File: autoconf.info, Node: autoreconf Invocation, Prev: autoconf Invocation, Up: Making configure Scripts 3.5 Using ‘autoreconf’ to Update ‘configure’ Scripts ==================================================== Installing the various components of the GNU Build System can be tedious: running ‘autopoint’ for Gettext, ‘automake’ for ‘Makefile.in’ etc. in each directory. It may be needed either because some tools such as ‘automake’ have been updated on your system, or because some of the sources such as ‘configure.ac’ have been updated, or finally, simply in order to install the GNU Build System in a fresh tree. ‘autoreconf’ runs ‘autoconf’, ‘autoheader’, ‘aclocal’, ‘automake’, ‘libtoolize’, ‘intltoolize’, ‘gtkdocize’, and ‘autopoint’ (when appropriate) repeatedly to update the GNU Build System in the specified directories and their subdirectories (*note Subdirectories::). By default, it only remakes those files that are older than their sources. If you install a new version of some tool, you can make ‘autoreconf’ remake _all_ of the files by giving it the ‘--force’ option. The environment variables ‘AUTOM4TE’, ‘AUTOCONF’, ‘AUTOHEADER’, ‘AUTOMAKE’, ‘ACLOCAL’, ‘AUTOPOINT’, ‘LIBTOOLIZE’, ‘INTLTOOLIZE’, ‘GTKDOCIZE’, ‘M4’, and ‘MAKE’ may be used to override the invocation of the respective tools. Except for ‘AUTOM4TE’ and ‘M4’, setting any of these enviroment variables to ‘true’, ‘false’, ‘:’, or the empty string has the same effect as passing ‘--exclude=CMD’ on the command line, where CMD is the lowercased version of the command’s name; see the description of the ‘--exclude’ option, below. *Note Automatic Remaking::, for Make rules to automatically rebuild ‘configure’ scripts when their source files change. That method handles the timestamps of configuration header templates properly, but does not pass ‘--autoconf-dir=DIR’ or ‘--localdir=DIR’. Gettext supplies the ‘autopoint’ command to add translation infrastructure to a source package. If you use ‘autopoint’, your ‘configure.ac’ should invoke ‘AM_GNU_GETTEXT’ and one of ‘AM_GNU_GETTEXT_VERSION(GETTEXT-VERSION)’ or ‘AM_GNU_GETTEXT_REQUIRE_VERSION(MIN-GETTEXT-VERSION)’. *Note Invoking the ‘autopoint’ Program: (gettext)autopoint Invocation, for further details. ‘autoreconf’ accepts the following options: ‘--help’ ‘-h’ Print a summary of the command line options and exit. ‘--version’ ‘-V’ Print the version number of Autoconf and exit. ‘--verbose’ ‘-v’ Print the name of each directory ‘autoreconf’ examines and the commands it runs. If given two or more times, pass ‘--verbose’ to subordinate tools that support it. ‘--debug’ ‘-d’ Don’t remove the temporary files. ‘--force’ ‘-f’ Consider all generated and standard auxiliary files to be obsolete. This remakes even ‘configure’ scripts and configuration headers that are newer than their input files (‘configure.ac’ and, if present, ‘aclocal.m4’). If deemed appropriate, this option triggers calls to ‘automake --force-missing’. Passing both ‘--force’ and ‘--install’ to ‘autoreconf’ will in turn undo any customizations to standard files. Note that the macro ‘AM_INIT_AUTOMAKE’ has some options which change the set of files considered to be standard. ‘--replace-handwritten’ ‘-R’ Replace files that _could_ be generated but appear to have been written by hand. Currently this only affects the treatment of the primary configuration header template (usually ‘config.h.in’; *note Header Templates::). In the future it may also affect ‘aclocal.m4’ and others. ‘--install’ ‘-i’ Install any missing standard auxiliary files in the package. By default, files are copied; this can be changed with ‘--symlink’. If deemed appropriate, this option triggers calls to ‘automake --add-missing’, ‘libtoolize’, ‘autopoint’, etc. ‘--no-recursive’ Do not rebuild files in subdirectories to configure (see *note Subdirectories::, macro ‘AC_CONFIG_SUBDIRS’). ‘--symlink’ ‘-s’ When used with ‘--install’, install symbolic links to the missing auxiliary files instead of copying them. ‘--make’ ‘-m’ When the directories were configured, update the configuration by running ‘./config.status --recheck && ./config.status’, and then run ‘make’. ‘--exclude=CMD[,CMD...]’ ‘-x CMD[,CMD...]’ Do not run any CMD in the list, even if it seems to be needed. CMD can be ‘autoconf’, ‘autoheader’, ‘automake’, ‘aclocal’, ‘autopoint’, ‘libtoolize’, ‘intltoolize’, ‘gtkdocize’, or ‘make’. ‘--exclude make’ has priority over ‘--make’. ‘--include=DIR’ ‘-I DIR’ Append DIR to the include path. Multiple invocations accumulate. Passed on to ‘aclocal’, ‘autoconf’ and ‘autoheader’ internally. ‘--prepend-include=DIR’ ‘-B DIR’ Prepend DIR to the include path. Multiple invocations accumulate. Passed on to ‘autoconf’ and ‘autoheader’ internally. ‘--warnings=CATEGORY[,CATEGORY...]’ ‘-WCATEGORY[,CATEGORY...]’ Enable or disable warnings related to each CATEGORY. *Note m4_warn::, for a comprehensive list of categories. Special values include: ‘all’ Enable all categories of warnings. ‘none’ Disable all categories of warnings. ‘error’ Treat all warnings as errors. ‘no-CATEGORY’ Disable warnings falling into CATEGORY. The environment variable ‘WARNINGS’ may also be set to a comma-separated list of warning categories to enable or disable. It is interpreted exactly the same way as the argument of ‘--warnings’, but unknown categories are silently ignored. The command line takes precedence; for instance, if ‘WARNINGS’ is set to ‘obsolete’, but ‘-Wnone’ is given on the command line, no warnings will be issued. Some categories of warnings are on by default. Again, for details see *note m4_warn::. If you want ‘autoreconf’ to pass flags that are not listed here on to ‘aclocal’, set ‘ACLOCAL_AMFLAGS’ in your ‘Makefile.am’. Due to a limitation in the Autoconf implementation these flags currently must be set on a single line in ‘Makefile.am’, without any backslash-newlines or makefile comments. Also, be aware that future Automake releases might start flagging ‘ACLOCAL_AMFLAGS’ as obsolescent, or even remove support for it.
