mirror of
git://git.sv.gnu.org/autoconf
synced 2024-11-27 01:49:56 +08:00
e92b805c22
Moving most of the task of creating config.h.in from sh to m4. Getting rid of acconfig.h by supply a major new family of macros: AH_* which make it possible to insert arbitrary text into config.h.in. * autoheader.m4: Major rewrite: introduction of a set of macros AH_ that produce code into config.h.in. There are two sets of macros: generic macros, or specialized, documented below. The basic idea is that an AC_FOO macro which needs an entry in config.h.in should have a sibling AH_FOO which expands into that entry. In a near future, these macros will be moved next to their siblings. * autoheader.m4 (AH_VERBATIM, AH_DEFINE, AH_DEFINE, AH_NEED_DECLS, AH_CHECK_SIZEOF, AH_CHECK_FUNCS, AH_CHECK_HEADERS, AH_CHECK_HEADERS, AH_CHECK_LIB, AH_PROG_LEX, AH_FUNC_ALLOCA, AH_C_CHAR_UNSIGNED, AH_AIX, AH_F77_WRAPPERS): New macros. * autoheader.m4 (End section): Bind AC_ macros to their AH_siblings. * autoheader.sh: Remove the sections in charge of SYMS, TYPES, FUNCS, HEADERS, LIBS and DECLS: autoheader.m4 is now in charge of these. * autoheader.sh (options): Added -d, --debug, which does not remove the temporary files. * autoheader.sh: Instead of redirecting stdout to the output stream, always output to a temporary file. This allows to change slightly the consistency check: before autoheader would check that each non documented AC_DEFINE is templated in an acconfig. Now it just checks whether the template is in the output file. * acconfig.h: Completely emptied, the remaining templates (_ALL_SOURCE, __CHAR_UNSIGNED__, F77_FUNC, F77_FUNC_, HAVE_STRINGIZE, and STACK_DIRECTION) are now either associated to their AC_DEFINE, or to one of the new AH_ macros. * acgeneral.m4: Reordering of the m4 macros which are not specific to Autoconf. * acgeneral.m4 (AC_HAVE_LIB): Promoted from obsolete to hasbeen. * acgeneral.m4 (AC_TR_CPP): Fixed quoting problem, and missing ^ in patsubst. (AC_TR_SH): Fixed quoting problem. |
||
---|---|---|
bin | ||
doc | ||
lib | ||
testsuite | ||
acconfig.h | ||
acfunctions | ||
acgeneral.m4 | ||
acheaders | ||
acidentifiers | ||
acmakevars | ||
acoldnames.m4 | ||
acprograms | ||
acspecific.m4 | ||
AUTHORS | ||
autoconf.in | ||
autoconf.m4 | ||
autoconf.sh | ||
autoconf.texi | ||
autoheader.in | ||
autoheader.m4 | ||
autoheader.sh | ||
autoreconf.in | ||
autoreconf.sh | ||
autoscan.in | ||
autoscan.pl | ||
ChangeLog | ||
ChangeLog.0 | ||
ChangeLog.1 | ||
config.guess | ||
config.sub | ||
configure | ||
configure.in | ||
COPYING | ||
ifnames.in | ||
ifnames.sh | ||
INSTALL | ||
install-sh | ||
install.texi | ||
make-stds.texi | ||
Makefile.in | ||
mkinstalldirs | ||
NEWS | ||
README | ||
standards.texi | ||
texinfo.tex | ||
THANKS | ||
TODO |
Autoconf Autoconf is an extensible package of m4 macros that produce shell scripts to automatically configure software source code packages. These scripts can adapt the packages to many kinds of UNIX-like systems without manual user intervention. Autoconf creates a configuration script for a package from a template file that lists the operating system features that the package can use, in the form of m4 macro calls. Producing configuration scripts using Autoconf requires GNU m4. You must install GNU m4 (version 1.1 or later, preferably 1.3 or later for better performance) before configuring Autoconf, so that Autoconf's configure script can find it. The configuration scripts produced by Autoconf are self-contained, so their users do not need to have Autoconf (or GNU m4). Also, some optional utilities that come with Autoconf use Perl, TCL, and the TCL packages Expect and DejaGNU. However, none of those are required in order to use the main Autoconf program. If they are not present, the affected Autoconf utilities will not be installed. The file INSTALL can be distributed with packages that use Autoconf-generated configure scripts and Makefiles that conform to the GNU coding standards. The package's README can just give an overview of the package, where to report bugs, and a pointer to INSTALL for instructions on compilation and installation. This removes the need to maintain many similar sets of installation instructions. The file `acconfig.h' contains short descriptions of the C preprocessor variables that Autoconf can define, suitable for copying into other packages' configuration headers or Makefile.in files. You can use the program `autoheader' to automatically create a configuration header from a `configure.in', based on the information in `acconfig.h'. Mail suggestions and bug reports for Autoconf to autoconf@gnu.org. Please include the Autoconf version number, which you can get by running "autoconf --version". The current autoconf maintainer is Ben Elliston <bje@cygnus.com>.