autoreconf is the command to build and update an Automake
build system. It repeatedly runs individual programs in the correct
order to update all the necessary files in the build system, including
in any subdirectories (see Subdirectories). These programs include
autoreconf is provided as part of Autoconf.
If Libtool or Gettext are used as part of the project,
autoreconf may also run
autopoint respectively. (See Invoking the
autopoint Program in GNU
utilities, for further details.)
You could also run these programs yourself, but
saves you the trouble of thinking about what programs you need to run to
update particular files and the order you need to do it. See Appendix A
for a flowchart of which programs generate which files.
The environment variables
MAKE may be used to override the
invocation of the respective tools.
You may run ‘autoreconf --install’ to initialize a build system. You may also also want to run it because some of the sources such as configure.ac have been updated. However, in an already configured source tree, running ‘make’ will update the build system automatically, and running ‘autoreconf’ is not required.
(See 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.)
autoreconf only remakes those files that are older
than their sources. If you install a new version of some tool such as
automake, you can make
autoreconf remake all
of the files by giving it the --force option.
Print a summary of the command line options and exit.
Print the version number of Autoconf and exit.
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.
Don’t remove the temporary files.
Remake even configure scripts and configuration headers that are newer than their input files (configure.ac and, if present, aclocal.m4).
Install the missing 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.
Do not rebuild files in subdirectories to configure (see Subdirectories,
When used with --install, install symbolic links to the missing auxiliary files instead of copying them.
When the directories were configured, update the configuration by running ‘./config.status --recheck && ./config.status’, and then run ‘make’.
Append dir to the include path. Multiple invocations accumulate.
Passed on to
Prepend dir to the include path. Multiple invocations accumulate.
Passed on to
Report the warnings related to category (which can actually be a comma separated list).
related to cross compilation issues.
report the uses of obsolete constructs.
dubious syntactic constructs.
report all the warnings
treats warnings as errors
disable warnings falling into category
Warnings about ‘syntax’ are enabled by default, and the environment
WARNINGS, a comma separated list of categories, is
honored as well. Passing -W category actually behaves as if
you had passed --warnings syntax,$WARNINGS,category. To
disable the defaults and
WARNINGS, and then
enable warnings about obsolete constructs, use -W
If you want
autoreconf to pass flags that are not listed here
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. Also, be aware that future Automake releases might
ACLOCAL_AMFLAGS as obsolescent, or even remove
support for it.