Commit Graph

713 Commits

Author SHA1 Message Date
Akim Demaille
a7010bd78c * acgeneral.m4 (AC_INCLUDES_DEFAULT): Force the newline to avoid
bad surprises.
Reported by Jim.
2001-01-18 09:16:25 +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
Pavel Roskin
23ef1d703a * m4sugar.m4 (m4_normalize): New macro - superposition of
m4_flatten and m4_strip.
(m4_join): Use m4_normalize.
* acgeneral.m4 (AC_FOREACH): Use m4_normalize.
(AC_CONFIG_HEADERS): Normalize the first argument.
(AC_CONFIG_LINKS): Likewise.
(AC_CONFIG_SUBDIRS): Likewise.
2001-01-17 15:23:31 +00:00
Akim Demaille
6da34540fe * acgeneral.m4 (_AC_OUTPUT_SUBDIRS): Quote $ac_sub_srcdir in case
it has IFS characters.
2001-01-17 08:54:52 +00:00
Akim Demaille
9cb72c7248 Work around the Ultrix limitations on ``multiple redirections''.
Reported by Harlan Stenn.
* acgeneral.m4 (_AC_EVAL_STDERR): New.
(_AC_PREPROC_IFELSE): Use it.
2001-01-16 20:46:00 +00:00
Akim Demaille
b0f816c05c * acgeneral.m4 (_AC_INIT_LOG_COMPLETE): Eve out from AC_OUTPUT.
(_AC_INIT_DEFAULTS, AC_OUTPUT): Use it.
2001-01-16 10:46:37 +00:00
Akim Demaille
10498c169e * doc/autoconf.texi: Lots of additions and changes.
(File Descriptors): New.
(Limitations of Make): New.
2001-01-16 10:45:22 +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
3becb30f56 When default headers are used, check for their presence.
Suggested by Jim.
* acgeneral.m4 (_AC_INIT_DEFAULTS): Don't define
ac_includes_default, since...
(_AC_INCLUDES_DEFAULT_REQUIREMENTS): this new macro does.
(AC_INCLUDES_DEFAULT): Require the former when default includes
are used.
(AC_CHECK_MEMBERS, _AC_CHECK_TYPE_NEW): Don't require
AC_HEADERS_STDC, that's a job for stupendous AC_INCLUDES_DEFAULT.
* acfunctions.m4 (AC_FUNC_MALLOC): Check for stdlib.h.
2001-01-16 10:21:44 +00:00
Akim Demaille
59ecd7666a * acgeneral.m4 (AC_VAR_INDIR_IFELSE): Move as...
* m4sh.m4 (AS_LITERAL_IF): this.
(AS_IFELSE): Rename as...
(AS_IF): this.
2001-01-15 07:29:24 +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
af3f563429 * acgeneral.m4 (_AC_EVAL, AC_TRY_EVAL, AC_TRY_COMMAND): Be a
single statement, so that one can make pipes with AC_TRYs, just as
in 2.13.
2000-12-22 10:12:26 +00:00
Akim Demaille
d1b71fdc7f * acgeneral.m4 (_AC_PREPROC_IFELSE): Use ac_status as set by
AC_TRY_EVAL.
(_AC_COMPILE_IFELSE, _AC_LINK_IFELSE, _AC_RUN_IFELSE): More alike,
using AS_IFELSE, and systematically AC_TRY_COMMAND when testing
something (for the logs).
2000-12-15 07:48:41 +00:00
Akim Demaille
dfe7f821d1 * aclang.m4 (_AC_PROG_PREPROC_WORKS): Use _AC_PREPROC_IFELSE.
* acgeneral.m4 (_AC_TRY_CPP): Its last use was that above, so
inline it into...
(_AC_PREPROC_IFELSE): here.
2000-12-15 07:48:17 +00:00
Akim Demaille
81bd474542 * acgeneral.m4 (_AC_EVAL): New.
(AC_TRY_EVAL, AC_TRY_COMMAND): Use it.
2000-12-15 07:47:29 +00:00
Akim Demaille
9dc8609370 * acgeneral.m4 (_AC_PREPROC_IFELSE, AC_PREPROC_IFELSE): New.
(AC_TRY_CPP): Use AC_PREPROC_IFELSE.
(AC_CHECK_MEMBER, AC_CHECK_DECL, _AC_CHECK_TYPE_NEW): Quote
properly.
* acheaders.m4 (AC_CHECK_HEADER): Quote properly, use
AC_PREPROC_IFELSE.
* acspecific.m4 (_AC_PATH_X_DIRECT): Use AC_PREPROC_IFELSE.
2000-12-15 07:47:02 +00:00
Akim Demaille
1088d101b2 AS_ERROR was not properly saving data in the log file.
* sh.m4 (AS_WARN, AS_ERROR): Use AS_MESSAGE.
(_AS_ECHO): Fix quotation.
(AS_MESSAGE): Use `as_me'.
* acgeneral.m4: More banners in the log.
(_AC_INIT_DEFAULTS): Compute as_me before using it.
2000-12-12 10:53:41 +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
482e84f65c * m4sugar.m4 (ifelse): Rename as...
(m4_if): this.
* autoconf.m4 (ifelse): Restore.
2000-12-06 08:58:41 +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
Pavel Roskin
dd6c961a3e * acgeneral.m4 (_AC_OUTPUT_CONFIG_STATUS): Don't escape
backquotes in AC_MSG_ERROR. Fix error message.
2000-12-02 01:40:17 +00:00
Akim Demaille
dc583e3ac8 * acgeneral.m4 (_AC_OUTPUT_CONFIG_STATUS): Fix the portability of
the default assignment of CONFIG_FILES, CONFIG_HEADERS,
CONFIG_LINKS and CONFIG_COMMANDS.
2000-11-29 18:20:01 +00:00
Akim Demaille
b5dcefc876 * acgeneral.m4 (AC_CACHE_SAVE): Use the `clear' trick to work
around broken seds.
(_AC_OUTPUT_HEADERS, _AC_OUTPUT_FILES): Rename the sed labels to
match the Autoconf documentation.
2000-11-29 17:57:55 +00:00
Akim Demaille
1e84e1a44b * doc/autoconf.texi (Shell Substitutions): More on the variations
around ${foo=bar}.
(Assignments): Rewrite as a summary of the previous section.
* acgeneral.m4 (AC_CACHE_SAVE): Be protected against the Solaris'
`${foo='${bar}'}' bug.
2000-11-29 17:43:00 +00:00
Akim Demaille
0efbaeec6b * acgeneral.m4 (_AC_OUTPUT_HEADERS, _AC_OUTPUT_FILES): Don't use
`... echo "error: \`$f'" ...`
as it's not portable to BSDI 1.3.
Do this instead:
   `... echo "error: $f" ...`
Reported by Daniele Arena.
2000-11-29 16:08:43 +00:00
Akim Demaille
0af3f6af7b * m4sugar.m4 (ifval, ifset, ifdef, ifndef, m4_ifvanl): Rename as...
(m4_ifval, m4_ifset, m4_ifdef, m4_ifndef, m4_ifvaln): this.
(m4_n): New macro.
(m4_ifvaln): Use it.
* autoconf.m4 (ifdef): Restore it.
2000-11-29 10:09:44 +00:00
Akim Demaille
ce8108c250 Transform Autotest's body into a `for test; case $test'.
As a known side effect, currently any code outside
AT_SETUP/AT_CLEANUP is discarded.
* acgeneral.m4 (_m4_divert(KILL)): Move to...
* m4sugar.m4: here.
* tests/atgeneral.m4 (AT_INIT): Use m4_divert_push/pop instead of
m4_divert.
Put all the tests inside a for;case.
Define TESTS.
(AT_SETUP, AT_CLEANUP): Open/close each case.
2000-11-23 09:47:45 +00:00
Akim Demaille
be1c95cd56 Move divert and undivert into m4_.
* m4sugar.m4 (m4_divert, divert, undivert): Rename as...
(m4_divert_text, m4_divert, m4_undivert): this.
* autoconf.m4 (divert, undivert): Restore them for user macros only.
2000-11-23 09:46:48 +00:00
Pavel Roskin
f6c0e48d2c * acgeneral.m4 (_AC_RUN_IFELSE): `==' in test is not portable,
replace with `='.
2000-11-20 16:50:13 +00:00
Akim Demaille
f168972f9c Typo. 2000-11-17 17:17:56 +00:00
Akim Demaille
9fa0c60a42 * acgeneral.m4 (_AC_INIT_DEFAULTS): Also include `PATH' and
`/bin/machine' in the log.
2000-11-17 17:09:35 +00:00
Akim Demaille
cf0baa2fa6 Let AC_TRY_RUN be more verbose
* acgeneral.m4 (_AC_RUN_IFELSE): Instead of canceling the output
of the test program, save it into the log.
Save the exit status, and report it in the log when non zero.
Just use `(./conftest)' instead of `(./conftest; exit)'.
2000-11-17 16:56:16 +00:00
Akim Demaille
7abc919fd0 * acgeneral.m4 (_AC_INIT_DEFAULTS) <ac_includes_default>: Include
sys/stat.h.
* acspecific.m4 (AC_STRUCT_ST_BLKSIZE, AC_STRUCT_ST_BLOCKS)
(AC_STRUCT_ST_RDEV): Simplify.
* acfunctions.m4 (AC_FUNC_MMAP): Include sys/stat.h unconditionally.
* doc/autoconf.texi (Default Includes): Adjust.
(Particular Structures) <AC_STRUCT_ST_BLKSIZE, AC_STRUCT_ST_RDEV>:
Adjust.
2000-11-17 16:45:24 +00:00
Akim Demaille
3e56675bc8 A single m4_require is enough.
* m4sugar.m4 (_m4_require): $2 defaults to $1.
Rename as...
(m4_require): this.
* acgeneral.m4 (_AC_REQUIRE): Remove, use m4_require if you want
to get into the gory details.
2000-11-14 11:06:37 +00:00
Akim Demaille
d18e3cbb57 * acgeneral.m4 (_AC_INIT_DEFAULTS_ENVIRONMENT): Rename as...
* m4sh.m4 (AS_SHELL_SANITIZE): this.
2000-11-14 11:01:44 +00:00
Akim Demaille
300fbf12d3 Set AC_LANG_PREPROC_REQUIRE which replaces AC_REQUIRE_CPP.
The main difference is that the former requires AC_LANG_COMPILER.
* aclang (AC_LANG_PREPROC, AC_LANG_PREPROC(C), AC_LANG_PREPROC(C++))
(AC_LANG_PREPROC(Fortran 77), AC_LANG_PREPROC_REQUIRE): New
macros.  Issue a warning when looking for the Fortran 77
preprocessor instead of an error.
(AC_LANG_COMPILER): Check that it is run before the corresponding
AC_LANG_PREPROC.
(AC_PROG_C
(AC_LANG_COMPILER_REQUIRE): Don't call directly
AC_LANG_COMPILER(_AC_LANG), rather invoke AC_LANG_COMPILER so that
the generic code in AC_LANG_COMPILER is run.
(AC_REQUIRE_CPP): Use AC_LANG_PREPROC_REQUIRE.
(AC_PROG_CC, AC_PROG_CXX): Don't require being run before the
corresponding AC_LANG_PREPROC: AC_LANG_COMPILER does it.
Propagate AC_LANG_PREPROC_REQUIRE.
* acgeneral.m4 (AC_TRY_CPP, AC_EGREP_CPP): Use it instead of
AC_REQUIRE_CPP.
* acspecific.m4 (_AC_DECL_YYTEXT, AC_PATH_X): Don't
AC_REQUIRE_CPP, inner macro will do it.
* aclang.m4 (AC_PROG_GCC_TRADITIONAL, AC_C_STRINGIZE)
(AC_C_PROTOTYPES): Likewise.
(AC_C_STRINGIZE): Yeeks!  The body of AC_CACHE_CHECK was not
quoted.  Use @%:@ do assist Emacs.
For some reason (don't ask), this revamping revealed that
AC_PROG_CC_STDC, because of the `break', does not clean its tmp
files.
* aclang.m4 (AC_PROG_CC_STDC): Extract the creation of conftest.c
out of AC_COMPILE_IFELSE.
Be sure to clean the tmp files.
2000-11-14 10:44:27 +00:00
Akim Demaille
a8ce12b0d6 * acfunctions.m4 (AC_FUNC_ALLOCA): Don't require AC_PROG_CPP,
since (i) you actually need a compiler, (ii) AC_TRY_LINK handles
it.
* acheaders.m4 (AC_HEADER_STDC): Don't require AC_PROG_CPP,
AC_TRY_CPP does it.
2000-11-14 10:38:57 +00:00
Akim Demaille
e555c2fb78 Create acheaders.m4.
* acgeneral.m4 (AC_CHECK_HEADER, AC_CHECK_HEADERS)
(AH_CHECK_HEADERS): Move to...
* acheaders.m4: here, a new file.
* acspecific.m4	(_AC_CHECK_HEADER_DIRENT, AH_CHECK_HEADERS_DIRENT)
(AC_HEADER_DIRENT, AC_HEADER_MAJOR, AC_HEADER_STAT, AC_HEADER_STDC)
(AC_HEADER_SYS_WAIT, AC_HEADER_TIME)
(_AC_HEADER_TIOCGWINSZ_IN_TERMIOS_H)
(_AC_HEADER_TIOCGWINSZ_IN_SYS_IOCTL, AC_HEADER_TIOCGWINSZ): Move
to...
* acheaders.m4: here.
2000-11-14 10:31:39 +00:00
Akim Demaille
cc2c99e90b Move AC_MSG_* into M4sh.
* acgeneral.m4 (_AC_SH_QUOTE, _AC_SH_QUOTE_IFELSE, _AC_ECHO): Move
to...
* m4sh.m4 (_AS_QUOTE, _AS_QUOTE_IFELSE, _AS_ECHO): here.
(AS_MESSAGE, AS_WARN, AS_ERROR): New.
* acgeneral.m4 (AC_MSG_NOTICE, AC_MSG_WARN, AC_MSG_ERROR): Use them.
(AC_FD_MSG, AC_FD_LOG): Be AU_ALIAS'es of...
(AS_MESSAGE_FD, AS_MESSAGE_LOG_FD): new.
Adjust all dependencies.
2000-11-14 10:11:43 +00:00
Akim Demaille
2487c47037 * acgeneral.m4: Spread some AS_EXIT and AC_MSG_ERROR.
(AC_OUTPUT): Don't play with trap, use ac_clean_files.
2000-11-14 10:09:20 +00:00
Akim Demaille
371ebd560e Use AC_MSG_ERROR in `config.status', but adjust AC_MSG_* to use $0
instead of hard coded `configure'.
* acgeneral.m4 (AC_COPYRIGHT): s/configure.in/__file__/.
(_AC_INIT_DEFAULTS_FDS): Append to AC_FD_LOG instead of creating
it.  No longer insert the configure banner.
(_AC_INIT_DEFAULTS): Create config.log with the banner.
Define `as_me'.
(_AC_INIT_PARSE_ARGS, _AC_INIT_PREPARE, AC_MSG_NOTICE)
(AC_MSG_CHECKING, AC_MSG_RESULT, AC_MSG_RESULT_UNQUOTED)
(AC_MSG_WARN, AC_MSG_ERROR, AC_MSG_ERROR, AC_TRY_CPP)
(_AC_COMPILE_IFELSE, _AC_LINK_IFELSE, _AC_RUN_IFELSE)
(_AC_OUTPUT_FILES, _AC_OUTPUT_HEADERS, _AC_PROG_F77_V_OUTPUT): Use
`$as_me' instead of `configure'.
(AC_OUTPUT): Get rid of the UCA, and of the empty line when
dumping confdefs.h into config.log.
(_AC_OUTPUT_CONFIG_STATUS): Use _AC_INIT_DEFAULTS_FDS.
Print a banner.
Use AC_MSG_ERROR and AC_MSG_NOTICE.
* acgeneral.m4 (AC_CACHE_LOAD, _AC_OUTPUT_FILES, _AC_OUTPUT_LINKS)
(_AC_OUTPUT_HEADERS):  Use AC_MSG_NOTICE.
* tests/semantics.at (missing templates): Adjust.
2000-11-14 10:05:14 +00:00
Pavel Roskin
03d06c0d47 * acfunctions.m4: Always quote first argument of AC_MSG_ERROR,
AC_MSG_WARN, AC_MSG_CHECKING, AC_MSG_RESULT,
AC_MSG_RESULT_UNQUOTED.
* acgeneral.m4: Likewise.
* aclang.m4: Likewise.
* acspecific.m4: Likewise.
* configure.in: Likewise.
* doc/autoconf.texi: Likewise.
2000-11-11 05:59:21 +00:00
Akim Demaille
f9fd1e4edc * m4sh.m4 (AS_MKDIR_P, AS_DIRNAME_SED): Don't shell quote $1.
Adjust callers.
Reported by Paul Eggert.
* tests/m4sh.at: Sort.
2000-11-10 10:14:44 +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
b4ae99995f * acgeneral.m4 (AC_CHECKING): Is not an alias of AC_MSG_NOTICE,
hence use AU_DEFUN, not AU_ALIAS.
2000-11-07 10:50:29 +00:00
Akim Demaille
b4a8fae52b AC_CONFIG_AUX_DIR_DEFAULTS overrides AC_CONFIG_AUX_DIR. Ouch.
Reported by Paul Martinolich.
* acgeneral.m4 (AC_PROVIDE): Don't forget to `m4_provide'!!!
Tss, novice...
* tests/base.at (AC_REQUIRE & AC_PROVIDE): New test.
2000-11-03 16:02:54 +00:00
Akim Demaille
ded24ff599 * autoconf.m4 (define): Reestablish only after having read the
`ac' files.
Adjust all the Autoconf code to use `m4_define', not `define'.
2000-11-03 13:41:40 +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
Akim Demaille
7e4f776a09 * autoconf.m4: Instead of reactivating the macros before reading
Autoconf's file, do it afterwards, so that Autoconf promotes the
right use, but users still can use the old names.
Of course this revealed numerous non updated uses of old macros in
Autoconf's files.  Adjust them.
But for the time being, keep `define' alive for Autoconf.
2000-11-03 11:14:48 +00:00
Akim Demaille
1c614b9e79 AC_REQUIRE and AC_DEFUN_ONCE don't work properly together. This
caused strange messages about AC_ARG_PROGRAM.
Reported by Jim Meyering.
* acgeneral.m4 (AC_DEFUN_ONCE): Fix the indirection to
m4_defun_once.
* m4sugar.m4 (m4_defun_once): Also define
`m4_location(MACRO-NAME)'.  s/ac_warn/m4_warn/.
Use `m4_defn' to read `m4_location'.
* tests/base.at (AC_REQUIRE & AC_DEFUN_ONCE): Two new tests.
2000-11-03 10:39:27 +00:00
Akim Demaille
9fe2458f8d Set up config.log earlier so that AC_MSG_ERROR and AC_MSG_WARN can
be used early.
* acgeneral.m4 (_AC_INIT_DEFAULTS): Call `_AC_INIT_PREPARE_FDS'.
(_AC_INIT_PREPARE): Don't.
(_AC_INIT_PREPARE_ENVIRONMENT, _AC_INIT_PREPARE_FDS): Rename as...
(_AC_INIT_DEFAULTS_ENVIRONMENT, _AC_INIT_DEFAULTS_FDS): these,
since they are called from `_AC_INIT_DEFAULTS', not
`_AC_INIT_PREPARE'.
(_AC_INIT_DEFAULTS_FDS): Dump `$@' in config.log, not
`$ac_configure_args' which is not computed yet.
2000-11-03 10:07:40 +00:00
Akim Demaille
22673e406c Formatting changes. 2000-11-03 09:43:33 +00:00
Akim Demaille
9fe8a5d0c2 * acgeneral.m4 (_AC_INIT_PARSE_ARGS): TRIPLET can include `_' and
`-'.
Reported by Andreas Jaeger.
2000-11-03 09:22:14 +00:00
Akim Demaille
3f580f38ab * m4sh.m4 (_AS_UNSET_PREPARE): New macro, eved from
_AC_INIT_PREPARE_ENVIRONMENT, and fixed: set `FOO' before trying
to unset it: `unset' exits 1 if the variable is not defined.
(AS_UNSET): Require it.  Use `as_unset' not `ac_unset'.
* acgeneral.m4 (_AC_INIT_PREPARE_ENVIRONMENT): Use it.
2000-11-03 09:16:21 +00:00
Akim Demaille
75390304e0 * m4sugar.m4 (builtin, changecom, changequote, decr, dumpdef)
(incr, index, indir, len, syscmd, sysval, traceoff, traceon):
Rename as...
(m4_builtin, m4_changecom, m4_changequote, m4_decr, m4_dumpdef)
(m4_incr, m4_index, m4_indir, m4_len, m4_syscmd, m4_sysval)
(m4_traceoff, m4_traceon): these.
* autoconf.m4 (builtin, changecom, decr, incr, index, indir, len)
(syscmd, sysval, traceoff, traceon): Reactivate.
2000-11-03 09:08:02 +00:00
Akim Demaille
d95de46af1 * m4sugar.m4 (m4_rename_m4, m4_copy_unm4): New macros.
Use them.
(debugfile, debugmode, m4exit, m4wrap, maketemp, patsubst, regexp)
(substr, translit, m4_wrap): Rename as...
(m4_debugfile, m4_debugmode, m4_exit, m4_wrap, m4_maketemp)
(m4_patsubst, m4_regexp, m4_substr, m4_translit, m4_text_wrap): these.
Adjust all dependencies.
* acgeneral.m4: Adjust.
* tests/m4sugar.at: Adjust.
* autoconf.m4 (m4exit, patsubst, regexp, substr, translit):
Reestablish them.
2000-11-03 08:53:26 +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
Akim Demaille
429b2e9e9d * m4sugar.m4 (m4_fatal): Dump the expansion stack.
* acgeneral.m4 (AC_FATAL): Use m4_fatal.
2000-11-01 16:33:18 +00:00
Akim Demaille
4b19491f44 Move the `defun' handling into M4sugar.
* m4sugar.m4 (_m4_divert(GROW), _m4_expansion_stack_dump)
_m4_defun_pro, _m4_defun_epi, m4_defun, $1, m4_defun_once)
m4_before, _m4_require, m4_require, m4_expand_once, m4_provide)
m4_provide_ifelse): New macros.
* acgeneral.m4 (_AC_EXPANSION_STACK_DUMP, _AC_DEFUN_PRO)
_AC_DEFUN_EPI): Removed.
(AC_DEFUN, AC_DEFUN_ONCE, _AC_REQUIRE, AC_REQUIRE)
AC_PROVIDE_IFELSE, AC_FATAL): Reimplement atop M4sugar.
2000-11-01 15:56:37 +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
a24439a762 * m4sh.m4 (AS_EXIT): Use "false" for exit code 1, ":" for 0.
* acgeneral.m4 (AC_MSG_ERROR): Don't use m4_default for the
        second argument - AS_EXIT takes care of it.
2000-10-30 19:47:58 +00:00
Akim Demaille
4c40aa086f Move the handling of diversions into M4sugar.
* acgeneral.m4 (_AC_DIVERT, AC_DIVERT, AC_DIVERT_PUSH)
(AC_DIVERT_POP): Move to...
* m4sugar.m4 (_m4_divert, m4_divert, m4_divert_push)
(m4_divert_pop): here.
* acgeneral.m4: Adjust to use only the M4sugar macros.
Nevertheless...
(AC_DIVERT_PUSH, AC_DIVERT_POP): New wrappers around the M4sugar
macros.
(_AC_DIVERT(...)): Rename all the diversions names as...
(_m4_divert(...)): these.
2000-10-30 19:01:24 +00:00
Pavel Roskin
acf30e3fb0 * m4sh.m4 (AS_EXIT): New macro that exits and makes sure that $?
is set correctly within the exit trap.
        (AS_TMPDIR): Use it.
        * acgeneral.m4 (AC_MSG_ERROR): Likewise,
2000-10-30 12:29:36 +00:00
Pavel Roskin
c27f9181bd * acgeneral.m4 (AC_CHECK_TOOL): Set VARIABLE also when using the
cache. From Jim Meyering.
        (AC_PATH_TOOL): Likewise.
2000-10-30 04:04:18 +00:00
Pavel Roskin
733ac61725 * acgeneral.m4 (_AC_INIT_PREPARE): Don't use a newline before
accessing $? - newlines in "trap" reset $? to 0 on FreeBSD 4.0.
2000-10-30 00:59:45 +00:00
Jim Meyering
82f51be8e4 (AC_MSG_WARN): Now that this macro expands to
two stmts, enclose them in `{' ... `}'.
2000-10-29 19:43:53 +00:00
Akim Demaille
a14a5e7ca5 Move the Autoconf independent shell macros into the file
`shell.m4' and the name space `AS_*'.

* acgeneral.m4 (AC_SHELL_IFELSE, _AC_SHELL_TMPDIR, AC_SHELL_UNSET)
(AC_SHELL_MKDIR_P, AC_SHELL_DIRNAME): Rename and move to...
* shell.m4 (AS_IFELSE, AS_TMPDIR, AS_UNSET, AS_MKDIR_P)
(AS_DIRNAME): here, a new file.
Adjust all dependencies.

* tests/base.m4 (m4_wrap): Eve out into...
* tests/shell.m4: here, new file.
* tests/base.m4 (AC_SHELL_MKDIR_P)
(AC_SHELL_DIRNAME & AC_SHELL_DIRNAME_SED): Eve out into...
* tests/m4sugar.m4 (AS_MKDIR_P, AS_DIRNAME & AS_DIRNAME_SED):
here, new file.
Adjust the test suite.
2000-10-25 17:51:10 +00:00
Akim Demaille
35853557ac * acgeneral.m4 (AC_SHELL_DIRNAME): Split its code into...
(AC_SHELL_DIRNAME_EXPR, AC_SHELL_DIRNAME_SED): these new macros.
* tests/base.m4 (AC_SHELL_DIRNAME & AC_SHELL_DIRNAME_SED): New
test.
2000-10-25 15:04:29 +00:00
Akim Demaille
27366d34e5 * acgeneral.m4 (AC_SHELL_DIRNAME): The sed fall back was producing
twice the output for it was not using `-n' and used `p'.  Remove
the latter.
2000-10-25 10:25:15 +00:00
Akim Demaille
1cc2c50bf6 * acgeneral.m4 (_AC_INIT_PREPARE_FDS): Give some information on
the host in config.log.
2000-10-25 09:14:22 +00:00
Pavel Roskin
be4dbe29de * acgeneral.m4 (_AC_CACHE_DUMP): Add a missing separator for sed
commands.
2000-10-24 19:24:40 +00:00
Akim Demaille
4bf20a4eb1 * acgeneral.m4 (AT_FILE_DEPENDENCY): Rename as...
(AC_FILE_DEPENDENCY_TRACE): this.
2000-10-24 18:39:06 +00:00
Akim Demaille
b60b89ed66 * m4sugar.m4: (m4_tolower, m4_toupper): New macros.
* acgeneral.m4 (AC_PREFIX_PROGRAM): Use m4_toupper().
* aclang.m4 (AC_F77_FUNC): Use m4_toupper()/m4_tolower().
2000-10-24 17:25:18 +00:00
Akim Demaille
a8801b4f24 Start avoiding dependence upon character ranges.
* acgeneral.m4 (_AC_INIT_DEFAULTS): Introduce `ac_cr_AZ',
`ac_cr_az', `ac_cr_09', `ac_cr_alnum' and `ac_hostname'.
Spread their use.
2000-10-24 16:54:48 +00:00
Akim Demaille
1684245454 * acgeneral.m4 (AC_OUTPUT): Don't play with `trap'.
(_AC_INIT_PREPARE): Trap after having created config.log.
Also trap on 0.
When trapped, report why in config.log.
(AC_MSG_WARN, AC_MSG_ERROR): Also output the message in
config.log.
2000-10-24 16:37:14 +00:00
Akim Demaille
6c4993c5a5 * acgeneral.m4 (_AC_SHELL_DIRNAME): Rename as...
(AC_SHELL_DIRNAME): this.
s/X$1/X[]$1/ so that when $1 is a macro, it's given a chance to be
expanded.
(AC_PREFIX_PROGRAM): Use AC_SHELL_DIRNAME.
Quote properly.
2000-10-24 11:59:45 +00:00
Akim Demaille
6e09a63ca2 Since GNU M4 now comes with its libm4 (binary), to avoid
ambiguities let's rename `libm4' (M4 code) as `m4sugar':
	Readability And Greater Understanding Stands 4 M4sugar
name coined by Lars J. Aas.
* libm4.m4: Rename as...
* m4sugar.m4: this.
All dependencies adjusted.
2000-10-23 19:13:37 +00:00
Akim Demaille
161112fd78 In order to check that all the CPP symbols which are AC_DEFINE'd
are properly templated, autoheader traces
AC_DEFINE/AC_DEFINE_UNQUOTED.  Only literals can be traced, and
actually tracing non literals produces invalid autoheader input.
Hence, provide a means to trace calls to
AC_DEFINE/AC_DEFINE_UNQUOTED with literals.
* acgeneral.m4 (AC_DEFINE_TRACE, AC_DEFINE_TRACE_LITERAL): New
macros.
(AC_DEFINE, AC_DEFINE_UNQUOTED): Use AC_DEFINE_TRACE.
* autoheader.sh: Trace AC_DEFINE_TRACE_LITERAL, not
AC_DEFINE/AC_DEFINE_UNQUOTED.
2000-10-23 18:32:17 +00:00
Akim Demaille
7009796166 Let autoupdate change AC_PREREQ to require the current version of
Autoconf.
* acgeneral.m4 (_AC_VERSION_UNLETTER, _AC_VERSION_COMPARE): Move
to...
* libm4.m4 (m4_version_unletter, m4_version_compare): here.
Adjust dependencies.
* acgeneral.m4 (AU::AC_PREREQ): New macro.
* autoupdate.sh: Fail when `m4 input.m4' fails.
2000-10-23 17:41:27 +00:00
Pavel Roskin
0c101b88ae * acfunctions.m4 (AC_FUNC_CHOWN): Remove temporary files on exit.
(AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Likewise.
        (AC_FUNC_SELECT_ARGTYPES): Likewise.
        (AC_FUNC_UTIME_NULL): Likewise.
        * acgeneral.m4 (_AC_COMPUTE_INT): Likewise.
        * aclang.m4 (_AC_F77_NAME_MANGLING): Likewise.
        * acspecific.m4 (_AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
2000-10-23 04:07:42 +00:00
Pavel Roskin
1328e61cb7 * NEWS: Documented changes in AC_PROG_CPP and AC_TRY_CPP.
* doc/autoconf.texi (Compilers and Preprocessors): Likewise.
        * acgeneral.m4 (AC_TRY_CPP): Comment changes.
2000-10-20 00:15:34 +00:00
Akim Demaille
1ff3f472d8 * acgeneral.m4 (AC_CHECK_TOOLS): Use `$' when reading a variable. 2000-10-18 17:16:10 +00:00
Akim Demaille
37e789c4a5 * acspecific.m4 (AC_PROG_LN_S): If neither ln -s' nor ln' work,
fall back to `cp'.
2000-10-18 12:18:27 +00:00
Akim Demaille
27acf968e7 * acgeneral.m4 (AC_CHECK_TOOL): As AC_CHECK_PROG first tests the
value of the VARIABLE argument when looking for executables, we
need to set it to the correct value from AC_CHECK_TOOL when not
just passing on the incoming VARIABLE directly.
(AC_CHECK_TOOLS, AC_PATH_TOOL): Likewise.
2000-10-17 16:34:10 +00:00
Akim Demaille
d470846d3e * acgeneral.m4 (_AC_INIT_PREPARE): Move the
_AC_INIT_PREPARE_ENVIRONMENT invocation to...
(_AC_INIT_DEFAULTS): here,  so that we keep the same known
environment for more of the script.
2000-10-17 12:48:50 +00:00
Akim Demaille
2d238e3813 * acgeneral.m4 (AC_CHECK_PROG, AC_CHECK_PROGS, AC_PATH_PROG)
(AC_PATH_PROGS, AC_PATH_TOOL, AC_CHECK_TOOL, AC_CHECK_TOOLS): Fix
the quotation.
(AC_PATH_TOOL, AC_CHECK_TOOL, AC_CHECK_TOOLS): Check with the
$ac_tool_prefix iff it is not empty.
2000-10-17 09:08:32 +00:00
Akim Demaille
38fed7fb9b * acgeneral.m4 (_AC_COMPILE_IFELSE, _AC_LINK_IFELSE)
(_AC_RUN_IFELSE): Before compiling, remove the files expected to
be produced.
(_AC_LINK_IFELSE, _AC_RUN_IFELSE): You don't create object files,
so don't remove them.
2000-10-17 08:41:26 +00:00
Akim Demaille
be8f881881 * acgeneral.m4 (AC_FATAL): Use _AC_EXPANSION_STACK_DUMP.
(_AC_REQUIRE): Use AC_FATAL.
2000-10-17 08:36:20 +00:00
Akim Demaille
b69b909d8c Give a means to report where the macros have been defined in error
messages.
* libm4.m4 (m4_location): New macro.
(m4_errprint): Rename as...
(m4_diagnose): this.  Use m4_location.
Adjust dependencies.
(m4_errprint): New macro, similar to `errprint' but for an
additional trailing `n'.
* acgeneral.m4 (AC_DEFUN, AC_DEFUN_ONCE): Define `m4_location($1)'
to the current location (i.e., that of the definition of $1).
(_AC_DEFUN_PRO, _AC_REQUIRE): Also push the location of the
current macro in the stack.
(_AC_EXPANSION_STACK_DUMP): Adjust.
2000-10-17 08:07:59 +00:00
Akim Demaille
11e6ca2c9b * aclang.m4 (_AC_LANG_COMPILER_GNU): New macro, which unifies...
(_AC_PROG_F77_GNU, _AC_PROG_CC_GNU, _AC_PROG_CXX_GNU): Remove.
Adjust dependencies.
(ac_cv_prog_gcc, ac_cv_prog_gxx, ac_cv_prog_g77): AU_ALIAS'ed.
2000-10-16 18:40:19 +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
aee199fcb2 * acgeneral.m4 (AC_LINKER_OPTION): Ahem, err, use `$' when
consulting a variable...
2000-10-13 10:15:56 +00:00
Akim Demaille
5978c4f0c5 * acgeneral.m4: Typos in comments spotted by Pavel. 2000-10-13 07:50:07 +00:00
Akim Demaille
4b06a539ce * acgeneral.m4 (AC_CONFIG_SUBDIRS): Fixed nasty typo. 2000-10-12 16:32:13 +00:00
Akim Demaille
e7ee56216e * acgeneral.m4 (_AC_SH_QUOTE): Issue an `obsolete' warning for use
of backquotes, instead of a `syntax' warning.
2000-10-12 14:45:05 +00:00
Akim Demaille
793b1c797f * acgeneral.m4 (AC_VAR_IN_INDIR, AC_VAR_IF_SET): Rename as...
(AC_VAR_INDIR_IFELSE, AC_VAR_SET_IFELSE): this.
2000-10-12 14:35:31 +00:00
Akim Demaille
55ee762412 Diagnose AC_REQUIRE circular dependencies.
* acgeneral.m4 (_AC_DEFUN_PRO, _AC_DEFUN_EPI): Keep a stack of
macro expansions, _AC_EXPANSION_STACK.
Use `_AC_EXPANDING(FOO)' to record the fact that `FOO' is being
expanded.
(_AC_REQUIRE): Diagnose required macros which are already being
expanded.
Record in _AC_EXPANSION_STACK the AC_REQUIRE calls.
(_AC_EXPANSION_STACK_DUMP): New macro.
2000-10-12 10:12:43 +00:00
Pavel Roskin
5c7a7dab83 * acgeneral.m4 (_AC_COMPILE_IFELSE, _AC_LINK_IFELSE)
(_AC_RUN_IFELSE): New macros which are the former
AC_COMPILE_IFELSE etc. without AC_LANG_COMPILER_REQUIRE.
(AC_COMPILE_IFELSE, AC_LINK_IFELSE, AC_RUN_IFELSE): Use them.
2000-10-11 17:55:46 +00:00
Akim Demaille
505d2c60df * acgeneral.m4 (AC_RUN_IFELSE): Add missing executable suffix.
* aclang.m4 (_AC_LANG_COMPILER_WORKS): Likewise.
* aclang.m4 (AC_PROG_CC_C_O, AC_PROG_F77_C_O): Fix typos where
$objext were used instead of $ac_objext.
2000-10-11 14:51:28 +00:00