m4_match.
(m4_re_escape): New.
* lib/autoconf/status.m4 (AC_CONFIG_IF_MEMBER): Use it.
* lib/autoconf/general.m4 (AC_CACHE_SAVE): Use m4_match.
* lib/autoconf/status.m4 (AC_CONFIG_IF_MEMBER, AC_CONFIG_LINKS):
Likewise.
* lib/autoconf/types.m4 (_AC_CHECK_TYPE_REPLACEMENT_TYPE_P)
(_AC_CHECK_TYPE_MAYBE_TYPE_P, AC_CHECK_MEMBER): Likewise.
* lib/autotest/general.m4 (AT_INIT): Rename AT_TESTS_ALL as
AT_tests_all for consistency.
Set at_victims.
(AT_VICTIMS): Similar to AT_KEYWORDS.
(_AT_CLEANUP_FILE_IF): Use m4_match and m4_re_escape.
SETUP: no longer used.
Support -k, --keywords.
<at_help>: Be `no', `short', or `long'.
<at_help_all>: New variable.
(AT_KEYWORDS): New.
(AT_CLEANUP_FILE_IFELSE, AT_CLEANUP_FILE): Rename as...
(_AT_CLEANUP_FILE_IF, _AT_CLEANUP_FILE): these.
(_AT_CLEANUP_FILE_IF): Simplify the regexp.
(AT_SETUP): Reset AT_line, AT_keywords, AT_description.
No longer fill the HELP diversion.
(AT_CLEANUP): Use them.
* lib/m4sugar/m4sugar.m4 (m4_append): Support a separator.
(m4_list_append): Remove.
Spread a few keywords in the Autoconf test suite.
PATH_SEPARATOR, let M4sh compute it.
* lib/m4sugar/m4sh.m4 (_AS_PATH_SEPARATOR_PREPARE): New.
* lib/autoconf/programs.m4 (AC_SHELL_PATH_WALK): Use PATH_SEPARATOR.
Move to...
* lib/m4sugar/m4sh.m4 (_AS_PATH_WALK): Here.
Simplify when the path is not a literal.
(AS_UNAME): Use it to report PATH.
* lib/autoconf/general.m4 (_AC_INIT_PREPARE_FS_SEPARATORS): Remove.
(_AC_INIT_DEFAULTS): AC_SUBST PATH_SEPARATOR.
* lib/autoconf/programs.m4 (AC_PROG_INSTALL): Use _AS_PATH_WALK.
* lib/autotest/general.m4 (AT_INIT): Use _AS_PATH_WALK to
normalize the path, and to look for victims.
* tests/semantics.at (AC_PATH_PROG & AC_PATH_PROGS)
(AC_CHECK_PROG & AC_CHECK_PROGS): Use PATH_SEPARATOR.
doesn't neutralize SIGINT, making autoconf etc. non interruptible.
* lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): Move the package
related variables into `at_package_*'.
* lib/autotest/general.m4 (AT_VICTIMS): New.
(AT_INIT): Adjust for stand-alone/embedded test suites.
(AS_MESSAGE_LOG_FD): Define and use it.
* tests/suite.at (AT_VICTIMS): Use it.
* tests/tools.at (autoupdating AC_PREREQ): Don't depend upon
at_version.
* lib/autotest/general.m4: Stop displaying srcdir everywhere as,
in addition, it introduces useless differences in logs.
(AT_INIT): Let atconfig and atlocal be both optional.
Adjust PATH computation.
* lib/m4sugar/m4sh.m4 (AS_UNAME): More readable display of PATH.
the maintainer is dumb enough to do that...
* lib/autotest/general.m4 (AT_SETUP, AT_LINE): Demonstrates your
excellence in M4 quotation: consider `__file__' is active.
And BTW, when invoking m4, pass the --include in the right order:
the wrong one.
* bin/autom4te.in, bin/autoupdate.in: Use reverse when kingtal to
4m.
* bin/autoconf.in, bin/autoheader.in, bin/autoreconf.in,
* bin/autoscan.in, autoupdate.in: Use exclusively the name of the
installed peer executables, only PATH is allowed to resolve it.
Pass `autoconf_dir' via options, not via invisible envvars.
* lib/Autom4te/General.pm (&find_peer): Remove.
* lib/autotest/general.m4 (AT_INIT): `AUTOTEST_PATH=a:b' gives
`abuild:asrc:bbuild:bsrc', not `abuild:bbuild:asrc:bsrc'.
* man/Makefile.am: Let help2man rely on PATH instead of trying to
find the executables for it.
* tests/Makefile.am: Major cleanup. Too lazy to document...
* tests/atlocal.in: Remove all the obscure envvar manipulations.
We only need PERL.
* tests/atspecific.m4, tests/tools.at: Passing --localdir is
indeed related to running the test suite, while passing
--autoconf-dir and others is related to running non installed
Autoconf executables. So don't do that, leave it to...
* tests/autoconf, tests/autoheader, tests/autom4te, tests/autoupdate,
* tests/autoscan: New.
* tests/atspecific.m4 (AT_CHECK_M4SUGAR, AT_CHECK_M4SH): Don't
refer to library files: rely on --language.
(AT_INIT): Check for the `times' builtin before using it.
Support test ranges as arguments to the testsuite.
Have -e imply -d as the help text suggested.
* lib/autotest/autotest.m4: New.
* lib/autotest/general.m4, tests/atspecific.m4: Adjust.
* tests/suite.at : Adjust.
(AT_INIT): Log config.log.
* lib/m4sugar/m4sugar.m4 (m4_text_box): New.
* lib/m4sugar/m4sh.m4 (_AS_BOX_LITERAL): Adjust.
* lib/autoconf/general.m4 (_AC_INIT_CONFIG_LOG): Use them.
(_AC_INIT_PREPARE): Fix the incredibly messy and buggy completion
of config.log on traps.
(_AC_OUTPUT_CONFIG_STATUS): Use AS_BOX.
Use consistently `_ACEOF' for configure's here docs, and `_CSEOF'
for config.status'.
Open the log as soon as possible.
Use the same log introduction as configure's.
top_srcdir and srcdir from at_topbuild_2_topsrc and at_testdir.
Load atlocal late enough to dump it in the log.
* m4/atconfig.m4 (AT_CONFIG): Pass them to atconfig.
their use in AC_CONFIG_COMMANDS for instance...
* lib/autoconf/general.m4, lib/autoconf/specific.m4,
* lib/autotest/general.m4: Rename the EOF tags as `_ACEOF',
`_CSEOF', or `_ATEOF', as appropriate.
* lib/m4sugar/Makefile.am, lib/autoconf/Makefile.am,
* lib/autotest/Makefile.am (check-local): Enforce this constraint.
* lib/autotest/general.m4: Adjust the diversion names.
(AT_INIT): Run AS_INIT.
Use the BINSH diversion to invoke /bin/sh.
* tests/base.at, tests/m4sh.at, tests/m4sugar.at, tests/tools.at:
* tests/torture.at: Respect M4sugar and M4sh macro name spaces.
removed.
(at-setup-line): Huh? Be a variable `at_setup_line', not a file.
No need to remove the files before and after the each test, before
each test and at the end of the suite is enough.
Display only the children `times', not the shell's.
If the test failed or was skipped, at-times is not available.
failures. This helps getting information on skipped tests, and
duration of the tests. Err, implement the latter btw.
* lib/autotest/general.m4 (AT_INIT): Set up fd 6 for the log.
Dump information on the first run of each test.
(AT_CLEANUP): Create `at-times' containing the duration of the
test group.
should not. m4_text_wrap was using it, but in the Autoconf world
where it is legal. Hence (i) test M4sh in its own world, not
Autoconf's, and (ii), ahem, fix the bug :)
* lib/autotest/general.m4: Be sure the set good quotes, as tracing
does not like `' instead of [].
(AT_INIT): Forbid `^_?AT_'.
And don't output such tokens.
* tests/Makefile.am (CLEANFILES): Add `script', `script.s4g',
`script.as', and `autom4te.cache'.
Remove `empty' and `macro' which are no longer used.
* tests/atspecific.m4 (AT_CHECK_M4SUGAR, AT_CHECK_M4SH): New.
* tests/m4sugar.at: Use it.
* lib/m4sugar/m4sugar.m4: Use `m4_len' not `len'.
(AS_SHELL_SANITIZE): Set `$as_me'.
* acgeneral.m4: Don't set as_me; AS_SHELL_SANITIZE now does this.
* tests/atgeneral.m4: Likewise.
(AT_INIT): Use $PATH_SEPARATOR for walking the path.
* autoconf.sh: Be DOS-friendly when setting as_me and M4.
Add quotes to support spaces in $tmp.
Work around problem in DJGPP port of awk by using a temporary file.
* autoheader.sh: Be DOS-friendly when setting as_me.
* autoreconf.sh: Be DOS-friendly when setting as_me, dir and
template_dir.
* tests/atconfig.in: Set PATH_SEPARATOR to the proper
path separator. Set SHELL here...
* tests/atgeneral.m4: ... instead of here. Use $PATH_SEPARATOR
when setting AUTOTEST_PATH. Don't default tests to "all" before
deciding whether the help text is needed.
* tests/semantics.at: Use the correct path separator.
AC_OUTPUT_MAKE_DEFS to include junky -D switches.
Reported by Wolfgang Mueller.
* tests/torture.at (#define header templates): Include trash in
confdefs.h.
* tests/atgeneral.at (AT_INIT): Don't expect `find' to support
-maxdepth, hence don't use -follow either.
Reported by Nicolas Joly.
* acgeneral.m4 (AC_OUTPUT_MAKE_DEFS) <confdef2opt.sed>: In the
`quote' section, `p'rint the result.
If neither `#define' pattern match, just call `d' to start a new
cycle.
Call this sed program with -n.
(_AS_QUOTE_IFELSE): Use it.
* tests/atgeneral.m4 (AT_INIT) <SHELL>: Define and use.
<--help> Don't display the options help when tests were selected.
Document -d.
<at_skip_list>: New.
<testsuite.log>: Give a banner, include ChangeLog snippets, list
the failed and skipped tests.
Remove useless $at_traceoff in sub shells, this improves the
readability of the traces by removing testsuite's implementation
details.
(AT_CHECK): Filter out the shell traces from the tested command's
stderr.
Use AS_ESCAPE.
Don't register experr and expout for clean up, as it's hairy and
easier to do from...
Support STDOUT = stdout, and STDERR = stderr.
Force the output of shell traces.
(AT_INIT): Here.
(edit).
* m4sh.m4 (AS_UNAME): Eved out from...
* acgeneral.m4 (_AC_INIT_DEFAULTS): here.
(_AC_INIT_PACKAGE): Define AC_PACKAGE_NAME.
(_AC_INIT_PARSE_ARGS): AC_SUBST the PACKAGE_ variables.
Propagate their use in the executables and the test suite.
* tests/atgeneral.m4 (PATH): Include only absolute paths.
(AT_INIT): Use AS_UNAME.