GNU Info

Info Node: (autoconf.info)Invoking autoheader

(autoconf.info)Invoking autoheader


Prev: Header Templates Up: Configuration Headers
Enter node , (file) or (file)node

Using `autoheader' to Create `config.h.in'
------------------------------------------

   The `autoheader' program can create a template file of C `#define'
statements for `configure' to use.  If `configure.in' invokes
`AC_CONFIG_HEADER(FILE)', `autoheader' creates `FILE.in'; if multiple
file arguments are given, the first one is used.  Otherwise,
`autoheader' creates `config.h.in'.

   If you give `autoheader' an argument, it uses that file instead of
`configure.in' and writes the header file to the standard output
instead of to `config.h.in'.  If you give `autoheader' an argument of
`-', it reads the standard input instead of `configure.in' and writes
the header file to the standard output.

   `autoheader' scans `configure.in' and figures out which C
preprocessor symbols it might define.  It copies comments and `#define'
and `#undef' statements from a file called `acconfig.h', which comes
with and is installed with Autoconf.  It also uses a file called
`acconfig.h' in the current directory, if present.  If you `AC_DEFINE'
any additional symbols, you must create that file with entries for
them.  For symbols defined by `AC_CHECK_HEADERS', `AC_CHECK_FUNCS',
`AC_CHECK_SIZEOF', or `AC_CHECK_LIB', `autoheader' generates comments
and `#undef' statements itself rather than copying them from a file,
since the possible symbols are effectively limitless.

   The file that `autoheader' creates contains mainly `#define' and
`#undef' statements and their accompanying comments.  If `./acconfig.h'
contains the string `@TOP@', `autoheader' copies the lines before the
line containing `@TOP@' into the top of the file that it generates.
Similarly, if `./acconfig.h' contains the string `@BOTTOM@',
`autoheader' copies the lines after that line to the end of the file it
generates.  Either or both of those strings may be omitted.

   An alternate way to produce the same effect is to create the files
`FILE.top' (typically `config.h.top') and/or `FILE.bot' in the current
directory.  If they exist, `autoheader' copies them to the beginning
and end, respectively, of its output.  Their use is discouraged because
they have file names that contain two periods, and so can not be stored
on MS-DOS; also, they are two more files to clutter up the directory.
But if you use the `--localdir=DIR' option to use an `acconfig.h' in
another directory, they give you a way to put custom boilerplate in each
individual `config.h.in'.

   `autoheader' accepts the following options:

`--help'
`-h'
     Print a summary of the command line options and exit.

`--localdir=DIR'
`-l DIR'
     Look for the package files `aclocal.m4' and `acconfig.h' (but not
     `FILE.top' and `FILE.bot') in directory DIR instead of in the
     current directory.

`--macrodir=DIR'
`-m DIR'
     Look for the installed macro files and `acconfig.h' in directory
     DIR.  You can also set the `AC_MACRODIR' environment variable to a
     directory; this option overrides the environment variable.

`--version'
     Print the version number of Autoconf and exit.


automatically generated by info2www version 1.2.2.9