]> git.ipfire.org Git - thirdparty/autoconf.git/log
thirdparty/autoconf.git
16 years agoAdd AS_FUNCTION_DESCRIBE.
Eric Blake [Fri, 17 Oct 2008 01:59:11 +0000 (19:59 -0600)] 
Add AS_FUNCTION_DESCRIBE.

* lib/m4sugar/m4sh.m4 (AS_FUNCTION_DESCRIBE): New macro.
* lib/autotest/general.m4 (AT_INIT): Use it.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoSpeed up m4_qlen with caching.
Eric Blake [Thu, 16 Oct 2008 16:14:09 +0000 (10:14 -0600)] 
Speed up m4_qlen with caching.

* lib/m4sugar/m4sugar.m4 (_m4_qlen): Renamed from old m4_qlen.
(m4_qlen): Cache results for speed.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdd a testcase using more then one language.
Paolo Bonzini [Thu, 16 Oct 2008 08:41:20 +0000 (10:41 +0200)] 
Add a testcase using more then one language.

* tests/compile.at (Multiple languages): New test.

16 years agoFix Libtool's config.lt test.
Paolo Bonzini [Thu, 16 Oct 2008 06:19:15 +0000 (08:19 +0200)] 
Fix Libtool's config.lt test.

* lib/m4sugar/m4sh.m4 (_AS_PREPARE): Disable AS_REQUIRE while
expanding it.

16 years agoBreak circular require chain in _AS_LINENO_PREPARE.
Eric Blake [Wed, 15 Oct 2008 22:15:52 +0000 (16:15 -0600)] 
Break circular require chain in _AS_LINENO_PREPARE.

* lib/m4sugar/m4sh.m4 (_AS_LINENO_PREPARE): Ensure that logging is
disabled when reporting LINENO failure, since logging requires
LINENO.
* doc/autoconf.texi (Initialization Macros): Recommend m4_pushdef,
not m4_rename, since the latter is undocumented.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Avoid
m4_rename, as it does not yet handle pushdef stacks.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoCleanups to previous patches.
Eric Blake [Wed, 15 Oct 2008 17:22:25 +0000 (11:22 -0600)] 
Cleanups to previous patches.

* doc/autoconf.texi (Portable Shell): Minor edits.
(Limitations of Builtins): Touch up wording.
* lib/m4sugar/m4sh.m4 (AS_LINENO_PUSH): Nuke trailing whitespace.
(_AS_SHELL_SANITIZE): Wrap comments less than 80 columns.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUpdates to shell portability documentation
Paolo Bonzini [Wed, 15 Oct 2008 09:03:35 +0000 (11:03 +0200)] 
Updates to shell portability documentation

* doc/autoconf.texi: Updates all references to "Portable Shell" and
"Limitations of Builtins" to use three-argument commands.
(Programming in M4sh): Document AS_ECHO, AS_ECHO_N, AS_UNSET.
(Portable Shell): Move here discussion about "Where is the POSIX
shell?"  Mention that M4sh provides a SVR2 shell and takes care
of unsetting variables if necessary.  Talk about M4sh and not only
Autoconf-generated scripts.
(Special Shell Variables): Talk about M4sh and not only
Autoconf-generated scripts.  Don't talk about things that Autoconf
does not do.  Mention problems of $LINENO with shell functions.
(Limitations of Builtins).  Mention AS_ECHO and AS_ECHO_N.  Move
discussion of eval bugs before discussion on proper use of eval.
Mention AS_IF.  Reword why not to use "shift N".  Mention "foo=;
unset foo" trick.  Include M4sh code that unsets MAIL for Bash 2.01.
* NEWS: Update list of documented M4sh macros.

16 years agoAssume a (possibly buggy) `unset' is present after a `better shell' was found.
Paolo Bonzini [Tue, 14 Oct 2008 05:16:48 +0000 (07:16 +0200)] 
Assume a (possibly buggy) `unset' is present after a `better shell' was found.

* lib/autoconf/general.m4 (_AC_CACHE_DUMP): Use AS_UNSET.
* lib/autoconf/programs.m4 (AC_PROG_SED): Use AS_UNSET.
* lib/m4sugar/m4sh.m4 (_AS_UNSET_PREPARE): Provide $as_unset as an
alias for AS_UNSET, for backwards compatibility.
(_AS_DETECT_BETTER_SHELL): Set BASH_ENV and ENV to /dev/null in case
the shell does not support unset.
(_AS_SHELL_SANITIZE): Work around Bash 2.01 bugs.  Unset BASH_ENV.
(AS_INIT, _AS_PREPARE, AS_PREPARE): Call it.
(AS_UNSET): Assume it is there but it might fail if the variable is
not set.  Use it throughout instead of $as_unset.

16 years agoTurn AS_SHELL_SANITIZE into a for-Libtool-only wrapper.
Paolo Bonzini [Wed, 15 Oct 2008 09:02:09 +0000 (11:02 +0200)] 
Turn AS_SHELL_SANITIZE into a for-Libtool-only wrapper.

* lib/m4sugar/m4sh.m4 (_AS_DETECT_REQUIRED, _AS_DETECT_SUGGESTED): Remove
m4_require of _AS_DETECT_BETTER_SHELL.
(_AS_CLEANUP): Add it here.
(_AS_DETECT_BETTER_SHELL): Just expand the test instead of appending it
to _AS_CLEANUP.
(_AS_SHELL_SANITIZE): New name of the old AS_SHELL_SANITIZE macro.
(AS_SHELL_SANITIZE): New macro hacking around Libtool misuse.
(AS_PREPARE): Use _AS_SHELL_SANITIZE.
(AS_INIT): Add m4_provide of itself.

16 years agoUse "test x$foo = xyes" to avoid upsetting Libtool's sh.test.
Paolo Bonzini [Wed, 15 Oct 2008 13:59:42 +0000 (15:59 +0200)] 
Use "test x$foo = xyes" to avoid upsetting Libtool's sh.test.

* lib/m4sugar/m4sh.m4 (_AS_DETECT_BETTER_SHELL, _AS_SHELL_FN_WORK): Use
"test x$foo = xyes".

16 years agoTrim down the size of the better-shell test.
Paolo Bonzini [Tue, 14 Oct 2008 09:16:47 +0000 (11:16 +0200)] 
Trim down the size of the better-shell test.

* lib/m4sugar/m4sh.at (_AT_DETECT_BETTER_SHELL): Store the common
snippets into shell variables.
(_AS_RUN): Rewrite.

16 years agoSupport a stack of LINENO values for AS_MESSAGE.
Paolo Bonzini [Mon, 13 Oct 2008 16:23:30 +0000 (18:23 +0200)] 
Support a stack of LINENO values for AS_MESSAGE.

* lib/m4sugar/m4sh.m4 (_AS_ECHO_LOG): If defined, use $as_lineno as
the line number emitted to the log file.
(AS_LINENO_PUSH, AS_LINENO_POP): New.
* tests/m4sh.at (LINENO Stack): New test.

16 years agoCorrect previous patch.
Eric Blake [Tue, 14 Oct 2008 17:52:38 +0000 (11:52 -0600)] 
Correct previous patch.

* doc/autoconf.texi (Shell Functions): Bash obeys Posix, after
all.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoDocument shell function environment pitfall.
Eric Blake [Tue, 14 Oct 2008 17:26:58 +0000 (11:26 -0600)] 
Document shell function environment pitfall.

* doc/autoconf.texi (Shell Functions): Document bugs in bash,
Solaris /bin/sh.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoUse m4_require to implement AS_REQUIRE.
Paolo Bonzini [Sun, 12 Oct 2008 12:20:53 +0000 (14:20 +0200)] 
Use m4_require to implement AS_REQUIRE.

* lib/m4sugar/m4sugar.m4 (_m4_require_call): Accept a third argument.
(m4_require): Pass it.
(m4_divert_require): New.
* lib/m4sugar/m4sh.m4 (AS_REQUIRE): Rewrite using m4_divert_require.
Remove comment about differences with m4_require.
* tests/m4sh.at (AS_REQUIRE_SHELL_FN and m4_require): Update to test
the expected behavior.
(Nested AS_REQUIRE_SHELL_FN): New test.

16 years agoTest AS_LINENO_PREPARE.
Paolo Bonzini [Sun, 12 Oct 2008 14:20:59 +0000 (16:20 +0200)] 
Test AS_LINENO_PREPARE.

* tests/m4sh.at: Use documented AS_LINENO_PREPARE.

16 years agoTest AS_ME_PREPARE.
Paolo Bonzini [Mon, 13 Oct 2008 14:22:26 +0000 (16:22 +0200)] 
Test AS_ME_PREPARE.

* tests/m4sh.at (as_me): New test.

16 years agoAdd and document AS_INIT_GENERATED.
Paolo Bonzini [Fri, 10 Oct 2008 07:02:36 +0000 (09:02 +0200)] 
Add and document AS_INIT_GENERATED.

* lib/m4sugar/m4sh.m4 (AS_INIT_GENERATED): New.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Use it.
* doc/autoconf.texi (Initialization macros): Document it.

16 years agoUse consistent shell function style.
Eric Blake [Mon, 13 Oct 2008 14:50:25 +0000 (08:50 -0600)] 
Use consistent shell function style.

* lib/m4sugar/m4sh.m4 (_AS_PREPARE, AS_REQUIRE_SHELL_FN)
(_AS_SHELL_FN_WORK): Imitate GNU Coding Standards for C
functions.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agocommit missing changelog entry
Paolo Bonzini [Mon, 13 Oct 2008 12:29:06 +0000 (14:29 +0200)] 
commit missing changelog entry

16 years agoplace names of contributors under m4 rather than shell comments
Paolo Bonzini [Mon, 13 Oct 2008 06:40:25 +0000 (08:40 +0200)] 
place names of contributors under m4 rather than shell comments

2008-10-12  Paolo Bonzini  <bonzini@gnu.org>

* lib/m4sugar/m4sh.m4 (_AS_LINENO_PREPARE): Place names of
contributors under m4 rather than shell comments.

16 years agoAdd and document AS_ME_PREPARE and AS_LINENO_PREPARE
Paolo Bonzini [Fri, 10 Oct 2008 06:40:52 +0000 (08:40 +0200)] 
Add and document AS_ME_PREPARE and AS_LINENO_PREPARE

2008-10-10  Paolo Bonzini  <bonzini@gnu.org>

* lib/m4sugar/m4sh.m4 (AS_ME_PREPARE, AS_LINENO_PREPARE): New.
* doc/autoconf.texi (Initialization macros): Document them.
(Portable Shell): Refer to AS_LINENO_PREPARE.

* bin/autoconf.as: Invoke AS_ME_PREPARE.
* lib/autotest/general.m4: Likewise.

16 years agoextract "Programming in M4sh" into its own chapter
Paolo Bonzini [Fri, 10 Oct 2008 06:33:04 +0000 (08:33 +0200)] 
extract "Programming in M4sh" into its own chapter

2008-10-10  Paolo Bonzini  <bonzini@gnu.org>

* doc/autoconf.texi (Programming in M4sh): Make its own chapter.

16 years agoFix _AS_MKDIR_P usage.
Eric Blake [Fri, 10 Oct 2008 14:40:09 +0000 (08:40 -0600)] 
Fix _AS_MKDIR_P usage.

* lib/m4sugar/m4sh.m4 (_AS_MKDIR_P): Correct documentation to
match implementation.
(_AS_PREPARE, _AS_MKDIR_P_PREPARE): Adjust callers.
* doc/autoconf.texi (Programming in M4sh) <AS_MKDIR_P>: Tweak
wording to better match behavior.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agodon't advertise shell function adversely
Paolo Bonzini [Thu, 18 Sep 2008 14:51:50 +0000 (16:51 +0200)] 
don't advertise shell function adversely

2008-10-08  Paolo Bonzini  <bonzini@gnu.org>

* doc/autoconf.texi: Be less wary of shell functions.

16 years agouse a shell function for AS_MKDIR_P
Paolo Bonzini [Fri, 10 Oct 2008 06:20:33 +0000 (08:20 +0200)] 
use a shell function for AS_MKDIR_P

2008-10-10  Paolo Bonzini  <bonzini@gnu.org>

* m4sugar/m4sh.m4 (_AS_MKDIR_P): New, from AS_MKDIR_P.  Adjust
meaning of as_mkdir_p to be `false' or a full `mkdir -p' command.
(AS_MKDIR_P): Just dispatch to as_func_mkdir_p.
(_AS_PREPARE): Define shell functions.
(_AS_MKDIR_P_PREPARE): Set as_mkdir_p according to the above change.
Define shell functions.

16 years agoOnly prepare $as_me if it will be used.
Eric Blake [Thu, 9 Oct 2008 16:58:11 +0000 (10:58 -0600)] 
Only prepare $as_me if it will be used.

* lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Avoid unconditional
preparation.
(_AS_ECHO_LOG): Depend on $LINENO preparation.
(AS_MESSAGE): Depend on $as_me preparation.
(AS_TMPDIR): Use AS_ERROR, rather than a hand-rolled copy.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agomore cleanup before adding shell functions
Paolo Bonzini [Thu, 9 Oct 2008 13:13:10 +0000 (15:13 +0200)] 
more cleanup before adding shell functions

2008-10-09  Paolo Bonzini  <bonzini@gnu.org>

* m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Delay setting as_me
until the M4SH-INIT diversion using _AS_ME_PREPARE.
(_AS_PREPARE): Invoke _AS_EXPR_PREPARE before _AS_BASENAME_PREPARE
and _AS_DIRNAME_PREPARE, and _AS_BASENAME_PREPARE and _AS_ME_PREPARE
before _AS_LINENO_PREPARE.
(AS_PREPARE): Include all the AS_REQUIREs manually.
(_AS_ME_PREPARE): New.
(_AS_LINENO_PREPARE): Use m4_defun.

16 years agoavoid problems when _AS_BASENAME_EXPR are invoked before _AS_EXPR_PREPARE
Paolo Bonzini [Thu, 9 Oct 2008 13:28:06 +0000 (15:28 +0200)] 
avoid problems when _AS_BASENAME_EXPR are invoked before _AS_EXPR_PREPARE

2008-10-09  Paolo Bonzini  <bonzini@gnu.org>

* m4sugar/m4sh.m4 (_AS_BASENAME_EXPR, _AS_DIRNAME_EXPR): Do not
require _AS_EXPR_PREPARE.
(_AS_BASENAME_PREPARE, _AS_DIRNAME_PREPARE): Do it here.
(_AS_PREPARE): Add _AS_BASENAME_PREPARE.

16 years agoResync from gnulib.
Eric Blake [Wed, 8 Oct 2008 15:33:48 +0000 (09:33 -0600)] 
Resync from gnulib.

* cfg.mk (cvs_executable_files, cvs_files): Rewrite...
(fetch): ...into new target.
(executable-update): Delete, now that it is unused.
* maint.mk (update, local_updates, cvs_files, gnulib_repo)
(wget-update, cvs-update): Likewise.
* HACKING (Update the foreign files): Document new procedure.
* GNUmakefile: Resync from upstream, via new 'make fetch'.
* build-aux/config.guess: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoremove shell function "spy"
Paolo Bonzini [Thu, 18 Sep 2008 12:14:45 +0000 (14:14 +0200)] 
remove shell function "spy"

16 years agoplace _AS_UNSET_PREPARE in the right diversion
Paolo Bonzini [Thu, 18 Sep 2008 12:14:11 +0000 (14:14 +0200)] 
place _AS_UNSET_PREPARE in the right diversion

16 years agoAvoid repeating required shell tests in suggested set.
Eric Blake [Wed, 8 Oct 2008 02:41:13 +0000 (20:41 -0600)] 
Avoid repeating required shell tests in suggested set.

* lib/m4sugar/m4sh.m4 (_AS_DETECT_REQUIRED, _AS_DETECT_SUGGESTED):
Use m4_set, rather than m4_expand_once/m4_append.
(_AS_DETECT_SUGGESTED): Adjust to new storage layout, and filter
required tests out of suggested tests.
Reported by Paolo Bonzini.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoadd m4sh keyword to all m4sh.at tests
Paolo Bonzini [Wed, 8 Oct 2008 09:11:33 +0000 (11:11 +0200)] 
add m4sh keyword to all m4sh.at tests

2008-10-08  Paolo Bonzini  <bonzini@gnu.org>

Add m4sh keyword to all m4sh.at tests.
* tests/m4sh.at: Add m4sh keyword to all tests.  Fix comment
pastos.

16 years agoDocument AS_VERSION_COMPARE.
Ralf Wildenhues [Wed, 8 Oct 2008 05:38:54 +0000 (07:38 +0200)] 
Document AS_VERSION_COMPARE.

* doc/autoconf.texi (Programming in M4sh): Document
AS_VERSION_COMPARE.
* NEWS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoDo not write to testsuite log fd before initialization.
Ralf Wildenhues [Wed, 8 Oct 2008 05:24:06 +0000 (07:24 +0200)] 
Do not write to testsuite log fd before initialization.

* lib/autotest/general.m4 (AS_MESSAGE_LOG_FD, AT_JOB_FIFO_FD):
Define fds only when initializing the log fd so early error
messages do not try to write to it.
* tests/autotest.at (Startup error messages): New test.
* NEWS: Document this 2.63 regression.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoEnsure _AS_CLEANUP is defined.
Eric Blake [Tue, 7 Oct 2008 18:00:02 +0000 (12:00 -0600)] 
Ensure _AS_CLEANUP is defined.

* lib/m4sugar/m4sh.m4 (_AS_CLEANUP): Give initial definition.
* tests/m4sh.at (AS@&t@_INIT cleanup): Expose the need for this.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove m4sh maintainability.
Eric Blake [Tue, 7 Oct 2008 16:55:05 +0000 (10:55 -0600)] 
Improve m4sh maintainability.

* lib/m4sugar/m4sh.m4: Sort macros for sanitizing the shell; no
code change.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix m4 quoting in previous patch.
Eric Blake [Tue, 7 Oct 2008 12:14:34 +0000 (06:14 -0600)] 
Fix m4 quoting in previous patch.

* lib/m4sugar/m4sh.m4 (AS_REQUIRE_SHELL_FN): Determine diversion
name prior to invoking AS_REQUIRE.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoadd a separate diversion for shell functions
Paolo Bonzini [Thu, 18 Sep 2008 12:12:46 +0000 (14:12 +0200)] 
add a separate diversion for shell functions

* lib/m4sugar/m4sh.m4 (M4SH-INIT-FN): New diversion.
(AS_REQUIRE): Accept diversion parameter.
(AS_REQUIRE_SHELL_FN): Use it.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdd m4_default_quoted.
Eric Blake [Tue, 23 Sep 2008 12:57:15 +0000 (06:57 -0600)] 
Add m4_default_quoted.

* lib/m4sugar/m4sugar.m4 (m4_default_quoted): New macro.
(m4_for, m4_expand_once, m4_text_wrap, m4_text_box): Use it.
* doc/autoconf.texi (Conditional constructs): Document it.
* NEWS: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix build with case-insensitive make, again.
Eric Blake [Tue, 7 Oct 2008 02:06:00 +0000 (20:06 -0600)] 
Fix build with case-insensitive make, again.

* Makefile.am (pkgdata_DATA): Protect by MAKE_CASE_SENSITIVE.
Reported via Keith Marshall, originally by newthinker in
<http://thread.gmane.org/gmane.comp.gnu.mingw.user/27725>.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoWarn about /usr/ucb on Solaris.
Bruno Haible [Mon, 6 Oct 2008 19:48:28 +0000 (21:48 +0200)] 
Warn about /usr/ucb on Solaris.

* doc/install.texi (Particular Systems): Recommend putting
/usr/ucb late in PATH, if at all.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoFix more testsuite hang corner cases.
Ralf Wildenhues [Fri, 3 Oct 2008 05:14:24 +0000 (07:14 +0200)] 
Fix more testsuite hang corner cases.

* lib/autotest/general.m4: Use the serial code path if no test
is to be run.
* tests/autotest.at (parallel test execution): Test -j and -jN
with `-k notmatched'.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoFix hang with `testsuite -k notmatched'.
Ralf Wildenhues [Thu, 2 Oct 2008 18:44:22 +0000 (20:44 +0200)] 
Fix hang with `testsuite -k notmatched'.

* lib/autotest/general.m4: Do not reset $at_jobs if it is equal
to one.  Fixes hang with `-k notmatched'.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoDocument more binary file portability traps.
Eric Blake [Thu, 2 Oct 2008 15:02:37 +0000 (09:02 -0600)] 
Document more binary file portability traps.

* doc/autoconf.texi (Limitations of Usual Tools) <sed>: Remind
reader that NUL and sed don't always mix.
<tr>: Mention Solaris /usr/ucb/tr bug with \0.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoChangeLog for previous commit.
Eric Blake [Thu, 2 Oct 2008 14:59:37 +0000 (08:59 -0600)] 
ChangeLog for previous commit.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImplement parallel Autotest test execution: testsuite --jobs.
Ralf Wildenhues [Thu, 2 Oct 2008 05:48:51 +0000 (07:48 +0200)] 
Implement parallel Autotest test execution: testsuite --jobs.

* lib/autotest/general.m4 (AT_JOB_FIFO_FD): New macro.
(AT_INIT): <at_jobs>: New variable.
Accept -j, -jN, --jobs[=N], document them in --help output.
Implement parallel driver loop using a FIFO, enabled with --jobs
and if mkfifo works; otherwise, fall back to sequential loop.
(AT_SETUP): Store, do not output summary progress line if
parallel.
* tests/autotest.at (parallel test execution, parallel truth)
(parallel fallacy, parallel skip): New tests.
* doc/autoconf.texi (testsuite Invocation): Document -j, --jobs,
the mkfifo requirement, and that --errexit may cause concurrent
jobs to finish.
* NEWS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoFix sample isinf definition.
Eric Blake [Sat, 20 Sep 2008 22:19:40 +0000 (16:19 -0600)] 
Fix sample isinf definition.

* doc/autoconf.texi (Function Portability) <isinf>: Filter out NaN
first.
* THANKS: Update.
Reported by David Cournapeau.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix Erlang regression, introduced 2006-11-17.
Eric Blake [Tue, 16 Sep 2008 12:37:51 +0000 (06:37 -0600)] 
Fix Erlang regression, introduced 2006-11-17.

* lib/autoconf/erlang.m4 (AC_LANG(Erlang)): Avoid M4 comment
caused by underquoting.
* NEWS: Mention this fix.
* THANKS: Update.
Reported by BJ Terry.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove AC_CONFIG_AUX_DIRS a bit.
Ralf Wildenhues [Sat, 13 Sep 2008 13:19:25 +0000 (15:19 +0200)] 
Improve AC_CONFIG_AUX_DIRS a bit.

* lib/autoconf/general.m4 (AC_CONFIG_AUX_DIRS): Improve a bit.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoMention Solaris sh ':' redirection bug.
Ralf Wildenhues [Sat, 13 Sep 2008 13:17:54 +0000 (15:17 +0200)] 
Mention Solaris sh ':' redirection bug.

* doc/autoconf.texi (File Descriptors): Redirecting ':'
in a loop causes bogus optimization with Solaris sh.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoAvoid testsuite bug when autom4te cache is disabled by user.
Eric Blake [Thu, 11 Sep 2008 02:06:05 +0000 (20:06 -0600)] 
Avoid testsuite bug when autom4te cache is disabled by user.

* tests/tools.at (autoconf: forbidden tokens, basic): Enable
cache, even if user normally disabled it.
Reported by Bruno Haible.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAvoid testsuite bug in presence of verbose config.site.
Eric Blake [Wed, 10 Sep 2008 20:06:33 +0000 (14:06 -0600)] 
Avoid testsuite bug in presence of verbose config.site.

* tests/base.at (Input/Output): Nullify config.site during test.
Reported by Bob Friesenhahn.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years ago./.prev-version: Record previous version: 2.63.
Eric Blake [Wed, 10 Sep 2008 01:01:46 +0000 (19:01 -0600)] 
./.prev-version: Record previous version: 2.63.

16 years agoRelease Version 2.63. v2.63
Eric Blake [Mon, 8 Sep 2008 12:21:10 +0000 (06:21 -0600)] 
Release Version 2.63.

* NEWS: Mention the release.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFormatting tweaks to the manual.
Eric Blake [Sat, 6 Sep 2008 22:19:55 +0000 (16:19 -0600)] 
Formatting tweaks to the manual.

* doc/autoconf.texi (Introduction, Systemology)
(File System Conventions, Portable C and C++)
(Floating Point Portability): Allow URLs to split as needed.
(Indices): Add entries, to work around texinfo bug on indices that
start too close to a page break.
(Particular Functions): Mention ftello.
(Introduction, Language Choice): Use @enddots at sentence end.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoResync from gnulib.
Eric Blake [Tue, 2 Sep 2008 12:53:38 +0000 (06:53 -0600)] 
Resync from gnulib.

* cfg.mk (cvs_executable_files, cvs_files): Update list of files,
although for now, they are still manually sync'd.
* build-aux/gnupload: Update.
* build-aux/config.sub: Likewise.
* GNUmakefile: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoMention that Automake already supports VPATH.
Eric Blake [Sat, 6 Sep 2008 20:05:09 +0000 (14:05 -0600)] 
Mention that Automake already supports VPATH.

* doc/autoconf.texi (Build Directories): Details in this section
only apply to users avoiding automake.
* THANKS: Update.
Reported by Matej Tyc.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoRelax tone when warning about cross-compiler names.
Eric Blake [Sat, 6 Sep 2008 19:20:58 +0000 (13:20 -0600)] 
Relax tone when warning about cross-compiler names.

* lib/autoconf/programs.m4 (_AC_TOOL_WARN): Support cross-compiles
with poorly named tools; the issue has been reported too many
times in the last four years to pull support.
* doc/autoconf.texi (Specifying Names, Generic Programs): Update
documentation accordingly.
* THANKS: Update.
Reported by Josef Tran and others, wording suggested by Ralf
Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove AC_C_BIGENDIAN.
Eric Blake [Tue, 2 Sep 2008 01:36:23 +0000 (19:36 -0600)] 
Improve AC_C_BIGENDIAN.

* doc/autoconf.texi (C Compiler) <AC_C_BIGENDIAN>: Mention that
universal builds require a config header.
* lib/autoconf/c.m4 (AC_C_BIGENDIAN): Enhance comments.  Check
AH_HEADER at the last possible moment, so that users can use
AC_CONFIG_HEADER after this macro.
Reported by Stepan Kasal.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix manual date information.
Eric Blake [Mon, 1 Sep 2008 12:27:14 +0000 (06:27 -0600)] 
Fix manual date information.

* doc/autoconf.tex: UPDATED refers to the day the manual was
built, not the release date of Autoconf.
Based on a bison patch by Akim Demaille.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix off-by-one bug in _m4_shiftn.
Eric Blake [Thu, 28 Aug 2008 02:30:25 +0000 (20:30 -0600)] 
Fix off-by-one bug in _m4_shiftn.

* lib/m4sugar/foreach.m4 (_m4_shiftn): Handle case when shifting
all arguments.
* tests/m4sugar.at (M4 loops): Test it.
Reported by Akim Demaille.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImprove INSTALL formatting.
Eric Blake [Tue, 26 Aug 2008 21:29:17 +0000 (15:29 -0600)] 
Improve INSTALL formatting.

* doc/install.texi [!autoconf]: Ensure first paragraphs are
indented like all others in a plain text rendering.
* Makefile.am ($(srcdir)/INSTALL): Ensure plaintext formatting.
Reported by Bruno Haible.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoCheck for case sensitive make.
Stepan Kasal [Thu, 22 May 2008 15:52:28 +0000 (17:52 +0200)] 
Check for case sensitive make.

* m4/make-check.m4 (AC_PROG_MAKE_CASE_SENSITIVE): New macro,...
* configure.ac: ... called here.
* Makefile.am ($(abs_srcdir)/INSTALL, INSTALL): Return to...
($(srcdir)/INSTALL): ...this, but enclose the rule in
"if MAKE_CASE_SENSITIVE".

Signed-off-by: Stepan Kasal <skasal@redhat.com>
16 years agoUpdate invocation documentation.
Eric Blake [Tue, 26 Aug 2008 15:28:15 +0000 (09:28 -0600)] 
Update invocation documentation.

* doc/autoconf.texi (autoscan Invocation): Mention --debug.
(autoreconf Invocation): Mention -v.
(autom4te Invocation): Tie --freeze to -F, not -f.
(autoupdate Invocation): Mention --prepend-include.
* doc/install.texi (configure Invocation): Mention --help=short,
--help=recursive, -n/--no-create, --prefix.  Avoid TABs.
* bin/autoscan.in ($help): Omit space before `...'.
* bin/ifnames.in ($help): Likewise.
* bin/autoconf.as (Usage): Likewise.
* bin/autoreconf.in ($help): Likewise.
* bin/autoheader.in ($help): Likewise.
* bin/autom4te.in ($help): Likewise.
* bin/autoupdate.in ($help): Likewise.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Use
`[OPTION]...', rather than `[OPTIONS]'.  Mention --silent.  Indent
--file correctly.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoDon't let frozen __m4_version__ break downgrade to m4 1.4.x.
Eric Blake [Tue, 26 Aug 2008 15:07:01 +0000 (09:07 -0600)] 
Don't let frozen __m4_version__ break downgrade to m4 1.4.x.

* bin/autom4te.in: Adjust comments, now that we rely on 1.4.5+.
(files_to_options): Avoid inheriting __m4_version__ from frozen
file if current M4 does not support it.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdjust to recent m4 1.6 change to support m4_debugmode(d).
Eric Blake [Mon, 25 Aug 2008 22:26:27 +0000 (16:26 -0600)] 
Adjust to recent m4 1.6 change to support m4_debugmode(d).

* lib/m4sugar/m4sugar.m4 (m4_defn, m4_popdef, m4_undefine): Move
freeze-time decision of using faster 1.6 implementation...
(m4_init): ...to a runtime decision, and add use of new debugmode
flag.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoLimit AC_C_BIGENDIAN univeral checks to Mac OS X.
Peter O'Gorman [Fri, 22 Aug 2008 16:18:25 +0000 (18:18 +0200)] 
Limit AC_C_BIGENDIAN univeral checks to Mac OS X.

* lib/autoconf/c.m4 (AC_C_BIGENDIAN): Limit the check to
__APPLE_CC__ with possible -arch flags.
* NEWS: Document it.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years ago* NEWS: Fix typo.
Ralf Wildenhues [Fri, 22 Aug 2008 14:15:13 +0000 (16:15 +0200)] 
* NEWS: Fix typo.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years ago* TODO: Add an item for additional m4sugar looping constructs.
Eric Blake [Fri, 22 Aug 2008 14:31:03 +0000 (08:31 -0600)] 
* TODO: Add an item for additional m4sugar looping constructs.

Suggested by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAdd reminder to keep dual implementations in sync.
Eric Blake [Fri, 22 Aug 2008 13:26:33 +0000 (07:26 -0600)] 
Add reminder to keep dual implementations in sync.

* lib/m4sugar/m4sugar.m4: Add comments.
* lib/m4sugar/foreach.m4: Likewise.
Suggested by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFormat warning and error messages to match GCS.
Peter Eisentraut [Fri, 22 Aug 2008 06:51:53 +0000 (08:51 +0200)] 
Format warning and error messages to match GCS.

* lib/autoconf/general.m4 (_AC_INIT_DIRCHECK)
(_AC_INIT_PARSE_ARGS, _AC_CACHE_DUMP): Start warning and error
messages with a lowercase letter, end them without punctuation.
* lib/autoconf/lang.m4 (AC_NO_EXECUTABLES): Likewise.
* lib/autoconf/libs.m4 (AC_PATH_X): Likewise.
* lib/autoconf/status.m4 (AC_OUTPUT, _AC_OUTPUT_MAIN_LOOP):
Likewise.
* tests/fortran.at (GNU Fortran): Likewise.
* tests/torture.at (Deep Package): Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoAvoid extra side effects in m4sugar list expansion.
Eric Blake [Fri, 22 Aug 2008 04:17:33 +0000 (22:17 -0600)] 
Avoid extra side effects in m4sugar list expansion.

* lib/m4sugar/m4sugar.m4 (m4_mapall_sep, m4_list_cmp): Wrap
around...
(_m4_mapall_sep, _m4_list_cmp_raw): ...new helpers, to avoid
duplicate side effects.
(m4_version_compare): Adjust caller.
* lib/m4sugar/foreach.m4 (m4_list_cmp): Rename...
(_m4_list_cmp_raw): ...to match m4sugar.
* doc/autoconf.texi (Looping constructs): Document the behavior of
side effects.
* tests/m4sugar.at (M4 loops, m4@&t@_map, m4@&t@_version_compare):
Ensure only one side effect.
(recursion): Fix test typo.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years ago* TODO: Add item for compiler default flags.
Ralf Wildenhues [Thu, 21 Aug 2008 20:40:17 +0000 (22:40 +0200)] 
* TODO: Add item for compiler default flags.

Suggested by Bruno Haible.

16 years ago* tests/m4sh.at (AS_IF and AS_CASE): Set the expansion limit back to 1000.
Ralf Wildenhues [Thu, 21 Aug 2008 15:55:16 +0000 (17:55 +0200)] 
* tests/m4sh.at (AS_IF and AS_CASE): Set the expansion limit back to 1000.

16 years agoFormatting improvements.
Eric Blake [Wed, 9 Apr 2008 18:14:06 +0000 (12:14 -0600)] 
Formatting improvements.

* doc/autoconf.texi: Use @file and @command, rather than @code,
where appropriate.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoDocument another make bug.
Eric Blake [Thu, 21 Aug 2008 15:32:21 +0000 (09:32 -0600)] 
Document another make bug.

* doc/autoconf.texi (The Make Macro SHELL): Mention bug in BSD
make, GNU make <= 3.80.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoTweak wording about SHELL in Makefile.
Eric Blake [Wed, 9 Apr 2008 18:09:45 +0000 (12:09 -0600)] 
Tweak wording about SHELL in Makefile.

* doc/autoconf.texi (The Make Macro SHELL): Stronger wording on
the importance of proper SHELL settings.
Reported by Bruno Haible, in
http://lists.gnu.org/archive/html/bug-libtool/2008-04/msg00029.html.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAvoid timestamp races for updated input.
Ralf Wildenhues [Wed, 20 Aug 2008 19:10:17 +0000 (21:10 +0200)] 
Avoid timestamp races for updated input.

* tests/m4sh.at (AS_IF and AS_CASE): Use `autom4te --force' for
second script.  Set the expansion limit back to 1000.
* tests/tools.at (autotools and whitespace in file names): Add
--force for repeated invocations.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoAdd section to INSTALL about particular systems.
Bruno Haible [Wed, 20 Aug 2008 13:26:30 +0000 (07:26 -0600)] 
Add section to INSTALL about particular systems.

* doc/install.texi (Particular systems): New node.
* doc/autoconf.texi: Adjust menus.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoMention universal binaries in INSTALL.
Bruno Haible [Wed, 20 Aug 2008 04:16:40 +0000 (22:16 -0600)] 
Mention universal binaries in INSTALL.

* doc/install.texi (Compiling For Multiple Architectures): Explain
how to create universal binaries on MacOS X.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoAvoid shell parse errors after interrupt due to empty ``.
Jim Meyering [Tue, 19 Aug 2008 21:00:09 +0000 (23:00 +0200)] 
Avoid shell parse errors after interrupt due to empty ``.

* doc/autoconf.texi (Shell Substitutions): Document the issue.
* lib/m4sugar/m4sh.m4 (AS_VAR_IF): New function.
* lib/autoconf/functions.m4 (AC_CHECK_FUNC): Use it in place of
"test AS_VAR_GET([...]) = yes"
* lib/autoconf/general.m4 (AC_CHECK_FILE, AC_CHECK_DECL): Likewise.
* lib/autoconf/headers.m4 (_AC_CHECK_HEADER_MONGREL): Likewise.
(_AC_CHECK_HEADER_NEW, _AC_CHECK_HEADER_OLD): Likewise.
(_AC_CHECK_HEADER_DIRENT): Likewise.
* lib/autoconf/libs.m4 (AC_CHECK_LIB): Likewise.
* lib/autoconf/types.m4 (_AC_CHECK_TYPE_NEW, AC_CHECK_MEMBER): Likewise.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): Use
temporary variable to work around the issue.
* tests/foreign.at (Libtool): Quote result of command
substitution.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16 years agoTest m4_transform without tickling shell bugs.
Eric Blake [Tue, 19 Aug 2008 04:20:37 +0000 (22:20 -0600)] 
Test m4_transform without tickling shell bugs.

* tests/m4sh.at (AS@&t@_IF and AS@&t@_CASE): Relax test to
something more manageable.
* tests/m4sugar.at (recursion): Move stress test of
m4_transform_pair here.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoLet 'git diff' give better context for doc updates.
Eric Blake [Mon, 18 Aug 2008 12:25:49 +0000 (06:25 -0600)] 
Let 'git diff' give better context for doc updates.

* .gitattributes (*.texi*): Add new entry.
* README-hacking: Mention how to use it.
Inspired by a coreutils patch by Jim Meyering.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix m4_map regression from 2007-10-16.
Eric Blake [Fri, 15 Aug 2008 13:06:39 +0000 (07:06 -0600)] 
Fix m4_map regression from 2007-10-16.

* lib/m4sugar/m4sugar.m4 (_m4_apply): New macro.
(m4_map): Ignore empty sublists.  For a list consisting of only an
empty sublist, this restores 2.61 behavior of being a no-op.
(m4_map_sep): Likewise, and expand separator.
(m4_mapall, m4_mapall_sep): New macros, to regain 2.62 behavior.
(_m4_map): Rewrite, to be common base for all four variants.
* lib/m4sugar/foreach.m4 (_m4_map): Adjust to new prototype.
* tests/m4sugar.at (m4@&t@_map): Add tests.
* doc/autoconf.texi (Looping constructs) <m4_map>: Document new
macros, and mention ramifications of expanded separator.
* NEWS: Mention the change.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoImplement m4_transform_pair, to speed up AS_IF.
Eric Blake [Wed, 13 Aug 2008 15:12:28 +0000 (09:12 -0600)] 
Implement m4_transform_pair, to speed up AS_IF.

* lib/m4sugar/m4sugar.m4 (m4_transform, m4_transform_pair): New
macros, undocumented for now.
* lib/m4sugar/foreach.m4 (m4_transform, m4_transform_pair): Also
the m4 1.4.x counterparts.
* lib/m4sugar/m4sh.m4 (AS_IF, AS_CASE): Use it.
* tests/m4sh.at (AS@&t@_IF and AS@&t@_CASE): Test it.

Signed-off-by: Eric Blake <ebb9@byu.net>
16 years agoFix AC_*_TARGET_TOOL macros.
Ralf Wildenhues [Thu, 14 Aug 2008 21:29:23 +0000 (23:29 +0200)] 
Fix AC_*_TARGET_TOOL macros.

* lib/autoconf/programs.m4 (AC_PATH_TARGET_TOOL)
(AC_CHECK_TARGET_TOOL, AC_CHECK_TARGET_TOOLS): Require, do not
warn about previous AC_CANONICAL_TARGET.
(AC_CHECK_TARGET_TOOL): Add missing `$' making the macro
unusable in the non-cross-compiling case.
* NEWS, THANKS: Update.
Report by Dave Erickson.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17 years agoOptimize m4_bmatch.
Eric Blake [Tue, 12 Aug 2008 21:23:56 +0000 (15:23 -0600)] 
Optimize m4_bmatch.

* lib/m4sugar/foreach.m4 (m4_bmatch): Provide linear
implementation for m4 1.4.x.
* tests/m4sugar.at (m4@&t@_bmatch): New test.
(recursion): Test the linear nature.
* NEWS: Document the fix.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoFix m4_cond corner case.
Eric Blake [Tue, 12 Aug 2008 15:18:53 +0000 (09:18 -0600)] 
Fix m4_cond corner case.

* lib/m4sugar/foreach.m4 (_m4_cond): Ensure alternate
implementation allows concatenation with subsequent text.
* tests/m4sugar.at (m4@&t@_cond): Enhance test.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoAdd test for m4_cond.
Eric Blake [Tue, 12 Aug 2008 12:32:23 +0000 (06:32 -0600)] 
Add test for m4_cond.

* tests/m4sugar.at (m4@&t@_cond): New test.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoFix autoheader 2.62 regression on AC_DEFINE([__EXTENSIONS__]).
Eric Blake [Mon, 4 Aug 2008 12:56:53 +0000 (06:56 -0600)] 
Fix autoheader 2.62 regression on AC_DEFINE([__EXTENSIONS__]).

* lib/autoconf/specific.m4 (AC_USE_SYSTEM_EXTENSIONS): Use a
unique key for the AH_VERBATIM.
* tests/c.at (AC_USE_SYSTEM_EXTENSIONS): New test.
* NEWS: Mention the fix.
Reported by Andreas Schwab, analyzed by Stepan Kasal.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoAdd linear m4_cond for m4 1.4.x.
Eric Blake [Wed, 30 Jul 2008 22:44:03 +0000 (16:44 -0600)] 
Add linear m4_cond for m4 1.4.x.

* lib/m4sugar/m4sugar.m4 (m4_cond): Split into...
(_m4_cond): ...this, for fewer macros per iteration.
* lib/m4sugar/foreach.m4 (_m4_cond): New implementation.
* tests/m4sugar.at (recursion): Test it.
* NEWS: Document the linear guarantee.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoSpeed up diversion handling.
Eric Blake [Wed, 30 Jul 2008 20:45:42 +0000 (14:45 -0600)] 
Speed up diversion handling.

* lib/m4sugar/m4sugar.m4 (m4_divert, m4_divert_push)
(m4_divert_pop, m4_divert_text): Avoid dnl for fewer macro
expansions.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoAC_C_CHAR_UNSIGNED is not strictly necessary.
Eric Blake [Wed, 6 Aug 2008 15:24:09 +0000 (09:24 -0600)] 
AC_C_CHAR_UNSIGNED is not strictly necessary.

* doc/autoconf.texi (C Compiler) <AC_C_CHAR_UNSIGNED>: Mention a
portable alternative to this macro.
* THANKS: Update.
Reported by Hallvard B Furuseth.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoUpdate some files from upstream.
Eric Blake [Wed, 6 Aug 2008 14:22:14 +0000 (08:22 -0600)] 
Update some files from upstream.

* GNUmakefile: Update.
* build-aux/announce-gen: Likewise.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* build-aux/git-version-gen: Likewise.
* build-aux/texinfo.tex: Likewise.
* build-aux/vc-list-files: Likewise.
* doc/make-stds.texi: Likewise.
* doc/standards.texi: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoFix AC_CONFIG_FILES([$var]) 2.62 regression.
Ralf Wildenhues [Mon, 4 Aug 2008 06:02:53 +0000 (08:02 +0200)] 
Fix AC_CONFIG_FILES([$var]) 2.62 regression.

* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Flatten
whitespace in $ac_config_files and $ac_config_headers.
* tests/torture.at (Parameterized AC_CONFIG_FILES): New test.
Report by Andreas Schwab and Per Ã˜yvind Karlsen.
* THANKS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17 years agoFix bugs in previous version of m4_bpatsubsts.
Eric Blake [Wed, 30 Jul 2008 15:45:21 +0000 (09:45 -0600)] 
Fix bugs in previous version of m4_bpatsubsts.

* lib/m4sugar/foreach.m4 (_m4_bpatsubsts): Don't expand $1, and
allow concatenation with subsequent text.
* tests/m4sugar.at (m4@&t@_bpatsubsts): Enhance test.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoAdd linear m4_bpatsubsts for m4 1.4.x.
Eric Blake [Wed, 30 Jul 2008 02:34:06 +0000 (20:34 -0600)] 
Add linear m4_bpatsubsts for m4 1.4.x.

* lib/m4sugar/m4sugar.m4 (m4_bpatsubsts): Match documentation
about anchors, even for only one substitution.
* lib/m4sugar/foreach.m4 (_m4_bpatsubsts): New implementation.
* doc/autoconf.texi (Conditional constructs) <m4_bpatsubsts>:
Clarify behavior with regard to quoting.
* tests/m4sugar.at (recursion): Test scaling of m4_bpatsubsts.
(m4@&t@_bpatsubsts): New test.
* NEWS: Document the linear guarantee.

Signed-off-by: Eric Blake <ebb9@byu.net>
17 years agoTweak m4_do semantics.
Eric Blake [Tue, 29 Jul 2008 20:17:03 +0000 (14:17 -0600)] 
Tweak m4_do semantics.

* lib/m4sugar/m4sugar.m4 (m4_do): Don't concat final argument with
subsequent text.
* lib/m4sugar/foreach.m4 (m4_do): Don't concat intermediate
arguments, and avoid infinite loop.
* doc/autoconf.texi (Evaluation Macros) <m4_do>: Document the
behavior.
* tests/m4sugar.at (m4@&t@_do): New test.

Signed-off-by: Eric Blake <ebb9@byu.net>