platform/upstream/automake.git
12 years agotests: fix spurious failure in 'lex3.test'
Stefano Lattarini [Thu, 15 Dec 2011 22:12:07 +0000 (23:12 +0100)]
tests: fix spurious failure in 'lex3.test'

* tests/lex3.test (foo.l): Remove duplicated definition of
`yywrap'.  Problem introduced in merge `v1.11-1579-g8d3466c'.

12 years agoMerge branch 'master' into testsuite-work
Stefano Lattarini [Fri, 9 Dec 2011 23:58:13 +0000 (00:58 +0100)]
Merge branch 'master' into testsuite-work

12 years agoMerge branch 'maint'
Stefano Lattarini [Fri, 9 Dec 2011 23:46:13 +0000 (00:46 +0100)]
Merge branch 'maint'

Commits merged from maint:
  dist-xz, dist-bzip2: don't hard-code -9, honor envvar settings
  news: fix typos, grammaros and suboptimal wording
  maint: sync auxiliary files from upstream
  tests: fix spurious failures due to missing 'yywrap()' function
  depcomp: spelling fix
  tests: fix 'distcheck-override-infodir.test' on Cygwin
  cosmetics: typofix in comments
  coverage: undistributed '.am' and '.m4' files are diagnosed
  coverage: required but missing '.am' and '.m4' files are diagnosed
  coverage: expose automake bug#10111 in the testsuite
  fix: regenerate doc/Makefile
  texinfo: work around Solaris 10 xpg4 shell bug in install rules
  configure: report perl version in config.log
  tests: fix spurious failure with older install-info
  maintcheck: fix spurious failure in 'color2.test'
  tests: fix spurious error in 'uninstall-fail.test' on Solaris
  tests: fix typo in 'uninstall-fail.test'

Extra edits:
  * ChangeLog: Remove mention of commit 6da46f31 (2010-10-05), which
  has been superseded by commit c8e01d58 (2011-12-09).  Fix entry
  relative to that commit, to adapt to differences between maint and
  master.

12 years agodist-xz, dist-bzip2: don't hard-code -9, honor envvar settings
Jim Meyering [Fri, 9 Dec 2011 22:17:18 +0000 (23:17 +0100)]
dist-xz, dist-bzip2: don't hard-code -9, honor envvar settings

Before the present change, automake-generated `dist-xz' rule used
a hard-coded `xz -9'.  That was a problem because on this front,
xz differs from gzip and bzip2.  While the latter two don't incur
any run-time decompression penalty for using a higher compression
level, specifying -9 with xz imposes a potentially fatal virtual
memory requirement on any client that wants to decompress your
tar.xz file.
People have complained that a tarball compressed with -9 cannot
be uncompressed in a low-memory environment (wrt-based embedded).
Hence, instead of defaulting to -9, which is useful only for very
large tarballs, it defaults to -e (equivalent to -6e).  This
limits the default memory requirements imposed on decompressors,
yet still gives very good compression ratios.

* lib/am/distdir.am (dist-xz): Do not hard-code xz's -9: that made
it impossible to override.  Actually don't default to -9, either,
since that induced inordinately large virtual memory usage when
merely decompressing.  Instead, use its XZ_OPT envvar, defaulting
to -e if not defined.  Suggested by Lasse Collin.
(dist, dist-all) [?XZ?]: Likewise
(dist-bzip2): Similarly, do not hard-code -9, but do continue to
use -9 by default.  Honor the BZIP2 envvar.
(dist, dist-all) [?BZIP2?]: Likewise
* NEWS: Update.
* doc/automake.texi (The Types of Distributions): Describe the
newly enabled environment variables.

This is inspired to commit v1.11-389-g6da46f3, with additional
changes to reflect that the xz compression level should default
to -e, not -9.

12 years agonews: fix typos, grammaros and suboptimal wording
Stefano Lattarini [Fri, 9 Dec 2011 11:47:53 +0000 (12:47 +0100)]
news: fix typos, grammaros and suboptimal wording

* NEWS: Fix typos, grammaros and suboptimal wording.

Reported by Jim Meyering.

12 years agomaint: sync auxiliary files from upstream
Stefano Lattarini [Wed, 7 Dec 2011 20:02:39 +0000 (21:02 +0100)]
maint: sync auxiliary files from upstream

* lib/texinfo.tex: Synced from upstream, by "make fetch".
* lib/config.guess: Likewise.
* lib/config.sub: Likewise.

12 years agotests: fix spurious failures due to missing 'yywrap()' function
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.

* tests/cond35.test: Provide a dummy `yywrap' function.
* tests/lex3.test: Likewise.
* tests/silent-lex-generic.test: Likewise.
* tests/silent-lex-gcc.test: Likewise.
* tests/silent-many-generic.test: Likewise.
* tests/silent-many-gcc.test: Likewise.

Reported by Jim Meyering:
<http://lists.gnu.org/archive/html/automake-patches/2011-10/msg00092.html>

Cherry-picked (with some edits) from commits `v1.11-1085-gb5c3968'
(master) and `v1.11-871-geb147a1' (testsuite-work).

12 years agodepcomp: spelling fix
Paul Eggert [Sun, 4 Dec 2011 11:11:30 +0000 (12:11 +0100)]
depcomp: spelling fix

* lib/depcomp (-h): Fix misspelling in usage diagnostic.

12 years agotests: fix 'distcheck-override-infodir.test' on Cygwin
Peter Rosin [Sat, 26 Nov 2011 13:54:00 +0000 (14:54 +0100)]
tests: fix 'distcheck-override-infodir.test' on Cygwin

* tests/distcheck-override-infodir.test (Makefile.am): Do not add
any `/' between $(DESTDIR) and the following paths.  Otherwise,
when $(DESTDIR) is empty, the recipes will try to access files
with a leading double slash, which have an implementation-defined
interpretation (e.g., for Cygwin, they mean UNC paths).

12 years agocosmetics: typofix in comments
Stefano Lattarini [Thu, 24 Nov 2011 11:14:49 +0000 (12:14 +0100)]
cosmetics: typofix in comments

* tests/remake-am-pr10111.test (Makefile.am): Fix typo in comments.
* THANKS: Update.

Reported by Krzysztof Żelechowski.

12 years agocoverage: undistributed '.am' and '.m4' files are diagnosed
Stefano Lattarini [Thu, 20 Oct 2011 09:55:01 +0000 (11:55 +0200)]
coverage: undistributed '.am' and '.m4' files are diagnosed

The stub rules emitted to work around the "deleted header problem"
for `.m4' files (included by autoconf in e.g., configure.ac) and
for `.am' files (included by automake in e.g., Makefile.am) should
not prevent "make" from correctly complaining when such a required
file is missing from a distribution tarball.
* tests/dist-missing-am.test: New test.
* tests/dist-missing-m4.test: Likewise.
* tests/dist-missing-included-m4.test: Likewise.
* tests/Makefile.am (TESTS): Add them.

Suggestion by Ralf Wildenhues.

12 years agocoverage: required but missing '.am' and '.m4' files are diagnosed
Stefano Lattarini [Sun, 16 Oct 2011 15:07:19 +0000 (17:07 +0200)]
coverage: required but missing '.am' and '.m4' files are diagnosed

The stub rules emitted to work around the "deleted header problem"
for `.m4' files (included by autoconf in e.g., configure.ac) and
for `.am' files (included by automake in e.g., Makefile.am) should
not prevent the remake rules from correctly erroring out when a
still-required file is missing.

* tests/deleted-am.test: New test.
* tests/deleted-m4.test: Likewise.
* tests/Makefile.am (TESTS): Add them.

12 years agocoverage: expose automake bug#10111 in the testsuite
Stefano Lattarini [Tue, 22 Nov 2011 19:50:53 +0000 (20:50 +0100)]
coverage: expose automake bug#10111 in the testsuite

* tests/remake-am-pr10111.test: New test, xfailing.
* tests/remake-m4-pr10111.test: Likewise.
* tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.

12 years agofix: regenerate doc/Makefile
Stefano Lattarini [Tue, 22 Nov 2011 10:52:40 +0000 (11:52 +0100)]
fix: regenerate doc/Makefile

12 years agotexinfo: work around Solaris 10 xpg4 shell bug in install rules
Stefano Lattarini [Sat, 19 Nov 2011 18:53:57 +0000 (19:53 +0100)]
texinfo: work around Solaris 10 xpg4 shell bug in install rules

* lib/am/texinfos.am (install-html-am): Use an extra variable
indirection to work around a bug in Solaris 10 /usr/xpg4/bin/sh.
Bug revealed by a failure of `txinfo21.test'.  See also:
<http://lists.gnu.org/archive/html/bug-autoconf/2011-11/msg00005.html>
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10026#23>

12 years ago* lib/install-sh: Spelling fix in comment.
Paul Eggert [Sun, 20 Nov 2011 07:51:15 +0000 (23:51 -0800)]
* lib/install-sh: Spelling fix in comment.

12 years agoconfigure: report perl version in config.log
Stefano Lattarini [Thu, 17 Nov 2011 08:04:10 +0000 (09:04 +0100)]
configure: report perl version in config.log

* configure.ac: Report the version of the selected perl interpreter
in config.log; this should render the logs more informative.

12 years agotests: fix spurious failure with older install-info
Stefano Lattarini [Sun, 13 Nov 2011 09:25:43 +0000 (10:25 +0100)]
tests: fix spurious failure with older install-info

* tests/install-info-dir.test (foo.texi): Also add proper
`@settitle', `@dircategory' and `@direntry' directive, otherwise
older versions of `install-info' (e.g., 4.8) will fail to create
the `dir' index file in ${infodir}.

Problem revealed by a failure on NetBSD 5.1.

12 years agomaintcheck: fix spurious failure in 'color2.test'
Stefano Lattarini [Sat, 12 Nov 2011 21:24:36 +0000 (22:24 +0100)]
maintcheck: fix spurious failure in 'color2.test'

* tests/color2.test: Avoid creative quoting to avoid a spurious
failure of the `sc_tests_Exit_not_exit' maintainer check.

12 years agotests: fix spurious error in 'uninstall-fail.test' on Solaris
Stefano Lattarini [Sat, 12 Nov 2011 17:41:53 +0000 (18:41 +0100)]
tests: fix spurious error in 'uninstall-fail.test' on Solaris

* tests/uninstall-fail.test: Solaris 10 /usr/xpg4/bin/sh can add
a line number before the `:' in the error messages issued by shell
builtins.  Account for that in our grepping of make output.

12 years agotests: fix typo in 'uninstall-fail.test'
Stefano Lattarini [Sat, 12 Nov 2011 17:25:38 +0000 (18:25 +0100)]
tests: fix typo in 'uninstall-fail.test'

* tests/uninstall-fail.test: Always use `$rm_f_is_silent_on_error'
instead of the bogus `$rm_f_is_silent_on_failure'.

12 years agoMerge branch 'maint'
Stefano Lattarini [Thu, 10 Nov 2011 11:55:00 +0000 (12:55 +0100)]
Merge branch 'maint'

* maint:
  tests: avoid a spurious failure of 'ltinit.test' MinGW
  tests: testsuite is now safe to run with dmake in parallel mode
  tests: fix spurious failures w.r.t. parallel make and colorization
  tests: fix spurious failure in 'distcheck-override-infodir.test'
  tests: avoid another failure of 'uninstall-fail.test' on Solaris

12 years agotests: avoid a spurious failure of 'ltinit.test' MinGW
Stefano Lattarini [Thu, 10 Nov 2011 11:43:54 +0000 (12:43 +0100)]
tests: avoid a spurious failure of 'ltinit.test' MinGW

* tests/ltinit.test: Be laxer in grepping configure output, to
avoid spurious failures on systems which lack POSIX dynamic
linking (e.g., MinGW), or when cross-compiling for such systems.

See also commit `v1.11-855-ge9e5d4a'.

Report and suggestion from Peter Rosin.

12 years agotests: testsuite is now safe to run with dmake in parallel mode
Stefano Lattarini [Tue, 8 Nov 2011 18:50:29 +0000 (19:50 +0100)]
tests: testsuite is now safe to run with dmake in parallel mode

* tests/defs.in: Unset variables DMAKE_CHILD, DMAKE_DEF_PRINTED
and DMAKE_MAX_JOBS, which are exported by Solaris dmake when run
in parallel mode, and which might confuse make processes spawned
by our testsuite.

12 years agotests: fix spurious failures w.r.t. parallel make and colorization
Stefano Lattarini [Tue, 8 Nov 2011 17:41:30 +0000 (18:41 +0100)]
tests: fix spurious failures w.r.t. parallel make and colorization

* tests/color2.test: Skip the test if the $MAKE program fails to
consider the standard output as a tty when spawned by `expect'.
This is required for make implementations, like FreeBSD make and
Solaris dmake, that redirect the output of recipes to temporary
files or pipes when run in parallel mode.  Since we are at it,
simplify the detection of a working `expect' program, and throw
in other minor simplifications.

12 years agoMerge branch 'fix-pr9579' into maint
Stefano Lattarini [Mon, 7 Nov 2011 15:07:25 +0000 (16:07 +0100)]
Merge branch 'fix-pr9579' into maint

* fix-pr9579:
  tests: fix spurious failure in 'distcheck-override-infodir.test'

12 years agotests: fix spurious failure in 'distcheck-override-infodir.test'
Stefano Lattarini [Mon, 7 Nov 2011 15:05:48 +0000 (16:05 +0100)]
tests: fix spurious failure in 'distcheck-override-infodir.test'

* tests/distcheck-override-infodir.test ($required): Add
'install-info'.

12 years agotests: avoid another failure of 'uninstall-fail.test' on Solaris
Stefano Lattarini [Mon, 7 Nov 2011 14:59:43 +0000 (15:59 +0100)]
tests: avoid another failure of 'uninstall-fail.test' on Solaris

* tests/uninstall-fail.test: On Solaris 10, if `/bin/rm' is run
with the `-f' option, it doesn't print any error message when
failing to remove a file (due to e.g., "Permission denied").
Yikes.  Cater to this incompatibility, by relaxing the test when
a faulty `rm' is detected.

12 years agoMerge branch 'master' into testsuite-work
Stefano Lattarini [Sat, 5 Nov 2011 20:39:54 +0000 (21:39 +0100)]
Merge branch 'master' into testsuite-work

* master:
  ar-lib: fix configure output for "unrecognized archiver interface"

12 years agoMerge branch 'msvc'
Stefano Lattarini [Sat, 5 Nov 2011 20:38:52 +0000 (21:38 +0100)]
Merge branch 'msvc'

* msvc:
  ar-lib: fix configure output for "unrecognized archiver interface"

12 years agoar-lib: fix configure output for "unrecognized archiver interface"
Stefano Lattarini [Sat, 5 Nov 2011 20:35:40 +0000 (21:35 +0100)]
ar-lib: fix configure output for "unrecognized archiver interface"

* m4/ar-lib.m4: Ensure that, even when an error is hit while trying
to determine the archiver interface kind, the "checking archiver
interface" message from configure is properly terminated before
an error message is printed, to avoid slightly garbled output.
* tests/ar4.test: Enhance.
* tests/ar5.test: Likewise.

12 years agotests: more faithful 'installcheck' support in few tests
Stefano Lattarini [Sat, 5 Nov 2011 20:30:39 +0000 (21:30 +0100)]
tests: more faithful 'installcheck' support in few tests

* tests/ar-lib5a.test: Use the `$am_scriptdir' variable instead
of "$testsrcdir/../lib" or "$top_testsrcdir/lib", to test more
faithfully under "make installcheck".
* tests/ar-lib5a.test: Likewise.
* tests/libobj-basic.test: Likewise.
* tests/libobj19.test: Likewise.
* tests/suffix5.test: Likewise.

12 years agotests: remove redundant settings of `errexit' shell flag
Stefano Lattarini [Sat, 5 Nov 2011 19:41:49 +0000 (20:41 +0100)]
tests: remove redundant settings of `errexit' shell flag

* tests/aclocal-path-install-serial.test: Do not set the
`errexit' shell flag, as it is already set by `tests/defs'.
* tests/ar-lib2.test: Likewise.
* tests/ar-lib3.test: Likewise.
* tests/ar-lib4.test: Likewise.
* tests/ar-lib5a.test: Likewise.
* tests/ar-lib5b.test: Likewise.
* tests/ar-lib6a.test: Likewise.
* tests/ar-lib6b.test: Likewise.
* tests/ar-lib7.test: Likewise.
* tests/ar3.test: Likewise.
* tests/ar4.test: Likewise.
* tests/ar5.test: Likewise.
* tests/extra-portability.test: Likewise.
* tests/extra-portability2.test: Likewise.
* tests/extra-portability3.test: Likewise.
* tests/install-info-dir.test: Likewise.
* tests/maintmode-configure-msg.test: Likewise.

12 years agogenerated tests: avoid extra "FIXME" comments
Stefano Lattarini [Sat, 5 Nov 2011 19:33:19 +0000 (20:33 +0100)]
generated tests: avoid extra "FIXME" comments

* tests/gen-testsuite-part: Avoid putting too much "FIXME"
comments in the generated test scripts, since they end up
being just counter-productive noise when one has to grep
the test scripts looking for real "FIXME" items.

12 years agoMerge branch 'prove' into testsuite-work
Stefano Lattarini [Sat, 5 Nov 2011 15:22:22 +0000 (16:22 +0100)]
Merge branch 'prove' into testsuite-work

* prove:
  cosmetics: fix typo in 'prove-runner' script

12 years agoMerge branch 'master' into testsuite-work
Stefano Lattarini [Sat, 5 Nov 2011 10:52:55 +0000 (11:52 +0100)]
Merge branch 'master' into testsuite-work

Commits merged from master:
 - test defs: new functions to analyze configure help screen
 - warnings: fix buglets for portability warnings
 - tests: extend tests on 'extra-portability' warning category

Extra edits to the testsuite:
* tests/extra-portability.test: Use `$am_original_AUTOMAKE'
instead of the obsolete `$original_AUTOMAKE'.
* tests/extra-portability3.test: Likewise.
* tests/list-of-tests.mk: Update.

12 years agoMerge branch 'msvc' into master
Stefano Lattarini [Sat, 5 Nov 2011 09:43:27 +0000 (10:43 +0100)]
Merge branch 'msvc' into master

Commits merged from msvc:
 - warnings: fix buglets for portability warnings
 - tests: extend tests on 'extra-portability' warning category

Extra testsuite edits:
* tests/extra-portability3.test: Use `$original_AUTOMAKE' instead
of hackishly extracting the first component of `$AUTOMAKE'.
* tests/extra-portability.test: Likewise.  Also, since we are at
it, throw in a couple of small extensions and tweakings (suggested
by the minor merge conflicts).

12 years agotest defs: new functions to analyze configure help screen
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.

12 years agowarnings: fix buglets for portability warnings
Stefano Lattarini [Fri, 4 Nov 2011 11:50:49 +0000 (12:50 +0100)]
warnings: fix buglets for portability warnings

* lib/Automake/ChannelDefs.pm (switch_warning): Ensure the
correct implications and inter-dependencies between warnings
in the categories `portability', `extra-portability' and
`recursive-portability' are respected.  Also add detailed
explicative comments, and references to the relevant tests.
* tests/dollarvar2.test: Update and extend.  Also, remove
some unnecessary uses of `--force' option in automake calls.
* tests/extra-portability3.test: New test.
* tests/Makefile.am (TESTS): Add it.

12 years agotests: extend tests on 'extra-portability' warning category
Stefano Lattarini [Fri, 4 Nov 2011 11:15:33 +0000 (12:15 +0100)]
tests: extend tests on 'extra-portability' warning category

* tests/extra-portability.test: Redefine `$AUTOMAKE' to ensure we
have complete control over the automake options.  Extend by using
also a setup where no `portability' warning is present (only an
`extra-portability' warning is).  Other minor extensions.  Remove
some redundant, verbose comments about the expected diagnostic.

12 years agoMerge branch 'tw-merge-master' into testsuite-work
Stefano Lattarini [Thu, 3 Nov 2011 15:23:56 +0000 (16:23 +0100)]
Merge branch 'tw-merge-master' into testsuite-work

12 years agoMerge branch 'master' into testsuite-work
Stefano Lattarini [Thu, 3 Nov 2011 14:39:02 +0000 (15:39 +0100)]
Merge branch 'master' into testsuite-work

Commits merged from master:
 - tests: various minor tweakings, mostly related to AM_PROG_AR
 - maint-mode: fix botched configure messages
 - fix: regenerate Makefiles
 - tests: few improvements to some `ar-lib' related tests
 - info: allow user to inhibit creation/update of '${infodir}/dir'
 - warnings: new 'extra-portability' category, for AM_PROG_AR
 - ar-lib: new 'AM_PROG_AR' macro, triggering the 'ar-lib' script

Extra testsuite adjustments:
* tests/instspc.tap: Adjust to new portability requirements
due to the new AM_PROG_AR macro.
* tests/lex-lib.test: Likewise.
* tests/extra-portability2.test: Use `$am_original_AUTOMAKE'
instead of the obsolete `$original_AUTOMAKE'.
* tests/list-of-tests.mk: Update.

12 years agoMerge branch 'msvc'
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

12 years agotests: 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.

12 years agoMerge branch 'msvc' into master
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.

12 years agoMerge branch 'maint' into msvc
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'

12 years agoMerge branch 'maint'
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'

12 years agoMerge branch 'fix-pr9890' into maint
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

12 years agomaint-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.

12 years agoMerge branch 'fix-pr9773' into maint
Stefano Lattarini [Sun, 30 Oct 2011 10:58:23 +0000 (11:58 +0100)]
Merge branch 'fix-pr9773' into maint

* fix-pr9773:
  fix: regenerate Makefiles

12 years agofix: regenerate Makefiles
Stefano Lattarini [Sun, 30 Oct 2011 10:58:06 +0000 (11:58 +0100)]
fix: regenerate Makefiles

12 years agoMerge branch 'fix-pr9773' into maint
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'

12 years agotests: few improvements to some `ar-lib' related tests
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.

12 years agotest defs: new function 'am_keeping_testdirs', for better APIs
Stefano Lattarini [Tue, 25 Oct 2011 13:20:42 +0000 (15:20 +0200)]
test defs: new function 'am_keeping_testdirs', for better APIs

This change is meant to make it easier for TAP-based test scripts
to remove files left over by completed (sub)tests, while still
honoring the user-provided `$keep_testdirs' setting.

* tests/defs (am_keeping_testdirs): New function, telling whether
we should keep the test directories around, even in case of
success (by default, we don't).
(exit trap): Use it.
* tests/depmod.tap: Likewise.
* tests/instspc.tap: Likewise.  Also, fix some pre-existing
"copy & paste" bugs, and a typo in comments.

12 years agotests: remove redundant `set -e', and other minor improvements
Stefano Lattarini [Tue, 25 Oct 2011 10:04:46 +0000 (12:04 +0200)]
tests: remove redundant `set -e', and other minor improvements

* tests/dejagnu-absolute-builddir.test: Do not set the `errexit'
shell flag, as it is already set by `tests/defs'.
* tests/dejagnu-relative-srcdir.test: Likewise.
* tests/dejagnu-siteexp-append.test: Likewise.
* tests/dejagnu-siteexp-useredit.test: Likewise, and fix a typo
in comments.
* tests/dejagnu-siteexp-extend.test: Likewise, and prefer the
use of `$distdir' over hard-coded `$me-1.0'.  Also ...
(write_check_for): ... use `unindent' when writing from an
here-doc, for better code indentation.

12 years agoMerge branch 'master' into testsuite-work
Stefano Lattarini [Tue, 25 Oct 2011 09:45:24 +0000 (11:45 +0200)]
Merge branch 'master' into testsuite-work

* master:
  fix: date in recent ChangeLog entry
  tests: fix spurious failures due to missing 'yywrap()' function
  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

12 years agoMerge branch 'maint'
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

12 years agofix: date in recent ChangeLog entry
Stefano Lattarini [Tue, 25 Oct 2011 09:04:07 +0000 (11:04 +0200)]
fix: date in recent ChangeLog entry

12 years agotests: fix spurious failures due to missing 'yywrap()' function
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.

12 years agoMerge branch 'fix-pr8485-and-pr8526' into maint
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'

12 years agoMerge branch 'maint' into msvc
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.

12 years agoinfo: allow user to inhibit creation/update of '${infodir}/dir'
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.

12 years agoMerge branch 'dejagnu-siteexp-extend' into maint
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

12 years agodejagnu: 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.

12 years agoMerge branch 'dejagnu-srcdir-discrepancy' into maint
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.

12 years agotests: more faithful 'installcheck' support in few tests
Stefano Lattarini [Fri, 21 Oct 2011 09:27:25 +0000 (11:27 +0200)]
tests: more faithful 'installcheck' support in few tests

* tests/test-driver-acsubst.test: Use the `$am_scriptdir'
variable instead of `$testsrcdir/../lib', to test more
faithfully under "make installcheck".
* tests/test-driver-cond.test: Likewise.
* tests/dist-auxfile.test: Likewise, and add one more use
of `fatal_' to report hard errors.
* tests/tests/dist-auxdir-many-subdirs.test: Likewise.

12 years agotests: remove redundant settings of `errexit' shell flag
Stefano Lattarini [Fri, 21 Oct 2011 08:34:31 +0000 (10:34 +0200)]
tests: remove redundant settings of `errexit' shell flag

* tests/aclocal-path-install-serial.test: Do not set the
`errexit' shell flag, as it is already set by `tests/defs'.
* tests/aclocal-path-install.test: Likewise.
* tests/aclocal-path-nonexistent.test: Likewise.
* tests/aclocal-path-precedence.test: Likewise.
* tests/aclocal-path.test: Likewise.
* tests/dist-auxfile-2.test: Likewise.
* tests/dist-auxfile.test: Likewise.
* tests/distcheck-pr9579.test: Likewise.
* tests/javadir-undefined.test: Likewise.
* tests/subpkg-yacc.test: Likewise.
* tests/test-extensions-cond.test: Likewise.
* tests/test-extensions.test: Likewise.
* tests/uninstall-fail.test: Likewise.
* tests/uninstall-pr9578.test: Likewise.
* tests/distcheck-override-infodir.test: Likewise.  Also,
fix typo in heading comments since we are at it.

12 years ago* THANKS: Fix whitespace issue.
Peter Rosin [Fri, 21 Oct 2011 06:39:48 +0000 (08:39 +0200)]
* THANKS: Fix whitespace issue.

12 years agowarnings: new 'extra-portability' category, for AM_PROG_AR
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>
12 years agoar-lib: new 'AM_PROG_AR' macro, triggering the 'ar-lib' script
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>
12 years agofixup: add forgotten test scripts to $(TESTS)
Stefano Lattarini [Thu, 20 Oct 2011 21:27:39 +0000 (23:27 +0200)]
fixup: add forgotten test scripts to $(TESTS)

* tests/list-of-tests.mk: Add various test scripts that are in
the git repository but weren't correctly listed in $(TESTS).
The inconsistency had been caused by botched/incomplete merges,
and revealed by the "maintainer-check-list-of-tests" target.

12 years agoMerge branch 'master' into testsuite-work
Stefano Lattarini [Thu, 20 Oct 2011 21:20:54 +0000 (23:20 +0200)]
Merge branch 'master' into testsuite-work

* master:
  tests: fix spurious failures with "chatty" make implementations
  tests: fix aclocal-print-acdir.test
  tests: fix spurious failure on fast machines
  tests: avoid spurious failure of 'uninstall-fail.test' on Solaris
  tests: avoid spurious failure of 'uninstall-fail.test' on Cygwin
  tests: avoid spurious failure in 'parallel-tests3.test'
  tests: fix spurious failure with FreeBSD make and Yacc in VPATH
  tests: fix spurious failure with autoconf 2.62
  refactor: improve signature of 'check_directory' sub in automake
  docs: avoid using colon character inside arguments of @pxref

12 years agoMerge branch 'maint'
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

12 years agodeps: partially revert commit `v1.11-512-geeee551'
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.

12 years agoMerge branch 'test-subpkg-fix-spurious-freebsd-fail' into maint
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

12 years agoMerge branch 'fix-pr8788' into maint
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'

12 years agotests: fix spurious failures with "chatty" make implementations
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.

12 years agotests: fix aclocal-print-acdir.test
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.

12 years agoMerge branch 'aclocal-path' into maint
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

12 years agotests: 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.

12 years agotests: avoid spurious failure of 'uninstall-fail.test' on Solaris
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.

12 years agoMerge branch 'maint'
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

12 years agoMerge branch 'test-protocols' into testsuite-work
Stefano Lattarini [Thu, 20 Oct 2011 12:39:53 +0000 (14:39 +0200)]
Merge branch 'test-protocols' into testsuite-work

* test-protocols:
  cosmetics: remove obsolete comment
  coverage: conditional contents in LOG_DRIVER variables
  coverage: LOG_DRIVER variables can be defined through AC_SUBST
  tests: fix spurious failure with Solaris /bin/sh
  threaded-am: better serialization for required config files
  automake: refactor, break up 'require_file_internal'
  dist: separate auxiliary file instantiation from DIST_COMMON update
  refactor: rename a subroutine to a more proper name
  dist: truly always distribute files in AC_REQUIRE_AUX_FILE
  dist: simplify automake code accordingly to the previous changes
  dist: auxiliary files can be distributed from subdir Makefiles

12 years agoMerge branch 'dist-refactor' into test-protocols
Stefano Lattarini [Thu, 20 Oct 2011 12:04:41 +0000 (14:04 +0200)]
Merge branch 'dist-refactor' into test-protocols

* dist-refactor:
  cosmetics: remove obsolete comment
  tests: fix spurious failure with Solaris /bin/sh
  threaded-am: better serialization for required config files
  automake: refactor, break up 'require_file_internal'
  dist: separate auxiliary file instantiation from DIST_COMMON update
  refactor: rename a subroutine to a more proper name
  dist: truly always distribute files in AC_REQUIRE_AUX_FILE
  dist: simplify automake code accordingly to the previous changes
  dist: auxiliary files can be distributed from subdir Makefiles

12 years agoMerge branch 'fix-pr9578' into maint
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

12 years agotests: 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.

12 years agodejagnu: ensure 'srcdir' is defined as a relative directory
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.

12 years agotests: avoid spurious failure in 'parallel-tests3.test'
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.

12 years agotests: fix spurious failure with FreeBSD make and Yacc in VPATH
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.

12 years agoMerge branch 'aclocal-path' into maint
Stefano Lattarini [Mon, 17 Oct 2011 15:46:05 +0000 (17:46 +0200)]
Merge branch 'aclocal-path' into maint

12 years agotests: fix spurious failure with autoconf 2.62
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.

13 years agorefactor: improve signature of 'check_directory' sub in 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.

13 years agocosmetics: remove obsolete comment
Stefano Lattarini [Mon, 17 Oct 2011 09:17:23 +0000 (11:17 +0200)]
cosmetics: remove obsolete comment

* automake.in (push_required_file): Remove "FIXME" comment stating
that the special handling of `$config_aux_dir' breaks threaded
automake: this is not true anymore after the recent commits (see
in particular commit `v1.11-1225-gf672944').

13 years agodocs: avoid using colon character inside arguments of @pxref
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 Дилян Палаузов.

13 years agocoverage: conditional contents in LOG_DRIVER variables
Stefano Lattarini [Tue, 11 Oct 2011 11:42:09 +0000 (13:42 +0200)]
coverage: conditional contents in LOG_DRIVER variables

* tests/test-driver-cond.test: New test.
* tests/Makefile.am (TESTS): Add it.

13 years agocoverage: LOG_DRIVER variables can be defined through AC_SUBST
Stefano Lattarini [Tue, 11 Oct 2011 11:37:17 +0000 (13:37 +0200)]
coverage: LOG_DRIVER variables can be defined through AC_SUBST

* tests/test-driver-acsubst.test: New test.
* tests/Makefile.am (TESTS): Add it.

13 years agotests: fix spurious failure with Solaris /bin/sh
Stefano Lattarini [Sat, 8 Oct 2011 19:03:43 +0000 (21:03 +0200)]
tests: fix spurious failure with Solaris /bin/sh

* tests/dist-auxfile.test: Don't use redirected `:' in a loop,
it hits a bug in Solaris 10 /bin/sh.

13 years agothreaded-am: better serialization for required config files
Stefano Lattarini [Sat, 8 Oct 2011 15:27:42 +0000 (17:27 +0200)]
threaded-am: better serialization for required config files

With this change, we make serialization/de-serialization of
required config files installs more granular, and in the process
fix the bug introduced by commit `v1.11-1219-g326ecba'.

* automake.in ($required_conf_file_queue): Move its declaration
earlier.
(require_file_internal): Add a new argument telling whether the
function should act immediately or queue its action for the master
thread to handle.
(queue_required_conf_file): Renamed ...
(queue_required_file_check_or_copy): ... to this.
(require_queued_conf_file): Renamed ...
(require_queued_file_check_or_copy): ... to this, and make it call
`required_file_check_or_copy' instead of `require_file_internal'.
(require_conf_file, handle_makefiles_threaded): Adjust and simplify
accordingly.
* tests/Makefile.am (XFAIL_TESTS): Remove `parallel-am.test'.

13 years agoautomake: refactor, break up 'require_file_internal'
Stefano Lattarini [Fri, 7 Oct 2011 19:58:20 +0000 (21:58 +0200)]
automake: refactor, break up 'require_file_internal'

This refactoring is only required in view of future changes.

* automake.in (require_file_internal): Move the guts of this
function ...
(required_file_check_or_copy): ... into this new function.  This
ensures that calls to `push_required_file' and code that copies
required files are placed in separate functions; this will be
very useful for reorganizing de-serialization of file installs
in future changes.

13 years agodist: separate auxiliary file instantiation from DIST_COMMON update
Stefano Lattarini [Fri, 7 Oct 2011 18:53:08 +0000 (20:53 +0200)]
dist: separate auxiliary file instantiation from DIST_COMMON update

This change simplifies the automake internals dealing with the
checking, copying and distributing of required auxiliary files.
With this change, a required auxiliary file is *unconditionally*
added to the contents of the DIST_COMMON variable in the generated
Makefile.in, before checking whether it exists, or trying to copy
it (if `--add-missing' is in use).  This shouldn't be a problem,
since if the checking or copying of the file fails, automake will
bail out, the Makefile.in won't be created, and thus its content
will not matter.  OK, this is not completely true when threaded
automake is in use, but then, such a situation was also possible
before this patch, so no regression here, which is enough for us.

This change is the first of a series of steps aimed at fixing
the regression introduced in threaded automake usage by commit
`v1.11-1219-g326ecba'.

* automake.in (require_file_internal): Add the required file to
DIST_COMMON unconditionally.
* tests/missing-auxfile-stops-makefiles-creation.test: New test.
* tests/Makefile.am (TESTS): Add it.