(automake-1.16.info)Public Macros


Next: Obsolete Macros Up: Macros
Enter node , (file) or (file)node

6.4.1 Public Macros
-------------------

‘AM_INIT_AUTOMAKE([OPTIONS])’
     Runs many macros required for proper operation of the generated
     Makefiles.

     Today, ‘AM_INIT_AUTOMAKE’ is called with a single argument: a
     space-separated list of Automake options that should be applied to
     every ‘Makefile.am’ in the tree.  The effect is as if each option
     were listed in ‘AUTOMAKE_OPTIONS’ (Note: Options).

     This macro can also be called in another, _deprecated_ form:
     ‘AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])’.  In this form,
     there are two required arguments: the package and the version
     number.  This usage is mostly obsolete because the PACKAGE and
     VERSION can be obtained from Autoconf’s ‘AC_INIT’ macro.  However,
     differently from what happens for ‘AC_INIT’ invocations, this
     ‘AM_INIT_AUTOMAKE’ invocation supports shell variables’ expansions
     in the ‘PACKAGE’ and ‘VERSION’ arguments (which otherwise defaults,
     respectively, to the ‘PACKAGE_TARNAME’ and ‘PACKAGE_VERSION’
     defined via the ‘AC_INIT’ invocation; *note The ‘AC_INIT’ macro:
     (autoconf)AC_INIT.); and this can be still be useful in some
     selected situations.  Our hope is that future Autoconf versions
     will improve their support for package versions defined dynamically
     at configure runtime; when (and if) this happens, support for the
     two-args ‘AM_INIT_AUTOMAKE’ invocation will likely be removed from
     Automake.

     If your ‘configure.ac’ has:

          AC_INIT([src/foo.c])
          AM_INIT_AUTOMAKE([mumble], [1.5])

     you should modernize it as follows:

          AC_INIT([mumble], [1.5])
          AC_CONFIG_SRCDIR([src/foo.c])
          AM_INIT_AUTOMAKE

     Note that if you’re upgrading your ‘configure.ac’ from an earlier
     version of Automake, it is not always correct to simply move the
     package and version arguments from ‘AM_INIT_AUTOMAKE’ directly to
     ‘AC_INIT’, as in the example above.  The first argument to
     ‘AC_INIT’ should be the name of your package (e.g., ‘GNU
     Automake’), not the tarball name (e.g., ‘automake’) that you used
     to pass to ‘AM_INIT_AUTOMAKE’.  Autoconf tries to derive a tarball
     name from the package name, which should work for most but not all
     package names.  (If it doesn’t work for yours, you can use the
     four-argument form of ‘AC_INIT’ to provide the tarball name
     explicitly).

     By default this macro ‘AC_DEFINE’’s ‘PACKAGE’ and ‘VERSION’.  This
     can be avoided by passing the ‘no-define’ option (Note: List of
     Automake options):
          AM_INIT_AUTOMAKE([no-define ...])

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

     Note that this test assumes the ‘emacs’ found to be a version that
     supports Emacs Lisp (such as GNU Emacs or XEmacs).  Other emacsen
     can cause this test to hang (some, like old versions of MicroEmacs,
     start up in interactive mode, requiring ‘C-x C-c’ to exit, which is
     hardly obvious for a non-emacs user).  In most cases, however, you
     should be able to use ‘C-c’ to kill the test.  In order to avoid
     problems, you can set ‘EMACS’ to “no” in the environment, or use
     the ‘--with-lispdir’ option to ‘configure’ to explicitly set the
     correct path (if you’re sure you have an ‘emacs’ that supports
     Emacs Lisp).

‘AM_PROG_AR([ACT-IF-FAIL])’
     You must use this macro when you use the archiver in your project,
     if you want support for unusual archivers such as Microsoft ‘lib’.
     The content of the optional argument is executed if the archiver
     interface is not recognized; the default action is to abort
     configure with an error message.

‘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
     set ‘CCAS’, and will also set ‘CCASFLAGS’ if required.

‘AM_PROG_CC_C_O’
     This is an obsolescent macro that checks that the C compiler
     supports the ‘-c’ and ‘-o’ options together.  Note that, since
     Automake 1.14, the ‘AC_PROG_CC’ is rewritten to implement such
     checks itself, and thus the explicit use of ‘AM_PROG_CC_C_O’ should
     no longer be required.

‘AM_PROG_LEX’
     Like ‘AC_PROG_LEX’ (*note Particular Program Checks:
     (autoconf)Particular Programs.), but uses the ‘missing’ script on
     systems that do not have ‘lex’.  HP-UX 10 is one such system.

‘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_UPC([COMPILER-SEARCH-LIST])’
     Find a compiler for Unified Parallel C and define the ‘UPC’
     variable.  The default COMPILER-SEARCH-LIST is ‘upcc upc’.  This
     macro will abort ‘configure’ if no Unified Parallel C compiler is
     found.

‘AM_MISSING_PROG(NAME, PROGRAM)’
     Find a maintainer tool PROGRAM and define the NAME environment
     variable with its location.  If PROGRAM is not detected, then NAME
     will instead invoke the ‘missing’ script, in order to give useful
     advice to the user about the missing maintainer tool.  Note:
     maintainer-mode, for more information on when the ‘missing’
     script is appropriate.

‘AM_SILENT_RULES’
     Control the machinery for less verbose build output (Note: Automake
     Silent Rules).

‘AM_WITH_DMALLOC’
     Add support for the Dmalloc package (http://dmalloc.com/).  If the
     user runs ‘configure’ with ‘--with-dmalloc’, then define
     ‘WITH_DMALLOC’ and add ‘-ldmalloc’ to ‘LIBS’.


automatically generated by info2www version 1.2.2.9