Go to the first, previous, next, last section, table of contents.
Some macros should be run before another macro if both are called, but neither requires that the other be called. For example, a macro that changes the behavior of the C compiler should be called before any macros that run the C compiler. Many of these dependencies are noted in the documentation.
Autoconf provides the AC_BEFORE
macro to warn users when macros
with this kind of dependency appear out of order in a
`configure.ac' file. The warning occurs when creating
configure
from `configure.ac', not when running
configure
.
For example, AC_PROG_CPP
checks whether the C compiler
can run the C preprocessor when given the @option{-E} option. It should
therefore be called after any macros that change which C compiler is
being used, such as AC_PROG_CC
. So AC_PROG_CC
contains:
AC_BEFORE([$0], [AC_PROG_CPP])dnl
This warns the user if a call to AC_PROG_CPP
has already occurred
when AC_PROG_CC
is called.
m4
print a warning message to the standard error output if
called-macro-name has already been called. this-macro-name
should be the name of the macro that is calling AC_BEFORE
. The
macro called-macro-name must have been defined using
AC_DEFUN
or else contain a call to AC_PROVIDE
to indicate
that it has been called.
Go to the first, previous, next, last section, table of contents.