Every time Automake is run it calls Autoconf to trace configure.ac. This way it can recognize the use of certain macros and tailor the generated Makefile.in appropriately. Currently recognized macros and their effects are:
AC_CANONICAL_BUILD
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
build_triplet
,
host_triplet
and target_triplet
are introduced. See
Getting the Canonical System Type.
AC_CONFIG_AUX_DIR
If AC_CONFIG_AUX_DIR
is not given, the scripts are looked for in
their standard locations. For mdate-sh,
texinfo.tex, and ylwrap, the standard location is the
source directory corresponding to the current Makefile.am. For
the rest, the standard location is the first one of ., ..,
or ../.. (relative to the top source directory) that provides any
one of the helper scripts. See Finding `configure' Input.
Required files from AC_CONFIG_AUX_DIR
are automatically
distributed, even if there is no Makefile.am in this directory.
AC_CONFIG_LIBOBJ_DIR
AC_LIBSOURCE
(see below) in the directory specified by this
macro.
AC_CONFIG_HEADERS
AM_CONFIG_HEADER
(see Macros); this is no longer the case.
As with AC_CONFIG_FILES
(see Requirements), parts of the
specification using shell variables will be ignored as far as
cleaning, distributing, and rebuilding is concerned.
AC_CONFIG_LINKS
As for AC_CONFIG_FILES
(see Requirements), parts of the
specification using shell variables will be ignored as far as cleaning
and distributing is concerned. (There are no rebuild rules for links.)
AC_LIBOBJ
AC_LIBSOURCE
AC_LIBSOURCES
AC_LIBSOURCE
or AC_LIBSOURCES
.
Note that the AC_LIBOBJ
macro calls AC_LIBSOURCE
. So if
an Autoconf macro is documented to call ‘AC_LIBOBJ([file])’, then
file.c will be distributed automatically by Automake. This
encompasses many macros like AC_FUNC_ALLOCA
,
AC_FUNC_MEMCMP
, AC_REPLACE_FUNCS
, and others.
By the way, direct assignments to LIBOBJS
are no longer
supported. You should always use AC_LIBOBJ
for this purpose.
See AC_LIBOBJ
vs. LIBOBJS
.
AC_PROG_RANLIB
AC_PROG_CXX
AC_PROG_OBJC
AC_PROG_OBJCXX
AC_PROG_F77
AC_F77_LIBRARY_LDFLAGS
AC_FC_SRCEXT
AC_FC_SRCEXT
to compilation
of files with the respective source extension (see Fortran Compiler Characteristics).
AC_PROG_FC
AC_PROG_LIBTOOL
AC_PROG_YACC
YACC
in configure.ac. The former is
preferred (see Particular Program Checks).
AC_PROG_LEX
AC_REQUIRE_AUX_FILE
AC_REQUIRE_AUX_FILE([
file])
,
automake will ensure that file exists in the
aux directory, and will complain otherwise. It
will also automatically distribute the file. This macro should be
used by third-party Autoconf macros that require some supporting
files in the aux directory specified with AC_CONFIG_AUX_DIR
above. See Finding configure Input.
AC_SUBST
AM_SUBST_NOTMAKE
is also
used for this variable. See Setting Output Variables.
For every substituted variable var, automake will add
a line var =
value to each Makefile.in file.
Many Autoconf macros invoke AC_SUBST
to set output variables
this way, e.g., AC_PATH_XTRA
defines X_CFLAGS
and
X_LIBS
. Thus, you can access these variables as
$(X_CFLAGS)
and $(X_LIBS)
in any Makefile.am
if AC_PATH_XTRA
is called.
AM_CONDITIONAL
AM_COND_IF
automake
to detect subsequent access within
configure.ac to a conditional previously introduced with
AM_CONDITIONAL
, thus enabling conditional AC_CONFIG_FILES
(see Usage of Conditionals).
AM_GNU_GETTEXT
AM_GNU_GETTEXT_INTL_SUBDIR
AM_GNU_GETTEXT
macro was invoked with a first argument
of ‘external’.
AM_MAINTAINER_MODE(
[default-mode])
MAINTAINER_MODE
conditional, which you can use in your own Makefile.am.
See maintainer-mode.
AM_SUBST_NOTMAKE(
var)
AC_SUBST([
var])
. This macro prevents that
definition from Automake. If AC_SUBST
has not been called
for this variable, then AM_SUBST_NOTMAKE
has no effects.
Preventing variable definitions may be useful for substitution of
multi-line values, where var = @
value@
might yield
unintended results.
m4_include
m4_include
is seldom used by configure.ac authors, but
can appear in aclocal.m4 when aclocal detects that
some required macros come from files local to your package (as opposed to
macros installed in a system-wide directory, see aclocal Invocation).