manpagez: man pages & more
info autoconf
Home | html | info | man

File: autoconf.info,  Node: Suggested Ordering,  Next: One-Shot Macros,  Prev: Prerequisite Macros,  Up: Dependencies Between Macros

10.3.2 Suggested Ordering
-------------------------

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 ‘-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.

 -- Macro: AC_BEFORE (THIS-MACRO-NAME, CALLED-MACRO-NAME)
     Make 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.

© manpagez.com 2000-2025
Individual documents may contain additional copyright information.