autoconf: Initializing configure

1 
1 4.1 Initializing `configure'
1 ============================
1 
1 Every `configure' script must call `AC_INIT' before doing anything else
1 that produces output.  Calls to silent macros, such as `AC_DEFUN', may
1 also occur prior to `AC_INIT', although these are generally used via
1 `aclocal.m4', since that is implicitly included before the start of
11 `configure.ac'.  The only other required macro is `AC_OUTPUT' (⇒
 Output).
1 
1  -- Macro: AC_INIT (PACKAGE, VERSION, [BUG-REPORT], [TARNAME], [URL])
1      Process any command-line arguments and perform initialization and
1      verification.
1 
1      Set the name of the PACKAGE and its VERSION.  These are typically
1      used in `--version' support, including that of `configure'.  The
1      optional argument BUG-REPORT should be the email to which users
1      should send bug reports.  The package TARNAME differs from
1      PACKAGE: the latter designates the full package name (e.g., `GNU
1      Autoconf'), while the former is meant for distribution tar ball
1      names (e.g., `autoconf').  It defaults to PACKAGE with `GNU '
1      stripped, lower-cased, and all characters other than alphanumerics
1      and underscores are changed to `-'.  If provided, URL should be
1      the home page for the package.
1 
1      The arguments of `AC_INIT' must be static, i.e., there should not
1      be any shell computation, quotes, or newlines, but they can be
1      computed by M4.  This is because the package information strings
1      are expanded at M4 time into several contexts, and must give the
1      same text at shell time whether used in single-quoted strings,
1      double-quoted strings, quoted here-documents, or unquoted
1      here-documents.  It is permissible to use `m4_esyscmd' or
1      `m4_esyscmd_s' for computing a version string that changes with
1      every commit to a version control system (in fact, Autoconf does
1      just that, for all builds of the development tree made between
1      releases).
1 
1      The following M4 macros (e.g., `AC_PACKAGE_NAME'), output variables
1      (e.g., `PACKAGE_NAME'), and preprocessor symbols (e.g.,
1      `PACKAGE_NAME'), are defined by `AC_INIT':
1 
1     `AC_PACKAGE_NAME', `PACKAGE_NAME'
1           Exactly PACKAGE.
1 
1     `AC_PACKAGE_TARNAME', `PACKAGE_TARNAME'
1           Exactly TARNAME, possibly generated from PACKAGE.
1 
1     `AC_PACKAGE_VERSION', `PACKAGE_VERSION'
1           Exactly VERSION.
1 
1     `AC_PACKAGE_STRING', `PACKAGE_STRING'
1           Exactly `PACKAGE VERSION'.
1 
1     `AC_PACKAGE_BUGREPORT', `PACKAGE_BUGREPORT'
1           Exactly BUG-REPORT, if one was provided.  Typically an email
1           address, or URL to a bug management web page.
1 
1     `AC_PACKAGE_URL', `PACKAGE_URL'
1           Exactly URL, if one was provided.  If URL was empty, but
1           PACKAGE begins with `GNU ', then this defaults to
1           `http://www.gnu.org/software/TARNAME/', otherwise, no URL is
1           assumed.
1 
1    If your `configure' script does its own option processing, it should
1 inspect `$@' or `$*' immediately after calling `AC_INIT', because other
1 Autoconf macros liberally use the `set' command to process strings, and
1 this has the side effect of updating `$@' and `$*'.  However, we
1 suggest that you use standard macros like `AC_ARG_ENABLE' instead of
11 attempting to implement your own option processing.  ⇒Site
 Configuration.
1