autoconf/tests
Paul Eggert 4e0329a533 Rewrite substantial part of lib/autoconf/status.m4.
The main change is that CONFIG_FILES, CONFIG_HEADERS, CONFIG_LINKS,
and CONFIG_COMMANDS are not processed in four separate loops.
Instead, there is one main loop.  This alows that the common code
is expanded only once, thus config.status (and configure) is smaller.

The registration mechnism in AC_CONFIG_FILES and cousins also changed;
the AC_LIST_FILES and cousins macros are no longer used.

* lib/autoconf/status.m4 (_AC_OUTPUT_FILES, _AC_OUTPUT_HEADERS,
_AC_OUTPUT_LINKS, _AC_OUTPUT_COMMANDS): Renamed to ...
(_AC_OUTPUT_FILE, _AC_OUTPUT_HEADER, _AC_OUTPUT_LINK,
_AC_OUTPUT_COMMAND): ..., respectively.  These macros no longer
contains the initialization, nor the for loop, nor the associated
commands; all these go to ...
(_AC_OUTPUT_MAIN_LOOP): ... this new macro, called from
_AC_OUTPUT_CONFIG_STATUS.
(_AC_CONFIG_SPLIT, _AC_CONFIG_SPLIT_SOURCE_DEST, _AC_CONFIG_SPLIT_FILE_IN):
Nuked; the code was merged into _AC_OUTPUT_MAIN_LOOP.
(_AC_OUTPUT_FILE): The creation of the sed script ...
(AC_OUTPUT): ... and the setup of ac_vpsub goes to ...
(_AC_OUTPUT_FILES_PREPARE): ... a new macro, also called from
_AC_OUTPUT_MAIN_LOOP.
(_AC_CONFIG_FILES, _AC_CONFIG_HEADERS, _AC_CONFIG_LINKS,
_AC_CONFIG_COMMANDS): Use ...
(_AC_CONFIG_FOOS): ... this new macro, which uses these ...
(_AC_CONFIG_REGISTER, _AC_CONFIG_REGISTER_DEST): ... new macros.
(_AC_CONFIG_FILE, _AC_CONFIG_HEADER, _AC_CONFIG_LINK,
_AC_CONFIG_COMMAND, _AC_CONFIG_DEPENDENCIES): No longer needed.
(_AC_CONFIG_DEPENDENCY): Update, it uses these ...
(_AC_CONFIG_DEPENDENCY_DEFAULT, _AC_FILE_DEPENDENCY_TRACE_COLON):
... new macros.
(_AC_CONFIG_UNIQUE): Update.
(AC_LIST_FILES, AC_LIST_HEADERS, AC_LIST_LINKS, AC_LIST_COMMANDS):
Replaced by this ...
(_AC_LIST_TAGS): ... new common macro.
(AC_LIST_FILE_COMMANDS, AC_LIST_HEADER_COMMANDS, AC_LIST_LINK_COMMANDS,
AC_LIST_COMMAND_COMMANDS): Replaced by this ...
(_AC_LIST_TAG_COMMANDS): ... new common macro.
(_AC_CONFIG_COMMANDS_INIT): Moved top to the `registration' section;
this didn't belong to the `config commands' section.
(_AC_OUTPUT_COMMANDS_INIT): Don't initialize, m4_ifdef is our friend.
(AC_CONFIG_COMMANDS_PRE, AC_OUTPUT_COMMANDS_PRE,
AC_CONFIG_COMMANDS_POST): Moved to a new section, these didn't belong
to the `config commands' section either.
(AC_CONFIG_SUBDIRS): Don't touch diversion DEFAULTS.
(_AC_LIST_SUBDIRS): Don't initialize, m4_ifdef is our friend.

... and many changes to the comments nearby.

* lib/autoconf/general.m4 (_AC_INIT_DEFAULTS): At the end of the day,
set ac_subdirs_all='_AC_LIST_SUBDIRS'.
* tests/torture.at (AC_CONFIG_FILES, HEADERS, LINKS and COMMANDS):
AC_CONFIG_COMMANDS(command:input,...) is no longer allowed.
(#define header templates): The comment at the top of the generated
header now includes the name(s) of the source file(s).

Several unrelated small changes:

* lib/autoconf/general.m4 (AC_CACHE_VAL): Be didactic, quote the first
parameter to AC_DIAGNOSE.
* lib/autoconf/status.m4 (AC_CONFIG_SUBDIRS): Likewise.
(_AC_LINK_FILES_CNT): Don't AU_DEFUN this; it causes confusing messages
with autoupdate; use m4_define_default inside AU_DEFUNed AC_LINK_FILES.
(AC_OUTPUT): In the compatibility code, use m4_ifvaln, to be consistent
with AU::AC_OUTPUT.
(AU::AC_OUTPUT): Don't double-quote $2 and $3, the compatibility code
in AC_OUTPUT doesn't double-quote it either.
* tests/tools.at (autoupdate): AU::AC_OUTPUT no longer double-quotes the
parameters.
2005-07-25 18:10:25 +00:00
..
.cvsignore * bin/.cvsignore: Add autoconf.in. 2004-12-10 07:08:52 +00:00
acautoheader.at Regen. and typo. 2001-09-13 09:59:47 +00:00
acautoupdate.at Regen. and typo. 2001-09-13 09:59:47 +00:00
acc.at Regenerate. 2005-07-06 21:40:24 +00:00
acfortran.at Regenerate. 2005-01-03 07:42:44 +00:00
acfunctions.at Regenerate. 2005-01-03 07:42:44 +00:00
acgeneral.at Regenerate. 2005-06-01 06:36:25 +00:00
acheaders.at Regenerate. 2005-01-03 07:42:44 +00:00
aclang.at Regenerate. 2005-01-03 07:42:44 +00:00
aclibs.at Regenerate. 2005-01-03 07:42:44 +00:00
acprograms.at Regenerate. 2005-01-03 07:42:44 +00:00
acspecific.at Regenerate. 2005-01-03 07:42:44 +00:00
acstatus.at Regenerate. 2005-01-03 07:42:44 +00:00
actypes.at Regenerate. 2005-01-03 07:42:44 +00:00
atlocal.in fix AT_CONFIG_CMP 2005-06-22 12:13:59 +00:00
autotest.at Update FSF postal mail address. 2005-05-14 07:00:38 +00:00
base.at * tests/base.at (Input/Output): Ignore 'loading site script' chatter. 2005-07-06 17:01:52 +00:00
c.at * NEWS: New macro AC_C_TYPEOF. 2005-07-06 21:39:30 +00:00
compile.at Update FSF postal mail address. 2005-05-14 07:00:38 +00:00
foreign.at Update FSF postal mail address. 2005-05-14 07:00:38 +00:00
fortran.at Update FSF postal mail address. 2005-05-14 07:00:38 +00:00
local.at * tests/local.at (AT_CONFIG_CMP): Ignore lines like "LIBS=''" too. 2005-07-07 23:56:25 +00:00
m4sh.at * lib/m4sugar/m4sh.m4 (_AS_VERSION_COMPARE_PREPARE): New macro. 2005-06-16 21:03:47 +00:00
m4sugar.at Update FSF postal mail address. 2005-05-14 07:00:38 +00:00
Makefile.am a mistake: builddir, not srcdir 2005-06-03 13:47:56 +00:00
Makefile.in Regenerate. 2005-06-23 20:11:18 +00:00
mktests.sh Update FSF postal mail address. 2005-05-14 07:00:38 +00:00
semantics.at Update FSF postal mail address. 2005-05-14 07:00:38 +00:00
suite.at Update FSF postal mail address. 2005-05-14 07:00:38 +00:00
tools.at Rewrite substantial part of lib/autoconf/status.m4. 2005-07-25 18:10:25 +00:00
torture.at Rewrite substantial part of lib/autoconf/status.m4. 2005-07-25 18:10:25 +00:00
wrapper.as Update FSF postal mail address. 2005-05-14 07:00:38 +00:00