Go to file
Eric Blake 76183791a4 AC_CHECK_HEADERS_ONCE: hoist CPP name computation to m4 time
Rather than perform a sed script on each element of the
$ac_header_c_list to compute the corresponding CPP name, we can
make the list store a series of triples of header names, shell-safe
names, and CPP names all computed at m4 time.

The resulting configure script is slightly larger based on
how many headers are checked once, but also performs
slightly faster.

There is still a sed call in AC_CHECK_HEADER for computing the
cache variable name; that will be dealt with next.  That patch
will also be the one that takes advantage of the shell-safe name.

* lib/autoconf/headers.m4 (_AC_CHECK_HEADER_ONCE): Track the shell
and CPP name in the list...
(_AC_HEADERS_EXPANSION): ...and rewrite the list walk to parse off
triples of arguments, for fewer sed calls.

Signed-off-by: Eric Blake <eblake@redhat.com>
2016-12-21 08:32:39 -06:00
bin autom4te: fix problem when tracing to '-' 2016-03-15 10:51:53 -07:00
build-aux make fetch 2016-02-06 17:17:49 -08:00
doc * doc/autoconf.texi (Using Autotest): Stop mentioning Free Recode. 2016-12-14 10:29:05 -08:00
lib AC_CHECK_HEADERS_ONCE: hoist CPP name computation to m4 time 2016-12-21 08:32:39 -06:00
m4 maint: make update-copyright 2016-02-06 17:17:49 -08:00
man Move config.* man pages to its source tree 2016-02-06 17:17:50 -08:00
tests maint: make update-copyright 2016-02-06 17:17:49 -08:00
.gitattributes maint: don't sync elisp-comp or missing from gnulib 2012-06-27 16:59:21 -06:00
.gitignore build: remove refs to obsolescent 'mkinstalldir' script and variable 2013-05-06 12:53:41 +02:00
.prev-version maint: post-release administrivia 2012-04-24 21:06:32 -06:00
.x-update-copyright maint: document use of copyright ranges 2011-01-04 16:32:25 -07:00
AUTHORS maint: make update-copyright 2016-02-06 17:17:49 -08:00
BUGS maint: make update-copyright 2016-02-06 17:17:49 -08:00
cfg.mk maint: make update-copyright 2016-02-06 17:17:49 -08:00
ChangeLog.0 Update uses of all-permissive license. 2009-05-20 06:02:49 -06:00
ChangeLog.1 Update uses of all-permissive license. 2009-05-20 06:02:49 -06:00
ChangeLog.2 maint: fix typos in old ChangeLog files 2012-05-29 12:33:46 +02:00
ChangeLog.3 maint: fix typos in old ChangeLog files 2012-05-29 12:33:46 +02:00
configure.ac maint: make update-copyright 2016-02-06 17:17:49 -08:00
COPYING Use GPLv2+ plus exception as license for release. 2008-04-05 17:04:48 -06:00
COPYING.EXCEPTION Update License to GPLv3+ including new Autoconf Exception. 2009-09-09 19:53:31 +02:00
COPYINGv3 Use GPLv2+ plus exception as license for release. 2008-04-05 17:04:48 -06:00
GNUmakefile make fetch 2016-02-06 17:17:49 -08:00
HACKING maint: make update-copyright 2016-02-06 17:17:49 -08:00
maint.mk make fetch 2016-02-06 17:17:49 -08:00
Makefile.am maint: make update-copyright 2016-02-06 17:17:49 -08:00
NEWS AC_CHECK_HEADERS_ONCE: honor current AC_LANG 2016-12-21 08:32:29 -06:00
README maint: make update-copyright 2016-02-06 17:17:49 -08:00
README-alpha maint: make update-copyright 2016-02-06 17:17:49 -08:00
README-hacking maint: make update-copyright 2016-02-06 17:17:49 -08:00
THANKS maint: make update-copyright 2016-02-06 17:17:49 -08:00
TODO maint: make update-copyright 2016-02-06 17:17:49 -08:00

-*- text -*-

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 and
Perl.  You should install GNU M4 (version 1.4.6 or later is required;
1.4.14 or later is recommended) and Perl (5.006 or later) before
configuring Autoconf, so that Autoconf's configure script can find
them.  The configuration scripts produced by Autoconf are
self-contained, so their users do not need to have Autoconf (or GNU
M4, Perl, etc.).

You can get GNU M4 here:

ftp://ftp.gnu.org/gnu/m4/

The file INSTALL should 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.

Be sure to read BUGS and INSTALL.

Mail suggestions to autoconf@gnu.org, report bugs to
bug-autoconf@gnu.org, and submit patches to autoconf-patches@gnu.org.
All changes can be tracked at the read-only autoconf-commit@gnu.org.
Always include the Autoconf version number, which you can get by
running `autoconf --version'.  Archives of bug-autoconf@gnu.org can be
found in <http://lists.gnu.org/archive/html/bug-autoconf/>, and
similarly for the other mailing lists.

Licensing

Autoconf is released under the General Public License version 3 (GPLv3+).
Additionally, Autoconf includes a licensing exception in some of its
source files; see the respective copyright notices for how your
project is impacted by including scripts generated by Autoconf, and the
COPYING.EXCEPTION file for the exception in terms of the Additional
Permissions as described in section 7 of GPLv3.

For more licensing information, see
<http://www.gnu.org/licenses/gpl-faq.html> and
<http://www.gnu.org/licenses/exceptions.html>.

For any copyright year range specified as YYYY-ZZZZ in this package
note that the range specifies every single year in that closed interval.

-----

Copyright (C) 1992-1994, 1998, 2000-2016 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.  This file is offered as-is,
without warranty of any kind.