Stefano Lattarini [Fri, 4 Nov 2011 19:15:12 +0000 (20:15 +0100)]
test defs: new functions to analyze configure help screen
* tests/defs (extract_configure_help, grep_configure_help): New
functions.
* tests/maintmode-configure-msg.test: Use them, reducing code
duplication and test brittleness.
* tests/help-depend.test: Likewise.
* tests/help-depend2.test: Likewise.
* tests/help-dmalloc.test: Likewise.
* tests/help-lispdir.test: Likewise.
* tests/help-multilib.test: Likewise.
* tests/help-python.test: Likewise.
* tests/help-regex.test: Likewise.
* tests/help-silent.test: Likewise.
* tests/help-upc.test: Likewise.
* tests/help-init.test: Make grepping of configure help screen
slightly stricter.
* tests/self-check-configure-help.test: New self test.
* tests/Makefile.am (TESTS): Add it.
From a report by Jim Meyering.
Stefano Lattarini [Thu, 3 Nov 2011 14:23:22 +0000 (15:23 +0100)]
Merge branch 'msvc'
* msvc:
tests: various minor tweakings, mostly related to AM_PROG_AR
Stefano Lattarini [Thu, 3 Nov 2011 14:09:05 +0000 (15:09 +0100)]
tests: various minor tweakings, mostly related to AM_PROG_AR
* tests/alloca.test: Adjust to new portability requirements due
to the new AM_PROG_AR macro.
* tests/discover.test: Likewise.
* tests/libobj3.test: Likewise.
* tests/pluseq7.test: Likewise. Also, make grepping of automake
expected error message stricter.
* tests/stdlib.test: Likewise, and extend the test a bit.
* tests/parse.test (configure.in): Remove redundant call to
AC_PROG_RANLIB.
* tests/library2.test: Adjust to new portability requirements
due to the new AM_PROG_AR macro. Also ...
(configure.in): ... add call to AC_PROG_CC, to ensure automake
really fails for the expected reason.
Stefano Lattarini [Thu, 3 Nov 2011 12:50:06 +0000 (13:50 +0100)]
Merge branch 'msvc' into master
Commits merged from msvc:
- tests: few improvements to some `ar-lib' related tests
- warnings: new 'extra-portability' category, for AM_PROG_AR
- ar-lib: new 'AM_PROG_AR' macro, triggering the 'ar-lib' script
Extra changes required by the testsuite:
* tests/instspc-tests.sh: Adjust to new portability requirements
due to the new AM_PROG_AR macro.
* tests/libobj-basic.test: Likewise.
* tests/libobj2.test: Likewise.
* tests/libobj15a.test: Likewise.
* tests/libobj15b.test: Likewise.
* tests/libobj15c.test: Likewise.
* tests/libobj16a.test: Likewise.
* tests/libobj16b.test: Likewise.
* tests/libobj17.test: Likewise.
* tests/libobj18.test: Likewise.
* tests/libobj19.test: Likewise.
* tests/libobj20a.test: Likewise.
* tests/libobj20b.test: Likewise.
* tests/libobj20c.test: Likewise.
* tests/canon6.test: Likewise.
* tests/canon6.test: Likewise.
* tests/canon7.tests: Likewise.
* tests/extra9.test: Likewise.
* tests/extradep.test: Likewise.
* tests/extradep2.test: Likewise.
* tests/posixsubst-ldadd.test: Likewise.
* tests/posixsubst-libraries.test: Likewise.
* tests/posixsubst-ltlibraries.test: Likewise.
* tests/python-virtualenv.test: Likewise.
* tests/vartypos.test: Likewise.
* tests/vartypo2.test: Likewise.
* tests/suffix.test: Update to take into account previous
master-only changes.
* tests/suffix2.test: Likewise.
* tests/libobj7.test: Call automake with the `--add-missing'
option, instead of creating a dummy `ar-lib' file, since this
test now also runs "./configure" and "make".
* tests/suffix5.test: Copy the real `ar-lib' script file,
instead of creating a dummy one, since this test now also
runs "./configure" and "make".
* tests/extra-portability2.test: Fix this test not to rely
on the older, faulty semantics of "strictness specification
always reset warning level", which has been fixed in commit
v1.11-623-g1609491 (see also automake bug#7669 a.k.a. PR/547).
Since we are at it, throw inf few other minor unrelated
improvements.
* tests/extra-portability.test: Explicitly pass `-Wall' to
automake calls, for clarity.
Stefano Lattarini [Thu, 3 Nov 2011 10:39:40 +0000 (11:39 +0100)]
Merge branch 'maint' into msvc
* maint:
maint-mode: fix botched configure messages
fix: regenerate Makefiles
info: allow user to inhibit creation/update of '${infodir}/dir'
deps: partially revert commit `v1.11-512-geeee551'
Stefano Lattarini [Thu, 3 Nov 2011 10:37:30 +0000 (11:37 +0100)]
Merge branch 'maint'
* maint:
maint-mode: fix botched configure messages
fix: regenerate Makefiles
info: allow user to inhibit creation/update of '${infodir}/dir'
Stefano Lattarini [Thu, 3 Nov 2011 10:28:56 +0000 (11:28 +0100)]
Merge branch 'fix-pr9890' into maint
* fix-pr9890:
maint-mode: fix botched configure messages
Stefano Lattarini [Sat, 29 Oct 2011 10:15:59 +0000 (12:15 +0200)]
maint-mode: fix botched configure messages
This change fixes automake bug#9890.
* m4/maintainer.m4 (AM_MAINTAINER_MODE): Fix the "checking ..."
configure message related to the enabling/disabling of maintainer
mode.
* tests/help-maintainer.test: Renamed ...
* tests/maintmode-configure-msg.test: ... to this, and extended
to cover the fixed bug. Also, since we are at it, make grepping
of configure help screens stricter, and throw in some few other
changes to reduce code duplication and enhance readability.
* tests/Makefile.am (TESTS): Update.
* THANKS: Update with Zack's new e-mail address.
Report and initial patch by Zack Weinberg, test cases added by
Stefano Lattarini.
Stefano Lattarini [Sun, 30 Oct 2011 10:58:23 +0000 (11:58 +0100)]
Merge branch 'fix-pr9773' into maint
* fix-pr9773:
fix: regenerate Makefiles
Stefano Lattarini [Sun, 30 Oct 2011 10:58:06 +0000 (11:58 +0100)]
fix: regenerate Makefiles
Stefano Lattarini [Sat, 29 Oct 2011 10:22:50 +0000 (12:22 +0200)]
Merge branch 'fix-pr9773' into maint
* fix-pr9773:
info: allow user to inhibit creation/update of '${infodir}/dir'
Stefano Lattarini [Tue, 25 Oct 2011 11:43:00 +0000 (13:43 +0200)]
tests: few improvements to some `ar-lib' related tests
* tests/ar-lib5a.test (Makefile.am): Also check that the target
library has truly been created.
(ar-lib): Use the real `ar-lib' script (mildly patched) rather
than a dummy one, to ensure better "real-life coverage". Fix
botched shebang line.
* tests/ar-lib5b.test: Extend the PATH variable to make the dummy
`lib' script accessible, instead of explicitly calling it by its
relative/absolute path.
(ar-lib): Fix botched shebang line.
(bin/lib): Likewise. Also, add explicative comments, and make
slightly stricter.
Stefano Lattarini [Tue, 25 Oct 2011 09:34:11 +0000 (11:34 +0200)]
Merge branch 'maint'
* maint:
dejagnu: allow the package developer to extend site.exp
* THANKS: Fix whitespace issue.
deps: partially revert commit `v1.11-512-geeee551'
dejagnu: ensure 'srcdir' is defined as a relative directory
Stefano Lattarini [Tue, 25 Oct 2011 09:04:07 +0000 (11:04 +0200)]
fix: date in recent ChangeLog entry
Stefano Lattarini [Mon, 24 Oct 2011 21:18:34 +0000 (23:18 +0200)]
tests: fix spurious failures due to missing 'yywrap()' function
The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
the "lex library" expected to provide a `yywrap' function (function
which is required to link most lex-generated programs). On the
contrary, when all the link attempts (i.e., with `-ll' and `-lfl')
fail, configure declares that no lex library is needed, and simply
proceeds with the configuration process -- only for the build to
possibly fail later, at make time.
This behaviour is intended; the Autoconf manual reads:
``You are encouraged to use Flex in your sources, since it is
both more pleasant to use than plain Lex and the C source it
produces is portable. In order to ensure portability, however,
you must either provide a function `yywrap' or, if you don't use
it (e.g., your scanner has no `#include'-like feature), simply
include a `%noyywrap' statement in the scanner's source.''
This AC_PROG_LEX behaviour is causing some spurious failures of
the Automake testsuite in environments which lack a proper library
providing `yywrap' (this happens for example on Fedora-based
systems). The proper workaround is to simply provide a fall-back
implementation of `yywrap' in our lexers.
See also partially-overlapping commit `v1.11-871-geb147a1' (from
the 'testsuite-work' branch), which was motivated by similar
spurious failures experienced when cross-compiling.
Reported by Jim Meyering:
<http://lists.gnu.org/archive/html/automake-patches/2011-10/msg00092.html>
* tests/cond35.test: Provide a dummy `yywrap' function.
* tests/lex3.test: Likewise.
* tests/lexvpath.test: Likewise.
* tests/silent-lex-generic.test: Likewise.
* tests/silent-lex-gcc.test: Likewise.
Stefano Lattarini [Mon, 24 Oct 2011 17:45:42 +0000 (19:45 +0200)]
Merge branch 'fix-pr8485-and-pr8526' into maint
* fix-pr8485-and-pr8526:
deps: partially revert commit `v1.11-512-geeee551'
Peter Rosin [Mon, 24 Oct 2011 07:04:24 +0000 (09:04 +0200)]
Merge branch 'maint' into msvc
* tests/subpkg-yacc.test: Adjust to new portability requirements due
to the new AM_PROG_AR macro.
Stefano Lattarini [Sun, 23 Oct 2011 11:19:21 +0000 (13:19 +0200)]
info: allow user to inhibit creation/update of '${infodir}/dir'
With this change, we allow the user to request the install-info
rules not to update the `${infodir}/dir' file, by exporting the
environment variable `AM_UPDATE_INFO_DIR' to the value "no".
This is especially useful to distro packagers, and is a definite
improvement over our previous hack of looking whether the
`install-info' program was the Debian or GNU version -- hack
which had been silently broken with recent versions of debian
install-info BTW (probably since dpkg 1.15.4, 2009-09-06).
This change fixes automake bug#9773. See also Debian Bug#543992.
* lib/am/texinfos.am: Don't look anymore at the output of
`install-info --version' to decide whether to use it to update
the `${infodir}/dir' or not; instead, honour the environment
variable `AM_UPDATE_INFO_DIR'.
* tests/install-info-dir.test: New test.
* tests/Makefile.am (TESTS): Add it.
* tests/defs: Also unset `AM_UPDATE_INFO_DIR', to avoid unwanted
interferences from the environment.
* doc/automake.texi (Texinfo): Update.
* NEWS: Likewise.
* THANKS: Likewise.
Report by Jonathan Nieder.
Stefano Lattarini [Sat, 22 Oct 2011 18:51:43 +0000 (20:51 +0200)]
Merge branch 'dejagnu-siteexp-extend' into maint
* dejagnu-siteexp-extend:
dejagnu: allow the package developer to extend site.exp
Stefano Lattarini [Tue, 1 Feb 2011 08:52:43 +0000 (09:52 +0100)]
dejagnu: allow the package developer to extend site.exp
Fixes automake bug#7873.
* lib/am/dejagnu.am (site.exp): Depend from the files listed in
$(EXTRA_DEJAGNU_SITE_CONFIG), if any. Append their contents to
the generated site.exp (still preserving user edits).
* doc/automake.texi (Dejagnu Tests): Update.
* tests/dejagnu-siteexp-append.test: New test.
* tests/dejagnu-siteexp-extend.test: Likewise.
* tests/dejagnu-siteexp-useredit.test: Likewise.รน
* NEWS: Update.
* tests/Makefile.am (TESTS): Update.
Suggestion by Rainer Orth.
Stefano Lattarini [Sat, 22 Oct 2011 18:42:17 +0000 (20:42 +0200)]
Merge branch 'dejagnu-srcdir-discrepancy' into maint
* dejagnu-srcdir-discrepancy:
dejagnu: ensure 'srcdir' is defined as a relative directory
Fix testsuite failure of check12.test without DejaGNU.
Extend and improve tests on DejaGnu support.
Peter Rosin [Fri, 21 Oct 2011 06:39:48 +0000 (08:39 +0200)]
* THANKS: Fix whitespace issue.
Peter Rosin [Thu, 20 Oct 2011 22:24:38 +0000 (00:24 +0200)]
warnings: new 'extra-portability' category, for AM_PROG_AR
* lib/Automake/ChannelDefs.pm: Register new extra-portability
warning channel.
(switch_warning): Turn off extra-portability if portability is
turned off, and turn on portability if extra-portability is
turned on.
(set_strictness): Silence extra-portability for --gnits, --gnu
and --foreign.
* tests/extra-portability2.test: New test, checking that the
extra-portability channel is silenced by --gnits, --gnu and
--foreign.
* doc/automake.texi (Invoking Automake): Document the new warning
category and its interaction with the portability category.
* tests/extra-portability.test: New test, checking the interaction
between the portability and extra-portability warning categories.
* automake.in (handle_libraries, handle_ltlibraries): Move the
AM_PROG_AR warnings to the new extra-portability channel.
* tests/ar2.test: Adjust to the new warning channel.
* tests/pr300-lib.test: Likewise.
* tests/pr300-ltlib.test: Likewise.
* tests/pr307.test: Likewise.
* tests/pr401.test: Likewise.
* tests/pr401b.test: Likewise.
* tests/pr401c.test: Likewise.
* tests/pr72.test: Likewise.
* NEWS: Likewise.
* tests/Makefile.am (TESTS): Update.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
Peter Rosin [Thu, 20 Oct 2011 22:23:34 +0000 (00:23 +0200)]
ar-lib: new 'AM_PROG_AR' macro, triggering the 'ar-lib' script
* m4/ar-lib.m4: New macro AM_PROG_AR, which locates an
archiver and triggers the auxiliary 'ar-lib' script if needed.
* m4/Makefile.am (dist_m4data_DATA): Update.
* automake.in ($seen_ar): New variable.
(scan_autoconf_traces): Set it.
(handle_libraries, handle_ltlibraries): Require AM_PROG_AR for
portability.
* doc/automake.texi (Public Macros): Mention the new
'AM_PROG_AR' macro.
(Subpackages): Add AM_PROG_AR to the example.
(A Library): Adjust recommendations for AR given the new
AM_PROG_AR macro.
* All relevant tests: Adjust to new portability requirements due
to the new AM_PROG_AR macro.
* tests/ar-lib2.test: New test, checking that AM_PROG_AR triggers
install of ar-lib.
* tests/ar-lib3.test: New test, checking that lib_LIBRARIES
requires AM_PROG_AR.
* tests/ar-lib4.test: New test, checking that lib_LTLIBRARIES
requires AM_PROG_AR.
* tests/ar-lib5a.test: New test, checking that AM_PROG_AR triggers
use of ar-lib when the archiver is Microsoft lib.
* tests/ar-lib5b.test: New test, checking that AM_PROG_AR triggers
use of ar-lib when the archiver is a faked lib.
* tests/ar-lib6a.test: New test, checking the ordering of
AM_PROG_AR and LT_INIT.
* tests/ar-lib6b.test: New test, checking the ordering of
AM_PROG_AR and AC_PROG_LIBTOOL.
* tests/ar-lib7.test: New test, checking that automake warns
if ar-lib is missing.
* tests/ar3.test: New test, checking that AR and ARFLAGS may
be overridden by the user even if AM_PROG_AR is used.
* tests/ar4.test: New test, checking that AM_PROG_AR bails out
if it cannot determine the archiver interface.
* tests/ar5.test: New test, checking that AM_PROG_AR runs its
optional argument if it cannot determine the archiver interface.
* tests/defs.in: New required entry 'lib'.
* tests/Makefile.am (TESTS): Update.
* NEWS: Update.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
Stefano Lattarini [Thu, 20 Oct 2011 21:10:03 +0000 (23:10 +0200)]
Merge branch 'maint'
* maint:
tests: fix spurious failures with "chatty" make implementations
tests: fix spurious failure on fast machines
tests: avoid spurious failure of 'uninstall-fail.test' on Solaris
tests: avoid spurious failure in 'parallel-tests3.test'
tests: fix spurious failure with FreeBSD make and Yacc in VPATH
Stefano Lattarini [Thu, 20 Oct 2011 20:25:45 +0000 (22:25 +0200)]
deps: partially revert commit `v1.11-512-geeee551'
This change partly reverts commit "Create subdirs for generated
sources even when not dep tracking", of 2011-04-02.
That commit had caused the bugs #8485 and #8526. Since we are
nearing the bug-fixing automake release 1.11.2, the safest policy
at the moment is to just revert the problematic hunks: an older,
known bug is better than a regression.
* automake.in (handle_single_transform): Don't add a dirstamp
dependency, even when $object is derived and lands in a subdir.
* tests/Makefile.am (XFAIL_TESTS): Add lex-subobj-nodep.test,
remove yacc-dist-nobuild-subdir.test.
Stefano Lattarini [Thu, 20 Oct 2011 19:44:23 +0000 (21:44 +0200)]
Merge branch 'test-subpkg-fix-spurious-freebsd-fail' into maint
* test-subpkg-fix-spurious-freebsd-fail:
tests: fix spurious failure with FreeBSD make and Yacc in VPATH
Stefano Lattarini [Thu, 20 Oct 2011 19:38:52 +0000 (21:38 +0200)]
Merge branch 'fix-pr8788' into maint
* fix-pr8788:
tests: avoid spurious failure in 'parallel-tests3.test'
Stefano Lattarini [Thu, 20 Oct 2011 19:31:09 +0000 (21:31 +0200)]
tests: fix spurious failures with "chatty" make implementations
* tests/distcheck-missing-m4.test: On failure, some make
implementations (such as Solaris make) print the whole failed
recipe on standard output. This was causing a spurious failure
in the checks grepping the output from make. Work around this.
* tests/distcheck-outdated-m4.test: Likewise.
Jim Meyering [Thu, 20 Oct 2011 15:57:55 +0000 (17:57 +0200)]
tests: fix aclocal-print-acdir.test
* tests/aclocal-print-acdir.test: Adjust to pass.
Stefano Lattarini [Thu, 20 Oct 2011 15:45:12 +0000 (17:45 +0200)]
Merge branch 'aclocal-path' into maint
* aclocal-path:
tests: fix spurious failure on fast machines
Stefano Lattarini [Thu, 20 Oct 2011 15:44:04 +0000 (17:44 +0200)]
tests: fix spurious failure on fast machines
* tests/aclocal-path-precedence.test: Also remove the `configure'
script between different test runs, to ensure it is always remade
by autoconf. Add proper explicative comments.
Stefano Lattarini [Thu, 20 Oct 2011 15:31:11 +0000 (17:31 +0200)]
tests: avoid spurious failure of 'uninstall-fail.test' on Solaris
* tests/uninstall-fail.test: All the Solaris 10 shells (/bin/sh,
/bin/ksh, and /usr/xpg4/bin/sh), upon failing to chdir to a
directory with the `cd' builtin, print a message like:
"sh: /root: permission denied"
which doesn't report the `cd' builtin anywhere. Relax the grepping
of the error message accordingly.
Stefano Lattarini [Thu, 20 Oct 2011 12:50:47 +0000 (14:50 +0200)]
Merge branch 'maint'
* maint:
tests: avoid spurious failure of 'uninstall-fail.test' on Cygwin
tests: fix spurious failure with autoconf 2.62
docs: avoid using colon character inside arguments of @pxref
Stefano Lattarini [Wed, 19 Oct 2011 11:43:46 +0000 (13:43 +0200)]
Merge branch 'fix-pr9578' into maint
* fix-pr9578:
tests: avoid spurious failure of 'uninstall-fail.test' on Cygwin
Stefano Lattarini [Wed, 19 Oct 2011 11:42:40 +0000 (13:42 +0200)]
tests: avoid spurious failure of 'uninstall-fail.test' on Cygwin
* tests/uninstall-fail.test: Be sure to really skip this test
on systems that allows files to be removed from unwritable
directories. Motivated by a spurious failure on Cygwin 1.5.
Stefano Lattarini [Thu, 13 Jan 2011 19:33:26 +0000 (20:33 +0100)]
dejagnu: ensure 'srcdir' is defined as a relative directory
This change fixes automake bug#7833.
* lib/am/dejagnu.am (check-DEJAGNU): Prefer using plain $(srcdir)
over calculating and using the absolute path of $(srcdir).
* tests/dejagnu-relative-srcdir.test: New test.
* tests/dejagnu-absolute-builddir.test: Likewise.
* tests/Makefile.am (TESTS): Update.
Report by Ian Lance Taylor. Suggestions by Ralf Wildenhues.
Stefano Lattarini [Tue, 18 Oct 2011 19:05:24 +0000 (21:05 +0200)]
tests: avoid spurious failure in 'parallel-tests3.test'
This fixes automake bug#8788.
* tests/parallel-tests3.test: To ensure that the serial run of
the dummy testsuite is still ongoing when the parallel run has
terminated, use `kill -0', not a bare `kill'. This will prevent
a testsuite crash on NetBSD 5.1, and a testsuite hang on FreeBSD
8.2. Also, since we are at it, try harder to avoid possible
hangs of the script in other unusual situations.
Stefano Lattarini [Tue, 18 Oct 2011 15:53:21 +0000 (17:53 +0200)]
tests: fix spurious failure with FreeBSD make and Yacc in VPATH
* tests/subpkg.test: Some cosmetic adjustments. Move the tests
checking that $(YLWRAP) is defined and installed properly when
ylwrap is in a default auxdir found in a parent package ...
* tests/subpkg-yacc.test: ... into this new test, which carefully
avoids to trigger the known bug#7884 (combo FreeBSD make plus Yacc
plus VPATH build).
* tests/Makefile.am (TESTS): Update.
Stefano Lattarini [Mon, 17 Oct 2011 15:46:05 +0000 (17:46 +0200)]
Merge branch 'aclocal-path' into maint
Stefano Lattarini [Mon, 17 Oct 2011 15:45:41 +0000 (17:45 +0200)]
tests: fix spurious failure with autoconf 2.62
* tests/aclocal-path-precedence.test: Rewrite configure.in,
rather than appending to it, to avoid spurious failures (at
least with autoconf 2.62) due to repeated calls to AC_INIT.
Also, add package name and version arguments to AC_INIT, to
avoid spurious errors from automake.
Stefano Lattarini [Mon, 17 Oct 2011 09:38:01 +0000 (11:38 +0200)]
refactor: improve signature of 'check_directory' sub in automake
* automake.in (check_directory): Take the relative directory
the directory to be checked is expected to be found into as
an optional parameter, rather than reading it from the global
variable `$relative_dir'.
(scan_autoconf_traces, check_directories_in_var): Adjust.
Stefano Lattarini [Sun, 16 Oct 2011 08:50:47 +0000 (10:50 +0200)]
docs: avoid using colon character inside arguments of @pxref
Fixes automake bug#9753
* doc/automake.texi (VPATH Builds): Avoid using colon character
`:' inside arguments of @pxref, as this can cause problems in
the generated `.info' files, and such an usage will be explicitly
forbidden by future texinfo documentation.
* THANKS: Update.
Reported by ะะธะปัะฝ ะะฐะปะฐัะทะพะฒ.
Stefano Lattarini [Fri, 7 Oct 2011 11:11:37 +0000 (13:11 +0200)]
Merge branch 'maint'
* maint:
parallel-tests: warn on conditional TEST_EXTENSIONS definition
Stefano Lattarini [Fri, 7 Oct 2011 09:08:15 +0000 (11:08 +0200)]
parallel-tests: warn on conditional TEST_EXTENSIONS definition
Before this change, automake would have still bailed out, but
with a confusing error message (about an invalid redefinition
of TEST_EXTENSIONS).
* automake.in (handle_tests): Warn explicitly if TEST_EXTENSIONS
has conditional contents.
* tests/test-extensions-con.test: New test.
* tests/Makefile.am (TESTS): Add it.
* NEWS: Update.
Stefano Lattarini [Thu, 6 Oct 2011 19:42:06 +0000 (21:42 +0200)]
Merge branch 'maint'
Stefano Lattarini [Thu, 6 Oct 2011 19:40:17 +0000 (21:40 +0200)]
Merge branch 'fix-pr9400' into maint
* fix-pr9400:
parallel-tests: don't allow @substitutions@ in TEST_EXTENSIONS
Stefano Lattarini [Thu, 6 Oct 2011 19:30:04 +0000 (21:30 +0200)]
parallel-tests: don't allow @substitutions@ in TEST_EXTENSIONS
Even after the last commit `v1.11-476-g90bea64', the checks
performed by automake on entries in $(TEST_EXTENSIONS) tried to
allow for @substitited@ stuff. This however ends up allowing
quite brittle setups, which, most importantly, are of no real
practical usefulness anyway. So it's better to just disallow
@substitutions@ in TEST_EXTENSIONS altogether, offering a clear
error message, instead of risking weird bugs and unexpected
behaviors in the generated Makefile.in.
* automake.in ($TEST_EXTENSION_PATTERN): Turned from a regular
expression ...
(is_valid_test_extension): ... into this subroutine. Don't allow
generic @substitutions@ anymore (possibly making an exception for
`@EXEEXT@' under the proper circumstances).
* tests/test-extensions.test: Adjust and extend.
Stefano Lattarini [Thu, 6 Oct 2011 14:22:25 +0000 (16:22 +0200)]
Merge branch 'fix-pr9579' into maint
* fix-pr9579:
tests: fix spurious failure in 'insthook.test'
Stefano Lattarini [Thu, 6 Oct 2011 14:21:16 +0000 (16:21 +0200)]
tests: fix spurious failure in 'insthook.test'
* tests/insthook.test (Makefile.am): Add a proper `uninstall-hook'
target to remove the symlink created by the `install-exec-hook'
target; this prevents "make distcheck" from failing spuriously.
Since we are at it, delete an extra blank line, and add a trailing
`:' command.
Stefano Lattarini [Thu, 6 Oct 2011 14:14:46 +0000 (16:14 +0200)]
Merge branch 'fix-pr9579' into maint
* fix-pr9579:
maintcheck: fix spurious failure
regenerate Makefile.in
Stefano Lattarini [Thu, 6 Oct 2011 14:10:40 +0000 (16:10 +0200)]
maintcheck: fix spurious failure
* lib/am/distdir.am: Use `$(infodir)', not `${infodir}', to avoid
complaints from the `sc_no_brace_variable_expansions' maintainer
check.
Stefano Lattarini [Thu, 6 Oct 2011 14:10:23 +0000 (16:10 +0200)]
regenerate Makefile.in
Stefano Lattarini [Thu, 6 Oct 2011 11:56:49 +0000 (13:56 +0200)]
Merge branch 'maint'
* maint:
fix: make a test script executable
coverage: expose automake bug#9651
parallel-tests: automake error our on invalid TEST_EXTENSIONS
fix: regenerate Makefile
docs: don't suggest installing `.m4' files in hard-coded location
distuninstallcheck: fail also when only one file is left installed
Stefano Lattarini [Thu, 6 Oct 2011 11:42:11 +0000 (13:42 +0200)]
fix: make a test script executable
* tests/nobase-nodist.test: Make executable.
Stefano Lattarini [Thu, 6 Oct 2011 11:26:58 +0000 (13:26 +0200)]
coverage: expose automake bug#9651
* tests/dist-auxfile.test: New test, xfailing.
* tests/dist-auxfile-2.test: Likewise.
* tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.
Stefano Lattarini [Thu, 6 Oct 2011 08:45:25 +0000 (10:45 +0200)]
Merge branch 'fix-pr9400' into maint
* fix-pr9400:
parallel-tests: automake error our on invalid TEST_EXTENSIONS
Stefano Lattarini [Sat, 1 Oct 2011 19:31:07 +0000 (21:31 +0200)]
parallel-tests: automake error our on invalid TEST_EXTENSIONS
This change fixes automake bug#9400.
* automake.in (handle_tests): Bail out if a suffix specified in
TEST_EXTENSIONS would produce an invalid `xxx_LOG_COMPILER'
variable or an invalid suffix rule. Before this change, automake
would have issued a confusing error messages (about invalid or
non-POSIX variables being defined), and in some situations would
have even produced a broken `Makefile.in' file.
($TEST_EXTENSION_PATTERN): New helper variable.
* doc/automake.texi (Simple Tests using parallel-tests): Document
the limitations on TEST_EXTENSIONS explicitly.
* NEWS: Update.
* tests/test-extensions.test: New test.
* tests/Makefile.am (TESTS): Update.
Stefano Lattarini [Sat, 1 Oct 2011 17:31:22 +0000 (19:31 +0200)]
fix: regenerate Makefile
Stefano Lattarini [Sat, 1 Oct 2011 17:28:24 +0000 (19:28 +0200)]
Merge branch 'fix-pr7988' into maint
* fix-pr7988:
docs: don't suggest installing `.m4' files in hard-coded location
Stefano Lattarini [Sat, 1 Oct 2011 17:22:37 +0000 (19:22 +0200)]
Merge branch 'fix-pr9579' into maint
* fix-pr9579:
distuninstallcheck: fail also when only one file is left installed
Stefano Lattarini [Wed, 28 Sep 2011 14:58:52 +0000 (16:58 +0200)]
Merge branch 'maint'
* maint:
fix: regenerate Makefile.in files
maintcheck: fix usage of `cd' instead of `$(am__cd)'
Stefano Lattarini [Wed, 28 Sep 2011 14:49:35 +0000 (16:49 +0200)]
Merge branch 'fix-pr9578' into maint
* fix-pr9578:
fix: regenerate Makefile.in files
Stefano Lattarini [Wed, 28 Sep 2011 14:46:58 +0000 (16:46 +0200)]
fix: regenerate Makefile.in files
Stefano Lattarini [Wed, 28 Sep 2011 11:21:11 +0000 (13:21 +0200)]
Merge branch 'fix-pr9578' into maint
* fix-pr9578:
maintcheck: fix usage of `cd' instead of `$(am__cd)'
Stefano Lattarini [Wed, 28 Sep 2011 11:17:13 +0000 (13:17 +0200)]
maintcheck: fix usage of `cd' instead of `$(am__cd)'
* lib/am/inst-vars.am (am__uninstall_files_from_dir): Use
`$(am__cd)', not plain `cd'.
Stefano Lattarini [Sun, 25 Sep 2011 12:29:19 +0000 (14:29 +0200)]
docs: don't suggest installing `.m4' files in hard-coded location
This change fixes automake bug#7988.
* doc/automake.texi (aclocal Options): State that the use of
the `--print-ac-dir' option to determine the directory where
third-party packages can install their `.m4' files is discouraged
now.
(Extending aclocal): Suggest telling the user about ACLOCAL_PATH.
* THANKS: Update.
Report by Peter Johansson.
Stefano Lattarini [Wed, 28 Sep 2011 09:11:51 +0000 (11:11 +0200)]
Merge branch 'maint'
* maint:
uninstall: "make uninstall" before "make install" works
Stefano Lattarini [Fri, 23 Sep 2011 14:06:59 +0000 (16:06 +0200)]
distuninstallcheck: fail also when only one file is left installed
This change fixes automake bug#9579.
* lib/am/distdir.am (distuninstallcheck): Be stricter in ignoring
a potential `dir' file created by install-info and left installed.
Also, be more careful about "this can't happen" kind of errors.
(am__distuninstallcheck_listfiles): New internal helper macro.
* tests/distcheck-pr9579.test: New test.
* tests/distcheck-override-infodir.test: Likewise.
* tests/Makefile.am (TESTS): Add them.
* NEWS, THANKS: Update.
Report by Nick Bowler.
Stefano Lattarini [Mon, 26 Sep 2011 19:50:37 +0000 (21:50 +0200)]
Merge branch 'fix-pr9578' into maint
* fix-pr9578:
uninstall: "make uninstall" before "make install" works
Stefano Lattarini [Fri, 23 Sep 2011 20:50:14 +0000 (22:50 +0200)]
uninstall: "make uninstall" before "make install" works
This change fixes automake bug#9578.
* lib/am/inst-vars.am (am__uninstall_files_from_dir): New internal
macro, that defines a shell code fragment to uninstall files from
a given directory.
* lib/am/data.am (uninstall-%DIR%%PRIMARY%): Use it, to reduce code
duplication and improve consistency and correctness.
* lib/am/libs.am (uninstall-%DIR%LIBRARIES): Likewise.
* lib/am/lisp.am (uninstall-%DIR%LISP): Likewise.
* lib/am/mans.am (uninstall-man%SECTION%): Likewise.
* lib/am/python.am (uninstall-%DIR%LIBRARIES): Likewise.
* lib/am/scripts.am (uninstall-%DIR%SCRIPTS): Likewise.
* tests/uninstall-pr9578.test: New test.
* tests/uninstall-fail.test: New test.
* tests/Makefile.am (TESTS): Add them.
* NEWS, THANKS: Update.
Report by Nick Bowler.
Stefano Lattarini [Thu, 22 Sep 2011 14:40:40 +0000 (16:40 +0200)]
Merge branch 'maint'
* maint:
tests: fix tests on aclocal search path precedences
Stefano Lattarini [Thu, 22 Sep 2011 14:40:32 +0000 (16:40 +0200)]
Merge branch 'aclocal-path' into maint
* aclocal-path:
tests: fix tests on aclocal search path precedences
Stefano Lattarini [Thu, 22 Sep 2011 14:40:03 +0000 (16:40 +0200)]
tests: fix tests on aclocal search path precedences
* tests/aclocal-path-precedence.test: Call `$ACLOCAL' with the
proper overridden system acdir.
Stefano Lattarini [Tue, 20 Sep 2011 18:39:04 +0000 (20:39 +0200)]
docs: remove mention of deprecated option `--acdir'
* doc/automake.texi (aclocal Options): Remove mention of
deprecated `--acdir' option.
Stefano Lattarini [Tue, 20 Sep 2011 18:27:23 +0000 (20:27 +0200)]
fix: cleanup NEWS after botched merges
Stefano Lattarini [Tue, 20 Sep 2011 18:21:06 +0000 (20:21 +0200)]
Merge branch 'maint'
* maint:
fix: typo in NEWS
Stefano Lattarini [Tue, 20 Sep 2011 18:20:53 +0000 (20:20 +0200)]
fix: typo in NEWS
Stefano Lattarini [Tue, 20 Sep 2011 18:16:43 +0000 (20:16 +0200)]
Merge branch 'maint'
* maint:
docs: document planned precedence changes in aclocal search path
aclocal: handle ACLOCAL_PATH environment variable
tests: fix spurious failure in 'primary-prefix-valid-couples.test'
docs: deprecate JAVA primary
docs: clearer distinction between `.java' with javac and with gcj
java: complain if java_JAVA is used but $(javadir) is undefined
Stefano Lattarini [Tue, 20 Sep 2011 18:15:55 +0000 (20:15 +0200)]
Merge branch 'aclocal-path' into maint
* aclocal-path:
docs: document planned precedence changes in aclocal search path
aclocal: handle ACLOCAL_PATH environment variable
Stefano Lattarini [Tue, 20 Sep 2011 15:42:01 +0000 (17:42 +0200)]
docs: document planned precedence changes in aclocal search path
* doc/automake.texi (Macro Search Path): Explicitly state that the
lookup order for extra directories of `.m4' files will be changed
in the next major release.
* NEWS: Likewise.
Paolo Bonzini [Tue, 9 Nov 2010 19:14:38 +0000 (20:14 +0100)]
aclocal: handle ACLOCAL_PATH environment variable
* aclocal.in (parse_ACLOCAL_PATH): New function, parse ACLOCAL_PATH
as a colon-separated list of directories to be included in the
search path.
* doc/automake.texi (Macro Search Path): Document new behavior and
the precedence rules for various elements of the search path.
* tests/aclocal-path.test: New test.
* tests/aclocal-path-install.test: Likewise.
* tests/aclocal-path-install-serial.test: Likewise.
* tests/aclocal-path-precedence.test: Likewise.
* tests/aclocal-path-nonexistent.test: Likewise.
* tests/Makefile.am (TESTS): Add them.
* NEWS: Update.
* tests/distcheck-missing-m4.test: Extend by also checking
interactions with ACLOCAL_PATH.
* tests/distcheck-outdated-m4.test: Likewise, and fix a couple
of botched comments since we are at it.
Stefano Lattarini [Mon, 19 Sep 2011 16:24:44 +0000 (18:24 +0200)]
Merge branch 'fix-java-prefix-is-unexpected' into maint
Stefano Lattarini [Mon, 19 Sep 2011 16:21:25 +0000 (18:21 +0200)]
tests: fix spurious failure in 'primary-prefix-valid-couples.test'
* tests/primary-prefix-valid-couples.test: After commit
v1.11-464-gc9dfc36, `java_JAVA' is not a valid prefix/primary
combination by default anymore: one has to explicitly define
$(javadir) to make it so. So just drop `java_JAVA' from our
Makefile.am Also, since we are at it, ...
(configure.in): ... remove AM_PROG_GCJ from here, as it's not
really required.
Stefano Lattarini [Mon, 19 Sep 2011 11:30:30 +0000 (13:30 +0200)]
Merge branch 'deprecate-java-primary' into maint
Stefano Lattarini [Mon, 19 Sep 2011 09:28:42 +0000 (11:28 +0200)]
docs: deprecate JAVA primary
* doc/automake.texi (Java): Deprecate the JAVA primary, stating
that it will become obsolete in automake 1.12 and probably removed
altogether in automake 1.13. Reflect this in the section title,
by appending the string "(deprecated feature)".
(@menu, @detailmenu): Update.
(Java Support with gcj): The cross-referenced support for bytecode
compilation with the JAVA primary is rudimentary and deprecated.
State that explicitly.
Stefano Lattarini [Mon, 19 Sep 2011 09:16:12 +0000 (11:16 +0200)]
docs: clearer distinction between `.java' with javac and with gcj
* doc/automake.texi (Java support): Rename this node ...
(Java support with gcj): ... to this, and change its title from
"Compiling Java sources" to "Compiling Java sources using gcj".
(@detailmenu, @menu, @cindex): Update and make more precise.
(Java): Change the title of this node from simply "Java" to
"Java bytecode compilation".
(@detailmenu, @menu, @cindex): Update and make more precise.
Stefano Lattarini [Sun, 18 Sep 2011 21:32:38 +0000 (23:32 +0200)]
java: complain if java_JAVA is used but $(javadir) is undefined
Fixes automake bug#8461.
* automake.in (handle_java): Remove inappropriate "java" argument
from the calls to `&am_install_var' and `&am_primary_prefixes'.
* tests/instdir-java.test (Makefile.am): Define `$(javadir)'.
* tests/javadir-undefined.test: New test.
* tests/Makefile.am (TESTS): Add it.
* NEWS: Update.
Stefano Lattarini [Sun, 18 Sep 2011 16:21:29 +0000 (18:21 +0200)]
Merge branch 'remove-deansification'
* remove-deansification:
automake: remove special handling of `ANSI2KNR' make variable
Stefano Lattarini [Sun, 18 Sep 2011 16:13:59 +0000 (18:13 +0200)]
Merge branch 'maint'
* maint:
coverage: test interactions of `nobase_' and `nodist_'
cosmetics: fix various typos and grammaros
py-compile: '--' and non-option arguments terminate the option list
py-compile: complain on unrecognized options
py-compile: normalize error and help messages
python tests: add "unit tests" on py-compile
py-compile: the '--destdir' option now accepts a blank argument
python: run the 'py-compile' script with $(SHELL)
Stefano Lattarini [Sun, 18 Sep 2011 16:05:43 +0000 (18:05 +0200)]
Merge branch 'python-work' into maint
* python-work:
cosmetics: fix various typos and grammaros
py-compile: '--' and non-option arguments terminate the option list
py-compile: complain on unrecognized options
py-compile: normalize error and help messages
python tests: add "unit tests" on py-compile
py-compile: the '--destdir' option now accepts a blank argument
python: run the 'py-compile' script with $(SHELL)
Stefano Lattarini [Sun, 18 Sep 2011 15:51:31 +0000 (17:51 +0200)]
coverage: test interactions of `nobase_' and `nodist_'
* tests/nobase-nodist.test: New test.
* tests/Makefile.am (TESTS): Add it.
Stefano Lattarini [Sun, 18 Sep 2011 15:36:05 +0000 (17:36 +0200)]
Merge branch 'maint'
* maint:
java: fix various blunders in test 'java-mix.test'
Stefano Lattarini [Sun, 18 Sep 2011 15:32:50 +0000 (17:32 +0200)]
java: fix various blunders in test 'java-mix.test'
* tests/java-mix.test: Add missing call to `set -e'. Fix inverted
semantics (`.java' files are expected *not* to be distributed by
default, not the other way round). Fix various typos in the name
of the `.java' files. Correct other minor blunders. Improve some
comments.
Stefano Lattarini [Sun, 18 Sep 2011 14:32:46 +0000 (16:32 +0200)]
Merge branch 'java-work'
* java-work:
fix: remove duplicated ChangeLog entries
java: allow both JAVA and nobase_JAVA in the same Makefile.am
java: allow both dist_JAVA and nodist_JAVA in the same Makefile.am
fix: regenerate tests/Makefile.in
tests defs: use `skip_' for skipping java-related tests
java tests: use $PATH_SEPARATOR where appropriate
java coverage: test JAVACFLAGS and AM_JAVACFLAGS
java coverage: test rebuild rules for java
java coverage: try to build and run a java program
test defs: new requirement for the default java interpreter
java tests: tweak and make stricter a couple of tests
java coverage: add test on uninstall with JAVA primary
java tests: require java compiler more properly
java: allow both JAVA and nobase_JAVA in the same Makefile.am
java: allow both dist_JAVA and nodist_JAVA in the same Makefile.am
Stefano Lattarini [Sun, 18 Sep 2011 14:24:04 +0000 (16:24 +0200)]
fix: remove duplicated ChangeLog entries
Stefano Lattarini [Sun, 18 Sep 2011 14:21:04 +0000 (16:21 +0200)]
Merge branch 'maint' into java-work
Stefano Lattarini [Sun, 18 Sep 2011 14:19:25 +0000 (16:19 +0200)]
Merge branch 'java-fixes-for-maint' into maint
Stefano Lattarini [Fri, 16 Sep 2011 11:41:42 +0000 (13:41 +0200)]
automake: remove special handling of `ANSI2KNR' make variable
* automake.in (define_configure_variable): Remove special-cased
handling of `ANSI2KNR' variable. Related minor simplifications.
Stefano Lattarini [Mon, 12 Sep 2011 16:37:05 +0000 (18:37 +0200)]
cosmetics: fix various typos and grammaros
* NEWS: Fix typos.
* tests/py-compile-basic.test: Likewise.
* tests/py-compile-basedir.test: Fix botched wording in comments.
* tests/py-compile-option-terminate.test: Fix typo and incomplete
comment.
Suggestions by Peter Rosin.