* tests/local.at (AT_CHECK_M4SUGAR): Add `m4sugar' to keywords.
(AT_CHECK_ENV): Ignore LTLIBOBJS, FC variables, EGREP, FGREP, and SED.
* tests/m4sugar.at (AT_CHECK_M4SUGAR_TEXT, AT_CHECK_M4RE): New macros.
(Standard regular expressions): New test.
(m4_warn, m4_require: circular dependencies, m4_text_wrap): Strip
excess test name quoting.
* tests/semantics.at (AC_CHECK_HEADERS_OLD, AC_CHECK_HEADERS_NEW): Pass
CPPFLAGS to `configure' instead of setting it in `configure'.
Update the long comment explaining it.
m4_require no longer writes an ``is required by'' line to the
execution stack. It contains only one bit of non-redundant
information: that the macro was required, not called. And even
this bit is useless in most situations: have you ever met a macro
which both calls and requires the same macro?
* lib/m4sugar/m4sugar.m4 (_m4_defun_pro): Don't push a diversion...
(_m4_defun_pro_outer): ... only via this macro, for the outermost
macro.
(_m4_defun_epi, _m4_defun_epi_outer): Complementarily.
(m4_expansion_stack_pop): Remove the misplaced comment.
(m4_require): Don't put the ``is required by'' line to the
execution stack; slightly improve the out-of-a-defun error message.
(_m4_divert_grow): New macro, counter for the temporary diversions.
(_m4_require_call): Use it.
* tests/m4sugar.at (m4_require): Expect output without the
``is required by'' messages.
* lib/m4sugar/m4sh.m4 (AS_TMPDIR): Fix the comment, as traps are
no longer part of the macro, quote the occurrence of ``$tmp''.
* doc/autoconf.texi (Forbidden Patterns): Typo.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): ... here;
give only 4-letter prefix to AS_TMPDIR, comment fixed.
* lib/autoconf/programs.m4 (_AC_PATH_PROG_FEATURE_CHECK): Don't
create the temporary directory.
(_AC_FEATURE_CHECK_LENGTH): Work in current directory.
* tests/.cvsignore: Add wrapper.in.
* man/Makefile.am (autoconf.1): Regenerate when `autoconf.as' changes.
* lib/autotest/general.m4 [--trace] (AT_INIT): Do not `set -v'.
* tests/autotest.at: New file.
* tests/suite.at: Include it.
* tests/Makefile.am: Distribute it.
* lib/autotest/general.m4 [--trace] (_AT_CHECK): Do not enable
shell tracing on a command that could contain multiple lines.
* doc/autoconf.text: Document that fact and its implications.
* lib/m4sugar/m4sh.m4 (AS_ESCAPE_FOR_EXPAND): New macro.
* tests/autotest.at (Multiline backquote command substitution,
Multiline parameter expansion, Literal multiline command,
Multiline parenthetical command substitution): Remove XFAIL.
(AS_INIT): Output shell initialization there. Removed optional
parameter. Expand _AS_SHELL_FN_SPY.
(AS_INIT_WITH_SHELL_FN): Removed.
(_AS_SHELL_FN_SPY): New macro.
(AS_DETECT_REQUIRED, AS_DETECT_SUGGESTED): New
macros.
(AS_SHELL_SANITIZE): Remove loop to find better shell
and documentation for the parameter.
(_AS_DETECT_BETTER_SHELL): Move it here.
(_AS_SHELL_FN_WORK): Remove shell invocation, reformat.
(_AS_RUN): Move it here, support testing with eval.
(AS_REQUIRE_SHELL_FN): Require shell functions when
it is used.
(_AS_LINENO_WORKS): Put around braces, we do not
trigger the bash bug anymore.
* lib/autotest/general.m4: Document M4SH-SANITIZE, do not
use AS_INIT_WITH_SHELL_FN.
* bin/autoconf.in, tests/wrapper.in: Regenerated.
* lib/m4sugar/m4sh.m4 (_AS_BOURNE_COMPATIBLE):
Extracted from AS_SHELL_SANITIZE.
(_AS_SHELL_FN_WORK, AS_INIT_WITH_SHELL_FN): New
macros.
(AS_SHELL_SANITIZE): Move reinvocation code from
_AS_LINENO_WORKS, use it to find out if shell
functions work.
(_AS_LINENO_WORKS): Don't find another shell if $LINENO
does not work.
(AS_INIT): Pass parameter down to AS_SHELL_SANITIZE.
(AS_REQUIRE_SHELL_FN): Test that AS_INIT_WITH_SHELL_FN
was called.
* lib/autotest/general.m4: Use AS_INIT_WITH_SHELL_FN.
* bin/autoconf.in: Regenerate.
* tests/wrapper.in: Regenerate.
* tests/tools.at: Test the syntax of tests/autoconf
and tests/testsuite.
so that ac_abs_builddir, ac_abs_top_builddir, ac_abs_srcdir,
and ac_abs_top_srcdir are absolute paths.
* lib/m4sugar/m4sh.m4 (AS_SET_CATFILE): Remove misleading comment.
computing the absolute path to d1 in the source hierarchy: it may
not exist at all. So don't cd into it.
From Alexandre Duret-Lutz.
http://mail.gnu.org/archive/html/bug-autoconf/2003-10/msg00205.html
* lib/m4sugar/m4sh.m4 (AS_SET_CATFILE): New.
From Paul Eggert, but named after Perl's IO::Spec->catfile.
* doc/autoconf.texi (Programming in M4sh): Document.
* lib/autoconf/status.m4 (_AC_SRCPATHS): Use it.