Next: Scanning configure.ac, Previous: Some example packages, Up: GNU Automake [Contents][Index]
To create all the Makefile.ins for a package, run the
automake
program in the top level directory, with no arguments.
automake
will automatically find each appropriate
Makefile.am (by scanning configure.ac; see Scanning configure.ac)
and generate the corresponding Makefile.in. Note that
automake
has a rather simplistic view of what constitutes a
package; it assumes that a package has only one configure.ac, at
the top. If your package has multiple configure.acs, then you
must run automake
in each directory holding a
configure.ac. (Alternatively, you may rely on Autoconf’s
autoreconf
, which is able to recurse your package tree and run
automake
where appropriate.)
You can optionally give automake
an argument; .am is
appended to the argument and the result is used as the name of the input
file. This feature is generally only used to automatically rebuild an
out-of-date Makefile.in. Note that automake
must always
be run from the topmost directory of a project, even if being used to
regenerate the Makefile.in in some subdirectory. This is
necessary because automake
must scan configure.ac, and
because automake
uses the knowledge that a Makefile.in is
in a subdirectory to change its behavior in some cases.
Automake will run autoconf
to scan configure.ac and its
dependencies (aclocal.m4), therefore autoconf
must be in
your PATH
. If there is an AUTOCONF
variable in your
environment it will be used instead of autoconf
, this allows you
to select a particular version of Autoconf. By the way, don’t
misunderstand this paragraph: Automake runs autoconf
to
scan your configure.ac, this won’t build
configure and you still have to run autoconf
yourself for
this purpose.
automake
accepts the following options:
Automake requires certain common files to exist in certain situations;
for instance config.guess is required if configure.ac runs
AC_CANONICAL_HOST
. Automake is distributed with several of these
files (see Programs automake might require); this option will cause the missing
ones to be automatically added to the package, whenever possible. In
general if Automake tells you a file is missing, try using this option.
By default Automake tries to make a symbolic link pointing to its own
copy of the missing file; this can be changed with --copy
.
Many of the potentially-missing files are common scripts whose
location may be specified via the AC_CONFIG_AUX_DIR
macro.
Therefore, AC_CONFIG_AUX_DIR
’s setting affects whether a
file is considered missing, and where the missing file is added
(see Other things Automake recognizes).
Look for Automake data files in directory dir instead of in the installation directory. This is typically used for debugging.
When used with --add-missing
, causes installed files to be
copied. The default is to make a symbolic link.
Causes the generated Makefile.ins to follow Cygnus rules, instead
of GNU or Gnits rules. For more information, see The effect of --cygnus
.
When used with --add-missing
, causes standard files to be reinstalled
even if they already exist in the source tree. This involves removing
the file from the source tree before creating the new symlink (or, with
--copy
, copying the new file).
Set the global strictness to ‘foreign’. For more information, see Strictness.
Set the global strictness to ‘gnits’. For more information, see
The effect of --gnu
and --gnits
.
Set the global strictness to ‘gnu’. For more information, see
The effect of --gnu
and --gnits
. This is the default strictness.
Print a summary of the command line options and exit.
This disables the dependency tracking feature in generated Makefiles; see Automatic dependency tracking.
This enables the dependency tracking feature. This feature is enabled by default. This option is provided for historical reasons only and probably should not be used.
Ordinarily automake
creates all Makefile.ins mentioned in
configure.ac. This option causes it to only update those
Makefile.ins which are out of date with respect to one of their
dependents.
Put the generated Makefile.in in the directory dir. Ordinarily each Makefile.in is created in the directory of the corresponding Makefile.am. This option is deprecated and will be removed in a future release.
Cause Automake to print information about which files are being read or created.
Print the version number of Automake and exit.
Output warnings falling in category. category can be one of:
warnings related to the GNU Coding Standards (see The GNU Coding Standards).
obsolete features or constructions
user redefinitions of Automake rules or variables
portability issues (e.g., use of Make features which are known not portable)
weird syntax, unused variables, typos
unsupported or incomplete features
all the warnings
turn off all the warnings
treat warnings as errors
A category can be turned off by prefixing its name with ‘no-’. For instance ‘-Wno-syntax’ will hide the warnings about unused variables.
The categories output by default are ‘syntax’ and ‘unsupported’. Additionally, ‘gnu’ is enabled in ‘--gnu’ and ‘--gnits’ strictness.
‘portability’ warnings are currently disabled by default, but they will be enabled in ‘--gnu’ and ‘--gnits’ strictness in a future release.
The environment variable ‘WARNINGS’ can contain a comma separated
list of categories to enable. It will be taken into account before the
command-line switches, this way ‘-Wnone’ will also ignore any
warning category enabled by ‘WARNINGS’. This variable is also used
by other tools like autoconf
; unknown categories are ignored
for this reason.
Next: Scanning configure.ac, Previous: Some example packages, Up: GNU Automake [Contents][Index]