2012-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Beta release 1.11b (will become 1.12)

	* configure.ac (AC_INIT): Bump version number to 1.11b.
	* NEWS: Likewise.
	* m4/amversion.m4: Likewise (autoupdated by ./bootstrap).

2012-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>

	sync: some auxiliary files synced from upstream

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

2012-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>

	hacking: described new branching policy for 1.12 an later

	This change closes automake bug#11153.

	* HACKING (Working with git): Document the new policy for automake
	branching and merging, which will start being applied after 1.12 is
	released:

	  - the maintenance branch will be 'maint', and we will cut the
	    maintenance releases directly from there;

	  - the development branch will be 'master', and we will cut the
	    new releases directly from there;

	  - 'maint' will be kept regularly merged into 'master'.

2012-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala tests: avoid spurious failure with older GObject

	* t/vala2.sh: In the 'PKG_CHECK_MODULES' call in 'configure.ac',
	don't require gobject >= 2.10, but just >= 2.4: that is enough in
	order for the test to pass.
	* t/vala3.sh: Likewise.
	* t/vala5.sh: Likewise.  Also, skip the test instead of failing
	if the ./configure invocation fails: that is likely due to the
	fact that the GObject library is too old or missing, and that is
	not automake's fault.

2012-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala tests: force the use of automatic dependency tracking

	* t/vala-mix2.sh: Invoke ./configure with the option
	'--enable-dependency-tracking', so that slower dependency
	extractors are not rejected.  This avoids a spurious failure
	at least on Solaris when the Sun C compiler is used.

2012-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failures in tests on C++ and lex

	This is a follow-up to commit v1.11-2128-g7f2bc63 of 09-04-2012,
	"tests: avoid spurious failures with non-flex 'lex' programs and
	C++".  It is required to avoid a couple of spurious failures on
	Solaris and NetBSD systems (at least).  See also automake bug#11185.

	* t/lex-clean-cxx.sh (parsefoo.lxx): Do not declared the provided
	dummy 'isatty' function as 'static', since that might conflict with
	a declaration of it as 'extern' pulled in through other system
	* t/lex-depend-cxx.sh (joe.ll): Likewise.
	* t/README: Update advice, to avoid similar issues in the future.

2012-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'rmch'

	* rmch:
	  maint: simplify generation of files with @substed@ stuff
	  t/README: update w.r.t. recent overhaul (non-recursive build system)
	  docs: fix names of relevant test cases in comments
	  NEWS: automake build systems avoids make recursion
	  maint: no more make recursion in Automake's build system
	  tests: rename 'tests/' => 't/', '*.test' => '*.sh'
	  tests: remove recipes that run tests with 'prove'
	  tests: move most helper scripts and files into the 'ax' subdirectory

2012-04-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
	    Peter Rosin  <peda@lysator.liu.se>

	tests: avoid spurious failures with non-flex 'lex' programs and C++

	This change fixes automake bug#11185.

	The commit v1.11-2058-g6f4b08d of 06-03-2012, "tests: explicitly
	state that our lexers do not require unistd.h" has broken the tests
	'lex-clean-cxx.test' and 'lex-depend-cxx.test' on Solaris, where lex
	is not flex and does not understand the "%option never-interactive"
	directive.  Remove the use of this directive, resorting to defining
	a dummy 'isatty()' function instead to keep the flex-generated tests
	able to compile also on MinGW/MSYS.

	* tests/lex-clean-cxx.test (parsefoo.lxx): Define a dummy 'isatty()'
	function.
	* tests/lex-depend-cxx.test (joe.ll): Likewise.
	* tests/README: Adjust.  Fix an unrelated typo since we are at it.

2012-04-08  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid a spurious failures for shells with busted 'set -e'

	Some versions of the BSD Korn shell wrongly bail out when the
	'errexit' shell flag is active and the left-hand command in a
	"&&" list fails and that list is the *last* command of the body
	of a "while" or "for" loop.

	* tests/install-info-dir.test: Work around that behaviour.

2012-04-08  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: simplify generation of files with @substed@ stuff

	Use a proper "config.status --file=-" idiom to do most substitutions
	in our generated files, to avoid too much duplications between the
	various $(do_subst) commands in Makefile.am and the (explicit or
	implicit AC_SUBST) invocation in configure.ac.

	From a suggestion by Eric Blake and Federico Simoncelli:
	<http://lists.gnu.org/archive/html/automake/2012-01/msg00011.html>

	* Makefile.am (do_subst): Rewrite to take advantage of the
	"config.status --file=-" idiom.
	(generated_file_finalize): New, to help checking that generated
	files don't contain unexpanded '@substitutions@', and are made
	read-only.
	(automake, aclocal): Take advantage of the improved $(do_subst).
	Improve comments.
	(lib/Automake/Config.pm): Likewise, and of the new variable
	$(generated_file_finalize) as well.
	($(top_srcdir)/m4/amversion.m4): Likewise.
	(defs-static): Likewise, and depend explicitly on 'Makefile'.
	(do_subst_t): Remove as obsolete.
	* THANKS: Update.

2012-04-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: remove redundant requirement

	* tests/txinfo19.test ($required): Drop required "tex", it is not
	really needed.
	Add trailing ':' command since we are at it.

2012-04-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: make two test scripts executable

	* tests/instdir-cond.test: Add executable bit.
	* tests/instdir-cond2.test: Likewise.

2012-04-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	t/README: update w.r.t. recent overhaul (non-recursive build system)

	And other miscellaneous improvements since we are at it.

2012-04-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: fix names of relevant test cases in comments

	* doc/automake.texi: In comments reporting which test(s) check a
	given feature/idiom, fix the names of the referenced tests, to
	reflect the recent 'tests/foo.test' => 't/foo.sh' "Great Rename".

2012-04-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	NEWS: automake build systems avoids make recursion

2012-04-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: no more make recursion in Automake's build system

	We finally merge testsuite-related part of the Automake build
	system with the top-level one.  See also yesterday's commit
	'v1.11-2124-ga4b0f4b', "maint: remove most recursion in automake's
	own build system".

	* t/gen-testsuite-part: Move ...
	* gen-testsuite-part: ... here, with required adjustments.
	* t/defs-static.in: Move ...
	* defs-static.in: ... here, with required adjustments.  In
	particular ...
	($testsrcdir, $testbuilddir): Removed.
	($top_testsrcdir): Renamed ...
	($am_top_srcdir): ... to this.
	($top_testbuilddir): Renamed ...
	($am_top_builddir): ... to this.
	* t/defs: Move ...
	* defs: ... here, and adjust as required.
	* t/Makefile.am: Merge ...
	* Makefile.am: ... in here, with related adjustments and
	simplifications.
	* bootstrap: Adjust as required.
	* syntax-checks.mk: Likewise.
	* .gitignore: Likewise.
	* t/ax/tap-setup.sh: Likewise.
	* t/get-sysconf.sh: Likewise.
	* t/help-multilib.sh: Likewise.
	* t/multlib.sh: Likewise.
	* t/parallel-tests2.sh: Likewise.
	* t/self-check-cleanup.tap: Likewise.
	* t/self-check-exit.tap: Likewise.
	* t/self-check-dir.tap: Likewise.
	* t/self-check-explicit-skips.sh: Likewise.
	* t/self-check-reexec.tap: Likewise.
	* t/self-check-sanity.sh: Likewise.
	* t/yacc-d-cxx.sh: Likewise.

2012-04-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: rename 'tests/' => 't/', '*.test' => '*.sh'

	When we (soon) convert the Automake testsuite to a non-recursive
	make setup, we'll have to fix the entries of $(TESTS) to be
	prepended with the subdirectory they are in; this will increase
	the length of $(TESTS), and thus increase the possibility of
	exceeding the command-line length limits on some systems (most
	notably, MinGW/MSYS).  See automake bug#7868 for more information.

	Thus we rename the 'tests/' subdirectory to 't/', and each 'x.test'
	script in there to 'x.sh'; this way, the $(TESTS) entry 'foo.test'
	will become 't/foo.sh', which have the same number of characters.

	* tests/: Rename ...
	* t/: ... to this.
	* t/*.test: Rename ...
	* t/*.sh: ... to this.
	* t/.gitignore: Removed as obsolete.
	* t/defs: Adjust.
	* t/gen-testsuite-part: Likewise.
	* t/list-of-tests.mk: Likewise.
	* t/ccnoco.sh: Likewise.
	* t/ccnoco3.sh: Likewise.
	* t/self-check-cleanup.tap: Likewise.
	* t/self-check-dir.tap: Likewise.
	* t/self-check-me.tap: Likewise.
	* t/self-check-reexec.tap: Likewise.
	* README: Likewise.
	* bootstrap: Likewise
	* configure.ac: Likewise.
	* Makefile.am: Likewise.
	* .gitignore: Likewise.
	* syntax-check.mk: Likewise.

2012-04-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: remove recipes that run tests with 'prove'

	Those recipes has served its purpose by helping us during the
	development of TAP support in Automake, to ensure our TAP driver
	didn't have gratuitous incompatibilities with the 'prove' test
	runner.  But they are now unused, out-of-date and bitrotting.  So
	it's better to just remove them.  We can resurrect them at a later
	time if the need arises.

	* tests/Makefile.am (PROVE, AM_PROVEFLAGS, AM_PROVECMD): Remove
	these variables.
	(prove, installprove): Remove these targets and their recipe.
	(EXTRA_DIST): Don't distribute 'ax/prove-runner' anymore.
	* ax/prove-runner: Delete.

2012-04-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: move most helper scripts and files into the 'ax' subdirectory

	* tests/defs-static.in ($am_testauxdir): New variable.
	* tests/testsuite-summary-checks.sh: Moved ...
	* tests/ax/testsuite-summary-checks.sh: ... here.
	* tests/trivial-test-driver: Moved ...
	* tests/ax/trivial-test-driver: ... here.
	* tests/tap-summary-aux.sh: Moved ...
	* tests/ax/tap-summary-aux.sh: ... here.
	* tests/distcheck-hook-m4.am: Moved ...
	* tests/ax/distcheck-hook-m4.am: ... here.
	* tests/prove-runner: Moved ...
	* tests/ax/prove-runner: ... here.
	* tests/depcomp.sh: Moved ...
	* tests/ax/depcomp.sh: ... here.
	* tests/tap-setup.sh: Moved ...
	* tests/ax/tap-setup.sh: ... here.
	* tests/tap-functions.sh: Moved ...
	* tests/ax/tap-functions.sh: ... here.
	* tests/plain-functions.sh: Moved ...
	* tests/ax/plain-functions.sh: ... here.
	* tests/extract-testsuite-summary: Moved ...
	* tests/ax/extract-testsuite-summary.pl: .. . here.
	* tests/gen-testsuite-part: Adjusted accordingly.
	* tests/Makefile.am: Likewise.
	* tests/defs: Likewise.
	* syntax-check.mk: Likewise.
	* Several tests: Likewise.

2012-04-05  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: remove most recursion in automake's own build system

	Recursive make-based build systems tend to be slower, more fragile
	and less faithful than "flat" ones.  See Peter Miller's article
	"Recursive Make Considered Harmful" for more a more in-depth
	discussion:

	    <http://miller.emu.id.au/pmiller/books/rmch/>

	While in the case of automake this isn't a big problem (given the
	small size of its build systems), it still creates occasional
	glitches and annoyances.

	With this change, the use of recursion in Automake's own build
	system is eliminated *but for the testsuite*.  Converting that
	is a little more tricky, and better left for a later change (or
	series of changes).

	See also commit v1.11-769-gfeeb7f6 of 28-03-2012.

	* contrib/Makefile.am, lib/Makefile.am, m4/Makefile.am,
	doc/Makefile.am:  Removed, their content merged ...
	* Makefile.am: ... here, with required adjustments and few
	other "opportunistic" changes.
	(SUBDIRS): Update.
	* configure.ac (AC_CONFIG_FILES): Likewise.
	* .gitignore: Likewise.

2012-04-05  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix a spurious failures with non-GNU make

	* tests/instdir-no-empty.test: Also pass proper AM_MAKEFLAGS to
	make invocations that might recurse, to ensure the macro definitions
	passed from the command line are properly propagated.

2012-04-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	texinfo: warn about future use of '--tidy'

	Starting from the next major release of Automake (likely 1.13) we
	want to start passing the '--tidy' option to texi2dvi and texi2pdf
	invocations, so that auxiliary TeX-generated files can be kept
	around (thus speeding up rebuilding of DVI and PDF output) without
	cluttering the build directory too much.

	Since the '--tidy' option was introduced in Texinfo 4.9 (as
	documented in the Texinfo distribution's NEWS file), this also
	means that Makefiles generated by future Automake versions will
	require at least that version of Texinfo (at the time of writing
	four years and nine months old).

	The users should be warned about the planned behavioral change
	and the new version requirement it will entail.

	See also automake bug#11146.

	* NEWS (Planned Backward Incompatibilities): Add entry about use
	of the '--tidy' option and requirement of Texinfo 4.9.

2012-04-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	texinfo: don't clutter the builddir when using modern texi2dvi

	In modern versions of texi2dvi (at least since version 1.135, which
	comes with Texinfo 4.13) the '-o' option does not imply anymore the
	'--clean' option.  As a consequence, lots of TeX-generated auxiliary
	files are now left in the build directory by the 'pdf', 'ps' and
	'dvi' rules.

	This is especially annoying with non-recursive setups having the
	'.texi' files in a subdirectory, as in:

	  info_TEXINFOS = doc/foo.texi

	In this case, the stray auxiliary files are left in the top build
	directory (since TeX is run from there).  See for example:

	 <http://lists.gnu.org/archive/html/bug-bison/2012-04/msg00002.html>

	See also automake bug#11146.

	* lib/am/texibuild.am: Call 'texi2dvi' and 'texi2pdf' with the
	'--clean' option.  Update comments accordingly.
	* tests/txinfo-noclutter.test: New test.
	* tests/txinfo18.test: Remove as obsolete, the still relevant parts
	of it moved into the new test.
	* tests/list-of-tests.mk: Adjust.
	* NEWS: Update.

2012-04-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	hacking: autotools-generated files are not committed anymore

	* HACKING (Working with git) Generated files like 'configure',
	'Makefile.in' and 'aclocal.m4' are not committed anymore in our
	git repository since some months.  Remove obsoleted advices that
	assumed they still were.

2012-04-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	hacking: simplify documentation of bootstrapping process

	* HACKING (Working with git): Do not suggest that, to ensure the
	bootstrapping process is performed with the latest autotools, the
	developer could explicitly pass $AUTOCONF and $AUTOM4TE in the
	environment to the ./bootstrap and ./configure invocations: that
	is a little tricky and quite fragile.  Instead, suggest to just
	put modern-enough version of the autotools early in PATH.

2012-04-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: remove repeated line in comment, fix quoting

	* automake.in: Drop a repeated line in a comment.  In the same
	comment, prefer quoting 'like this' rather than `like this'.
	Issue introduced in one of the commits that converted from quoting
	`like this' to quoting 'like this'.

2012-03-31  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: remove useless import in automake script

	* automake.in (Automake::Version): This import is not needed;
	remove it.

2012-03-31  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  docs: deprecate 'cygnus' mode, help the transition

2012-03-31  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: deprecate 'cygnus' mode, help the transition

	Support for "Cygnus-style" trees (so far enabled by the 'cygnus'
	option) will be deprecated in one release of the next major series
	(1.12.x) and removed in the next major release after that (1.13).
	Better to start warning about this in the manual.

	* docs/automake.texi: Warn about the oncoming deprecation of the
	'cygnus' mode.  Suggest some idioms that can be used to retain some
	effects of the 'cygnus' option.
	* THANKS: Update.

	From a suggestion by Joseph S. Myers in automake bug#11034.

2012-03-29  Stefano Lattarini  <stefano.lattarini@gmail.com>

	perl refactor: use modern semantics of 'open'

	* lib/Automake/XFile.pm: Update comments and POD documentation to
	suggest a more idiomatic/modern usage.
	(open): Be more robust in detecting whether the created file handle
	is being opened for writing.
	* lib/Automake/FileUtils.pm (update_file, contents): Call the
	'Automake::XFile' and 'File::IO' constructors with two arguments
	rather than one; this change obsoletes ...
	(open_quote): ... this subroutine, which has thus been removed.
	(@EXPORT): Drop '&open_quote'.

2012-03-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  cosmetics: don't make the generated Config.pm executable
	  maint: reduce use of recursion in automake build system

	+ Extra non-trivial extra edits follows.

	* lib/Makefile.am (amdir): Deleted this definition, it is already
	provided by a proper AC_SUBST in configure.ac.
	(dist_am_DATA): Remove 'am/ansi2knr.am', 'am/check-html.am' and
	'am/multilib.am'.
	(dist_perllib_DATA): Remove 'Automake/Struct.pm'.

2012-03-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: don't make the generated Config.pm executable

	* lib/Makefile.am (Automake/Config.pm): Don't make this executable,
	there's not need for it to be (it's a perl module, not a script).

2012-03-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: reduce use of recursion in automake build system

	Recursive make-based build systems tend to be slower, more fragile
	and less faithful than "flat" ones.  See Peter Miller's article
	"Recursive Make Considered Harmful" for more a more in-depth
	discussion:

	  <http://miller.emu.id.au/pmiller/books/rmch/>

	While in the case of automake this isn't a big problem (given the
	small size of its build systems), it still creates occasional
	glitches and annoyances.  So, with this change, we start making
	less use of make recursion in the Automake's own build system
	(future changes will reduce it even more).

	* lib/am/Makefile.am, lib/Automake/Makefile.am:  Removed, their
	content merged ...
	* lib/Makefile.am: ... here, with required adjustments.
	* configure.ac (AC_CONFIG_FILES): Update.

2012-03-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	news: sync with branch-1.11, fix mis-merges

2012-03-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	acinstall: remove, it has never been really used

	Accordingly to the git history (see for example the 'README-alpha'
	in commit 'Release-1-1e-39-g9beb4ec' of 06-10-1996), the 'acinstall'
	script should have been used to install m4 files for aclocal.  The
	comments in this script report that "... A script is needed to do
	this because we want to do serial-number checking; newer versions
	of macro files should always be preferred".

	But the 'acinstall' script has never been really used: for example,
	the entry "actually use acinstall program" was removed (unfixed)
	from the TODO file in commit 'Release-1-1k-12-g1201405' of
	08-12-1996, and the only citation of 'acinstall' in the manual was
	removed in commit 'Release-1-1l-37-g128c3d7' of 19-03-1997, and
	never added back. In addition, the last non-trivial edit to the
	script (that is, besides updates to the copyright notice) dates
	back to 1996.

	More importantly, now that aclocal supports the ACLOCAL_PATH
	environment variable, installing m4 files directly in the
	system-wide acdir is discouraged, and better left only to
	distros' package managers (which already have their own way to
	do so, with which third-party build systems should not directly
	meddle).

	So we just remove the 'acinstall' script.

	* lib/acinstall: Remove.
	* lib/Makefile.am (dist_script_DATA): Update.

2012-03-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: reorganize the source tree and make it less cluttered

	* TODO: Move ...
	* old/TODO: ... here.  This is done because this file is quite
	outdated, and today TODO and wishlist items are better handled
	though the debbugs tracker.
	* ChangeLog.00: Move ...
	* old/ChangeLog.00: ... here.
	* ChangeLog.01: Move ...
	* old/ChangeLog.01: ... here.
	* ChangeLog.02: Move ...
	* old/ChangeLog.02: ... here.
	* ChangeLog.03: Move ...
	* old/ChangeLog.03: ... here.
	* ChangeLog.04: Move ...
	* old/ChangeLog.04: ... here.
	* ChangeLog.09: Move ...
	* old/ChangeLog.09: ... here.
	* ChangeLog.11: Move ...
	* old/ChangeLog.11: ... here.
	* ChangeLog.96: Move ...
	* old/ChangeLog.96: ... here.
	* ChangeLog.98: Move ...
	* old/ChangeLog.98: ... here.
	* tests/ChangeLog-old: Move ...
	* old/ChangeLog-tests: .. here.
	* tests/Makefile.am (EXTRA_DIST): Adjust.
	* Makefile.am (EXTRA_DIST): Likewise.
	* .autom4te.cfg: New file, instructing the autotools to place the
	autom4te cache directory in '.autom4te.cache' rather than in
	'autom4te.cache'.
	* .gitignore: Adjust.
	* Makefile.am (maintainer-clean-local): Remove the '.autom4te.cache'
	directory.

2012-03-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	news: we are going to drop 'cygnus' soonish

	* NEWS (Future backward incompatibilities): Support for
	"Cygnus-style" trees (so far enabled by the 'cygnus' option)
	will be deprecated in the next minor release and removed in
	in the next major release.

2012-03-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  depcomp: support tcc (Tiny C Compiler)
	  tests: workaround for automatic linker determination and conditionals
	  info: allow user to inhibit pruning of '${infodir}/dir'
	  vala tests: fix spurious failures with older valac (<= 0.7.2)
	  tests: fix a timestamp issue, and other minor buglets
	  tests: fix spurious failure with older autoconf
	  build: remove duplicated entries in $(TESTS)

	+ Extra non-trivia edits:
	* tests/link_cond.test: Use 'configure.ac', not 'configure.in'.

2012-03-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	depcomp: support tcc (Tiny C Compiler)

	This change fixes automake bug#11007.

	Since git commit 0c928da9 of 21-06-2010, "tcc: Draft suppoprt for
	-MD/-MF options" (sic, with typo in summary line), tcc has supported
	automatic dependency generation with a command-line interface
	similar to what old (pre-8.0) Intel compilers did.  This caused
	Automake-generated code for automatic dependency tracking to
	recognize tcc dependency style as "icc".  However, the format of
	the dependency files generated by tcc is apparently different enough
	from that of icc to cause spurious failures in the post-processing
	operated by our 'depcomp' script on such files.

	The failure was exposed with the development version of tcc 0.9.26
	(as installed with debian package "tcc 0.9.26~git20120104.83d") by
	test case 'depcomp-auto.tap' (available only in the master branch).

	* lib/depcomp (icc): Cater to tcc as well.  Update comments
	accordingly.
	* NEWS: Update.

2012-03-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: workaround for automatic linker determination and conditionals

	See automake bug#11089.

	Automake is not very smart in automatically determining the command
	to be used to link a program whose source files' languages are
	conditionally defined.  For example, an input like:

	  if HAVE_CXX
	  foo_SOURCES = more.c++
	  else
	  foo_SOURCES = less.c
	  endif

	will cause the build rules for 'foo' to *unconditionally* use the
	C++ compiler for linking, even when the 'HAVE_CXX' conditional
	evaluates to false (which might mean that no C++ compiler is
	available).

	This behaviour is not really correct, but it's easy enough to work
	around, and it's only relevant for fringe use cases (at best).  So
	let's just test that the workaround really works.

	* tests/link_cond.test: New test.
	* tests/list-of-tests.mk: Add it.
	* THANKS: Update.

2012-03-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	info: allow user to inhibit pruning of '${infodir}/dir'

	This should have ideally been part of commit 'v1.11-519-g1ec1668'
	of 23-11-2011 "info: allow user to inhibit creation/update of
	'${infodir}/dir'".  Well, better late than never.

	* lib/am/texinfos.am (uninstall-info-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'.  To avoid code duplication with ...
	(install-info-am): ... the recipe of this target, move common code
	out to ...
	(am__can_run_installinfo): ... this new internal variable.
	* tests/install-info-dir.test: Enhance.
	* doc/automake.texi (Texinfo): Update.
	* NEWS: Likewise.

2012-03-26  Bruno Haible  <bruno@clisp.org>
	    Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala tests: fix spurious failures with older valac (<= 0.7.2)

	See automake bug#11093.

	The Vala compiler before the 0.7.3 release does not support the
	'--profile' option.  But some of our tests were relying on it, so
	skip those tests if the detected Vala compiler is too old.

	* tests/vala-vpath.test, tests/vala-mix.test, tests/vala-mix2.test
	(configure.in): Require vala version >= 0.7.3 in AM_PROG_VALAC call.

2012-03-26  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix a timestamp issue, and other minor buglets

	Cherry picked from commit v1.11-1988-g82616f0 of 21-02-2012.

	Reported by Panther Martin in automake bug#10848.  See also
	automake bug#11093.

	* tests/conffile-leading-dot.test: Add a proper '$sleep' invocation,
	to avoid spurious failures on fast systems without sub-second
	timestamp resolutions.  Add other minor related and unrelated
	improvements and fixlets since we are at it.

2012-03-26  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure with older autoconf

	Cherry picked from commit v1.11-1950-gba5a89b of 16-02-2012.

	* tests/conffile-leading-dot.test: Relax grepping of 'config.status'
	stderr, to cater for older autoconf.  Issue revealed by a failure
	with autoconf 2.63 on Cygwin 1.5.25. See also automake bug#11093.

2012-03-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: update THANKS

	* THANKS: Add entry for Tim Landscheidt.

2012-03-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: terminate unfinished sentence, fix reference to a test case

	* doc/automake.texi (Using the TAP test protocol): Here.

2012-03-24  Tim Landscheidt  <tim@tim-landscheidt.de>  (tiny change)

	docs: fix some small typos and grammaros

	* doc/automake.texi (Using the TAP test protocol): Here ...
	* tests/tap-doc2.test: ... and here.

2012-03-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	build: remove duplicated entries in $(TESTS)

	* tests/list-of-tests.mk (handwritten_TESTS): Remove duplicated
	entries for test cases 'extra-portability*.test'.

2012-03-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: update TODO file

	We don't have to make creation of $(foodir) conditional when
	foo_PRIMARY is conditionally defined; that has been solved in
	a more sweeping way by commit v1.11-759-g368f1c4 of March 18,
	which solved bug#11030 and bug#10997.

	The "check" target already depends on the "all" target.

	Remove comment "investigate problems with conditionally defined
	libraries"; it is aimed at automake 1.5 (!) and too terse and old
	to be useful now.

	Remove the 12 years old suggestion that "distcheck should make sure
	that each file that uses _() is listed in POTFILES.in"; this is
	handled by gnulib-provided syntax check 'sc_po_check' already today.

	Don't tell to "Run automake before libtool"; automake does not
	automatically run libtool anymore today.

	Remove hint about the possibility to "rewrite automake in guile" or
	"add a GUI": we are not going to do so.

	The automatic de-ANSI-fication feature has already been remove, so
	no need to suggest its potential removal in the future.

	Remove reference to a prospective "cvs" option that could add some
	cvs-specific rules.  First of all, CVS is falling out of use today.
	Secondly, and most to the point, instead of guessing which VCS
	is going to be most popular and try to hack support for it into
	automake, we should leave it to developer-specific makefile
	fragments offered by projects like Gnulib to provide such rules
	(they are already doing so with succcess).

	About DOS support: it should actually be dropped, not extended.

	Add link about Karl Berry's proposal of preferring HTML over Info
	documentation installed in the local system:
	<http://lists.gnu.org/archive/html/texinfo-devel/2012-03/msg00018.html>

	Remove items about "beautification" of output Makefile.in; they
	are pretty obvious, and mostly noise (after all, everybody prefers
	clean output where possible).  Leave it to any developer doing
	future refactorings to find out low-hanging and/or high-impact
	optimizations and beatifications of the generated Makefiles.

	Remove item about internationalization: we're not going to
	implement it.

	Remove an item explicitly marked as "not that it matters".

	The order of files in a distribution tarball does not really
	matter, nobody has ever complained about it, so do not worry
	about it.

	Remove the suggestions about allowing hierarchy of dirs to share
	one aclocal.m4 and about printing full file name of Makefile.am
	or configure.in when giving error, in order to help very large
	trees: nobody has ever complained about the current behaviours,
	so no real need to change them.

2012-03-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: bootstrapping issues with 'list-of-tests.mk'

	* tests/list-of-tests.mk: This file is expected to be executed
	directly with make from the bootstrap script, so we can't use
	Automake '##' comments after line continuations.

2012-03-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  maint: move definition of XFAIL_TESTS near TESTS

	Actually, after the trivial merge conflicts have been solved, what
	this change actually does is moving the definition of XFAIL_TESTS
	near that of handwritten_TESTS.  But the rationale is the same of
	that of commit 'v1.11-761-gabf40ce' (being merged here), and still
	works, so all is good.

2012-03-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: move definition of XFAIL_TESTS near TESTS

	The $(TESTS) variable is defined in file 'tests/list-of-tests.mk',
	while the $(XFAIL_TESTS) variable is defined in 'tests/Makefile.am'.
	This means that when a new xfailing test is to be added, two files
	must be touched; this is suboptimal and slightly confusing.

	* tests/Makefile.am (XFAIL_TESTS): Definition moved ...
	* tests/list-of-tests.mk: ... here.

2012-03-19  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failures caused by uses of 'configure.in'

	Issue introduced by the recent merges of maint into master, and
	revealed by "make maintainer-check".

	* tests/aclocal-install-fail.test: Likewise.
	* tests/aclocal-install-mkdir.test: Likewise.
	* tests/aclocal-verbose-install.test: Likewise.
	* tests/installdir.test: Likewise.
	* tests/instdir-cond2.test: Likewise.
	* tests/instdir-no-empty.test: Likewise.
	* tests/python-pr10995.test: Likewise.
	* tests/aclocal-no-install-no-mkdir.test: Likewise.

2012-03-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  install-mans: avoid spurious failure with NetBSD make
	  install: don't create empty dirs when an empty 'foo_PRIMARY' is used
	  aclocal: remove a couple of useless imports
	  aclocal: create local directory where to install m4 files

2012-03-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	install-mans: avoid spurious failure with NetBSD make

	* lib/am/mans.am: After the changes introduced by previous commit
	v1.11-759-g368f1c4, some manpage installation recipes started to
	fail spuriously on NetBSD 5.1 make.  Apparently, the system make
	there eats backslashes used to escape whitespace characters in the
	relevant recipes.  Revert to slightly slower but safer idioms that
	avoid the need of such escaping.

2012-03-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	install: don't create empty dirs when an empty 'foo_PRIMARY' is used

	Fixes automake bug#11030 and bug#10997.

	An empty declaration of "foo_PRIMARY" in a Makefile.am used to
	cause the generated install rules to create the directory $(foodir)
	anyway, even if nothing was to be installed there.

	While this could be seen as a convenient way to create a $(foodir)
	directory upon "make install" (respecting $(DESTDIR) settings and
	such), it also caused problems with conditionals; for example, an
	input of:

	  if FALSE
	  pgkdata_DATA = something
	  endif

	caused the generated install rules to unconditionally create the
	$(pkgdatadir) directory (see automake bug#10997).

	Also, a user wanting to create an empty directory upon installation
	can easily do so with a custom install hook, as in:

	  installdirs-local:
	          $(MKDIR_P) $(DESTDIR)$(foodir)
	  install-data-hook: installdirs-local

	On the other hand, the old behavior of "always create $(foodir),
	even if 'foo_PRIMARY' is empty" was harder and more tricky to
	override.

	Thus, from now on, an empty declaration of "foo_PRIMARY" will not
	cause the directory $(foodir) to be created upon "make install"
	anymore.

	* lib/am/data.am, lib/am/java.am, lib/am/libs.am, lib/am/lisp.am,
	lib/am/ltlib.am, lib/am/mans.am, lib/am/progs.am, lib/am/python.am,
	lib/am/scripts.am, lib/am/texinfos.am: Adjust install rules to avoid
	creating an installation directory if no files are actually to be
	installed there.
	* tests/instdir-empty.test: Remove, it was testing a semantic
	opposite to the one we now want and implement.
	* tests/instdir-no-empty.test: New test, check the new semantic.
	* tests/instdir-cond.test: Enhance.  Move the still-failing part
	of the test ...
	* tests/instdir-cond2.test: ... here.
	* tests/list-of-tests.mk, tests/Makefile.am (XFAIL_TESTS): Update.
	* tests/java3.test: Adjust to avoid spurious failures.
	* HACKING, NEWS, THANKS: Update.

2012-03-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	aclocal: remove a couple of useless imports

	* aclocal.in (File::stat, Cwd): Remove these imports, they are not
	really required.

2012-03-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	aclocal: create local directory where to install m4 files

	Fixes automake bug#8168 and bug#10816.

	A call like "aclocal -I m4 --install" used to fail if the 'm4'
	directory wasn't pre-existing.  This could be particularly
	annoying when running in a checked-out version from a VCS like
	git, which doesn't allow empty directories to be tracked.

	* aclocal.in (File::Path): New import.
	(scan_m4_dirs): Don't die if the first directory of type FT_USER
	doesn't exist and the '--install' option was given; that directory
	will be created later ...
	(install_file): ... here.  Change signature of this function: now
	it takes as second argument the destination directory rather than
	the destination file.  Crate the destination directory if it
	doesn't already exist.  In verbose mode, tell what is being copied
	where.
	(write_aclocal): Update to the changes in 'install_file'.
	* NEWS, THANKS: Update.
	* tests/aclocal-install-fail.test: New test.
	* tests/aclocal-install-mkdir.test: Likewise.
	* tests/aclocal-no-install-no-mkdir.test: Likewise.
	* tests/aclocal-verbose-install.test: Likewise.
	* tests/list-of-tests.mk: Add them.

2012-03-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  python: avoid failures due to $(am__py_compile) being undefined
	  python: expose automake bug#10995

2012-03-15  Steven Drake  <sbd@NetBSD.org>  (tiny change)

	python: avoid failures due to $(am__py_compile) being undefined

	Fixes automake bug#10995, introduced in commit v1.11-372-gb46debf.

	* lib/am/python.am: Move the definition of 'am__py_compile' to
	ensure it is always emitted in the output Makefile.in.  Previously,
	this wouldn't have happened if the input Makefile.am contained a
	'noinst_PYTHON' declaration before a 'python_PYTHON' one.
	* tests/Makefile.am (XFAIL_TESTS): Remove 'python-pr10995.test' and
	'python.test'.
	* NEWS: Update.

2012-03-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	python: expose automake bug#10995

	* tests/python.test: Expose the bug in grepping tests.
	* tests/python-noinst.test: New functional test to expose the
	bug.
	* tests/list-of-tests.mk: Add it.
	* tests/Makefile.am (XFAIL_TESTS): Add the new test and the
	extended one.
	* THANKS: Update.

2012-03-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: one more use of 'unindent' function

	* tests/yacc-d-cxx.test (write_parse, write_main): Use 'unindent'
	instead of ad-hoc sed invocation to strip extra leading whitespace.

2012-03-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: remove redundant 'set -e' calls

	* tests/dist-pr109765.test: Do not set the 'errexit' shell flag,
	as it is already set by 'tests/defs'.
	* tests/instdir-cond.test: Likewise.
	* tests/instdir-empty.test: Likewise.
	* tests/lex-clean-cxx.test: Likewise.
	* tests/lex-clean.test: Likewise.
	* tests/lex-depend-cxx.test: Likewise.
	* tests/lex-depend.test: Likewise.
	* tests/lex-line.test: Likewise.
	* tests/lex-nodist.test: Likewise.
	* tests/lex-pr204.test: Likewise.
	* tests/silent-lex.test: Likewise.
	* tests/silent-yacc-headers.test: Likewise.
	* tests/silent-yacc.test: Likewise.
	* tests/vala-mix2.test: Likewise.
	* tests/yacc-auxdir.test: Likewise.
	* tests/yacc-bison-skeleton-cxx.test: Likewise.
	* tests/yacc-bison-skeleton.test: Likewise.
	* tests/yacc-clean-cxx.test: Likewise.
	* tests/yacc-cxx.test: Likewise.
	* tests/yacc-d-cxx.test: Likewise.
	* tests/yacc-deleted-headers.test: Likewise.
	* tests/yacc-depend.test: Likewise.
	* tests/yacc-depend2.test: Likewise.
	* tests/yacc-line.test: Likewise.
	* tests/yacc-mix-c-cxx.test: Likewise.
	* tests/yacc-weirdnames.test: Likewise.

2012-03-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  tests: avoid spurious failures in get-sysconf.test
	  scripts: bump the depcomp scriptversion
	  sync: some auxiliary files synced from upstream
	  coverage: an empty foo_PRIMARY should create directory $(foodir)
	  coverage: make sure am__py_compile is defined when needed
	  coverage: expose automake bug#10997
	  coverage: expose automake bug#10975
	  getopt: relax version requirement for perl

	+ Extra non-trivial edits:

	* tests/dist-pr109765.test: Use 'configure.ac', not 'configure.in'.
	* tests/instdir-cond.test: Likewise.
	* tests/instdir-empty.test: Likewise.

2012-03-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure with older m4

	Reported by Panther Martin in automake bug#10866, diagnosed by
	Panther Martin and Eric Blake.

	Older GNU m4 versions (e.g., 1.4.6) did error reporting at the end
	of an error construct rather than the beginning.  This was causing
	a spurious testsuite failure due to an off-by-one error in the line
	number reported in an aclocal diagnostic.

	* tests/cond41.test: Keep all the body of the 'AM_COND_IF'
	invocation on a single line, to avoid the off-by-one error.

2012-03-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failures in get-sysconf.test

	This change fixes the last bit of automake bug#10866.

	* tests/get-sysconf.test: When Homebrew spawns a build, even if
	from a project's VCS, it stages the files in a new temporary
	directory, instead of building directly from a VCS checkout.
	This behaviour was causing a spurious failure in this test, which
	expected to find either a ChangeLog file or a .git directory in
	the source directory (the former happening when the test was run
	from a distribution tarball, the latter when it was run from a
	git checkout).  The Homebrew issue shows that these expectations
	are not truly warranted, so relax the test to just give a warning,
	not a failure, in case they do not hold.  Since we are at it, fix
	an unrelated weakness in the displaying of the git log, which
	could have failed when the builddir was not a subdirectory of the
	srcdir.

2012-03-12  Peter Rosin  <peda@lysator.liu.se>

	scripts: bump the depcomp scriptversion

	* lib/depcomp (scriptversion): Bump, to account for recent changes.

2012-03-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	sync: some auxiliary files synced from upstream

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

2012-03-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	coverage: an empty foo_PRIMARY should create directory $(foodir)

	For example, a Makefile.am containing the definition:

	  pkgdata_DATA =

	should cause the 'install' rule of the generated Makefile.in to
	create the '$(pkgdatadir)' directory (respecting any DESTDIR
	setting as well).

	Suggestion by Peter Breitenlohner in automake bug#10997.

2012-03-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	coverage: make sure am__py_compile is defined when needed

	See automake bug#10995.

	* tests/python.test: Also make sure 'am__py_compile' is defined
	correctly in the generated Makefile.in.

2012-03-12  Daiki Ueno  <ueno@unixuser.org>  (tiny change)

	coverage: expose automake bug#10997

	* tests/instdir-cond.test: New test.
	* tests/list-of-tests.mk: Add it.
	* tests/Makefile.am (XFAIL_TESTS): Likewise.

2012-03-09  Stefano Lattarini  <stefano.lattarini@gmail.com>

	coverage: expose automake bug#10975

	* tests/dist-pr10975.test: New test.
	* tests/list-of-tests.mk: Add it.
	* tests/Makefile.am (XFAIL_TESTS): Likewise.

2012-03-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	getopt: relax version requirement for perl

	* lib/Automake/Getopt.pm: Require perl 5.6.0, not 5.6.2: the former
	is enough.  See also commit 'v1.11-2054-g7df05a0' on master (dated
	04-03-2012).

2012-03-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  cosmetics: fix repeated changelog entry heading

2012-03-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: fix repeated changelog entry heading

2012-03-07  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'maint'

2012-03-07  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'msvc' into maint

	This merge remedies the confusing situation that some changes
	destined for both the master branch and the release branch (a.k.a.
	branch-1.11) currently needs to be made on the non-obvious msvc
	branch and not on the more natural maint branch.  This has caused
	a seemingly endless string of less than optimal commits.

	The reason for the confusion stems from the fact that the changes made
	on the msvc branch became too radical and was considered only suitable
	for the master branch, and was thus written in a form suitable for
	master and then merged there.  Later, the msvc branch was merged
	directly into branch-1.11, in order to rush the new features to the
	market and to keep the released scripts (lib/ar-lib, lib/compile and
	lib/depcomp) consistent with those on the master branch.  However,
	some changes had to be made to the features added by the msvc branch
	in order for them to fit the requirements of branch-1.11, notably that
	the warnings issued in the extra-portability class cannot be enabled
	by -Wall in the 1.11.x maintenance releases.

	In retrospect, it would have been better to not merge msvc directly
	into branch-1.11, but instead do it via the maint branch (followed up
	with a dummy merge from maint into master) the moment it was decided
	that the msvc changes should make it into branch-1.11.

	All in all, this merge is going to affect neither the master branch
	nor branch-1.11, since it is followed up with dummy merges masking all
	changes.  The merge is made to maintain the sanity of the poor
	developers, who wishes to once again have a working maint branch.

	Discussion about merging the msvc branch into branch-1.11:
	http://lists.gnu.org/archive/html/automake/2011-10/msg00030.html

	Discussion about why this merge hasn't happened before:
	http://lists.gnu.org/archive/html/automake/2011-12/msg00051.html

	Extra edits below.

	* lib/Automake/ChannelDefs.pm: Use the version from branch-1.11.
	* tests/ar-lib3.test: Likewise.
	* tests/ar-lib4.test: Likewise.
	* tests/extra-portability.test: Likewise.
	* tests/extra-portability2.test: Likewise.
	* tests/extradep.test: Likewise.
	* tests/extradep2.test: Likewise.
	* tests/list-of-tests.mk: Likewise.
	* HACKING: Backport the version from branch-1.11 while at it (as the
	change on branch-1.11 is also present on master via an unrelated
	commit), even though this change has nothing to do with the changes
	on the msvc branch.

2012-03-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: remove useless sleep from tests on remake rules

	The sleeps were there to make generated autotools files strictly
	newer than their sources; however, this is not necessary, since
	POSIX mandates that make considers files with the same timestamp
	of their dependencies to be up-to-date.

	* tests/remake9a.test: Remove useless $sleep.
	* tests/remake9b.test: Likewise.
	* tests/remake9c.test: Likewise.
	* tests/remake9d.test: Likewise.
	* tests/remake10a.test: Likewise.
	* tests/remake10b.test: Likewise.
	* tests/remake10c.test: Likewise.

2012-03-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'msvc' into master (dummy merge)

2012-03-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint' into msvc

	* maint:
	  news: describe recently-fixed bug in vala support
	  depcomp: add support for IBM xlc/xlC compilers

2012-03-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge remote-tracking branch 'origin/master'

2012-03-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  news: describe recently-fixed bug in vala support
	  depcomp: add support for IBM xlc/xlC compilers

2012-03-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	news: describe recently-fixed bug in vala support

	* NEWS (Long-standing bugs): Document fix for bug#10894, fixed
	by commit 'v1.11-696-g51f61df' of 27-02-2012.

2012-03-06  Michael Hofmannm  <hofma@googlemail.com>  (tiny change)

	depcomp: add support for IBM xlc/xlC compilers

	* lib/depcomp (xlc): New depmode.
	* NEWS, THANKS: Update.

2012-03-06  Peter Rosin  <peda@lysator.liu.se>

	tests: do not clobber the $CC set by AM_PROG_CC_C_O

	If $CC is originally a losing compiler, AM_PROG_CC_C_O will
	modify $CC.  "$MAKE -e" will then clobber this modified $CC
	and reintroduce the raw losing compiler causing the test
	to fail, as subdir-objects is in effect.

	* tests/yacc-dist-nobuild-subdir.test: Drop -e from the $MAKE
	invocations.  This is safe since DISTCHECK_CONFIGURE_FLAGS is not
	specified in the Makefile and since the YACC override is carried
	over from the configure invocation into the Makefile making it
	redundant to specifiy it again in the environment for $MAKE.

2012-03-06  Peter Rosin  <peda@lysator.liu.se>

	tests: explicitly state that our lexers do not require unistd.h

	By default, GNU flex generates code that is dependent on unistd.h,
	which is not portable to non-ANSI systems causing spurious test
	failures.

	* tests/cond35.test (tscan.l): Define YY_NO_UNISTD_H.
	* tests/lex-clean.test (lexer.l): Likewise.
	* tests/lex-depend.test (joe.l): Likewise.
	* tests/lex-lib-external.test (foo.l): Likewise.
	* tests/lex-lib.test (foo.l): Likewise.
	* tests/lex-libobj.test (foo.l): Likewise.
	* tests/lex-line.test (zardoz.l): Likewise.
	* tests/lex-nodist.test (lexer.l): Likewise.
	* tests/lex-noyywrap.test (foo.l): Likewise.
	* tests/lex-pr204.test (lexer.l): Likewise.
	* tests/lex-subobj-nodep.test (subl/sl.l): Likewise.
	* tests/lex3.test (foo.l): Likewise.
	* tests/lex5.test (foo/foo.l): Likewise.
	* tests/lexvpath.test (lexer.l): Likewise.
	* tests/silent-lex.test (foo.l): Likewise.
	* tests/silent-many-gcc.test (foo5.l): Likewise.
	* tests/silent-many-generic.test (foo5.l): Likewise.
	* tests/lex-clean-cxx.test (parsefoo.lxx): Likewise.  Also specify
	the never-interactive option to prevent usage of the non-ANSI
	function isatty(3) (from unistd.h).
	* tests/lex-depend-cxx.test (joe.ll): Likewise.
	* tests/README: Describe these quirks.

2012-03-06  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'msvc'

	* msvc:
	  scripts: support -I <dir> -L <dir> and -l <lib> for cl in compile

2012-03-06  Peter Rosin  <peda@lysator.liu.se>

	scripts: support -I <dir> -L <dir> and -l <lib> for cl in compile

	POSIX mandates that the compiler accepts a space between the -I,
	-l and -L options and their respective arguments.  See
	http://pubs.opengroup.org/onlinepubs/000095399/utilities/c99.html

	* lib/compile (func_cl_dashl): New function with factored out code
	for implementing the -l option for the cl wrapper.
	(func_cl_dashL): New function with factored out code implementing
	the -L option for the cl wrapper.
	(func_cl_wrapper): Use func_cl_dashl to implement both -l <lib>
	and -l<lib>, and func_cl_dashL to implement both -L <dir> and
	-L<dir>.  Also add support for -I <dir>.
	(scriptversion): Update.
	* tests/compile3.test: Test both with and without a space between
	-I, -l and -L and their respective arguments.
	* tests/compile5.test: Likewise.
	* tests/compile6.test: Likewise.
	* tests/compile3.test: Likewise.
	* NEWS: Update.

2012-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: drop 'Automake::Struct' module

	Now that we require Perl 5.6, we can drop the 'Automake::Struct'
	module, which was basically just a backport of Perl 5.6's
	'Class::Struct' to Perl 5.5.

	* automake.in: Use 'Class::Struct', not 'Automake::Struct'.
	* lib/Automake/Struct.pm: Delete.
	* lib/Automake/Makefile.am (dist_perllib_DATA): Remove it.

2012-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: require perl 5.6 throughout

	That version of perl is quite old already, so it should be OK to
	require it.  More importantly, it is the older perl versions the
	developers can currently use for testing, thus it's safer and more
	honest to just require it throughout.  And anyway, we were already
	requiring it in Automake::Getopt, which implied that both automake
	and aclocal wouldn't have worked in practice with an older perl
	version.

	See also the discussion related to automake bug#10925.

	* lib/Automake/ChannelDefs.pm: Adjusted to require perl 5.6.
	* lib/Automake/Channels.pm: Likewise.
	* lib/Automake/Condition.pm: Likewise.
	* lib/Automake/Configure_ac.pm: Likewise.
	* lib/Automake/DisjConditions.pm: Likewise.
	* lib/Automake/FileUtils.pm: Likewise.
	* lib/Automake/General.pm: Likewise.
	* lib/Automake/Item.pm: Likewise.
	* lib/Automake/ItemDef.pm: Likewise.
	* lib/Automake/Location.pm: Likewise.
	* lib/Automake/Options.pm: Likewise.
	* lib/Automake/Rule.pm: Likewise.
	* lib/Automake/RuleDef.pm: Likewise.
	* lib/Automake/Struct.pm: Likewise.
	* lib/Automake/VarDef.pm: Likewise.
	* lib/Automake/Variable.pm: Likewise.
	* lib/Automake/Version.pm: Likewise.
	* lib/Automake/Wrap.pm: Likewise.
	* lib/Automake/XFile.pm: Likewise.

2012-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: remove useless escaping for "'" character

2012-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: remove redundant and unused requirements

	* tests/defs (xsi-bin-sh, xsi-shell): Remove these requirements,
	they have never been used.
	(cygpath, cscope): Recognizing these explicitly is mostly redundant;
	just merge them with the default "catch all" rule, and adjust that
	accordingly.
	(bzip2): Adjust some outdated comments.

2012-03-03  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure on case-insensitive file systems

	See automake bug#10866.

	* tests/java-uninstall.test: Relax the test a little to cater to
	case-insensitive file systems, like HFS+ on MacOS X.

2012-03-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	news: more about planned backward incompatibilities

	* NEWS (Future backward-incompatibilities): Starting from the next
	major Automake versions, the parallel testsuite driver will be used
	by default, instead of the serial testsuite driver as in the past.

2012-03-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: fix few spurious failures

	* syntax-checks.mk: Fix some spurious failures by tightening and/or
	tweaking few checks so that some false positives end up whitelisted.

2012-03-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure due to exported MAKEINFO

	* tests/txinfo30.test: Unset variable MAKEINFO, as its content could
	take precedence over our faked makeinfo script and cause a spurious
	failure.  Reported as part of automake bug#10866.  Add trailing ':'
	command since we are at it.

2012-03-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure in a vala test

	* tests/vala-mix2.test: Append to 'configure.ac' rather than to
	'configure.in'.  Reported as part of automake bug#10866, and also
	revealed by "make maintainer-check".

2012-03-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	self checks: relax tests on cleanup

	Some find(1) implementations have problems operating recursively on
	directories having subdirectories with null permissions, even when
	the permissions of such subdirectory should be fixed by find before
	it descends into them; for example, with this setup:

	  % mkdir a a/b
	  % chmod 000 a/b

	a command like this:

	  % find a -type d ! -perm -700 -exec chmod u+rwx '{}' ';'

	fails with this diagnostic on MacOS X 10.7:

	  find: a/b: Permission denied

	and with this diagnostic on Solaris 10:

	  find: cannot read dir a/b: Permission denied

	The problem is that our self checks were simply demanding too much
	from our cleanup trap: our tests never use subdirectories with null
	permissions, so it doesn't matter if the cleanup trap fails to
	handle those.  Just relax the self checks to avoid such useless
	testsuite noise.

	* tests/self-check-cleanup.tap: Only try directories missing
	write permissions, not with null permission.  That should be
	enough for our usages.

2012-03-02  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'msvc'

	* msvc:
	  news: add entry about recent 'ar-lib' changes

2012-03-02  Peter Rosin  <peda@lysator.liu.se>

	news: add entry about recent 'ar-lib' changes

	* NEWS: Add information about recent 'ar-lib' changes.

2012-03-02  Peter Rosin  <peda@lysator.liu.se>

	scripts: recognize the "q", "s" and "S" actions/modifiers in ar-lib

	* lib/ar-lib: Implement the "q" (quick) action as a synonym
	for "r" (replace).  Ignore "s" (symbol index) and "S" (no symbol
	index) when used as modifiers and "s" when used as a command,
	there is simply no way for Microsoft lib to not update the
	symbol table index in the archive.
	(scriptversion): Update.
	* tests/ar-lib.test: Check the added behavior.  Also add checks
	for the recently added "u" (update) and "v" (verbose) modifiers.

2012-03-02  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'fix-vala-test'

	* fix-vala-test:
	  tests: fix (harmless) botched merge

2012-03-02  Peter Rosin  <peda@lysator.liu.se>

	tests: fix (harmless) botched merge

	Commit v1.11-1750-g9928ea5 of 2012-01-16 (Merge branch 'maint')
	reordered the macro calls so that AM_PROG_AR ended up after
	AC_PROG_LIBTOOL, which is not allowed.  This error went by
	undetected since AC_PROG_LIBTOOL was redefined, but that also
	removed the ordering requirement making the error benign.

	* tests/vala.test: Put AM_PROG_AR before AC_PROG_LIBTOOL.

2012-03-02  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'maint' into msvc

2012-03-01  Peter Rosin  <peda@lysator.liu.se>

	scripts: recognize the "q", "s" and "S" actions/modifiers in ar-lib

	* lib/ar-lib: Implement the "q" (quick) action as a synonym
	for "r" (replace).  Ignore "s" (symbol index) and "S" (no symbol
	index) when used as modifiers and "s" when used as a command,
	there is simply no way for Microsoft lib to not update the
	symbol table index in the archive.
	(scriptversion): Update.
	* tests/ar-lib.test: Check the added behavior.  Also add checks
	for the recently added "u" (update) and "v" (verbose) modifiers.

2012-02-29  Peter Rosin  <peda@lysator.liu.se>

	tests: do not try to use ar(1) when $AR points to something else

	* tests/libobj10.test: Move the archive listing commands to the
	Makefile, so that $AR - as determined by configure - can be
	used.
	* tests/libobj17.test: Likewise.

2012-02-29  Peter Rosin  <peda@lysator.liu.se>

	tests: make tests behave for the AR=lib case

	These below tests were left mostly as-is when AM_PROG_AR was
	introduced (with libobj16b being the exception, that test was
	forgotten or has regressed since), in a misguided attempt to
	not make them diverge from the original problem reports.

	Modernize them so that they do not FAIL when $AR is Microsoft
	'lib'.

	* tests/libobj16b.test: Add AM_PROG_AR to configure.ac and remove
	the no-longer-needed -Wno-extra-portability option when invoking
	automake.
	* tests/pr300-lib.test: Likewise.
	* tests/pr300-ltlib.test: Likewise.
	* tests/pr307.test: Likewise.
	* tests/pr401.test: Likewise.  Also fetch the 'ar-lib' script.
	* tests/pr401b.test: Likewise.
	* tests/pr401c.test: Likewise.

2012-02-29  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  vala: fix 'valac' calls for projects with mixed Vala/C
	  vala: expose automake bug#10894

2012-02-29  Dave Goodell  <goodell@mcs.anl.gov>  (tiny change)
	    Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure with Portland Compilers

	* tests/silent-many-generic.test (configure.ac): Be more careful
	in the workaround to avoid spurious failures with C++ compilers
	containing the string "CC" in their names; this avoids spurious
	failures with at least the Sun Studio C++ compiler (when named
	"sunCC") and the Portland Group C++ Compiler ("pgCC").
	Also handle arguments with whitespace correctly in the 'am--cxx'
	temporary wrapper.
	* THANKS: Update.

2012-02-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure when dependency tracking is unavailable

	Report by Dave Goodell.  See automake bug#8880.

	* tests/yacc-dist-nobuild.test: Run the sanity check that aims at
	ensuring we really cover the expected code paths in a new build
	directory, to avoid spurious failures when automatic dependency
	tracking is disabled.

2012-02-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala: fix 'valac' calls for projects with mixed Vala/C

	Fixes automake bug#10894.

	* automake.in (lang_vala_finish_target): Strip non-vala files
	from the dependencies of vala stamps, and from the invocation
	of valac compiler.  Related refactorings.
	* tests/Makefile.am (XFAIL_TESTS): Remove 'vala-mix2.test'.

2012-02-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala: expose automake bug#10894

	* tests/vala-mix2.test: New test.
	* tests/list-of-tests.mk: Add it.
	* tests/Makefile.am (XFAIL_TESTS): Likewise.
	* THANKS: Update.

2012-02-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: remove a duplicated copyright line

	* tests/list-of-tests.mk: Remove a duplicated copyright line.

2012-02-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	coverage: --program-transform shouldn't transform too much

	Stemmed from a report by Vladimir 'φ-coder/phcoder' Serbinenko:
	<http://lists.gnu.org/archive/html/automake/2012-02/msg00025.html>

	* tests/transform3.test: New test, checking that --program-transform
	does not transform too much stuff (in particular, pkglibexecdir,
	pgklibdir and pkgdatadir).
	* tests/list-of-tests.mk: Add it.
	* THANKS: Update.

2012-02-26  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failure (line too long in awk)

	* tests/parallel-tests-many.test: Use perl, not awk, to write the
	Makefile.am with (deliberately) overly long TESTS content, as some
	inferior awk implementations (e.g., Solaris 10 /usr/bin/awk) are
	unable to handle the long lines used there and die with errors like:
	"awk: string too long near line 5".

2012-02-26  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failures when awk is "traditional awk"

	* tests/Makefile.am (do_subst): Also substitute '@AWK@'.
	* tests/defs-static.in ($AWK): New, user-overridable and defaulting
	to the substituted '@AWK@'.
	* tests/defs (fetch_tap_driver): When the shell+awk implementation
	of the TAP driver is required, export AM_TAP_AWK to point to a
	properly capable awk, since the default awk might be a "traditional"
	implementation, which won't be enough for our driver.  This is the
	right fix, since a proper setting of AM_TAP_AWK in the driver's
	environment is expected (and documented to be required) in real
	world uses of 'tap-driver.sh'.

2012-02-26  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid many spurious failures for shells with busted 'set -e'

	Some versions of the BSD Korn shell wrongly bail out when the
	'errexit' shell flag is active and the left-hand command in a
	"&&" list fails and that list is the *last* command of an entry
	in a "case" statement.

	* tests/defs (gcc, g++, gcj): Work around that.

2012-02-26  Stefano Lattarini  <stefano.lattarini@gmail.com>

	aclocal: don't create /usr/share/aclocal as empty

	Related to automake bug#10791.

	Since automake 1.11.2, aclocal no longer succeeds if the system
	acdir '${datadir}/aclocal' (i.e., "/usr/share/aclocal" when
	${prefix} is "/usr") does not exist.  So we now have a directory
	*installed empty by default*, but whose existence is required by
	aclocal in order for it to function at all.  This might be
	confusing, and sounds like asking for trouble in the long term.

	So we now also install a simple README file in that directory,
	which briefly explains its purpose and warn that its existence
	is required by the normal aclocal functioning.

	* m4/acdir/README: New file.
	* m4/Makefile.am (dist_system_ac_DATA): Add it.
	* m4/acdir/.placeholder: Delete, no more needed.
	* m4/Makefile.am (EXTRA_DIST): Remove it.
	* THANKS: Update.

2012-02-26  Stefano Lattarini  <stefano.lattarini@gmail.com>

	hacking: document format for git commit messages

	* HACKING (Writing a good commit message): New section.
	(Working with git): A related minor adjustment.

2012-02-25  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: improve 'dist-hook' documentation

	* doc/automake.texi (The dist Hook): Explicitly document the fact
	that the dist-hook should account for the case where the source
	tree is read-only, mostly for the benefit of distcheck.  Since
	we are at it, do some minor unrelated rewordings, and remove
	obsolescent advice.  Motivated by the discussion on automake
	bug#10878.
	* tests/disthook.test: New test.
	* tests/disthook-perms.test: Delete as obsolete.
	* tests/list-of-tests.mk: Adjust.

2012-02-25  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: improve "make distcheck" documentation

	* doc/automake.texi (Checking the Distribution): The fact that
	"make distcheck" uses a read-only srcdir wasn't documented clearly
	enough here.  Fix that.  Since we are at it, be more explicit
	about the steps undertaken by "make distcheck", and re-organize
	this section a bit.  Motivated by the discussion on automake
	bug#10878.
	(distcleancheck): Rename this node (in the "FAQ" section) ...
	(Errors with distclean): ... to this.
	Add a proper "FIXME" comment.

2012-02-25  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: proper capitalization and full stops in 'm4/depend.m4'

2012-02-25  Stefano Lattarini  <stefano.lattarini@gmail.com>

	coverage: dist-hook and distcheck-hook can modify file permission

	See automake bug#10878.

	* tests/dist-hook-perms.test: New test, checking that the user can
	use the 'dist-hook' target to modify permissions of distributed
	files before putting them in the distribution tarball.
	* tests/distcheck-writable-srcdir.test: New test, checking that the
	user can use 'distcheck-hook' to ensure his packages is built by
	"make distcheck" with a writable srcdir.  This goes against the GNU
	Coding Standards, but some package authors might not care about
	them too much, and it's nice to support their use case too.
	* tests/list-of-tests.mk: Add them.

2012-02-25  Jim Meyering  <meyering@redhat.com>

	tests: avoid spurious failure when gcj is not installed

	Since yesterday's commit, v1.11-2019-g4d2bf42,
	the gcj4 test would fail when gcj is not installed.

	* tests/defs-static.in (GNU_GCJ, GNU_GCJFLAGS): Define.
	* tests/Makefile.am (do_subust): Add those to the list of
	substituted symbols.

2012-02-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: look for GNU Java compiler at configure time

	Do this for consistency with what is done with other compilers.

	* configure.ac: Look for GNU java compiler at configure time.
	* tests/defs (gcj): Adjust and simplify.
	($am__tool_prefix): Remove definition, it's not used anymore.

2012-02-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	refactor: in Automake::Options (no semantic change)

	* lib/Automake/Options.pm: Prefer leading spaces to leading tabs
	throughout.  Minor whitespace and comment changes.
	(_process_option_list): Simple refactoring to make the code more
	pleasant to read and easier to modify in the future.  This
	refactoring also reduces code duplication, with the help of ...
	(_option_must_be_from_configure, _is_valid_easy_option): ... these
	new internal subroutines.
	* tests/tar3.test: Enhance.
	* tests/silent-amopts.test: New, checks that automake complains if
	the 'silent-rules' option is used in AUTOMAKE_OPTIONS.
	* tests/list-of-tests.mk: Add it.

2012-02-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: typofixes and whitespace changes

	* configure.ac: Fix a typo in comments.
	* aclocal.in: Get rid of latest form-feed (^L) usages.
	* automake.in: Likewise.

2012-02-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: looks for GNU compilers at configure time

	This way, if the generic C compiler determined configure time is
	recognized to be the GNU C compiler, we can reuse it instead of
	looking for a compiler named "gcc" (over and over again) in the
	test scripts requiring the GNU C compiler.  Ditto for the C++,
	Fortran, and Fortran 77 compilers.

	This change will improve coverage by allowing us to more easily
	use non-default GNU compilers throughout the testsuite.

	And as a bonus, this change also removes a weakness from our
	testsuite that could cause spurious failures when flags passed
	to the generic compilers were erroneously reused for the GNU
	compilers; see automake bug#10859.

	* configure.ac: Look for the GNU compilers explicitly.  Improve
	some configure output and diagnostic since we are at it.
	* tests/defs-static.in ($GNU_CC, $GNU_CXX, $GNU_FC, $GNU_F77):
	Initialize with the values determined at configure time (while
	allowing user overrides).
	* tests/Makefile.am (do_edit): Also substitute the configure-time
	values of GNU_CC, GNU_CXX, GNU_FC and GNU_F77.
	* tests/defs (gcc, g++, gfortran, g77): Use the values for the GNU
	compilers determined at configure time (i.e., $GNU_CC for the GNU
	C compiler, and so on).

2012-02-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs, news: document planned removal of obsolete macros and features

	* NEWS (Future backward-incompatibilities): Document planned removal
	of several superseded and/or obsoleted macros, of the $(mkdir_p)
	variable and @mkdir_p@ substitution, and of the support for the
	two- or three-arguments invocation forms of AM_INIT_AUTOMAKE.
	* doc/automake.texi: Likewise.

2012-02-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: remove reference to lzma support, it has been removed

	Support for lzma compression in distribution tarball has been
	removed in commit 'v1.11-1674-g02e9072' of 01-01-2012, "dist:
	remove support for lzma (superseded by xz and lzip)", but was
	still documented in the manual.

	* doc/automake.texi: Remove references to the 'dist-lzma' option
	and to the lzma compression support.

2012-02-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: fixlet in comment in automake

	* automake.in ($configure_dist_common): In the associated comment,
	refer to scanning of 'configure.ac', not 'configure.in'.

2012-02-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: assume 'test -x' is portable

	* lib/Makefile.am (installcheck-local): To verify that the installed
	scripts are actually executable, simply use 'test -x', instead of
	resorting to perl and its '-x' file operator.  Today, 'test -x'
	should today be portable to any non-museum system.  Since we are at
	it, improve diagnostic in case of failure.

2012-02-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	deptrack: avoid few forks in configure (minor optimization)

	* m4/depend.m4 (_AM_DEPENDENCIES): Use 'echo > file' instead of
	'touch file' to ensure the creation of a dummy file.  Adjust the
	comment that explains why we can't simply use ': > file': the
	problem this latter idiom tickles is present also with Solaris 10
	/bin/sh, not merely with Solaris 8 /bin/sh.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: remove an obsolete check

	* syntax-checks.mk (sc_perl_local_no_parens): Remove, we don't even
	allow the use of local but for the '$_' and '$~' special variables.
	(syntax_check_rules): Adjust.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	news: update w.r.t. change in quoting format

	* NEWS (New in 1.11.1a): State that we prefer to quote 'like this'
	or "like this" rather than `like this', as according to the new GCS
	recommendations.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	automake: do not quote `like this', as per GCS recommendation

	* automake.in: Convert comments, diagnostic and help screen to the
	use of new quoting format 'like this' or "like this" rather than
	`like this'.
	* tests/stdlib2.test: Adjust.
	* tests/ltinstloc.test: Likewise.
	* tests/location.test: Likewise.
	* tests/libtool8.test: Likewise.
	* tests/ldadd.test: Likewise, and prefer trailing ':' over trailing
	'Exit 0'.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	aclocal: do not quote `like this', as per GCS recommendation

	* aclocal.in: Convert comments, diagnostic and help screen
	to the use of new quoting format 'like this' or "like this"
	rather than `like this'.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	pm: do not quote `like this', as per GCS recommendation

	This patch converts the internal perl modules used by automake and
	aclocal to the use of new quoting format 'like this' or "like this"
	rather than `like this'.

	* lib/Automake/ChannelDefs.pm, lib/Automake/Channels.pm,
	lib/Automake/Condition.pm, lib/Automake/Configure_ac.pm,
	lib/Automake/DisjConditions.pm, lib/Automake/FileUtils.pm,
	lib/Automake/General.pm, lib/Automake/Item.pm,
	lib/Automake/Rule.pm, lib/Automake/Getopt.pm,
	lib/Automake/Options.pm, lib/Automake/Struct.pm,
	lib/Automake/VarDef.pm, lib/Automake/Variable.pm,
	lib/Automake/Version.pm, lib/Automake/XFile.pm: Update and
	adjust quoting format throughout, in comments and diagnostic.
	Some minor related rewordings and reformatting since we are
	at it.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	m4: do not quote `like this', as per GCS recommendation

	This patch converts the files comprising the automake's own build
	system to the use of new quoting format 'like this' or "like this"
	rather than `like this'.

	* m4/auxdir.m4, m4/ccstdc.m4, m4/depend.m4, m4/depout.m4, m4/tar.m4,
	m4/init.m4, m4/maintainer.m4, m4/make.m4, m4/missing.m4, m4/vala.m4,
	m4/mkdirp.m4, m4/sanity.m4, m4/silent.m4, m4/strip.m4: Update and
	adjust quoting format throughout, in comments and diagnostic.  Some
	minor related rewordings and reformatting since we are at it.  Bump
	serial numbers.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	build: do not quote `like this', as per GCS recommendation

	This patch converts the files implementing the automake's own build
	system to the use of new quoting format 'like this' or "like this"
	rather than `like this'.

	* bootstrap, configure.ac, syntax-checks.mk, Makefile.am,
	lib/Makefile.am, m4/Makefile.am, syntax-checks.mk: Update quoting
	format throughout, in comments and diagnostic.  Some minor related
	rewordings and reformatting since we are at it.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	hacking: update advice w.r.t. release process

	* HACKING: Don't describe the obsolete 'git-release' target anymore.
	Instead, document the new and improved targets 'git-tag-release' and
	'git-upload-release' (introduced in commit v1.11-674-gaf5f939 of
	25-01-2012, "release: revamp rules to tag and upload the releases").

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	hacking: do not quote `like this', as per GCS recommendation

	* HACKING: Quote 'like this' or "like this", not `like this'.  This
	is done for consistency with the new recommendations in the GNU
	Coding Standards, and because I've come to actually prefer the '...'
	and "..." quoting format over the `...' one.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	am: do not quote `like this', as per GCS recommendation

	This patch converts the automake-provided '*.am' fragments, and
	related files, to the use of new quoting format 'like this' or
	"like this" rather than `like this'.

	* lib/am/check.am: Update quoting format throughout, in comments
	and diagnostic.  Some related rewordings, reformatting, and removal
	of redundant commands since we are at it.
	* lib/am/configure.am: Likewise.
	* lib/am/dejagnu.am: Likewise.
	* lib/am/depend2.am: Likewise.
	* lib/am/distdir.am: Likewise.
	* lib/am/inst-vars.am: Likewise.
	* lib/am/install.am: Likewise.
	* lib/am/lang-compile.am: Likewise.
	* lib/am/lisp.am: Likewise.
	* lib/am/ltlib.am: Likewise.
	* lib/am/mans.am: Likewise.
	* lib/am/progs.am: Likewise.
	* lib/am/remake-hdr.am: Likewise.
	* lib/am/subdirs.am: Likewise.
	* lib/am/tags.am: Likewise.
	* lib/am/texi-vers.am: Likewise.
	* lib/am/texibuild.am: Likewise.
	* lib/am/texinfos.am: Likewise.
	* lib/am/yacc.am: Likewise.

2012-02-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: quote 'like this', not `like this', as per GCS recommendation

	This patch converts the automake testsuite and related files, to
	the use of new quoting format 'like this' or "like this" rather
	than `like this'.

	This is done for consistency with the new recommendations in the GNU
	Coding Standards, and, well, because I've come to actually prefer
	the '...' and "..." quoting formats over the `...' one.

	* tests/README: Update quoting format throughout.  Remove some
	"excessive" use of quoting, and throw in minor rewording where
	appropriate.
	* tests/Makefile.am: Likewise, for comments.
	* tests/CheckListOfTests.am: Likewise.
	* tests/defs-static.in: Likewise.
	* tests/defs: Likewise.
	* tests/trivial-test-driver: Likewise.
	* Many tests/*.tap, tests/*.test and tests/*.sh files: Likewise,
	and for the diagnostic and informational messages as well.
	* tests/gen-testsuite-part: Likewise, and for the generated tests
	as well.

2012-02-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	spy: "rm -f" and "rm -rf" without args are portable

	According to recent testing by Eric Blake, it seems that all
	non-museum rm(1) implementations don't complain if called without
	file operands, *if* the '-f' option is used.  This behaviour will
	likely be mandated by future versions of the POSIX standard as
	well.

	We'd like to start assuming this rm(1) behaviour in future Automake
	releases, in order to simplify some automake-provided cleanup rules.
	So, for the moment, we add a new "spy" test in our test suite, to
	try ensuring that all the rm(1) implementation we encounter "in the
	wild" truly behaves as expected in this regard.

	For more references, see this discussion on the bug-autoconf list:
	 <http://lists.gnu.org/archive/html/bug-autoconf/2012-02/msg00002.html>
	which sprang from coreutils bug#10819:
	 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10819>
	and brought to the POSIX issue#542:
	 <http://austingroupbugs.net/view.php?id=542>
	which has been accepted and will ensure that future version of the
	POSIX standards will mandate that 'rm' shouldn't complain if called
	without file operands, when the '-f' option is in use.

	* tests/spy-rm.test: New test.
	* tests/list-of-tests.mk: Add it.

2012-02-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failures under "make distcheck"

	* tests/tap-setup.sh: Pass also '-f' option to 'cp' invocations,
	so that files that have already been copied in without write
	permissions will still be overwritten where needed, instead of
	causing a spurious testsuite failure.  Issue seen when the
	testsuite is run under "distcheck".
	* tests/defs (get_shell_script): Remove target file before
	overwriting it, for the same reason.  Rework code flow a bit
	since we are at it.

2012-02-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: avoid spurious failure for 'parallel-tests-many.test'

	* tests/parallel-tests-many.test: Adjust grepping of "make check"
	and "make recheck" output to match the new format of the testsuite
	summary.  Remove redundant 'set -e' call since we are at it.

2012-02-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: prefer 'configure.ac' over 'configure.in'

	With this change, our testsuite now uses 'configure.ac' as the
	name for the typical autoconf input, instead of the obsolescent
	'configure.in' (which has been deprecated for several years, at
	least since autoconf 2.50).

	Most of the test cases changed by this commit have been
	automatically modified with this sed command (using GNU
	sed):

	  sed -i 's/\<configure\(\\\?\)\.in\>/configure\1.ac/g'

	* syntax-checks.mk (sc_tests_no_configure_in): New syntax check.
	(syntax_check_rules): Add it.
	* tests/defs: Create stub for autoconf input in 'configure.ac',
	not in 'configure.in'.  Adjust comments.
	($AUTOCONF, $AUTOHEADER, $AUTORECONF): Remove workaround for the
	infamous debian autoconf wrapper: we don't need such workaround
	anymore now that we name our autoconf input as 'configure.ac'.
	For more information, see commit v1.11-564-g63da492 "test defs:
	hack to support autoconf-wrapper programs" of 16-12-2011.
	* tests/README: Use 'configure.ac', not 'configure.in'.
	* Many many tests: Likewise.
	* tests/backcompat3.test: Adjust to avoid spurious failures.
	* tests/backcompat5.test: Likewise.
	* tests/missing6.test: Likewise.
	* tests/backcompat6.test: Likewise, and extend a bit since we
	are at it.

2012-02-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	coverage: expose automake bug#7868

	Expose the command-line length limit issue that can affect the
	Automake-generated parallel-tests harness, especially on systems
	where this limit is smaller (e.g., MinGW/MSYS).

	Suggestion by Bob Friesenhahn.

	* tests/parallel-tests-many.test: New test.  We have verified that
	it actually exposes the bug#7868, as it passes when we opportunely
	reduce the number of test cases in $(TESTS).  Checked on NetBSD 5.1
	64bit, Debian unstable 32bit, Solaris 10 64bit and Cygwin 1.5 32bit.
	* tests/list-of-tests.mk (handwritten_TESTS): Add it.
	* tests/Makefile.am (XFAIL_TESTS): Likewise.

2012-02-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: remove obsoleted "icc" requirement

	* tests/defs (icc): This requirement is not used anymore by any
	test case, so remove it.

2012-02-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	readme: fix typo in tests/README

2012-02-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: "make installcheck" shouldn't run the testsuite twice

	* Makefile.am (installcheck-local): Remove.  The "installcheck"
	target provided by automake is already a recursive target, so
	there's no need to have an 'installcheck-local' recipe that
	manually recurse into 'tests/'.  In fact, such a manual recursion
	was causing the testsuite to be run twice by "make installcheck".

2012-02-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	news: minor fixlets and reorganization

	* NEWS: Get rid of form-feed characters (^L) throughout the file.
	Use separator lines instead (composed by 76 '~' characters), or
	just an extra blank lines for older less verbose entries (those
	predating the 1.8 release).
	(New in 1.11.3): Move description of planned future backward
	incompatibilities that won't make it to 1.12 ...
	(New in 1.11a): ... in here.  Quote 'like this', not `like this'.
	Other minor miscellaneous rewordings and fixlets.

2012-02-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: few typofixes

2012-02-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	automake: new option 'serial-tests'

	Currently, automake offers a 'parallel-tests' option to enable the
	use of the parallel testsuite harness in the generated Makefiles,
	but no option to explicitly state the intention of using the older
	serial testsuite driver (which is currently the default).

	This makes the parallel test harness seems like a second-class
	citizen (while actually it should be the other way around); more
	importantly, it will prevent us from making the parallel harness
	be the default one in future automake versions, since the users
	of the serial harness would then have no way to instruct automake
	to continue using it.

	We solve all of this by introducing a new 'serial-tests' option.

	* lib/Automake/Options.pm (_process_option_list): Recognize the
	new option, and related minor refactoring.
	* tests/serial-tests.test: New test.
	* tests/list-of-tests.mk: Add it.
	* doc/automake.texi: Update.
	* NEWS: Likewise.

2012-02-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix a timestamp issue, and other minor buglets

	Reported by Panther Martin in automake bug#10848.

	* tests/conffile-leading-dot.test: Add a proper '$sleep' invocation,
	to avoid spurious failures on fast systems without sub-second
	timestamp resolutions.  Add other minor related and unrelated
	improvements and fixlets since we are at it.

2012-02-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	automake: new option to print location of scripts and data files

	With this change, we add a new automake option '--print-libdir'
	that prints (on stdout) the path of the directory containing the
	Automake-provided scripts (e.g., 'missing' and 'install-sh') and
	data files (e.g., INSTALL or texinfo.tex).

	Suggestion by Nick Bowler.  See also automake bug#10473.

	* automake.in (parse_arguments): Handle the new option.
	(usage): Mention it.
	* doc/automake.texi (automake Invocation): Document it.
	* NEWS: Update.
	* tests/print-dir.test: New test.
	* tests/list-of-tests.mk: Add it.

2012-02-19  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: prefer the awk+sh TAP driver over the perl one

	We had completed our shell+awk implementation of the TAP driver
	months ago, but never documented it in the manual, continuing to
	document only the "prototype" written in perl instead.  Time to
	fix this, before the 1.12 release.

	* doc/automake.texi (Use TAP with the Automake test harness): Now
	we document the use of the awk+shell implementation of our TAP
	driver, rather than of the perl one.
	* tests/tap-doc2.test: Adjust to use the shell+awk implementation
	of the TAP driver.

2012-02-19  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: be stricter in determining whether "make -jN" works

	* tests/parallel-tests3.test: With at least Solaris 10 CCS make,
	"make -jN" does not fail, but merely prints a warning about
	"DistributedMake -j option" being ignored.  This was causing this
	test case to fail spuriously.  So we now use a stricter check in
	determining whether make works in parallel mode.  Since we are at
	it, we try to cater also to Sun Distributed make, which understands
	"-j N" but *not* "-jN".

2012-02-19  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: don't trust exit status of "make -k"

	* tests/parallel-tests-extra-programs.test: Unless $MAKE is GNU
	make, don't trust the exit status of "$MAKE -k".  Fixes a spurious
	failure with OpenBSD 5.0 make and NetBSD 5.1 make.

2012-02-19  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix race condition in 'self-check-dir.tap'

	* tests/self-check-dir.tap (do_check): Don't fail if "ls -l" fails.

2012-02-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	parallel-tests: fix another BSD parallel make issue

	When BSD make is run in parallel mode, it apparently strips any
	leading directory component from the automatic variable '$*' (of
	course, against what POSIX mandates).  This was causing FreeBSD 9.0
	make and NetBSD 5.1 make to spuriously fail with automake-generated
	test harnesses if subdir tests were present *and* make was being
	run in parallel mode.  This issue affected also the Automake own
	testsuite.

	* lib/am/check2.am (am__set_b): New internal variable.
	(%OBJ%, %EXT%.log, %EXT%$(EXEEXT).log): Use it to work around
	the described BSD make issue.
	* tests/parallel-tests3.test: Enhanced to expose the bug.
	* tests/parallel-tests-subdir.test: Enhance a little, since we
	are at it.
	* NEWS: Update.

2012-02-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid FreeBSD make VPATH issues in more tests (see bug#7884)

	See also similar change 'v1.11-755-g818bc40' of 07-02-2012,
	"tests: work around bug#7884 in many yacc/lex tests".  The
	rationale for this change is basically the same.

	* tests/lex-lib-external.test: Use "yl_distcheck" instead of
	bare "$MAKE distcheck" to avoid extra failures caused by
	automake bug#7884.
	* tests/lex-noyywrap.test: Likewise.
	* tests/lex-libobj.test: Likewise.
	* tests/man6.test: This test suffers from the same FreeBSD make
	incompatibility in VPATH handling that is the source of automake
	bug#7884.  Since this is caused by rules that are defined in the
	Makefile.am by the test itself, rather that being generated by
	automake, the best thing to do is to skip this test if we detect
	the presence of said make incompatibility (through the function
	'useless_vpath_rebuild').
	* tests/man8.test: Likewise.

2012-02-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: remove extra trailing whitespace in configure.ac

2012-02-18  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'yacc-quote-fix'

2012-02-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failure with FreeBSD make

	* tests/parallel-tests-extra-programs.test: FreeBSD make seems to
	write (some) diagnostic messages on stdout instead than on stderr,
	so now we also grep the stdout for the expected make diagnostic.

2012-02-17  Peter Rosin  <peda@lysator.liu.se>

	tests: fix broken quoting in the generated yacc grammar

	Fixes problem introduced by v1.11-1912-ge0906b7 "tests: avoid
	spurious failure with non-bison yacc" from 12-02-2012.

	* tests/suffix10.tap (Makefile.am): Avoid outer single quotes
	when we need to produce single quotes.

2012-02-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: always use correct path for automake/aclocal wrappers

	Otherwise, bootstrapping from a git checkout won't work anymore.
	Issue introduced in today's commit 'v1.11-1974-ga98e58f'.

	* doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Export PATH in a
	way that makes the automake and aclocal wrappers truly accessible
	(the location of this wrappers has been modified in a recent commit,
	but this makefile hadn't been updated accordingly).
	(update_mans): Likewise.

2012-02-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure in VPATH build

	* tests/self-check-dir.tap: Adjust to handle running in a VPATH
	build correctly.

2012-02-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix many spurious failures in VPATH builds

	The 'is' helper script, used by some test cases since commit
	'v1.11-1830-g96401cb' of 08-02-2012, "tests: better way to compare
	lists in Makefile rules", is not available in VPATH builds, since
	it resides in $(srcdir), nor in $(builddir), and only $(builddir)
	is added to $PATH in the test script.  This was causing spurious
	failures.

	Solve this issue by re-organizing a bit the layout and placing of
	wrapper and help scripts used by the testsuite.  This reorganization
	is by no mean complete, but should be enough to solve the VPATH
	issues.

	* tests/is: Moved ...
	* tests/ax/is: ... here
	* tests/automake.in: Moved ...
	* tests/wrap/automake.in: ... here.
	* tests/aclocal.in: Moved ...
	* tests/wrap/aclocal.in: ... here.
	* tests/defs-static.in ($am_bindir, $PATH): Adjust.
	* configure.ac (AC_CONFIG_FILES): Likewise.
	* tests/Makefile.am (EXTRA_DIST, check_SCRIPTS): Likewise.
	* tests/get-sysconf.test: Likewise.
	* .gitignore: Likewise.

2012-02-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: relax a test to cater to NetBSD make

	* tests/parallel-tests-empty-testlogs.test: When $(TESTS) is empty,
	NetBSD 5.1 make ends up defining $(TESTS_LOGS) to ".log" rather than
	to the empty string (as would be expected).  This behaviour was
	causing a check in this test case to fail.  But that check was in
	fact overly strict, since our recipes are smart enough to work
	around the botched-up substitution.  Also, the failure wasn't a
	regression from Automake 1.11, since that version too would have
	triggered the same error with NetBSD 5.1 make.  So we just relax
	the test a little to avoid extra noise in the testsuite.

2012-02-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  dryrun: $(am__dry_run) not confused by metachars in $(MAKEFLAGS)

2012-02-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	dryrun: $(am__dry_run) not confused by metachars in $(MAKEFLAGS)

	* lib/am/header-vars.am (am__make_dryrun): Be smarter and more
	correct in handling shell metacharacters in $(MAKEFLAGS).

2012-02-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: TAP-based tests should error if no plan was specified

	After this change, it will still be OK for TAP-based tests not to
	report any explicit TAP plan -- but they should state *explicitly*
	that they want to do so, by calling the 'plan_' function with a
	proper argument (currently, either "later" or "unknonwn").

	Motivated by a recent issue introduced by yesterday's commit
	'v1.11-1959-g0699a84' (pointed out by Peter Rosin, and fixed
	by follow-up commit 'v1.11-1961-gea44190').

	* tests/tap-functions.sh (plan_): Get rid of '$have_tap_plan_',
	and refactor use and initialization of '$planned_' in a way that
	will allow client script to get more information on which kind
	of plan (if any) has been declared by the former 'plan_' invocation.
	(skip_all_): Adjust.
	* tests/defs (exit trap): Only print the "lazy" TAP plan if 'plan_'
	has requested that *explicitly*.
	* syntax-check.mk (sc_tests_tap_plan): Remove: it's obsolete now,
	since a TAP-based test that doesn't call 'plan_' explicitly won't
	print any TAP plan, and the TAP driver will catch that and report
	an error.
	(syntax_check_rules): Adjust.

2012-02-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: expose $(am__dry_run) limitations

	Currently, the internal $(am__dry_run) macro can fail in weird ways
	when $(MAKEFLAGS) contains shell metacharacters.  Let's expose this
	limitation in the testsuite (and fix a couple of related weaknesses
	since we are at it).

	* tests/make-dryrun.test: Moved ...
	* tests/make-dryrun.tap: ... here, converted to TAP, and extended to
	expose the described limitations.  Also ...
	(am_parallel_tests): Define this so that the 'gen-testsuite-part'
	script won't generate a useless wrapper script.
	* test/list-of-tests.mk: Update.

2012-02-17  Peter Rosin  <peda@lysator.liu.se>

	cosmetics: fix commit message typo in previous

	* .git-log-fix: The file is called .git-log-fix, nothing else.

2012-02-17  Peter Rosin  <peda@lysator.liu.se>

	fixup: .git-log-fix should not be executable

	* .git-log-fix: Set mode 644.

2012-02-17  Peter Rosin  <peda@lysator.liu.se>

	maint: support amending the generated ChangeLog, and fix a typo

	* Makefile.am (gitlog_to_changelog_options): Add support for
	amending the generated ChangeLog.
	(EXTRA_DIST): Update.
	* .git-log-fix: New file with things to amend to the generated
	ChangeLog, starting with a fix for a typo in v1.11-1963-g3b369e6
	"maint: use AC_PACKAGE_BUGREPORT to avoid duplication" from
	yesterday.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: normalize copyright notice in some tests

	* tests/lisp3.test: Normalize copyright notice to read the
	same of that of other tests.
	* tests/lisp4.test: Likewise.
	* tests/lisp5.test: Likewise.
	* tests/lisp6.test: Likewise.
	* tests/lisp7.test: Likewise.
	* tests/lisp8.test: Likewise.
	* tests/lispdry.test: Likewise.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	readme: fix grammaro

	Reported by Eric Blake.

	* README: Use "also has" instead of "has also"; the former sounds
	better to a native speaker.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: use AC_PACKAGE_BUGREPORT to avoid duplication

	* configure.ac: In the message reporting whether the user is about
	to build an alpha or beta version, use the autoconf-provided
	AC_PACKAGE_BUGREPORT macro instead of duplicating the bug reporting
	address.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	readme: update and renew

	* README: Remove stale or now-obvious description and advices.
	Add reference to the INSTALL file.  Some minor rewordings.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	depcomp tests: fix up today's botched commit

	Today's commit 'v1.11-1959-g0699a84' has caused the generated
	'depcomp*.tap' tests to call the 'plan_' function *before* it is
	defined, and has also caused the extra checks required for better
	libtool coverage to be run only when libtool is *not* in use,
	rather than the other way around.  Fix this mess.

	Report by Peter Rosin.

	* tests/gen-testsuite-part: Include './defs' in the generated
	tests, rather than doing so from 'depcomp.sh'.  Adjust the count
	of TAP tests for 'depcomp-lt-auto.test' (it's 84, not 72).
	* tests/depcomp.sh: Adjust accordingly, and fix inverted logic
	about the decision of when to run extra checks for libtool.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	build: clearer diagnostic if "make" is invoked before "./configure"

	Since a GNUmakefile wrapper has been introduced in our build
	system, a "make" invocation issued before a "./configure" one
	has caused GNU make to die with the cryptic message:

	  GNUmakefile:18: Makefile: No such file or directory
	  GNUmakefile:19: /syntax-checks.mk: No such file or directory
	  make: *** No rule to make target `/syntax-checks.mk'.  Stop.

	* GNUmakefile: Detect when we are being run from an unconfigured
	tree, and give helpful diagnostic.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	depcomp tests: put TAP plan in generated tests

	This avoids a spurious maintcheck failure, and also simplifies
	the 'depcomp.sh' helper script a little.

	* tests/gen-testsuite-part: Create and place also a proper 'plan_'
	call (to emit the TAP plan) in each generated 'depmod*.tap' test.
	* tests/depcomp.sh: Remove 'plan_' invocations, and simplify a
	little since we are at it.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	update-copyright: don't touch COPYING and INSTALL

	Reported by Peter Rosin.

	* update-copyright: Also exclude the COPYING and INSTALL files
	found in the top-level directory.
	* COPYING, INSTALL: Revert update of copyright years done in
	today's commit 'v1.11-1948-g641a5a4'.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: whitelist some false positives

	Instead of tweaking or dumbing down some of our sources or tests
	in order not to make them spuriously trigger few maintainer checks,
	we tweak such checks instead.

	* syntax-checks.mk (sc_tests_overriding_macros_on_cmdline): Also
	allow the variable 'exp' to be overridden on the make command line.
	Whitelist the test 'make-dryrun.test' where appropriate.
	(sc_mkinstalldirs): When whitelisting the 'mkinstalldirs' occurrence
	in 'lib/Makefile.am', do not look for the exact line number: it is
	obviously too fragile.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failure with parallel make

	* tests/parallel-tests-extra-programs.test: Run make with the '-k'
	option where appropriate, to ensure it doesn't stop at the first
	error, which would prevent the building of the extra programs we
	expect it to build.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failure on older Cygwin

	* tests/tap-signal.tap: Sending a SIGQUIT on Cygwin 1.5 can cause a
	segmentation fault instead (sometimes at least).  Don't let this
	older bug pollute the results of our testsuite.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: display captured make stdout in 'tap-signal.tap'

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failure in 'suffix3.tap'

	* tests/suffix3.tap (foo.zoo): This C++ file fails to compile with
	older g++ (3.4.4) on Cygwin 1.5.25 if we #include <iostream>.  Don't
	do that, since it's not strictly required, and the "using namespace"
	directive is already enough to ensure the file contents is valid C++
	but invalid C.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: fix typo in description of AM_YFLAGS

	Report by Akim Demaille.

	* doc/automake.texi (Program variables): Don't list "-d -t" twice
	in the examples of valid ways to specify the '-d' flag to Yacc;
	instead, use "-d -t" and "-t -d".  Add missing period.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: another spurious failure with older autoconf fixed

	* tests/aclocal8.test (configure.in): Also call 'AC_INIT', it's
	required by some older autoconf versions (e.g., 2.63).
	* tests/acloca15.test: Likewise.  Add trailing ':' command since
	we are at it.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure with older autoconf

	* tests/conffile-leading-dot.test: Relax grepping of 'config.status'
	stderr, to cater for older autoconf.  Issue revealed by a failure
	with autoconf 2.63 on Cygwin 1.5.25.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: sync auxiliary files from upstream

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

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: run "make update-copyright"

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: add some missing copyright notices

	* tests/ChangeLog-old: Add copyright notice.
	* tests/aclocal.in: Likewise.
	* tests/automake.in: Likewise.
	* tests/extract-testsuite-summary: Likewise.
	* tests/prove-runner: Likewise.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  update-copyright: don't touch files synced from external packages

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	update-copyright: don't touch files synced from external packages

	* Makefile.am (update-copyright): Do not update copyright years of
	files synced from external packages, as given by the '$(FETCHFILES)'
	variable.  Silence the recipe since we are at it.

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'extra-dist-tests-ksh-bug'

	* extra-dist-tests-ksh-bug:
	  tests: fix spurious failure when testing wildcards in EXTRA_DIST

2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure when testing wildcards in EXTRA_DIST

	* tests/extra10.test: Remove the "make distcheck" call, since, at
	least with GNU make 3.82, it trips on the fact that $(srcdir) is
	not explicitly used in the wildcard in EXTRA_DIST.

2012-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  fixup: distribute 'lib/update-copyright'

2012-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: distribute 'lib/update-copyright'

	While the 'update-copyright' script shouldn't be needed by final
	users, that's not a good reason to keep it out by the distribution,
	as doing so might be unhelpful toward occasional but curious users
	interested in peeking into the automake build system.

	* lib/Makefile.am (EXTRA_DIST): Distribute 'update-copyright'.

2012-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: prefer $(GIT) over hard-coded "git" in maintainer recipes

	* Makefile.am (update-copyright, autodiffs): Use '$(GIT)' instead
	of hard-coding 'git'.

2012-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  maint: add a rule to use gnulib's update-copyright

2012-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'extra-dist-tests-ksh-bug'

	* extra-dist-tests-ksh-bug:
	  tests: avoid ksh bug for wildcards in EXTRA_DIST

2012-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'yl-work-for-master'

	* yl-work-for-master: (44 commits)
	  tests: truly use Lex and Yacc selected by configure
	  news: fix grammaros related to Yacc
	  yacc/lex tests: avoid spurious skips with non-GNU make
	  fixup: remove double news entry
	  tests: workaround for shells with broken 'set -e'
	  tests: avoid spurious failure with non-bison yacc
	  tests: fix spurious failures due to missing 'yywrap()' function
	  fixup: list of yacc/lex tests was botched
	  tests: work around bug#7884 in many yacc/lex tests
	  yacc/lex tests: remove an unneeded workaround for bug#8485
	  yacc/lex tests: avoid too much failures with FreeBSD make
	  yacc-dist-nobuild.test: add reference to bug#7884
	  yacc tests: fix bug in 'yacc-cxx.test'
	  lex tests: fix spurious link errors on Solaris
	  lex: "make clean" removes .c files from non-distributed .l
	  lex tests: make test on Lex dependency tracking more "semantic"
	  lex tests: remove erroneous check about ylwrap distribution
	  yacc tests: "make clean" removes C++ files from non-distributed .y
	  tests: add a workaround for automake bug#8485
	  tests: add a couple of inter-tests reference
	  ...

2012-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cscope: is only expected to work with GNU make in VPATH setup

	The 'cscope' functionality does not properly handle VPATH rewrites;
	so we explicitly document that, for now, it is only ensured to work
	with GNU make when doing a VPATH build, and we adjust testsuite
	requirements accordingly.

	Issue revealed by a failure of 'cscope.test' with Solaris 10 CCS
	make.

	* doc/automake.texi (Tags): Document the limitations of the cscope
	support.  Couple of fixlets to formatting since we are at it.
	* tests/cscope.test: Converted to TAP, and thus moved ...
	* tests/cscope.tap: ... here.  Only run tests with VPATH builds when
	using GNU make.  Adjust so that no C, C++, Fortran or Java compiler,
	nor any Emacs program, will be required to run this test.
	* tests/list-of-tests.mk: Adjust.

2012-02-14  Jim Meyering  <meyering@redhat.com>

	maint: add a rule to use gnulib's update-copyright

	* lib/update-copyright: New file, from gnulib.
	* Makefile.am (FETCHFILES): Add update-copyright to the list.
	(fetch): Fetch it.
	(update-copyright): New rule.

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'doc-no-history'

	* doc-no-history:
	  docs: move chapter on automake history out of main manual

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	check: fix test-suite.log formatting with NetBSD sed

	* lib/am/check.am (am__rst_section): Tweak to ensure en extra final
	newline is printed also with NetBSD sed.  Issue revealed by a
	failure of 'test-metadata-global-result.test'.
	* tests/rst-formatting.test: New test, checking the internal
	variables '$(am__rst_title)' and '$(am__rst_section)'.
	* tests/list-of-tests.mk: Add it.

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid ksh bug for wildcards in EXTRA_DIST

	Some shells, like NetBSD 5.1 /bin/ksh, have a bug that causes
	wildcards resulting from an unquoted parameter expansion not to
	be expanded as expected in some cases:

	    $ touch a b c d
	    $ /bin/sh -c 'var="[ab]" && echo $var' # As expected.
	    a b
	    $ /bin/ksh -c 'var="[ab]" && echo $var' # Oops.
	    [ab]
	    $ /bin/ksh -c 'var="?" && echo $var' # But this as expected.
	    a b c d

	This was causing a failure in our testsuite.  Work around that.

	See also:
	<http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00149.html>

	* tests/extra11.test: Work around the described issue by using the
	$(wildcard) builtin in the EXTRA_DIST definition.  This is not a
	problem, since this test was assuming GNU make anyway.  Since we are
	at it, enhance coverage a little by also running "make distcheck".
	* tests/extra10.test: Similarly, enhance coverage by also running
	"make distcheck", and fix a minor bug in the process.  But continue
	using a "bare" wildcard expression in EXTRA_DIST, without involving
	the $(wildcard) builtin, to ensure coverage of similar usages "in
	the wild".

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'fix-tap-signal-test'

	* fix-tap-signal-test:
	  fixup: fix test tap-signal.tap to avoid false negatives

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: fix test tap-signal.tap to avoid false negatives

	Problem introduced by yesterday commit v1.11-1851-g79b2c6a,
	"tests: avoid yet other spurious failures on NetBSD"

	* tests/tap-signal.tap: Truly ensure the exit status of the make
	call under test is correctly reflected in the TAP result displayed
	by the corresponding 'command_ok_' invocation.

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  fixup: do not tickle makefile-deps.test with the make_dryrun code
	  gitattributes: custom merge driver for ChangeLog not needed anymore
	  gitattributes: use "union" merge driver for NEWS

2012-02-14  Peter Rosin  <peda@lysator.liu.se>

	fixup: do not tickle makefile-deps.test with the make_dryrun code

	* lib/am/header-vars.am (am__make_dryrun): Avoid code matching
	'^ *:' in the Makefile, as that tickles makefile-deps.test.

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	gitattributes: custom merge driver for ChangeLog not needed anymore

	* .gitattributes: We don't maintain a version-controlled ChangeLog
	file anymore, so we have no need to specify a custom merge driver
	for it anymore.  Update accordingly.

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	gitattributes: use "union" merge driver for NEWS

	This should help in reducing the spurious merge conflicts for the
	NEWS file, which have already caused a great deal of confusion and
	wasted time.

	Suggestion by Eric Blake:
	http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00119.html

	* .gitattributes (NEWS): Use the "union" merge driver.

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: truly use Lex and Yacc selected by configure

	When 'yacc-work' was merged into 'yl-work-for-master' in commit
	v1.11-1910-ge6c40d4 (12-02-2012), the values for $YACC and $LEX
	stopped being substituted directly by config.status, and started
	being substituted by a Makefile rule using the contents of the
	$(YACC) and $(LEX) makefile variables.

	Unfortunately, our configure.ac was calling AM_SUBST_NOTMAKE on
	'YACC' and 'LEX' (see commit v1.11-284-g34ca92b of 29-01-2011,
	"tests: don't define YACC and LEX in the Makefiles", for a
	rationale), so that the $(YACC) and $(LEX) in the Makefile simply
	hold the default make-provided values (that is, "yacc" and "lex"
	respectively), independently of what yacc and lex programs were
	defined at configure time.

	Apart from reducing coverage and creating confusion, this behaviour
	also caused spurious failures on systems lacking a yacc and/or lex
	programs.

	Problem reported by Peter Rosin.  References:
	 <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00131.html>
	 <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00132.html>

	* configure.ac (AM_SUBST_NOTMAKE): Don't call anymore on 'YACC' nor
	on 'LEX'.

2012-02-14  Peter Rosin  <peda@lysator.liu.se>

	depcomp tests: do not specify LDFLAGS for static libraries

	Commit v1.11-1848-gb3f34ca accidentally specified LDFLAGS
	for libbaz even when built as a static library, which is
	not allowed.

	* tests/depcomp.sh (src/Makefile.am): Don't add any LDFLAGS
	when libbaz is built as a static library.

2012-02-14  Peter Rosin  <peda@lysator.liu.se>

	depcomp tests: avoid redundant runs for non-libtool test

	When running the dependency tests without libtool, it's
	not meaningful to run the tests three-fold, the libtool
	configure options are simply ignored anyway.

	* tests/depcomp.sh: Only run the tests three-fold when
	libtool is in use.

2012-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid yet other spurious failures on NetBSD

	* tests/tap-signal.tap: Add a "strategically placed" extra 'echo'
	command and a temporary silencing of xtraces; they are required
	to avoid possible garbled output with NetBSD make, which would
	miss some final newlines in the expected places and thus mess up
	our TAP output.

2012-02-13  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid a spurious failure on NetBSD

	* tests/test-driver-is-distributed.test: Rewrite to avoid having to
	edit configure.in; such editing was subtly botched on NetBSD (the
	'AC_CONFIG_AUX_DIR' call got misplaced, ending up *before* the
	'AC_INIT' call), and that caused an hard-to-track bug.  Since we
	are at it, extend coverage a little.

2012-02-13  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failure with NetBSD /bin/ksh

	* tests/parallel-tests-fd-redirect-exeext.test (configure.in): Tweak
	so that we don't end up with the generated configure script having
	two nested subshells that start with '((':

	  ((./conftest$EXEEXT 9>&1) | grep "^foobar") >&5 2>&5

	which is unportable and could confuse some shells (e.g., NetBSD 5.1
	/bin/ksh) into thinking we are trying to perform an arithmetic
	operation.

2012-02-13  Peter Rosin  <peda@lysator.liu.se>

	tests: increase coverage for depcomp tests

	On platforms requiring that no undefined symbols exist in order
	to build shared libraries (e.g. Windows DLLs), you have to
	explicitly declare that the libtool library you are building
	does not actually have any undefined symbols, for libtool to
	even try to build it as a shared library.  Without that
	explicit declaration, libtool falls back to a static library
	only, regardless of any --enable-shared flags etc.

	tests/depcomp.sh (Makefile.am): Add -no-undefined if a libtool
	library (.la) is built.
	(src/Makefile.am): Likewise.

2012-02-13  Peter Rosin  <peda@lysator.liu.se>

	news: fix grammaros related to Yacc

	* NEWS: Fix some grammaros and typos.

2012-02-13  Stefano Lattarini  <stefano.lattarini@gmail.com>

	yacc/lex tests: avoid spurious skips with non-GNU make

	* tests/defs (useless_vpath_rebuild): Fix botched logic that
	was causing this function to always diagnose non-GNU make
	implementations as being affected by the "useless rebuilds
	in VPATH setup" bug (that affects FreeBSD make and causes
	automake bug#7884).

2012-02-13  Peter Rosin  <peda@lysator.liu.se>

	fixup: remove double news entry

	* NEWS: Remove double (stale) news entry introduced by a botched
	merge.

2012-02-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: workaround for shells with broken 'set -e'

	* tests/dist-formats.tap: Some versions of the BSD shell wrongly
	bail out when the 'errexit' shell flag is active and the left-hand
	command in a "&&" list fails and that list is the *last* command
	of a "case" statement.  This was causing an incorrect initialization
	of the '$missing_compressors' variable, and thus potential spurious
	failures when non-existing programs were assumed to be available.

2012-02-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: workaround for shells with broken 'set -e'

	* tests/yacc-cxx.test: Some versions of the BSD shell wrongly bail
	out when the 'errexit' shell flag is active if the left-hand
	command in a "&&" list fails and such list is the *last* command
	of a "for" or "while" loop or of an "if" construct.  Work around
	this issue.
	* tests/check12.test: Likewise.

2012-02-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failure with non-bison yacc

	Issue revealed by a failure on NetBSD 5.1.

	* tests/suffix10.tap (Makefile.am): Adjust the rule generating
	the '.y' files so that such files won't use bison-only features.

2012-02-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	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 similar commits 'v1.11-546-gca0ba5d' (24-10-2011),
	'v1.11-1085-gb5c3968' (24-10-2011) and 'v1.11-871-geb147a1'
	(25-05-2011).

	* tests/lex-clean.test: Provide a dummy 'yywrap' function.
	* tests/lex-line.test: Likewise.
	* tests/lex-nodist.test: Likewise.
	* tests/lex-depend.test: Likewise.
	* tests/lex-clean-cxx.test: Move the dummy 'yywrap' function
	from the main '.cc' file into the '.lxx' file, so that it won't
	be subject to the namespace declaration in the '.cc' file (which
	was causing a spurious link error in systems without a default
	"lex library").

2012-02-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'yacc-work' into yl-work-for-master

	* yacc-work: (37 commits)
	  fixup: list of yacc/lex tests was botched
	  tests: work around bug#7884 in many yacc/lex tests
	  yacc/lex tests: remove an unneeded workaround for bug#8485
	  yacc/lex tests: avoid too much failures with FreeBSD make
	  yacc-dist-nobuild.test: add reference to bug#7884
	  yacc tests: fix bug in 'yacc-cxx.test'
	  lex tests: fix spurious link errors on Solaris
	  lex: "make clean" removes .c files from non-distributed .l
	  lex tests: make test on Lex dependency tracking more "semantic"
	  lex tests: remove erroneous check about ylwrap distribution
	  yacc tests: "make clean" removes C++ files from non-distributed .y
	  tests: add a workaround for automake bug#8485
	  tests: add a couple of inter-tests reference
	  lex tests: require just `lex' instead of `flex'
	  fix typo in ChangeLog (2011-05-04)
	  tests defs: use `skip_' for skipping yacc/lex related tests
	  lex/yacc tests: remove redundant $distdir definition
	  coverage: test lex-generated "#line" directives postprocessing
	  tests: minor improvements to a couple of yacc tests
	  tests: fix spurious failure in test 'yacc-d-cxx.test'
	  ...

	+ Extra non-trivial edits:

	* tests/defs.in: Delete; the differences from maint has been
	merged into 'tests/defs' and 'tests/defs-static.in'.
	* tests/defs (yacc, lex): Use 'skip_all_', not 'skip_', to
	skip the whole test case if yacc (resp. lex) is missing.
	(bison): New, set up the environment so that 'bison -y' will
	be used as the yacc program.
	(useless_vpath_rebuild, yl_distcheck): Moved in from
	'tests/defs.in'.
	* tests/defs-static.in ($YACC, $LEX): Default to the values
	determined at configure time, and allow them to be overridden
	by the more namespace-safe variables '$AM_TESTSUITE_YACC' and
	'$AM_TESTSUITE_LEX' respectively.
	* tests/Makefile.am (do_subst): Also substitute '@YACC@' and
	'@LEX@'.
	* Several tests: Fix requirements declarations, by preferring
	'lex' and 'yacc' over 'flex' and 'bison' whenever possible.

2012-02-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: list of yacc/lex tests was botched

	* tests/list-of-tests.mk: Update to take into account the addition,
	renaming, removing or split-ups of Yacc/Lex tests that have taken
	place in the 'yacc-work' branch.  Problem likely introduced by a
	botched merge of 'maint' into 'yacc-work'.

2012-02-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: move chapter on automake history out of main manual

	The chapter on Automake history, while certainly interesting and
	even fascinating, does not truly pertain to a reference manual,
	so move it out from there and into its own dedicated file.  This
	change is made more advisable and pressing by the fact that such
	and "Automake history" chapter hasn't been updated since the 1.9.6
	release, so it has been becoming less faithful and useful since
	then.

	* doc/history.texi: New, manual on the history of the automake
	package; extracted from ...
	* doc/automake.texi: ... this file, with related adjustments.
	* doc/Makefile.am (info_TEXINFOS): Add 'history.texi'.
	(history_TEXINFOS): New, list included file 'fdl.texi'.
	* Makefile.am (release-stats): Remove as obsolete.
	* HACKING (Release Procedure): Don't advise anymore to run the
	"release-stats" target and to update the manual with its output.
	* NEWS: Update.
	* .gitignore: Likewise.

2012-02-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	depcomp tests: avoid redundant runs for libtool tests

	When running libtool-oriented tests, our 'depcomp.sh' script used
	to run the same checks thrice: once after having run configure
	with the '--disable-shared' option, once after having run it with
	the '--enable-shared' option, and once by allowing configure to
	automatically select which kind of library (or libraries) to build.

	This was done to offer extra coverage for the less-common depmodes
	(like "aix" of "hp2") where the name of the compiler-generated
	depfiles can depend on whether libtool is in use *and* on which
	kind of libraries libtool is building (static, shared, or both).
	About this, see commit 'Release-1-10-24-ge89ec38' of 28-03-2007,
	"* lib/depcomp (aix): Rewrite depmode in the spirit of the tru64
	one".

	But that extra coverage came at the price of *considerably* slowing
	down the depcomp libtool-oriented tests, since for each of them the
	tested source tree was configured and built *twelve* times (rather
	than "just" four as it is for the non-libtool case).

	So, to strike a balance between coverage and speed, we now run the
	libtool-oriented tests with the three different configuration modes
	*only* when it is possible that the depmode that will get selected
	is one of those which can actually benefit from the extra coverage.

	* tests/depcomp.sh: Adjust to only run the threefold libtool tests
	when that can truly be potentially useful.  Add related explanatory
	comments.

2012-02-09  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid wrong skips in dist-formats.tap

	* tests/dist-formats.tap: The test checking whether the 'compress'
	program is actually capable of compressing files relied on the
	assumption that 'compress' exits with status zero if no problem
	occurs; alas, this reasonable assumption doesn't hold in practice,
	since 'compress' does (and is documented to) exit with status 2 if
	the output is larger than the input after (attempted) compression!
	Fix this by using and input that 'compress' can actually reduce in
	size when compressing.
	Do some related reformatting of surrounding code since we are at it.

2012-02-09  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: few tweakings and cosmetic changes

	* tests/dist-formats.tap: Fix botched spacing.
	* tests/subobjname.test: Prefer spaces to tabs in indentation.
	* tests/cond43.test: Likewise.
	* tests/comment7.test: Likewise.
	* tests/compile_f90_c_cxx.test: Use "$tab" instead of literal
	tab characters in the grep regexp.
	* tests/compile_f_c_cxx.test: Likewise.
	* tests/pluseq3.test: Likewise.
	* tests/cond-basic.test: Likewise.
	* tests/acloca16.test: Add empty line before trailing ':' command.
	* tests/bsource.test: Likewise.
	* tests/depend5.test: Likewise.
	* tests/depend6.test: Likewise.
	* tests/destdir.test: Likewise.
	* tests/fort2.test: Likewise.
	* tests/instdir-java.test: Likewise.
	* tests/instdir-lisp.test: Likewise.
	* tests/instdir-python.test: Likewise.
	* tests/instdir.test: Likewise.
	* tests/instdir2.test: Likewise.
	* tests/ltinstloc.test: Likewise.
	* tests/missing.test: Likewise.
	* tests/missing2.test: Likewise.
	* tests/nodef.test: Likewise.
	* tests/nodef2.test: Likewise.
	* tests/subst4.test: Likewise.
	* tests/werror3.test: Likewise.
	* tests/commen11.test: Likewise.  Also, make grepping of automake
	stderr slightly stricter, and properly quote strings with shell
	metacharacters.
	* tests/nodep2.test: Add empty line before trailing ':' command.
	Do not create unneeded dummy source files.

2012-02-09  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: remove a couple of redundant 'set -e' calls

	* tests/conffile-leading-dot.test: Do not set the 'errexit'
	shell flag, as it is already set by 'tests/defs'.
	* tests/make-dryrun.test: Likewise.

2012-02-09  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  tests: fix a timestamp-related spurious failures
	  dryrun: fix regression with '$(am__make_dryrun)'
	  test defs: function 'is_newest' now works also with directories

2012-02-09  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'dryrun-fix' into maint

	* dryrun-fix:
	  dryrun: fix regression with '$(am__make_dryrun)'

2012-02-09  Peter Rosin  <peda@lysator.liu.se>

	tests: check if 'compress' is real or fake

	On Cygwin, 'compress' is provided by sharutils and is just a
	dummy script that is not able to actually compress (it can
	only decompress).  This fake 'compress' is not usable for
	our purpose - to create compressed tarballs.

	* tests/dist-formats.tap (missing_compressors): Count 'compress'
	as missing if it does not support the -c option.

2012-02-08  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'msvc'

	* msvc:
	  depcomp: try to prevent whitespace regressions
	  depcomp: recognize tabs as whitespace in the dashmstdout mode
	  depcomp: quote 'like this', not `like this'

2012-02-08  Stefano Lattarini  <stefano.lattarini@gmail.com>

	depcomp tests: avoid spurious failures with 'dashXmstdout' depmode

	* tests/gen-testsuite-part: The 'dashXmstdout' depmode cannot be
	truly forced on gcc (like we were trying to do, causing spurious
	failures in the process); so don't do that.  This change shouldn't
	actually reduce coverage anyway, since, as the comments in
	'lib/depcomp' say, the 'dashXmstdout' depmode is just like
	the 'dashmstdout' one, only with a different argument for the
	compiler.

2012-02-08  Peter Rosin  <peda@lysator.liu.se>

	depcomp: try to prevent whitespace regressions

	Suggested by Stefano Lattarini.

	* lib/depcomp: Add $tab and $nl variables and use them
	throughout.

2012-02-08  Peter Rosin  <peda@lysator.liu.se>

	depcomp: recognize tabs as whitespace in the dashmstdout mode

	Commit Release-1-7-2b-2-gf03ceab "Cope with DOS filenames in
	dependencies." inadvertedly converted tabs into spaces.

	* lib/depcomp (dashmstdout): Add a tab character to all sets
	matching whitespace.

2012-02-08  Peter Rosin  <peda@lysator.liu.se>

	depcomp: quote 'like this', not `like this'

	Cherry-picked from recent changes from master.

	* lib/depcomp: Quote 'like this', not `like this'.

2012-02-08  Peter Rosin  <peda@lysator.liu.se>

	tests: check the depmodes 'msvisualcpp' and 'msvcmsys'

	* tests/defs (cygpath): New requirement, checking that cygpath
	is working.
	(mingw): New requirement, checking that the build system is
	MSYS (in its normal MinGW mode).
	* tests/gen-testsuite-part (depmodes): Add entries for depmodes
	'msvisualcpp' and 'msvcmsys'.

2012-02-08  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: better way to compare lists in Makefile rules

	With this commit, we introduce a new helper shell script for use
	in the testsuite, which is meant to allow the test cases to easily
	check whether two whitespace-separated lists are equal; this ability
	is particularly useful to check for equality of the contents of make
	variables that are expected to contain multiple whitespace-separated
	words, and are defined through line continuations (or are rewritten
	by automake in this way), or that contain expansion of potentially
	empty variables.

	Before this change, a test checking that an usage like this one:

	  VAR = valA
	  if COND1
	    VAR += val1 # com1
	  endif COND1
	  VAR += valC

	worked as expected, couldn't use rules like:

	  ## Doesn't work because $(VAR) expands to multiple words
	  verify:
	      test $(VAR) = "valA val1 valC"

	nor like:

	  ## Doesn't work because the final expansion of $(VAR) contains
	  ## repeated contiguous whitespace characters (it actually
	  ## equals "valA val1  valC", not "valA val1 valC"), and this
	  ## is an internal detail which might change and which we don't
	  ## want to explicitly rely on.
	  verify:
	      test "$(VAR)" = "valA val1 valC"

	Instead, we had to rely on cumbersome workaround such as:

	  ## This works, but is ugly.
	  verify:
	      test "`echo $(VAR)`" = "valA val1 valC"

	or:

	  ## This works, but is even uglier.
	  verify:
	      echo BEG: $(VAR) :END | grep "BEG: valA val1 valC :END"

	Now, with the help of the new 'is' script, we can perform such a
	check in a clearer and more straightforward way, as in:

	  ## Works, and reads clearly.
	  verify:
	      is $(VAR) == valA val1 valC

	* tests/is: New helper shell script, telling whether two whitespace
	separated lists are equal.
	* Makefile.am (EXTRA_DIST): Add it.
	* tests/colneq2.test: Use the new helper script, and accordingly
	get rid of older, more cumbersome idioms.
	* tests/cond11.test: Likewise.
	* tests/cond16.test: Likewise.
	* tests/cond18.test: Likewise.
	* tests/cond22.test: Likewise.
	* tests/cond31.test: Likewise.
	* tests/cond38.test: Likewise.
	* tests/test-logs-repeated.test: Likewise.
	* tests/objext-pr10128.test: Likewise.
	* tests/programs-primary-rewritten.test: Likewise.
	* tests/substre2.test: Likewise.  Also ...
	(configure.in, Makefile.am): Add a couple of hack to avoid having
	to require (and run) a C compiler; accordingly ...
	($required): ... remove this.
	* tests/exeext4.test: Likewise.
	* tests/substref.test: Likewise.  Also ...
	(hello.c): Use ": >" rather than "cat <<EOF" to generate it,
	since it's meant to be empty anyway.
	* tests/cond4.test: Use the new helper script, and accordingly
	get rid of older, more cumbersome idioms.  Avoid some unnecessary
	uses of "make -e" since we are at it.
	* tests/cond19.test: Likewise.
	* tests/cond32.test: Likewise.
	* tests/cond6.test: Use the new helper script, and accordingly
	move some checks in the Makefile.am.
	Avoid unnecessary execution of automake remake rules by manually
	"touching" aclocal.m4

2012-02-08  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: improve and rework tests on dependency tracking

	Fixes automake bug#10434.  Suggestion by Peter Rosin.

	The 'depcomp.tap' test case worked by trying to unconditionally
	force the compiler in use by the testsuite to use, one by one, *all*
	the dependency modes known by the 'depcomp' script, and, for each
	such forced mode that was compatible enough with said compiler not
	to cause breakage in the basic compilation rules, checking that it
	was *also* good enough not to break remake rules in VPATH builds.

	This seemed a good approach when this test was first introduced, as
	it apparently increased coverage for the less used and less tested
	dependency-tracking modes.  But in the log run it turned out the
	approach was actually in part too brittle, causing some annoying
	spurious failures (as with the Tru64 depmode forced on GCC, see
	automake bug#10434), and partly too forgiving, since, for some of
	the more corner-case dependency modes, the 'depcomp' script simply
	reverts to silently disabling dependency tracking when an error is
	encountered (this happened e.g., with the Tru64 depmode forced on
	the Sun C compiler 5.9), so that a passing test means nothing, and
	only gives a false sense of security.

	As Peter Rosin put it, "it's just dead wrong to assume that feeding
	-M or -xM to the compiler (or whatever other random stuff 'depcomp'
	might do) and not get an error is the same as dependencies magically
	appearing".

	So we get rid of this wrong approach, and in the process proceed to
	a complete overhaul of many of the tests on automatic dependency
	tracking, extending the offered coverage and rationalizing their
	organization.

	* tests/depcomp.sh: New helper script, used by several new
	autogenerated tests.
	* tests/gen-testsuite-part: Generate several tests based on the
	new 'depcomp.sh' script.  Emit makefile code that declares their
	dependency on that script, and that extends EXTRA_DIST in order
	to distribute it.
	* tests/depmod.tap: Remove.
	* tests/depend2.test: Remove, it has been subsumed by the new
	autogenerated test 'depcomp-disabled.tap'.
	* tests/depcomp3.test: Remove, it has been subsumed by the new
	autogenerated test 'depmod-dashmstdout.tap'.
	* tests/depcomp3.test: Remove, it has been subsumed by the new
	autogenerated test 'depmod-lt-makedepend.tap'.
	* tests/depcomp6.test: Remove, it has been subsumed by the new
	autogenerated test 'depmod-auto.tap'.
	* tests/depcomp7.test: Remove, it has been subsumed by the new
	autogenerated test 'depmod-lt-auto.tap'.
	* tests/depcomp5.test: Remove as obsolescent.
	* test/list-of-tests.mk: Adjust.
	* .gitignore: List the new autogenerated tests.

2012-02-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix a timestamp-related spurious failures

	Fixes automake bug#10737.  Report from Larry Daniel.
	See also automake bug#8365 and commit 'v1.11-329-gd4df619' of
	30-03-2011, "tests: fix timestamp-related failures".

	* tests/aclocal5.test: Sleep before modifying m4 files that should
	trigger remake rules.  This fixes an hard-to-hit timestamp-related
	race condition.
	* THANKS: Update.

2012-02-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	dryrun: fix regression with '$(am__make_dryrun)'

	In commit v1.11-683-gda0964e of 05-02-2012, we introduced a new
	variable '$(am__make_dryrun)' that could be used in recipes to
	determine whether make is running in dry mode (e.g., as with
	"make -n").  Unfortunately, the idiom we used fails to take into
	account the case in which $(MAKEFLAGS) contains one or more variable
	definitions whose value is a whitespace-separated list; for example,
	if we invoke make as:

	  make check TESTS="n1.test n2.test"

	then the better make implementations out there (at least modern
	GNU make and BSD make) will export MAKEFLAGS to the following
	value:

	  TESTS=n1.test\ n2.test

	So a shell loop like the one we used in $(am__make_dryrun):

	  for flag in $$MAKEFLAGS; do ...

	won't behave as expected: the shell word-splitting rules will break
	up the entry for TESTS into the two distinct entries "TESTS=n1.test\"
	and "n2.test", and this second entry will goad our $(am__make_dryrun)
	code into thinking that make is performing a dry run!

	So now we simply loop over the expanded value of $(MAKEFLAGS).
	This solves the regression, but alas, is more brittle in case the
	users passes on the command line a macro value containing unbalanced
	" or ' quotes, or shell metacharacters like, say, '`' or '('.  This
	should almost never happen though, so we don't worry about it now;
	we will revisit the issue only when and if we receive bug reports in
	this area.

	* lib/am/header-vars.am (am__make_dryrun): Fix.
	* tests/make-dryrun.test: New test.
	* tests/list-of-tests.mk: Add it.

2012-02-07  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: work around bug#7884 in many yacc/lex tests

	Due to automake bug#7884, many test cases on Yacc/Lex support are
	failing when run with FreeBSD make.  Since these failures are all
	due to the same bug, and that bug is well understood and already
	explicitly exposed in the dedicated 'yacc-dist-nobuild.test' test,
	the reported failures are mostly noise, that not only is annoying,
	but which might end up covering different real bugs or regressions.

	Thus we minimize such spurious failures, by ensuring the commands
	triggering them (most of them being "make distcheck" invocations)
	will be skipped when $MAKE suffers of the bug/limitation that
	triggers automake bug#7884.

	* tests/defs.in (useless_vpath_rebuild): New function.
	(yl_distcheck): Likewise.
	* tests/lex3.test, tests/subpkg-yacc.test, tests/yacc-basic.test,
	tests/yacc-cxx.test, tests/yacc-d-basic.test, tests/yacc-d-cxx.test,
	tests/yacc-dist-nobuild-subdir.test : Use them to avoid extra
	failures caused by automake bug#7884.  Where possible, throw in
	some related simplifications.

2012-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint' into yacc-work

	* maint: (75 commits)
	  test defs: function 'is_newest' now works also with directories
	  refactor: new variable telling whether make is running in "dry mode"
	  ...

2012-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: avoid spurious XPASS results with NetBSD make

	* tests/defs (make_can_chain_suffix_rules): Ensure to properly
	declare the '.SUFFIXES:' in the temporary Makefile used to check
	whether $MAKE is able to automatically chain suffix rules.  This
	avoids spurious XPASS results with (at least) NetBSD make in some
	'suffix*.tap' tests; in a sense also, this also makes the probing
	of $MAKE capabilities more faithful, since the Automake-generated
	Makefiles are expected to properly declare the '.SUFFIXES:' as
	well.

2012-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: few whitespace fixlets

2012-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: various typofixes

	Several typofixes in documentation and comments, as
	suggested by the "codespell.py" script.  Reference:
	<http://git.profusion.mobi/cgit.cgi/lucas/codespell/>

2012-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: convert encoding from ISO-8859 to UTF-8 in some tests

	The changed files have been converted using iconv; specifically,
	the command "iconv --from-code=ISO-8859-1 --to-code=UTF-8".

	* tests/block.test, tests/tagsub.test: Converted to UTF-8 encoding.

2012-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: remove obsolete requirement 'rst2html'

	* tests/defs (rst2html): Remove, it's not needed anymore now that
	the old code supporting the ".log -> .html" conversion for the
	parallel-tests harness has been moved in contrib.  This removal
	should have actually be done in commit v1.11-1757-g0a9d201 of
	17-01-2012, 'check: move ".log -> .html" conversion in contrib'.

2012-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: workaround for shells with broken 'set -e'

	* tests/defs (gmake, native, rst2html): Some versions of the BSD
	shell wrongly bail out when the 'errexit' shell flag is active and
	the left-hand command in a "&&" list fails, if that list is the
	*last* command of a "for" or "while" loop.  Work around this issue.
	* tests/lex3.test: Likewise.
	* tests/check12.test: Likewise.
	* tests/yacc-basic.test: Likewise.
	* tests/lex-noyywrap.test: Likewise.
	* tests/parallel-tests2.test: Likewise.
	* tests/lex-lib-external.test: Likewise.
	* tests/check-no-test-driver.test: Likewise.
	* tests/test-metadata-recheck.test: Likewise.
	* tests/parallel-tests-dry-run-1.test: Likewise.
	* tests/parallel-tests-dry-run-2.test: Likewise.
	* tests/parallel-tests-unreadable.test: Likewise.
	* tests/test-driver-custom-no-extra-driver.test: Likewise.

	Problem revealed by spurious testsuite failures on a NetBSD 5.1
	system and an OpenBSD 5.0 system.

2012-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: fix a typo in comments

	* tests/extra-programs-empty.test: Fix typo in heading comments.

2012-02-05  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: function 'is_newest' now works also with directories

	Reported by Jim Meyering against automake master (see bug#9147) and
	by Adam Sampson against automake 1.11.3 (see bug#10730).

	* tests/defs (is_newest): Call 'find' with the '-prune' option,
	so that it won't descend in the directories (which could cause
	spurious results).
	* THANKS: Update.

	Backported from commit v1.11-914-gb6a40fa (originally on master).

2012-02-05  Stefano Lattarini  <stefano.lattarini@gmail.com>

	parallel-tests: more uses for '$(am__make_dryrun)'

	With this change we refactor some recipes of the parallel-tests
	harness to make them use, where appropriate, the new internal
	variable '$(am__make_dryrun)' (introduced in the 'maint' branch)
	when they need to determine whether make is running in "dry mode",
	i.e., with "make -n".  This allows for some simplifications and
	for improved uniformity.

	* lib/am/check.am (check-TESTS recheck): Use $(am__make_dryrun) and
	simplify accordingly.
	(am--redo-logs): Delete this internal helper recipe, merged into ...
	($(TEST_SUITE_LOG)): ... this, with the help of $(am__make_dryrun).
	recipe accordingly.

2012-02-05  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  refactor: new variable telling whether make is running in "dry mode"
	  tests: do not clobber the modified CC

2012-02-05  Stefano Lattarini  <stefano.lattarini@gmail.com>

	refactor: new variable telling whether make is running in "dry mode"

	We define a new variable '$(am__make_dryrun)', that can be used
	in recipes to determine whether make is running in "dry mode" (as
	with "make -n") or not.  This is useful in rules that invoke make
	recursively, and are thus executed also with "make -n" -- either
	because they are declared as dependencies to '.MAKE' (NetBSD make)
	or because their recipes contain the "$(MAKE)" string (GNU and
	Solaris make).

	* lib/am/header-vars.am (am__make_dryrun): New variable.
	* lib/am/check.am (check-TESTS recheck): Use it, and simplify
	recipe accordingly.
	* lib/am/distdir.am (distdir): Likewise.
	* lib/am/lisp.am ($(am__ELCFILES)): Likewise.

2012-02-02  Peter Rosin  <peda@lysator.liu.se>

	tests: do not clobber the modified CC

	If CC is originally a losing compiler, AM_PROG_CC_C_O will
	modify CC.  "$MAKE -e" will then clobber this modified CC
	and reintroduce the raw losing compiler causing the test
	to fail, as subdir-objects is in effect.

	tests/check8.test: Drop -e from the $MAKE invocation, since
	AM_COLOR_TESTS is not specified in the Makefile and -e is
	therefore not needed.

2012-02-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: fix indentation and typos in perl TAP driver

	* lib/tap-driver.pl (get_test_exit_message): Fix botched
	indentation.  Fix typo in error message: s/ststus/status/.

2012-02-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: fix typo in variable name ($AM_TESTSUITE_PERL)

	* tests/defs-static.in: Fix typo: it's '$AM_TESTSUITE_PERL',
	not '$AM_TESTUITE_PERL'.

2012-02-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tap/perl: handle missing or non-executable scripts better

	This change improves how our Perl-based TAP driver handles
	non-runnable test scripts (meaning they might be not executable,
	or not readable, or even not exist).  In particular, it makes the
	driver deterministically display a clear "ERROR" result instead
	of possibly dying with diagnostic from 'TAP::Parser' internals,
	and prevents it from displaying spurious "missing TAP plan" errors.

	Moreover, with this change, some testsuite failures present only
	with newer perl versions (e.g., 5.14) are fixed.  See automake
	bug#10418.

	* tests/tap-bad-prog.tap: When testing the perl implementation of
	the TAP driver, and when the perl interpreter offers a good-enough
	'IPC::Open3::open3' function, expect it not to display spurious
	"missing TAP plan" diagnostic if the error is actually due to a
	non-runnable test script.
	* lib/tap-driver.pl (start): Removed, broken up into ...
	(setup_io): ... this ...
	(setup_parser): ... and this, which now tries to catch and report
	errors in launching the test scripts.
	(finish): New, used by both 'main' and 'setup_parser'.
	(main): Adjust.

2012-02-01  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'maint'

2012-02-01  Peter Rosin  <peda@lysator.liu.se>

	tests: put AM_PROG_CC_C_O before AC_OUTPUT to help losing compilers

	When AM_PROG_CC_C_O is after AC_OUTPUT, the compile script
	is not used even if needed, causing testsuite fails if
	libtool is not used.

	* tests/depcomp8a.test: Uncomment the AM_PROG_CC_C_O macro
	in its correct location, as indicated...
	(configure.in): ...with this comment.
	* tests/depcomp8b.test: Sync with tests/depcomp8a.test.

2012-01-31  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cleanup: remove unused .am file

	* lib/am/comp-vars.am: Remove.  This file has stopped being useful
	since commit 'Release-1-4d-206-g3334f9a' of 09-04-2001, and should
	have been removed back then.  But apparently only its contents were
	removed, leaving the file empty but still present in the repository.
	Or maybe this situation is  the consequence of a minor blunder in
	the conversion from CVS to Git; either way, this is not a big deal.

2012-01-31  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  tests: do not assume the object file extension is .o
	  tests: avoid spurious failure of 'transform2.test' on Cygwin
	  tests: avoid spurious failure of deleted-am.test with FreeBSD make
	  tests: avoid possibly undeserved PASS from check8.test
	  warnings: more precise category and message for one warning
	  release: revamp rules to tag and upload the releases
	  amversion: add missing dependency
	  hacking: update advice w.r.t. synced files
	  hacking: don't reference ChangeLog anymore

	+ Extra non-trivial edits:

	* tests/suffix8.tap: Copy in (by hand) the modifications done
	to 'suffix8.test' on maint, i.e., the addition of an explicit
	'.y_.obj:' suffix rule to Makefile.am.

2012-01-30  Peter Rosin  <peda@lysator.liu.se>

	Merge branch 'msvc'

	* msvc:
	  ar-lib: ignore the verbose modifier instead of erroring out
	  scripts: cherry-pick recent changes from master
	  tests: add missing dependency for some 'ar-lib*.test' tests

2012-01-30  Peter Rosin  <peda@lysator.liu.se>

	ar-lib: ignore the verbose modifier instead of erroring out

	* lib/ar-lib: A number of tests uses the v modifier when listing
	the archive content, ignore it to make them pass.

2012-01-30  Peter Rosin  <peda@lysator.liu.se>

	scripts: cherry-pick recent changes from master

	* lib/ar-lib: prefer the term "Windows" over "Win32" and quote
	'like this', not `like this'.
	* lib/compile: Likewise.

2012-01-30  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: fix real and spurious warnings

	* lib/Makefile.am (install-data-hook): Correctly quote $(DESTDIR)
	occurrences.
	* Makefile.am (install-exec-hook, uninstall-hook): Likewise.
	(autodiffs): Prefer '$(am__cd)' to plain 'cd', where warranted.
	* doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Likewise.  Also,
	prefer using AC_SUBST'd $(abs_top_builddir) over obtaining it at
	runtime from $(top_builddir).
	* syntax-check.mk (sc_mkinstalldirs): Tweak to whitelist known
	harmless occurrences of the checked-against usages.
	(sc_no_for_variable_in_macro): Likewise.
	* tests/CheckListOfTests.am (maintainer-check-list-of-tests): Tweak
	to avoid spuriously triggering the 'sc_no_for_variable_in_macro'
	maintainer check.  Prefer '$(am__cd)' to plain 'cd' when warranted.

2012-01-30  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: take advantage of some GNU make features

	We can do so now that our maintainer checks require GNU make
	unconditionally.

	* syntax-check.mk (ams, xtests): Redefine as "immediate variables",
	using the GNU make $(shell ...) builtin.
	(maintainer-check-list-of-tests): Take advantage of GNU make "-C"
	option.  Don't use $(AM_MAKEFLAGS), we shouldn't need it with GNU
	make.

2012-01-30  Stefano Lattarini  <stefano.lattarini@gmail.com>

	build: require GNU make in order to run the maintainer checks

	This is not a real regression in portability, since most maintainer
	check rules already assumed GNU grep, and were anyway only meant to
	run on the developers' systems (where we can safely assume the
	presence of GNU make).

	This change will allow us to take advantage, in future changes, of
	more GNU make features, thus simplifying or optimizing some of our
	maintainer rules.

	* GNUmakefile: New, including 'Makefile' and 'syntax-checks.mk'.
	* configure.ac (AC_CONFIG_LINKS): Link it in the builddir.
	* Makefile.am (EXTRA_DIST): Distribute 'GNUmakefile' and
	'syntax-checks.mk'.
	Move all syntax-check rules and auxiliary variables into ...
	* syntax-checks.mk: ... this new file, with some adjustments.

2012-01-30  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: refactor rules checking '*.am' files

	A small refactoring in our syntax-check to avoid code duplication
	and to ensure more uniform checking.  This change introduces some
	new failures in syntax-check rules (both real and spurious), that
	will be fixed in follow-up changes and code reorganizations.

	* Makefile.am (ams): New variable, holding the list of all the
	'*.am' fragments in he automake source tree.
	(sc_no_brace_variable_expansions): Use it.
	(sc_rm_minus_f): Likewise.
	(sc_no_for_variable_in_macro): Likewise.
	(sc_mkinstalldirs): Likewise.
	(sc_pre_normal_post_install_uninstall): Likewise.
	(sc_cd_in_backquotes): Likewise.
	(sc_cd_relative_dir): Likewise.
	(sc_tests_make_without_am_makeflags): Likewise.
	(sc_tests_plain_egrep_fgrep): Likewise.
	(sc_mkdir_p): Likewise.

2012-01-30  Peter Rosin  <peda@lysator.liu.se>

	tests: do not assume the object file extension is .o

	* tests/specflg7.test: Dig out the object file extension from the
	OBJEXT makefile variable.
	* tests/substref.test: Likewise.
	* tests/specflg8.test: Likewise.  Also check that the false-true
	object is created instead of checking the true-true object twice.
	* tests/suffix8.test: Add a chain rule for the case where the
	object file extension is .obj.

2012-01-30  Peter Rosin  <peda@lysator.liu.se>

	tests: fetch the 'compile' script for subdir objects

	* tests/libobj19.test: Subdir objects are used, so the 'compile'
	script needs to be present for inferior hosts.  Fetch it.

2012-01-30  Peter Rosin  <peda@lysator.liu.se>

	tests: fetch the 'ar-lib' script for archiver usage

	* tests/libobj10.test: The archiver is used, so the 'ar-lib'
	script needs to be present for inferior hosts.  Fetch it.

2012-01-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failure of 'transform2.test' on Cygwin

	On newer Cygwin versions (at least 1.7.x), the 'transform2.test'
	test has been failing spuriously; the gist is the following:
	some *purposefully* rigged install rules there try something
	like:

	  install bla.exe .../inst/bin/foo.exe
	  install script.sh .../inst/bin/foo

	and the second install command fails (trying to overwrite the
	'.../inst/bin/foo.exe' file, likely due to overly aggressive
	appending of '.exe' suffix when copying/renaming Windows
	executables).  Since this is a Cygwin issue rather than an
	Automake one (and since the use case we are testing is a really
	corner-case anyway, making it unworthy to attempt to work
	around it in automake proper), we simply hack the test case
	to avoid the failure.

	Analysis by Peter Rosin and Ralf Wildenhues.

	References:
	<http://lists.gnu.org/archive/html/automake-patches/2010-08/msg00153.html>
	<http://thread.gmane.org/gmane.os.cygwin/119380>

	* tests/transform2.test: Skip the affected part of the test
	if the described Cygwin behaviour is detected.

2012-01-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failure of deleted-am.test with FreeBSD make

	* tests/deleted-am.test: Sleep between the removal of the included
	'.am' fragments and the subsequent "make" calls, to ensure that the
	remake rules kick in.  This is required to avoid racy spurious
	failures (~ 60% of the time) with FreeBSD make.

2012-01-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid possibly undeserved PASS from check8.test

	* tests/check8.test: Strengthen grepping of "make check" output
	where we know no problem with VPATH rewrites can take place.  This
	has the advantage of ensuring that we won't match also "sub/bar"
	when looking for "bar" during the uncolorized tests.

	Suggestion by Peter Rosin.

2012-01-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: work around MinGW/MSYS issue in fd redirections

	Some checks on $(AM_TESTS_FD_REDIRECT) were failing on MSYS, likely
	because system calls like "write(9, ...)" simply doesn't work for
	MinGW-compiled programs.  Similar usages work for the shell scripts
	though, since /bin/sh is an MSYS program and thus is a lot more
	POSIX-ish than most MinGW-compiled programs.

	The best fix for this issue is to separate the checks using shell
	scripts as dummy test cases from the checks using compiled programs
	for the same purpose, and skip these latter checks on MinGW.

	This change fixes automake bug#10466.  Report by Peter Rosin.

	* tests/parallel-tests-fd-redirect.test: Move checks using compiled
	C programs as test cases to ...
	* tests/parallel-tests-fd-redirect-exeext.test: ... this new test.
	* tests/list-of-tests.mk: Update.

2012-01-27  Stefano Lattarini  <stefano.lattarini@gmail.com>

	warnings: more precise category and message for one warning

	If automake detected an usage like "AC_CONFIG_FILES([./Makefile])"
	in configure.ac, it warned that such an usage was unportable to
	non-GNU make implementations.  But the truth is actually worse:
	that is actually *unportable to GNU make* itself, since it breaks
	the automatic remake rules in subtle ways.

	So we now reveal this breakage in a new test case, and enhance
	the warning by giving it a more precise and correct wording, and
	by moving it from the category 'portability' to the category
	'unsupported'.

	* automake.in (scan_autoconf_config_files): Improve the warning.
	* tests/conffile-leading-dot.test: New test.
	* tests/list-of-tests.mk: Add it.

2012-01-25  Stefano Lattarini  <stefano.lattarini@gmail.com>

	release: revamp rules to tag and upload the releases

	The older Makefile rules used to create and tag the releases were
	based on an approach we now consider flawed: they over-mechanized
	some delicate operations that are better performed manually *and*
	double-checked by a developer, and at the same time they did not
	run enough safety checks.

	* Makefile.am (GIT, version_rx, stable_version_rx, beta_version_rx,
	match_version, git_must_have_clean_workdir, determine_release_type):
	New variables.
	(git-release, git-dist): Remove, they are superseded by ...
	(git-tag-release, git-upload-release): ... these new targets.

2012-01-25  Stefano Lattarini  <stefano.lattarini@gmail.com>

	amversion: add missing dependency

	* m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Depend on
	configure.ac, since the value of $(VERSION) can change every
	time configure.ac is updated.

2012-01-25  Stefano Lattarini  <stefano.lattarini@gmail.com>

	hacking: update advice w.r.t. synced files

	* HACKING: Update and improve advices and explanations about files
	in the automake repository that are now owned by automake, but
	mirrored from other upstreams.  Also, don't list these files
	explicitly, rather point the reader to the $(FETCHFILES) variable
	in Makefile.am.
	* Makefile.am (FETCHFILES): Don't state that "there should be a
	lot more here", as this is not true anymore today.  Only 'COPYING'
	must be synced by hand.

2012-01-25  Stefano Lattarini  <stefano.lattarini@gmail.com>

	hacking: don't reference ChangeLog anymore

	* HACKING: Don't reference the ChangeLog file anymore, since that
	is now generated from the git commit messages, not maintained by
	hand.  So remove advice that is obsolete, and speak about "git
	commit message" instead of "ChangeLog entry" for advice that is
	still relevant.

2012-01-24  Stefano Lattarini  <stefano.lattarini@gmail.com>

	multilib: move to contrib

	This follows up on commit v1.11-665-gc5df21e of 2012-01-17,
	"multilib: deprecate, will be moved to contrib".  See also:
	<http://lists.gnu.org/archive/html/automake-patches/2012-01/msg00109.html>

	* NEWS: Update.
	* automake.in ($seen_multilib): Remove.
	(scan_autoconf_traces): Don't trace 'AM_ENABLE_MULTILIB', and don't
	handle it anymore.
	(handle_multilib): Remove.
	(generate_makefile): Don't call it anymore.
	* doc/automake.texi: Remove documentation about multilib support,
	related macros, and helper files.
	* m4/multi.m4: Delete.
	* m4/Makefile.am (dist_automake_ac_DATA): Remove it.
	* lib/am/multilib.am: Delete.
	* lib/am/Makefile.am (dist_am_DATA): Remove it.
	* contrib/multilib/multilib.am: New file, adapted from extracts of
	a Makefile.in generated with automake multilib support.  We did
	this instead of moving and editing 'lib/am/multilib.am' because it
	allows us to license this file with a liberal license that will
	permit users to copy-and-paste it in non-GPLed Makefile.am files
	too).
	* lib/symlink-tree, lib/config-ml.in: Move ...
	* contrib/multilib: ... in here.
	* lib/Makefile.am (dist_script_DATA, dist_pkgvdata_DATA): Update.
	* contrib/multilib/README: New file.
	* contrib/Makefile.am (EXTRA_DIST): Add the files created or moved
	in 'contrib/multlib'.
	* tests/multilib.test: Update and enhance a little.
	* tests/help-multilib.test: Likewise.

2012-01-23  Peter Rosin  <peda@lysator.liu.se>

	tests: improve diagnostics when write(2) fails

	MinGW programs can't redirect file descriptor 9, they can only redirect
	stdin, stdout and stderr.  So, improve the information in the test log.

	See automake bug#10466.

	* tests/parallel-tests-fd-redirect.test (baz.c, zardoz.c): Check the
	return value from the write(2) call, and report detected errors.

2012-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'compilers-for-testsuite'

	* compilers-for-testsuite:
	  readme: how to run the testsuite with cross-compilers
	  tests: no need to unset CFLAGS in tests requiring 'gcc' anymore
	  test defs: allow compilers to be auto-selected on user's request
	  test defs: substitute compilers and flags found at configure time
	  test defs: setup `*FLAGS' variables for GNU compilers
	  configure: search generic compilers for use in the tests

2012-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
	    Peter Rosin  <peda@lysator.liu.se>

	readme: how to run the testsuite with cross-compilers

	* tests/README: Suggest a better way to run the automake testsuite
	with cross-compilers -- that is, configuring the Automake source
	tree with proper `--build' and `--host' configure option.  And
	yes, specifying both these options (not only `--host') is indeed
	required to avoid spurious failures in corner cases.
	When you call configure with the `--host' option but without the
	`--build' option, configure tries to auto-detect whether you are
	cross-compiling or not, by trying to run a generated executable.
	That test might spuriously "succeed" in some corner cases (e.g.,
	Cygwin is able to run non-Cygwin apps).  In fact, generally, it
	can be the case that a cross-compilation is not detected as a
	cross anymore just because someone has installed an emulator; as
	an example, think of what can happen on a GNU/Linux system that
	is configured (through the use of the binfmt_misc kernel module)
	to execute PE executables (compiled for MS-DOS or Windows) through
	Wine *automatically*.  In conclusion, configure needs to be used
	as recommended in the documentation (i.e., by specifying *both*
	`--host' and `--build' instead of just one of them) to not have
	the build fall into any of a number of weird traps.
	* tests/defs (cross_compiling): Improve comments.

2012-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: no need to unset CFLAGS in tests requiring 'gcc' anymore

	* tests/ccnoco.test: Since this test have "gcc" in $required,
	there is no need to manually nullify the CFLAGS variable, since
	now `tests/defs' should automatically re-define that to a value
	appropriate for gcc.
	* tests/ccnoco3.test: Likewise.

2012-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: allow compilers to be auto-selected on user's request

	In the recent changes, by pre-setting the required compilers for
	the `configure' scripts launched by the test scripts, we have
	slightly reduced the coverage of autoconf/automake code aimed at
	automatically detecting said compilers.  This commit restore such
	coverage, by allowing the user to instruct the testsuite *not* to
	preset the testsuite compiler(s).

	* tests/defs (cc): If $CC is set to the special value "autodetect"
	or "autodetected", don't export the configure-detected CC, CFLAGS
	and CPPFLAGS variables; rather, unset them.
	(c++): Likewise, but for CXX, CXXFLAGS and CPPFLAGS instead.
	(fortran): Likewise, but for FC and FCFLAGS instead.
	(fortran77): Likewise, but for F77 and FFLAGS instead.
	(require_compiler_): New function, to reduce code duplication.

2012-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: substitute compilers and flags found at configure time

	* tests/Makefile.am (do_subst): Also substitute CC, CXX, F77, FC,
	CPPFLAGS, CFLAGS, CXXFLAGS, FCFLAGS and FFLAGS.
	* tests/defs-static.in: Define those variables, allowing for
	overrides from the environment.
	* tests/defs (for tool in $required): Export (subsets of) those
	variables when the stuff in `$required' calls for it.
	Add related explanatory comments.

2012-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: setup `*FLAGS' variables for GNU compilers

	* configure.ac: Setup some `*FLAGS' variables for use by the
	GNU compilers in our testsuite.  For example, use `GNU_CFLAGS'
	instead of `CFLAGS', and so on for similar variables.  This
	is especially useful in case the compilers found or defined
	at configure time are not the GNU ones.
	* tests/defs-static.in: Initialize those same variables with
	the values set at configure time, but allowing overrides
	from the environment.
	* tests/Makefile.am (do_subst): Process configure-style
	substitutions of those variables (e.g., `@GNU_CFLAGS@').
	* tests/defs: When a GNU compiler is required, override the
	corresponding generic `*FLAGS' variable with the GNU-specific
	variant (e.g., redefine `$CFLAGS' to take the value of
	`$GNU_CFLAGS').

2012-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>

	configure: search generic compilers for use in the tests

	* configure.ac: Look for "generic" C, C++ and Fortran compilers,
	with the aim of starting to use them in the testsuite (this will
	be done in future changes).  This is more tricky than it seems,
	since we don't want to abort the whole configure script even if
	no one of those compilers is available (after all, they're only
	needed by the testsuite, not to build automake), but currently
	autoconf doesn't offer an easy way to obtain this behaviour.
	We prefer non-GNU compilers to the GNU ones, to ensure better
	coverage "in the wild".

2012-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: remove redundant 'set -e' calls

	* tests/aclocal-install-absdir.test: Do not set the 'errexit' shell
	flag, as it is already set by 'tests/defs'.
	* tests/distcheck-pr10470.test: Likewise.
	* tests/objext-pr10128.test: Likewise.
	* tests/parallel-tests-dry-run-1.test: Likewise.
	* tests/silent-nested-vars.test: Likewise.
	* tests/tar-override.test: Likewise.
	* tests/vala-mix.test: Likewise.
	* tests/vala-vpath.test: Likewise.

2012-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  tests: fix spurious failure due to autom4te caching
	  vala: fix name of temporary file used in vala rules
	  vala tests: add missing 'valac' requirement, and other minor fixlets
	  news: fix grammaro

2012-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure due to autom4te caching

	* tests/lzma.test: Remove stale autom4te.cache directories, to
	prevent racy, spurious failures (using 'aclocal --force' was
	not enough, since the cache was still picked up by the following
	automake call).

2012-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	dist tests: missing 'compress' program was causing spurious failures

	Fixes automake bug#10575.

	The compress(1) tool is becoming anachronistic, and thus is not
	installed by default on modern distros (e.g., Fedora 16).  We
	can't thus unconditionally assume it exists on every reasonable
	portability target.

	* tests/dist-formats.tap ($missing_compressors): When defining
	this, don't assume anymore that compress(1) is unconditionally
	available.
	(Parallel compression): Skip this sub-test if compress(1) is
	unavailable.
	Since we are at it, fix a couple of unrelated buglets: a typo
	in a test name (s/distcheck/ark-exists/), and some attempts to
	remove directories with "rm -f".

2012-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala: fix name of temporary file used in vala rules

	Unquoted `@' characters in a "..." string in the automake script
	were causing slightly wrong rules to be emitted in the generated
	Makefile.in; i.e., rules like:

	  rm -f $@ && echo stamp > $10t

	instead of the expected:

	  rm -f $@ && echo stamp > $@-t

	* automake.in (lang_vala_finish_target): Fix that.
	* tests/vala.test: Enhance.

2012-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala tests: add missing 'valac' requirement, and other minor fixlets

	See also automake bug#10575.

	* tests/vala-mix.test ($required): Add 'valac'; this will avoid
	spurious failures on systems lacking a Vala compiler.
	Add some explicative comments for a couple of non-obvious make
	calls.
	Make grepping of "make -n" slightly stricter, to avoid potential
	false positives.

2012-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>

	news: fix grammaro

	* NEWS (Miscellaneous changes): Fix grammaro: s/don't/doesn't/.

	Reported by Jim Meyering.

2012-01-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  fixup: distribute 'contrib/multilib/multi.m4'
	  multilib: deprecate, will be moved to contrib
	  fixlet: flags for Fortran77 compiler are in FFLAGS, not F77FLAGS
	  cosmetics: fix a botched comment in a maintainer check

2012-01-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: distribute 'contrib/multilib/multi.m4'

	This fix up a blunder in commit v1.11-665-gc5df21e of 2012-01-17,
	"multilib: deprecate, will be moved to contrib".

	* contrib/Makefile.am (EXTRA_DIST): Add 'multilib/multi.m4'.

2012-01-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	multilib: deprecate, will be moved to contrib

	As of 2012-01-17, according to Google codesarch, almost no active
	package is using the 'multilib' feature offered by automake.

	The only major exception seems to be GCC...  But on a closer look,
	it become clear that GCC basically carries its own version of
	multilib support.  In fact, Automake syncs its 'config-ml.in' and
	'symlink-tree' scripts from GCC; and the GCC repository contains a
	version of the 'multi.m4' file that is *more* updated than the one
	in the automake repository (the former having being modified the
	last time in 2008, the latter only in 2006).

	The 'multilib' feature was anyway hardly documented at all, only
	being briefly cited in the manual as an "obscure feature", "still
	experimental", that was only for users "familiar with multilibs"
	and which "can debug problems they might encounter".  We expect
	such users to be motivated and knowledgeable enough to make the
	minor adjustments required to start using the contrib version of
	multilib, if they really need to.

	* NEWS (Future backward incompatibility): Update.
	* doc/automake.texi: Deprecate multilib support.  State that it
	will be removed from automake core in the next major release.
	* m4/multi.m4 (AM_ENABLE_MULTILIB): Deprecate.  If called, now
	gives a proper warning in the 'obsolete' category (while still
	retaining its former behaviour for the rest).
	* tests/multilib.test: Update.
	* contrib/multilib/multi.m4: New, verbatim copy of the earlier
	version of multi.m4, without the new deprecation warning.
	* Makefile.am (fetch): Don't sync the 'config-ml.in' file nor
	the 'symlink-tree' script from GCC SVN repository anymore.
	(FETCHFILES): Adjust.
	(WGET_GCC): Remove, it's not needed anymore.

2012-01-21  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixlet: flags for Fortran77 compiler are in FFLAGS, not F77FLAGS

	This change fixes automake bug#10555.

	Note that the bug was a minor one, since it didn't affect the
	compilation rules generated by automake, but only only the "hints"
	printed by automake in some error messages (e.g., "The usual way
	to define `FFLAGS' is to add AC_PROG_F77 to configure.ac").

	* lib/Automake/Variable.pm (%_ac_macro_for_var): The code generated
	by AC_PROG_F77 uses FFLAGS, not F77FLAGS, as the variable where to
	look for switches for the Fortran 77 compiler: adjust accordingly.

2012-01-19  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: fix a botched comment in a maintainer check

	* Makefile.am (sc_tests_make_without_am_makeflags): Adjust
	botched description of this check.

2012-01-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  cmdline parsing: move into a dedicated perl module

2012-01-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cmdline parsing: move into a dedicated perl module

	With this change, we delegate most of the automake and aclocal code
	for command-line options parsing to a new module "Automake::Getopt".
	This allows better code sharing between automake and aclocal, and
	also with Autoconf, which will sync the new module from us.  See
	also autoconf commit 'v2.68-120-gf4be358' (2012-01-17, "getopt: new
	Autom4te::Getopt module"), and this mailing list discussion:
	<http://lists.gnu.org/archive/html/autoconf-patches/2012-01/msg00033.html>

	This change might interact with the behaviour described in automake
	bug#7434; for example, starting from now, "automake -Wfoo --version"
	will cause automake to emit diagnostic like "unknown warning
	category 'foo'" before actually printing the version number and
	exiting.  This is not a big deal in practice, and the code sharing
	and simplifications introduced by this patch is certainly worth it.
	Still, we should revisited the issue in the future.

	* lib/Automake/Getopt.pm: New module, basically a slightly-edited
	copy of the 'lib/Autom4te/Getopt.pm' file from the autoconf devel
	repository (commit v2.68-120-gf4be358).  It defines and exports ...
	(parse_options): ... this new function.
	* automake.in (parse_arguments): Use the new function.
	* aclocal.in (parse_arguments): Likewise.
	* lib/Automake/Makefile.am (dist_perllib_DATA): Add the new file.
	* tests/getopt.test: Remove.
	* tests/list-of-tests.mk: Update.

2012-01-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: don't use custom TAP diagnostic in our own tests

	We simply don't need it (yet), we are not actually using it (the
	set up for using it is there in the Makefile, but no test script
	makes actual use of that).

	* tests/Makefile.am (TAP_LOG_DRIVER_FLAGS): Remove '-comments' and
	'--diagnostic-string' options.
	* tests/defs ($diag_string_): Remove redefinition.

2012-01-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: better name for a couple of tests

	Two tests checking "make -n" behaviour with the parallel-tests
	harness has been introduced in the Automake repository in the past:
	one of them ('parallel-tests-dryrun.test') in the maint branch, the
	other one ('parallel-tests-dry-run.test') in the master branch.

	Needless to say, their too-much-similar names can be a great source
	of confusion now.  Moreover, the two tests have been written during
	distinct refactorings, and are meant to exercise different code
	paths and/or usage scenarios, so that no one of them subsumes the
	other, and they should be both kept.

	Thus we simply rename both of them to avoid future confusion.

	* tests/parallel-tests-dryrun.test: Renamed ...
	* tests/parallel-tests-dry-run-1.test: .. to this.
	* tests/parallel-tests-dry-run.test: Renamed ...
	* tests/parallel-tests-dry-run-2.test: .. to this.
	Add cross-reference among them.
	* tests/list-of-tests.mk: Adjust.

2012-01-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	build: simplify our top-level "recheck" target

	* Makefile.am (recheck): Now that all the test scripts are in
	the 'tests/' directory, its recipe can be greatly simplified,
	as we don't need to deal with recursion in multiple subdirectories
	anymore.

2012-01-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  cosmetics: move CheckListOfTests.am into tests/
	  tests: move all under the same hierarchy ('tests/' directory)
	  gitlog-to-changelog: update from upstream
	  changelog: don't cluster multiple entries under the same "date line"

	+ Extra non-trivial edits:

	* tests/Makefile.am (XFAIL_TESTS): Update with the xfailing tests
	that were in 'lib/Automake/tests'.  Add proper "FIXME" comment.

2012-01-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	cosmetics: move CheckListOfTests.am into tests/

	After the previous change 'v1.11-660-gfbeda3d', the makefile
	fragment 'CheckListOfTests.am' is used only by the Makefile.am
	in 'tests'; so keeping them two nearer makes sense.  It also help
	in reducing potential confusion, since (after that same change)
	the whole Automake testsuite is expected to be (and remain)
	contained into the 'tests' subdirectory.

	* CheckListOfTests.am: Move ...
	* tests/CheckListOfTests.am: ... to this.
	* tests/Makefile.am (include): Adjust.

2012-01-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: move all under the same hierarchy ('tests/' directory)

	This simplifies the organization of the Automake source tree and
	reduces the (lamentably high) number of Makefiles in the Automake
	build system by one.  It also makes the maintainer check that
	verifies the consistency of list of tests more self-contained and
	simpler.  Finally, it might be a first step forward the transition
	to a non-recursive build system for automake (if we ever decide to
	go down that road fully some day).

	* lib/Automake/tests: All the '*.pl' tests in here moved ...
	* tests/pm: ... into this new directory.
	* lib/Automake/tests/Makefile.am: Remove, its meaningful
	contents moved ...
	* tests/Makefile.am: ... here, with obvious adjustments.
	(test_subdirs): New variable, for the sake of the recipe
	of 'maintainer-check-list-of-tests'.
	* CheckListOfTests (maintainer-check-list-of-tests): Enhance
	its recipe to make it able to deal with test script residing
	in subdirectories.
	* Makefile.am (maintainer-check-list-of-tests): Simplified.
	(TEST_SUBDIRS): Remove, no more needed.
	* tests/list-of-tests.mk (perl_TESTS): New variable, lists
	the '.pl' tests just moved into 'tests/pm'.
	(handwritten_TESTS): Add the contents of '$(perl_TESTS)'.
	* lib/Automake/Makefile.am (SUBDIRS): Remove.
	* configure.ac (AC_CONFIG_FILES): Update.
	* .gitignore: Adjust.

2012-01-18  Stefano Lattarini  <stefano.lattarini@gmail.com>

	gitlog-to-changelog: update from upstream

	* lib/gitlog-to-changelog: Update from gnulib upstream.  The only
	changes should be cosmetic and/or minor fixlets.

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	changelog: don't cluster multiple entries under the same "date line"

	* lib/gitlog-to-changelog: Synced from gnulib.  The new version
	has a new option '--no-cluster', that disables clustering of
	adjacent commit messages under the same "date line".
	* Makefile.am (gitlog_to_changelog_options): Add '--no-cluster'.
	Also add a proper '--format' specification to ensure we have a
	blank line between the summary line and the commit message body.

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  fixup: contrib: really integrate in automake build system

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: contrib: really integrate in automake build system

	* configure.ac (AC_CONFIG_FILES): Add 'contrib/Makefile'.
	* Makefile.am (SUBDIRS): Add 'contrib'.

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	check: move ".log -> .html" conversion in contrib

	That feature has been deprecated in the 1.11.x series, and marked
	for removal from the automake core in the 1.12 release.  Here we
	implement such removal.

	Reference:
	  <http://lists.gnu.org/archive/html/automake/2012-01/msg00005.html>

	See also commit 'v1.11-650-g20f2ac9'.

	* doc/automake.texi, NEWS: Update.
	* lib/am/check.am: Don't include 'check-html.am' anymore.
	* lib/am/check-html.am: Move ...
	* contrib/check-html.am: ... to this, and adjust comments.
	* lib/am/Makefile.am (dist_am_DATA): Update.
	* contrib/Makefile.am (EXTRA_DIST): Likewise.
	* tests/parallel-tests2.test: Adjust.
	* tests/parallel-tests-dryrun.test: Remove checks on the
	".log -> .html" conversion.
	* tests/test-driver-custom-html.test: Remove as obsolete.
	* tests/test-driver-custom-no-html.test: Likewise.
	* tests/tap-html.test: Likewise.
	* tests/list-of-tests.mk: Don't list removed tests anymore.

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  contrib: new, a directory for non-mainstream functionalities

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tap: some makes in parallel mode unconditionally serialize output

	Some make implementations (among them, FreeBSD make, NetBSD make,
	and Solaris Distributed Make), when run in parallel mode, serialize
	the output from their targets' recipes unconditionally.  This has
	the nasty side effect that the user won't see the partial results
	of a TAP test until the test has terminated.  This is not something
	our TAP driver script can work around unfortunately; in fact, the
	driver is sending out its output progressively and "in sync" with
	test execution -- it is make that is stowing such output away
	instead of presenting it to the user as soon as it gets it.

	So we content ourself with working around the issue in our
	testsuite, to at least avoid failures we could do nothing to
	prevent.

	* tests/tap-realtime.test: Skip this test if the make program used
	is a non-GNU make running in parallel mode.  And if Sun dmake is
	being used, try to force it to run in serial mode, by exporting the
	'DMAKE_MODE' environment variable to "serial".

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	contrib: new, a directory for non-mainstream functionalities

	This new 'contrib' hierarchy will be a good place were to move
	implementation/support for obsolescent features we are not yet
	ready to remove completely, or were to leave experimental or
	third-party features to cook before their eventual inclusion in
	the automake core.

	* contrib: New directory.
	* contrib/README: New file.
	* contrib/Makefile.am: New file.
	(EXTRA_DIST): Distribute README.

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: APIs for custom test drivers are highly experimental

	* doc/automake.texi (API for Custom Test Drivers): The APIs
	described here are not "somewhat experimental", but rather
	"highly experimental".  Don't promise the sure a sort of
	backward-compatibility that we are very likely not going to
	keep.

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid spurious failures with parallel make

	Some tests are unprepared to be run with a make command that runs
	in parallel mode by default.  This can happen e.g., if the user
	explicitly run the tests with something like:

	  AM_TESTSUITE_MAKE="gmake -j3" in the

	in the environment, but also if the make used in the testsuite is
	Sun Distributed Make, and the 'DMAKE_MODE' environment variable is
	set to "parallel".

	Fix some instances of this issue.

	* tests/tap-doc.test (Makefile.am): Declare explicit dependencies
	among the test cases, to ensure they are run in the correct order.
	* tests/tap-doc2.test: Set the 'DMAKE_MODE' environment variable
	to "serial", to prevent Sun dmake from trying to run in parallel.
	Remove other now-superfluous workarounds for dmake.

2012-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failures with Solaris dmake

	Solaris Distributed Make, when run in parallel mode, can sprinkle
	its standard output with lines like:

	  hostname --> 2 jobs
	  ...
	  hostname --> Job output
	  ...

	This behaviour was causing spurious errors in some tests where we
	compare the output of make with a known, expected value.  Fix that.

	* tests/tap-doc.test: Before comparing the output from make with its
	expected value, remove extra lines that could have been printed by
	Solaris dmake.
	* tests/tap-doc2.test: Likewise.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  recheck: fix interaction with "make -n"
	  vala: avoid potential useless remakes (minor bugfix)
	  vala: enhance tests
	  recheck: behave better with non-GNU make
	  check: separate .log -> .html conversion from core testsuite harness
	  docs: deprecate .log -> .html conversion by parallel-tests
	  tests: list some forgotten test cases in $(TESTS)
	  maintcheck: consistency of list of test scripts
	  build: explicitly declare some targets as .PHONY
	  maint: remove obsolete/broken maintainer targets
	  build: improve silencing of automake build system
	  tests: move list of tests in its own Makefile fragment

	+ Extra non-trivial edits:

	* tests/parallel-tests2.test: Obvious edits to merge the slightly
	inconsistent enhancements to coverage done in master with those
	done in maint.
	* lib/am/check.am (check-TESTS, recheck): Sweeping and rather
	complex changes to merge the considerable divergences between
	maint and master in a way that is meaningful and, where possible,
	retains the semantic changes from both maint and master.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'check-html-deprecate' into maint

	* check-html-deprecate:
	  recheck: fix interaction with "make -n"
	  recheck: behave better with non-GNU make
	  check: separate .log -> .html conversion from core testsuite harness
	  docs: deprecate .log -> .html conversion by parallel-tests

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	recheck: fix interaction with "make -n"

	* lib/am/check.am (recheck): Ensure the recipe does not erroneously
	remove '.log' files when running under "make -n".  For the sake of
	NetBSD make, this also means that ...
	(.MAKE): ... this cannot depend on 'recheck' anymore.
	* tests/parallel-tests-dryrun.test: New test.
	* tests/list-of-tests.mk: Add it.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala: avoid potential useless remakes (minor bugfix)

	* automake.in (lang_vala_finish_target): Ensure the timestamp file
	from which the C files generated from Vala sources depend on gets
	created with a modification time that is truly older than those of
	said generated C files.  This prevents make from attempting useless
	rebuilds (which were bound to happen deterministically on systems
	with sub-second timestamp resolutions).  It is worth noting that,
	luckily, those useless rebuild ended up being a no-op, since the
	Vala compiler is careful not to update the timestamp of an output
	file if its content has not changed from the previous version.
	Still, the useless rebuilds messed up "make -q" and "make -n"
	invocations, and were technically incorrect (despite being, as
	noted, inoffensive in practice).

	Problem revealed by failure of tests vala-mix.test and vala5.test
	on a fast Solaris 10 system whose filesystem had a sub-second
	timestamp resolution.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala: enhance tests

	* tests/vala.test: Extend test.  Throw in some cosmetic and
	consistency changes since we are at it.
	* tests/vala5.test: Avoid uselessly requiring libtool.  Ensure a
	failure happens in case VALAFLAGS are not supported as expected.
	Extend test in some ways.  Throw in some cosmetic and consistency
	changes since we are at it.
	* tests/vala-mix.test: New test.
	* tests/list-of-tests.mk: Add it.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	recheck: behave better with non-GNU make

	* automake.in (handle_tests): Also substitute '%CHECK_DEPS%' with
	the value of the '@check' array, containing the list of early
	test dependencies like '$(check_SCRIPTS)', $(check_PROGRAMS)',
	etc.
	* lib/am/check.am (recheck): Explicitly depend on '%CHECK_DEPS%'.
	(check, recheck): Unify the implementation of their recipes, with
	different code paths taken depending on the name of the target.
	This makes the implementation of "recheck" less brittle in the
	process (especially when non-GNU make and AM_MAKEFLAGS overriding
	are involved).
	* lib/am/check-html.am (check-html, recheck-html): Likewise.
	* tests/check.test: Adjust to avoid spurious failure.
	* tests/parallel-tests2.test: Improve coverage.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	check: separate .log -> .html conversion from core testsuite harness

	That feature is to be deprecated in the 1.11.x series, and removed
	from the automake core in the 1.12 release, where it will instead
	be offered in a semi-independent extra '*.am' fragment.  So let's
	start better separating the .log -> .html conversion from the "core
	code" of the parallel-tests harness.

	Reference:
	  <http://lists.gnu.org/archive/html/automake/2012-01/msg00005.html>

	* lib/am/check.am (.log.html, check-html, recheck-html): Move these
	targets ...
	* automake.in (handle_tests): ... and the initialization of the
	TEST_SUITE_HTML variable and the cleaning of the $(TEST_SUITE_HTML)
	file ...
	* lib/am/check-html.am: ... in this new file, with related (minor)
	refactorings, enhancements and simplifications.
	* lib/am/check.am (.MAKE. PHONY, AM_RECURSIVE_TARGETS): Adjust.
	* lib/am/Makefile.am (dist_am_DATA): Add 'check-html.am'.
	* tests/parallel-tests2.test: Improve coverage.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: deprecate .log -> .html conversion by parallel-tests

	That feature is to be deprecated in the 1.11.x series, and
	removed in the 1.12 release.

	Reference:
	  <http://lists.gnu.org/archive/html/automake/2012-01/msg00005.html>

	* doc/automake.texi (Simple Tests using parallel-tests): Deprecate
	the '.log' -> '.html' conversion and the targets 'check-html' and
	'recheck-html'.  Related rewording and reformatting.
	* NEWS (Future backward-incompatibilities): Update.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: list some forgotten test cases in $(TESTS)

	This way, they will be properly executed by "make check", and
	properly distributed.  Our previous commit 'v1.11-647-g27f1a1c'
	is already paying its dividends!

	* tests/list-of-tests.mk (handwritten_TESTS): Add check12.test,
	dist-missing-included-m4.test, dist-missing-am.test, and
	dist-missing-m4.test.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: consistency of list of test scripts

	This is basically a backport of commit 'v1.11-358-g7b6ab07'
	and its follow-ups.  The possibility of easily checking that
	the list of test scripts listed in a Makefile equals that of
	the tests on the filesystem has proved itself so useful that
	it's worth taking the annoyance of backporting it to maint.

	* CheckListOfTests.am: New file, backported from master (commit
	'v1.11-1736-g083a75b') with minor adjustments.
	(maintainer-check-list-of-tests): New target, check for consistency
	between the list of tests defined in the including Makefile and the
	list of tests on the filesystem.
	(clean-maintcheck-testslist-tmp): New rule, to clean up temporary
	files that might be left around by the rules associated with the
	previous target.
	(clean-local): Depend on it.
	* lib/Automake/tests/Makefile.am: Include `CheckListOfTests.am'.
	* tests/Makefile.am: Likewise.
	* Makefile.am (maintainer-check-list-of-test): New target,
	calling recursively into `tests/' and `lib/Automake/tests/',
	using ...
	(TEST_SUBDIRS): ... this new variable.
	(maintainer-check): Added dependency from the new target
	`maintainer-check-list-of-tests'.

2012-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: completeness check on list of tests simplified

	* CheckListOfTests.am: Simplify the recipe, accordingly to the
	assumption that all the entries in $(TEST_EXTENSIONS) and in
	$(TESTS) have an associated real test script.  This was not the
	case when we used to have some entries in $(TESTS) that were not
	real files, but rather "parameters" (sort of) for the corresponding
	$(LOG_COMPILER).  However, that usage had proven to be confusing
	and brittle, and thus removed (see commit 'v1.11-1308-g375f23d' of
	September 8 2011, "testsuite: revamp generation of autogenerated
	tests").

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	build: explicitly declare some targets as .PHONY

	* Makefile.am (fetch, git-dist, git-release, maintainer-check):
	Declare as ".PHONY".

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: remove obsolete/broken maintainer targets

	* Makefile.am (git-diff): Remove.  First, we don't distribute diffs
	between an automake version and the next one anyway, so this target
	is pointless.   Moreover, its recipe has been broken for quite a
	long time now, always generating an empty diff due to the spurious
	'$(PACKAGE)' argument that was passed to the "git diff" invocation.
	(path-check): Remove.  The 'pathchk' program running in this check
	complains about any file with name longer than 14 characters, which
	is a ridiculously low limit for today standards.  Also, we already
	had several test scripts (no less than 195!) that were exceeding
	that limit, and nobody ever complained (not even on MinGW/MSYS nor
	Cygwin).

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	build: improve silencing of automake build system

	In this change, we continue the silencing of the automake build
	system that has been started in commit v1.11-642-g17542c3, but
	which has been left incomplete there for an (absent-mindness)
	mistake.

	* Makefile.am (INSTALL): Silence the recipe.
	(automake, aclocal): Likewise, and improve them a little since
	we are at it.
	* lib/Automake/Makefile.am (Config.pm): Likewise.

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: move list of tests in its own Makefile fragment

	This change will make it easier to merge maint into master, which
	has a similar Makefile setup in the testsuite.

	* tests/Makefile.am (include): Inclusion of ...
	* tests/list-of-tests.mk: ... this new file.
	* tests/Makefile.am (TESTS): Move most of its content into,
	and redefine in function of, ...
	* tests/list-of-tests.mk (handwritten_TESTS): ... this new
	variable.
	* tests/gen-parallel-tests: Update.

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  tests: move list of tests in its own Makefile fragment
	  build: silence automake build system

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: move list of tests in its own Makefile fragment

	This change will make it easier to merge maint into master, which
	has a similar Makefile setup in the testsuite.

	* tests/Makefile.am (include): Inclusion of ...
	* tests/list-of-tests.mk: ... this new file.
	* tests/Makefile.am (TESTS): Move most of its content into,
	and redefine in function of ...
	* tests/list-of-tests.mk (handwritten_TESTS): ... this new
	variable.
	* tests/gen-parallel-tests: Update.

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	build: silence automake build system

	* configure.ac (AM_SILENT_RULES): Invoke with "yes" as a parameter,
	to activate silent rules by default.
	* NEWS: Update.
	* Makefile.am (sc_perl_syntax): Silence its recipe unconditionally,
	similarly to what is done for other syntax checks.
	(release-stats): Be silent by default *but not unconditionally*,
	thanks to the use of $(AM_V_GEN).
	(path-check, git-diff): Be silent by default, thanks to the use
	of $(AM_V_GEN).
	* m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Likewise.
	* doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Likewise.
	* tests/Makefile.am ($(srcdir)/parallel-tests.am): Likewise.
	($(parallel_tests)): Likewise.

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  gnupload: moved to gnulib
	  sync: gitlog-to-changelog from gnulib upstream
	  test defs: backport optimized 'using_gmake' implementation
	  tests: unify some tests on "make -n", reducing duplication
	  vala: use "$(am__cd) $(srcdir)", not "cd $(srcdir)"

	+ Extra edits:

	* tests/maken3.test: Carry over (with necessary adjustments) the
	code from maken4.test that determines whether $MAKE supports the
	special '.MAKE' target.

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	gnupload: moved to gnulib

	Since the gnupload script is not required by automake-generated
	code (be it configure or Makefile content), and is not specifically
	tied to automake in any way, it is better to have its master copy
	installed in the gnulib repository, as is already done for similar
	generally-useful, maintainer-oriented scripts.  We can them sync it
	from there.

	See also gnulib commit v0.0-6822-gf8b7120, and:
	<http://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00222.html>

	* Makefile.am (FETCHFILES): Added 'gnupload'.
	(fetch): Also sync 'gnupload' from the gnulib repository.
	* lib/gnupload: Synced from gnulib.
	* NEWS: Update.

2012-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>

	sync: gitlog-to-changelog from gnulib upstream

	* lib/gitlog-to-changelog: Synced from upstream, by "make fetch".

2012-01-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: backport optimized 'using_gmake' implementation

	* tests/defs.in (using_gmake): Backport optimized, result-caching
	implementation from master.

2012-01-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: unify some tests on "make -n", reducing duplication

	* tests/maken2.test: Merge into ...
	* tests/maken.test: ... this test, to avoid unnecessary code
	duplication.  Make checks depending on GNU make conditional to
	the actual presence of GNU make.
	* tests/maken4.test: Similarly, merge into ...
	* tests/maken3.test: ... this test.
	* tests/Makefile.am (TESTS): Remove maken2.test and maken4.test.

2012-01-14  Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala: use "$(am__cd) $(srcdir)", not "cd $(srcdir)"

	* automake.in (lang_vala_finish_target): In the generated rules,
	use '$(am__cd)', not bare 'cd', to chdir into $(scdir).  Issue
	revealed by the maintainer check 'sc_cd_relative_dir'.

2012-01-13  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  dist: avoid $(distdir) removal failure on MSYS/MinGW
	  tests: fix spurious failure of 'get-sysconf.test'
	  coverage: expose automake bug#10470 (distcheck-related)
	  tests: make 'aclocal-install-absdir.test' executable
	  tests: require GNU make in 'vala-vapth.test'
	  vala: fix VPATH builds
	  tests: fix some bugs in the vala-vpath test

2012-01-13  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'fix-pr10470' into maint

	* fix-pr10470:
	  dist: avoid $(distdir) removal failure on MSYS/MinGW
	  coverage: expose automake bug#10470 (distcheck-related)

2012-01-13  Stefano Lattarini  <stefano.lattarini@gmail.com>

	dist: avoid $(distdir) removal failure on MSYS/MinGW

	This change fixes automake bug#10470.

	On MSYS (1.0.17) it is not possible to remove a directory that is
	in use, and this, together with timing issues, could cause spurious
	failures in the cleanup code of the "distcheck" recipe.  In fact,
	it should be noted that assuming a directory can be removed while
	it the CWD of a running process is a POSIX violation:

	  "If the directory is the root directory or the current working
	   directory of any process, it is unspecified whether the function
	   succeeds, or whether it shall fail and set errno to [EBUSY]."

	* lib/am/distdir.am (am__remove_distdir): If rm fails, sleep some
	seconds and retry, to give potential "pending" processes some time
	to exit and "release" the directory.
	* tests/Makefile.am (XFAIL_TESTS): Remove 'distcheck-pr10470.test'.

	Report and suggestions by Peter Rosin and Eric Blake.

2012-01-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure of 'get-sysconf.test'

	* tests/get-sysconf.test: Do not assume that a ChangeLog file exists
	in $(srcdir): now that the ChangeLog is autogenerated and not under
	version control anymore, this is not necessary true.  Instead, if we
	are running from a git checkout, use "git log" to get information on
	the version of the automake snapshot being tested (and fall back on
	extracting the first ChangeLog entry otherwise).

	Reported by Jim Meyering in automake bug#10418.

	Cherry picked from commit v1.11-1675-g104f302.

2012-01-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	coverage: expose automake bug#10470 (distcheck-related)

	* tests/distcheck-pr10470.test: New test.
	* tests/Makefile.am (TESTS, XFAIL_TESTS): Add it.

	Report and suggestions by Peter Rosin and Eric Blake.

2012-01-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: make 'aclocal-install-absdir.test' executable

	* tests/aclocal-install-absdir.test: Make it executable.

2012-01-12  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: add missing dependency for some 'ar-lib*.test' tests

	This change fixes spurious failures of the tests ar-lib4.test,
	ar-lib6a.test and ar-lib6b.test.

	* tests/Makefile.am (ar-lib4.log): Depend explicitly on the
	`libtool-macros.log' file.
	(ar-lib6a.log, ar-lib6b.log): Likewise.

2012-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>

	dist: distdir not unconditionally removed anymore for xz and lzip

	This change fixes automake bug#10444 a.k.a. bug#10448.

	The 'dist-xz' and 'dist-lzip' recipes were erroneously using
	'$(am__remove_distdir)' instead of '$(am__post_remove_distdir)'
	to cleanup the '$(distdir)'; so a "make dist" issued in a package
	using (say) gzip and xz compression would have failed to properly
	created the gzip tarball, since the distdir was unconditionally
	removed by "make dist-xz" upon its completion, instead of being
	left populated for the following "make dist-gzip".

	The problem with 'dist-xz' was introduced in the merge commit
	`v1.11-1142-g47587d1', and the problem with 'dist-lzip' was
	introduced in the merge commit `v1.11-1673-gc1b14e9'

	* lib/am/distdir.am (dist-xz): Use '$(am__post_remove_distdir)',
	not '$(am__remove_distdir)'.
	(dist-lzip): Likewise.

2012-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>

	coverage: archive and compression formats used by "make dist"

	This change exposes automake bug#10444 a.k.a. bug#10448.

	* tests/dist-formats.tap: New test.
	* tests/lzip.test: Remove, it's obsolete now.
	* tests/nogzip.test: Likewise.
	* tests/nogzip2.test: Likewise.
	* tests/xz.test: Likewise.
	* tests/list-of-tests.mk: Update.

2012-01-10  Peter Rosin  <peda@lysator.liu.se>

	tap/awk: avoid redirection issues with bash 3.2 and earlier

	Fixes automake bug#10465.

	* lib/tap-driver.sh: Add workaround for bash 3.2 and earlier, which
	sometimes does not properly set '$?' when failing to write redirected
	output of a compound command.  See the Autoconf manual for more details.

	The workaround was pointed out by Eric Blake.

2012-01-09  Peter Rosin  <peda@lysator.liu.se>

	tests: detect that MSYS lacks symlinks

	* tests/self-check-cleanup.tap: Also check if "ln -s" really created a
	symlink to cater for MSYS falling back to an ordinary copy.  Also, don't
	chmod the symlinks if they were never created.

2012-01-08  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: avoid many spurious failures on MSYS due to lack of symlinks

	Fixes automake bug#10441.

	* tests/add-missing.tap: Do not assume the system supports real
	symlinks, as this is not the case for MinGW/MSYS.  Skip checks
	that would spuriously fail in that situation.
	* tests/copy.test: Likewise.

	Reported by Peter Rosin.

2012-01-08  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: require GNU make in 'vala-vapth.test'

	* vala-vpath.test ($required): Add the "GNUmake" requirement, since
	rules generated by vala support are expected to work with GNU make
	only.

2012-01-08  Ryan Lortie  <desrt@desrt.ca>  (tiny change)
	    Stefano Lattarini  <stefano.lattarini@gmail.com>

	vala: fix VPATH builds

	This change fixes automake bug#9859.

	* automake.in (lang_vala_finish_target): Create the stamp file
	'${derived}_vala.stamp' in $(srcdir), not in $(builddir).
	Also, don't try to chdir to the $(srcdir) to trigger the rebuild
	rules, since that is just wrong in a VPATH setup.
	* tests/vala-vpath.test, tests/vala2.test: Extend to catch more
	possible VPATH issues.
	* tests/Makefile.am (XFAIL_TESTS): Remove 'vala-vpath.test'.
	* NEWS, THANKS: Update.

2012-01-08  Ryan Lortie  <desrt@desrt.ca>  (tiny change)

	tests: fix some bugs in the vala-vpath test

	* tests/vala-vpath.test: There are (trivial) problems in this
	testcase that would cause the build to fail even if the core
	issue were resolved.  Fix those.

2012-01-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: list forgotten test case in $(TESTS)

	* tests/list-of-tests.mk: Also list 'tar-override.test'.

2012-01-06  Paul Eggert  <eggert@cs.ucla.edu>

	scripts: quote 'like this', not `like this'

	This change follows up on recent changes to the GNU coding standards.
	They now suggest that we should quote 'like this' or "like this" instead
	of `like this'; see:
	 <http://www.gnu.org/prep/standards/html_node/Quote-Characters.html>.

	Gnulib is being changed accordingly, and Gnulib imports some files
	directly from Automake master, so change those files to use the
	straight-up style.  This affects only commentary and quoting in
	diagnostics.

2012-01-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: safer declarations of test dependencies

	To declare prerequisites common to all the tests, we now prefer to
	use the special `check_DATA' and `check_SCRIPTS' variables rather
	than "lazy" dependency declaration like "$(TEST_LOGS): DEPS ...";
	this because the latter, allowing run-time overriding of the
	TEST_LOGS variable, turned out to be subtly incomplete in some
	situations involving non-trivial inter-test dependencies.  For
	example, if the user issued a:

	    make check TESTS=libtool.test

	before the `defs-static' file was created (either explicitly or
	implicitly), a spurious errors followed, along these lines:

	 1. $(TEST_LOGS) got dynamically defined to `libtool.log';

	 2. make saw that, in the Makefile, `libtool.log' was explicitly
	    declared depending on `libtool-macros.log' and `defs-static';

	 3. somehow, make considered the dependency on `libtool-macros.log'
	   *before* considering the one on `defs-static' (which BTW is
	   perfectly legitimate on make's part);

	 4. to satisfy such a dependency, make set out to execute the
	    test `libtool-macros.test' in order to create the file
	    `libtool-macros.log';

	 5. since `libtool-macros.log' was *not* in $(TEST_LOGS), it
	    didn't appear to depend on the `defs-static' file, so make
	    didn't consider necessary to build `defs-static' before
	    running the `libtool-macros.test' script;

	 6. but that script sources `./defs-static' in order to work;
	    thus the test `libtool-macros.test' failed spuriously.

	* tests/Makefile.am ($(TEST_LOGS)): Remove explicit declaration
	of dependency on the required files/scripts; instead use ...
	(check_SCRIPTS, check_DATA): ... these new variables.

2012-01-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: skip tests on perl TAP driver if TAP::Parser is not available

	We had so far taken for granted that all the perl installations
	modern enough to correctly run automake also came with a built-in
	TAP::Parser module; unfortunately, testing on MinGW/MSYS has
	shown that this is not always true, and that a lot of spurious
	testsuite failures would take place in such a situation (see
	automake bug#10440).

	Luckily, the perl implementation of the Automake TAP driver is
	only meant to be used for prototyping and consistency checks, the
	"real" Automake TAP driver being the portable one implemented in
	awk.  So we can simply skip the affected tests on systems lacking
	TAP::Parser.

	* tests/defs (fetch_tap_driver): Skip the whole test case if
	the desired tap driver implementation is the perl one but the
	TAP::Parser module is unavailable.
	* tests/tap-bad-prog.tap: Adjust order of calls to `plan_' and
	`fetch_tap_driver', to ensure the test is not skipped after the
	TAP plan has been outputted (which would lead to a spurious
	error).
	* tests/tap-bad-signal.tap: Tweak to avoid the need to source the
	`tap-setup.sh' script, as that might cause a test skip too late,
	i.e., after a TAP plan has been already printed.
	* tests/tap-test-number-0.test: Do not force the test to skip
	when the tested TAP driver implementation is not the perl one.
	On the other hand, when it *is* the perl one, skip the test if
	the TAP::Parser module is unavailable.
	* tests/test-driver-cond.test: Skip the part of the test actually
	running "make check" if the TAP::Parser module is unavailable.
	* tests/get-sysconf.test: Also print the version of the
	`TAP::Parser' module, if available.

	Reported by Peter Rosin.

2012-01-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  dist: do not wrap calls to 'tar' with the 'missing' script
	  fixup: previous commit v1.11-627-g1e0aedc
	  tests: fix spurious failures due to autom4te caching

2012-01-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	dist: do not wrap calls to 'tar' with the 'missing' script

	The `missing' script is meant to allow non-developers to build a
	package in the face of slightly-skewed timestamps (as might happen
	e.g. when the package is obtained from a VCS checkout rather than
	from a distribution tarball).  It is *not* the business of the
	`missing' script to try to provide wrappers for all the maintainer
	tools (in this case, to tool being a decent tar program).  Such
	wrapping of `tar' was not only inappropriate, but it was also
	preventing the legitimate overriding (at make runtime) of the
	`tar' program used in the creation of the distribution tarballs.

	See also automake bug#9822.

	* lib/missing: Don't try to specially wrap `tar' invocations
	anymore.
	* m4/tar.m4 (_AM_PROG_TAR): In the definitions of the `AMTAR'
	variable, do not wrap the `tar' invocation with the `missing'
	script anymore.  Instead, allow the user to override the intended
	tar program at make runtime, by defining the `TAR' environment
	variable.
	[$1 == v7]: Similarly for the definitions of the `am__tar' and
	`am__untar' variables.  Since we are at it, don't make them depend
	anymore on the definition of the obsolescent `AMTAR' variable.
	* NEWS: Update.
	* tests/missing-tar.test: Remove, it's obsolete.
	* tests/tar-override.test: New test.
	* tests/Makefile.am (TESTS): Update.

	Reported by Akim Demaille.

2012-01-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	fixup: previous commit v1.11-627-g1e0aedc

	* tests/acloca18.test: Do not remove an aclocal.m4 file that is
	needed by a later autoconf invocation.

2012-01-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failures due to autom4te caching

	* tests/aclocal9.test: Call aclocal and autoconf with the `--force'
	option.
	* tests/acloca10.test: Sleep between re-runs of aclocal and autoconf.
	* tests/acloca18.test: Explicitly remove also the configure script
	and the aclocal.m4 before re-invoking aclocal and autoconf.

2012-01-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	parallel-tests: avoid trailing backslashes in make recipes

	The new testsuite-harness could generate recipes with a trailing
	backslash character (possibly followed by blank characters only),
	in the very common case where the user hadn't defined the special
	$(AM_TESTS_FD_REDIRECT) variable.  This caused spurious syntax
	errors with at least older bash versions (e.g., bash 2.05b), and
	could be potentially unportable to other weaker shells.

	See automake bug#10436:
	  <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10436>
	and coreutils bug#10427:
	  <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10427#8>

	* lib/am/check2.am: Rework line breaks so that no backslash can
	be at the end of a line.
	* tests/parallel-tests-trailing-bslash.test: New test.
	* tests/list-of-tests.mk: Add it.

	Report and diagnosis by Paul Eggert.

2012-01-06  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  parallel-tests: avoid issue with overly long lines in sed input

	Additional edits:
	* NEWS: Remove entry from merged commit, since that will also be
	present in the NEWS file of automake 1.11.3.
	* lib/am/check.am (check-TESTS, recheck, recheck-html): Rework
	merged changes to adapt them to the different form these recipes
	has assumed in the master branch (w.r.t. the maint branch).

2012-01-05  Stefano Lattarini  <stefano.lattarini@gmail.com>

	parallel-tests: avoid issue with overly long lines in sed input

	See automake bug#10437:
	  <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10437>
	and coreutils bug#10427:
	  <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10427#8>

	* lib/am/check.am (recheck, recheck-html): In order to strip
	trailing whitespace from the definition of the `$list' variable,
	we used to invoke sed in a way that could cause it to get passed
	overly long input lines, causing spurious failures.  So rework
	the logic of the recipe to avoid any sed invocation, relying on
	simpler shell idioms instead.
	(check-TESTS): Reorganize the recipe to be more similar to the
	one of `recheck', for consistency and simplicity.
	* NEWS: Update.

	Report and analysis by Paul Eggert.

2012-01-05  Peter Rosin  <peda@lysator.liu.se>

	tests: work around strangeness in MSYS

	MSYS mishandles carriage returns and behaves very strangely for
	directories with colon in them.  It seems that colon-directories are
	somehow mixed up with drive letters.

	Fixes automake bug#7849.

	* tests/instspc.tap: Skip instead of erroring out when $test_string
	is empty for the carriageret case, as that is expected on MSYS.  Also,
	for similar reasons, skip instead of erroring out when it is not
	possible to cd into the just created directory, and the directory
	name contains a colon.  Update copyright years.

2012-01-04  Paul Eggert  <eggert@cs.ucla.edu>

	cosmetics: prefer the term "Windows" over "Win32"

	Microsoft has renamed the Win32 API to "Windows API":
	  <http://msdn.microsoft.com/en-us/library/aa383723.aspx>

	Also, after some discussion on bug-gnulib, when talking about hosts and
	platforms we believe it's better to talk about "Windows" or "native
	Windows" instead:
	  <https://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00009.html>
	  <https://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00027.html>

	* doc/automake.texi: Mention "Windows", not "Win32".
	* lib/Automake/XFile.pm: Likewise.
	* lib/ar-lib: Likewise.
	* lib/compile: Likewise.
	* tests/compile2.test: Mention "Windows", not "w32".

2012-01-04  Peter Rosin  <peda@lysator.liu.se>

	test defs: skip all tests when the lib requirement isn't fulfilled

	* tests/defs (lib): Use skip_all_ instead of skip_, in order to support
	TAP-based test scripts.

2012-01-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: be sure to list all test cases in $(TESTS)

	* tests/list-of-tests.mk: Due to slightly botched merges, the test
	scripts `objext-pr10128.test' and `silent-nested-vars.test' weren't
	being correctly listed in $(TESTS); fix this.

2012-01-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  sync: auxiliary files from upstream synced
	  sync: fix syncing of 'gitlog-to-changelog' script
	  maintcheck: avoid false positive in sc_tests_plain_make

2012-01-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	sync: auxiliary files from upstream synced

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

2012-01-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	sync: fix syncing of 'gitlog-to-changelog' script

	* Makefile.am (FETCHFILES): Also list 'gitlog-to-changelog'.

2012-01-04  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: avoid false positive in sc_tests_plain_make

	* Makefile.am (sc_tests_plain_make): Ensure to only match full
	`make' words.  Avoid false positive in `silent-nested-vars.test'.

2012-01-03  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  install: pkglibexec_SCRIPTS is a valid prefix/primary combination
	  coverage: expose automake bug#10128
	  progs, libs: implement EXTRA_foo_DEPENDENCIES
	  tests: fix spurious failures in 'pr300*.test'

2012-01-03  Stefano Lattarini  <stefano.lattarini@gmail.com>

	install: pkglibexec_SCRIPTS is a valid prefix/primary combination

	It makes little sense for `libexec_SCRIPTS' to be accepted as valid
	while `pkglibexec_SCRIPTS' is not.  So fix this inconsistency by
	explicitly allowing `pkglibexec_SCRIPTS' as well.  It is worth
	noting that the inconsistency has been there for a long time,
	but only the quite recent commit `v1.11-373-g9ca6326' "Warnings
	about primary/prefix mismatch fixed and extended" has made it
	noisy enough to be noticed.

	* automake.in (handle_scripts): Also list `pkglibexec' among the
	prefixes valid for the `SCRIPTS' primary.
	* doc/automake.texi (Scripts): Likewise.
	* tests/primary-prefix-valid-couples.test: Update.
	* THANKS: Likewise.
	* NEWS: Likewise.

	Reported by Dennis Schridde on the automake list:
	<http://lists.gnu.org/archive/html/automake/2012-01/msg00002.html>

2012-01-03  Stefano Lattarini  <stefano.lattarini@gmail.com>

	coverage: expose automake bug#10128

	* tests/objext-pr10128.test: New test, still expected to fail.
	* tests/Makefile.am (TESTS, XFAIL_TESTS): Add it.

2012-01-03  Stefano Lattarini  <stefano.lattarini@gmail.com>

	progs, libs: implement EXTRA_foo_DEPENDENCIES

	Backported from commit `v1.11-377-g6edafbb'.

	The feature implemented by that change is quite unobtrusive, so
	adding it to a maintenance release is acceptable.  Also, there
	have been requests from real-world users for this feature since
	it has been implemented in master; see automake bug#9320:
	 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9320>
	and this short discussion on the automake list:
	 <http://lists.gnu.org/archive/html/automake/2010-11/msg00099.html>
	It would be a pity to make such users wait even more (until
	Automake 1.12 is out) before they could start using this feature.
	Thus we backport it, so that it will appear in the next maintenance
	version of automake (1.11.3).

	* automake.in (handle_programs, handle_libraries)
	(handle_ltlibraries): Mark EXTRA_*_DEPENDENCIES as recognized.
	* doc/automake.texi (Linking, Program and Library Variables)
	(LIBOBJS): Document EXTRA_*_DEPENDENCIES.
	* lib/am/library.am (%LIBRARY%): Also depend on
	$(EXTRA_%XLIBRARY%_DEPENDENCIES).
	* lib/am/ltlibrary.am (%LTLIBRARY%): Also depend on
	(%XLTLIBRARY%_DEPENDENCIES).
	* lib/am/program.am (%PROGRAM%%EXEEXT%): Also depend on
	$(EXTRA_%XPROGRAM%_DEPENDENCIES).
	* tests/extradep.test, tests/extradep2.test: New tests.
	* tests/Makefile.am (TESTS): Update.
	* NEWS: Update.

2012-01-03  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failures in 'pr300*.test'

	This change fixes automake bug#10426.

	* tests/pr300-lib.test: Call configure with an explicit '--libdir'
	option, to avoid spurious failures due to users possibly overriding
	'${libdir}' in ther config.site files.
	* tests/pr300-ltlib.test: Likewise.

	Reported by Bruno Haible.

2012-01-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure due to I/O buffering

	* tests/parallel-tests-interrupt.tap: Ensure the dummy test script
	`foo.test' flushes its standard output before starting to grep the
	log file where such output is being redirected by the parallel test
	harness.  Since we are at it, improve this same dummy script to
	better catch unexpected behaviours and results.

	Reported by Jim Meyering in automake bug#10418.

2012-01-02  Stefano Lattarini  <stefano.lattarini@gmail.com>

	news: fix botched merges, rebase on 1.11.2a NEWS version

	The NEWS file is unfortunately written in a format that doesn't
	lend itself very well to automatic merges; the recent merges of
	maint into master have left it full of blunders and in a somewhat
	inconsistent state.

	Another orthogonal issue is that the current version of NEWS
	still reports all the changes since the last 1.11 version, rather
	than since the latest maintenance version 1.11.2, or, even better,
	since the planned next maintenance version 1.11.3.

	* NEWS: Fix blunders and errors from botched merges.  Rebase the
	file on the NEWS file from branch-1.11 (from which automake 1.11.3
	is expected to be released).

2012-01-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'msvc'

	* msvc:
	  tests: fix spurious failure due to autom4te caching
	  news: fix suboptimal wording
	  tests: various minor tweakings, mostly related to AM_PROG_AR

2012-01-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure due to autom4te caching

	* tests/ar-lib3.test: Remove stale autom4te.cache directory, to
	prevent racy, spurious failures.

	Reported by Jim Meyering in automake bug#10418.

2012-01-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint' into msvc

	* maint:
	  tests: make 'lzip.test' executable
	  dist: obsolete support for lzma (superseded by xz and lzip)
	  test defs: more granular overriding of the make program
	  docs: fix a couple broken anchors
	  dist: add support for lzip compression
	  docs: fix paragraph names for automake and aclocal invocations
	  tests: fix spurious failure due to autom4te caching
	  fix: last entry in ChangeLog
	  tests: tweak tests on silent-rules for makes without nested vars
	  silent-rules: fallback for makes without nested vars

2012-01-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure of 'get-sysconf.test'

	* tests/get-sysconf.test: Do not assume that a ChangeLog file exists
	in $(srcdir): now that the ChangeLog is autogenerated and not under
	version control anymore, this is not necessary true.  Instead, if we
	are running from a git checkout, use "git log" to get information on
	the version of the automake snapshot being tested (and fall back on
	extracting the first ChangeLog entry otherwise).

	Reported by Jim Meyering in automake bug#10418.

2012-01-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	dist: remove support for lzma (superseded by xz and lzip)

	See also commit `v1.11-611-ge637fa2' (from maint), where support
	for lzma compression of distribution archive had been deprecated.

	* NEWS: Update.
	* lib/Automake/Options.pm: Error out if the `dist-lzma' option
	is used.
	* lib/am/distdir.am: Remove all support for the creation of a
	lzma-compressed distribution archive.
	* tests/lzma.test: Update.

2012-01-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  tests: make 'lzip.test' executable
	  dist: obsolete support for lzma (superseded by xz and lzip)
	  test defs: more granular overriding of the make program
	  docs: fix a couple broken anchors
	  dist: add support for lzip compression
	  docs: fix paragraph names for automake and aclocal invocations
	  tests: fix spurious failure due to autom4te caching
	  fix: last entry in ChangeLog
	  tests: tweak tests on silent-rules for makes without nested vars
	  silent-rules: fallback for makes without nested vars

2012-01-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: make 'lzip.test' executable

	* tests/lzip.test: Make it executable.

2012-01-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'deprecate-lzma' into maint

	* deprecate-lzma:
	  dist: obsolete support for lzma (superseded by xz and lzip)

2012-01-01  Stefano Lattarini  <stefano.lattarini@gmail.com>

	dist: obsolete support for lzma (superseded by xz and lzip)

	The lzma utilities are today superseded by the xz utilities; in
	fact, the official site at <http://tukaani.org/lzma/> reads:

	  ``LZMA Utils are legacy data compression software with high
	    compression ratio.  LZMA Utils are no longer developed, ...
	    Users of LZMA Utils should move to XZ Utils.''

	and the existing automake manual (as of 1.11.2) already says:

	  ``dist-xz
	    Generate an 'xz' tar archive of the distribution. xz archives
	    are frequently smaller than bzip2-compressed archives. The 'xz'
	    format will soon (early 2009) displace the 'lzma' format''

	Also, the `dist-lzma' target still suffers of never-solved bugs,
	due to the too-high compression ratio its uses by default, which
	might cause an unacceptable memory consumption when one tries to
	compress or, worse, decompress the created tarballs; see also:

	  <http://lists.gnu.org/archive/html/automake/2011-12/msg00025.html>
	  <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9658>

	* NEWS: Update.
	* doc/automake.texi (Dist, Options): State that `dist-lzma' will
	go away in the next major automake version.
	* lib/Automake/Options.pm (_process_option_list): Deprecate
	`dist-lzma'.
	* tests/lzma.test: Update.

2011-12-31  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: fix a couple of typos in error messages

	* Makefile.am (sc_tests_plain_autoheader): Fix the message to
	report a bad use of "autocheader", not of "automake."
	(sc_tests_plain_autom4te): Likewise, but for "autom4te" instead.
	(sc_tests_plain_autoreconf): Likewise, but for "autoreconf"
	instead.

2011-12-31  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maintcheck: be sure to look at all the test cases

	Many maintainer checks in the top-level Makefile.am did some
	unwarranted assumptions about the test cases, i.e., they assumed
	that all the test scripts matched the wildcard `$(srcdir)/*.test'.

	This failed to properly take into account VPATH builds (where some
	generated tests might be in ${builddir} rather than in ${srcdir}),
	TAP-based tests script (which have a `.tap' extension) and helper
	scripts used by other test cases (which have a `.sh' extension).

	Fixes automake bug#9299.

	* Makefile.am (xtests): New variable, containing a (dynamically
	computed) of files that looks like test cases of the automake
	testsuite.
	Update many rules to use this new variable instead of blindly
	assuming that all the testcases matches the $(srcdir)/tests/*.test
	wildcard.
	* tests/tap-bad-prog.tap: Do a minor formatting change to
	avoid spuriously triggering a match from the syntax check
	`sc_tests_overriding_macros_on_cmdline'.

2011-12-31  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'dist-lzip' into maint

	* dist-lzip:
	  dist: add support for lzip compression

2011-12-30  Stefano Lattarini  <stefano.lattarini@gmail.com>

	test defs: more granular overriding of the make program

	Before this change, the only way the user could override the make
	program used in the automake test cases was to override the $MAKE
	variable in the environment.  This had the annoying side effect of
	requiring that, whenever a non-default make program was to be used
	in the test cases, that same make program had to be used to drive
	the execution of the automake testsuite; otherwise, the recursive
	make invocations could pick up $MAKE from the environment, and use
	that instead of re-executing with the correct make.

	So, for example, if one wanted to try how Solaris /usr/ccs/bin/make
	behaved in the automake test cases, he couldn't run the testsuite
	in parallel mode, because that make lacks support for concurrent
	execution of recipes; on fast machines, this easily meant a 4x or
	higher slow-down.

	Once the problem is clear, the solution is pretty simple: allow
	the use of another variable, besides $MAKE, to override the make
	program to be used in the test cases.

	See also commit `v1.11-1318-g3ceeef4', that introduced a more
	general version of this change to the master branch.

	* tests/defs.in: Allow the make implementation to be used by the
	test cases to be overridden by the `$AM_TESTSUITE_MAKE' variable,
	in preference to the `$MAKE' variable.

2011-12-30  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: fix a couple broken anchors

	* doc/automake.texi: In previous commit v1.11-605-g5f71f2b (related
	to automake bug#8071), we had renamed the chapters about aclocal
	and automake invocation, and added anchors to the old names as not
	to break hyperlinks to our on-line manual.  Unfortunately, these
	anchors had been erroneously placed *before* the relevant `@node'
	commands, instead that just after, so that they ended up pointing
	to the wrong chapters.  Fix this.  Since we are at it, tweak the
	wording of the comments to the anchors to better match that used
	in the autoconf manual.

	Report and suggestion by Eric Blake.

2011-12-30  Antonio Diaz Diaz  <ant_diaz@teleline.es>

	dist: add support for lzip compression

	* NEWS: Update.
	* automake.in (handle_dist): Recognize dist-lzip.
	(make_paragraphs): Map LZIP to dist-lzip.
	* doc/automake.texi (Dist, Options): Describe dist-lzip.
	* lib/Automake/Options.pm (_process_option_list): Recognize
	`dist-lzip'.
	* lib/am/distdir.am (dist-lzip): New target.
	(DIST_ARCHIVES) [?LZIP?]: Add `dist-lzip'.
	(dist, dist-all) [?LZIP?]: Add command to create an lzip-compressed
	tarball.
	(distcheck): Handle lzip-compressed tarballs just like the others.
	* tests/lzip.test: New test.
	* tests/Makefile.am (TESTS): Add it.

2011-12-30  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge remote-tracking branch 'silent-fixes' into maint

	* origin/silent-fixes:
	  fix: last entry in ChangeLog
	  tests: tweak tests on silent-rules for makes without nested vars
	  silent-rules: fallback for makes without nested vars

2011-12-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	docs: fix paragraph names for automake and aclocal invocations

	All the other autotools entitle their invocation nodes
	"autofoo Invocation", whereas automake used to call its
	"Invoking Automake" and "Invoking aclocal".  So let's
	try to be more consistent.

	This change is related to automake bug#8071.

	Suggestion by Reuben Thomas and Eric Blake.

	* doc/automake.texi (Invoking Automake): Node renamed ...
	(automake Invocation): ... to this.
	(Invoking aclocal): Node renamed ...
	(aclocal Invocation): ... to this.
	Add proper @anchor directives to avoid breaking existing web
	hyperlinks still using the old names of the renamed nodes.

2011-12-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	tests: fix spurious failure due to autom4te caching

	* tests/acloca18.test: Remove stale autom4te.cache directories, to
	prevent racy, spurious failures.
	* tests/python11.test: Likewise.  Fix a typo in comments since we
	are at it.

2011-12-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint' into msvc

	* maint:
	  maint: autogenerate ChangeLog

2011-12-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint' into silent-fixes

	* maint:
	  maint: autogenerate ChangeLog
	  fix: last ChangeLog entry
	  tests: drop unnecessary requirement in 'subpkg.test'
	  gitlog-to-changelog: new auxiliary script, synced from gnulib
	  docs: "aclocal --install -I /abs/dir" actually copies files
	  docs: fix node names for automake and aclocal invocations

2011-12-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint' into yacc-work

	* maint:
	  maint: autogenerate ChangeLog

2011-12-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	Merge branch 'maint'

	* maint:
	  maint: autogenerate ChangeLog

2011-12-28  Stefano Lattarini  <stefano.lattarini@gmail.com>

	maint: autogenerate ChangeLog

	Following the practice set by various other GNU projects, we start
	to automatically generate the ChangeLog file from the git commit
	messages.  This will avoid duplication (as the ChangeLog entries
	were always inserted both in the git commit message and in the
	version-controlled ChangeLog file), and potential problems with
	spurious merge conflicts (which, although greatly mitigated by
	Bruno Haible's `git-merge-changelog' helper program, have never
	been completely solved).

	* ChangeLog: Moved ...
	* ChangeLog.11:... to this.
	* Makefile.am (EXTRA_DIST): Add it.
	(gitlog_to_changelog_command, gitlog_to_changelog_options): New
	variables.
	(ChangeLog, am--changelog-regen-hook): New targets.
	* .gitignore: Add ChangeLog.
