Commit Graph

5367 Commits

Author SHA1 Message Date
Jim Meyering
ac5e021157 Fix texinfo syntax error.
* doc/autoconf.texi (Limitations of Usual Tools): s/@kbd {/@kbd{/

Signed-off-by: Jim Meyering <meyering@redhat.com>
2008-03-26 10:31:28 +01:00
Ralf Wildenhues
4503a1da11 Warn, not fail on whitespace-only precious variable differences.
* lib/autoconf/general.m4 (_AC_ARG_VAR_VALIDATE): Output
precious variable differences less ambiguous with `ugly-quotes'.
If their settings differ only in whitespace, do not fail, but
reuse the old value.
* tests/torture.at (AT_CHECK_AC_ARG_VAR): Extend macro to allow
an optional status and expected-warning argument.  Fix m4
quotation for initial value.
(AC_ARG_VAR): Also test for whitespace-only differences, and
that the old value is retained in this case.
* doc/autoconf.texi (Setting Output Variables): Document this.
* NEWS: Update.
Report and initial patch by Paolo Bonzini.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-26 06:55:22 +01:00
Eric Blake
5c55fb1f4d Document busybox sed bug.
* doc/autoconf.texi (Limitations of Usual Tools): Mention
restrictions when using back-references.
Reported by Vincent Lefevre:
<http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13013>.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-25 21:19:58 -06:00
Eric Blake
7b93a8c8f6 Document Automake interaction with AC_CONFIG_MACRO_DIR.
* doc/autoconf.texi (Input): Mention ACLOCAL_AMFLAGS for automake
users.
* THANKS: Update.
Reported by Chris Pickett.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-25 20:51:07 -06:00
Ralf Wildenhues
50be220a2a * tests/autotest.at (Using atlocal): Quote instances of pwd.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-25 07:35:29 +01:00
Ralf Wildenhues
70684ede3e Factorize m4 warning output normalization.
* tests/local.at (AT_CHECK_M4): Factorize warning output
normalization.
Suggested by Eric Blake.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-25 07:03:58 +01:00
Ralf Wildenhues
6a6062d59b Fix .exe-related test failure on MinGW.
* tests/local.at (AT_CHECK_M4): Normalize `/bin/m4.exe' correctly
for comparing warning output.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-24 15:38:49 +01:00
Ralf Wildenhues
ec3a1f2269 Fix Fortran testsuite failures with gfortran 4.3.
* lib/autoconf/fortran.m4 (_AC_PROG_FC_V_OUTPUT): When scanning
verbose compiler output, skip lines that set variables; gfortran
4.3 sets LIBRARY_PATH, COMPILER_PATH, COLLECT_GCC_OPTIONS.
* THANKS: Update.
Report by Vincent Lefèvre.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-24 11:44:36 +01:00
Eric Blake
34d1406add * GNUmakefile: Resynchronize with gnulib.
Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-21 22:43:01 -06:00
Eric Blake
6893b8be8a Document more uses of $cross_compiling.
* doc/autoconf.texi (Runtime): Document that a temporary override
is permissible.
* THANKS: Update.
Reported by Ineiev, example by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-21 13:27:34 -06:00
Eric Blake
f6bc7b22d4 Don't swallow $1 in textual local variables.
* lib/m4sugar/m4sugar.m4 (m4_combine): Don't use overquoting and
expansion of text arguments, as that swallows $1.
(m4_text_wrap): Likewise, by splitting out...
(_m4_text_wrap): ...new helper macro.  Also, allow arbitrary
expression for width.
* tests/m4sugar.at (m4@&t@_text_wrap): Test this.
(m4@&t@_combine): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-21 11:32:46 -06:00
Ralf Wildenhues
3dee95e878 Avoid leftover files on Leopard.
* lib/autoconf/lang.m4 (_AC_COMPILER_EXEEXT): Remove a.out.dSYM
directory created on darwin.
(AC_NO_EXECUTABLES): Likewise; also remove objects which may be
left over from a broken link.
* tests/c.at (AC_NO_EXECUTABLES (working linker))
(AC_NO_EXECUTABLES (broken linker)): New tests.
Report by Gary V. Vaughan.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-21 07:57:26 +01:00
Ralf Wildenhues
dff6f0cac9 Add traces for AM_COND_IF.
* lib/autom4te.in (Automake-preselections): Trace
_AM_COND_IF, _AM_COND_ELSE, _AM_COND_ENDIF.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-21 00:26:33 +01:00
Eric Blake
5def6b80ec Kill more CVS references.
* README-cvs: Delete.  See README-hacking instead.
* README-hacking: Update wording, based on older file.
* BUGS: Remove CVS mention.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-20 14:14:44 -06:00
Ralf Wildenhues
df69b34ff9 Skip whitespace test if aclocal is not present.
* tests/tools.at (autotools and whitespace in file names): Skip
if aclocal is not present.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-20 20:56:49 +01:00
Eric Blake
4947246107 Actually delete GNUmakefile.cfg this time.
Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-20 08:48:55 -06:00
Eric Blake
2027d5a9fc Sync GNUmakefile with gnulib.
* GNUmakefile (Makefile.cfg): Rename...
(cfg.mk): ...to this, and make optional.
(GNUmakefile.cfg): Delete, redundant with cfg.mk.
(Makefile.maint): Rename...
(maint.mk): ...to this.
(all) [!_have-Makefile]: Rename...
(abort-due-to-no-makefile): ...to this, and invoke via
.DEFAULT_GOAL to pick up all targets.
* Makefile.cfg: Rename...
* cfg.mk: ...to this.
* Makefile.maint: Rename...
* maint.mk ...to this.
(ME): Reflect name change.
(makefile-check, m4-check, author_mark_check, msg): Use $(ME)
rather than hard-coded name.
* GNUmakefile.cfg: Delete; move rules into cfg.mk.
* Makefile.am (EXTRA_DIST): Reflect file name changes.
* .x-sc_prohibit_atoi_atof: Likewise.
* lib/freeze.mk: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-20 07:18:23 -06:00
Stepan Kasal
ad77d1d72c * doc/autoconf.texi (Introduction): Improve the paraphrase of
Henry Spencer's quotation.

Signed-off-by: Stepan Kasal <skasal@redhat.com>
2008-03-19 15:33:48 +01:00
Eric Blake
593340005e AC_CONFIG_HEADERS replaced AC_CONFIG_HEADER.
* bin/autoscan.in (output): Avoid obsolete spelling.
* tests/local.at (AC_STATE_SAVE): Update usage.
* THANKS: Update.
Reported by John Calcote.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-18 20:54:31 -06:00
Eric Blake
a5406903ab Emphasize that ease of configure triumphs over ease of autoconf.
* doc/autoconf.texi (Introduction): Expand on primary
vs. secondary goal of autoconf.
* THANKS: Update.
Inspired by Paul Smith.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-18 19:19:54 -06:00
Ralf Wildenhues
97a91204c0 Provide a helpful message if autopoint or libtoolize do not exist.
* lib/Autom4te/FileUtils.pm (handle_exec_errors): New argument
$hint, show if the executing program does not exist.
(xsystem_hint): New function, like xsystem but allows to pass
a hint.
* bin/autoreconf.in: Use xsystem_hint for spawning autopoint and
libtoolize.
Report by Bruce Korb.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-17 06:59:44 +01:00
Stepan Kasal
4c32cbb30f * tests/fortran.at, tests/mktests.sh, tests/wrapper.as: Fix typos. 2008-03-14 15:33:35 +01:00
Stepan Kasal
2d9b62b11d * lib/Autom4te/ChannelDefs.pm: Fix typos. 2008-03-14 14:59:58 +01:00
Jim Meyering
e30dffd714 Use a more general GNUmakefile.
* GNUmakefile: Sync from coreutils.
* Makefile.am (EXTRA_DIST): Add GNUmakefile.cfg.
* GNUmakefile.cfg: New file.
2008-03-13 22:16:52 +01:00
Eric Blake
3c108e5e9d Fix yesterday's regression in m4_wrap([$1]).
* lib/m4sugar/m4sugar.m4 (_m4_wrap): Don't directly invoke wrapped
text, since it may contain text that looks like parameters.
* tests/m4sh.at (AS@&t@_INIT cleanup): Enhance test.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-11 20:05:49 -06:00
Eric Blake
21ba57f840 Improve error messages for common testsuite bugs.
* lib/autotest/general.m4 (_AT_DEFINE_INIT, _AT_DEFINE_SETUP): New
macros for defining order-enforced macros.
(AT_INIT, AT_SETUP, AT_CLEANUP, AT_BANNER, AT_XFAIL_IF)
(AT_CAPTURE_FILE, AT_DATA, AT_CHECK, AT_CHECK_NOESCAPE): Add error
messages when order violations are detected.
* tests/autotest.at (AT_CHECK_AT_SYNTAX): New helper macro.
(AT_SETUP without AT_INIT, AT_BANNER without AT_INIT)
(AT_CLEANUP without AT_INIT, Missing AT_CLEANUP)
(AT_CHECK without AT_SETUP, AT_DATA without AT_SETUP)
(AT_XFAIL_IF without AT_DATA, AT_KEYWORDS without AT_SETUP,
(AT_CLEANUP without AT_SETUP, AT_BANNER inside AT_SETUP)
(AT_SETUP inside AT_SETUP, Multiple AT_INIT)
(Banner-only test suite): New tests.
Reported by Christopher Hulbert.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-11 18:58:33 -06:00
Eric Blake
39ed7a3e19 Tweak m4_wrap to force FIFO or LIFO semantics.
* lib/m4sugar/m4sugar.m4 (m4_wrap): Override M4 implementation.
(m4_wrap_lifo, _m4_wrap): New macros.
* lib/m4sugar/m4sh.m4 (AS_INIT): Combine all cleanup into known
order, prior to m4sugar's.
(_AS_DETECT_BETTER_SHELL): Use cleanup parameter, rather than
m4_wrap.
* lib/autotest/general.m4 (AT_INIT): Combine all cleanup into
known order, prior to m4sh's.
* doc/autoconf.texi (Diagnostic Macros) <m4_fatal>: Document
argument.
(Redefined M4 Macros) <m4_wrap>: Rewrite documentation to match
new behavior.
* tests/m4sh.at (AS_INIT cleanup): New test.
* NEWS: Document the change.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-11 18:58:31 -06:00
Eric Blake
f79a05503d Encode nested autotest data.
* tests/autotest.at (AT_CHECK_AT_PREP): Avoid raw AT_ in output.
(unusual file names): Likewise.
(m4_pattern_allow): Remove loophole, to make it easier to catch
poorly written tests.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-10 21:02:11 -06:00
Eric Blake
24093173fd Factor some autotest tests.
* tests/autotest.at (AT_CHECK_AT_PREP): New macro, to factor out
common initialization.
(AT_CHECK_AT, Banners, Keywords and ranges, srcdir propagation)
(whitespace in absolute testdir, unusual file names): Use it.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-10 20:48:02 -06:00
Eric Blake
fd8b6f4727 Minor documentation fix.
* doc/autoconf.texi (Evaluation Macros): Fix typo.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-06 08:20:48 -07:00
Eric Blake
f2ebc5bc44 Make AT_CHECK act like a simple command.
* lib/autotest/general.m4 (_AT_CHECK): Wrap commands in {;}.
* tests/torture.at (AT_CHECK_CONFIG_CREATION_NOWRITE): Test it.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-04 16:33:31 -07:00
Ralf Wildenhues
ac17e815dc On MinGW, substitution of CR and 0xFF fails.
* tests/torture.at (Substitute and define special characters):
MinGW awk cannot handle 0xFF, and on MinGW, the test does the
wrong thing for CR.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-04 23:52:07 +01:00
Eric Blake
6f8e57e72f Pull in recent maintainer improvements from coreutils.
* GNUmakefile (_is-dist-target): 'make distclean' should not
trigger autoreconf.
(_dummy): Change directories before removing autom4te.cache.
(check dist distcheck install) [!_have-Makefile]: Provide nicer
diagnostics.
* configure.ac (AC_CONFIG_LINKS): Copy GNUmakefile into VPATH
builds, after initial bootstrap.
* Makefile.am (distclean-local): Work around current automake bug.
* Makefile.maint (ME): Allow VPATH usage.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-04 15:38:26 -07:00
Eric Blake
f687ca65ea Use git-merge-changelog when available.
* .gitattributes: New file.
* README-hacking: Document use of git-merge-changelog.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-04 15:13:25 -07:00
Eric Blake
53a1ce8ff8 Work around cygwin bug.
* tests/atlocal.in (unsupported_fs_chars): Avoid cygwin bug where
"touch 't\'" creates regular file 't'.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-04 15:05:46 -07:00
Eric Blake
9eb6a5986a Ignore tests that require read-only directories under root.
* tests/torture.at (AT_CHECK_CONFIG_CREATION_NOWRITE): Skip
no-write portion if user has root-like privileges.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-04 15:05:45 -07:00
Ralf Wildenhues
cd4eae6962 * lib/autotest/general.m4 (AT_INIT): Fix detection of '-C -'. 2008-03-04 07:38:09 +01:00
Ralf Wildenhues
af562c9a73 autoreconf -m now honors $MAKE.
* bin/autoreconf.in ($run_make): Renamed from ...
($make): ... this.  Use now as command to run `make',
overridden by $MAKE.  Document this in --help output.
* doc/autoconf.texi (autoreconf Invocation): Document
all environment variables honored by autoreconf.
* NEWS: Update.
Report by Paul Eggert.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-03 23:53:44 +01:00
Eric Blake
e3d1e29bc3 Documentation improvements.
* doc/autoconf.texi (Looping constructs): s/recurses/repeats/.
(Evaluation Macros): Drop `1' suffix from metasyntax variable name
that preceeds @dots.  Improve wording.
(Text processing Macros): Drop `1' suffix from metasyntax variable
name that preceeds @dots.
(Number processing Macros): Drop `1' suffix from metasyntax
variable name that preceeds @dots.  Improve wording.
* lib/m4sugar/m4sugar.m4 (m4_cmp): Comment wording fix.
Suggested by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-03 06:29:00 -07:00
Jim Meyering
8f9301b737 Don't infloop upon "make dist".
* GNUmakefile: Merge from coreutils.
* Makefile.am (dist-hook): Inject .tarball-version into tarball,
not .version.
* configure.ac (AC_INIT): Use .tarball-version, not .version.
* build-aux/git-version-gen: Update from gnulib.
2008-03-02 22:28:04 +01:00
Ralf Wildenhues
8b318e8487 * tests/torture.at (AC_CONFIG_FILES, HEADERS, LINKS and COMMANDS):
Before using /dev/full, check that it is a writable character
special device.
Report by Benoit Sigoure and Eric Blake.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-02 14:14:44 +01:00
Ralf Wildenhues
ad236d83f7 Actually test that @configure_input@ is expanded correctly.
* tests/torture.at (AC_CONFIG_FILES, HEADERS, LINKS and COMMANDS):
Actually check generated file contents for the name of the
generated file, using AC_PROG_FGREP and $FGREP.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-02 13:13:46 +01:00
Benoit Sigoure
7559c93d38 Be nice with file systems that don't handle unusual characters.
* tests/atlocal.in (func_sanitize_file_name)
	(func_sanitize_dir_name): New shell functions.
	* tests/tools.at (autom4te and whitespace in file names)
	(autotools and whitespace in file names): Use them.
	* tests/torture.at (AC_CONFIG_FILES, HEADERS, LINKS and COMMANDS):
	Cover more potentially problemtic file names.  Use the new
	functions.

Signed-off-by: Benoit Sigoure <tsuna@lrde.epita.fr>
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-02 13:03:10 +01:00
Benoit Sigoure
2abed75dde Properly handle funny file names for headers in config.status.
The test suite did not cover this bug because the code was not
	quoting properly the arguments of `rm -f' (which "fails" silently)
	as well as the arguments of `diff' (whose output was redirected to
	/dev/null so we couldn't see its error message).
	* lib/autoconf/status.m4 (_AC_OUTPUT_HEADER): Properly quote the
	file names passed to `rm' and `diff'.
	* tests/torture.at (AC_CONFIG_FILES, HEADERS, LINKS and COMMANDS):
	Add a regression test.

Signed-off-by: Benoit Sigoure <tsuna@lrde.epita.fr>
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-02 13:00:23 +01:00
Benoit Sigoure
c197dc8d27 Properly expand @configure_input@ in config.status.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILE, _AC_OUTPUT_MAIN_LOOP):
Escape the backslashes and ampersands in $configure_input before
using it in the sed replacement string to expand @configure_input@.
Report by Eric Blake and Patrick Welche.

Signed-off-by: Benoit Sigoure <tsuna@lrde.epita.fr>
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-02 12:50:55 +01:00
Ralf Wildenhues
32980cdc2d Add ChangeLog entry for last commit. 2008-03-02 12:16:06 +01:00
Ralf Wildenhues
bac71a40b9 Ignore errors from ./run on w32.
* tests/autotest.at (whitespace in absolute testdir):
Ignore stderr for `./run' which fails to remove the
busy test directory on w32.
2008-03-02 11:24:46 +01:00
Eric Blake
01a17a6664 Improve documentation for writing autotest suites.
* doc/autoconf.texi (Writing Testsuites) <AT_CHECK>: Mention that
checks must live inside a test group.
Reported by Christopher Hulbert.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-02-22 16:30:39 -07:00
Eric Blake
bf39a653c6 Sync git-version-gen from upstream.
* build-aux/git-version-gen: Pull from gnulib.
* configure.ac (AC_INIT): Adjust to new calling convention.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-02-21 07:55:13 -07:00
Eric Blake
49ffd6c9c1 Avoid trailing space in config.h with AC_DEFINE([var], []).
* lib/autoconf/general.m4 (_AC_DEFINE_Q): Explicitly mark empty
defines with a comment.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-02-12 08:49:59 -07:00