Commit Graph

1608 Commits

Author SHA1 Message Date
Paul Eggert
297876adf2 (AC_CHECK_PROG): Rewrite so that the "$@" problem does not come up. 2002-04-19 19:04:35 +00:00
Akim Demaille
ac07b92899 Comment changes. 2002-04-10 17:36:45 +00:00
Akim Demaille
9d658eddd9 * lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Install the Zsh
workaround for ${1+"$@"}.
* doc/autoconf.texi (Shell Substitutions): Explain it.
From Oliver Kiddle and Peter Stephenson.
Have M4sh perform minimal shell sanitizing.
* lib/m4sugar/m4sh.at (AS_SHELL_SANITIZE): Split the `_AS_PREPARE_*'
part into...
(_AS_PREPARE): this new macro.
(AS_PREPARE): New.
(AS_INIT): Invoke AS_SHELL_SANITIZE.
* tests/m4sh.at (AT_DATA_LINENO): Use _AS_PREPARE.
Adjust Autoconf and Autotest.
* lib/autoconf/general.m4 (_AC_INIT_DEFAULTS): Don't invoke
AS_SHELL_SANITIZE, AS_INIT did it, but invoke AS_PREPARE.
* lib/autotest/general.m4 (AT_INIT): Likewise.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS):
Invoke _AS_PREPARE (not AS_PREPARE) in addition to
AS_SHELL_SANITIZE.
Use this M4sh to generate Autoconf's shell scripts.
* tests/wrapsh.as: New, precursor of wrapsh.in.
* tests/Makefile.am: Include lib/freeze.mk to get the dependencies
on Autotest and M4sh.
($(TESTSUITE)): Use $(autotest_m4f_dependencies).
(wrapsh.in): New target.
* bin/autoconf.as: New, precursor of autoconf.in.
(autoconf.in): New target.
2002-04-10 15:58:19 +00:00
Andreas Schwab
c3e5a58406 * lib/autoconf/status.m4 (_AC_SRCPATHS): Handle empty
ac_top_builddir when setting ac_abs_top_builddir.
2002-04-09 11:15:32 +00:00
Andreas Schwab
193f800800 * lib/m4sugar/m4sh.m4 (_AS_PATH_WALK): Only simplify if path
contains no literal separators.
2002-04-04 13:35:05 +00:00
Akim Demaille
b7c024b172 * lib/autoconf/status.m4 (_AC_CONFIG_FILE, _AC_CONFIG_HEADER)
(_AC_CONFIG_COMMAND, _AC_CONFIG_LINK): New.
Use dnl, not the KILL diversion.
Extracted from...
(AC_CONFIG_FILES, AC_CONFIG_HEADERS, AC_CONFIG_COMMANDS)
(AC_CONFIG_LINKS): here.
Adjust.
Don't use the KILL diversion, as it kills spurious output, which
results in failures being hidden.
Use m4_defn where appropriate.
(AC_CONFIG_IF_MEMBER): Kill the real bug: a spurious parenthesis
after the second argument.
Use m4_defn.
* lib/autom4te.in (Autoconf, Autotest, M4sh): Don't pass --warning
syntax, as it is provided by M4sugar.
* tests/torture.at (Multiple AC_CONFIG_FILES): New.
2002-04-03 13:35:59 +00:00
Andreas Schwab
9dc0d53597 * lib/m4sugar/m4sugar.m4 (m4_bmatch): Make sure m4_bregexp is not
expanded if $# <= 2.
2002-04-03 11:11:46 +00:00
Akim Demaille
9b7a51e844 * lib/autoconf/lang.m4 (_AC_COMPILER_OBJEXT_REJECT)
(_AC_COMPILER_EXEEXT_REJECT): New.
Also recognize *.bb and *.bbg as compilation byproducts.
(_AC_COMPILER_EXEEXT_DEFAULT, _AC_COMPILER_EXEEXT_O)
(_AC_COMPILER_OBJEXT): Use them.
Fixes Debian #138666.
2002-04-03 09:27:04 +00:00
Peter Eisentraut
931312faea Integrate AC_PROG_CC_STDC into AC_PROG_CC.
* lib/autoconf/c.m4 (AC_PROG_CC_STDC): Rename to _AC_PROG_CC_STDC.
AU_DEFUN old name.  Use _AC_COMPILE_IFELSE.
(AC_PROG_CC): Call _AC_PROG_CC_STDC.
(AC_C_INLINE): Do not require AC_PROG_CC_STDC.
(AC_C_CONST): Same.
(AC_C_INLINE): Same.
(AC_C_PROTOTYPES): Same.  Require AC_PROG_CC instead.
* doc/autoconf.texi, NEWS: Document.
* tests/mktests.sh (au_exclude_list): Add AC_PROG_CC_STDC and
AC_C_CROSS.
2002-04-02 18:22:08 +00:00
Akim Demaille
3aec90e1cb * lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Invoke
_AS_MKDIR_P_PREPARE.
2002-04-02 15:14:09 +00:00
Kevin Ryde
980c227c4b * lib/autoconf/c.m4 (AC_C_INLINE): Test with a typedef return value,
to avoid versions of HP C which don't allow that.
2002-03-27 22:43:45 +00:00
Paul Eggert
4f473142a8 (_AS_BASENAME_PREPARE): New macro.
(AS_SHELL_SANITIZE): Invoke it.
(AS_BASENAME): AS_REQUIRE it, and use $as_basename.
2002-03-27 20:33:03 +00:00
Akim Demaille
3168ea4c07 * doc/autoconf.texi (Introduction): The GNATS base moved. 2002-03-26 09:19:51 +00:00
Paul Eggert
b07b6a5b8e (_AS_LINENO_PREPARE): Unset ENV and BASH_ENV when reinvoking the
shell, to work around problems with installers who put strange things
like "cd" commands in their environments.
2002-03-22 05:35:53 +00:00
Akim Demaille
d151609eea * lib/m4sugar/m4sugar.m4 (m4_define_default, m4_fst, m4_map): New. 2002-03-19 07:42:06 +00:00
Paul Eggert
a3ed203186 (AT_INIT, AT_CLEANUP):
Create at_test_all by a series of assignments,
not by a single assignment of a long string.  The latter causes ksh
version 11/16/88g to silently misbehave on OpenServer 5.0.6a,
presumably because of a buffer overrun.
2002-03-19 06:43:17 +00:00
Paul Eggert
8064dd81b2 (_AS_MKDIR_P_PREPARE): New macro.
(AS_MKDIR_P): Require it.  Use mkdir -p if available, falling
back on AS_DIRNAME to compute prefixes otherwise; this is
roughly what mkinstalldirs does.  That way, we need not have
our own filename disassembler.  The old disassembler did not
work with Solaris 8 dtksh, which is ksh Version M-12/28/93d.
2002-03-19 06:23:15 +00:00
Paul Eggert
116d8263d9 (at_times_skip):
Renamed from at_times.  Now a boolean.
ksh93 Version M-12/28/93d doesn't like 'x=times; $x'; it
says 'times: not found'.
2002-03-14 18:14:49 +00:00
Akim Demaille
782c620d3b * lib/m4sugar/m4sh.m4 (AS_BASENAME_EXPR): AS_REQUIRE, not
m4_require.
2002-03-12 16:08:01 +00:00
Akim Demaille
fbee53ee14 * Makefile.am (AUTOMAKE_OPTIONS): 1.6. 2002-03-08 12:44:46 +00:00
Akim Demaille
c854558a69 * doc/autoconf.texi (Invoking autom4te): New. 2002-03-08 11:46:07 +00:00
Akim Demaille
67043ba57f * doc/autoconf.texi (AC_LIBOBJ vs. LIBOBJS): New.
* lib/autoconf/general.m4 (AC_INIT): More informative error
message for LIBOBJ.
2002-03-04 15:09:20 +00:00
Akim Demaille
f12cd33d89 * lib/freeze.mk ($(build_libdir)/m4sugar/version.m4): New, for
parallel builds.
2002-03-04 15:08:23 +00:00
Akim Demaille
cfe347de96 * doc/autoconf.texi (Transforming Names): Equality between target
and host is irrelevant.
(Specifying Names, Canonicalizing): Remove all references to the
backward compatibility hooks.  Rather, collect them all into...
(Hosts and Cross-Compilation): this new section.
* doc/install.texi (System Type): Ditto.
* lib/autoconf/general.m4 (AC_CANONICAL_HOST): Explicitly state
that `--host' implies cross-compilation.
2002-03-04 15:06:44 +00:00
Akim Demaille
a002bdb487 * doc/autoconf.texi (Evaluation Macros): New.
* lib/m4sugar/m4sugar.m4 (m4_lquote): Remove, it is totally
useless.
(_m4_foreach): Define the variant with immediate evaluation so
that it contains exactly the items, not an expression which
evaluation is the current item.
(m4_re_string, m4_re_word): Don't over quote them.
2002-03-04 15:05:13 +00:00
Akim Demaille
e1189f6dbc Instead of having stacking `shift's evaluated at the end, let
`foreach' loops immediately evaluate them.
* lib/m4sugar/m4sugar.m4 (m4_quote, m4_dquote): Use $@ rather than
$*.  This is the n-th time I change my mind, but hopefully this is
the last...
(m4_lquote): New.
(m4_text_wrap): Use m4_foreach, which is finally correct _and_
efficient.
(m4_foreach_quoted, m4_car_quoted, _m4_foreach_quoted): Remove, as
it was only a hack for m4_text_wrap.
(m4_car2): Remove, replaced by...
(m4_cdr): New.
(_m4_foreach): Adjust.
* lib/autoconf/general.m4 (_AC_INIT_PREPARE): Adjust, and use
m4_bpatsubst for clarification.
2002-03-04 15:02:21 +00:00
Peter Eisentraut
61c82103d4 * lib/autoconf/c.m4, lib/autoconf/fortran.m4,
lib/autoconf/functions.m4, lib/autoconf/general.m4,
lib/autoconf/headers.m4, lib/autoconf/lang.m4,
lib/autoconf/programs.m4, lib/autoconf/status.m4: Improve spelling
of messages.
2002-03-02 15:19:47 +00:00
Akim Demaille
4f10c9b2d9 * lib/autotest/general.m4 (AT_INIT): Suggest a title to the
message to be sent.
2002-02-28 15:55:13 +00:00
Akim Demaille
772b0c11e2 * lib/autoconf/functions.m4 (AC_FUNC_SETPGRP): Fix the test.
From Akinori Musha.
2002-02-25 17:38:41 +00:00
Alexandre Duret-Lutz
ae51e3d9c3 * lib/Autom4te/XFile.pm (getline, getlines): New functions,
translate rn to n.
2002-02-14 12:04:39 +00:00
Akim Demaille
e421e67915 Version 2.52h. 2002-02-10 12:38:46 +00:00
Akim Demaille
a7181f1e85 Typo. 2002-02-09 08:27:23 +00:00
Akim Demaille
1b313550c5 freeze.mk: s/AUTOM4TE/MY_AUTOM4TE/ 2002-02-07 21:03:22 +00:00
Akim Demaille
43309fee5d Version 2.52h. 2002-02-07 18:31:27 +00:00
Akim Demaille
0913170fae Fix Autoconf PR/209.
Also reported by Frank Denis.
* lib/m4sugar/m4sh.m4 (_AS_PATH_WALK): Don't over quote.
2002-02-07 15:49:31 +00:00
Akim Demaille
704a0d0ce2 Fix Autoconf PR/207:
AC_PREFIX_PROGRAM fails with dashed program names
* lib/autoconf/general.m4 (AC_PREFIX_PROGRAM): Just use a fresh
variable when looking for the prefix program.
Now it also works for shell variables.
2002-02-07 12:07:20 +00:00
Akim Demaille
d03ab7023b * lib/autoconf/status.m4 (_AC_OUTPUT_COMMANDS): Don't output empty
case/esac, some shells don't support it.
Reported by Zack Weinberg.
* tests/torture.at (AC_CONFIG_COMMANDS with empty commands): New.
2002-02-06 17:51:01 +00:00
Akim Demaille
b64fa8b69b * lib/autotest/general.m4 (AT_INIT): When handling --keywords, be
sure not to introduce newlines in at_groups.
* lib/autotest/Makefile.am (autotest.m4f): Typo.
2002-02-06 17:29:44 +00:00
Pavel Roskin
74906e14fc Add m4sh.m4f and m4sugar.m4f 2002-02-06 15:54:42 +00:00
Pavel Roskin
7bb3cbb22f Add autotest.m4f 2002-02-06 15:53:35 +00:00
Paul Eggert
f3aff19f8d * doc/autoconf.texi (Specific Compiler Characteristics):
Describe HP-UX cc bug workaround more accurately.
* lib/autoconf/types.m4 (AC_CHECK_SIZEOF): Cast to long,
not unsigned long.
* tests/semantics.at (AC_CHECK_SIZEOF): Check non-GCC
cross-compilers, too.
2002-02-05 22:56:16 +00:00
Akim Demaille
0844415fe2 Really add freeze.mk. 2002-02-05 10:20:51 +00:00
Akim Demaille
f78ae3e5d5 Implement `autom4te --freeze'.
* bin/autom4te.in (&freeze): New.
* lib/autoconf/autoconf.m4, lib/autotest/general.m4,
* lib/m4sugar/m4sh.m4: Don't include files given by autom4te.
2002-02-05 08:24:06 +00:00
Akim Demaille
b0f1186048 Implement `autom4te --freeze'.
* bin/autom4te.in (&freeze): New.
* lib/autoconf/autoconf.m4, lib/autotest/general.m4,
* lib/m4sugar/m4sh.m4: Don't include files given by autom4te.
2002-02-05 08:12:46 +00:00
Akim Demaille
542109e14f * bin/autom4te.in (&parse_args): Implement `frozen files are
optional are the sum of the previous files on the command line'.
Also, pass `--reload-state=' on them, so...
(handle_m4): don't.
* lib/autom4te.in (Autotest, Autoconf): Rely on M4sh.
(M4sh): Rely on M4sugar.
(Autotest, M4sh, M4sugar): Use frozen files.
2002-02-05 08:11:32 +00:00
Akim Demaille
3552e970f3 * lib/autoconf/general.m4 (_AC_INIT_PACKAGE): Accept $4.
* doc/autoconf.texi (Initializing configure): Adjust.
2002-01-31 16:54:32 +00:00
Akim Demaille
29b16548fe * lib/autoconf/general.m4 (_AC_INIT_PACKAGE): Map non
alphanumeric to `-' instead of `_'.
2002-01-30 16:13:10 +00:00
Akim Demaille
2d6f8defa5 * lib/autoconf/general.m4 (_AC_INIT_PACKAGE): Support pre-defined
values.
* doc/autoconf.texi (Initializing configure): Explain how to
change AC_INIT default values.
2002-01-30 13:08:45 +00:00
Akim Demaille
3b84d54756 * lib/autotest/general.m4 (AT_INIT): Don't be ridiculous: adjust
AUTOTEST_PATH *after* it was set.
Don't put `.' in the PATH: the user should be precise and `./' if
needed.  In addition, given that the test suite does some `cd', if
`.' is in the path, the `tested programs' sections will report
programs found in the test suite's directory, while during the
tests (performed in their own directory), these programs are no
longer visible.  In other words, the results is confusing and
useless.
* tests/m4sh.at: Adjust: don't rely on `.' being in the PATH.
2002-01-28 10:46:00 +00:00
Akim Demaille
fa91df12dd * lib/m4sugar/m4sh.m4 (_AS_LINENO_PREPARE): Use PATH_SEPARATOR.
(_AS_PATH_SEPARATOR_PREPARE): Don't expect $SHELL to be
Bourne. Use /bin/sh.
From Andreas Buening.
2002-01-24 17:53:52 +00:00
Akim Demaille
b6f98b4ec1 Regen. 2002-01-24 17:39:46 +00:00
Akim Demaille
eb93e2e245 * lib/autoconf/general.m4 (_AC_INIT_PARSE_ARGS)
(_AC_INIT_PREPARE): Support -n as --no-create, as documented.
Reported by Geir Ove Myhr.
2002-01-24 17:15:54 +00:00
Akim Demaille
5560648fc0 * lib/autoconf/functions.m4 (AC_FUNC_MMAP): #Undef malloc. 2002-01-21 13:50:39 +00:00
Akim Demaille
a3b5a2e1b3 * lib/Autom4te/General.pm (getopt): Use a more GNUish error
message on invalid options.
* bin/autom4te.in (parse_args): Don't use
Autoconf::General::getopt with non valid options.
2002-01-21 13:00:52 +00:00
Jim Meyering
08a51b214d (_AC_COMPILER_EXEEXT_DEFAULT): Initialize $ac_cv_exeext
so we don't use an old, invalid, cached value.
2002-01-17 13:38:19 +00:00
Akim Demaille
621ee52455 * lib/autoconf/functions.m4 (AC_FUNC_STRNLEN): New, from Jim
Meyering.
* doc/autoconf.texi (Function Portability): Document the strnlen
limitation.
(Particular Functions): Document AC_FUNC_STRNLEN.
* lib/autoscan/functions: Adjust.
2002-01-11 13:25:08 +00:00
Akim Demaille
2e36a44431 * lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): Don't create
package.m4, since is really depends upon configure.ac, not
configure.
* doc/autoconf.texi (testsuite Scripts): Adjust.
* tests/Makefile.am (package.m4): New.
EXTRA_DIST it since its a source.
2002-01-06 20:48:25 +00:00
Akim Demaille
adb90f0708 * lib/autoconf/general.m4 (_AC_INIT_PARSE_ARGS): Move the AC_SUBST
of PACKAGE_NAME, PACKAGE_TARNAME, PACKAGE_VERSION, PACKAGE_STRING,
and PACKAGE_BUGREPORT from here...
(_AC_INIT_DEFAULTS): to here, since it is unrelated to the
arguments.
(_AC_INIT_PREPARE): AC_DEFINE these symbols.
* lib/autotest/general.m4: Use AT_PACKAGE_*, not PACKAGE_*.
(AT_INIT): No longer catch `^PACKAGE_(BUGREPORT|STRING)$'.
* tests/tools.at (autoheader): Adjust.
* tests/atspecific.m4 (AT_CHECK_DEFINES): Adjust.
2002-01-06 20:48:10 +00:00
Akim Demaille
3593206439 * lib/autoconf/general.m4 (_AC_INIT_PREPARE): We cleaning up the
trailing files, don't apply `-rf' to files which might not be
created by configure (core, core.*, and *.core), but just `rm -f'.
Suggested by Jonathan Kamens.
2001-12-14 18:06:28 +00:00
Akim Demaille
e3a8667131 * lib/autoconf/general.m4: Avoid duplicates in `$ac_configure_args'. 2001-12-14 18:01:13 +00:00
Akim Demaille
7e51b629b6 * lib/autoconf/status.m4 (_AC_SRCPATHS): Rename buildpath to
abs_builddir, top_buildpath to abs_top_builddir, srcpath to
abs_srcdir, top_srcpath to abs_top_srcdir.
(_AC_OUTPUT_FILES): Adjust.
* NEWS, doc/autoconf.texi, lib/autoconf/autotest.m4,
* tests/atspecific.m4, tests/autoreconf.in, tests/tools.at,
* tests/wrappl.in, tests/wrapsh.in: Adjust.
2001-12-14 17:57:27 +00:00
Steven G. Johnson
5340f3eb8f improved comment 2001-12-12 05:00:23 +00:00
Steven G. Johnson
789f73f7c7 slight comment cleanup 2001-12-12 04:56:46 +00:00
Steven G. Johnson
ff8303610a spelling fix 2001-12-12 04:56:06 +00:00
Steven G. Johnson
17df4ecdf8 Fix failed C/Fortran linking on HP/UX, by extracting the Fortran
library search path from the LPATH line in the $F77 -v output.
2001-12-12 04:31:12 +00:00
Akim Demaille
ad3db0c13b * tests/autoreconf.in, tests/autom4te.in, tests/autoupdate.in:
Remove, replaced by...
* tests/wrappl.in: Be common for all the Perl executables.
In particular autoscan and autoheader want -I.
* configure.ac: Adjust.
* lib/autoscan/headers: errno.h is portable.
2001-11-26 10:52:31 +00:00
Akim Demaille
6e35b89f81 * bin/autoscan.in (&scan_c_file): Better parsing of CPP
directives.
(&scan_sh_file): Remove a duplicate pattern.
(&check_configure_ac): Use long options.
* lib/autoscan/headers (alloca.h): Check with AC_FUNC_ALLOCA.
2001-11-26 10:51:29 +00:00
Akim Demaille
7403ea8e6e Test groups are now run two directories deeper.
* lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): Replace srcdir,
top_srcdir and top_builddir with at_srcdir, at_top_srcdir and
at_top_builddir.
* lib/autotest/general.m4 (AT_INIT): Compute srcdir,
top_srcdir, builddir and top_builddir.
Use `at_*dir' relatively to the directory containing the
suite, use `*dir' when relatively to the current group dir.
2001-11-26 10:50:36 +00:00
Paul Eggert
b62a4287e3 Spelling fixes. 2001-11-25 15:13:03 +00:00
Paul Eggert
71a641098a (AC_LANG_BOOL_COMPILE_TRY(C)): Make the array
static, to catch errors if the value isn't known at compile-time
and the compiler supports dynamic arrays.  Change its name from
`_array_' to `test_array' to avoid potential name clashes.
(AC_C_LONG_DOUBLE): Make it a compile-time test, not a run-time
test.  Do not define HAVE_LONG_DOUBLE if `long double' is no
better than double.  Catch a bug in GCC 2.95.2 x86.
2001-11-16 20:09:58 +00:00
Akim Demaille
0ff9d603a6 Typo. 2001-11-13 15:05:20 +00:00
Akim Demaille
bd4aa3ba7d * lib/autotest/general.m4 (AT_INIT): After having run the test
group, go back to the initial directory, not to at_suite_dir.
2001-11-13 15:04:16 +00:00
Akim Demaille
3c94358e38 * lib/autotest/general.m4: Change tests?' into groups?' in
variable names when referring to a single test group, or to
`suite' when referring to the whole test suite.
`at_last_test' is removed: m4 compute at_format itself.
(at_stdout, at_stder1, at_stderr): New variables.
(AT_CHECK): Use them.
2001-11-13 14:03:01 +00:00
Akim Demaille
1a08742d0c * lib/autotest/general.m4 (AT_INIT): Be sure to put `.', relative,
in PATH.
Create `testsuite.dir/003/run' instead of `testsuite.003'.
Do it as soon as a test fails, don't wait till the end of the test
suite.
Don't remove $as_me.[0-9]*, since these files no longer exist.
2001-11-13 13:15:48 +00:00
Akim Demaille
10dca17297 Now that tests are running in their own private dir, there is no
need to list the files to remove at the end of tests groups.
* lib/autotest/general.m4 (_AT_CLEANUP_FILE, AT_CLEANUP_FILES):
(AT_data_files, at_data_files): Remove.
(AT_CLEANUP, AT_DATA): Simplify.
(AT_INIT): Adjust.
Remove the group dir if !debug && !failed.
* tests/atspecific.m4: Adjust.
2001-11-13 11:41:08 +00:00
Akim Demaille
1205c2b251 Start a new layout for Autotest: `testsuite' creates
`testsuite.dir' in which the at-check-line etc. files are to be
found, and `testsuite.dir/003' where the test group 3 is run.
* lib/autotest/general.m4 (AT_INIT): at_tests_dir,
at_check_line_file, at_format, at_test_normalized, at_group_dir
are new variables.
Create the directories.
Use absolute paths for at- files.
(AT_CHECK): Adjust.
2001-11-13 11:39:14 +00:00
Akim Demaille
7a8927ef93 * m4sugar.m4 (_m4_foreach): Make it linear instead quadratic.
(m4_car2): New.
(m4_car): Properly quote arguments.
2001-11-13 10:42:05 +00:00
Paul Eggert
ebb2e722f7 (AC_C_PROTOTYPES): Define __PROTOTYPES too. 2001-11-12 18:46:44 +00:00
Akim Demaille
9bbb080f54 * lib/autoconf/functions.m4 (AC_FUNC_GETMNTENT): Use AC_CHECK_FUNCS. 2001-11-12 16:11:43 +00:00
Akim Demaille
371707922f * lib/autoconf/c.m4, lib/autoconf/fortran.m4,
* lib/autoconf/functions.m4, lib/autoconf/general.m4,
* lib/autoconf/headers.m4, lib/autoconf/libs.m4,
* lib/autoconf/programs.m4, lib/autoconf/specific.m4,
* lib/autoconf/types.m4: When invoking AC_DEFINE and friends,
specify to what the macro should be defined (typically to 1).
2001-11-12 16:08:52 +00:00
Akim Demaille
1492d7c53b * lib/autoconf/functions.m4 (AC_FUNC_STRTOD): AC_SUBST POW_LIB.
From Jim Meyering.
2001-11-12 15:47:35 +00:00
Akim Demaille
80171f9a36 * lib/autoconf/programs.m4 (_AC_PROG_LEX_YYTEXT_DECL): Use
AC_TRY_EVAL to run $LEX, not AC_TRY_COMMAND.  This validates the
definition used by Automake where LEX is +/- "${missing} lex" and
`missing' itself contains variables.
2001-11-12 08:59:54 +00:00
Akim Demaille
945977991b * lib/autotest/general.m4 (AT_INIT): Push KILL at the end.
Now that M4sh pushes BODY, the comments were output at the end of
the test suites.
2001-11-12 08:59:40 +00:00
Akim Demaille
61c422e02b Typo. 2001-11-09 16:04:55 +00:00
Akim Demaille
21b8d2f2dc * lib/m4sugar/m4sugar.m4 (m4_pattern_forbid): Accepts $2.
* lib/autoconf/general.m4 (AC_INTI): Forbid LIBOBJS.
(_AC_LIBOBJ): s/LIBOBJS/LIB@&t@OBJS/.
* bin/autom4te.in (warn_forbidden): New.
(handle_output): Use it.
Read m4_pattern_forbid with messages.
2001-11-07 19:34:20 +00:00
Akim Demaille
eec4a3470d * bin/autom4te.in (--normalize): Remove.
* lib/autom4te.in: Adjust.
2001-11-05 17:39:33 +00:00
Alexandre Duret-Lutz
fc9782f204 * lib/autoconf/status.m4 (_AC_OUTPUT_SUBDIRS): When removing
the --prefix option, also remove it's argument.
2001-11-05 13:04:41 +00:00
Akim Demaille
8993e7a7fa * lib/Autom4te/General.pm: (&catfile, &canonfile)
(&file_name_is_absolute): New, wrappers around routines from
File::Spec.
Use and export them.
(&find_configure_ac): Optionally take a directory where to look at.
* bin/autoreconf.in (&parse_args): Trim the configure.ac part of
the arguments.
Default @ARGV to `.', not find_configure_ac.
(&autoreconf): Argument is a directory.
Trace AC_CONFIG_SUBDIRS and schedule the subdirs for autoreconf'ing.
* doc/autoconf.texi (autoreconf Invocation): Update.
2001-11-03 12:01:35 +00:00
Akim Demaille
3b536e758c * lib/Autom4te/General.pm (@export_vars, @export_subs)
(@export_forward_subs): New.
Add basename, dirname, and fileparse.
(@EXPORT): Adjust.
* bin/autoreconf.in (&autoreconf): Fix call to fileparse.
Don't look for aclocal flags if we already know aclocal is not
used.
Move aclocal.m4t only if it exists.
Reported by Ezra Peisach.
2001-11-03 11:59:48 +00:00
Paul Eggert
e39b2117e3 (AS_SHELL_SANITIZE): _AS_CR_PREPARE needs to be invoked before
_AS_LINENO_PREPARE.

(_AS_LINENO_PREPARE): Use as_cr_digits and as_cr_alnum rather than
character ranges.
2001-11-01 22:41:54 +00:00
Paul Eggert
9fe512db2b (AS_SHELL_SANITIZE): Fix NLS before invoking AS_BASENAME. Set the
locale variables to 'C' if possible, as POSIX requires this to get the
traditional behavior.
2001-11-01 19:44:57 +00:00
Paul Eggert
0dfeb49d8e (_AS_LINENO_WORKS): Do not surround body with {}, as that triggers a
bug in Bash 2.05.
2001-10-31 20:07:48 +00:00
Paul Eggert
4c359a4349 (_AS_LINENO_PREPARE): Use Sed rather than Awk. Fix the sed prepass to
work even if there are multiple instances of $LINENO on the same line.
Do not substitute for other variables like $LINENOT.  Do not check
file dates; such a check is unreliable on sufficiently fast machines,
and removing the check makes the code simpler and more reliable.
Check for output and chmod failures.
2001-10-31 19:23:37 +00:00
Akim Demaille
89af419b83 Regen. 2001-10-31 10:43:31 +00:00
Akim Demaille
43d8d8e147 * lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): Do not
AC_CONFIG_FILES(atlocal) as it means a file atlocal.in *must* be
provided, while it is optional.
* configure.ac: Adjust.
2001-10-31 10:40:12 +00:00
Paul Eggert
b68b9bab2f Require Perl 5.005_03 instead of just 5.005, as some tests fail
with 5.005_02.
2001-10-26 19:52:43 +00:00
Paul Eggert
a4cb525873 (_AS_LINENO_WORKS): New macro.
(_AS_LINENO_PREPARE): Use it instead of shell eval, since
eval $LINENO is not portable in practice.
2001-10-26 19:52:43 +00:00
Akim Demaille
eff4e7a6ee * lib/Autom4te/General.pm (backname): New. 2001-10-24 14:29:16 +00:00
Akim Demaille
d7089440fc * m4/: Remove, merged into...
* config/: here.
2001-10-24 13:30:56 +00:00
Paul Eggert
5210e0c90b (AC_FUNC_STRERROR_R): Rename ac_cv_func_strerror_r_works to
ac_cv_func_strerror_r_char_p, and rename HAVE_WORKING_STRERROR_R to
STRERROR_R_CHAR_P, since POSIX decided to standardize on the int
flavor of strerror_r.  Always do char* test, as there's no reason not
to.  Assign to a char* var, to catch strerror_r that returns int*.
2001-10-22 17:42:32 +00:00
Akim Demaille
80cd9856d0 * lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): The name of
the executable was missing from the log.
2001-10-20 06:57:21 +00:00
Akim Demaille
9958e7c098 * lib/Autom4te/General.pm (&update_file): If destination is
unchanged, remove the source.
(&up_to_date_p): Don't be verbose, be debug.
* bin/autoreconf.in: No longer support --m4dir.
(&autoreconf): Display the full path of the configure.ac we are
studying.
Trace it only once.
Be sure to honor --force with gettextize.
Always run aclocal.
* doc/autoconf.texi: Adjust.
2001-10-20 06:56:45 +00:00
Paul Eggert
a6a4d5e090 (AC_PROG_AWK): Prefer gawk to mawk. 2001-10-19 18:34:42 +00:00
Akim Demaille
e4ac357228 * lib/autoconf/status.m4 (_AC_OUTPUT_FILES): Name the generated
file in @configure_input@.
Don't mention `automatically' in addition to `generated'.
* tests/torture.at (#define header templates): Adjust.
2001-10-19 17:34:53 +00:00
Akim Demaille
01016ca852 * lib/emacs/autoconf-mode.el, lib/emacs/autotest-mode.el: In a
comment, explain how to install automatic mode selection.
From Russ Allbery.
2001-10-19 16:02:37 +00:00
Paul Eggert
4d264d5a3e (as_me): Shell-quote the argument of AS_BASENAME, in case $0 contains
white space.
2001-10-19 00:20:03 +00:00
Paul Eggert
f99f108748 (AS_DIRNAME): Use 'dirname' if that works.
(AS_BASENAME_EXPR): New macro.
(AS_BASENAME_SED): Do not assume GNU sed semantics.
(AS_BASENAME): Use 'basename' if that works; then try 'expr';
and fall back on 'sed' only if the other two fail.  This makes
AS_BASENAME act more like AS_DIRNAME.
2001-10-18 23:43:52 +00:00
Paul Eggert
70e6f24483 (AC_CHECK_SIZEOF): Cast sizeof to unsigned long, to work around a bug
in the HP C compiler version HP92453-01 B.11.11.23709.GP.
2001-10-18 23:42:01 +00:00
Paul Eggert
1cca42f044 (_AC_INIT_SRCDIR): Use AS_DIRNAME, since I think it's now DOS-friendly. 2001-10-18 23:40:44 +00:00
Akim Demaille
d590fb24df * lib/autoconf/lang.m4 (_AC_COMPILER_EXEEXT_DEFAULT): Recognize
`a_out.exe' for OpenVMS 7.1, DEC C 5.5 compiler, via GNV.
From Eric Sharkey.
2001-10-14 11:48:18 +00:00
Akim Demaille
6710e125c4 * lib/m4sugar/m4sh.m4 (_AS_ECHO_N_PREPARE): m4_defun, not
m4_define, since...
(_AS_ECHO_N): AS_REQUIREs it.
2001-10-10 12:59:27 +00:00
Akim Demaille
714fc9d030 * lib/autoconf/general.m4 (_AC_INCLUDES_DEFAULT_REQUIREMENTS)
(AC_INCLUDES_DEFAULT): Move to...
* lib/autoconf/headers.m4: here.
* lib/autoconf/types.m4: Comment changes.
* doc/autoconf.texi: Specify where the default includes are used
in the macro prototypes.
2001-10-10 12:58:44 +00:00
Akim Demaille
ba8eb8795e * lib/autoconf/autoconf.m4 (m4_patsubst, m4_regexp): New
transition code.
2001-10-10 12:57:35 +00:00
Akim Demaille
6dfba95517 * bin/autoreconf.in (&autoreconf): Remove debugging code.
(&parse_args): Pass verbosity/debugging options to subtools when
--debug, not when --verbose.
* lib/autom4te.in (Autoreconf-preselections): New.
(Autoconf): Use it.
2001-10-08 09:40:33 +00:00
Akim Demaille
fa70471557 * tests/tools.at (AT_CHECK_PERL_SYNTAX): Check autoreconf.
(Syntax of the shell scripts): Don't.
* bin/autoheader.in, bin/autom4te.in, bin/autoreconf.in: Don't
bother with $force since...
* lib/Autom4te/General.pm: does.
2001-10-08 08:26:43 +00:00
Akim Demaille
788b2078c0 * bin/autoreconf.in: Rewrite in Perl.
* configure.ac: Adjust.
* lib/Autom4te/General.pm (&up_to_date_p): New.
* bin/autom4te.in (&up_to_date_p): Use it.
Rename as...
(&up_to_date): this.
2001-10-08 08:25:44 +00:00
Akim Demaille
0a757bb3dc * lib/m4sugar/m4sugar.m4 (m4_case, m4_bmatch, m4_normalize)
(m4_list_cmp): Use $0 to reinvoke yourself.
(m4_patsubsts): New.
(m4_strip, m4_version_unletter): Use it.
* tests/atspecific.m4 (AT_DATA_M4SUGAR, AT_DATA_M4SH): Likewise.
2001-10-08 08:22:49 +00:00
Akim Demaille
141b85d788 * lib/autoconf/autoconf.m4, lib/autoconf/general.m4,
* lib/autoconf/libs.m4, lib/autoconf/status.m4,
* lib/autoconf/types.m4, lib/autotest/general.m4,
* lib/m4sugar/m4sh.m4, lib/m4sugar/m4sugar.m4, tests/atspecific.m4,
* tests/torture.at: Rename m4_regexp, m4_patsubst, and m4_match to
m4_bregexp, m4_bpatsubst, and m4_bmatch.
* doc/autoconf.texi (Redefined M4 Macros): Adjust.
2001-10-08 08:22:33 +00:00
Akim Demaille
dda641324f * lib/m4sugar/m4sh.m4: Use AS_REQUIRE. 2001-10-08 08:22:09 +00:00
Akim Demaille
0717332aed * lib/m4sugar/m4sh.m4 (AS_DIRNAME_EXPR): Use AS_REQUIRE.
* tests/tools.at (AT_DATA_FORBIDDEN): Rename/move/duplicate to...
* tests/atspecific.m4 (AT_DATA_M4SUGAR, AT_DATA_M4SH): here.
* tests/tools.at, tests/m4sh.at: Use it.
* tests/m4sh.at: Don't rely on Autoconf macros.
(DIRNAME_TEST): Also exercise the expr variant.
* tests/m4sugar.at, tests/atspecific.m4 (AT_CHECK_M4SUGAR): The
preferred M4sugar extension is now `.4s'.
* tests/README: Remove.
2001-10-08 08:21:54 +00:00
Akim Demaille
201baaa8df * lib/m4sugar/m4sugar.m4 (m4_provide_ifelse): Rename as...
(m4_provide_if): this.
* lib/m4sugar/m4sh.m4 (AS_REQUIRE): New.
* lib/autoconf/general.m4 (AS_DEFUN, AC_DEFUN_ONCE, AC_BEFORE)
(AC_REQUIRE, AC_PROVIDE, AC_PROVIDE_IFELSE): Be exact copy of the
M4sugar peer, i.e., drop the `AC_PROVIDE_$1' broken marker.
2001-10-08 08:21:34 +00:00
Akim Demaille
b17d5c4b6c Use `add-log-current-defun-function' for ChangeLog creation.
Suggested by Tom Tromey.
* lib/emacs/autotest-mode.el (autotest-mode-map): New.
(autotest-mode): Adjust.
* lib/emacs/autoconf-mode.el (autoconf-mode-map): Modernize, map
'comment-region onto `C-c ;'.
Comments are `#', not `dnl'.
(autoconf-current-defun): New.
(autoconf-font-lock-keywords): Recognize `m4_defun'.
2001-10-08 08:21:18 +00:00
Akim Demaille
8e048c0492 * lib/autoconf/general.m4 (_m4_divert(BODY)): Move to...
* lib/m4sugar/m4sh.m4: here.
(AS_INIT): Push the BODY diversion, set the #! /bin/sh line.
* lib/autoconf/general.m4 (AC_PLAIN_SCRIPT) : Remove.
(AT_INIT): Replace AC_PLAIN_SCRIPT with AS_INIT invocation,
include handle the m4_pattern_*, no longer push the
BODY diversion nor set the /bin/sh line, AS_INIT does it.
* lib/autotest/general.m4 (AT_INIT): Likewise.
* tests/base.at: Adjust the tests to use AS_INIT.
* tests/tools.at (AT_DATA_FORBIDDEN): New.
(autoconf: forbidden tokens): Adjust to work on M4sh instead of
Autoconf.
2001-10-08 08:20:59 +00:00
Paul Eggert
03b5875793 (_AS_LINENO_PREPARE): If the current shell does not support LINENO,
and if CONFIG_SHELL is unset or empty, and if we can find a shell that
does support LINENO, then set CONFIG_SHELL to that shell and then
re-execute ourselves with CONFIG_SHELL.
2001-10-08 04:10:32 +00:00
Akim Demaille
41da374f67 * lib/m4sugar/m4sh.m4 (_AS_LINENO_PREPARE): Look in the path
iff we are a bareword.
Reported by Raja R Harinath.
2001-10-05 17:46:46 +00:00
Akim Demaille
a7b9f60081 * tests/m4sh.at (LINENO): New.
* lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Be sure to set
PATH_SEPARATOR before using it.
Fix the absolute path case/esac pattern.
Provide $0 as fallback for as_myself.
Reported by Raja R Harinath.
2001-10-05 16:12:22 +00:00
Akim Demaille
b3594d53cb * Makefile.am, config/Makefile.am, lib/emacs/Makefile.am,
* m4/Makefile.am, man/Makefile.am: Add/adjust MAINTAINERCLEANFILES.
2001-10-05 16:12:06 +00:00
Akim Demaille
42b48aec23 * lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Use a portable
combination of Awk and sed to replace $LINENO.
2001-10-04 15:24:31 +00:00
Paul Eggert
79d702d8bc (AS_SHELL_SANITIZE): "source" -> ".", for compatibility with POSIX shells. 2001-10-02 23:14:30 +00:00
Akim Demaille
a89e34ea3d * lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Just source 40.lineno
instead of exec'ing to preserve $0 and $@.
2001-10-02 14:37:07 +00:00
Akim Demaille
8bbfc0b5fd * tests/testsuite (AT_INIT) <at_pass_list>: New.
Don't run twice the same test.
2001-10-01 07:01:22 +00:00
Akim Demaille
d3cd8d95c2 * lib/autotest/general.m4 (AT_INIT) <--help>: Catch up with reality.
No longer output the list of tests.
<--list>: New option.
<--full-help>: Remove.
Complete the short/long options duality.
Various small adjustments.
2001-10-01 07:01:08 +00:00
Paul Eggert
6bbb016c0e (AC_OUTPUT_MAKE_DEFS):
Don't use nested parenthesization.  This patch was originally
suggested to bug-autoconf by Philippe De Muyter on 2000-05-28,
but somehow it didn't get incorporated then.
2001-09-30 17:12:34 +00:00
Paul Eggert
a95f040b51 (_AC_COMPUTE_INT_COMPILE):
Check for `expr' arithmetic overflow, and for compilation failure,
and invoke a new argument $4 if either is discovered.
This makes _AC_COMPUTE_INT_COMPILE more like _AC_COMPUTE_INT_RUN.
(_AC_COMPUTE_INT): Pass IF-FAILS arg to _AC_COMPUTE_INT_COMPILE.
2001-09-30 15:17:25 +00:00
Paul Eggert
a452b6b7e3 (AC_CHECK_SIZEOF): Report an error if the size cannot be determined
even though the type exists.
2001-09-30 15:16:18 +00:00
Akim Demaille
e16f9eefe0 * lib/emacs/autoconf-mode.el, lib/emacs/autotest-mode.el: New.
* configure.ac: Adjust.
2001-09-28 11:56:26 +00:00
Akim Demaille
921e6d129d * lib/autotest/general.m4 (AT_VICTIMS): Rename as...
(AT_TESTED): this.
(AT_INIT): More the wrapped section to where it will be expanded.
Output `AT_tested' only when existing.
Catch unexpanded PACKAGE_STRING and PACKAGE_BUGREPORT.
2001-09-28 10:14:36 +00:00
Akim Demaille
32876525ac Fix the passing of $? to ACTION-IF-FAILED in AC_TRY_RUN, that
generates too many bug reports.
* lib/autoconf/general.m4 (_AC_RUN_IFELSE): Pass the right exit
status when executing the ACTION-IF-FALSE.
* tests/base.at (AC_TRY_*): Rename as...
(AC_TRY_COMMAND): this.
(AC_RUN_IFELSE): New.
* tests/compile.at (Extensions, C keywords)
(AC_PROG_CPP requires AC_PROG_CC, GNU Fortran 77)
(Broken/missing compilers, AC_PROG_CPP with warnings)
(AC_PROG_CPP without warnings, AC_PROG_CPP via CC): Move to...
* tests/c.at (Extensions, C keywords)
(Broken/missing compilers, AC_PROG_CPP with warnings)
(AC_PROG_CPP without warnings, AC_PROG_CPP via CC)
(AC_PROG_CPP requires AC_PROG_CC): here and...
* tests/fortran.at (GNU Fortran 77): there.
* doc/autoconf.texi (autoconf Invocation): Fix the example:
AC_TRY_RUN is about compilation, not shell commands.
(Test Programs): AC_TRY_RUN works as used to be advertised.
2001-09-27 13:28:15 +00:00
Akim Demaille
fa75ee4b94 * lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Fix bugs spotted by
Raja R Harinath:
Be sure to detect when $LINENO always returns the same value.
Look for the original script, basename($0) is certainly not
enough.
Pass the CLI arguments to `$as_me.lineno'.
2001-09-27 08:27:55 +00:00
Akim Demaille
26edb742fa * lib/autotest/general.m4 (AT_INIT): Dump the whole config.log.
Be sure the close and reopen the LOG fd before and after using tee
to extend the log.
<at_tests_pattern>: Adjust to the new format of at_help_all.
2001-09-25 09:54:29 +00:00
Akim Demaille
e7808696f5 * lib/autoconf/status.m4 (_AC_SRCPATHS): Compute and provide
ac_buildpath, ac_top_buildpath, ac_srcpath, and ac_top_srcpath.
(_AC_OUTPUT_FILES): Also substitute srcpath, top_srcpath,
builddir, buildpath, top_builddir, and top_buildpath.
(_AC_OUTPUT_SUBDIRS): Compute the dir variables *before* changing
the current directory.
* lib/autoconf/general.m4 (_AC_INIT_HELP): Compute the dir
variables *before* changing the current directory.
Skip nonexistent dirs.
* doc/autoconf.texi (Preset Output Variables): Document these
variables.
* lib/autotest/general.m4: Do not reset AT_victims.
Don't compute at_srcdir nor at_top_srcdir.
* tests/tools.at: Hence use top_srcdir.
* tests/Makefile.am, tests/autoconf, tests/autoheader,
* tests/autom4te, tests/autoreconf, tests/autoupdate, tests/ifnames:
Remove.
* tests/autoreconf.in, tests/wrappl.in, tests/autom4te.in,
* tests/wrapsh.in, tests/autoupdate.in: New.
* tests/Makefile.am (DISTCLEANFILES, EXTRA_DIST): Adjust.
* configure.ac: Build the position independent wrappers.
* man/Makefile.am: Now that test wrappers are position
independent, use them and drop dark envvar magic.
2001-09-23 17:17:46 +00:00
Akim Demaille
eacc95ddc9 * lib/autotest/general.m4 (AT_INIT): Dump config.log last.
Pass $at_debug_args to the rerun test suite.
* lib/m4sugar/Makefile.am (DISTCLEANFILES): New.
* bin/Makefile.am (ETAGS_SH): Don't use characters ranges.
From Paul Eggert.
2001-09-23 17:16:43 +00:00
Akim Demaille
0540a84bcd * lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Fix shell
over-escaping.
2001-09-23 17:16:15 +00:00
Akim Demaille
d3bcaf7a86 * lib/Autom4te/General.pm (&debug): New.
* bin/autom4te.in ($language): Move to...
(parse_args): here.
Handle --language in languages.
* lib/autom4te.in (Automake-selections, Autoheader-selections)
(Autoscan-selections): New.
(Autoconf): Adjust.
2001-09-23 17:16:01 +00:00
Akim Demaille
4153a98f4e * lib/autoconf/autotest.m4: Create `package.m4'.
* tests/Makefile.am (package.m4): Remove.
2001-09-22 15:21:20 +00:00
Akim Demaille
a9bd52773e Rely on $LINENO' when possible instead of __oline__'.
* lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Provide some form of
`$LINENO' support replacement when not supported.
(_AS_CR_PREPARE, _AS_TR_CPP_PREPARE, _AS_TR_SH_PREPARE): Invoke
them explicitly to be sure they are not output before this section
(via m4_require).  Cosmetic only.
* lib/autoconf/c.m4, lib/autoconf/general.m4,
* lib/autoconf/programs.m4: Replace all the occurrences of
`__oline__' with `$LINENO'.
* doc/autoconf.texi (Special Shell Variables): Document LINENO.
2001-09-22 15:20:44 +00:00
Tim Van Holder
710e4d6b1c * lib/autoconf/functions.m4 (_AC_FUNC_FORK): Replaceded an 8-bit
character (u: -> ue) in a code comment.
  (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Only run 'ln -s' if we know
  it works.
2001-09-21 16:19:09 +00:00
Tim Van Holder
c163d9c990 * lib/autoconf/programs.m4: Use extensions listed in $ac_executable_extensions
when looking for programs.
2001-09-20 16:19:54 +00:00
Tim Van Holder
84f91881c2 Handle DOS paths when setting up ac_top_builddir. 2001-09-20 15:51:04 +00:00
Tim Van Holder
3f9eb3b0e9 Fixed a small Englisho. 2001-09-20 15:51:04 +00:00
Tim Van Holder
1422430f54 Default CDPATH to $PATH_SEPARATOR, not ':'. 2001-09-20 15:51:04 +00:00
Tim Van Holder
a12d3d6319 * doc/autoconf.texi (File System Conventions): Clarify the use of
PATH_SEPARATOR.
  (Special Shell Variables[PATH_SEPARATOR]): Ditto.
  (Special Shell Variables[CDPATH]): Mention that $PATH_SEPRATOR should
  be used instead of ':'.
* lib/autotest/general.m4: Replace occurrences of ':' in
  AUTOTEST_PATH with $PATH_SEPARATOR at test suite startup.
2001-09-20 15:39:46 +00:00
Tim Van Holder
6cd8d1f6c1 * lib/Autom4te/XFile.pm (open): Simplified the error message (we
already have $file).  Set output files to binary mode (helps avoid
  CR issues on DOSish systems).
2001-09-20 14:52:57 +00:00
Akim Demaille
9b50021469 * lib/autotest/general.m4: Englishoes.
From Tim Van Holder and Alexey Mahotkin.
2001-09-19 07:22:24 +00:00
Paul Eggert
99ba592715 (_AC_COMPUTE_INT_COMPILE): Do not pass a first argument with leading '-'
to expr, by parenthesizing initial integers that might be negative.
2001-09-18 17:55:51 +00:00
Paul Eggert
69af46fdbd (AC_LANG_INT_SAVE(C)): Also support negative values, down to LONG_MIN. 2001-09-18 17:54:21 +00:00
Paul Eggert
994851e7de (_AC_FUNC_GETPGRP_TEST): Remove.
(AC_FUNC_GETPGRP): Don't bother with a runtime test.  Just check
whether it is a (compile-time) error to pass an argument to
getpgrp.  This simpler test supports the revised documentation,
and is all that AC_FUNC_GETPGRP's users really need.
2001-09-18 16:21:46 +00:00
Akim Demaille
8ef39f1b94 * doc/autoconf.texi (Limitations of Usual Tools) <find>: More about
`{}'.
* lib/autotest/general.m4 (AT_INIT): Adjust.
2001-09-18 14:21:51 +00:00
Akim Demaille
bfa90014d7 * tests/m4sh.at: Ensure that AS_DIRNAME handles '/', '//' and '///'
correctly.
Add test for AS_BASENAME.
* lib/m4sugar/m4sh.m4: Fix AS_BASENAME so that it passes the previous
added test. It now correctly handles /1/2/3/, returning '3' not ''.
Added AS_BASENAME_SED to make the interface the same as AS_DIRNAME.
* tests/base.at: Fixed the expected responses. The old ones were
one line out...
* lib/autoconf/general.m4: Fixed AC_PREFIX_PROGRAM, it now behaves as
the documentation claims it should (and how it behaved in 2.13).
2001-09-18 12:26:36 +00:00
Akim Demaille
01bbecaa0a * lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): No INIT-CMDS in
the AC_CONFIG_COMMANDS invocation.
This also solves the name clash problems.
Don't set the package's ID.
* lib/m4sugar/Makefile.am (version.m4): Revamp.
No longer to be shipped.
(version.in): Remove.
* lib/m4sugar/m4sugar.m4, lib/autoconf/general.m4,
* lib/autoconf/status.m4: Adjust.
Use `m4_PACKAGE_STRING'.
* lib/autotest/general.m4 (AT_INIT): N-th signature change: now
the only optional argument is the name of the test suite.
Expect `package.m4' to define the package signature.
* lib/autom4te.in (Autotest): Add `package.m4?'.
* tests/Makefile.am (package.m4): New.
* tests/suite.at: ifnames is a victim.
2001-09-18 09:03:18 +00:00
Akim Demaille
72c26bb441 * lib/autom4te.in (Autoconf): Preselect AM_CONDITIONAL,
AC_LIBSOURCE, AC_CONFIG_FILES.
* lib/autotest/general.m4 (AT_INIT): Don't abort when a tested
program version string doesn't match the package's.
* lib/autoconf/general.m4 (AC_CACHE_VAL): Reestablish the space
after `(cached)'.
2001-09-18 08:58:56 +00:00
Paul Eggert
1cae5f39c9 (AC_LANG_INT_SAVE(C)):
Allow expression to return any value that can fit into unsigned long
(not int, as before).  Check for output errors.

From Bruno Haible: Always include <stdio.h> and <stdlib.h>. Evaluate
the expression in an extra function before these includes. Call
fprintf "%d" only after ensuring the argument is of type 'int'.
Reported by Wayne Chapeskie <waynec@spinnaker.com>.
2001-09-17 21:49:30 +00:00
Akim Demaille
34afb35e65 Extend. 2001-09-17 21:11:22 +00:00
Paul Eggert
baa396733e (AC_ISC_POSIX): Replace the old, crufty version with the version used
by fileutils 4.1, except use AC_SEARCH_LIBS, not AC_CHECK_LIB, so that
we don't use -lcposix if we don't need it.
2001-09-17 19:46:31 +00:00
Paul Eggert
f2cddb10fb (AC_HEADER_DIRENT): Use AC_SEARCH_LIBS, not AC_CHECK_LIB, so that we
don't use -ldir or -lx if we don't need it.
2001-09-17 19:45:29 +00:00
Akim Demaille
39c8e277ec * lib/autotest/general.m4 (AT_INIT): Reset `AT_victims' so that
m4_defn'ing is valid.
2001-09-13 10:18:07 +00:00
Akim Demaille
0638570e79 * lib/m4sugar/m4sugar.m4 (m4_append_uniq): New.
* lib/autotest/general.m4 (AT_VICTIMS, AT_KEYWORDS, _AT_CLEANUP_FILE):
Use it.
2001-09-13 06:57:45 +00:00
Akim Demaille
fcd2734d6a * lib/m4sugar/m4sugar.m4 (_AS_QUOTE_IFELSE, _AS_BOX_INDIR): Use
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.
2001-09-13 06:57:29 +00:00
Akim Demaille
a1c1be5c45 * lib/autotest/general.m4 (AT_INIT): Fix stupid bugs. 2001-09-13 06:57:14 +00:00
Akim Demaille
b13885b690 * lib/autotest/general.m4 (AT_INIT): Create and remove
`$as_me.[0-9]+' instead of `debug-[0-9]+.sh', so that multiple
test suites can cohabit.
2001-09-13 06:57:01 +00:00
Akim Demaille
5216ece6a8 Test suites can be run independently of configure.
* lib/m4sugar/m4sh.m4 (_AS_ECHO, _AS_ECHO_N_PREPARE): New.
* lib/autoconf/programs.m4 (_AC_PROG_ECHO): Remove.
* lib/autoconf/general.m4 (_AC_INIT_PREPARE): Adjust: AC_SUBST
ECHO_N etc.
* lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): Don't ask for at_n
and at_c.
* lib/autotest/general.m4: Use ECHO_*.
2001-09-13 06:56:31 +00:00
Akim Demaille
c737451f8c * bin/ifnames.in: Rewrite in Perl.
* configure.ac: Don't look for AWK.
* tests/tools.at (AWK portability): Remove.
(Syntax of the shell scripts): Don't check ifnames.
(AT_CHECK_PERL_SYNTAX): New.
(Syntax of the Perl scripts): Check ifnames.
* tests/ifnames: New.
2001-09-13 06:54:35 +00:00
Akim Demaille
c77d29d43d * lib/autotest/general.m4 (AT_INIT): Let --keywords also match
test group titles.
* tests/atspecific.m4 (AT_CHECK_AU_MACRO): AT_KEYWORDS(autoupdate).
Remove all the other keywords.
2001-09-13 06:53:19 +00:00
Akim Demaille
10b30c8904 * lib/autotest/general.m4 (AT_INIT): Remove the diversion HELP and
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.
2001-09-10 07:18:17 +00:00
Akim Demaille
4494f57cd6 * lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): Don't pass
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.
2001-09-10 07:17:41 +00:00
Akim Demaille
5fd6e6f70a * bin/autom4te.in (&handle_m4): `< /dev/null' so that GNU M4 1.5
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.
2001-09-07 08:26:57 +00:00
Akim Demaille
c7ae939c1d Move toward possibly stand-alone test suites.
* 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.
2001-09-07 07:20:26 +00:00
Akim Demaille
62f5d3573e * lib/autoconf/Makefile.am (autoconf.m4f): Depends upon
m4sugar/version.m4.
2001-09-07 07:20:07 +00:00
Akim Demaille
503e11606c * lib/autoconf/c.m4 (AC_LANG_BOOL_COMPILE_TRY(C)): Use `_array_'
to avoid GCC warnings.
From Uwe Seimet.
2001-09-05 08:46:53 +00:00
Akim Demaille
7d6abb82f3 Be ready to handle filenames as stupid as `dnl.at', for if even
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.
2001-09-05 07:06:58 +00:00
Akim Demaille
d134e3aa8d * lib/Autom4te/XFile.pm: New lib file.
* bin/autoupdate.in, bin/autoscan.pl, bin/autom4te.in,
* bin/autoheader.in: Use it.
2001-09-05 07:06:40 +00:00
Akim Demaille
d3f9e418ab * lib/Autom4te/General.pm (&getopt): Work around the `-' Getopt bug.
* bin/autoheader.in, bin/autoupdate.in (&parse_args): Adjust.
* bin/autoscan.in: Use `getopt' and `find_files' etc.
Add -I, --include support.
* doc/autoconf.texi (autoscan Invocation): Adjust.
2001-09-05 07:06:02 +00:00
Akim Demaille
b8f60ee642 * lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Fix the
previous patch.
* tests/atspecific.m4 (AT_CHECK_AUTOHEADER): Can create `config.hin~'.
2001-08-31 13:37:36 +00:00
Akim Demaille
0030da9162 * lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): DU 5.0 has
serious problems handling heredocs in heredocs.
Reported by Nicolas Joly.
2001-08-31 13:37:12 +00:00
Akim Demaille
1ac19d308e * lib/Makefile.am (CLEANFILES): Add autom4te.cfg. 2001-08-31 13:36:31 +00:00
Akim Demaille
f66f5d6077 * lib/Autom4te/General.pm (&find_file): Browse the includes in the
inverse order.
2001-08-31 13:35:39 +00:00
Akim Demaille
27661c3a8b * lib/autotest/general.m4 (AT_INIT): Don't pass all the args to
debug scripts, in particular passing explicitly listed tests to
run is stupid.
2001-08-31 13:34:46 +00:00
Akim Demaille
b7e99feee5 * lib/Autom4te/General.pm ($version, $help, &getopt): New.
* bin/autoupdate.in, bin/autoheader.in, bin/autom4te.in: Use them.
* bin/autom4te.in ($autoconf): Pass --force.
`print $out' doesn't print `$_' but `$out'.
* tests/tools.at (Syntax of the Perl scripts): Pass the lib dir.
(autoheader): Pass --force since the test suite goes too fast for
the time stamps.
Adjust to the new autoheader messages.
2001-08-31 13:33:10 +00:00
Akim Demaille
e3e7e0a0af * bin/autoheader.in: Handle the acconfig.h etc. junk files.
Check the completeness of the #template.
* lib/Autom4te/General.pm (&update_file): s/remove/unlink/.
* tests/semantics.at (AC_C_BIGENDIAN): Adjust AT_CHECK_AUTOHEADER
invocation.
2001-08-31 13:32:54 +00:00
Akim Demaille
aa8dfa178d * lib/Autom4te/General.pm (&find_file, &update_file): New.
* bin/autoupdate.in, bin/autoheader.in: Adjust.
Drop AC_MACRODIR dead for real.
* tests/atspecific.m4 (AT_CHECK_AUTOHEADER): Now autoheader says
`autoheader: `config.hin' is created'.
* tests/tools.at (Syntax of the Perl scripts): Check autoheader.
2001-08-31 13:32:35 +00:00
Akim Demaille
d19fa10fd6 * bin/autoconf.in: Don't bother with acsite.m4' and aclocal.m4'.
* bin/autom4te.in (&find_file): Support `FILE?' standing for
optionally `FILE'.
Use -e, not -f, since /dev/null for instance is OK.
(&parse_args): Adjust.
* lib/autom4te.in (Autoconf): Add `acsite.m4?' and `aclocal.m4?'.
2001-08-31 13:31:37 +00:00
Akim Demaille
1b9b5dd33a * configure.ac: Also find tested executables in bin.
* 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.
2001-08-31 13:30:11 +00:00
Akim Demaille
8f108edc8e * bin/autom4te.in, lib/autom4te.in, bin/autoconf.in:
s/--set/--language/.
2001-08-29 13:30:27 +00:00
Akim Demaille
838ea98226 * lib/autotest/general.m4: s/AT-devnull/devnull/ since there are
case insensitive OSes out there :(
From Tim Van Holder.
2001-08-29 09:55:40 +00:00
Akim Demaille
6acd8f5313 * lib/autom4te.in: New.
* lib/Makefile.am (edit, autom4te.cfg): New.
* bin/autom4te.in (BEGIN): Simplify.
Rely on `AC_MACRODIR' in addition of `autom4te_perllibdir'.
(&load_configuration): New.  Use it.
(&parse_args): Support --mode, --set, and --melt.
* bin/autoconf.in: Simplify and adjust.
* tests/Makefile.am (AUTOMAKE): Use --set.
* tests/atlocal.in: Adjust.
* BUGS: distcheck and check are weak.
2001-08-29 09:52:49 +00:00
Akim Demaille
188b40e5f4 * lib/autotest/general.m4: Use
foo=`(command) 2>/dev/null`
not
	foo=`command` 2>/dev/null
(at-devnull): Rename as...
(AT-devnull): this.
(--clean): Remove AT-* files too.
* doc/autoconf.texi (Limitations of Usual Tools): Document `date'.
Reported by Nicolas Joly.
2001-08-29 09:04:31 +00:00
Akim Demaille
75fb1995be * lib/autoconf/general.m4 (_AC_INIT_PREPARE): Don't use single
quotes inside single quotes.
Reported by Nicolas Joly.
2001-08-28 09:37:20 +00:00
Tim Van Holder
9703c0c1ce * lib/autotest/general.m4: Reword some messages.
(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.
2001-08-27 11:55:21 +00:00
Akim Demaille
b1032ba246 * lib/autotest/general.m4 (AT_INIT) <at_cmd_line>: Remove.
<at_cmd_line>: New.
Pass it to debug-*.sh scripts.
<AUTOTEST_PATH>: May contain absolute dir names.
2001-08-27 07:21:51 +00:00
Akim Demaille
3fb8cd5635 * lib/autotest/general.m4 (AT_INIT): Log the command line.
Support `VAR=VAL' as arguments.
Compute PATH _after_ the options processing, so that AUTOTEST_PATH
may be set via the command line.
2001-08-27 07:21:36 +00:00
Akim Demaille
7af3bf7ccd * lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): $2 defaults to $1.
* lib/autotest/autotest.m4 (AT_INIT): Expand AUTOTEST_PATH into
first the build dirs, then the src dirs.
* configure.ac (AC_CONFIG_TESTDIR): Adjust.
2001-08-27 07:21:20 +00:00
Akim Demaille
71f8118b57 * lib/autotest/general.m4 (AT_INIT): Output the definition of
at_data_files earlier.
(--clean, -c): New option.
* tests/Makefile.am: Use this option.
2001-08-27 07:20:37 +00:00
Akim Demaille
dfa9245cdb * lib/autoconf/status.m4 (_AC_SRCPATHS): Rename `ac_dots' as
`ac_top_builddir' to mimic Automake's vocabulary, which much more
readable.
Adjust callers.
* doc/autoconf.texi (Configuration Actions): Document the vars
available in commands.
Emphasize the risks of collisions in init-cmds.
2001-08-27 07:20:21 +00:00
Akim Demaille
1e3115ec74 * m4/atconfig.m4 (AT_CONFIG): Remove, replaced by...
* lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): this.
New file.
* m4/Makefile.am (EXTRA_DIST): Oops, adjust...
2001-08-27 07:18:39 +00:00
Akim Demaille
bec2fc5d4e * lib/autoconf/general.m4 (AU_DEFINE, AU_DEFUN, AU_ALIAS): Move
to...
* lib/autoconf/autoheader.m4: this new file.
* lib/autoconf/general.m4 (AH_OUTPUT, AH_VERBATIM)
(_AH_VERBATIM_OLD, AH_TEMPLATE, _AH_TEMPLATE_OLD, AH_TOP, AH_BOTTOM):
Move to...
* lib/autoconf/autoupdate.m4: this new file.
2001-08-27 07:17:23 +00:00
Akim Demaille
a036e1f09e * lib/autoconf/status.m4 (_AC_SRCPATHS): New.
(_AC_OUTPUT_LINKS, _AC_OUTPUT_FILES, _AC_OUTPUT_SUBDIRS): Use it.
Standardize the var names (ac_sub_srcdir -> ac_srcdir, ac_subdir
-> ac_dir).
(_AC_OUTPUT_HEADERS): AS_DIRNAME always return a dir name.
* lib/autoconf/general.m4 (_AC_INIT_HELP): Ditto.
2001-08-27 07:16:23 +00:00
Akim Demaille
41c5f49c1f * lib/autoconf/autoconf.m4 (AC_CONFIG_COMMANDS)
(AC_CONFIG_COMMANDS_POST, AC_CONFIG_COMMANDS_PRE, AC_CONFIG_FILES)
(AC_CONFIG_HEADER, AC_CONFIG_HEADERS, AC_CONFIG_IF_MEMBER)
(AC_CONFIG_LINKS, AC_CONFIG_SUBDIRS, AC_FILE_DEPENDENCY_TRACE)
(AC_LINK_FILES, AC_LIST_COMMANDS, AC_LIST_COMMANDS_COMMANDS)
(AC_LIST_FILES, AC_LIST_FILES_COMMANDS, AC_LIST_HEADERS)
(AC_LIST_HEADERS_COMMANDS, AC_LIST_LINKS, AC_LIST_LINKS_COMMANDS)
(AC_OUTPUT, AC_OUTPUT_COMMANDS, AC_OUTPUT_COMMANDS_POST)
(AC_OUTPUT_COMMANDS_PRE, AC_OUTPUT_MAKE_DEFS)
(_AC_CONFIG_COMMANDS_INIT, _AC_CONFIG_DEPENDENCIES)
(_AC_CONFIG_DEPENDENCY, _AC_CONFIG_UNIQUE, _AC_LINK_FILES_CNT)
(_AC_LIST_SUBDIRS, _AC_OUTPUT_COMMANDS, _AC_OUTPUT_COMMANDS_CNT)
(_AC_OUTPUT_COMMANDS_INIT, _AC_OUTPUT_CONFIG_STATUS)
(_AC_OUTPUT_FILES, _AC_OUTPUT_HEADERS, _AC_OUTPUT_LINKS)
(_AC_OUTPUT_SUBDIRS): Move to...
* lib/autoconf/status.m4: this new file.
* lib/autoconf/general.m4, lib/autoconf/Makefile.am: Adjust.
* tests/Makefile.am, tests/suite.at: Adjust.
2001-08-27 07:15:39 +00:00
Akim Demaille
ba3b08af20 Automake 1.5.
* Makefile.am (AUTOMAKE_OPTIONS): Add 1.5 and dist-bzip2.
(AMTAR): Help automake define it.
(INSTALL, install-data-hook): The INSTALL.txt trick is no longer
needed, 1.5 can have a macro and a target with the same name.
* m4/auxdir.m4, m4/cond.m4, m4/depend.m4, m4/install-sh.m4,
* m4/strip.m4: New.
* m4/init.m4, m4/sanity.m4: Update.
* doc/Makefile.am (CLEANFILES): 1.5 knows the texi2dvi files.
* lib/autoconf/Makefile.am, lib/autotest/Makefile.am,
* lib/m4sugar/Makefile.am, lib/autoscan/Makefile.am,
* lib/Autom4te/Makefile.am, man/Makefile.am: Use dist/nodist.
2001-08-27 07:12:16 +00:00
Akim Demaille
f827e95708 Provide a mean to ``AC_PREREQ'' for M4sugar, M4sh and Autotest.
* lib/autoconf/version.in: Remove.
* lib/m4sugar/version.in: New.
* lib/m4sugar/m4sugar.m4 (m4_acversion, m4_version_prereq): New.
Adjust callers.
* bin/autoupdate.in: Distinguish M4sugar vs. Autoconf macros by
the name of the directory they're in, instead of the filename,
since version.m4 is now in m4sugar, but m4_acversion must not be
classified as an Autoconf macro.
($input_m4): Don't qualify the path to m4sugar.
Rather, pass autoconf_dir to m4.
* tests/Makefile.am (testsuite): Remove -I top_srcdir, unneeded.
* tests/suite.at: Require 2.52c.
2001-08-27 07:08:56 +00:00
Akim Demaille
d5c038a64b testsuite.log should include config.log.
* 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.
2001-08-27 07:03:48 +00:00
Akim Demaille
5c291bb921 Add. 2001-08-22 06:44:57 +00:00
Akim Demaille
326fb6ba29 * lib/autoconf/general.m4 (AC_SHELL_PATH_WALK, AC_CHECK_PROG)
(AC_CHECK_PROGS, AC_PATH_PROG, AC_PATH_PROGS, AC_CHECK_TOOL_PREFIX)
(AC_PATH_TOOL, AC_CHECK_TOOL, AC_CHECK_TOOLS): Move to...
* lib/autoconf/programs.m4: here.
* lib/autoconf/specific.m4 (_AC_PROG_ECHO, AC_PROG_MAKE_SET)
(AC_PROG_RANLIB, AC_PROG_YACC, AC_PROG_LEX, _AC_DECL_YYTEXT)
(AC_PROG_INSTALL, AC_PROG_LN_S, AC_RSH): Move to...
* lib/autoconf/programs.m4: here.
(_AC_DECL_YYTEXT): Rename as...
(_AC_PROG_LEX_YYTEXT_DECL): this.
* lib/autoconf/autoconf.m4, lib/autoconf/Makefile.am
* tests/Makefile.am, tests/suite.am: Adjust.
2001-08-22 06:25:00 +00:00
Akim Demaille
0ad3e59592 * lib/autoconf/general.m4 (AC_LIST_MEMBER_OF, AC_LINKER_OPTION):
Move to...
* lib/autoconf/fortran.m4 (_AC_LIST_MEMBER_IF, _AC_LINKER_OPTION):
here.
* lib/autoconf/general.m4 (AC_TRY_LINK_FUNC): Move to...
* lib/autoconf/functions.m4: here.
* lib/autoconf/general.m4 (AC_SEARCH_LIBS, AC_CHECK_LIB)
(AH_CHECK_LIB): Move to...
* lib/autoconf/libs: this new file.
* lib/autoconf/specific.m4 (_AC_PATH_X_XMKMF, _AC_PATH_X_DIRECT)
(_AC_PATH_X, AC_PATH_X, AC_PATH_XTRA): Move to...
* lib/autoconf/libs.m4: here.
* lib/autoconf/autoconf.m4, lib/autoconf/Makefile.am: Adjust.
2001-08-22 06:24:46 +00:00
Akim Demaille
ebca389eda * lib/m4sugar/m4sh.m4 (AS_MKDIR_P): Fail if fails.
* lib/autoconf/general.m4 (_AC_OUTPUT_SUBDIRS): Adjust.
(AC_SITE_LOAD): Better logging of config.site.
2001-08-22 06:24:29 +00:00
Alexandre Duret-Lutz
aeb04bb72f * lib/autoconf/c.m4 (AC_C_BIGENDIAN): Prepare the cross-compile
program with AC_LANG_PROGRAM before feeding it to
AC_COMPILE_IFELSE.  Cleanup grep usage.
2001-08-20 16:25:00 +00:00
Akim Demaille
c6e6085710 * lib/autoconf/general.m4 (_AC_INIT_PACKAGE): Warn if the
arguments are not literals.
* doc/autoconf.texi (Input) <AC_INIT>: Arguments must be literals.
Specify the output variables, and macros defined.
2001-08-20 14:46:59 +00:00
Akim Demaille
e901ead496 * lib/autotest/general.m4 (AT_INIT): Compute top_builddir,
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.
2001-08-20 14:46:29 +00:00
Akim Demaille
e2002fb052 * tests/torture.at (Configuring subdirectories): New test.
* lib/autoconf/general.m4 (_AC_INIT_SRCDIR): Say what you are
looking for.
* m4/atconfig.m4: Be sure the let $[0] be expandable.
(top_srcdir): Fix its computation.
2001-08-20 14:46:02 +00:00
Akim Demaille
268d5eec86 * lib/autoconf/general.m4 (_AC_OUTPUT_COMMANDS): Say what you do.
* m4/atconfig.m4 (AT_CONFIG): $1 is now the directory where the
test suite lives.
Create `atconfig' automagically.
Configure atlocal.in if present.
* tests/atconfig.in: Remove.
* tests/atlocal.in: New.
* tests/Makefile.am: Adjust.
2001-08-20 14:45:49 +00:00
Akim Demaille
6e996ed93b Huh!?!?! There are still some user EOF tags used, which prevents
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.
2001-08-20 14:45:22 +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
e0c375ab26 Let M4sh have its own diversions.
* lib/autoconf/general.m4 (_m4_divert(BINSH), _m4_divert(REVISION))
(_m4_divert(NOTICE)): Rename as...
* lib/m4sugar/m4msh.m4 (_m4_divert(BINSH), _m4_divert(HEADER-REVISION))
(_m4_divert(HEADER-COMMENT)): these.
(_m4_divert(HEADER-COPYRIGHT), _m4_divert(HEADER-COPYRIGHT)): New.
(_m4_divert(NOTICE)): New, for Libtool.
* lib/autoconf/general.m4 (_m4_divert(PREPARE)): Remove, replaced
long ago with `_m4_divert(GROW)'.
(AC_COPYRIGHT, AC_REVISION, _AC_INIT_NOTICE): Adjust.
2001-08-20 14:44:48 +00:00
Akim Demaille
ad80ccfe86 * lib/autoconf/autoconf.m4, lib/autoconf/oldnames.m4,
* lib/autotest/general.m4: Adjust the license.
2001-08-20 14:44:11 +00:00
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
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
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
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
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
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
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
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
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
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
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
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
6957b4a95d Version 2.52b.
* lib/Autom4te/Makefile.am (perllibdir): s/Autoconf/Autom4te/.
2001-08-01 16:36:16 +00:00
Akim Demaille
ca7d52c867 * lib/Autom4te/General.pm: Use carp' and croak', not `warn' and
`die'.
(&END): New.
* bin/autoconf.in, bin/autom4te.in, bin/autoupdate.in: Remove your
`END', as `Autom4te::General::END' will be triggered.
* bin/autoupdate.in, bin/autoscan.in: Improve error messages accuracy.
* bin/autoupdate.in (File::Compare, File::Copy): Use them instead of
system to run `mv', `rm', and `cmp'.
2001-08-01 15:10:36 +00:00
Akim Demaille
f0cd6d6a75 * lib/Autom4te/General.pm (&unique): New.
* bin/autoscan.in (&output): Use it to issue trace requests once.
2001-08-01 15:02:36 +00:00
Akim Demaille
2892d23307 * lib/Autom4te/General.pm: New.
* bin/autom4te.in (Autom4te::General): Use it.
($me, $tmp, $verbose, $debug, &mktmpdir, &verbose, &xsystem)
(&find_configure_ac, &find_slave): Remove.
* bin/autoscan.in: Likewise.
* bin/autoupdate.in: Likewise.
2001-08-01 15:01:16 +00:00
Akim Demaille
93fec71c13 * autoconf.in, autom4te.in, autoscan.in, ifnames.in,
* autoheader.in, autoreconf.in, autoupdate.in: Move to...
* bin: here, new directory.
* lib/Autoconf: Rename as...
* lib/Autom4te: this, to please case insensitive junkie OSes.
2001-08-01 14:28:57 +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
062d0c09da * lib/autoconf/lang.m4 (AC_LANG(C), AC_LANG_C, _AC_LANG_ABBREV(C))
(AC_LANG(C++), AC_LANG_CPLUSPLUS, _AC_LANG_ABBREV(C++))
(AC_LANG_SOURCE(C), AC_LANG_PROGRAM(C), AC_LANG_CALL(C))
(AC_LANG_FUNC_LINK_TRY(C), AC_LANG_BOOL_COMPILE_TRY(C))
(AC_LANG_INT_SAVE(C), _AC_ARG_VAR_CPPFLAGS, _AC_ARG_VAR_LDFLAGS)
(AC_LANG_PREPROC(C), _AC_PROG_PREPROC_WORKS_IFELSE, AC_PROG_CPP)
(AC_LANG_COMPILER(C), ac_cv_prog_gcc, AC_PROG_CC, _AC_PROG_CC_G)
(AC_PROG_GCC_TRADITIONAL, AC_PROG_CC_C_O, AC_LANG_PREPROC(C++))
(AC_PROG_CXXCPP, AC_LANG_COMPILER(C++), ac_cv_prog_gxx)
(AC_PROG_CXX, _AC_PROG_CXX_G, _AC_PROG_CXX_EXIT_DECLARATION)
(AC_PROG_CC_STDC, AC_C_CROSS, AC_C_CHAR_UNSIGNED, AC_C_LONG_DOUBLE)
(AC_C_BIGENDIAN, AC_C_INLINE, AC_C_CONST, AC_C_VOLATILE)
(AC_C_STRINGIZE, AC_C_PROTOTYPES): Move to...
* lib/autoconf/c.m4: here, new file.
* lib/autoconf/lang.m4 (AC_LANG(Fortran 77), AC_LANG_FORTRAN77)
(_AC_LANG_ABBREV(Fortran 77), AC_LANG_SOURCE(Fortran 77))
(AC_LANG_PROGRAM(Fortran 77), AC_LANG_CALL(Fortran 77))
(AC_LANG_PREPROC(Fortran 77), AC_LANG_COMPILER(Fortran 77))
(ac_cv_prog_g77, AC_PROG_F77, _AC_PROG_F77_G, AC_PROG_F77_C_O)
(_AC_PROG_F77_V_OUTPUT, _AC_PROG_F77_V, AC_F77_LIBRARY_LDFLAGS)
(AC_F77_DUMMY_MAIN, _AC_LANG_PROGRAM_C_F77_HOOKS, AC_F77_MAIN)
(_AC_F77_NAME_MANGLING, AC_F77_NAME_MANGLING, AC_F77_WRAPPERS)
(AC_F77_FUNC): Move to...
* lib/autoconf/fortran.m4: here, new file.
2001-08-01 13:50:48 +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
Steven G. Johnson
ee9266fdf1 ignore -libmil in FLIBS (on Solaris) 2001-07-25 15:20:43 +00:00
Akim Demaille
ca4630d840 Prepare file moves. 2001-07-25 08:15:26 +00:00