Commit Graph

43 Commits

Author SHA1 Message Date
Akim Demaille
2ffdce9940 * tests/base.at, tests/m4sh.at, tests/m4sugar.at,
* tests/semantics.at, tests/tools.at, tests/torture.at:
s/^AT_DATA(([^][]+),/AT_DATA([$1],/.
2001-08-20 14:45:09 +00:00
Akim Demaille
5693a536c2 Autotest invokes M4sh's initialization.
* 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.
2001-08-20 14:45:00 +00:00
Akim Demaille
f4f20f1c63 * tests/base.at, tests/compile.at, tests/foreign.at,
* tests/m4sh.at, tests/m4sugar.at, tests/mktests.sh,
* tests/semantics.at, tests/suite.at, tests/tools.at,
* tests/torture.at: Ask Autotest mode, not Autoconf mode.
2001-08-20 14:44:38 +00:00
Akim Demaille
27108d98f9 * tests/atspecific.m4 (AT_CHECK_AUTOUPDATE): Perl is now required:
don't waste time running `autoupdate --version' works.
* tests/tools.at (autoupdating AC_PREREQ): Likewise.
2001-08-15 07:49:39 +00:00
Alexandre Duret-Lutz
420008ad84 * AUTHORS, BUGS, ChangeLog, ChangeLog.0, ChangeLog.1,
ChangeLog.2, GNUmakefile, Makefile.maint, NEWS, README,
README-alpha, TODO, configure.ac, lib/autoconf/Makefile.am,
m4/atconfig.m4, m4/init.m4, m4/m4.m4, m4/missing.m4,
m4/sanity.m4, tests/README, tests/aclocal.m4,
tests/atspecific.m4, tests/base.at, tests/compile.at,
tests/foreign.at, tests/m4sh.at, tests/m4sugar.at,
tests/semantics.at, tests/suite.at, tests/tools.at,
tests/torture.at: Add copyright notice.

* tests/mktests.sh: Update year in copyright notice.
2001-08-12 13:05:11 +00:00
Akim Demaille
37ea55bd5f * tests/tools.at (autoconf --trace: user macros): Check traces on
macros invoked without arguments, and macros invoked with multiple
lines arguments.
2001-08-04 13:13:36 +00:00
Akim Demaille
7d26817715 * lib/m4sugar/m4sugar.m4 (m4_init): Also forbid `_m4_*' tokens.
(m4_divert_pop): Dump the whole diversion stack when a diversion
mismatch happens.
* bin/autom4te.in (&handle_output): Remember of the first
occurrence of a possibly undefined macro, not the last.
Complain about the possibly undefined macros in the same order as
the appear in the output.
* lib/autoconf/Makefile.am (autoconf.m4f): List its dependencies.
* tests/tools.at (autoconf: forbidden tokens, basic)
(autoconf: forbidden tokens, exceptions): No longer sort
autoconf's stderr, as it is now deterministic.
Check that `dnl' is caught.
2001-08-03 09:09:45 +00:00
Akim Demaille
ede433af3a Adjust path to executables. 2001-08-01 15:00:03 +00:00
Akim Demaille
ca0684ddb6 * autoconf.in ($AWK): Remove, no longer used.
* test/tools.at: Use AT_CHECK_AUTOCONF.
(AWK portability): Remove, for autoconf no longer uses AWK.
(Syntax of the Perl scripts): New.
* configure.ac: autoconf no longer needs an AWK with a good
regexp engine.
Use a static test on AC_PACKAGE_VERSION.
* autom4te.in (&up_to_date_p): Output depends on the arguments.
* lib/autoconf/Makefile.am: Ship version.m4, maintainer file.
* tests/atconfig.in (PERL): New.
2001-08-01 13:56:52 +00:00
Akim Demaille
b21ca4dd20 * acfunctions.m4: Rename as...
* lib/autoconf/functions.m4: this.
* acgeneral.m4: Rename as...
* lib/autoconf/general.m4: this.
* acheaders.m4: Rename as...
* lib/autoconf/headers.m4: this.
* aclang.m4: Rename as...
* lib/autoconf/lang.m4: this.
* acoldnames.m4: Rename as...
* lib/autoconf/oldnames.m4: this.
* acspecific.m4: Rename as...
* lib/autoconf/specific.m4: this.
* actypes.m4: Rename as...
* lib/autoconf/types.m4: this.
* autoconf.m4: Rename as...
* lib/autoconf/autoconf.m4: this.
* m4sugar.m4: Rename as...
* lib/m4sugar/m4sugar.m4: this.
* m4sh.m4: Rename as...
* lib/m4sugar/m4sh.m4: this.
* tests/atgeneral.m4: Rename as...
* lib/autotest/general.m4: this.
* acfunctions: Rename as...
* lib/autoscan/functions: this.
* acheaders: Rename as...
* lib/autoscan/headers: this.
* acidentifiers: Rename as...
* lib/autoscan/identifiers: this.
* aclibraries: Rename as...
* lib/autoscan/libraries: this.
* acmakevars: Rename as...
* lib/autoscan/makevars: this.
* acprograms: Rename as...
* lib/autoscan/programs: this.
2001-08-01 13:46:22 +00:00
Akim Demaille
27103b83f0 Let autoconf use autom4te for traces.
* autoconf.in ($task, task trace): Remove, merely pass --trace to
autom4te.
* autoheader.in: Don't pass `-' to autoconf, rather, a tmp file.
(Because I found no way for autom4te to accept `-').
* autom4te.in (&Request::request): Beware of M4 builtins.
(END): Don't try to remove the content of an empty dir.
(&parse_args): Default is `$f:$l:$n:$%', not `$f:$l:$n:$*'.
(&handle_output): Set a default value to `$forbidden'.
* autoupdate.in (&verbose, &xsystem): New, from autom4te.in.
($autoconf): Pass --debug and --verbose.
* tests/atspecific.m4 (AT_CHECK_AUTOCONF): Clean up autom4te's
cache.
2001-07-24 09:05:28 +00:00
Akim Demaille
9027f7efea * config: New directory.
* configure.in: AC_CONFIG_AUX_DIR it.
* tests/atspecific.m4 (AT_CONFIGURE_AC): Adjust.
2001-05-22 14:43:48 +00:00
Akim Demaille
8593e941c9 * tests/tools.at: s/undefined macro/possibly undefined macro/. 2001-05-19 17:35:02 +00:00
Akim Demaille
6b6c7f7b9f * tests/atspecific.m4 (AT_CHECK_AUTOUPDATE): Be robust to missing
or broken autoupdate.
* tests/tools.at: Likewise.
* tests/Makefile.am (CLEANFILES): Also clean Libtool files.
2001-04-20 13:07:09 +00:00
Akim Demaille
ae7a741e0b * tests/tools.at (AWK portability): Don't rely on `empty'. 2001-03-19 14:54:38 +00:00
Akim Demaille
687fa3b765 * tests/tools.at (AWK portability): Use AT_CHECK to check for GNU
AWK so that there is always a AT_CHECK between
AT_SETUP/AT_CLEANUP.
Reported by Nicolas Joly.
2001-03-13 12:21:40 +00:00
Akim Demaille
38fa78538d * tests/tools.at: Be sure to remove configure.ac~.
* autoupdate.in (File::Basename): Use package.
(%ac_macros, %au_macros): Save only base filenames.
2001-03-13 12:09:22 +00:00
Akim Demaille
de7bee7a82 * tests/atgeneral.m4 (AT_INIT): Warn when at-check-line is
missing.
* tests/tools.at (Syntax of the scripts): Use AT_CHECK to test
/bin/sh -n.  Exit 77 on failure.
Reported by Harlan Stenn.
2001-02-28 09:33:30 +00:00
Akim Demaille
5e0a2a0099 * autoupdate.in: New. Replaces autoupdate.sh. 2001-02-21 08:59:24 +00:00
Akim Demaille
a606e651c9 * sh.m4 (AS_ESCAPE): New.
(_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.
2001-01-22 08:59:02 +00:00
Akim Demaille
960155df17 Catch only used patterns.
Reported by the whole Autoconf community.
* m4sh.m4 (AS_INIT): New.
* acgeneral.m4 (AC_PLAIN_SCRIPT): Use it.
Forbid only AC, AU, AH and AM.
2001-01-19 14:35:06 +00:00
Akim Demaille
722c1a86a0 Require a perfect divert push/pop balance.
* m4sugar.m4 (m4_divert, m4_divert_push, m4_divert_pop): Keep
track of them in m4_divert_stack.
(m4_divert_pop): Accept the expected current diversion as
argument and m4_fatal if incorrect, or if there is nothing to pop.
(globally): Specify the known m4_divert_pop.
Preserve symbolic values when possible.
* acgeneral.m4: No longer push the first diversion.
Specify the known m4_divert_pop.
(AC_PLAIN_SCRIPT): When m4_divert_push a diversion, m4_wrap its
pop.
(AC_INIT): Run AC_PLAIN_SCRIPT first, not last.
* tests/m4sh.at (AS_DIRNAME & AS_DIRNAME_SED): Can't use m4_defun
without m4_init.
* m4sugar.m4: Likewise.
2001-01-18 09:16:08 +00:00
Akim Demaille
70b6f5cc93 Various cleanups and consistency checks.
* m4sugar.m4: Formatting changes.
* acgeneral.m4 (AC_DIVERT_PUSH, AC_DIVERT_POP, AC_REQUIRE)
(AC_DIAGNOSE, AC_FATAL, AC_MSG_WARN, AC_MSG_NOTICE, AC_MSG_ERROR):
Use m4_copy to define them, in order to keep a good $0.
(AC_INIT): AC_LANG_PUSH C, not AC_LANG, to initialize the stack.
* aclang.m4 (AC_LANG_PUSH): Dont't use m4_defn on undefined macros.
(AC_LANG_POP): Admit an argument specifying the language we quit
when popping.
Adjust Autoconf's AC_LANG_POPs.
* tests/tools.at (AWK portability): Don't depend on AC_INIT.
(autoconf --trace: user macros): Obviously I
meant TRACE1, not AC_TRACE1.
2001-01-18 09:15:31 +00:00
Akim Demaille
cd7cd7bf31 * autoconf.sh: Promote configure.ac' over configure.in'.
* autoreconf.sh: Likewise.
* autoheader.sh: Ditto.
* autoupdate.sh: Similarly.
* doc/autoconf.texi: Adjust.
* tests/atspecific.m4: Be sure to remove configure.in.
Adjust the test suite to use `configure.ac'.
2000-12-23 10:11:57 +00:00
Akim Demaille
6804b0e12a * tests/atgeneral.m4 (AT_CHECK): Make exit status report more
visible.
* tests/atspecific.m4 (AT_CHECK_AUTOCONF): Support FLAGS, STDOUT
and STDERR.
(AT_CHECK_CONFIGURE): Support plenty, cleanup defs when needed.
Spread their use in the whole suite.
Simplify a few AT_CLEANUPs.
2000-12-19 08:15:48 +00:00
Pavel Roskin
21ca8441bc * autoconf.sh: If the "allowed" pattern is not defined set it
to "^$".
* tests/tools.at (autoconf: forbidden tokens, basic): New test.
(autoconf: forbidden tokens): Renamed to ...
(autoconf: forbidden tokens, exceptions): ... this.
2000-12-15 19:23:16 +00:00
Akim Demaille
46f9d3ed57 * tests/tools.at (autoconf: forbidden tokens): Adjust expected
result.
2000-12-06 16:06:34 +00:00
Akim Demaille
89b05bc4aa * doc/autoconf.texi (Limitations of Usual Tools) <awk>: `for' on
arrays is nondeterministic across AWK implementations.
* tests/tools.at (autoconf: forbidden tokens): Sort the error
message to guarantee its uniqueness.
2000-12-06 15:00:45 +00:00
Akim Demaille
83e4065f15 * autoconf.sh (task trace): s/m4/$M4/.
* autoheader.sh: When loading trace.sh, catch errors and exit with
a decent error message.
* tests/tools.at: Be sure to test autoconf --trace before
autoheader.
2000-12-06 10:53:58 +00:00
Akim Demaille
e43386442e * m4sugar.m4 (m4_dquote, m4_pattern_forbid, m4_pattern_allow)
(m4_cr_letters, m4_cr_LETTERS, m4_cr_Letters, m4_cr_digits)
(m4_cr_symbols1, m4_cr_symbols2, m4_re_string, m4_re_word)
(m4_init): New macros.
(m4_token_allow): Remove.
* acgeneral.m4: Don't push BODY into the diversion stack.
(AC_PLAIN_SCRIPT): Do it.
Call m4_init, define the Autoconf patterns.
(AC_INIT): Use AC_PLAIN_SCRIPT.
Remove the useless `dnl' (those where the current diversion is
KILL).
* autoconf.sh (m4_common): Fix quotation.
(finalize.awk): Load forbidden.rx and allowed.rx.
Split the line into tokens, and check their validity.
* tests/tools.at (Forbidden tokens): Adjust.
2000-12-06 08:58:13 +00:00
Akim Demaille
7d7512c8ea * tests/tools.at (autoupdate): Strengthen and check autoupdate's
idempotency.
2000-12-05 13:52:49 +00:00
Akim Demaille
a8c122d0f2 Provide a means to display banners in the test suite.
* tests/atgeneral.m4 (AT_INIT): Initialize AT_banner_ordinal.
Execute the epilogue of the tests only if a test was run.
Don't built the value of `at_tests_all' by a for loop: expand
AT_TESTS_ALL.
(AT_SETUP): Build AT_TESTS_ALL.
(AT_BANNER): New.
Adjust all the former banners to use it.
(AT_CHECK): Don't trace the decoding of $?.
2000-11-29 10:12:05 +00:00
Akim Demaille
0280c4a535 * tests/atgeneral.m4 (AT_CLEAN_FILE_IFELSE, AT_CLEANUP_FILE)
(AT_CLEANUP_FILES): New	macros.
(AT_SETUP, AT_CHECK, AT_CLEANUP): Use them.
(AT_CHECK): Fix a use of at_verbose.
* tests/atspecific.m4 (AT_CHECK_AUTOCONF, AT_CHECK_AUTOHEADER)
(AT_CHECK_CONFIGURE): New macros.
2000-11-23 09:52:35 +00:00
Akim Demaille
e62a041a2f Provide a means for escaping the forbidden patterns test.
* tests/tools.at (Forbidden tokens): Test m4_token_allow.
* m4sugar.m4 (m4_file_append, m4_token_allow): New macros.
* autoconf.sh (task script): Pass `tmp' and `verbose' to
finalize.awk.
(finalize.awk::check_patterns): Eve out from the body.
(finalize.awk): Read `$tmp/tokens_allowed', and don't complain for
these exceptions.
2000-11-16 08:33:46 +00:00
Akim Demaille
175bb016dd * BUGS: New file.
Be sure to read this file if you're using a non released Autoconf.
* tests/tools.at (Syntax of the scripts): The non built tools are
in `$top_srcdir', not `..'.
(autoconf --trace): When using `-i' we need the src tree, not the
build tree.
2000-11-14 13:25:35 +00:00
Pavel Roskin
a885ca5436 * tests/tools.at (Syntax of the scripts): Check "autoreconf"
only once. Check "install-sh", "mkinstalldirs" and "missing".
2000-11-09 19:13:23 +00:00
Pavel Roskin
1d03fe1675 * acgeneral.m4 (_AC_COMPUTE_INT_COMPILE): Use ":" instead of
"true".
        * tests/atgeneral.m4 (AT_INIT): Likewise.
        * tests/tools.at (Syntax of the scripts): Likewise.
2000-11-09 18:59:18 +00:00
Akim Demaille
f1ba26c218 * tests/tools.at (unexpanded macros): Strengthen.
* autoconf.sh (finalize.awk): Use `sub' instead of `index' +
`substr'.
More comments.
2000-11-03 15:08:28 +00:00
Akim Demaille
3c3853ced4 * acgeneral.m4 (AU_ALIAS): Don't forget to pass the arguments to
the new macro...
Reported by Ezra Peisach.
* tests/semantics.m4 (AC_HAVE_FUNCS): New test.
* tests/tools.at (autoupdate): As a benign side effect, updating a
macro that takes no argument produces `UPDATED([])', no longer
`UPDATED()'.  Adjust the test.
2000-11-03 11:59:39 +00:00
Pavel Roskin
48f158e039 * ifnames.sh: Put the opening brace on the same line with
patterns. Reported by Paul Martinolich.
        * tests/tools.at (AWK portability): Check ifnames.
        (ifnames): New test for ifnames.
        * THANKS: Updated.
2000-11-02 17:03:32 +00:00
Akim Demaille
ff03218ac3 * tests/tools.at (Tracing M4 builtins): New test.
* autoconh.sh (trace_format): Fix its computation.
2000-11-02 15:32:23 +00:00
Pavel Roskin
ae60935d08 * tests/tools.at (autoupdating AC_LINK_FILES): Invoke autoconf
like in the rest of the tests.
2000-11-01 15:20:46 +00:00
Akim Demaille
5ec791a2d5 * shell.m4: Rename as...
* m4sh.m4: this.
* tests/m4sugar.m4, tests/shell.m4, tests/torture.m4: Rename as...
* tests/m4sugar.at, tests/m4sh.at, tests/torture.at: these.
* tests/semantics.m4, tests/base.m4, tests/suite.m4: Rename as...
* tests/semantics.at, tests/base.at, tests/suite.at: these.
* tests/tools.m4, tests/update.m4, tests/syntax.m4: Rename as...
* tests/tools.at, tests/update.at, tests/syntax.at: these.
* tests/mktests.sh: Adjust the output file names.
2000-10-26 09:52:34 +00:00