]> git.ipfire.org Git - thirdparty/autoconf.git/log
thirdparty/autoconf.git
16 years agoIgnore `set -e'-related failure of NetBSD sh.
Ralf Wildenhues [Wed, 14 Jan 2009 06:35:53 +0000 (07:35 +0100)] 
Ignore `set -e'-related failure of NetBSD sh.

* tests/m4sh.at (AS@&t@_EXIT): Skip test if (NetBSD) shell
fails to finish EXIT trap after set -e.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoMaintainer cleanups.
Eric Blake [Tue, 6 Jan 2009 15:41:34 +0000 (08:41 -0700)] 
Maintainer cleanups.

* cfg.mk (web-manual): Use new feature of gendocs.
(fetch): Fetch gendocs.
* Makefile.am (EXTRA_DIST): Distribute new file.
* doc/Makefile.am (EXTRA_DIST): Likewise.
* .gitattributes: Ignore whitespace in upstream files.
* HACKING (Other web updates): Update Free Software Directory
instructions.
(Upload): No longer mention xdelta.
* maint.mk (xd-delta): Likewise.
* build-aux/gendocs.sh: New upstream file.
* doc/gendocs_template: Likewise.
* build-aux/announce-gen: Resync from upstream.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* build-aux/gnupload: Likewise.
* build-aux/texinfo.tex: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoMake it easier to track diversion bugs.
Eric Blake [Tue, 30 Dec 2008 15:32:08 +0000 (08:32 -0700)] 
Make it easier to track diversion bugs.

* lib/m4sugar/m4sugar.m4 (_m4_divert_raw, _m4_undivert): New
internal macros, which are easier to trace than m4_builtin.
(m4_cleardivert, m4_divert, m4_divert_push, m4_divert_pop)
(m4_undivert): Use them.
(_m4_require_call): Likewise.  Use fewer macros.
* lib/autotest/general.m4 (_AT_DECIDE_TRACEABLE): Fix typo.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove multiarch detection.
Bruno Haible [Mon, 29 Dec 2008 23:19:31 +0000 (16:19 -0700)] 
Improve multiarch detection.

* lib/autoconf/c.m4 (AC_C_BIGENDIAN): Make detection of options
indicating a universal build more reliable.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse AS_CASE in documented example.
William Pursell [Sun, 28 Dec 2008 11:03:15 +0000 (11:03 +0000)] 
Use AS_CASE in documented example.

* doc/autoconf.texi (Using the System Type): Use AS_CASE in
example instead of raw case.

Signed-off-by: William Pursell <bill.pursell@gmail.com>
16 years agoMake m4_dumpdef more useful with M4 1.6.
Eric Blake [Tue, 23 Dec 2008 21:29:48 +0000 (14:29 -0700)] 
Make m4_dumpdef more useful with M4 1.6.

* lib/m4sugar/m4sugar.m4 (_m4_dumpdef): New macro.
(m4_init): Install it for new enough m4.
* tests/m4sugar.at (m4@&t@_dumpdef): Enhance test.
* doc/autoconf.texi (Redefined M4 Macros) <m4_dumpdef>: Mention
lack of sorting.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove INSTALL for HP-UX.
Bruno Haible [Wed, 24 Dec 2008 04:09:21 +0000 (21:09 -0700)] 
Improve INSTALL for HP-UX.

* doc/install.texi (Particular Systems): For HP-UX, also recommend
-D_XOPEN_SOURCE=500. Needed for the declaration of mbstate_t on
HP-UX 11.11.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove INSTALL for Haiku.
Bruno Haible [Tue, 23 Dec 2008 05:08:59 +0000 (22:08 -0700)] 
Improve INSTALL for Haiku.

* doc/install.texi (Particular Systems): Add a recommendation
which prefix to use on Haiku.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix typo in previous commit.
Eric Blake [Fri, 19 Dec 2008 21:49:18 +0000 (14:49 -0700)] 
Fix typo in previous commit.

* doc/autoconf.texi (Set manipulation Macros) <m4_set_map_sep>:
Fix typo.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoDocument some recently added macros.
Eric Blake [Fri, 19 Dec 2008 21:06:46 +0000 (14:06 -0700)] 
Document some recently added macros.

* lib/m4sugar/m4sugar.m4 (m4_map_args_w): Add optional sep
parameter.
* doc/autoconf.texi (Looping constructs) <m4_map_args_sep>
<m4_map_args_w, m4_stack_foreach, m4_stack_foreach_sep>: Document
new macros.
(Set manipulation Macros) <m4_set_map_sep>: Likewise.
* tests/m4sugar.at (m4@&t@_stack, M4 loops): Enhance tests.
* NEWS: Document new macros.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix separator in m4_stack_foreach_sep.
Eric Blake [Fri, 19 Dec 2008 00:15:13 +0000 (17:15 -0700)] 
Fix separator in m4_stack_foreach_sep.

* lib/m4sugar/m4sugar.m4 (_m4_stack_reverse): Separate separator
from prefix.
* tests/m4sugar.at (m4@&t@_stack): Enhance test.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoMention limitation of M4 1.4.x on builtin tokens.
Eric Blake [Thu, 18 Dec 2008 22:55:58 +0000 (15:55 -0700)] 
Mention limitation of M4 1.4.x on builtin tokens.

* doc/autoconf.texi (Redefined M4 Macros) <m4_dumpdef>: Document
ramification of M4 1.4.x's inability to pass builtin tokens
through text macros.
(Evaluation Macros) <m4_curry>: Likewise.
* tests/m4sugar.at (m4@&t@_defn): Enhance test.
* NEWS: Mention subtle change in m4_dumpdef semantics.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoDocument m4_version_prereq.
Eric Blake [Thu, 18 Dec 2008 13:44:59 +0000 (06:44 -0700)] 
Document m4_version_prereq.

* doc/autoconf.texi (Number processing Macros)
<m4_version_prereq>: Add documentation.
* NEWS: Mention it.
Reported by Bruno Haible.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAC_HEADER_ASSERT: don't say assertions are disabled when they're not
Jim Meyering [Wed, 10 Dec 2008 13:45:35 +0000 (14:45 +0100)] 
AC_HEADER_ASSERT: don't say assertions are disabled when they're not

* lib/autoconf/headers.m4 (AC_HEADER_ASSERT): Do not make configure
report "checking whether to enable assertions... no", when they are
in fact enabled.  This is solely a bug in the output of configure.
In spite of saying "no", NDEBUG was not defined in that case.
Also, as noted by Eric Blake, leave assertions enabled upon
--enable-assert=INVALID.

16 years agoFix m4_location inside m4_wrap with m4 1.4.5.
Eric Blake [Tue, 9 Dec 2008 17:47:19 +0000 (10:47 -0700)] 
Fix m4_location inside m4_wrap with m4 1.4.5.

* lib/m4sugar/m4sugar.m4 (m4_undefine): Redefine m4_location
inside wrapped text if older m4 is detected.
Reported by William Pursell.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix AC_HEADER_ASSERT w.r.t. --enable-assert.
William Pursell [Mon, 8 Dec 2008 21:16:38 +0000 (14:16 -0700)] 
Fix AC_HEADER_ASSERT w.r.t. --enable-assert.

* lib/autoconf/headers.m4 (AC_HEADER_ASSERT): Honor --enable-assert,
rather than treating it as a synonym for --disable-assert.
* NEWS: Document the fix.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix AC_HEADER_ASSERT not to treat --enable-assert and --disable-assert the same.
Paolo Bonzini [Mon, 8 Dec 2008 21:12:20 +0000 (22:12 +0100)] 
Fix AC_HEADER_ASSERT not to treat --enable-assert and --disable-assert the same.

* lib/autoconf/headers.m4 (AC_HEADER_ASSERT): Check value of $enableval.

16 years agoFix some typos and grammatical errors in documentation.
William Pursell [Thu, 4 Dec 2008 21:18:40 +0000 (21:18 +0000)] 
Fix some typos and grammatical errors in documentation.

* doc/autoconf.texi: Clean up some bad use of English.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove AC_STATE_SAVE.
Eric Blake [Tue, 2 Dec 2008 18:51:44 +0000 (11:51 -0700)] 
Improve AC_STATE_SAVE.

* tests/local.at (AC_STATE_SAVE): Avoid ls -1, and use one less
process by hoisting the uniqueness check into sed.
* doc/autoconf.texi (Limitations of Usual Tools) <ls>: Mention
MacOS bug.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAvoid MacOS readdir bug in testsuite.
Eric Blake [Tue, 2 Dec 2008 18:15:55 +0000 (11:15 -0700)] 
Avoid MacOS readdir bug in testsuite.

* tests/local.at (AC_STATE_SAVE): Avoid spurious failures due to
duplicated ls entries.
* THANKS: Update.
Reported by Bruce Dugan and others.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoHide `set -m' error message, for zsh.
Ralf Wildenhues [Sat, 29 Nov 2008 09:57:00 +0000 (10:57 +0100)] 
Hide `set -m' error message, for zsh.

* lib/autotest/general.m4 (AT_JOB_FIFO_FD): Hide zsh 4.3.4
error messages about `set -m'.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoFix a couple of test failures with dash.
Ralf Wildenhues [Thu, 27 Nov 2008 19:02:34 +0000 (20:02 +0100)] 
Fix a couple of test failures with dash.

* tests/autotest.at (AT_CHECK_AT_TITLE_CHAR): Normalize
exit status of `cd'.
* tests/m4sh.at (AS_MESSAGE_LOG_FD): Remove script before
regeneration, to avoid timing effects.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoAdd m4_cleardivert.
Eric Blake [Tue, 25 Nov 2008 16:28:43 +0000 (09:28 -0700)] 
Add m4_cleardivert.

* lib/m4sugar/m4sugar.m4 (m4_cleardivert): New macro.
* lib/autotest/general.m4 (AT_INIT): Use it.
* lib/autoconf/general.m4 (_AC_INIT_NOTICE): Likewise.
* tests/m4sugar.at (m4@&t@_divert_stack): Test it.
* doc/autoconf.texi (Diversion support) <m4_cleardivert>: Document
it.
* NEWS: Likewise.
Suggested by Paolo Bonzini.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdd safety check for m4_expand vs. diversions.
Eric Blake [Mon, 24 Nov 2008 20:52:01 +0000 (13:52 -0700)] 
Add safety check for m4_expand vs. diversions.

* lib/m4sugar/m4sugar.m4 (m4_expand): Make more robust against
diverted text.
* doc/autoconf.texi (Evaluation Macros) <m4_expand>: Document new
safety check.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix typo in AS_MESSAGE_LOG_FD patch.
Eric Blake [Mon, 24 Nov 2008 13:28:56 +0000 (06:28 -0700)] 
Fix typo in AS_MESSAGE_LOG_FD patch.

* lib/m4sugar/m4sh.m4 (AS_ERROR): Check correct condition.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoMore reliable signal handling in Autotest.
Ralf Wildenhues [Sun, 23 Nov 2008 19:00:39 +0000 (20:00 +0100)] 
More reliable signal handling in Autotest.

* lib/autotest/general.m4 (Driver loop): Rewrite signal handler.
Start parallel jobs in their own process group, enabling job
control in the shell if possible, for better signal handling.
Deal with INT, TERM, and HUP in the testsuite driver.  In the
parallel driver, propagate TSTP to jobs either as TSTP or as
STOP (to avoid fork bombs with ksh).
Inside the job processes, add PIPE handler to write back the
job token, so the master process does not hang.
Disable the parallel driver if job control is not provided or if
trap does not understand signal names.
* tests/autotest.at (parallel autotest and signals): New test,
exercises INT, TERM, and PIPE, serial and parallel, with and
without `make' in the loop.
Kudos to Richard Stevens for writing APUE.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoFix testsuite failure on Solaris.
Eric Blake [Sat, 22 Nov 2008 15:40:39 +0000 (08:40 -0700)] 
Fix testsuite failure on Solaris.

* tests/torture.at (AT_CHECK_CONFIG_CREATION_NOWRITE): Normalize
failure status to 1.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoClean up AS_MESSAGE_LOG_FD usage.
Eric Blake [Fri, 21 Nov 2008 22:50:37 +0000 (15:50 -0700)] 
Clean up AS_MESSAGE_LOG_FD usage.

* lib/m4sugar/m4sh.m4 (AS_MESSAGE_FD, AS_MESSAGE_LOG_FD)
(AS_ORIGINAL_STDIN_FD): Provide default M4sh values.
(_AS_ECHO_LOG, AS_MESSAGE, _AS_ERROR_PREPARE, AS_ERROR): Simplify
usage.
(AS_INIT_GENERATED): Don't shuffle an unchanged AS_MESSAGE_FD.
* tests/m4sh.at (AS@&t@_INIT_GENERATED): Update test.
(AS@&t@_MESSAGE_FD): New test.
* doc/autoconf.texi (Initialization Macros) <AS_INIT_GENERATED>:
Give more details about fd manipulation.
(File Descriptor Macros): Describe M4sh defaults for the fds.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse shell function for AS_ERROR.
Eric Blake [Fri, 21 Nov 2008 17:15:20 +0000 (10:15 -0700)] 
Use shell function for AS_ERROR.

* lib/m4sugar/m4sh.m4 (_AS_ERROR_PREPARE): New macro, defining a
new shell function.
(AS_ERROR): Use it.
(_AS_LINENO_PREPARE): Break circular dependency.
(AS_PREPARE, _AS_PREPARE): Initialize for child scripts.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix typos in recent testsuite improvements.
Eric Blake [Fri, 21 Nov 2008 19:28:36 +0000 (12:28 -0700)] 
Fix typos in recent testsuite improvements.

* lib/autotest/general.m4 (AT_INIT) <at_fn_check_prepare_dynamic>:
Fix typo.
* NEWS: Clarify the potential impact to users.
* tests/autotest.at (AT_DATA_AUTOTEST): New macro, patterned after
AT_DATA_M4SUGAR.
(AT_CHECK_AT_PREP, AT_CHECK_AT_TITLE): Use it.
(unusual file names): Test that the recent echo fix does not
regress.  Fix quoting bug that made the test a no-op.
Reported by Paolo Bonzini and Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse modern m4sh constructs in autoconf.
Eric Blake [Fri, 21 Nov 2008 15:31:17 +0000 (08:31 -0700)] 
Use modern m4sh constructs in autoconf.

* bin/autoconf.as (exit_missing_arg, getopt): Use AS_ERROR, rather
than AS_EXIT.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoChange the semantics of AS_EXIT without argument.
Eric Blake [Fri, 21 Nov 2008 15:12:12 +0000 (08:12 -0700)] 
Change the semantics of AS_EXIT without argument.

* lib/m4sugar/m4sh.m4 (_AS_EXIT_PREPARE): When defaulting, use $?
even if it is 0.
(AS_ERROR): Guarantee non-zero status.
* bin/autoconf.as (exit_missing_arg, getopt): Revert prior change;
we want non-zero status.
* tests/m4sh.at (AS@&t@_EXIT): Update test accordingly.
* doc/autoconf.texi (Common Shell Constructs) <AS_EXIT>: Update
the documentation.
<AS_SET_STATUS>: Don't overly restrict implementation.
(Printing Messages) <AC_MSG_ERROR>: Describe better default.
Suggestions by Paolo Bonzini and Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdd @anchors within Builtins and Usual Tools lists.
Eric Blake [Fri, 21 Nov 2008 13:54:51 +0000 (06:54 -0700)] 
Add @anchors within Builtins and Usual Tools lists.

* doc/autoconf.texi (Limitations of Builtins)
(Limitatations of Usual Tools): Add anchors for tools called out
by name.  Adjust callers to narrow in on tool of interest.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoMove case statement style discussion to m4 quoting section.
Eric Blake [Fri, 21 Nov 2008 13:35:35 +0000 (06:35 -0700)] 
Move case statement style discussion to m4 quoting section.

* doc/autoconf.texi (Limitations of Builtins): Move comparison of
quoting styles...
(Balancing Parentheses): ...to this new node.
Suggested by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFactor more common code out of AT_CHECK into shell function.
Eric Blake [Fri, 21 Nov 2008 04:59:23 +0000 (21:59 -0700)] 
Factor more common code out of AT_CHECK into shell function.

* lib/autotest/general.m4 (_AT_CHECK): Avoid echo bug if AT_LINE
starts with -.  Move preparations...
(AT_INIT) <at_fn_check_prepare_trace>
<at_fn_check_prepare_notrace, at_fn_check_prepare_dynamic>:
...into these new shell functions.
<at_fn_check_newline>: Inline into only caller.
(_AT_DECIDE_TRACEABLE): Use them to condense testsuite size.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoHandle version numbers as decimal, even if they start with 0.
Eric Blake [Fri, 21 Nov 2008 04:02:22 +0000 (21:02 -0700)] 
Handle version numbers as decimal, even if they start with 0.

* lib/m4sugar/m4sugar.m4 (_m4_version_unletter): Avoid
interpreting leading zeros as octal.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoSpeed up AT_CHECK.
Eric Blake [Fri, 21 Nov 2008 00:06:22 +0000 (17:06 -0700)] 
Speed up AT_CHECK.

* lib/autotest/general.m4 (AT_CHECK, AT_CHECK_UNQUOTED): Expand
third and fourth arguments once.
(_AT_CHECK): Don't re-expand expected output.  Rearrange code for
fewer scans of arguments.
(AT_CHECK): Update caller.
(AT_INIT) <at_fn_filter_trace>: Drop parameter.
* tests/m4sugar.at (m4@&t@_split): Protect test with
quadrigraphs.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix XFAIL related to AT_CHECK.
Eric Blake [Fri, 21 Nov 2008 00:23:52 +0000 (17:23 -0700)] 
Fix XFAIL related to AT_CHECK.

* lib/autotest/general.m4 (AT_CHECK, AT_CHECK_UNQUOTED): Expand
first argument once.
(_AT_CHECK): Don't re-expand commands.
* tests/autotest.at (Multiline command from M4 expansion): Remove
XFAIL.
* tests/tools.at (autoupdating AU_ALIAS): Quote unbalanced paren.
* NEWS: Document the fallout.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoReduce forks in AC_DEFINE.
Eric Blake [Fri, 14 Nov 2008 04:20:18 +0000 (21:20 -0700)] 
Reduce forks in AC_DEFINE.

* lib/autoconf/general.m4 (_AC_DEFINE_Q_PRINT): New macro.
(_AC_DEFINE_Q): Use it to avoid forks for all AC_DEFINE and most
AC_DEFINE_UNQUOTED.
* lib/autoconf/fortran.m4 (_AC_FC_WRAPPERS): Properly quote #.
* tests/torture.at (Substitute and define special characters):
(Define to a 2000-byte string): Enhance tests to cover
AC_DEFINE_UNQUOTED.
(@%:@define header templates): Enhance test to cover #.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove m4_expand robustness, part 2.
Eric Blake [Wed, 19 Nov 2008 18:38:18 +0000 (11:38 -0700)] 
Improve m4_expand robustness, part 2.

* lib/m4sugar/m4sugar.m4 (m4_expand): Support unterminated
comments, by wrapping old implementation...
(_m4_expand): ...as this, and renaming old core...
(_m4_expand_): ...to this.
(m4_text_box): Use lighter-weight _m4_expand.
* lib/m4sugar/m4sh.m4 (_AS_DETECT_EXPAND)
(_AS_DETECT_BETTER_SHELL, AS_FUNCTION_DESCRIBE): Likewise.
* lib/autotest/general.m4 (AT_KEYWORDS): Likewise.
* tests/m4sugar.at (m4@&t@_expand): Enhance test.
* tests/autotest.at (AT_CHECK_AT_TITLE_CHAR): Likewise.
* doc/autoconf.texi (Evaluation Macros) <m4_expand>: Mention new
functionality.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove m4_expand robustness, part 1.
Eric Blake [Wed, 19 Nov 2008 16:00:55 +0000 (09:00 -0700)] 
Improve m4_expand robustness, part 1.

* lib/m4sugar/m4sugar.m4 (_m4_expand): Tolerate unquoted
unbalanced `)'.
* tests/m4sugar.at (m4@&t@_expand): New test.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdd m4_chomp, m4_esyscmd_s.
Eric Blake [Thu, 13 Nov 2008 04:45:42 +0000 (21:45 -0700)] 
Add m4_chomp, m4_esyscmd_s.

* lib/m4sugar/m4sugar.m4 (m4_esyscmd_e, m4_chomp, m4_chomp_all):
New macros.
* doc/autoconf.texi (Redefined M4 Macros) <m4_esyscmd_s>: Document
them.
(Text processing Macros) <m4_chomp>: Likewise.
* NEWS: Likewise.
* tests/m4sugar.at (m4@&t@_esyscmd_s): New test.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoRemove _m4_index.
Eric Blake [Thu, 13 Nov 2008 04:10:35 +0000 (21:10 -0700)] 
Remove _m4_index.

* lib/m4sugar/m4sugar.m4 (_m4_index): Delete; it is more efficient
to make callers guarantee a match.
(m4_init): Adjust caller.
* lib/autoconf/status.m4 (_AC_CONFIG_COMPUTE_DEST): Likewise.
* lib/autoconf/general.m4 (_AC_DEFINE_Q): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoDescribe different hacks for balancing ')' in case statements.
Eric Blake [Thu, 20 Nov 2008 21:29:58 +0000 (14:29 -0700)] 
Describe different hacks for balancing ')' in case statements.

* doc/autoconf.texi (Limitations of Builtins) <case>: Add an
exposition on various quoting styles.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoSpeed up _AS_QUOTE.
Eric Blake [Thu, 20 Nov 2008 19:08:14 +0000 (12:08 -0700)] 
Speed up _AS_QUOTE.

* lib/m4sugar/m4sh.m4 (_AS_QUOTE_IFELSE): Inline into...
(_AS_QUOTE): ...here, delete unused second paramenter, and factor
choice into...
(_AS_QUOTE_MODERN, _AS_QUOTE_OLD): ...new helpers.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFor consistency, make temporary variable match language name.
Alfred G. de Wijn [Thu, 20 Nov 2008 12:48:07 +0000 (05:48 -0700)] 
For consistency, make temporary variable match language name.

* lib/autoconf/fortran.m4 (_AC_PROG_FC_G, _AC_PROG_FC_V_OUTPUT):
Match the save/test variables' names to the FFLAGS/FCFLAGS being
saved.
* THANKS: Update.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove testsuite generation.
Eric Blake [Wed, 19 Nov 2008 16:25:22 +0000 (09:25 -0700)] 
Improve testsuite generation.

* tests/local.at (AT_DATA_M4SUGAR, AT_DATA_M4SH)
(AT_DATA_AUTOCONF): Escape all quadrigraphs, not just @&t@.  Use
fewer macros.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse fn for shell functions, func for autoconf CHECK_FUNCS.
Eric Blake [Tue, 18 Nov 2008 16:40:03 +0000 (09:40 -0700)] 
Use fn for shell functions, func for autoconf CHECK_FUNCS.

* lib/autoconf/functions.m4 (AC_CHECK_FUNC): Abbreviate shell
function names.
* lib/autoconf/general.m4 (_AC_PREPROC_IFELSE)
(_AC_COMPILE_IFELSE, _AC_LINK_IFELSE, _AC_RUN_IFELSE)
(AC_CHECK_DECL, AC_COMPUTE_INT): Likewise.
* lib/autoconf/headers.m4 (_AC_CHECK_HEADER_MONGREL)
(_AC_CHECK_HEADER_COMPILE, _AC_CHECK_HEADER_PREPROC): Likewise.
* lib/autoconf/types.m4 (_AC_CHECK_TYPE_NEW, _AC_TYPE_INT)
(_AC_TYPE_UNSIGNED_INT, AC_CHECK_MEMBER): Likewise.
* lib/autotest/general.m4 (AT_INIT): Likewise.
* lib/m4sugar/m4sh.m4 (_AS_SHELL_FN_WORK, _AS_EXIT_PREPARE)
(AS_EXIT, AS_SET_STATUS, _AS_UNSET_PREPARE, _AS_MKDIR_P)
(_AS_MKDIR_P_PREPARE, _AS_VAR_APPEND_PREPARE, AS_VAR_APPEND)
(_AS_VAR_ARITH_PREPARE, AS_VAR_ARITH): Likewise.
* doc/autoconf.texi (Shell Functions): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAlter default value of AS_EXIT.
Eric Blake [Wed, 19 Nov 2008 03:58:19 +0000 (20:58 -0700)] 
Alter default value of AS_EXIT.

* lib/m4sugar/m4sh.m4 (_AS_EXIT_PREPARE): Let as_func_exit
parameter be optional.
(AS_EXIT): Use it to make better default.
(_AS_DETECT_BETTER_SHELL): Use new default.
* bin/autoconf.as (exit_missing_arg, getopt): Likewise.
* lib/autoconf/status.m4 (AC_OUTPUT): Likewise.
* tests/m4sh.at (AS@&t@_EXIT): Update test.
* doc/autoconf.texi (Common Shell Constructs) <AS_EXIT>: Mention
new default behavior.
(Limitations of Builtins) <trap>: Adjust to use new default.
* NEWS: Mention the semantic change.
Suggested by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUpdate example to match actual Tru64 behavior.
Eric Blake [Wed, 19 Nov 2008 03:07:19 +0000 (20:07 -0700)] 
Update example to match actual Tru64 behavior.

* doc/autoconf.texi (Limitations of Builtins) <trap>: Correct
the example.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdd AS_SET_STATUS, make AS_EXIT more efficient.
Eric Blake [Mon, 17 Nov 2008 22:49:30 +0000 (15:49 -0700)] 
Add AS_SET_STATUS, make AS_EXIT more efficient.

* lib/m4sugar/m4sh.m4 (_AS_EXIT_PREPARE, AS_SET_STATUS): New
macros.
(AS_EXIT): Rewrite to avoid forks.
(_AS_SHELL_SANITIZE): Avoid AS_EXIT prior to shell functions.
(AS_PREPARE, _AS_PREPARE): Add new preparation.
* doc/autoconf.texi (Common Shell Constructs) <AS_SET_STATUS>:
Document.
* NEWS: Mention new macro.
* tests/m4sh.at (AS@&t@_EXIT): New test.
(BASENAME_TEST): Sort.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoDocument Tru64 bug with 'set -e'.
Eric Blake [Tue, 18 Nov 2008 15:45:04 +0000 (08:45 -0700)] 
Document Tru64 bug with 'set -e'.

* doc/autoconf.texi (Limitations of Builtins) <trap>: Mention a
bug in mixing 'set -e' with 'trap .. 0'.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoDocument a Solaris /bin/sh bug with 'set -e'.
Eric Blake [Tue, 18 Nov 2008 13:30:37 +0000 (06:30 -0700)] 
Document a Solaris /bin/sh bug with 'set -e'.

* doc/autoconf.texi (Shell Functions): Mention the bug.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoDetect empty list in AS_FOR.
Eric Blake [Mon, 17 Nov 2008 13:20:27 +0000 (06:20 -0700)] 
Detect empty list in AS_FOR.

* lib/m4sugar/m4sh.m4 (AS_FOR): Handle iteration over $@
properly.
* tests/m4sh.at (AS@&t@_FOR): Enhance test to catch it.
Reported by Paolo Bonzini.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse a different workaround for an automake quirk.
Ralf Wildenhues [Sun, 16 Nov 2008 22:03:29 +0000 (23:03 +0100)] 
Use a different workaround for an automake quirk.

* tests/Makefile.am (AUTOMAKE_OPTIONS): Remove.
(distclean_generic): New helper variable, to fool automake.
($(distclean_generic)): Depend on clean-local, to prevent
the race in the two rules with accessing and removing
$(TESTSUITE).
Report by Eric Blake.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoSimplify, avoid unbalanced parentheses from last change.
Ralf Wildenhues [Sun, 16 Nov 2008 22:00:22 +0000 (23:00 +0100)] 
Simplify, avoid unbalanced parentheses from last change.

* lib/m4sugar/m4sh.m4 (_AS_VAR_ARITH_PREPARE): Simplify, avoid
unbalanced parentheses from last change.
Spotted by Eric Blake, fix suggested by Paolo Bonzini.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoFix exit status of expr version of as_func_arith.
Ralf Wildenhues [Sun, 16 Nov 2008 21:18:07 +0000 (22:18 +0100)] 
Fix exit status of expr version of as_func_arith.

* lib/m4sugar/m4sh.m4 (_AS_VAR_ARITH_PREPARE): Count an exit
status of 1 of expr also as success, to avoid failure if the
computation result is zero.  Fixes test failures with IRIX sh,
where the expr variant of as_func_arith is used.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoDo not use read-only variable $status.
Ralf Wildenhues [Sun, 16 Nov 2008 16:54:54 +0000 (17:54 +0100)] 
Do not use read-only variable $status.

* tests/compile.at (AC_RUN_IFELSE): Use $estatus instead of
$status, for zsh.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoUse the new AS_FOR function.
Eric Blake [Sat, 15 Nov 2008 17:36:22 +0000 (10:36 -0700)] 
Use the new AS_FOR function.

* lib/autoconf/functions.m4 (AC_CHECK_FUNCS): Use new
abstraction for cleaner code.
* lib/autoconf/headers.m4 (AC_CHECK_HEADERS): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdd AS_FOR, undocumented for now.
Eric Blake [Sat, 15 Nov 2008 17:17:06 +0000 (10:17 -0700)] 
Add AS_FOR, undocumented for now.

* lib/m4sugar/m4sh.m4 (AS_FOR): New macro.
* tests/m4sh.at (AS@&t@_FOR): New test.
Suggested by Paolo Bonzini.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoOptimize single-argument loop.
Eric Blake [Thu, 13 Nov 2008 21:02:51 +0000 (14:02 -0700)] 
Optimize single-argument loop.

* lib/autoconf/functions.m4 (AC_CHECK_FUNCS): Avoid forks when
loop only has one argument.
* lib/autoconf/headers.m4 (AC_CHECK_HEADERS): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix AS_ESCAPE usage bugs.
Eric Blake [Thu, 13 Nov 2008 19:17:01 +0000 (12:17 -0700)] 
Fix AS_ESCAPE usage bugs.

* lib/m4sugar/m4sh.m4 (_AS_VAR_APPEND_PREPARE)
(_AS_VAR_ARITH_PREPARE): Expand macros prior to adding shell
escapes.
(AS_TR_SH, AS_VAR_GET): Use _AS_ESCAPE for speed.
* doc/autoconf.texi (Polymorphic Variables) <AS_VAR_SET>: Document
caveat due to conditional AS_ESCAPE.
* tests/m4sh.at (AS@&t@_VAR basics): Enhance test.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoWhitespace reduction in configure.
Eric Blake [Tue, 11 Nov 2008 17:34:08 +0000 (10:34 -0700)] 
Whitespace reduction in configure.

* lib/autoconf/autoheader.m4 (AH_VERBATIM): Avoid empty lines.
* lib/autoconf/general.m4 (_AC_INIT_PREPARE, AC_CHECK_FILES):
Likewise.
(_AC_DEFINE_Q): Restore empty line, since some clients in the wild
depend on it.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoMake M4sh, not autoconf, guarantee sane $SHELL.
Eric Blake [Thu, 13 Nov 2008 03:10:09 +0000 (20:10 -0700)] 
Make M4sh, not autoconf, guarantee sane $SHELL.

* lib/autoconf/general.m4 (_AC_INIT_DEFAULTS): Move setting of
SHELL...
* lib/m4sugar/m4sh.m4 (_AS_DETECT_BETTER_SHELL): ...to here.
* doc/autoconf.texi (Initialization Macros): Document the effect
on SHELL.
* tests/m4sh.at (AS@&t@_INIT_GENERATED): New test.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoWrap keywords in `testsuite --list' output.
Ralf Wildenhues [Wed, 12 Nov 2008 22:54:01 +0000 (23:54 +0100)] 
Wrap keywords in `testsuite --list' output.

* lib/autotest/general.m4 (AT_INIT): Rewrite --list awk script,
avoid lint warnings from gawk, wrap keyword lists to stay below
80 characters per line if possible.
* tests/autotest.at (Keyword wrapping): New test.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoBump copyright years in local.at.
Ralf Wildenhues [Wed, 12 Nov 2008 06:16:00 +0000 (07:16 +0100)] 
Bump copyright years in local.at.

* tests/local.at (AT_COPYRIGHT): Bump copyright years.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoFix a couple of typos in the manual.
Ralf Wildenhues [Wed, 12 Nov 2008 06:14:19 +0000 (07:14 +0100)] 
Fix a couple of typos in the manual.

* doc/autoconf.texi (Conditional constructs, Macro Names): Fix
typos.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoWork around <=m4-1.4.9 bug in m4_format.
Eric Blake [Tue, 11 Nov 2008 04:00:44 +0000 (21:00 -0700)] 
Work around <=m4-1.4.9 bug in m4_format.

* lib/m4sugar/m4sugar.m4 (_m4_index): New internal macro.
(m4_init): Only use it in older m4.
* lib/autoconf/general.m4 (_AC_DEFINE_Q): Use it to avoid
m4_format bug in older m4.
* lib/autoconf/status.m4 (_AC_CONFIG_COMPUTE_DEST): Likewise.
Reported by Bob Proulx.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoMatch upstream standards.texi.
Eric Blake [Tue, 11 Nov 2008 02:38:05 +0000 (19:38 -0700)] 
Match upstream standards.texi.

* doc/standards.texi: Resync from upstream.
* doc/fdl-1.3.texi: Rename...
* doc/fdl.texi: ...to this.
* doc/Makefile.am (autoconf_TEXINFOS, standards_TEXINFOS): Update
users.
* doc/autoconf.texi (GNU Free Documentation License): Likewise.
* cfg.mk (fetch): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoYet more FDL 1.3 fallout.
Eric Blake [Mon, 10 Nov 2008 23:06:59 +0000 (16:06 -0700)] 
Yet more FDL 1.3 fallout.

* NEWS: Mention manual license change.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAvoid some regex uses.
Eric Blake [Fri, 7 Nov 2008 14:11:01 +0000 (07:11 -0700)] 
Avoid some regex uses.

* lib/autoconf/general.m4 (_AC_DEFINE_Q): Use m4_format rather
than m4_bpatsubst to grab string prefix.
* lib/autoconf/status.m4 (_AC_CONFIG_REGISTER)
(_AC_CONFIG_REGISTER_DEST, AC_CONFIG_SUBDIRS): Likewise.
(_AC_FILE_DEPENDENCY_TRACE_COLON): Use m4_translit instead of
m4_bpatsubst to change bytes.
(_AC_CONFIG_DEPENDENCY_DEFAULT): Use m4_index rather than
m4_bmatch to find byte.
(_AC_CONFIG_COMPUTE_DEST): New helper macro.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse more efficient macros in AC_CONFIG_SUBDIRS.
Eric Blake [Fri, 7 Nov 2008 13:20:12 +0000 (06:20 -0700)] 
Use more efficient macros in AC_CONFIG_SUBDIRS.

* lib/autoconf/status.m4 (_AC_CONFIG_FOOS, AC_CONFIG_SUBDIRS): Use
m4_map_args_w.
(_AC_OUTPUT_FILE): Use m4_map_args_sep and m4_map_args.
(_AC_OUTPUT_FILE_ADJUST_DIR): New helper macro.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse more efficient macros in AC_CHECK_FILES and AC_CHECK_DECLS.
Eric Blake [Fri, 7 Nov 2008 04:40:18 +0000 (21:40 -0700)] 
Use more efficient macros in AC_CHECK_FILES and AC_CHECK_DECLS.

* lib/autoconf/general.m4 (AC_CHECK_FILES): Use m4_map_args_w,
and avoid typo.
(AC_CHECK_DECLS, AC_CHECK_DECLS_ONCE): Use m4_map_args_sep.
(_AC_CHECK_FILES, _AC_CHECK_DECLS, _AC_CHECK_DECL_ONCE): New
helper macros.
(AC_LIBSOURCES): Use m4_map_args.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse more efficient macros in AC_CHECK_TYPES.
Eric Blake [Fri, 7 Nov 2008 00:18:35 +0000 (17:18 -0700)] 
Use more efficient macros in AC_CHECK_TYPES.

* lib/autoconf/types.m4 (AC_CHECK_TYPES, AC_CHECK_MEMBERS): Use
m4_map_args_sep.
(_AC_CHECK_TYPES, _AC_CHECK_MEMBERS): New helper macros.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse more efficient macros in AC_CHECK_HEADERS.
Eric Blake [Thu, 6 Nov 2008 21:04:55 +0000 (14:04 -0700)] 
Use more efficient macros in AC_CHECK_HEADERS.

* lib/autoconf/headers.m4 (AH_CHECK_HEADERS)
(AH_CHECK_HEADERS_DIRENT): Rename...
(_AH_CHECK_HEADER, _AH_CHECK_HEADER_DIRENT): ...and take only one
argument, rather than a list.
(AC_CHECK_HEADERS, AC_CHECK_HEADERS_ONCE):
Adjust callers to use m4_map_args_w.
(AC_HEADER_DIRENT): Adjust caller to use m4_map_args.
(_AC_CHECK_HEADER_ONCE): New helper macro.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse more efficient macros in AC_CHECK_FUNCS.
Eric Blake [Thu, 6 Nov 2008 18:33:04 +0000 (11:33 -0700)] 
Use more efficient macros in AC_CHECK_FUNCS.

* lib/autoconf/functions.m4 (_AH_CHECK_FUNCS): Rename...
(_AH_CHECK_FUNC): ...and take only one argument, rather than a
list.
(AC_CHECK_FUNCS, AC_CHECK_FUNCS_ONCE): Adjust callers to use
m4_map_args_w.
(_AC_CHECK_FUNC_ONCE): New helper macro.
(AC_REPLACE_FUNCS): Use m4_map_args_w.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse more efficient macro in AT_INIT.
Eric Blake [Thu, 6 Nov 2008 21:32:23 +0000 (14:32 -0700)] 
Use more efficient macro in AT_INIT.

* lib/autotest/general.m4 (AT_INIT): Use m4_map_args.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoMore FDL 1.3 fallout.
Eric Blake [Mon, 10 Nov 2008 18:09:54 +0000 (11:09 -0700)] 
More FDL 1.3 fallout.

* cfg.mk (fetch): Add gnu-oids.texi, drop fdl.texi.
* doc/Makefile.am (standards_TEXINFOS): Reflect upstream
dependency changes.
* doc/fdl.texi: Delete.
* doc/gnu-oids.texi: New upstream file.
* doc/standards.texi: Resync from upstream.
* doc/make-stds.texi: Likewise.
* build-aux/announce-gen: Likewise.
* build-aux/texinfo.tex: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoPass autoreconf -I to aclocal -I
Clinton Roy [Fri, 24 Oct 2008 02:36:47 +0000 (12:36 +1000)] 
Pass autoreconf -I to aclocal -I

* bin/autoreconf.in (parse_args): Pass --include to aclocal.
* doc/autoconf.texi (autoreconf Invocation): Updates for above.
* NEWS: Document it.
* THANKS: Update.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoTry 'print -r --' as a non-forking variant of 'printf %s\\n'.
Eric Blake [Mon, 10 Nov 2008 15:28:48 +0000 (08:28 -0700)] 
Try 'print -r --' as a non-forking variant of 'printf %s\\n'.

* lib/m4sugar/m4sh.m4 (_AS_ECHO_PREPARE): Cater to Solaris ksh.
* doc/autoconf.texi (Limitations of Builtins) <printf>: Document
the print workaround.
Idea by Paolo Bonzini.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoProvide a section on all tools allowed in GNU Coding Standards.
Eric Blake [Fri, 7 Nov 2008 21:03:21 +0000 (14:03 -0700)] 
Provide a section on all tools allowed in GNU Coding Standards.

* doc/autoconf.texi (Limitations of Builtins) <read>: Sort.
<wait>: Add section.
(Limitations of Usual Tools) <awk>: Make table entry consistent.
<chgrp, mkfifo, rmdir, sleep, sort, tar> Add sections.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoBalance parentheses in _AC_CACHE_DUMP.
Paolo Bonzini [Sun, 9 Nov 2008 13:46:12 +0000 (14:46 +0100)] 
Balance parentheses in _AC_CACHE_DUMP.

* lib/autoconf/general.m4 (_AC_CACHE_DUMP): Balance parentheses
without introducing \).

16 years agoFurther doc updates for AC_CHECK_HEADER change.
Eric Blake [Fri, 7 Nov 2008 16:28:57 +0000 (09:28 -0700)] 
Further doc updates for AC_CHECK_HEADER change.

* doc/autoconf.texi (Generic Headers) <AC_CHECK_HEADER>: Mention
new default, and make it more obvious that using [-] is generally
broken.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse UTF-8 in ChangeLog.
Eric Blake [Fri, 7 Nov 2008 15:57:34 +0000 (08:57 -0700)] 
Use UTF-8 in ChangeLog.

* ChangeLog: Enforce UTF-8 encoding.
The file was converted from Latin-1 by commit b83aa7.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoSkip preprocessor check in AC_CHECK_HEADERS_ONCE.
Eric Blake [Thu, 6 Nov 2008 21:40:47 +0000 (14:40 -0700)] 
Skip preprocessor check in AC_CHECK_HEADERS_ONCE.

* lib/autoconf/headers.m4 (_AC_HEADERS_EXPANSION): Provide fourth
argument to speed up check.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoSpeed up AC_CHECK_TYPE.
Eric Blake [Thu, 6 Nov 2008 23:29:53 +0000 (16:29 -0700)] 
Speed up AC_CHECK_TYPE.

* lib/autoconf/types.m4 (AC_CHECK_TYPE): Factor out $@, and avoid
regex when enough arguments are present.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoRemove three forks per _AC_RUN_LOG_STDERR in the common case.
Paolo Bonzini [Thu, 6 Nov 2008 10:42:39 +0000 (11:42 +0100)] 
Remove three forks per _AC_RUN_LOG_STDERR in the common case.

* lib/autoconf/general.m4 (_AC_RUN_LOG_STDERR): Avoid grep/rm/cat
sequence when the program's stderr was empty, while providing a
conftest.err file even in that case.
(_AC_CACHE_DUMP): Fix mismatched parenthesis.

16 years agoChange `present but cannot be compiled' behavior to use compiler result.
Paolo Bonzini [Thu, 6 Nov 2008 09:54:51 +0000 (10:54 +0100)] 
Change `present but cannot be compiled' behavior to use compiler result.

* NEWS: Document it.
* doc/autoconf.texi (Present But Cannot Be Compiled): Document it.
* lib/autoconf/headers.m4 (_AC_CHECK_HEADER_MONGREL): Implement it
and adjust warning.
* tests/semantics.at (AC_CHECK_HEADERS): Test new semantics.

16 years agoAdd m4_map_args_w.
Eric Blake [Thu, 6 Nov 2008 00:11:15 +0000 (17:11 -0700)] 
Add m4_map_args_w.

* lib/m4sugar/m4sugar.m4 (m4_map_args_w): New macro, undocumented
for now.
(_m4_split): Allow user control over separator.
(m4_split): Adjust caller.
(m4_foreach_w, m4_append_uniq_w, _m4_text_wrap): Rewrite to use
m4_map_args_w.
* tests/m4sugar.at (m4@&t@_append): Augment test keywords.
(M4 loops): Test new interface.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse m4_set_map_sep in more places.
Eric Blake [Wed, 5 Nov 2008 19:09:00 +0000 (12:09 -0700)] 
Use m4_set_map_sep in more places.

* lib/m4sugar/m4sugar.m4 (m4_set_difference, m4_set_intersection)
(m4_set_union): Use m4_set_map_sep rather than m4_set_foreach.
* doc/autoconf.texi (Set manipulation Macros) <m4_set_map>:
Enhance documentation.
<m4_set_foreach>: Mention faster alternative.
(Looping constructs) <m4_foreach>: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUnify m4_set_foreach and m4_set_map.
Eric Blake [Wed, 5 Nov 2008 18:47:04 +0000 (11:47 -0700)] 
Unify m4_set_foreach and m4_set_map.

* lib/m4sugar/m4sugar.m4 (m4_set_map_sep): New macro, undocumented
for now.
(m4_set_contents, m4_set_foreach, m4_set_list, m4_set_listc)
(m4_set_map): Adjust callers.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse _m4_foreach in more places.
Eric Blake [Wed, 5 Nov 2008 18:12:42 +0000 (11:12 -0700)] 
Use _m4_foreach in more places.

* lib/m4sugar/foreach.m4 (m4_dquote_elt, m4_join, m4_joinall)
(_m4_minmax, m4_set_add_all): Use _m4_foreach instead of
m4_foreach.
* lib/m4sugar/m4sugar.m4 (_m4_joinall): Use m4_map_args_sep
instead of m4_foreach or m4_map_args.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUnify _m4_foreach and _m4_map.
Eric Blake [Wed, 5 Nov 2008 14:15:56 +0000 (07:15 -0700)] 
Unify _m4_foreach and _m4_map.

* lib/m4sugar/m4sugar.m4 (_m4_map): Delete, merged with...
(_m4_foreach): ...this.
(m4_foreach, m4_map, m4_mapall, m4_map_sep, _m4_mapall_sep)
(m4_map_args, m4_map_args_sep): Adjust callers.
* lib/m4sugar/foreach.m4 (_m4_map): Rename...
(_m4_foreach): ...to this, overwriting old definition.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdd m4_map_args_sep, undocumented for now.
Eric Blake [Tue, 4 Nov 2008 00:17:38 +0000 (17:17 -0700)] 
Add m4_map_args_sep, undocumented for now.

* lib/m4sugar/m4sugar.m4 (m4_map_args_sep): New macro.
(_m4_map): Change API to cover more of m4_map*.
* lib/m4sugar/foreach.m4 (_m4_map): Adjust to new API.
(m4_map_args): Delete.
* tests/m4sugar.at (m4@&t@_map_args and m4@&t@_curry): Enhance
test.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove m4_for performance.
Eric Blake [Tue, 4 Nov 2008 19:35:09 +0000 (12:35 -0700)] 
Improve m4_for performance.

* lib/m4sugar/m4sugar.m4 (_m4_for): Alter API to make it easier to
avoid m4_define by some clients.
(m4_for): Adjust caller.
* lib/m4sugar/foreach.m4 (_m4_foreach, m4_case, m4_bmatch)
(_m4_cond, _m4_bpatsubsts, _m4_shiftn, m4_do, m4_reverse)
(_m4_map, m4_map_args, m4_map_args_pair, _m4_list_pad)
(_m4_list_cmp): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdjust expected output.
Eric Blake [Wed, 5 Nov 2008 04:22:16 +0000 (21:22 -0700)] 
Adjust expected output.

* tests/torture.at (Missing templates): Reflect added quoting.
Detected by Bob Proulx's buildbot.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoReject arguments with leading =; test previous patch.
Eric Blake [Wed, 5 Nov 2008 02:13:38 +0000 (19:13 -0700)] 
Reject arguments with leading =; test previous patch.

* tests/base.at (configure arguments): Test this.
Reported by Jeff Squyres.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoReject arguments with leading =.
Eric Blake [Tue, 4 Nov 2008 15:20:00 +0000 (08:20 -0700)] 
Reject arguments with leading =.

* lib/autoconf/general.m4 (_AC_INIT_PARSE_ARGS): Detect case of
missing variable name, with fewer forks.  Quote invalid arguments
in message, in case they include spaces.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS)
(_AC_OUTPUT_MAIN_LOOP): Quote invalid arguments.
* lib/autotest/general.m4 (AT_INIT): Likewise.
Reported by Jeff Squyres.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUpgrade to FDL 1.3.
Eric Blake [Tue, 4 Nov 2008 13:36:20 +0000 (06:36 -0700)] 
Upgrade to FDL 1.3.

* cfg.mk (fetch): Add fdl-1.3.texi.
* .gitattributes: Likewise.
* doc/autoconf.texi (GNU Free Documentation License): Point to new
upstream version.
* doc/Makefile.am (autoconf_TEXINFOS): Likewise.
(standards_TEXINFOS): Mention current dependence on older license.
* doc/fdl-1.3.texi: New upstream file.
* GNUmakefile: Resync from upstream.
* build-aux/announce-gen: Likewise.
* build-aux/texinfo.tex: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoPoint at AM_SUBST_NOTMAKE.
Ralf Wildenhues [Mon, 3 Nov 2008 21:52:43 +0000 (22:52 +0100)] 
Point at AM_SUBST_NOTMAKE.

* doc/autoconf.texi (Setting Output Variables): Add cross
reference to new Automake macro AM_SUBST_NOTMAKE.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>