Commit Graph

124 Commits

Author SHA1 Message Date
Akim Demaille
ca36be0606 * autoconf.in (Task traces): Separate the error messages from the
traces to improve robustness.
2001-06-23 22:58:54 +00:00
Akim Demaille
a89977e147 * autoconf.in (M4): Pass --nesting-limit=1024, unless already set
in $M4.
Suggested by Andreas Schwab.
2001-06-18 18:15:24 +00:00
Akim Demaille
eddc4ccb87 GNU getopt, when POSIXLY_CORRECT does not permute options and
arguments.  So pass the options first.
Fixes PR autoconf/184.
* autoconf.sh (m4_prefiles, m4f_prefiles): New variables.
(run_m4): Remove files.
(run_m4f): Remove.
Update remainder of script to use them.
(for warning in): Do not use a literal comma as it will not be
split by IFS.
2001-06-02 15:45:32 +00:00
Pavel Roskin
8dba4e28ab * acgeneral.m4 (_AC_INIT_PREPARE): Don't rely on $? in the traps
for signals other than 0 - exit with code 1.
* m4sh.m4 (AS_TMPDIR): Likewise.
* autoconf.in: Likewise. Also don't rely on exit == exit $?.
* autoheader.in: Likewise.
* autoreconf.in: Likewise.
* tests/torture.at (Signal handling): New test for the above.
2001-06-02 05:49:54 +00:00
Akim Demaille
f27d468f90 * autoconf.in, autoreconf.in, autoheader.in, autoscan.in, ifnames.in,
* autoupdate.in: Specify the Emacs mode.
* acversion.m4.in: Rename as...
* acversion.m4: this.
* tests/Makefile.am (CLEANFILES): More garbage.
2001-05-22 14:04:22 +00:00
Akim Demaille
259e7433b4 * autoconf.sh: s/undefined macro/possibly undefined macro/. 2001-05-19 16:55:05 +00:00
Akim Demaille
48ecaeea39 * autoconf.sh (Task script): Be sure that `forbidden.rx' and
`allowed.rx' exist when AWK loads then.
Reported by Rainer Orth.
2001-04-11 16:29:14 +00:00
Akim Demaille
75a3a3d326 * m4sh.m4 (AS_BASENAME): New.
(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.
2001-03-30 12:49:36 +00:00
Akim Demaille
830cc1d4ba * configure.in: Bump to 2.49e. 2001-03-19 18:14:44 +00:00
Akim Demaille
e2e36c55ce * Makefile.am (editpl, editsh): Merge into...
(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.
2001-01-16 10:25:57 +00:00
Akim Demaille
5058e82d54 * acgeneral.m4: Last changes for `configure.ac'.
(_AC_INIT_HELP, _AC_OUTPUT_SUBDIRS): Take `configure.ac' into
account.
* autoreconf.sh: Likewise.
2001-01-12 09:19:59 +00:00
Akim Demaille
3e7682ecb7 * autoconf.sh (M4): Handle PC drive letters.
* autoupdate.sh: Likewise.
2001-01-11 14:18:48 +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
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
9eb6e4e204 The SunOS' egrep fails to process properly the `egrep' invocations
of the test suite.
* tests/aclocal.m4 (AC_STATE_SAVE): If egrep fails, remove the
output file.
* tests/atspecific.m4 (_AT_CHECK_AC_MACRO): Don't check `state-*'
if the files are not present.
* m4sugar.m4 (m4_join): Rename as...
(m4_smash): this.
* tests/aclocal.m4 (join): Move as...
* m4sugar.m4 (m4_flatten): this.
* autoconf.sh (trace.m4): Rename m4_smash as m4_flatten.
2000-12-06 14:05:46 +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
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
Pavel Roskin
603fad0c9c * autoconf.sh: Temporarily disable recognizing of abbreviated
long options - it's hard to maintain them by hand.
* autoheader.sh: Likewise.
* autoreconf.sh: Likewise.
* autoupdate.sh: Likewise.
* ifnames.sh: Likewise.
2000-11-07 17:58:43 +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
5b4f860940 * autoconf.sh (trace.m4): Move all the M4 builtins into `at_'.
Catch the failures of the big pipe.
2000-11-02 16:03:58 +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
Akim Demaille
648bf798eb * autoconf.sh (task trace) [debug]: Instead of a long pipe, extend
trace.m4.
2000-11-02 15:06:02 +00:00
Akim Demaille
2353e0d366 * m4sugar.m4 (popdef, pushdef): Rename as...
(m4_popdef, m4_pushdef): these.
Adjust dependencies.
* acgeneral.m4: Adjust.
* aclang.m4: Likewise.
* autoconf.m4 (popdef, pushdef): Reactivate them.
2000-11-02 14:12:18 +00:00
Pavel Roskin
33de71ca28 * autoconf.sh: Using trap-safe "exit".
* autoreconf.sh: Likewise.
        * autoupdate.sh: Likewise.
        * tests/base.at: Use AS_EXIT instead of exit in configure.in.
        * tests/m4sh.at: Likewise.
        * tests/semantics.at: Likewise.
2000-11-01 19:57:54 +00:00
Akim Demaille
701a1dde55 GNU M4 1.4 improperly handle the traces of copies of builtins.
* autoconf.sh (task trace): When tracing `BUILTIN' also trace
`m4_BUILTIN'.
2000-11-01 17:02:34 +00:00
Pavel Roskin
a63489da61 * autoconf.sh: Typo: s/m4__warnings/m4_warnings/. 2000-11-01 15:01:54 +00:00
Akim Demaille
82756f7543 Move the handling of classified warnings into M4sugar.
* m4sugar.m4 (m4_diagnose): Remove.
(m4_warning): New.
* acgeneral.m4 (AC_WARNING_IFELSE, _AC_WARNING_IFELSE)
(_AC_WARNING_ERROR_IFELSE, __AC_WARNING_ERROR_IFELSE)
(_AC_DIAGNOSE, AC_DIAGNOSE): Rename as...
* m4sugar.m4 (m4_warning_ifelse, _m4_warning_ifelse)
(_m4_warning_error_ifelse, __m4_warning_error_ifelse)
(_m4_warn, m4_warn): these.
* acgeneral.m4 (AC_DIAGNOSE): Wrapper around `m4_warn'.
* autoconf.sh: Define `m4_warnings' instead of `_AC_WARNINGS'.
2000-10-31 15:20:15 +00:00
Pavel Roskin
80f8404bec * autoconf.sh: When scanning for unexpanded macros match only
words beginning with "A?_" and "m4_" or containing "_A?_".
        Strip the comments before the matching. Don't use character
        ranges.
2000-10-30 03:20:00 +00:00
Pavel Roskin
c46d9d8480 * autoconf.sh: Recognize short options followed by arguments
without separators.
        * autoheader.sh: Likewise.
        * autoreconf.sh: Likewise. Recognize abbreviations for
        "--autoconf-dir" and "--m4dir"
        * autoupdate.sh: Likewise. Recognize abbreviations for
        "--autoconf-dir"
2000-10-27 13:47:54 +00:00
Pavel Roskin
0dd3144b2e * autoconf.sh: Don't show obsolete options on "--help". Report
obsolete options to stderr. Adjust list of options. Correct
        processing of options. Process options with values separated by
        "=" first, so that abbreviations work. Don't accept "=" with
        short options.
        * autoheader.sh: Likewise.
        * autoreconf.sh: Likewise.
        * autoupdate.sh: Likewise.
        * ifnames.sh: There is no "--verbose" option.
        * doc/autoconf.texi: Option "-A" requires an argument.
        (autoreconf Invocation): Document "--install", "--symlink",
        "--m4dir" and the options passed to Automake.
2000-10-26 22:27:48 +00:00
Akim Demaille
1e3cdfe0a3 * acgeneral.m4: Adjust copyright notice.
* acspecific.m4: Likewise.
* acoldnames.m4: Likewise.
* acversion.m4.in: Likewise.
* autoconf.sh: Likewise.
* autoheader.sh: Likewise.
* autoreconf.sh: Likewise.
* autoscan.pl: Likewise.
* autoupdate.sh: Likewise.
* ifnames.sh: Likewise.
2000-10-16 18:25:55 +00:00
Akim Demaille
e6600f6485 * autoconf.sh: Report full macro name for missing macros. 2000-09-27 10:29:30 +00:00
Akim Demaille
c916e13f94 * autoheader.sh: Fix trap (EXIT) status.
* autoreconf.sh: Likewise.
* autoupdate.sh: Likewise.
* autoconf.sh: Change `exit' to `{ (exit 1); exit; }' after m4 and
awk commands to ensure exit state is in a defined state.
2000-09-27 10:02:27 +00:00
Pavel Roskin
480bbc8376 * autoheader.sh: Don't check status of variable assignments -
* it's undefined in ash 0.2.
* autoreconf.sh: Likewise.
* autoupdate.sh: Likewise.
* autoconf.sh: Likewise. Also eliminated command substitution
inside variable expansion - ash 0.2 coredumps on it.
2000-09-25 13:24:45 +00:00
Akim Demaille
66dcecdf2f * autoconf.sh (optarg): More robust expr invocation.
* autoreconf.sh: Likewise.
* autoupdate.sh: Likewise.
* autoheader.sh: Likewise.
Reported by Bernard Dautrevaux.
2000-09-19 12:35:01 +00:00
Akim Demaille
63ff24b580 * autoconf.sh: Proprerly report names of unexpanded macros that
begin with an underscore
2000-09-11 07:16:34 +00:00
Akim Demaille
82bbd6fe4e * autoconf.sh: Consider undefined macros as errors.
* tests/base.m4 (unexpanded macros): Expect error, not warning
2000-09-05 10:19:01 +00:00
Akim Demaille
9fe002dcf5 * autoconf.sh: Change exit N' to (exit N); exit' to provide
the correct exit status when an exit trap is taken.
2000-08-11 08:51:34 +00:00
Akim Demaille
4df82da14e * autoconf.sh (finalize.awk): Don't leave spaces before the user
function calls.
Reported by John David Anglin.
* doc/autoconf.texi (Limitations of Usual Tools): Start the AWK
section.
* tests/tools.m4 (AWK portability): New test.
2000-08-09 06:53:07 +00:00
Akim Demaille
6b9ecd5669 * autoconf.sh (finalize.awk): New subtool, eved from the previous
literal AWK program that performed the `oline' and quadrigraphs
substitution.
Fix its `oline' computation which was dead wrong when there are
empty lines (i.e., always).
Enhance it in order to look for and report unexpanded macro.
Don't let it pretend there are bugs in Autoconf (c:, the test
suite makes this scenario pretty unlikely as opposed to an actual
user bug.
Catch `m4_' too.
Remove the shell snippet which used to do this.
2000-08-07 12:07:17 +00:00
Akim Demaille
6e867eb5ee * acgeneral.m4 (_AC_INIT_PREPARE_ENVIRONMENT): Neutralize also
LC_COLLATE and LC_NUMERIC.
* autoconf.m4: Don't rely on character ranges with tr.
* doc/autoconf.texi (Special Shell Variables): Adjust.
2000-08-01 11:22:42 +00:00
Akim Demaille
b64f36dee1 * autoconf.sh (--warnings): Catch no-category', not nocategory'.
* autoheader.sh: Likewise.
* acgeneral.m4 (_AC_WARNING_IFELSE): Adjust.
2000-07-28 07:41:52 +00:00
Akim Demaille
9150c0ede6 Make it clear that the regular user does not need --macrodir.
In fact, rename this option as -A, --autoconf-dir.

* autoconf.sh: Complain when -m, --macrodir is used.
Accept -A, --autoconf-dir.
Use $autoconf_dir instead of $AC_MACRODIR.
Adjust --help.
* autoheader.sh: Likewise.
* autoscan.sh: Likewise.
* autoupdate.sh: Likewise.
Use $optarg.
* autoreconf.sh: Likewise.
* doc/autoconf.texi: Adjust.
* tests: Adjust the test suite.
2000-07-19 09:03:53 +00:00
Akim Demaille
80ad59d16d * autoreconf.sh: Forward --debug to sub tools.
Let them share the same tmp dir.
2000-07-19 08:54:44 +00:00
Akim Demaille
71773fbd5f * acspecific.m4 (AC_MING32): Rename as AC_MINGW32. 2000-07-19 08:22:58 +00:00
Akim Demaille
a057e62853 Make it easier to trace what autoreconf does.
* autoheader.sh: Be more verbose, and always report your name in
verbose messages.
* autoconf.sh: Likewise.
* autoreconf.sh: Likewise.
(update.sh): Redirect ls's stderr to /dev/null.
2000-07-13 13:38:45 +00:00
Akim Demaille
17680fe3fb * autoconf.sh (_ac_warnings): Fix call to tr.
Reported by Johan Danielsson.
2000-07-12 16:33:38 +00:00
Akim Demaille
d899114564 Set autoconf's default warnings to `syntax'.
In fact, honor the most recent specification in the concatenation
of `syntax',$WARNINGS,<options> in that order.
Implement support for `none' and `noCATEGORY' so that the options
may override the previous choices.
Suggested by Didier Verna.

* acgeneral.m4 (_AC_WARNING_IFELSE): New macro.
(AC_WARNING_IFELSE): Use this macro to implement the new specs.
(AC_WARNING): The empty category must not be used, default to
`syntax'.
* doc/autoconf.texi (autoconf Invocation, Reporting Messages): Adjust.
* autoconf.sh: Adjust.
Use `optarg' to fetch the arguments of options.
Fix a bug in the handling of `--trace='.

* acgeneral.m4 (AC_CACHE_VAL): Typo: the macro was complaining iff
it shouldn't have.
2000-07-10 10:23:08 +00:00
Akim Demaille
289b6c7a22 * autoconf.sh (task install): We no longer use AC_INCLUDE. 2000-07-10 10:12:44 +00:00