GNU Info

Info Node: (autoconf.info)Invoking config.status

(autoconf.info)Invoking config.status


Next: Questions Prev: Invoking configure Up: Top
Enter node , (file) or (file)node

Recreating a Configuration
**************************

   The `configure' script creates a file named `config.status' which
describes which configuration options were specified when the package
was last configured.  This file is a shell script which, if run, will
recreate the same configuration.

   You can give `config.status' the `--recheck' option to update
itself.  This option is useful if you change `configure', so that the
results of some tests might be different from the previous run.  The
`--recheck' option re-runs `configure' with the same arguments you used
before, plus the `--no-create' option, which prevent `configure' from
running `config.status' and creating `Makefile' and other files, and
the `--no-recursion' option, which prevents `configure' from running
other `configure' scripts in subdirectories.  (This is so other
`Makefile' rules can run `config.status' when it changes; Note:
Automatic Remaking, for an example).

   `config.status' also accepts the options `--help', which prints a
summary of the options to `config.status', and `--version', which
prints the version of Autoconf used to create the `configure' script
that generated `config.status'.

   `config.status' checks several optional environment variables that
can alter its behavior:

 - Variable: CONFIG_SHELL
     The shell with which to run `configure' for the `--recheck'
     option.  It must be Bourne-compatible.  The default is `/bin/sh'.

 - Variable: CONFIG_STATUS
     The file name to use for the shell script that records the
     configuration.  The default is `./config.status'.  This variable is
     useful when one package uses parts of another and the `configure'
     scripts shouldn't be merged because they are maintained separately.

   The following variables provide one way for separately distributed
packages to share the values computed by `configure'.  Doing so can be
useful if some of the packages need a superset of the features that one
of them, perhaps a common library, does.  These variables allow a
`config.status' file to create files other than the ones that its
`configure.in' specifies, so it can be used for a different package.

 - Variable: CONFIG_FILES
     The files in which to perform `@VARIABLE@' substitutions.  The
     default is the arguments given to `AC_OUTPUT' in `configure.in'.

 - Variable: CONFIG_HEADERS
     The files in which to substitute C `#define' statements.  The
     default is the arguments given to `AC_CONFIG_HEADER'; if that
     macro was not called, `config.status' ignores this variable.

   These variables also allow you to write `Makefile' rules that
regenerate only some of the files.  For example, in the dependencies
given above (Note: Automatic Remaking), `config.status' is run twice
when `configure.in' has changed.  If that bothers you, you can make
each run only regenerate the files for that rule:

     config.h: stamp-h
     stamp-h: config.h.in config.status
             CONFIG_FILES= CONFIG_HEADERS=config.h ./config.status
             echo > stamp-h
     
     Makefile: Makefile.in config.status
             CONFIG_FILES=Makefile CONFIG_HEADERS= ./config.status

(If `configure.in' does not call `AC_CONFIG_HEADER', there is no need
to set `CONFIG_HEADERS' in the `make' rules.)


automatically generated by info2www version 1.2.2.9