Next: Configuration Actions Prev: Input Up: Setup
4.5 Outputting Files
Every Autoconf script, e.g., `configure.ac', should finish by calling
`AC_OUTPUT'. That is the macro that generates and runs
`config.status', which in turn creates the makefiles and any other
files resulting from configuration. This is the only required macro
besides `AC_INIT' (Note: Input).
-- Macro: AC_OUTPUT
Generate `config.status' and launch it. Call this macro once, at
the end of `configure.ac'.
`config.status' performs all the configuration actions: all the
output files (see Note: Configuration Files, macro
`AC_CONFIG_FILES'), header files (see Note: Configuration
Headers, macro `AC_CONFIG_HEADERS'), commands (see *Note
Configuration Commands::, macro `AC_CONFIG_COMMANDS'), links (see
Note: Configuration Links, macro `AC_CONFIG_LINKS'),
subdirectories to configure (see Note: Subdirectories, macro
`AC_CONFIG_SUBDIRS') are honored.
The location of your `AC_OUTPUT' invocation is the exact point
where configuration actions are taken: any code afterwards is
executed by `configure' once `config.status' was run. If you want
to bind actions to `config.status' itself (independently of
whether `configure' is being run), see Note: Running Arbitrary
Historically, the usage of `AC_OUTPUT' was somewhat different.
Note: Obsolete Macros, for a description of the arguments that
`AC_OUTPUT' used to support.
If you run `make' in subdirectories, you should run it using the
`make' variable `MAKE'. Most versions of `make' set `MAKE' to the name
of the `make' program plus any options it was given. (But many do not
include in it the values of any variables set on the command line, so
those are not passed on automatically.) Some old versions of `make' do
not set this variable. The following macro allows you to use it even
with those versions.
-- Macro: AC_PROG_MAKE_SET
If the Make command, `$MAKE' if set or else `make', predefines
`$(MAKE)', define output variable `SET_MAKE' to be empty.
Otherwise, define `SET_MAKE' to a macro definition that sets
`$(MAKE)', such as `MAKE=make'. Calls `AC_SUBST' for `SET_MAKE'.
If you use this macro, place a line like this in each `Makefile.in'
that runs `MAKE' on other directories:
automatically generated by info2www