Commit Graph

2692 Commits

Author SHA1 Message Date
Akim Demaille
322a8a75e5 * lib/autotest/general.m4 (AT_INIT): Refer to `$as_me.log', not
`$0.log' as for projects where testsuite is in src, we'd have
testsuite.log created in src.
2001-08-17 14:46:05 +00:00
Akim Demaille
d69c3d31b4 * bin/autom4te.in (&parse_args): Recognize --normalize. 2001-08-17 12:38:53 +00:00
Akim Demaille
b087a64441 Start implementing the AC_CHECK_HEADER transition scheme.
* lib/autoconf/headers.m4 (_AC_CHECK_HEADER_NEW)
(_AC_CHECK_HEADER_OLD, _AC_CHECK_HEADER_MONGREL): New.
(AC_CHECK_HEADER): Use them.
2001-08-17 12:08:38 +00:00
Akim Demaille
d7e9a0c3c4 * doc/autoconf.texi: Work around Texinfo buglets.
(Transformation Rules): One example is enough, users are expected
to have their brains on. And BTW, use DESTDIR.
(dvar): New macro.  Use it.
2001-08-17 12:07:26 +00:00
Akim Demaille
d1f539c696 * doc/autoconf.texi (Writing testsuite.at) <AT_CHECK>: Complete.
* lib/autotest/general.m4 (AT_INIT): Use the relative dir when
looking for ChangeLogs.
2001-08-17 12:07:10 +00:00
Akim Demaille
80001aa3dc * bin/autom4te.in: --normalize is a new option.
* bin/autoconf.in: Use it.
2001-08-17 12:06:56 +00:00
Akim Demaille
40556ab827 * bin/Makefile.am, lib/Autom4te/Makefile.am, lib/autoconf/Makefile.am
* lib/autotest/Makefile.am, lib/m4sugar/Makefile.am: Add TAGS support.
2001-08-17 12:06:44 +00:00
Paul Eggert
7582d2a4f4 Put INSTALL copyright notice at start, not at end. 2001-08-17 00:42:44 +00:00
Akim Demaille
23e5c88242 * doc/Makefile.am (fu): New index, can't use fn because of defmac.
Use it.
2001-08-15 13:23:12 +00:00
Akim Demaille
ab19ca36ae * doc/autoconf.texi (pr): New index.
(prindex, findex): Use, merge, and output them.
(Environment Variable Index, Output Variable Index)
(Preprocessor Symbol Index, Autoconf Macro Index, M4 Macro Index)
(Autotest Macro Index): Rename as...
(Environment Variables, Output Variables,Preprocessor Symbols)
(Autoconf Macros, M4 Macros, Autotest Macros): these.
* doc/install.texi: Use @command.
(Environment Variables): Rename as...
(Defining Variables): this.
2001-08-15 12:34:16 +00:00
Akim Demaille
dc9d3f61b4 * doc/autoconf.texi (Function Portability): sprintf's return
value.
From Kevin Ryde.
2001-08-15 12:06:30 +00:00
Akim Demaille
a12256cf8f * Makefile.maint (CVS): New.
(local-check): Run changelog-check. last.
(alpha): Don't depend upon local-check, since...
(cvs-dist): depends upon it.
2001-08-15 11:43:28 +00:00
Akim Demaille
d98a887d5a Regen. 2001-08-15 11:43:08 +00:00
Tim Van Holder
bc1df3d0f1 * tests/Makefile.am: Use a clean-local rule to remove autom4te.cache (it's a directory, not a file.
* Makefile.am: Ditto (but maintainer-clean-local).
2001-08-15 10:07:34 +00:00
Akim Demaille
283bf6a536 * bin/autom4te.in (@m4_warning): New.
(&handle_m4): Use it.
* tests/m4sugar.at (m4_warn): Pass `-f' to autom4te to ensure the
warnings are issued at each run.
* tests/atspecific.m4 (AT_CHECK_M4SUGAR, AT_CHECK_M4SH): M4sugar
is in the src tree.
2001-08-15 07:49:59 +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
Akim Demaille
dea5c9a3f1 Complete. 2001-08-13 15:18:44 +00:00
Akim Demaille
b8751ea371 * doc/autoconf.texi (ma): Rename this index as...
(ac): this.
2001-08-13 12:28:34 +00:00
Akim Demaille
31b2e1acbc * Makefile.am: Remove dead code and dead comments.
(pdf, html): New targets.
* doc/autoconf.texi (Using Autotest): New chapter.
* doc/Makefile.am (pdf): New targets.
(CLEANFILES): Adjust.
2001-08-13 12:25:05 +00:00
Akim Demaille
2bac6c8ee8 * lib/autotest/general.m4 (AT_INIT): Log the start/stop dates and
duration of the test suite.
2001-08-13 12:24:40 +00:00
Alexandre Duret-Lutz
c659b9f763 * tests/semantics.at (AC_C_BIGENDIAN): Explicitelly save and load
endianness for comparison instead of relying on AT_CHECK_ENV.
2001-08-12 15:20:29 +00:00
Alexandre Duret-Lutz
c3de1bb1e5 * doc/autoconf.texi, doc/install.texi: Add a copyright notice
to the INSTALL file.
2001-08-12 13:17:35 +00:00
Alexandre Duret-Lutz
bb714a2c0b * NEWS: The autoconf manual now is distributed under the terms
of the GNU Free Documentation License.

* doc/autoconf.texi: Switch from old style copyright notice to FDL.
Add an appendix "Copying This Manual" for the FDL.

* doc/fdl.texi: New file, from
<http://www.gnu.org/licenses/fdl.texi>.

* doc/Makefile.am (autoconf_TEXINFOS): Add fdl.texi.
2001-08-12 13:13:10 +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
Alexandre Duret-Lutz
0828ac5acc * tests/semantics.at (AC_C_BIGENDIAN): New test. 2001-08-12 12:35:50 +00:00
Alexandre Duret-Lutz
a5b70717c1 * lib/autoconf/c.m4 (AC_C_BIGENDIAN): Handle ACTION-IF-TRUE,
ACTION-IF-FALSE, and ACTION-IF-UNKNOWN.
* doc/autoconf.texi (C Compiler Characteristics): Update
documentation for AC_C_BIGENDIAN.
2001-08-12 12:23:49 +00:00
Alexandre Duret-Lutz
6667f46047 * lib/autoconf/c.m4 (AC_C_BIGENDIAN): Guess endianness by grep'ing
magic values from an object file when cross-compiling.
Based on code by Guido Draheim <Guido.Draheim@gmx.de>.
2001-08-12 12:22:29 +00:00
Akim Demaille
14a3c0c717 * bin/autom4te.in (&handle_output): Don't use `grep' with side
effects.
Suggested by Russ Allbery.
2001-08-10 07:48:09 +00:00
Akim Demaille
d8d59b4454 * lib/autoconf/general.m4 (_AC_OUTPUT_SUBDIRS): Propagate the
current $prefix to the sub-configures.
2001-08-10 07:18:28 +00:00
Tim Van Holder
7eeb6d68a4 2001-08-09 Tim Van Holder <tim.van.holder@pandora.be>
* lib/autoconf/lang.m4: Ignore *.xSYM when looking for an executable
	extension.
2001-08-09 15:08:50 +00:00
Akim Demaille
0b0cae0fed * bin/autom4te.in ($icache): Load it only if older than autom4te. 2001-08-09 10:27:40 +00:00
Akim Demaille
972abaf2bc Typo. 2001-08-07 08:24:54 +00:00
Akim Demaille
08bc9f2a62 * lib/autotest/general.m4 (AT_INIT): All the `at-*' are to be
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.
2001-08-07 07:57:01 +00:00
Akim Demaille
c0f321fdc8 Always produce testsuite.log, including when there are no
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.
2001-08-07 07:56:51 +00:00
Akim Demaille
9f76b38080 The use of dumpstat' revealed that len' was used although it
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'.
2001-08-07 07:56:40 +00:00
Akim Demaille
dbf7fc61b5 * bin/autoconf.in, bin/autoheader.in: --force, -f is a new option. 2001-08-07 07:55:07 +00:00
Akim Demaille
6f629af81a Remove accidental additions.
Reported by Nicolas Joly.
2001-08-04 15:19:57 +00:00
Akim Demaille
242c59ed60 * lib/autoconf/functions.m4 (AC_FUNC_ALLOCA, AC_FUNC_ERROR_AT_LINE)
(AC_FUNC_FSEEKO, AC_FUNC_OBSTACK): Use AC_LANG_IFELSE, not
AC_TRY_LINK.
* lib/autoconf/headers.m4 (AC_HEADER_MAJOR): Likewise.
* lib/autoconf/fortran.m4 (_AC_LANG_PROGRAM_C_F77_HOOKS)
(AC_F77_MAIN): Likewise.
2001-08-04 13:16:59 +00:00
Akim Demaille
bbfdf23a93 Don't rely on M4sugar outputting the patterns in files, since we
might process the output _without_ running m4, hence without these
files.
* lib/m4sugar/m4sugar.m4 (m4_init): No need for `m4_tmpdir'.
* bin/autom4te.in (@Request::includes): Remove, unused.
(@Request::source): Rename as...
(@Request::input): this.
(@preselect): Add `m4_pattern_forbid' and `m4_pattern_allow'.
(&handle_output): Fetch the patterns from the traces.
`$forbidden' and `$allowed' are constant: use m//o.
(&handle_m4): M4sugar no longer wants `m4_tmpdir'.
(m4_pattern_forbid, m4_pattern_allow): Adjust for tracing only.
2001-08-04 13:16:47 +00:00
Akim Demaille
f12c18c780 autoconf && autoheader' is sped up. Now, speed up autoheader &&
autoconf', i.e., in addition to caching traces, cache the output.
* bin/autom4te.in (Request::cache): Rename as...
(Request::id): this.
($cache, $icache, $tcache, $ocache): New.
(&handle_m4): Save M4 output in the cache instead of $tmp.
(&handle_output): Adjust.
(&up_to_date_p): Check that the output cache is up to date too.
(top level): Run `&handle_m4' iff force or the cache is invalid.
Run `&handle_output' if the output cache is more recent.
2001-08-04 13:16:30 +00:00
Akim Demaille
337c1e9594 * bin/autom4te.in ($force): New.
(&parse_args, &print_usage): -f, --force is a new option.
(&handle_output): CPP directives might have spaces after `#'.
(&parse_args): The first file only can be frozen.
2001-08-04 13:16:15 +00:00
Akim Demaille
4ffd4212d6 Don't let autom4te compute the `include' traces several times:
first check that the trace cache file is up to date, and then
compare its timestamp with that of the output.
* bin/autom4te.in, bin/autoupdate.in, bin/autoscan.in: Normalize
the preamble.  Don't require 5.005 as Autom4te::General does it,
and better yet (use `use', not `require'!).
* lib/Autom4te/Struct.pm: Rename the last occurrences of
Class::Struct as Autom4te::Struct.
* lib/Autom4te/General.pm (File::stat): Use it.
(&mtime): New, export it.
* bin/autom4te.in: Use it.
Declare `$req' is invalid if it is outdated.
Don't declare it valid before saving it if something went wrong.
2001-08-04 13:14:39 +00:00
Akim Demaille
4eea9f6530 Autom4te shall not encode Autoconf data, and preselecting traces
must be proposed to the users.
* bin/autom4te.in (@required_trace): Remove.
(@preselect): New.
(&parse_args, &print_usage): -p, --preselect is a new option.
(&up_to_date_p): Adjust.
* bin/autoconf.in: Preselect some Autoconf macros.
2001-08-04 13:14:10 +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
Alexandre Duret-Lutz
8fffbbe523 * bin/autom4te.in (handle_traces): Fix rewriting of traces without 2001-08-03 15:22:34 +00:00
Akim Demaille
01f2ae88a0 * bin/autoconf.in ($@): Work around the usual sh bug.
From Nicolas Joly.
2001-08-03 09:23:34 +00:00
Akim Demaille
9fcd1589f5 Clean up the handling of the M4 builtins tracing exception.
* bin/autom4te.in (Request::request): Don't complete M4 builtins
trace requests.
(@m4_builtins): Rename as...
(@m4_builtin): this.
(%m4_builtin_alternate_name): New.
(&parse_args): Complete the trace requests with alternate names.
(&handle_traces): Hence no longer do it here.
(&trace_requests): Remove, unused.
2001-08-03 09:14:38 +00:00
Akim Demaille
f6117e5114 Update. 2001-08-03 09:12:26 +00:00
Akim Demaille
9429dfeb9c * doc/autoconf.texi (Redefined M4 Macros): Document m4_exit,
m4_if, and m4_wrap.
2001-08-03 09:11:37 +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