Next: , Previous: , Up: Scanning configure.in   [Contents][Index]


5.4 Autoconf macros supplied with Automake

AM_CONFIG_HEADER

Automake will generate rules to automatically regenerate the config header. If you do use this macro, you must create the file stamp-h.in in your source directory. It can be empty.

AM_ENABLE_MULTILIB

This is used when a “multilib” library is being built. The first optional argument is the name of the Makefile being generated; it defaults to ‘Makefile’. The second option argument is used to find the top source directory; it defaults to the empty string (generally this should not be used unless you are familiar with the internals). See Support for Multilibs.

_AM_DEPENDENCIES
AM_SET_DEPDIR
AM_DEP_TRACK
AM_OUTPUT_DEPENDENCY_COMMANDS

These macros are used to implement automake’s automatic dependency tracking scheme. They are called automatically by automake when required, and there should be no need to invoke them manually.

AM_FUNC_STRTOD

If the strtod function is not available, or does not work correctly (like the one on SunOS 5.4), add strtod.o to output variable LIBOBJS.

AM_FUNC_ERROR_AT_LINE

If the function error_at_line is not found, then add error.o to LIBOBJS.

AM_FUNC_OBSTACK

Check for the GNU obstacks code; if not found, add obstack.o to ‘LIBOBJS’.

AM_C_PROTOTYPES

Check to see if function prototypes are understood by the compiler. If so, define ‘PROTOTYPES’ and set the output variables ‘U’ and ‘ANSI2KNR’ to the empty string. Otherwise, set ‘U’ to ‘_’ and ‘ANSI2KNR’ to ‘./ansi2knr’. Automake uses these values to implement automatic de-ANSI-fication.

AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL

If the use of TIOCGWINSZ requires <sys/ioctl.h>, then define GWINSZ_IN_SYS_IOCTL. Otherwise TIOCGWINSZ can be found in <termios.h>.

AM_INIT_AUTOMAKE

Runs many macros that most configure.in’s need. This macro has two required arguments, the package and the version number. By default this macro AC_DEFINE’s ‘PACKAGE’ and ‘VERSION’. This can be avoided by passing in a non-empty third argument.

AM_MAKE_INCLUDE

This macro is used to discover how the user’s make handles include statements. This macro is automatically invoked when needed; there should be no need to invoke it manually.

AM_PATH_LISPDIR

Searches for the program emacs, and, if found, sets the output variable lispdir to the full path to Emacs’ site-lisp directory.

AM_PROG_AS

Use this macro when you have assembly code in your project. This will choose the assembler for you (by default the C compiler), and will set ASFLAGS if required.

AM_PROG_CC_C_O

This is like AC_PROG_CC_C_O, but it generates its results in the manner required by automake. You must use this instead of AC_PROG_CC_C_O when you need this functionality.

AM_PROG_CC_STDC

If the C compiler in not in ANSI C mode by default, try to add an option to output variable CC to make it so. This macro tries various options that select ANSI C on some system or another. It considers the compiler to be in ANSI C mode if it handles function prototypes correctly.

If you use this macro, you should check after calling it whether the C compiler has been set to accept ANSI C; if not, the shell variable am_cv_prog_cc_stdc is set to ‘no’. If you wrote your source code in ANSI C, you can make an un-ANSIfied copy of it by using the ansi2knr option (see Automatic de-ANSI-fication).

AM_PROG_LEX

Like AC_PROG_LEX with AC_DECL_YYTEXT (see Particular Program Checks in The Autoconf Manual), but uses the missing script on systems that do not have lex. ‘HP-UX 10’ is one such system.

Autoconf 2.50 and higher, in order to simplify the interface, includes the body of AC_DECL_YYTEXT in AC_PROG_LEX. To ensure backward compatibility, AC_DECL_YYTEXT is nevertheless defined as an invocation of AC_PROG_LEX. Since AM_PROG_LEX invokes both, it causes an annoying but benign warning (AC_PROG_LEX invoked multiple times) which you should just ignore. In the future, once Automake requires Autoconf 2.50, this issue will be fixed, but the current compatibility with Autoconf 2.13 prevents this.

AM_PROG_GCJ

This macro finds the gcj program or causes an error. It sets ‘GCJ’ and ‘GCJFLAGS’. gcj is the Java front-end to the GNU Compiler Collection.

AM_PROG_INSTALL_STRIP

This is used to find a version of install which can be used to strip a program at installation time. This macro is automatically included when required.

AM_SANITY_CHECK

This checks to make sure that a file created in the build directory is newer than a file in the source directory. This can fail on systems where the clock is set incorrectly. This macro is automatically run from AM_INIT_AUTOMAKE.

AM_SYS_POSIX_TERMIOS

Check to see if POSIX termios headers and functions are available on the system. If so, set the shell variable am_cv_sys_posix_termios to ‘yes’. If not, set the variable to ‘no’.

AM_TYPE_PTRDIFF_T

Define ‘HAVE_PTRDIFF_T’ if the type ‘ptrdiff_t’ is defined in <stddef.h>.

AM_WITH_DMALLOC

Add support for the dmalloc package. If the user configures with ‘--with-dmalloc’, then define WITH_DMALLOC and add ‘-ldmalloc’ to LIBS.

AM_WITH_REGEX

Adds ‘--with-regex’ to the configure command line. If specified (the default), then the ‘regex’ regular expression library is used, regex.o is put into ‘LIBOBJS’, and ‘WITH_REGEX’ is defined.. If ‘--without-regex’ is given, then the ‘rx’ regular expression library is used, and rx.o is put into ‘LIBOBJS’.


Next: Writing your own aclocal macros, Previous: Auto-generating aclocal.m4, Up: Scanning configure.in   [Contents][Index]