build: remove duplicated entries in $(TESTS)
[automake.git] / ChangeLog.11
blob880aabada84afeb0d96eaf43c0e129f39e00769f
1 2011-12-27  Stefano Lattarini  <stefano.lattarini@gmail.com>
3         tests: drop unnecessary requirement in 'subpkg.test'
4         * tests/subpkg.test ($required): Drop "bison", it is not required
5         anymore since commit `v1.11-502-g7e5ae80'.
7 2011-12-27  Stefano Lattarini  <stefano.lattarini@gmail.com>
9         gitlog-to-changelog: new auxiliary script, synced from gnulib
11         We have plans to stop maintaining a version-controlled ChangeLog
12         file in the Automake repository, and instead begin to generate it
13         automatically from the git log messages.  To do so, we will use
14         the `gitlog-to-changelog' script from gnulib.
16         * lib/gitlog-to-changelog: New, synced from gnulib.
17         * Makefile.am (fetch): Fetch and sync it.
18         * lib/Makefile.am (EXTRA_DIST): Distribute it.
20 2011-12-27  Stefano Lattarini  <stefano.lattarini@gmail.com>
22         docs: "aclocal --install -I /abs/dir" actually copies files
24         This change is for automake bug#8407.
26         In the past, there had been some debate and confusion about
27         whether "aclocal --install" should copy third-party .m4 files
28         in the first directory passed to the `-I' option even when
29         such directory was given as an absolute path, or whether it
30         was better to do so only for directories specified with a
31         relative path.
33         The rationale for this latter behaviour was that, before the
34         existence of the `ACLOCAL_PATH' variable, the only way (a poor
35         way, I might add) for a common user to extend the search path
36         of a system-wide installation of aclocal was to export something
37         like ACLOCAL="aclocal -I /my/extra/macros" in the environment.
38         Today, the correct way to proceed is undoubtedly through the
39         use of ACLOCAL_PATH, so we can settle the question once and for
40         all, and start verifying the correct behaviour of `-I' with a
41         new test.
43         * tests/aclocal-install-absdir.test: New test.
44         * tests/Makefile.am (TESTS): Add it.
45         * doc/automake.texi (aclocal Options): Be more explicit about
46         this part of `--install' semantics.
48 2011-12-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
50         docs: fix node names for automake and aclocal invocations
52         With the older node names, an "info automake" command issued
53         from the command line would have opened the node about the
54         invocation of the automake program, rather than the Top node
55         of the automake documentation.  To invoke the Top node, one
56         had to issue the command "info Automake" instead (note the
57         different capitalization).  This was suboptimal, and certainly
58         confusing.
60         With this change, "info automake" will open the Top node of the
61         automake documentation; to access the nodes about the invocation
62         of the automake and aclocal program, one has now to issue "info
63         automake-invocation" and "info aclocal-invocation" respectively.
65         This change fixes automake bug#8071.
67         See also commits `v2.61a-22-ge9215d1' and `v2.61a-72-g8c07b48' in
68         the autoconf git repository, which tackled a similar issue.
70         * doc/automake.texi (@direntry): Rename nodes `aclocal' and
71         `automake' to `aclocal-invocation' and `automake-invocation'
72         respectively.
73         * NEWS: Update.
75 2011-12-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
77         tests: tweak tests on silent-rules for makes without nested vars
78         * tests/silent-nested-vars.test: Define $MAKE to `./mymake' in
79         the environment, so that it will be automatically picked up by
80         configure.  Related tweaks and simplifications.
81         Remove the checks verifying that silent rules are respected also
82         when the 'subdir-objects' option is set, the checks testing the
83         old syntax for user-defined silent rules, and the tests using
84         the default $MAKE programs: they are redundant w.r.t. other test
85         cases.  Related simplifications.
86         Remove the temporary files used in a sanity check as soon as they
87         are not needed anymore.
88         Do not capture also the standard error of configure: we only want
89         to grep its standard output.
90         Consistently use `stdout' for the name of files where to save the
91         standard output captured from make and configure, for consistency
92         with other tests.
93         Make grepping of configure output and of the generated Makefile
94         stricter.
95         Improve and tweak the `mymake' script a little.
96         * tests/silent6.test: Make grepping of make stdout slightly
97         stricter.  After having configured with silent rules disabled,
98         try to force the use silent rules with `make V=1'.
100 2011-12-25  Paul Eggert  <eggert@cs.ucla.edu>
102         silent-rules: fallback for makes without nested vars
104         This fixes two problems reported for Automake (Bug#9928, Bug#10237)
105         and is in response to a bug report for building coreutils on HP
106         NonStop OS (Bug#10234).  The problem is that HP NonStop 'make'
107         treats a line like "AM_V_CC = $(am__v_CC_$(V))" as one that
108         expands a macro with the funny name am__v_CC_$(V instead of the
109         desired name am__v_CC_1 or am__v_CC_0, and since the funny macro
110         is not defined the line is equivalent to "AM_V_CC = )"; this
111         inserts a stray ")" when $(AM_V_CC) is used, which eventually
112         causes 'make' to fail.
114         The basic idea is that instead of generating Makefile.in lines like
115         "AM_V_CC = $(am__v_CC_$(V))", we generate
116         "AM_V_CC = $(am__v_CC_@AM_V@)".  We then AC_SUBST $(V) for @AM_V@
117         in the usual case where `make' supports nested variables,
118         and substitute 1 (or 0) otherwise.  Similarly for usages like
119         $(am__v_CC_$(AM_DEFAULT_VERBOSITY)).
121         With this change, make implementations that doesn't grasp nested
122         variable expansions will still be able to run Makefiles generated
123         using the silent-rules option.  They won't allow the user to
124         override the make verbosity at runtime through redefinition of
125         $(V) (as in "make V=0"); but this is still an improvement over not
126         being able to work at all.
128         * NEWS: Document this.
129         * automake.in (define_verbose_var): When defining the variables,
130         use @AM_V@ rather than $(V), and use @AM_DEFAULT_V@ rather than
131         $(AM_DEFAULT_VERBOSITY).
132         * doc/automake.texi (Automake silent-rules Option): Explain new system.
133         * m4/silent.m4 (AM_SILENT_RULES): Check whether `make' supports
134         nested variables, and substitute AM_V and AM_DEFAULT_V accordingly.
135         * tests/silent-nested-vars.test: New test.
136         * tests/Makefile.am (TESTS): Add it.
138 2011-12-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
140         gitignore: use only one .gitignore file, in the top-level directory
141         * doc/.gitignore, doc/amhello/.gitignore, lib/Automake/.gitignore,
142         lib/Automake/tests/.gitignore, tests/.gitignore: Deleted, their
143         contents merged into ...
144         * .gitignore: ... this top-level file.  Since we are at it, improve
145         it by anchoring files where it makes sense.
147 2011-12-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
149         tests: one more fixlet for gettext macros requirement
150         * tests/gettext-macros.test (configure.in): Add calls to
151         AC_INIT and AC_PROG_CC, to avoid a spurious failure in the
152         later aclocal invocation.
153         Luckily, this wart wasn't causing any spurious SKIP or FAIL,
154         but only the redundant addition to the `-Wno-syntax' option
155         to some aclocal invocations in the gettext tests.
157 2011-12-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
159         tests: fix handling of gettext macros requirement
161         The code introduced in the earlier change `v1.11-581-gb7d67d5'
162         and aimed at automatically fetching all the .m4 files provided by
163         gettext has proven inadequate, since it hasn't managed to truly
164         and always get *all* the required .m4 files.  For example, it has
165         failed to fetch the file `intldir.m4' (present in gettext 0.18.1,
166         and where the macro `AM_GNU_GETTEXT_INTL_SUBDIR' is defined),
167         which in turn has caused spurious SKIPs of at least the test
168         `gettext3.test'.
170         The reason for this debacle is that autopoint looks at the version
171         specified in AM_GNU_GETTEXT_VERSION to decide which version of the
172         gettext infrastructure to bring in; since we were unconditionally
173         specifying the older 0.10.35 version, the newer `.m4' files weren't
174         brought in.
176         * tests/gettext-macros.test: In AM_GNU_GETTEXT_VERSION, instead
177         of unconditionally specifying the older 0.10.35 version, specify
178         the version of the available `gettextize' or `autopoint' program,
179         dynamically extracted with the help of ...
180         (extract_program_version):... this new function, and saved ...
181         ($autopoint_version): ... in this new variable.
183 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
185         tests: fix failure due to debugging code forgotten into a test
186         * tests/missing-tar.test: Don't ever call the `missing' script
187         with `sh -x'; this was used for debugging, but an instance of
188         it slipped into the committed test case.  Bug revealed by a
189         failure on a Solaris 10 system with GNU tar installed as `gtar'.
191 2011-12-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
193         tests: avoid spurious failure of libtool and gettext tests
195         On Solaris 10 (and presumably earlier), /bin/sh trips up on
196         here-documents that contains a command substitution *and* are
197         fed to a shell function:
199           # All as expected.
200           $ cat <<END
201           `pwd`
202           END
203           /home/stefano
204           $ echo status = $?
205           status = 0
207           # An apparently innocuous function ...
208           $ kitty () { cat; }
209           # ... but hilarity ensues!
210           $ kitty <<END
211           `pwd`
212           END
213           /tmp/sh137723: cannot open
214           $ echo status = $?
215           status = 1
217         We need to work around this misbehaviour in a couple of our
218         tests (whose failures where causing cascading failures in a
219         lot of other tests).
221         * tests/gettext-macros.test: Avoid the use of command substitution
222         in a here-document passed to the `indent' function, by using the
223         `echo' builtin instead.
224         * tests/libtool-macros.test: Likewise.
226         See also:
227         <http://lists.gnu.org/archive/html/bug-autoconf/2011-12/msg00001.html>
229 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
231         hacking: distribute it, and mention it in the ChangeLog
232         Not distributing the HACKING file might make it more difficult,
233         for some random curious user, to get informed about or interested
234         in the Automake development process, or to send us patches.
235         * Makefile.am (EXTRA_DIST): Add HACKING.
236         * HACKING: It's OK to distribute this file, and to mention it in
237         the ChangeLog.
239 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
241         regex: deprecate the obsolete macro AM_WITH_REGEX
242         This is a backport of commit v1.11-433-g37b0aee.
243         Today, practically nobody uses the GNU rx library, which, according
244         to its own website <http://www.gnu.org/software/rx/rx.html>, has
245         been "decommissioned".  Consequently, the automake-provided macro
246         AM_WITH_REGEX is not used nor required anymore.  Deprecate it, so
247         that it will be possible to safely remove it in the next major
248         automake version.
249         * m4/regex.m4 (AM_WITH_REGEX): Give a warning of the class
250         `obsolete' when this macro is used.
251         * doc/automake.texi (Public Macros): Move description of
252         `AM_WITH_REGEX' from here ...
253         (Obsolete Macros): ... to here, and declare it as obsolete
254         and "to be removed in a future version".
255         * tests/regex-obsolete.test: New test.
256         * tests/Makefile.am (TESTS): Add it.
257         * NEWS: Update.
258         See also:
259         <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00131.html>
261 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
263         maint: distribute .xz tarballs, not .bz2 ones
264         Many GNU packages are moving towards xz-compressed tarballs, so
265         let's follow suit, by dropping the creation and distribution of
266         a bzip2-compressed tarball and switching to xz instead.
267         For compatibility and safeness, we will continue to create and
268         distribute a gzip-compressed tarball as well.
269         * configure.ac (AM_INIT_AUTOMAKE): Drop `dist-bzip2', add
270         `dist-xz'.
271         * NEWS: Update
272         Suggested by Jim Meyering.
274 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
276         include: avoid "deleted .am file" problem
277         * automake.in (handle_configure): When processing `configure.am',
278         also expand `HAVE-MAKEFILE-IN-DEPS' to a boolean telling whether
279         `MAKEFILE-IN-DEPS' is empty or not.
280         * lib/am/configure.am [?HAVE-MAKEFILE-IN-DEPS?]
281         (%MAKEFILE-IN-DEPS%): New target without dependencies, to
282         avoid the "deleted .am file" problem.  Emit this only when
283         `?HAVE-MAKEFILE-IN-DEPS?' is true, to avoid generating an
284         "empty" dependency declaration.
285         * tests/deleted-am.test: Make grepping of error message stricter.
286         * tests/dist-missing-am.test: Likewise.
287         * tests/remake-deleted-am.test: New test.
288         * tests/remake-deleted-am-2.test: Likewise.
289         * tests/remake-deleted-am-subdir.test: Likewise.
290         * tests/remake-renamed-am.test: Likewise.
291         * tests/makefile-deps.test: Likewise.
292         * tests/Makefile.am (TESTS): Add the new tests.
293         * NEWS: Update.
294         Fixes automake bug#9768.
295         Report by Peter Johansson.
296         See also commit `Release-1-10-40-gd0ebf71', which fixed a similar
297         problem for .m4 files included by configure.ac.
299 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
301         maint: better use of autoconf 2.68 features
302         * configure.ac: Now that Automake requires autoconf 2.68 for its
303         own bootstrapping and build system, we can assume that PACKAGE_URL
304         gets automatically AC_SUBT'd.
306 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
308         cosmetics: use proper m4 quoting in configure.ac
309         * configure.ac (AC_CONFIG_SRCDIR): Use proper m4 quoting
310         for its arguments.
311         (AC_CONFIG_AUX_DIR): Likewise.
312         (AC_PROG_PATH): Likewise.
314 2011-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
316         tests: better handling of gettext and libtool requirements
318         This change fixes automake bug#9807.
320         Before this change, the automake testsuite only looked for the
321         `.m4' files containing libtool and gettext macros definitions in
322         the directory `${prefix}/share/aclocal' (and in the directories
323         specified by the `dirlist' file in there, if any), where ${prefix}
324         was the configure-time automake installation prefix (defaulting
325         to `/usr/local').
327         This approach had various shortcomings and disadvantages.  Let's
328         briefly describe the three major ones.
330         First, on most GNU/Linux systems, a libtool or gettext installed
331         from distro-provided packages (e.g., by dpkg on Debian/Ubuntu, or
332         by rmp on RedHat/Fedora) would have `/usr', not `/usr/local', as
333         its ${prefix}; so, trying to run the automake testsuite with a
334         simple "./configure && make && make check" would have failed to
335         execute the libtool and gettext tests on most GNU/Linux distros.
336         It's true that it was quite easy to work around this issue, by
337         creating a proper `/usr/local/share/aclocal/dirlist' file with
338         an entry pointing to `/usr/share/aclocal' (a workaround in fact
339         used by most automake developers); but the typical user wasn't
340         aware of the necessity of this trick, so the libtool and gettext
341         tests was usually skipped on testsuite runs "in the wild", thus
342         needlessly reducing coverage.
344         Second, the older testsuite behaviour made more difficult for
345         the developers to run the testsuite with non-default libtool or
346         gettext.  For example, assume the developer is working on a system
347         that has a default libtool version 1.5 installed in the /usr/local
348         hierarchy; to improve coverage, the developer installs also a more
349         modern libtool version, say 2.4, in its home directory, let's say
350         in ~/libtool-2.4; he then tries to run the automake testsuite with
351         this more modern libtool by doing an (apparently) simple:
352           $ PATH=$HOME/libtool-2.4:$PATH make check
353         But the automake testsuite would still look for libtool macros in
354         /usr/local/share/aclocal, not in ~/libtool-2.4/share/aclocal, so
355         the wrong version of the macros would be picked up, and the tests
356         would either fail spuriously or (which would be worse) pass without
357         truly covering the libtool version the developers was thinking to
358         be testing with.
359         Worse again, the automake testsuite would *unconditionally* look
360         for libtool macros in /usr/local/share/aclocal, so even something
361         like:
362           $ export ACLOCAL_PATH=$HOME/libtool-2.4/share/aclocal
363           $ PATH=$HOME/libtool-2.4:$PATH make check
364         wouldn't work.
366         Third and last, during a "make distcheck", automake is configured
367         with a ${prefix} pointing to a proper subdirectory of the build
368         directory (usually `pwd`/_inst), which gets created on-the-fly;
369         in this case, with the old approach, the automake testsuite never
370         found the libtool and gettext macro files, ans so the libtool and
371         gettext tests was *always* skipped in a "make distcheck".
373         * tests/libtool-macros.test: New helper test, looking (with the
374         help of the `libtoolize' script) for libtool macro files required
375         by most libtool tests, and making them easily accessible.
376         * tests/gettext-macros.test: New helper test, looking (with the
377         help of the `libtoolize' script) for libtool macro files required
378         by most libtool tests, and making them easily accessible.
379         * tests/defs.in: Update to make it rely on the results and setups
380         of `libtool-macros.test' and `gettext-macros.test'.
381         * tests/Makefile.am: Declare dependency of all the logs of libtool
382         tests from `libtool-macros.log', and all the logs of gettext tests
383         from `gettext-macros.log'.
384         (TESTS): Add the new tests.
386 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
388         fix: typos and grammaros in comments of the new test
389         * tests/get-sysconf.test: Fix few typos, grammaros and botched
390         wording.  Reported by Eric Blake.
392 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
394         tests: report useful system information in 'test-suite.log'
395         It has already happened various times that a user has run the
396         automake testsuite, experienced a failure, read the messages
397         telling him "See tests/test-suite.log" and "Please report to
398         bug-automake@gnu.org", and done exactly that -- sending us only
399         the contents of `tests/test-suite.log', which are usually not
400         enough to start debugging the reported failure.  So we have to
401         ask him for more details, and usually also for the `config.log'
402         file generated by configure.  It's time to fix this recurring
403         feedback inefficiency.  We do so by creating a dummy test case
404         that takes care of copying the contents of `config.log', plus
405         other useful system information, in the final `test-suite.log'.
406         * tests/get-sysconf.test: New test, gathering system information
407         and then always terminating with a SKIP, so that its output gets
408         copied in `test-suite.log'.
409         * tests/Makefile.am (TESTS): Add it.
411 2011-12-07  Reuben Thomas  <rrt@sc3d.org>  (tiny change)
413         python: remove relics for Python 1.5 support
414         * m4/python.m4: The comments in here claim to support only
415         Python >= 2.0, yet this file still has specific support for
416         Python 1.5.  Just remove it, python 1.5 is 12 years old now,
417         and practically defunct.
418         * NEWS: Update.
419         See also commit `Release-1-10-205-gd5bec12', "Support for
420         Python 3.0, drop support for pre-2.0."
422 2011-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
424         configure: remove extraneous 'eval's from AM_RUN_LOG invocations
425         * configure.ac: Remove extra 'eval's from AM_RUN_LOG invocations;
426         for example, instead of "AM_RUN_LOG([eval $PERL --version])",
427         simply use "AM_RUN_LOG([$PERL --version])"
429 2011-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
431         configure: report TeX version in config.log
432         * configure.ac: If possible, report the version of the selected
433         TeX program; this should render the logs more informative.
435 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
437         maint: snapshots from `maint' are still development snapshots
438         The maintenance-oriented development line in the `maint' branch,
439         while being usually pretty stable and 99% backward-compatible,
440         is not always right off production-quality; but until now, the
441         Automake package version declared in configure.ac hid this fact,
442         since it appeared to be the version of a stable release (e.g.,
443         11.1).  Fix this.
444         * configure.ac (AC_INIT): Bump version to "1.11.0a".
446 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
448         configure: print proper message for test releases
449         * configure.ac: If the current release is detected to be a test
450         release or a development snapshot, print a proper warning for
451         the user.
452         * README-alpha: Delete, it's obsolete now (and in fact this file
453         hasn't been touched in eleven years, since release 1.4b or so).
454         * HACKING (Release procedure): Don't say to update README-alpha.
456 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
458         devel: help in comparing Makefile.in from different commits
459         Now that the generated Makefile.in, configure and aclocal.m4 files
460         are no longer committed in Automake's git repository, a simple
461         "git diff" or "git log" no longer shows if and how a change in
462         Automake results in changes to the Makefile.in files and/or
463         configure script of its own build system.  Still, the ability to
464         peek so easily at such differences has proved itself quite useful
465         in the past, often revealing inconsistencies and blunders, and
466         sometimes even bugs; so it would be a pity to lose that altogether.
467         With this change, we add a new maintainer recipe that re-introduces
468         much of that capability, by generating and comparing on the fly the
469         Makefile.in, configure and aclocal.m4 derived from two arbitrary
470         commits of the Automake repository.
471         * Makefile.am (autodiffs, compare-autodiffs): New phony targets.
473 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
475         repo: don't commit generated files in the git repository anymore
476         It has been quite some time since autoconf and libtool have stopped
477         committing the generated autotools files in their git repositories,
478         with no significant ill effects we're aware of.  It's true that the
479         autoconf bootstrap process has now the minor annoyance that a
480         pre-installed autoconf is required to complete it; but luckily
481         automake will not have a similar annoyance, since our bootstrap
482         script take care, through some hoops, to use the very automake and
483         aclocal versions from the current git checkout to generate the
484         required aclocal.m4 and Makefile.in files.  In fact, this has been
485         a necessity also in the past, because automake has been known to
486         use in its own build system new development features that hadn't
487         been present in any previously released automake distribution.
488         * .gitignore: Ignore configure, aclocal.m4, and all the
489         Makefile.in files.
490         * configure.ac (AC_PREREQ): New macro call, to require the
491         latest autoconf (2.68 for the moment).
493 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
495         missing: don't try to re-run tar with a munged command line
496         * lib/missing: If the default `tar' program fails with the given
497         arguments, and GNU tar is not available, don't try to re-run the
498         default `tar' with a munged command line (e.g., ditching possibly
499         unportable options), as that could be subtly alter the intended
500         semantics (and maybe even create a somewhat corrupted tarball).
501         Also, it's worth noting that the main purpose of the `missing'
502         script is to allow a non-developer to build the package in the
503         face of slightly-skewed timestamps, not to provide wrappers for
504         all the maintainer tools -- so we don't have to try too hard
505         when `missing' is just called to wrap `tar'.
506         * tests/missing-tar.test: New test.
507         * tests/Makefile.am (TESTS): Add it.
509 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
511         missing: inform the user if GNU tar is called
512         * lib/missing: If the code trying to run GNU tar is reached, it
513         means that the previous attempt to run the default tar program
514         has failed, very likely producing some error message.  At this
515         point, just running GNU tar without further comments might be
516         confusing.
518 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
520         missing: if GNU tar exists but fails when called, give up
521         * lib/missing: If the code trying to run GNU tar is reached,
522         don't continue if the invoked GNU tar program fails, as there
523         is little point in doing so (and can even be confusing and
524         counter-productive).
526 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
528         missing: miscellaneous fixlets
529         * lib/missing: Some shells, such as Solaris or FreeBSD /bin/sh,
530         warn about missing programs before performing redirections.
531         Therefore, where we have to silently check whether a program
532         exists, perform redirections on a subshell.
533         Remove redundant uses of double-quotes in variable definitions.
534         Delete an extra blank line.
536 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
538         maint: remove executable bit from automake.in
539         * automake.in: This file is not meant to be executed, only to
540         be preprocessed to create the `automake' script; so don't leave
541         it executable.
543 2011-12-20  Peter Rosin  <peda@lysator.liu.se>
545         tests: fix spurious failure on systems lacking unistd.h
546         This is for automake bug#10324.
547         * tests/silent-lex-generic.test (foo.l): Add a dummy #define of
548         YY_NO_UNISTD_H, so that the generated foo.c file won't require
549         unistd.h to be present (it is not present when compiling with,
550         e.g., MSVC 9).
552 2011-12-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
554         test defs: hack to support autoconf-wrapper programs
555         * tests/defs.in ($AUTOCONF): Add a dummy `-B' option to the
556         autoconf invocation, so that, when the Debian autoconf wrapper
557         is involved, it will correctly dispatch an autoconf >= 2.50
558         instead of defaulting to autoconf 2.13.
559         ($AUTOHEADER, $AUTORECONF): Likewise, but for autoheader and
560         autoreconf respectively.
561         Reported by Bruno Haible:
562         <http://lists.gnu.org/archive/html/automake/2011-12/msg00039.html>
564 2011-12-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
566         tests: fix a minor spurious failure with FreeBSD make
567         * tests/remake-am-pr10111.test: Avoid using `#' comments in
568         makefile recipes, as these have been confusing FreeBSD make.
569         The failure was masked by the fact that this test is currently
570         expected to fail.
571         Suggested by a report from Bruno Haible.
573 2011-12-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
575         tests: make two test scripts executable
576         * tests/remake-am-pr10111.test: Make executable.
577         * tests/remake-m4-pr10111.test: Likewise.
579 2011-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
581         readme: reference webpages for automake mailing lists
582         * README: Rationalize and reorganize the (brief) description of
583         the automake mailing lists.   In particular, instead of suggesting
584         the reader to write to the `-request' addresses to subscribe to
585         mailing lists, point him to the relevant webpages, where he can
586         also subscribe via a web form.
588 2011-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
590         readme: update advice about testsuite execution
591         * README: Now that the automake testsuite uses the parallel-tests
592         driver, there is no need for the user to capture the stdout of
593         "make check" to determine which tests have failed: a detailed log
594         is automatically saved into the `tests/test-suite.log' file.
595         Since we are at it, improve the wording by dropping an extra
596         "please".
598 2011-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
600         readme: don't reference the old homepage at sources.redhat.com
601         * README: Don't reference the old homepage at sources.redhat.com,
602         which is no longer active; reference the homepage on www.gnu.org
603         instead.  See also automake bug#10157 and bug#10248.
604         * tests/README: Likewise, and remove related extra-pedantic advice
605         about copyright papers for test cases (we'll ask for those papers
606         explicitly when we think they are warranted).
608 2011-12-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
610         hacking: some more fixlets
611         * HACKING (Release Procedure): Place the list of pre-release
612         bootstrap-and-test commands on a line of its own, so it's easy to
613         select and then paste it into a terminal window.
614         Fix the explanation of "make git-release", as, since the previous
615         change, "make git-release" would simply run "make dist" rather
616         than "make distcheck".
617         Suggestion from Jim Meyering.
619 2011-12-12  Peter Rosin  <peda@lysator.liu.se>
621         * NEWS: Fix typo in 'make dist-bzip2' description.
623 2011-12-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
625         release: don't run "make distcheck" automatically
626         * Makefile.am (git-dist): The developers should test extensively
627         before finally creating the release tarball; so don't run "make
628         distcheck" on their behalf here; instead ...
629         * HACKING (Release procedure): ... state here that "make check"
630         and "make distcheck" should be run before calling "make git-dist".
632 2011-12-09  Jim Meyering  <meyering@redhat.com>
633             Stefano Lattarini  <stefano.lattarini@gmail.com>
635         dist-xz, dist-bzip2: don't hard-code -9, honor envvar settings
636         Before the present change, automake-generated `dist-xz' rule used
637         a hard-coded `xz -9'.  That was a problem because on this front,
638         xz differs from gzip and bzip2.  While the latter two don't incur
639         any run-time decompression penalty for using a higher compression
640         level, specifying -9 with xz imposes a potentially fatal virtual
641         memory requirement on any client that wants to decompress your
642         tar.xz file.
643         People have complained that a tarball compressed with -9 cannot
644         be uncompressed in a low-memory environment (wrt-based embedded).
645         Hence, instead of defaulting to -9, which is useful only for very
646         large tarballs, it defaults to -e (equivalent to -6e).  This
647         limits the default memory requirements imposed on decompressors,
648         yet still gives very good compression ratios.
649         * lib/am/distdir.am (dist-xz): Do not hard-code xz's -9: that made
650         it impossible to override.  Actually don't default to -9, either,
651         since that induced inordinately large virtual memory usage when
652         merely decompressing.  Instead, use its XZ_OPT envvar, defaulting
653         to -e if not defined.  Suggested by Lasse Collin.
654         (dist, dist-all) [?XZ?]: Likewise
655         (dist-bzip2): Similarly, do not hard-code -9, but do continue to
656         use -9 by default.  Honor the BZIP2 envvar.
657         (dist, dist-all) [?BZIP2?]: Likewise
658         * NEWS: Update.
659         * doc/automake.texi (The Types of Distributions): Describe the
660         newly enabled environment variables.
662 2011-12-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
664         * NEWS: Fix typos, grammaros and suboptimal wording.
665         Reported by Jim Meyering.
667 2011-12-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
669         maint: sync auxiliary files from upstream
670         * lib/texinfo.tex: Synced from upstream, by "make fetch".
671         * lib/config.guess: Likewise.
672         * lib/config.sub: Likewise.
674 2011-12-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
676         tests: fix spurious failures due to missing 'yywrap()' function
678         The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
679         the "lex library" expected to provide a `yywrap' function (function
680         which is required to link most lex-generated programs).  On the
681         contrary, when all the link attempts (i.e., with `-ll' and `-lfl')
682         fail, configure declares that no lex library is needed, and simply
683         proceeds with the configuration process -- only for the build to
684         possibly fail later, at make time.
686         This behaviour is intended; the Autoconf manual reads:
687          ``You are encouraged to use Flex in your sources, since it is
688            both more pleasant to use than plain Lex and the C source it
689            produces is portable.  In order to ensure portability, however,
690            you must either provide a function `yywrap' or, if you don't use
691            it (e.g., your scanner has no `#include'-like feature), simply
692            include a `%noyywrap' statement in the scanner's source.''
694         This AC_PROG_LEX behaviour is causing some spurious failures of
695         the Automake testsuite in environments which lack a proper library
696         providing `yywrap' (this happens for example on Fedora-based
697         systems).   The proper workaround is to simply provide a fall-back
698         implementation of `yywrap' in our lexers.
700         See also partially-overlapping commit `v1.11-871-geb147a1' (from
701         the 'testsuite-work' branch), which was motivated by similar
702         spurious failures experienced when cross-compiling.
704         From a report by Jim Meyering:
705         <http://lists.gnu.org/archive/html/automake-patches/2011-10/msg00092.html>
707         * tests/cond35.test: Provide a dummy `yywrap' function.
708         * tests/lex3.test: Likewise.
709         * tests/silent-lex-generic.test: Likewise.
710         * tests/silent-lex-gcc.test: Likewise.
711         * tests/silent-many-generic.test: Likewise.
712         * tests/silent-many-gcc.test: Likewise.
714 2011-12-04  Paul Eggert  <eggert@cs.ucla.edu>
716         depcomp: spelling fix
717         * lib/depcomp (-h): Fix misspelling in usage diagnostic.
719 2011-11-28  Peter Rosin  <peda@lysator.liu.se>
721         tests: fix 'distcheck-override-infodir.test' on Cygwin
722         * tests/distcheck-override-infodir.test (Makefile.am): Do not add
723         any `/' between $(DESTDIR) and the following paths.  Otherwise,
724         when $(DESTDIR) is empty, the recipes will try to access files
725         with a leading double slash, which have an implementation-defined
726         interpretation (e.g., for Cygwin, they mean UNC paths).
728 2011-11-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
730         cosmetics: typofix in comments
731         * tests/remake-am-pr10111.test (Makefile.am): Fix typo in comments.
732         * THANKS: Update.
733         Reported by Krzysztof Żelechowski.
735 2011-11-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
737         coverage: undistributed '.am' and '.m4' files are diagnosed
738         The stub rules emitted to work around the "deleted header problem"
739         for `.m4' files (included by autoconf in e.g., configure.ac) and
740         for `.am' files (included by automake in e.g., Makefile.am) should
741         not prevent "make" from correctly complaining when such a required
742         file is missing from a distribution tarball.
743         * tests/dist-missing-am.test: New test.
744         * tests/dist-missing-m4.test: Likewise.
745         * tests/dist-missing-included-m4.test: Likewise.
746         * tests/Makefile.am (TESTS): Add them.
747         Suggestion by Ralf Wildenhues.
749 2011-11-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
751         coverage: required but missing '.am' and '.m4' files are diagnosed
752         The stub rules emitted to work around the "deleted header problem"
753         for `.m4' files (included by autoconf in e.g., configure.ac) and
754         for `.am' files (included by automake in e.g., Makefile.am) should
755         not prevent the remake rules from correctly erroring out when a
756         still-required file is missing.
757         * tests/deleted-am.test: New test.
758         * tests/deleted-m4.test: Likewise.
759         * tests/Makefile.am (TESTS): Add them.
761 2011-11-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
763         coverage: expose automake bug#10111 in the testsuite
764         * tests/remake-am-pr10111.test: New test, xfailing.
765         * tests/remake-m4-pr10111.test: Likewise.
766         * tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.
768 2011-11-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
770         texinfo: work around Solaris 10 xpg4 shell bug in install rules
771         * lib/am/texinfos.am (install-html-am): Use an extra variable
772         indirection to work around a bug in Solaris 10 /usr/xpg4/bin/sh.
773         Bug revealed by a failure of `txinfo21.test'.  See also:
774         <http://lists.gnu.org/archive/html/bug-autoconf/2011-11/msg00005.html>
775         <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10026#23>
777 2011-11-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
779         configure: report perl version in config.log
780         * configure.ac: Report the version of the selected perl interpreter
781         in config.log; this should render the logs more informative.
783 2011-11-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
785         tests: fix spurious failure with older install-info
786         * tests/install-info-dir.test (foo.texi): Also add proper
787         `@settitle', `@dircategory' and `@direntry' directive, otherwise
788         older versions of `install-info' (e.g., 4.8) will fail to create
789         the `dir' index file in ${infodir}.
790         Problem revealed by a failure on NetBSD 5.1.
792 2011-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
794         maintcheck: fix spurious failure in 'color2.test'
795         * tests/color2.test: Avoid creative quoting to avoid a spurious
796         failure of the `sc_tests_Exit_not_exit' maintainer check.
798 2011-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
800         tests: fix spurious error in 'uninstall-fail.test' on Solaris
801         * tests/uninstall-fail.test: Solaris 10 /usr/xpg4/bin/sh can add
802         a line number before the `:' in the error messages issued by shell
803         builtins.  Account for that in our grepping of make output.
805 2011-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
807         tests: fix typo in 'uninstall-fail.test'
808         * tests/uninstall-fail.test: Always use `$rm_f_is_silent_on_error'
809         instead of the bogus `$rm_f_is_silent_on_failure'.
811 2011-11-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
813         tests: avoid a spurious failure of 'ltinit.test' MinGW
814         * tests/ltinit.test: Be laxer in grepping configure output, to
815         avoid spurious failures on systems which lack POSIX dynamic
816         linking (e.g., MinGW), or when cross-compiling for such systems.
817         See also commit `v1.11-855-ge9e5d4a'.
818         Report and suggestion from Peter Rosin.
820 2011-11-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
822         tests: testsuite is now safe to run with dmake in parallel mode
823         * tests/defs.in: Unset variables DMAKE_CHILD, DMAKE_DEF_PRINTED
824         and DMAKE_MAX_JOBS, which are exported by Solaris dmake when run
825         in parallel mode, and which might confuse make processes spawned
826         by our testsuite.
828 2011-11-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
830         tests: fix spurious failures w.r.t. parallel make and colorization
831         * tests/color2.test: Skip the test if the $MAKE program fails to
832         consider the standard output as a tty when spawned by `expect'.
833         This is required for make implementations, like FreeBSD make and
834         Solaris dmake, that redirect the output of recipes to temporary
835         files or pipes when run in parallel mode.  Since we are at it,
836         simplify the detection of a working `expect' program, and throw
837         in other minor simplifications.
839 2011-11-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
841         tests: fix spurious failure in 'distcheck-override-infodir.test'
842         * tests/distcheck-override-infodir.test ($required): Add
843         'install-info'.
845 2011-11-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
847         tests: avoid another failure of 'uninstall-fail.test' on Solaris
848         * tests/uninstall-fail.test: On Solaris 10, if `/bin/rm' is run
849         with the `-f' option, it doesn't print any error message when
850         failing to remove a file (due to e.g., "Permission denied").
851         Yikes.  Cater to this incompatibility, by relaxing the test when
852         a faulty `rm' is detected.
854 2011-11-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
856         tests: various minor tweakings, mostly related to AM_PROG_AR
857         * tests/alloca2.test: Ensure we don't experience a spurious failure
858         due to a missing `AM_PROG_AR' macro or a missing `ar-lib' auxiliary
859         script.
860         * tests/libtool4.test: Likewise.
861         * tests/ldadd.test: Likewise.  Since we are at it, make grepping of
862         automake stderr stricter.
863         * tests/reqd2.test: Likewise.
864         * tests/pr211.test: Ensure automake fails also with `-Wnone', since
865         the error we are testing for is an hard error, not a mere warning.
866         * tests/syntax.test: Likewise, and ensure we don't fail to other
867         errors by removing use of `lib_LTLIBRARIES' in Makefile.am.  Since
868         we are at it, make grepping of automake stderr stricter.
870 2011-11-05  Stefano Lattarini  <stefano.lattarini@gmail.com>
872         ar-lib: fix configure output for "unrecognized archiver interface"
873         * m4/ar-lib.m4: Ensure that, even when an error is hit while trying
874         to determine the archiver interface kind, the "checking archiver
875         interface" message from configure is properly terminated before
876         an error message is printed, to avoid slightly garbled output.
877         * tests/ar4.test: Enhance.
878         * tests/ar5.test: Likewise.
880 2011-11-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
882         warnings: fix buglets for portability warnings
883         * lib/Automake/ChannelDefs.pm (switch_warning): Ensure the
884         correct implications and inter-dependencies between warnings
885         in the categories `portability', `extra-portability' and
886         `recursive-portability' are respected.  Also add detailed
887         explicative comments, and references to the relevant tests.
888         * tests/dollarvar2.test: Update and extend.  Also, remove
889         some unnecessary uses of `--force' option in automake calls.
890         * tests/extra-portability3.test: New test.
891         * tests/Makefile.am (TESTS): Add it.
893 2011-11-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
895         tests: extend tests on 'extra-portability' warning category
896         * tests/extra-portability.test: Redefine `$AUTOMAKE' to ensure we
897         have complete control over the automake options.  Extend by using
898         also a setup where no `portability' warning is present (only an
899         `extra-portability' warning is).  Other minor extensions.  Remove
900         some redundant, verbose comments about the expected diagnostic.
902 2011-11-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
904         tests: various minor tweakings, mostly related to AM_PROG_AR
905         * tests/alloca.test: Adjust to new portability requirements due
906         to the new AM_PROG_AR macro.
907         * tests/discover.test: Likewise.
908         * tests/libobj3.test: Likewise.
909         * tests/pluseq7.test: Likewise.  Also, make grepping of automake
910         expected error message stricter.
911         * tests/stdlib.test: Likewise, and extend the test a bit.
912         * tests/parse.test (configure.in): Remove redundant call to
913         AC_PROG_RANLIB.
914         * tests/library2.test: Adjust to new portability requirements
915         due to the new AM_PROG_AR macro.  Also ...
916         (configure.in): ... add call to AC_PROG_CC, to ensure automake
917         really fails for the expected reason.
919 2011-11-03  Zack Weinberg <zackw@panix.com>  (tiny change)
920             Stefano Lattarini  <stefano.lattarini@gmail.com>
922         maint-mode: fix botched configure messages
923         This change fixes automake bug#9890.
924         * m4/maintainer.m4 (AM_MAINTAINER_MODE): Fix the "checking ..."
925         configure message related to the enabling/disabling of maintainer
926         mode.
927         * tests/help-maintainer.test: Renamed ...
928         * tests/maintmode-configure-msg.test: ... to this, and extended
929         to cover the fixed bug.  Also, since we are at it, make grepping
930         of configure help screens stricter, and throw in some few other
931         changes to reduce code duplication and enhance readability.
932         * tests/Makefile.am (TESTS): Update.
933         * THANKS: Update with Zack's new e-mail address.
934         Report and initial patch by Zack Weinberg, test cases added by
935         Stefano Lattarini.
937 2011-10-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
939         info: allow user to inhibit creation/update of '${infodir}/dir'
940         With this change, we allow the user to request the install-info
941         rules not to update the `${infodir}/dir' file, by setting the
942         environment variable `AM_UPDATE_INFO_DIR' to the value "no".
943         This is especially useful to distro packagers, and is a definite
944         improvement over our previous hack of looking whether the
945         `install-info' program was the Debian or GNU version -- hack
946         which had been silently broken with recent versions of debian
947         install-info BTW (probably since dpkg 1.15.4, 2009-09-06).
948         This change fixes automake bug#9773.  See also Debian Bug#543992.
949         * lib/am/texinfos.am: Don't look anymore at the output of
950         `install-info --version' to decide whether to use it to update
951         the `${infodir}/dir' or not; instead, honour the environment
952         variable `AM_UPDATE_INFO_DIR'.
953         * tests/install-info-dir.test: New test.
954         * tests/Makefile.am (TESTS): Add it.
955         * tests/defs: Also unset `AM_UPDATE_INFO_DIR', to avoid unwanted
956         interferences from the environment.
957         * doc/automake.texi (Texinfo): Update.
958         * NEWS: Likewise.
959         * THANKS: Likewise.
960         Report by Jonathan Nieder.
962 2011-10-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
964         deps: partially revert commit `v1.11-512-geeee551'
965         This change partly reverts commit "Create subdirs for generated
966         sources even when not dep tracking", of 2011-04-02.
967         That commit had caused the bugs #8485 and #8526.  Since we are
968         nearing the bug-fixing automake release 1.11.2, the safest policy
969         at the moment is to just revert the problematic hunks: an older,
970         known bug is better than a regression.
971         * automake.in (handle_single_transform): Don't add a dirstamp
972         dependency, even when $object is derived and lands in a subdir.
973         * tests/Makefile.am (XFAIL_TESTS): Add lex-subobj-nodep.test,
974         remove yacc-dist-nobuild-subdir.test.
976 2011-10-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
978         tests: few improvements to some `ar-lib' related tests
980         * tests/ar-lib5a.test (Makefile.am): Also check that the target
981         library has truly been created.
982         (ar-lib): Use the real `ar-lib' script (mildly patched) rather
983         than a dummy one, to ensure better "real-life coverage".  Fix
984         botched shebang line.
985         * tests/ar-lib5b.test: Extend the PATH variable to make the dummy
986         `lib' script accessible, instead of explicitly calling it by its
987         relative/absolute path.
988         (ar-lib): Fix botched shebang line.
989         (bin/lib): Likewise.  Also, add explicative comments, and make
990         slightly stricter.
992 2011-10-24  Peter Rosin  <peda@lysator.liu.se>
994         Merge branch 'maint' into msvc
996         * tests/subpkg-yacc.test: Adjust to new portability requirements due
997         to the new AM_PROG_AR macro.
999 2011-10-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1001         dejagnu: allow the package developer to extend site.exp
1002         Fixes automake bug#7873.
1003         * lib/am/dejagnu.am (site.exp): Depend from the files listed in
1004         $(EXTRA_DEJAGNU_SITE_CONFIG), if any.  Append their contents to
1005         the generated site.exp (still preserving user edits).
1006         * doc/automake.texi (Dejagnu Tests): Update.
1007         * tests/dejagnu-siteexp-append.test: New test.
1008         * tests/dejagnu-siteexp-extend.test: Likewise.
1009         * tests/dejagnu-siteexp-useredit.test: Likewise.
1010         * tests/Makefile.am (TESTS): Update.
1011         * NEWS: Update.
1012         Suggestion by Rainer Orth.
1014 2011-10-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1016         dejagnu: ensure 'srcdir' is defined as a relative directory
1017         This change fixes automake bug#7833.
1018         * lib/am/dejagnu.am (check-DEJAGNU): Prefer using plain $(srcdir)
1019         over calculating and using the absolute path of $(srcdir).
1020         * tests/dejagnu-relative-srcdir.test: New test.
1021         * tests/dejagnu-absolute-builddir.test: Likewise.
1022         * tests/Makefile.am (TESTS): Update.
1023         Report by Ian Lance Taylor.  Suggestions by Ralf Wildenhues.
1025 2010-12-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1027         Fix testsuite failure of check12.test without DejaGNU.
1028         * tests/check12.test: Require runtest.
1030 2010-12-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
1032         Extend and improve tests on DejaGnu support.
1033         * tests/dejagnu.test: Do not create useless dummy test script.
1034         Add trailing `:' command.  In heading comments, add reference
1035         to ...
1036         * tests/check12.test: ... this new "semantic" test, covering
1037         concurrent use of dejagnu tests, simple tests and `check-local'
1038         target.
1039         * tests/dejagnu2.test: Make test more reliable, by avoid weak
1040         grepping of make output.  Prefer `cat' over `echo' to append
1041         to configure.in.  Quote literal dots in grep regexps.  Prefer
1042         `grep -c ...' over `grep ... | wc -l'.  Make grepping of
1043         automake stderr slightly stricter.  Add trailing `:' command.
1044         * tests/dejagnu3.test: Prefer `cat' over `echo' to append to
1045         configure.in.  Check stderr of expected-to-fail "make" call.
1046         Remove extra blank lines from Makefile.am.
1047         * tests/dejagnu4.test: Prefer `cat' over `echo' to append to
1048         configure.in.  Prefer `mv -f' over plain `mv' when the target
1049         file already exists.  Avoid extra mkdir calls by creating more
1050         directories at once.  Better use of blank lines.  Check that
1051         the `*.log' and `*.sum' files are created by runtest also when
1052         "make check" fails.
1053         * tests/dejagnu7.test: Prefer `cat' over `echo' to append to
1054         configure.in.  Better use of blank lines.  Add a trailing `:'
1055         command.
1056         * tests/dejagnu6.test: Likewise, and give the dejagnu test a
1057         more descriptive name.
1058         * tests/dejagnu5.test: Likewise.  Also, simply define package
1059         name to `$me' rather than using a non-obvious sed script to
1060         extract it from `AC_INIT', and write the Makefile.am with only
1061         one command.
1062         * tests/Makefile.am (TESTS): Updated.
1064 2011-10-21  Peter Rosin  <peda@lysator.liu.se>
1066         * THANKS: Fix whitespace issue.
1068 2011-10-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1070         tests: fix spurious failure with FreeBSD make and Yacc in VPATH
1071         * tests/subpkg.test: Some cosmetic adjustments.  Move the tests
1072         checking that $(YLWRAP) is defined and installed properly when
1073         ylwrap is in a default auxdir found in a parent package ...
1074         * tests/subpkg-yacc.test: ... into this new test, which carefully
1075         avoids to trigger the known bug#7884 (combo FreeBSD make plus Yacc
1076         plus VPATH build).
1077         * tests/Makefile.am (TESTS): Update.
1079 2011-10-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1081         tests: avoid spurious failure in 'parallel-tests3.test'
1082         This fixes automake bug#8788.
1083         * tests/parallel-tests3.test: To ensure that the serial run of
1084         the dummy testsuite is still ongoing when the parallel run has
1085         terminated, use `kill -0', not a bare `kill'.  This will prevent
1086         a testsuite crash on NetBSD 5.1, and a testsuite hang on FreeBSD
1087         8.2.  Also, since we are at it, try harder to avoid possible
1088         hangs of the script in other unusual situations.
1090 2011-10-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1092         tests: fix spurious failures with "chatty" make implementations
1093         * tests/distcheck-missing-m4.test: On failure, some make
1094         implementations (such as Solaris make) print the whole failed
1095         recipe on standard output.  This was causing a spurious failure
1096         in the checks grepping the output from make.  Work around this.
1097         * tests/distcheck-outdated-m4.test: Likewise.
1099 2011-10-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1101         tests: fix spurious failure on fast machines
1102         * tests/aclocal-path-precedence.test: Also remove the `configure'
1103         script between different test runs, to ensure it is always remade
1104         by autoconf.  Add proper explicative comments.
1106 2011-10-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1108         tests: avoid spurious failure of 'uninstall-fail.test' on Solaris
1109         * tests/uninstall-fail.test: All the Solaris 10 shells (/bin/sh,
1110         /bin/ksh, and /usr/xpg4/bin/sh), upon failing to chdir to a
1111         directory with the `cd' builtin, print a message like:
1112           "sh: /root: permission denied"
1113         which doesn't report the `cd' builtin anywhere.  Relax the grepping
1114         of the error message accordingly.
1116 2011-10-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1118         tests: avoid spurious failure of 'uninstall-fail.test' on Cygwin
1119         * tests/uninstall-fail.test: Be sure to really skip this test
1120         on systems that allows files to be removed from unwritable
1121         directories.  Motivated by a spurious failure on Cygwin 1.5.
1123 2011-10-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
1125         tests: fix spurious failure with autoconf 2.62
1126         * tests/aclocal-path-precedence.test: Rewrite configure.in,
1127         rather than appending to it, to avoid spurious failures (at
1128         least with autoconf 2.62) due to repeated calls to AC_INIT.
1129         Also, add package name and version arguments to AC_INIT, to
1130         avoid spurious errors from automake.
1132 2011-10-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
1134         docs: avoid using colon character inside arguments of @pxref
1135         Fixes automake bug#9753
1136         * doc/automake.texi (VPATH Builds): Avoid using colon character
1137         `:' inside arguments of @pxref, as this can cause problems in
1138         the generated `.info' files, and such an usage will be explicitly
1139         forbidden by future texinfo documentation.
1140         * THANKS: Update.
1141         Reported by Дилян Палаузов.
1143 2011-10-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
1145         parallel-tests: warn on conditional TEST_EXTENSIONS definition
1146         Before this change, automake would have still bailed out, but
1147         with a confusing error message (about an invalid redefinition
1148         of TEST_EXTENSIONS).
1149         * automake.in (handle_tests): Warn explicitly if TEST_EXTENSIONS
1150         has conditional contents.
1151         * tests/test-extensions-con.test: New test.
1152         * tests/Makefile.am (TESTS): Add it.
1153         * NEWS: Update.
1155 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1157         parallel-tests: don't allow @substitutions@ in TEST_EXTENSIONS
1158         Even after the last commit `v1.11-476-g90bea64', the checks
1159         performed by automake on entries in $(TEST_EXTENSIONS) tried to
1160         allow for @substitited@ stuff.  This however ends up allowing
1161         quite brittle setups, which, most importantly, are of no real
1162         practical usefulness anyway.  So it's better to just disallow
1163         @substitutions@ in TEST_EXTENSIONS altogether, offering a clear
1164         error message, instead of risking weird bugs and unexpected
1165         behaviors in the generated Makefile.in.
1166         * automake.in ($TEST_EXTENSION_PATTERN): Turned from a regular
1167         expression ...
1168         (is_valid_test_extension): ... into this subroutine.  Don't allow
1169         generic @substitutions@ anymore (possibly making an exception for
1170         `@EXEEXT@' under the proper circumstances).
1171         * tests/test-extensions.test: Adjust and extend.
1173 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1175         tests: fix spurious failure in 'insthook.test'
1176         * tests/insthook.test (Makefile.am): Add a proper `uninstall-hook'
1177         target to remove the symlink created by the `install-exec-hook'
1178         target; this prevents "make distcheck" from failing spuriously.
1179         Since we are at it, delete an extra blank line, and add a trailing
1180         `:' command.
1182 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1184         maintcheck: fix spurious failure
1185         * lib/am/distdir.am: Use `$(infodir)', not `${infodir}', to avoid
1186         complaints from the `sc_no_brace_variable_expansions' maintainer
1187         check.
1189 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1191         fix: make a test script executable
1192         * tests/nobase-nodist.test: Make executable.
1194 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1196         coverage: expose automake bug#9651
1197         * tests/dist-auxfile.test: New test, xfailing.
1198         * tests/dist-auxfile-2.test: Likewise.
1199         * tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.
1201 2011-10-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
1203         parallel-tests: automake error our on invalid TEST_EXTENSIONS
1204         This change fixes automake bug#9400.
1205         * automake.in (handle_tests): Bail out if a suffix specified in
1206         TEST_EXTENSIONS would produce an invalid `xxx_LOG_COMPILER'
1207         variable or an invalid suffix rule.  Before this change, automake
1208         would have issued a confusing error messages (about invalid or
1209         non-POSIX variables being defined), and in some situations would
1210         have even produced a broken `Makefile.in' file.
1211         ($TEST_EXTENSION_PATTERN): New helper variable.
1212         * doc/automake.texi (Simple Tests using parallel-tests): Document
1213         the limitations on TEST_EXTENSIONS explicitly.
1214         * NEWS: Update.
1215         * tests/test-extensions.test: New test.
1216         * tests/Makefile.am (TESTS): Update.
1218 2011-09-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1220         docs: don't suggest installing `.m4' files in hard-coded location
1221         This change fixes automake bug#7988.
1222         * doc/automake.texi (aclocal Options): State that the use of
1223         the `--print-ac-dir' option to determine the directory where
1224         third-party packages can install their `.m4' files is discouraged
1225         now.
1226         (Extending aclocal): Suggest telling the user about ACLOCAL_PATH.
1227         * THANKS: Update.
1228         Report by Peter Johansson.
1230 2011-09-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
1232         distuninstallcheck: fail also when only one file is left installed
1233         This change fixes automake bug#9579.
1234         * lib/am/distdir.am (distuninstallcheck): Be stricter in ignoring
1235         a potential `dir' file created by install-info and left installed.
1236         Also, be more careful about "this can't happen" kind of errors.
1237         (am__distuninstallcheck_listfiles): New internal helper macro.
1238         * tests/distcheck-pr9579.test: New test.
1239         * tests/distcheck-override-infodir.test: Likewise.
1240         * tests/Makefile.am (TESTS): Add them.
1241         * NEWS, THANKS: Update.
1242         Report by Nick Bowler.
1244 2011-09-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1246         maintcheck: fix usage of `cd' instead of `$(am__cd)'
1247         * lib/am/inst-vars.am (am__uninstall_files_from_dir): Use
1248         `$(am__cd)', not plain `cd'.
1250 2011-09-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
1252         uninstall: "make uninstall" before "make install" works
1253         This change fixes automake bug#9578.
1254         * lib/am/inst-vars.am (am__uninstall_files_from_dir): New internal
1255         macro, that defines a shell code fragment to uninstall files from
1256         a given directory.
1257         * lib/am/data.am (uninstall-%DIR%%PRIMARY%): Use it, to reduce code
1258         duplication and improve consistency and correctness.
1259         * lib/am/libs.am (uninstall-%DIR%LIBRARIES): Likewise.
1260         * lib/am/lisp.am (uninstall-%DIR%LISP): Likewise.
1261         * lib/am/mans.am (uninstall-man%SECTION%): Likewise.
1262         * lib/am/python.am (uninstall-%DIR%LIBRARIES): Likewise.
1263         * lib/am/scripts.am (uninstall-%DIR%SCRIPTS): Likewise.
1264         * tests/uninstall-pr9578.test: New test.
1265         * tests/uninstall-fail.test: New test.
1266         * tests/Makefile.am (TESTS): Add them.
1267         * NEWS, THANKS: Update.
1268         Report by Nick Bowler.
1270 2011-09-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
1272         tests: fix tests on aclocal search path precedences
1273         * tests/aclocal-path-precedence.test: Call `$ACLOCAL' with the
1274         proper overridden system acdir.
1276 2011-09-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1278         * NEWS: Fix typo.
1280 2011-09-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1282         docs: document planned precedence changes in aclocal search path
1283         * doc/automake.texi (Macro Search Path): Explicitly state that the
1284         lookup order for extra directories of `.m4' files will be changed
1285         in the next major release.
1286         * NEWS: Likewise.
1288 2011-09-19  Paolo Bonzini  <bonzini@gnu.org>
1289             Stefano Lattarini  <stefano.lattarini@gmail.com>
1291         aclocal: handle ACLOCAL_PATH environment variable
1292         * aclocal.in (parse_ACLOCAL_PATH): New function, parse ACLOCAL_PATH
1293         as a colon-separated list of directories to be included in the
1294         search path.
1295         * doc/automake.texi (Macro Search Path): Document new behavior and
1296         the precedence rules for various elements of the search path.
1297         * tests/aclocal-path.test: New test.
1298         * tests/aclocal-path-install.test: Likewise.
1299         * tests/aclocal-path-install-serial.test: Likewise.
1300         * tests/aclocal-path-precedence.test: Likewise.
1301         * tests/aclocal-path-nonexistent.test: Likewise.
1302         * tests/Makefile.am (TESTS): Add them.
1303         * NEWS: Update.
1304         * tests/distcheck-missing-m4.test: Extend by also checking
1305         interactions with ACLOCAL_PATH.
1306         * tests/distcheck-outdated-m4.test: Likewise, and fix a couple
1307         of botched comments since we are at it.
1309 2011-09-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1311         tests: fix spurious failure in 'primary-prefix-valid-couples.test'
1312         * tests/primary-prefix-valid-couples.test: After commit
1313         v1.11-464-gc9dfc36, `java_JAVA' is not a valid prefix/primary
1314         combination by default anymore: one has to explicitly define
1315         $(javadir) to make it so.  So just drop `java_JAVA' from our
1316         Makefile.am  Also, since we are at it, ...
1317         (configure.in): ... remove AM_PROG_GCJ from here, as it's not
1318         really required.
1320 2011-09-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1322         docs: deprecate JAVA primary
1323         * doc/automake.texi (Java): Deprecate the JAVA primary, stating
1324         that it will become obsolete in automake 1.12 and probably removed
1325         altogether in automake 1.13.  Reflect this in the section title,
1326         by appending the string "(deprecated feature)".
1327         (@menu, @detailmenu): Update.
1328         (Java Support with gcj): The cross-referenced support for bytecode
1329         compilation with the JAVA primary is rudimentary and deprecated.
1330         State that explicitly.
1332 2011-09-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1334         docs: clearer distinction between `.java' with javac and with gcj
1335         * doc/automake.texi (Java support): Rename this node ...
1336         (Java support with gcj): ... to this, and change its title from
1337         "Compiling Java sources" to "Compiling Java sources using gcj".
1338         (@detailmenu, @menu, @cindex): Update and make more precise.
1339         (Java): Change the title of this node from simply "Java" to
1340         "Java bytecode compilation".
1341         (@detailmenu, @menu, @cindex): Update and make more precise.
1343 2011-09-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1345         java: complain if java_JAVA is used but $(javadir) is undefined
1346         Fixes automake bug#8461.
1347         * automake.in (handle_java): Remove inappropriate "java" argument
1348         from the calls to `&am_install_var' and `&am_primary_prefixes'.
1349         * tests/instdir-java.test (Makefile.am): Define `$(javadir)'.
1350         * tests/javadir-undefined.test: New test.
1351         * tests/Makefile.am (TESTS): Add it.
1352         * NEWS: Update.
1354 2011-09-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
1356         cosmetics: fix various typos and grammaros
1357         * NEWS: Fix typos.
1358         * tests/py-compile-basic.test: Likewise.
1359         * tests/py-compile-basedir.test: Fix botched wording in comments.
1360         * tests/py-compile-option-terminate.test: Fix typo and incomplete
1361         comment.
1362         Suggestions by Peter Rosin.
1364 2011-09-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1366         coverage: test interactions of `nobase_' and `nodist_'
1367         * tests/nobase-nodist.test: New test.
1368         * tests/Makefile.am (TESTS): Add it.
1370 2011-09-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1372         java: fix various blunders in test 'java-mix.test'
1373         * tests/java-mix.test: Add missing call to `set -e'.  Fix inverted
1374         semantics (`.java' files are expected *not* to be distributed by
1375         default, not the other way round).  Fix various typos in the name
1376         of the `.java' files.  Correct other minor blunders.  Improve some
1377         comments.
1379 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1381         java: allow both JAVA and nobase_JAVA in the same Makefile.am
1382         * automake.in (handle_java): Also strip `nobase_' from the given
1383         prefix, when needed.
1384         * tests/java-clean.test: Update and extend.
1385         * tests/java-compile-install.test: Likewise.
1386         * tests/java-no-duplicate.test: Likewise.
1387         * tests/java-sources.test: Likewise.
1388         * tests/java-noinst.test: Likewise.
1389         * tests/java-mix-dist-nodist.test: Renamed to ...
1390         * tests/java-mix.test: ... this, and extended.
1391         * tests/java-nobase.test: New test, still xfailing due to
1392         unrelated issues.
1393         * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
1395 2011-04-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1397         java: allow both dist_JAVA and nodist_JAVA in the same Makefile.am
1398         Fixes automake bug#8434.
1399         * automake.in (handle_java): Strip `dist_' and `nodist_' from
1400         the given prefix.  Define a new internal Makefile variable
1401         `am__java_sources'.  Related adjustments.
1402         * lib/am/java.am (JAVAC, JAVAROOT, CLASSPATH_ENV): Define only the
1403         first time this am file is processed.
1404         (class%DIR%.stamp): Stamp file renamed ...
1405         (class%NDIR%.stamp): ... to this, so that the `dist_' and `nodist_'
1406         prefixes are stripped from the name of the stampfile.  Adjust
1407         declaration of dependencies by using the new automake-generated
1408         internal variable `$(am__java_sources)'.  In the rule, use `$@'
1409         as the name of the target, rather than hard-coding it.
1410         * tests/java.test: Update and extend.
1411         * tests/java-no-duplicate.test: New test.
1412         * tests/java-mix-dist-nodist.test: Likewise.
1413         * tests/java-compile-and-install.test: Likewise.
1414         * tests/java-clean.test: Likewise.
1415         * tests/java-sources.test: Likewise.
1416         * tests/Makefile.am (TESTS): Update.
1418 2011-09-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1420         tests: fix spurious failure on fast machines
1421         * tests/aclocal-acdir.test: Avoid spurious failures due to caching
1422         issues, by cleaning the autom4te cache between all the aclocal
1423         invocations, and by always calling autoconf with the `--force'
1424         flag.
1426 2011-09-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1428         aclocal: better URL reference in error message
1429         * aclocal.in (scan_file): In the error message about underquoted
1430         definitions, reference the automake page at `www.gnu.org', not
1431         at `sources.redhat.com'.
1433 2011-09-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1435         coverage: distcheck-hook to catch missing/outdated *.m4 files
1436         Related to automake bug#9037.
1437         * tests/distcheck-missing-m4.test: New test.
1438         * tests/distcheck-outdated-m4.test: Likewise.
1439         * tests/distcheck-hook-m4.am: New data file, used by the new
1440         tests.
1441         * tests/Makefile.am (distcheck-m4-missing.log,
1442         distcheck-m4-outdated.log): Depend on it.
1443         (EXTRA_DIST): Distribute it.
1444         (TESTS): Add the new tests.
1446 2011-09-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1448         aclocal: more granularity in acdir overriding
1449         Before this change, using the `--acdir' option caused aclocal to
1450         redefine both the directory of automake-provided m4 macros and the
1451         directory of third-party system-wide m4 macros.  With this change,
1452         we deprecate the `--acdir' aclocal option, and introduce two new
1453         options `--automake-acdir' and `--system-acdir', to allow for more
1454         granularity.
1455         * aclocal.in (@automake_includes, @system_includes,
1456         @user_includes): Fix and extend comments.
1457         (usage): Update.
1458         (handle_acdir_option): New function.
1459         (parse_arguments): Recognize new options `--system-acdir' and
1460         `automake-acdir', and handle `--acdir' using the new function
1461         above.  Simplify logic by assuming that the directory of
1462         third-party system-wide m4 files always exists.
1463         * tests/aclocal.in: Update to use the new options, instead of
1464         the deprecated. `--acdir'.
1465         * m4/dirlist: Move ...
1466         * m4/acdir/dirlist: ... here.
1467         * m4/Makefile.am (EXTRA_DIST): Update.
1468         (m4datadir): Rename ...
1469         (automake_acdir): ... to this.  Accordingly, ...
1470         (dist_m4data_DATA): ... rename this ...
1471         (dist_automake_ac_DATA): ... to this.
1472         (system_acdir): New, directory.
1473         (dist_system_ac_DATA): New, defined to an empty value; this will
1474         ensure that the $(system_acdir) directory will be created by
1475         "make install".
1476         * tests/aclocal.test: Remove check about the `--print-ac-dir'
1477         option of aclocal, it has been moved into ...
1478         * tests/aclocal-print-acdir.test: ... this new test, and quite
1479         extended.
1480         * tests/aclocal-acdir.test: New test.
1481         * tests/Makefile.am (TESTS): Add the new tests.
1482         * NEWS, bootstrap: Update.
1483         * doc/automake.texi (aclocal Options, Macro Search Path): Update.
1485 2011-10-21  Peter Rosin  <peda@lysator.liu.se>
1487         warnings: new 'extra-portability' category, for AM_PROG_AR
1488         * lib/Automake/ChannelDefs.pm: Register new extra-portability
1489         warning channel.
1490         (switch_warning): Turn off extra-portability if portability is
1491         turned off, and turn on portability if extra-portability is
1492         turned on.
1493         (set_strictness): Silence extra-portability for --gnits, --gnu
1494         and --foreign.
1495         * tests/extra-portability2.test: New test, checking that the
1496         extra-portability channel is silenced by --gnits, --gnu and
1497         --foreign.
1498         * doc/automake.texi (Invoking Automake): Document the new warning
1499         category and its interaction with the portability category.
1500         * tests/extra-portability.test: New test, checking the interaction
1501         between the portability and extra-portability warning categories.
1502         * automake.in (handle_libraries, handle_ltlibraries): Move the
1503         AM_PROG_AR warnings to the new extra-portability channel.
1504         * tests/ar2.test: Adjust to the new warning channel.
1505         * tests/pr300-lib.test: Likewise.
1506         * tests/pr300-ltlib.test: Likewise.
1507         * tests/pr307.test: Likewise.
1508         * tests/pr401.test: Likewise.
1509         * tests/pr401b.test: Likewise.
1510         * tests/pr401c.test: Likewise.
1511         * tests/pr72.test: Likewise.
1512         * NEWS: Likewise.
1513         * tests/Makefile.am (TESTS): Update.
1515 2011-10-21  Peter Rosin  <peda@lysator.liu.se>
1516             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1517             Stefano Lattarini  <stefano.lattarini@gmail.com>
1519         Add new 'AM_PROG_AR' macro, triggering the 'ar-lib' script.
1520         * m4/ar-lib.m4: New macro AM_PROG_AR, which locates an
1521         archiver and triggers the auxiliary 'ar-lib' script if needed.
1522         * m4/Makefile.am (dist_m4data_DATA): Update.
1523         * automake.in ($seen_ar): New variable.
1524         (scan_autoconf_traces): Set it.
1525         (handle_libraries, handle_ltlibraries): Require AM_PROG_AR for
1526         portability.
1527         * doc/automake.texi (Public Macros): Mention the new
1528         'AM_PROG_AR' macro.
1529         (Subpackages): Add AM_PROG_AR to the example.
1530         (A Library): Adjust recommendations for AR given the new
1531         AM_PROG_AR macro.
1532         * All relevant tests: Adjust to new portability requirements due
1533         to the new AM_PROG_AR macro.
1534         * tests/ar-lib2.test: New test, checking that AM_PROG_AR triggers
1535         install of ar-lib.
1536         * tests/ar-lib3.test: New test, checking that lib_LIBRARIES
1537         requires AM_PROG_AR.
1538         * tests/ar-lib4.test: New test, checking that lib_LTLIBRARIES
1539         requires AM_PROG_AR.
1540         * tests/ar-lib5a.test: New test, checking that AM_PROG_AR triggers
1541         use of ar-lib when the archiver is Microsoft lib.
1542         * tests/ar-lib5b.test: New test, checking that AM_PROG_AR triggers
1543         use of ar-lib when the archiver is a faked lib.
1544         * tests/ar-lib6a.test: New test, checking the ordering of
1545         AM_PROG_AR and LT_INIT.
1546         * tests/ar-lib6b.test: New test, checking the ordering of
1547         AM_PROG_AR and AC_PROG_LIBTOOL.
1548         * tests/ar-lib7.test: New test, checking that automake warns
1549         if ar-lib is missing.
1550         * tests/ar3.test: New test, checking that AR and ARFLAGS may
1551         be overridden by the user even if AM_PROG_AR is used.
1552         * tests/ar4.test: New test, checking that AM_PROG_AR bails out
1553         if it cannot determine the archiver interface.
1554         * tests/ar5.test: New test, checking that AM_PROG_AR runs its
1555         optional argument if it cannot determine the archiver interface.
1556         * tests/defs.in: New required entry 'lib'.
1557         * tests/Makefile.am (TESTS): Update.
1558         * NEWS: Update.
1560 2011-09-05  Peter Rosin  <peda@lysator.liu.se>
1562         * tests/amhello-binpkg.test: Add missing $EXEEXT usage.
1564 2011-09-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
1566         fix: list test 'vala-vpath.test' in XFAIL_TESTS
1567         * tests/Makefile.am (XFAIL_TESTS): Update.
1569 2011-09-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
1571         tests: simplify wrapper for aclocal
1572         * tests/aclocal.in: Remove use of $ACLOCAL_TESTSUITE_FLAGS and
1573         extra `-I' flags; they are not really required, since the file
1574         `m4/amversion.m4' is generated in the srcdir anyway.
1575         * tests/acloca10.test: Remove use of $ACLOCAL_TESTSUITE_FLAGS.
1576         * tests/acloca18.test: Likewise.
1577         * tests/defs.in: Don't nullify $ACLOCAL_TESTSUITE_FLAGS, and do
1578         not export it.
1580 2011-09-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
1582         coverage: vala support failing for VPATH from-scratch builds
1583         * tests/vala-vpath.test: New test, xfailing.
1584         * tests/Makefile.am (TESTS): Update.
1585         * THANKS: Update.
1586         From a report by Zbigniew Jędrzejewski-Szmek.
1587         Related to automake bug#8753.
1589 2011-09-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
1591         docs: report few more automake parsing limitations
1592         Partly motivated by automake bug#8360.
1593         * doc/automake.texi (General Operation): Report few more automake
1594         limitations w.r.t. parsing of unusual makefile constructs.  Related
1595         minor reorderings.
1596         * tests/doc-parsing-buglets-colneq-subst.test: New test.
1597         * tests/doc-parsing-buglets-tabs.test: Likewise.
1598         * tests/Makefile.am (TESTS): Update.
1600 2011-08-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
1602         tests: list "forgotten" test script in TESTS
1603         * tests/Makefile.am (TESTS): Also list ...
1604         * tests/java-empty-classpath.test: ... this test.  Since we are
1605         at it, remove trailing whitespace from a couple of lines.
1607 2011-08-25  Eric Blake  <eblake@redhat.com>
1609         ylwrap: fix unusual indentation whitespace
1610         * lib/ylwrap: Convert tabs to spaces.
1611         Reported by Karl Berry.
1613 2011-08-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
1615         * THANKS (Daniel Richard G.): Update e-mail address.
1617 2011-08-16  Daniel Richard G. <skunk@iskunk.org>  (tiny change)
1618             Stefano Lattarini  <stefano.lattarini@gmail.com>
1620         java: avoid compilation errors when CLASSPATH is empty
1621         * lib/am/java.am (CLASSPATH_ENV): When redefining `$CLASSPATH',
1622         do not append an empty component in case the previous value of
1623         CLASSPATH is empty or unset.
1624         * tests/java-empty-classpath.test: New test.
1625         * tests/Makefile.am (TESTS): Update.
1626         Fixes automake bug#9306.
1628 2011-08-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
1630         parallel-tests: no more spurious successes for FreeBSD make
1631         Work around a bug of FreeBSD make bug that was causing the
1632         automake-generated "check" target to complete with success
1633         even if some tests failed; this happened only when FreeBSD
1634         make was run in concurrent mode (as in, e.g., "make -j2
1635         check").  The bug is not present in NetBSD make.
1636         This change fixes automake bug#9245:
1637          <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9245>
1638         See also FreeBSD PR bin/159730:
1639          <http://www.freebsd.org/cgi/query-pr.cgi?pr=159730>
1640         * lib/am/check.am [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Use a
1641         more "safe" (and apparently redundant) idiom to exit with error,
1642         so that the non-zero exit status is picked up also by FreeBSD
1643         make when it's running in concurrent mode.
1644         * NEWS: Update.
1645         * tests/check-concurrency-bug9245.test: New test.
1646         * tests/Makefile.am (TESTS): Update.
1648 2011-08-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1650         hacking: we now require autoconf 2.68
1651         * HACKING ("Working in git"): Use autoconf and autom4te 2.68,
1652         not 2.67, in the examples.
1654 2011-08-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1656         test defs: more environment cleanup
1657         * tests/defs.in: Also unset variables AM_COLOR_TESTS and
1658         AM_TESTS_ENVIRONMENT.
1660 2011-08-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1662         tests: fix spurious failure with Solaris make
1663         * tests/distcheck-configure-flags-am.test: Avoid using `+=' too
1664         liberally with AM_DISTCHECK_CONFIGURE_FLAGS, since the line breaks
1665         so introduced, in conjunction with single quotes, might confuse
1666         Solaris make.
1668 2011-08-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
1670         maintcheck: fix maintainer-check failures, both real and spurious
1671         * tests/amhello-binpkg.test: Use "$MAKE", not bare "make".
1672         * Makefile.am (sc_perl_local): Also allow perl special variable
1673         `$~' to be localized.  And be slightly laxer in the regexp, to
1674         allow for usages like "local $_ = $foo;".
1675         (sc_tests_overriding_macros_on_cmdline): Also allow for command
1676         line overriding of the `DISABLE_HARD_ERRORS' make variable.  Try
1677         to avoid false positives for usages like "$MAKE || st=$?".
1679 2011-08-03  Bruno Haible  <bruno@clisp.org>
1681         docs: how to use '-I' option in AM_CPPFLAGS for best VPATH support
1682         * doc/automake.texi (Program Variables): Recommend -I options to
1683         both the build directory and the source directory when needed.
1685 2011-07-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1687         tests: relax a test on amhello examples to cater to Solaris tar
1688         * tests/amhello-binpkg.test: When the tar implementation in use
1689         is not GNU tar, relax the tests on tar output, to avoid spurious
1690         failures.  For example, "tar cvf ..." with GNU tar can output
1691         lines like "./usr/bin/hello" on the standard output, while with
1692         Solaris tar it can output lines like "a ./usr/bin/hello 8K" on
1693         standard output, and with Heirloom tar it can output lines like
1694         "a ./usr/bin/hello 15 tape blocks" on standard error.
1696 2011-07-15  Benoit Sigoure  <tsunanet@gmail.com>
1698         docs: add references between the 2 sections on java support
1699         * doc/automake.texi (Java Support, Java): Add cross-references.
1701 2011-07-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1703         Sync auxiliary files from upstream.
1704         * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub,
1705         lib/texinfo.tex: Sync from upstream.
1707 2011-07-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1709         tests: fix weakness in 'tests-environment-backcompat.test'
1710         * tests/tests-environment-backcompat.test: Do not override the
1711         content of xfailing test `baz.test' with a "weaker" version that
1712         fails unconditionally: the test must fail only when the 'strict'
1713         pragma is in use, in order not to reduce coverage.
1715 2011-07-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1717         docs, tests: synchronize examples on silent-rules from config.site
1718         * doc/automake.texi (Automake silent-rules Option): Reference test
1719         'silent-configsite.test' in comments.
1721 2011-07-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1723         tests: portability fixes in tests on amhello examples
1724         * tests/amhello-binpkg.test: Don't use "tar xzf too.tag.gz" to
1725         extract a gzip-compressed tarball, that's unportable to some
1726         tar implementations; use the "gzip -dc fo.tar.gz | tar xf -"
1727         idiom instead.
1728         * tests/amhello-cflags.test: Likewise.
1729         * tests/amhello-cross-compile.test: Likewise.
1730         Suggestion from Ralf Wildenhues.
1732 2011-07-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
1734         remake: add test ensuring that slower remakes don't hang
1735         * tests/remake-subdir-long-time.test: New test.
1736         * tests/Makefile.am (TESTS): Update.
1737         Suggestion by Ralf Wildenhues.
1739 2011-07-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
1741         remake: fix outdated comment in configure.am
1742         * lib/am/configure.am: Fix comment falsified by changes in
1743         commit `v1.11-366-gbee9871'.
1744         Suggestion by Ralf Wildenhues.
1746 2011-07-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
1748         docs, tests: synchronize examples from docs to tests
1749         * tests/README (Writing test cases): Give suggestions on how to
1750         keep test cases and examples in the documentation synchronized.
1751         * doc/automake.texi: Improve or fix existing testcase-referencing
1752         comments, and add many new ones.
1753         * HACKING (Administrivia): Suggest to test complex examples and
1754         idioms from the manual.
1755         * tests/specflg8.test: Improve synchronization with the example
1756         in the manual.
1757         * tests/output11.test:Likewise.
1758         * tests/txinfo21.test:Likewise.
1759         * tests/interp.test: Likewise.  Since we are at it, and enable
1760         the `errexit' shell flag, do related changes, and add trailing
1761         `:'command.
1762         * tests/amhello-cflags.test: New test.
1763         * tests/amhello-cross-compile.test: Likewise.
1764         * tests/amhello-binpkg.test: Likewise.
1765         * tests/tests-environment-backcompat.test: Likewise.
1766         * tests/parallel-tests-log-compiler-example.test: Likewise.
1767         * tests/Makefile.am (TESTS): Update.
1769 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1771         docs: avoid a footnote, some related rewordings and improvements
1772         * doc/automake.texi (Dist): Reword the part about automatically
1773         distributed files to avoid a footnote.  Since we are at it, extend
1774         a bit, and add an example and a reference to a relevant test case.
1776 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1778         docs: minor cosmetic fixes
1779         * doc/automake.texi: Break few overly long lines, throughout the
1780         file.
1781         ("Simple Tests"): Move @vindex for XFAIL_TESTS to the correct
1782         position, i.e., before and not after the paragraph where it is
1783         introduced.
1784         ("Options" @item ansi2knr): Use @pxref instead of @xref.  This
1785         fixes a texinfo warning.
1786         ("Other things Automake recognizes" @item AM_C_PROTOTYPES): Use
1787         @pxref instead of @ref.
1789 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1791         help: improve text about automatically-distributed files
1792         This change fixes automake bug#7819.
1793         * automake.in (usage): Distinguish between files that are always
1794         automatically distributed when found, and those which are only
1795         "under certain conditions".
1796         * doc/automake.texi (Basics of Distribution): Update accordingly.
1797         * tests/autodist-subdir.test: Update.
1798         * tests/autodist-no-duplicate.test: Likewise.
1799         * tests/autodist.test: Likewise.
1800         (configure.in): Remove useless call to AM_MAINTAINER_MODE.
1802 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1804         refactor: split 'usage' subroutine in automake
1805         This change is related to automake bug#7819.
1806         * automake.in (print_autodist_files): New subroutine,
1807         extracted from ...
1808         (usage): ... this, which now uses it.
1809         * tests/autodist-no-duplicate.test: New test.
1810         * tests/Makefile.am (TESTS): Update.
1812 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1814         tests: fix bug in 'autodist.test'
1815         * tests/autodist.test: Avoid spurious failure due to no
1816         `defs-static' file being found in the parent directory.
1818 2011-06-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
1820         maintcheck: extend 'sc_tests_plain_*' checks
1821         * Makefile.am (sc_tests_plain_autom4te): New check.
1822         (sc_tests_plain_autoreconf): Likewise.
1823         (sc_tests_plain_autoheader): Likewise.
1824         (syntax_check_rules): Update.
1826 2011-06-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1828         maintcheck: avoid few spurious failures
1829         * Makefile.am (sc_tests_plain_aclocal, sc_tests_plain_perl,
1830         sc_tests_plain_autoconf, sc_tests_plain_automake,
1831         sc_tests_plain_autoupate): Be stricter in matching an erroneous
1832         literal command, i.e., `aclocal', `automake', `perl', etc.
1834 2011-06-20  Bert Wesarg <bert.wesarg@googlemail.com>  (tiny change)
1836         check: don't use multi-line coloring for the report
1837         "less -R" can't handle multi-line coloring as it is done for the
1838         check reports of the serial and parallel testsuite, because of
1839         performance reasons.  Thus, color each line of the check report
1840         by its own.
1841         * lib/am/check.am (am__text_box): Accept colors for lines, and
1842         color each line by its own.
1843         [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Let am__text_box handle
1844         the line coloring.
1845         [!%?PARALLEL_TESTS%] $(check-TESTS): Color each report line by
1846         its own.
1847         * THANKS: Update.
1849 2011-06-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1851         docs: AM_DISTCHECK_CONFIGURE_FLAGS is for corner cases
1852         * doc/automake.texi (Checking the Distribution): Explain that the
1853         developers should take care of making their code buildable without
1854         requiring any special configure options, so that in general
1855         AM_DISTCHECK_CONFIGURE_FLAGS shouldn't be used.  Give an example
1856         of where its use is legitimate.
1857         Suggestions from Ralf Wildenhues and Eric Blake.
1859 2011-06-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
1861         ansi2knr: deprecate, it will go away in the next major release
1862         * doc/automake.texi: Loudly and repeatedly state that the old
1863         de-ANSI-fication features are now deprecated and will be removed
1864         in the next major Automake release.  Other related adjustments.
1865         * lib/Automake/Options.pm (_process_option_list ): Give a warning
1866         in the `obsolete' category when the `ansi2knr' option is used.
1867         * m4/protos.m4 (AM_C_PROTOTYPES): Deprecate this macro: a warning
1868         in the `obsolete' category will be emitted it if is used.
1869         * tests/ansi2knr-deprecation.test: New test.
1870         * tests/Makefile.am (TESTS): Update.
1871         * tests/ansi.test: Adjust, by calling autoconf and/or automake
1872         with the `-Wno-obsolete' flag.
1873         * tests/ansi10.test: Likewise.
1874         * tests/ansi2.test: Likewise.
1875         * tests/ansi3.test: Likewise.
1876         * tests/ansi3b.test: Likewise.
1877         * tests/ansi4.test: Likewise.
1878         * tests/ansi5.test: Likewise.
1879         * tests/ansi6.test: Likewise.
1880         * tests/ansi7.test: Likewise.
1881         * tests/ansi8.test: Likewise.
1882         * tests/ansi9.test: Likewise.
1883         * tests/cxxansi.test: Likewise.
1884         * tests/libobj8.test: Likewise.
1885         * NEWS: Update about the future planned backward-incompatibility
1886         due to the removal of de-ANSI-fication feature.
1888 2011-06-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1890         docs: primary/prefix combination "pkglib_PROGRAMS" is now invalid
1891         * doc/automake.texi (Program Sources): pkglib_PROGRAMS is not a
1892         valid combination anymore, so don't document it.  Inconsistency
1893         introduced in commit `v1.11-373-g9ca6326'.
1895 2011-06-19  Jim Meyering  <meyering@redhat.com>
1897         docs: replace obsolete @vindex entry with a useful one
1898         * doc/automake.texi (Program Sources): Do not index obsolete
1899         pkglib_PROGRAMS here.  Do index pkglibexec_PROGRAMS.
1901 2011-06-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
1903         tests: optimize tests on primary/prefix mismatch for speed
1904         * tests/primary-prefix-invalid-couples.test: Partial rewrite, in
1905         order to use just a single automake invocation rather than one
1906         invocation for each invalid primary/prefix couple.  This improves
1907         the test script execution time by an order of magnitude.
1908         Since we are at it, throw in some other improvements to avoid
1909         unrelated automake warnings and failures that could potentially
1910         cause false positives w.r.t. the automake exit status.
1912 2011-06-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
1914         news: update w.r.t. introduction of AM_DISTCHECK_CONFIGURE_FLAGS
1915         * NEWS (Miscellaneous changes): Update.
1917 2011-06-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
1919         maintcheck: DISTCHECK_CONFIGURE_FLAGS can be defined on make cmdline
1920         * Makefile.am (sc_tests_overriding_macros_on_cmdline): It's now
1921         acceptable that the test scripts override DISTCHECK_CONFIGURE_FLAGS
1922         on the make command line.  Update comments accordingly.  Since we
1923         are at it, make the relevant grepping rules slightly tighter.
1925 2011-06-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
1927         distcheck: add support for AM_DISTCHECK_CONFIGURE_FLAGS
1928         * doc/automake.texi (Checking the Distribution): Suggest to use
1929         AM_DISTCHECK_CONFIGURE_FLAGS, not DISTCHECK_CONFIGURE_FLAGS, to
1930         define (in the top-level Makefile.am) extra flags to be passed
1931         to configure at "make distcheck" time; DISTCHECK_CONFIGURE_FLAGS
1932         should be reserved for the user.  Add proper `@vindex' directive.
1933         Document that AM_DISTCHECK_CONFIGURE_FLAGS is not honoured in a
1934         subpackage Makefile.am, but the flags in it are passed down to
1935         the configure script of the subpackage.
1936         * lib/am/distdir.am (distcheck): Also pass the flags in
1937         $(AM_DISTCHECK_CONFIGURE_FLAGS) to the configure invocation.
1938         Update comments.
1939         * tests/defs.in.test (AM_DISTCHECK_CONFIGURE_FLAGS,
1940         DISTCHECK_CONFIGURE_FLAGS): Unset in case they are exported in
1941         the environment, they might improperly influence our testsuite.
1942         * tests/distcheck-configure-flags.test: New test.
1943         * tests/distcheck-configure-flags-am.test: Likewise.
1944         * tests/distcheck-configure-flags-subpkg.test: Likewise.
1945         * distcheck-hook.test: Likewise.
1946         * distcheck-hook2.test: Likewise.
1947         * tests/Makefile.am (TESTS): Update.
1948         Closes automake bug#8784.
1950 2010-06-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1952         docs: better documentation for silent make rules
1953         * doc/automake.texi (Options): Detailed description of the
1954         automake option `silent-rules' moved from here ...
1955         (Silent Make): ... into this new chapter, expanded, improved,
1956         and subdivided into ...
1957         (Make verbosity, Tricks For Silencing Make,
1958         Automake silent-rules Option): ... these new sections.
1959         (@menu, @detailmenu): Update.
1960         * tests/silent-configsite.test: New test, checking that the
1961         user can control default mode of silent-rules from config.site,
1962         as is documented in the manual.
1963         * tests/Makefile.am (TESTS): Updated.
1965 2011-06-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1967         Warnings about primary/prefix mismatch fixed and extended.
1968         * automake.in (%standard_prefix): Add `doc' and `locale'.
1969         Rename `pkgdatadir' to `pkgdata'.  Similarly for`pkglibdir',
1970         `pkgincludedir' and `pkglibexecdir'.
1971         (handle_programs): List `pkglibexec', not `pkglib', among the
1972         prefixes valid for the `PROGRAMS' primary.
1973         (handle_data): List also `doc' among the prefixes valid for
1974         the `DATA' primary.  This is required by automake's own build
1975         system.
1976         * tests/dirforbid.test: Test removed, superseded by ...
1977         * tests/primary-prefix-invalid-couples.test: ... this new test.
1978         * tests/primary-prefix-valid-couples.test: New test.
1979         * tests/primary-prefix-couples-documented-valid.test: Likewise.
1980         * tests/primary-prefix-couples-force-valid.test: Likewise.
1981         * tests/java3.test: Adjusted, and extended a bit.
1982         * tests/Makefile.am (TESTS): Updated.
1983         * NEWS: Updated.
1984         From a report by Eric Blake.
1986 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1988         test defs: new function 'fatal_', for hard errors
1989         Before this patch, the only way offered by tests/defs to
1990         properly signal a hard error was the `framework_failure_'
1991         function.  But the error message issued by that function,
1992         as its name would suggest, refers to a set-up failure in the
1993         testsuite, while hard errors can obviously also be due to
1994         other reasons.  The best way to fix this inconsistency is to
1995         introduce a new function with a more general error message.
1996         Inspired by a recent similar change to Gnulib's tests/init.sh.
1997         * tests/defs.in (fatal_): New function.
1998         * tests/README (Section "Writing test cases" subsection "Do"):
1999         Suggest the use of `fatal_', not of `framework_failure_', for
2000         generic hard errors.  The latter should be reserved for "real"
2001         set-up failures.
2003 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2005         py-compile: '--' and non-option arguments terminate the option list
2006         * lib/py-compile: Any non-option argument, or the special `--'
2007         argument, now explicitly terminates the list of options.
2008         * tests/py-compile-option-terminate.test: New test.
2009         * tests/Makefile.am (TESTS): Update.
2010         * NEWS: Update.
2012 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2014         py-compile: complain on unrecognized options
2015         * lib/py-compile: Complain on unrecognized options.  Don't be too
2016         lax in matching `--help' and `--version' options.
2017         * tests/py-compile-usage.test: Extend accordingly.
2018         * NEWS: Update.
2020 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2022         py-compile: normalize error and help messages
2023         * lib/py-compile: Now error messages do not begin with a capital
2024         letter, nor end with a period, as per GNU standards.  Prepend the
2025         error messages with the name of the script, not with its path.
2026         When an invalid usage is recognized, always display the customary
2027         message "Try `py-compile --help' ..." on a line of its own.
2028         ($me): New variable, containing the name of the
2029         program, i.e., `py-compile'.  Use it throughout.
2030         (usage_error): New function, used to display error messages about
2031         invalid usage.
2032         * tests/py-compile-usage.test: Extend and tighten accordingly.
2034 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2036         python tests: add "unit tests" on py-compile
2037         * tests/py-compile-basic.test: New test.
2038         * tests/py-compile-basic2.test: New test.
2039         * tests/py-compile-basedir.test: Likewise.
2040         * tests/py-compile-destdir.test: Likewise.
2041         * tests/py-compile-env.test: Likewise.
2042         * tests/py-compile-usage.test: Likewise.
2043         * tests/Makefile.am (TESTS): Update.
2044         Tested with python 2.0.1, 2.4.6, 2.6.6, 2.7.1, and 3.1.3.
2046 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2048         py-compile: the '--destdir' option now accepts a blank argument
2049         * lib/py-compile (Option parsing): Do not count an empty argument
2050         to `--destdir' or `--basedir' as a missing argument.
2051         * lib/python.am: Simplify accordingly, passing the `--destdir'
2052         option to py-compile unconditionally, even if `$(DESTDIR)' is
2053         empty.
2054         * NEWS: Update.
2056 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2058         python: run the 'py-compile' script with $(SHELL)
2059         * lib/python.am (install-%DIR%PYTHON): Run each instance of
2060         py-compile using $(SHELL).  Since we are at it, break overly
2061         long lines.
2062         (am__py_compile): New variable, to reduce code duplication.
2064 2011-06-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
2066         maintcheck: fix some failures, extend some checks
2067         * Makefile.am (sc_diff_automake_in_automake): Update, as we
2068         now expect 9 lines, not 8, to be changed from `automake.in'
2069         to `automake'.
2070         (sc_diff_aclocal_in_aclocal): New maintainer check, similar to
2071         the above, and checking that only 10 lines are changed from
2072         `aclocal.in' to `aclocal'.
2073         (syntax_check_rules): Update.
2074         (sc_tests_Exit_not_exit): Exempt self tests `self-check-*.test'
2075         from this check, as they can legitimately use the bare `exit'
2076         builtin in various places.
2077         * doc/automake.texi (Python): Remove stray `@' from the end of
2078         a line.  Typo introduced in commit `v1.11-312-g5bf7af6'.
2079         * tests/depcomp8a.test: Pass DISTCHECK_CONFIGURE_FLAGS to make
2080         from the environment rather than from the command line, to
2081         pacify the `sc_tests_overriding_macros_on_cmdline' maintainer
2082         check.
2083         * tests/depcomp8b.test: Likewise.
2085 2011-05-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
2087         remake: behave better with non-GNU make in subdirectories
2088         Currently, with every decent make program, it is possible to
2089         rebuild out-of-date autotools-generated files with a simple
2090         "make Makefile" -- but for this to work reliably with non-GNU
2091         make implementations, the command must be issued from the
2092         top-level directory.  This patch removes such limitation.
2093         * lib/am/configure.am (am--refresh): Depend on `%MAKEFILE%'.
2094         * tests/defs.in (using_gmake): New function, backported from the
2095         `master' branch (and simplified).
2096         * tests/remake-subdir.test: New test.
2097         * tests/remake-subdir2.test: Likewise.
2098         * tests/remake-subdir-gnu.test: Likewise.
2099         * tests/remake-subdir-from-subdir.test: Likewise.
2100         * tests/Makefile.am (TESTS): Update.
2102 2011-05-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
2104         automake, aclocal: honour configure-time AUTOCONF and AUTOM4TE
2105         Currently, the Automake's own configure script allow definition
2106         of AUTOCONF and AUTOM4TE, expected to point respectively to an
2107         autoconf and autom4te programs.  But while these definitions are
2108         honoured in the Automake's build systems and test suite, they
2109         were *not* honoured in the generated `automake' and `aclocal'
2110         scripts.  This behaviour, apart from being wrong in that it does
2111         not allow the user enough freedom in choosing his tools, also
2112         caused inconsistencies in the test suite, brining to spurious
2113         failures.
2114         Problem reported by Graham Reitz on the automake list; see thread:
2115         <http://lists.gnu.org/archive/html/automake/2011-05/msg00022.html>
2116         * automake.in ($traces): Use `@am_AUTOCONF', not simply `autoconf'.
2117         * aclocal.in ($traces): Use `@am_AUTOM4TE', not simply `autom4te'.
2118         * Makefile.am (do_subst): Substitute also `@am_AUTOCONF' and
2119         `@am_AUTOM4TE'.
2120         * NEWS: Update.
2121         * THANKS: Update.
2123 2011-05-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
2125         build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too
2126         Our build system allows the user to override AUTOCONF and AUTOHEADER
2127         at configure time, and honours these overrides in our testsuite.
2128         But it didn't do the same with AUTOM4TE, AUTORECONF and AUTOUPDATE.
2129         This change fixes that inconsistency.
2130         * configure.ac (am_AUTOM4TE, am_AUTOUPDATE, am_AUTORECONF): New
2131         AC_SUBSTitutions.  Update comments.
2132         * tests/defs.in ($AUTOUPDATE): Default to `@am_AUTOUPDATE@' now.
2133         ($AUTOM4TE): New variable, defaulting to `@am_AUTOM4TE@'.
2134         ($AUTORECONF): New variable, defaulting to `@am_AUTORECONF@'.
2135         * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Update.
2137 2011-05-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2138             Stefano Lattarini  <stefano.lattarini@gmail.com>
2140         tests/README: fix example about `make -e' usage
2141         * tests/README (Section "Writing test cases" subsection "Do"): When
2142         some variable is never initialized in the Makefile, `-e' is not
2143         necessary in order to override it.  DESTDIR is such a variable: we
2144         ensure that we do not ever initialize it.  And as such, it is quite
2145         portable to use:
2146           $ make DESTDIR=/foo/bar install
2147         and in fact, quite widely used.
2148         So our example about when `make -e' is required, which references
2149         the `DESTDIR' variable, is poorly chosen, if not downright wrong.
2150         Rewrite it to use `prefix' as the overridden variable instead.
2152 2011-05-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
2154         parallel-tests: stricter checks on DISABLE_HARD_ERRORS support
2155         * tests/parallel-tests-harderror.test: New test, doing more
2156         in-depth checks on DISABLE_HARD_ERRORS.
2157         * tests/parallel-tests.test: Remove tests on DISABLE_HARD_ERRORS,
2158         now redundant.
2159         * tests/Makefile.am (TESTS): Update.
2161 2011-05-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2163         testsuite: avoid re-running few tests with 'parallel-tests' option
2164         Some tests in our testsuite use the 'simple-tests' driver only
2165         marginally, or simply as a mean to conveniently check unrelated
2166         invariants.  It makes little sense to force these tests to also
2167         run with the 'parallel-tests' Automake option active, as doing so
2168         offers no real gain in coverage, while often causing a measurable
2169         overhead in execution time (for an already too-slow testsuite).
2170         * tests/pr401.test (parallel_tests): Define to "no", to prevent
2171         the generation of a sibling test script using the 'parallel-tests'
2172         driver.
2173         * tests/pr401b.test: Likewise.
2174         * tests/pr401c.test: Likewise.
2176 2011-05-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2178         testsuite: allow tests to avoid the use of 'parallel-tests' option
2179         * tests/gen-parallel-tests: Do not generate "siblings" for tests
2180         that explicitly define the `parallel_tests', whether to "yes" or
2181         to any other value.  Extend heading comments to give a rationale
2182         for this behaviour.
2183         * tests/README: Update.
2185 2011-05-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2187         tests/README: update obsoleted advice
2188         * tests/README (Section "Writing test cases" subsection "Do"):
2189         Do not suggest to use the `*-p.test' pattern for the names of
2190         hand-written tests which use the `parallel-tests' Automake option.
2191         Not only is this not respected by the existing tests, but it is
2192         more likely to cause conflicts with auto-generated tests.
2193         So, suggest to *avoid* using the `*-p.test' pattern in names
2194         of hand-written tests instead.
2195         (Section "Writing test cases" subsection "Do not"):  When
2196         suggesting not to override Makefile variables using command
2197         line arguments, do not use the badly outdated variables `U'
2198         and 'ANSI2KNR' in the example; instead, use the more common
2199         and typical `DESTDIR'.
2201 2011-05-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
2203         test defs: rename requirement 'non-cross' -> 'native'
2204         * tests/defs.in (non-cross): Rename requirement ...
2205         (native): ... to this, which is clearer and fits the
2206         existing lingo better.
2207         Suggestion by Ralf Wildenhues.
2209 2011-05-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
2211         testsuite: be more cross-compile friendly
2212         * tests/defs.in (cross_compiling): New subroutine.
2213         (am__tool_prefix): New internal variable.
2214         (gcc, g++, gcj): Force the use of the correct "tool prefix"
2215         when cross compiling.
2216         (gfortran, g77, non-cross): New requirements.
2218 2011-05-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
2220         check: document and test $(TEST_SUITE_LOG) overriding
2221         * doc/automake.texi (Simple Tests using parallel-tests): Explain
2222         how and why TEST_SUITE_LOG can be overridden at runtime.
2223         * tests/parallel-tests-log-override-1.test: New test, check that
2224         the newly documented idiom and similar usages are truly supported.
2225         * tests/parallel-tests-log-override-2.test: Likewise.
2226         * tests/parallel-tests-log-override-recheck.test: Likewise.
2227         * tests/Makefile.am (TESTS): Update.
2229 2011-05-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
2231         tests: fix spurious failure of txinfo21.test on FreeBSD
2232         * tests/txinfo21.test: Use the `is_newest' subroutine instead of
2233         the `ls -t' hack to to determine whether a file has been updated.
2234         This is required because at least FreeBSD `ls' do not sort files
2235         with the same timestamp in alphabetical order when using the `-t'
2236         option.
2238 2011-05-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
2240         tests defs: allow requirements for compilers (mostly dummy)
2241         Most of the new requirements that are now accepted in `$required'
2242         as consequence of this patch are still dummy.  They are planned
2243         to be implemented only in master (or in some derived branch), but
2244         having them here (even just as no-op) will allow for an easier
2245         integration/backporting of potential new testcases.
2246         * tests/defs.in (cc, c++, fortran, fortran77): New requirements,
2247         still dummy.
2248         (flex): New requirement, picking LEX for configure.
2249         (lex): New requirement, alias for `flex'.  A more appropriate
2250         implementation, looking for a generic `lex' program, will follow
2251         in the future.
2252         (yacc): New requirement, alias for `bison'.  A more appropriate
2253         implementation, looking for a generic `yacc' program, will follow
2254         in the future.
2256 2011-04-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
2258         tests: fix spurious failure in a test on TESTS (VPATH-related)
2259         * tests/check-tests-in-builddir.test: When not using the
2260         parallel-tests option, do not check that VPATH components are
2261         not present in the displayed test name, since the simple-tests
2262         driver do not try to strip them.
2264 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2266         test: self check subroutines for skipping/failing of tests
2267         * tests/self-check-report.test: New test.
2268         * tests/Makefile.am (TESTS): Update.
2270 2011-04-23  Jim Meyering  <meyering@redhat.com>
2271             Stefano Lattarini  <stefano.lattarini@gmail.com>
2273         test defs: new subroutines for test skipping/failing
2274         * tests/defs.in (Exit): Move definition of this function earlier.
2275         (warn_, skip_, fail_, framework_failure_): New functions, inspired
2276         to the homonyms in gnulib's tests/init.sh.
2277         ($stderr_fileno_): New global variable, used by the new functions
2278         above.
2279         * tests/README: Updated.
2280         From a suggestion by Ralf Wildenhues.
2282 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2284         tests: fix typo (copy & paste blunder) in heading comment
2285         * tests/maintclean-vpath.test: Correctly refer to the sister test
2286         as `maintclean.test', not as `maintclean-vpath.test'.
2288 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2290         tests: remove redundant test `mclean.test'
2291         * tests/mclean.test: Remove, it's a weak grepping test completely
2292         superseded by the much more complete `maintclean.test'.
2293         * tests/Makefile.am (TESTS): Update.
2295 2011-04-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
2297         testsuite: more environment sanitization
2298         * tests/defs.in: Sanity check: abort if any of `parallel_tests'
2299         or `required' is in the environment.
2300         ($sed_unindent_prog): Initialize to empty, to avoid interferences
2301         from the environment.
2302         * tests/self-check-me-in-env.test: Renamed to ...
2303         * tests/self-check-env-sanitize.test: ... this, and extended.
2304         * tests/Makefile.am (TESTS): Update.
2305         (TESTS_ENVIRONMENT): Unset variables `parallel_tests' and
2306         `required'.  Adjust comments.
2308 2011-04-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
2310         tests: don't allow `$me' to be overridden from the environment
2311         * tests/defs.in: Sanity check: abort if $me is in the environment.
2312         * tests/self-check-me-in-env.test: New test.
2313         * tests/Makefile.am (TESTS_ENVIRONMENT): Unset variable `me'.
2314         (TESTS): Update.
2315         Suggestion by Ralf Wildenhues.
2317 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2319         test defs: allow overriding of `$me'
2320         * tests/defs.in ($me): Allow overriding by the including test
2321         script.  Add some explicative comments.
2323 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2325         depcomp tests: don't reject slower dependency extractors
2326         * tests/depcomp8b.test: Add the `--enable-dependency-tracking'
2327         option to `configure' invocations, so that slower dependency
2328         extractors are not rejected.
2329         * tests/depcomp8a.test: Likewise.  Also ...
2330         (foo.c): ... since we are at it, fix spacing to be consistent
2331         with GNU coding standards.
2333 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2335         m4: add missing serial numbers to a few files
2336         Related to automake bug#8483.
2337         * m4/amversion.in: Add serial number.
2338         * m4/auxdir.m4: Likewise.
2339         * m4/gcj.m4: Likewise.
2340         * m4/install-sh.m4: Likewise.
2341         * m4/mkdirp.m4: Likewise.
2342         * m4/python.m4: Likewise.
2343         * m4/runlog.m4: Likewise.
2344         * m4/strip.m4: Likewise.
2345         * m4/upc.m4: Likewise.
2347 2011-04-16  Jim Meyering  <meyering@redhat.com>
2349         depcomp: correct invalid sed invocation
2350         * lib/depcomp: Insert missing -e before '/:$/d'.
2351         Otherwise, that use of sed would treat '/:$/d' as a file name.
2353 2011-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
2355         maintainer check: quote literal `$' in Makefile rule
2356         * Makefile.am (sc_tests_PATH_SEPARATOR): Escape literal `$'
2357         character in double-quoted string.  Fix a bug in which the rule
2358         emitted an erroneously empty substring in its error message.
2360 2011-04-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
2362         coverage: test for automake bug#8485 (known regression)
2363         * tests/yacc-dist-nobuild-subdir.test: New test.
2364         * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
2366 2011-04-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
2368         test defs: define default $distdir (help reducing duplication)
2369         * tests/defs.in ($distdir): New variable, might be used in
2370         testcases checking distribution-related features.
2371         * tests/pr9.test: Use it.
2372         * tests/subdir9.test: Likewise.
2373         * tests/vtexi3.test: Add comment explaining why we redefine
2374         $distdir in this test.
2376 2011-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
2378         depcomp: fix bugs in tests and in the depcomp script
2379         * lib/depcomp (gcc): Remove duplicated `-e' from sed invocation.
2380         * tests/depcomp10.test: Make it executable.  Fix a blunder that
2381         has left part of an intended comment not prefixed by `#', thus
2382         causing shell syntax errors.  In this same comment, break a
2383         too-long reported error message on multiple lines, for clarity.
2384         Add reference to the relevant bug report.  Add a comment which
2385         explains why the test result 'skipped' if the first "make" call
2386         fails.  Add other useful comments.
2387         * tests/depcomp9.test: Slightly improve comments.
2389 2011-04-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2391         Fix hp depmode for VPATH builds with GNU make.
2392         * lib/depcomp: Be sure to remove VPATH-prefixed object from
2393         dependency output when creating stub rule.
2394         * tests/depcomp10.test: New test.
2395         * tests/Makefile.am (TESTS): Update.
2396         * NEWS: Update.
2397         Report by Bruno Haible.
2399 2011-04-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2401         test defs: fix 'javac' requirement for older JDK versions
2402         The Java compiler from JDK 1.5 (and presumably earlier versions)
2403         cannot handle the `-version' option by itself; and while it does
2404         print the version number, it then errors out with an usage error:
2405           $ javac -version
2406           javac 1.5.0_22
2407           javac: no source files
2408           Usage: javac <options> <source files>
2409           ...
2410         Luckily, adding the `-help' option to the `javac' invocation
2411         seems to fix this problem.
2412         * tests/defs.in (javac): Pass also the `-help' option to the
2413         `javac' program.  Add a comment explaining why it is needed.
2414         Report from Ralf Wildenhues.
2416 2011-04-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2418         test defs: new requirement for the default java compiler
2419         * tests/defs.in (for tool in $required): New requirement 'javac'.
2420         * tests/java.test: Use it instead of ad-hoc configure check.
2421         * tests/java-check.test: Likewise.
2422         * tests/instfail-java.test: Likewise.
2423         * tests/instdir-java.test: Likewise.
2425 2011-04-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
2427         java: check_JAVA does not cause compilation by "make all" anymore
2428         Fixes automake bug#8234.
2429         * automake.in (handle_java): Make stamp of class files built from
2430         java sources in $(check_JAVA) a dependency of `check' target, not
2431         `all' target.
2432         * tests/java-check.test: New test.
2433         * tests/Makefile.am (TESTS): Update.
2434         * NEWS: Update.
2435         * THANKS: Update.
2436         Report from Petteri Räty.
2438 2011-04-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2440         Clarify regex code in depcomp.
2441         * lib/depcomp: Add comment why we don't need regex-escaping here.
2442         Suggested by Stefano Lattarini.
2444 2011-04-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2446         Fix makedepend depmode for VPATH builds.
2447         * lib/depcomp [makedepend]: Remove any VPATH prefix from the
2448         object file name, so a rebuild doesn't attempt to update the
2449         .Po files in the source tree.
2450         * tests/depcomp9.test: New test.
2451         * tests/Makefile.am (TESTS): Update.
2452         * NEWS: Update.
2454 2011-04-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
2456         tests: fix timestamp-related failures
2457         Fixes automake bug#8365.
2458         * tests/aclocal6.test: Sleep before modifying m4 files that should
2459         trigger remake rules.  Remove incorrect/obsoleted comments.
2460         * tests/subdir5.test: Likewise, and extend a bit.
2461         * tests/subdir8.test: Likewise.
2462         * tests/pr8365-remake-timing.test: New xfailing test.
2463         * tests/Makefile.am (TESTS): Update.
2464         Report from Sam Steingold.
2466 2011-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2468         Create subdirs for generated sources even when not dep tracking.
2469         * automake.in (handle_single_transform): If $object is derived
2470         and lands in subdir, be sure to output a dirstamp dependency.
2471         * tests/yacc5.test: Avoid falsely matching the dirstamp
2472         dependency when grepping for a rule.
2473         * tests/lex-subobj-nodep.test: New test.
2474         * tests/Makefile.am (TESTS): Update.
2475         * THANKS: Update.
2476         Report by Ignacy Gawedzki.
2478         Fix locale issue in check-exported-srcdir.test.
2479         * tests/check-exported-srcdir.test: Reformulate glob to not fail
2480         in a locale that ignores or interleaves character case.
2482 2011-04-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
2484         docs: better visibility for aclocal in the index
2485         * doc/automake.texi (@menu): Rename title for entry 'configure'
2486         from "Scanning configure.ac or configure.in" to the more precise
2487         "Scanning configure.ac, using aclocal".
2488         (@detailmenu): Adjust.
2489         (@node configure): Adjust, and extend @cindex calls accordingly.
2490         * THANKS: Update.
2491         From a report by Maynard Johnson.
2493 2011-03-30  Stefano Lattarini  <stefano.lattarini@gmail.com>
2495         tests: improve tests on "maintainer-clean" target
2496         * tests/aclocal6.test: Move checks related to "maintainer-clean"
2497         functionalities into ...
2498         * tests/maintclean-vpath.test: ... this new test.
2499         * tests/maintclean.test: Update heading comments.  Extend to also
2500         test subdirs.  Remove useless disabling of YACC.  Fix m4 quoting
2501         in configure.in.  Add a trailing `:' command.  Remove extra blank
2502         lines.
2503         * tests/Makefile.am (TESTS): Update.
2505 2011-03-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2507         tests: fix unindent to use printf not echo for script.
2508         * tests/defs.in: Use printf rather than echo, as the latter may
2509         interpret the backslashes in the sed script.  Fixes test
2510         failures with dash as /bin/sh.
2512 2011-03-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2513             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2515         maintcheck: look for problematic names of testcases
2516         The configure.in stub created by default by `tests/defs' obtains
2517         the first argument of AC_INIT from the test name, and this can
2518         cause some supported autoconf versions to fail with a spurious
2519         error if that test name contains the name of an m4 or m4sugar
2520         builtin or macro (e.g., `defn' or `m4_undefine').
2521         See for example the bug fixed by commit v1.11-287-g1325a8a.
2522         This change add a maintainer check that warns about test names
2523         which are possibly problematic in this regard.
2524         * Makefile.am (sc_test_names): New maintainer-check target.
2525         (syntax_check_rules): Add it.
2526         (m4_builtins): New helper variable.
2527         (TESTS): Updated according to the following renamings.
2528         * tests/include.test: Renamed ...
2529         * tests/hdr-vars-defined-once.test: ... to this.
2530         * tests/sinclude.test: Renamed ...
2531         * tests/m4-inclusion.test: ... to this, and simplified
2532         accordingly.
2533         * tests/include2.test: Renamed ...
2534         * tests/dist-included-parent-dir.test: ... to this, for
2535         consistency.
2537 2011-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
2539         tests: fix bug in alloca*.test
2540         * tests/alloca.test: Make grepping of automake stderr stricter,
2541         add a trailing `:' command; also, add AC_PROG_CC to configure.in,
2542         and create a dummy alloca.c file, to ensure that we fail for the
2543         proper reason.
2544         * tests/alloca2.test: Likewise.  Also, look for LT_INIT, not
2545         AC_PROG_LIBTOOL, in the error message (bug introduced with commit
2546         v1.11-315-gd51e7b7 "libtool: suggest LT_INIT if LTLIBRARIES
2547         primary is used").
2548         From a report by Patrick Welche.
2550 2011-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
2552         tests: fix bug (comments-in-var-defn.test + autoconf 2.62)
2553         * tests/comments-in-var-defn.test: The configure.in stub created
2554         by default, which has the AC_INIT first argument obtained by the
2555         test name, causes autoconf 2.62 to fail with a spurious error
2556         message like: "configure.in:1: error: defn: undefined macro:".
2557         Thus, to prevent this, the test is renamed to ...
2558         * tests/comments-in-var-def.test: ... this.
2559         * tests/Makefile.am (TESTS): Updated.
2561 2011-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
2563         cosmetics: convert encoding from ISO-8859 to UTF-8
2564         * ChangeLog.03: Convert encoding to UTF-8.
2565         * ChangeLog.96: Likewise.
2566         * ChangeLog.98: Likewise.
2567         * NEWS: Likewise.
2568         * TODO: Likewise.
2570 2011-03-01  Peter Rosin  <peda@lysator.liu.se>
2572         test defs: unindent without temporary file
2573         * tests/defs.in (commented_sed_unindent_prog): Commented Sed program
2574         that strips the "proper" amount of leading whitespace.
2575         (unindent): Lazily strip comments from the above program and use it
2576         to unindent without using a temporary file.
2578 2011-02-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
2580         libtool: suggest LT_INIT if LTLIBRARIES primary is used
2581         When the LTLIBRARIES primary was used, but $(LIBTOOL) wasn't
2582         defined, automake suggested to add a call to AC_PROG_LIBTOOL
2583         in configure.ac.  But that macro is deprecated since Libtool
2584         version 1.9b (2004-08-29), in favor of the newer LT_INIT.  So
2585         suggest the use of this latter macro instead.
2586         * lib/Automake/Variable.pm (%_am_macro_for_var): Pair 'LIBTOOL'
2587         with 'LT_INIT', not with 'AC_PROG_LIBTOOL'.
2588         * tests/libtool4.test: Adjust and extend.  Also, add a call to
2589         macro AC_PROG_CC in configure.in, to help ensuring that automake
2590         does not fail for the wrong reasons.
2591         * tests/ltinit.test: New test, ensure that automake's libtool
2592         support works with LT_INIT-based interface.
2593         Thanks to Jack Kelly for the suggestion.
2595 2011-02-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2597         tests: tempdirs with restrictive permissions are cleaned correctly
2598         Before this change, the removal of a temporary test directory
2599         containing subdirectories with restrictive permissions (such as
2600         'r--r--r--') could fail.
2601         * tests/defs: Ensure that all the subdirectories of a temporary
2602         test directory have the 'read', 'write' and 'execute' bits set,
2603         before trying to remove it with `rm -rf'.
2604         * tests/Makefile.am (clean-local-check): Likewise.
2606 2011-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
2607             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2609         test defs: add subroutine for input unindenting
2610         * tests/defs.in (unindent): New subroutine.
2612 2011-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
2614         python: report the 'PYTHON' influential environment variable
2615         * m4/python.m4 (AM_PATH_PYTHON): Call AC_ARG_VAR on PYTHON.
2616         * doc/automake.texi (Python): Update and extend.
2617         * tests/help-python.test: New test.
2618         * tests/Makefile.am (TESTS): Update.
2619         * THANKS (Jack Kelly): Update e-mail address.
2620         Suggestion by Jack Kelly.
2622 2011-02-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2624         tests defs: clear TESTS_ENVIRONMENT variable
2625         * tests/defs.in (TESTS_ENVIRONMENT): Unset it, so that values
2626         from environment won't interfere with the testcases.
2627         Suggestion by Ralf Wildenhues.
2629 2011-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
2631         tests: tweak few tests on simple and parallel test drivers
2632         * tests/check-exported-srcdir.test: Improve heading comments.
2633         * tests/check-tests-in-builddir.test: Likewise.  Also, unset the
2634         `FOO_EXIT_STATUS' variable, so that any pre-existing value in the
2635         environment won't risk to interfere with the test.
2636         Suggestions by Ralf Wildenhues.
2638 2011-02-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
2640         coverage: more tests on simple and parallel test drivers
2641         * tests/parallel-tests-subdir.test: New test.
2642         * tests/check-exported-srcdir.test: Likewise.
2643         * tests/check-tests-in-builddir.test: Likewise.
2644         * tests/check-tests_environment.test: Likewise.
2645         * tests/Makefile.am (TESTS): Update.
2647 2011-01-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
2649         tests: fix spurious failures in lflags*.test
2650         * tests/lflags.test: Remove 'LEX' from the environment, so
2651         that it won't be erroneously picked up by `make -e'.
2652         * tests/lflags2.test: Likewise.
2654 2011-01-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
2656         docs: color-tests issues with parallel make
2657         * doc/automake.texi (Simple Tests): Document that automatic
2658         recognition of a capable terminal attached to stdout can fail
2659         with some make implementation when running in parallel mode,
2660         thus causing colored test output not to be automatically
2661         activated when it should.
2663 2011-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2665         tests: avoid instspc.test failures due to make's whitespace trimming
2666         * tests/instspc.test: Prepend './' when passing the test
2667         characters, to avoid leading whitespace characters to be trimmed
2668         from macros set from environment variables.  Fixes testsuite
2669         failures with HP-UX, IRIX, and Tru64/OSF make.
2671 2011-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2673         coverage: test semantics of "dummy" per-target flags
2674         * tests/specflg-dummy.test: New test, ensuring that even "dummy"
2675         per-target flags triggers the use of renamed objects.
2676         * tests/Makefile.am (TESTS): Update.
2677         Suggestion by Ralf Wildenhues.
2679 2011-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2681         tests defs: sanitize IFS
2682         * tests/defs.in ($IFS): Define to <space>, <tab>, <newline>.
2683         ($sp): New variable, holding a single whitespace character.
2684         ($tab): New variable, holding a tabulation character.
2685         ($nl): New variable, holding a newline character.
2687 2011-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2689         tests: fix VPATH auto-expansion workarounds.
2690         * tests/parallel-tests8.test, tests/suffix13.test:
2691         Ensure $< is not surrounded by white space, to prevent Solaris
2692         make from applying automatic VPATH text expansion.
2694 2011-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
2696         tests: fix spurious failures in yflags*.test
2697         * tests/yflags.test: Remove 'YACC' from the environment, so
2698         that it won't be erroneously picked up by `make -e'.
2699         * tests/yflags2.test: Likewise.
2701 2011-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2703         tests: avoid fn99*.test failures due to buggy AIX 5.3 cp -R.
2704         * tests/fn99.test, tests/fn99subdir.test: Skip if an initial
2705         `cp -R' of the subdir tree already fails; AIX 5.3 cp messes
2706         up its internal memory when copying this tree.
2708 2011-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2709             Stefano Lattarini  <stefano.lattarini@gmail.com>
2711         Add comment to check-TESTS rule working around make 3.80 bug.
2712         * lib/am/check.am (check-TESTS): Update comment.
2714 2011-01-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2716         tests: less strict double-colon spy.test again.
2717         * tests/spy.test: We know BSD make doesn't invoke more than one
2718         double-colon rule, so no need to expose that failure.
2720 2011-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2722         install-sh: avoid Tru64 sh `test' operator precedence issues.
2723         * lib/install-sh: Protect file names and directory components
2724         that consist of `=', `(', `)', or `!'.  Move protection as early
2725         as possible, to avoid errors such as with Tru64 sh `test -z ='.
2726         * tests/instsh2.test: Extend test to cover more possibilities.
2727         Fixes 1.12 instspc-equal-install.test failure on Tru64/OSF 5.1.
2729 2011-01-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
2730             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2732         docs: automake testsuite doesn't use TESTS_ENVIRONMENT anymore
2733         * doc/automake.texi (Simple Tests): Do not claim Automake uses
2734         TESTS_ENVIRONMENT for the perl driver.  Instead, point to the
2735         parallel-tests driver.
2737 2011-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2739         Allow _AM_DEPENDENCIES to be used later in configure.
2740         * m4/depend.m4 (_AM_DEPENDENCIES): Remove a previously existing
2741         conftest.dir before recreating it.
2742         Fixes bug#7864.
2743         Report by Eric Blake, from report by Scott McCreary against M4.
2745 2011-01-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2747         tests: avoid failure on w32 file systems.
2748         * tests/parallel-tests-unreadable-log.test: SKIP if file cannot
2749         be turned unreadable.
2751 2011-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2753         tests: allow double-colon spy.test to work with HP-UX make.
2754         * tests/spy.test: Fix comment typos.  Ensure prerequisites we
2755         do not want to depend on are strictly older than the target.
2756         Also test with a target out of date wrt. more than one rule.
2758 2011-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
2760         tests: remove useless requirements from cond36.test
2761         * tests/cond36.test ($required): Remove.
2762         Since we are at it, add a trailing `:' command.
2764 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2765             Stefano Lattarini  <stefano.lattarini@gmail.com>
2767         parallel-tests: work around Tru64/OSF 5.1 sh read bugs.
2768         * lib/am/check.am ($(TEST_SUITE_LOG), recheck, recheck-html):
2769         Test file readability before redirecting input from it, to avoid
2770         exiting Tru64/OSF 5.1 sh which treats read as special builtin.
2771         * tests/parallel-tests-unreadable-log.test: New test.
2772         * tests/Makefile.am (TESTS): Update.
2773         * NEWS: Update.
2775 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2777         * NEWS, README: Update copyright years.
2779         Fix parallel-tests.test failure with HP-UX make.
2780         * tests/parallel-tests.test: Sleep inside inner tests, so logs
2781         are newer than logs of tests they depend on, for HP-UX make.
2783 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2785         docs: ensure example are separated with empty lines in the input
2786         * doc/automake.texi (Extending aclocal, Emacs Lisp, Rebuilding)
2787         (API Versioning, Renamed Objects, Multiple Outputs): Add empty
2788         lines before `@example' and after `@end example' lines, so info
2789         output is rendered correctly, and a following @noindent honored.
2790         Report by Stefano Lattarini.
2792 2011-01-15  Jim Meyering <meyering@redhat.com>
2794         tests: fix comment typo
2795         * tests/substref.test: Fix grammar in a comment.
2797 2011-01-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
2799         tests: fix spurious failures in two texinfo tests
2800         * tests/txinfo.test ($required): Add 'makeinfo'.
2801         * tests/txinfo8.test: Create a dummy 'textutils.info' file, so
2802         that make won't try to run makeinfo (which could be unavailable)
2803         to build it.
2804         Found by NixOS Hydra, reported by Ralf Wildenhues.
2806 2011-01-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2808         Avoid testsuite failures due to Autoconf Fortran change.
2809         Autoconf v2.68-21-g727ce95 causes AC_F77_LIBRARY_LDFLAGS to
2810         require computing the canonical host name.  Ensure config.guess
2811         and config.sub files are present for respective checks.
2812         * tests/compile_f_c_cxx.test: Add stub files.
2813         * tests/flibs.test: Likewise.
2814         * tests/fort4.test: Use $AUTOMAKE -a for installing files.
2816 2011-01-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
2818         docs: clustered '-d' not recognized in YFLAGS
2819         This change fixes automake bug#7828.
2820         * doc/automake.texi (Yacc and Lex): Document that automake
2821         recognizes '-d' in AM_YFLAGS only if it's not clustered with
2822         other options.
2823         From a report by Юрий Пухальский.
2825 2011-01-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2827         tests: add checks on automatically-distributed files
2828         Related to automake bug#7819.
2829         * tests/autodist.test: New test.
2830         * tests/autodist-subdir.test: Likewise.
2831         * tests/autodist-acconfig.test: Likewise.
2832         * tests/autodist-acconfig-no-subdir.test: Likewise.
2833         * tests/autodist-aclocal-m4.test: Likewise.
2834         * tests/autodist-config-headers.test: Likewise.
2835         * tests/autodist-configure-no-subdir.test: Likewise.
2836         * tests/autodist-stamp-vti.test: Likewise.
2837         * tests/Makefile.am (TESTS): Update.
2839 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
2841         tests: work around a texi+cygnus bug causing a spurious XFAIL
2842         * tests/txinfo5b.test: New test, like txinfo5.test but calling
2843         automake with the `-Wno-override' option to work around a bug
2844         in the texinfo + cygnus interaction.
2845         * tests/txinfo5.test: Update heading comments.
2846         * tests/Makefile.am (TEST): Updated.
2848 2011-01-09  Dave Hart  <davehart@gmail.com>  (tiny change)
2850         Fix another typo in Rule.pm comment.
2851         * lib/Automake/Rule.pm: Fix typo.
2853 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
2855         Improve, extend and tweak tests on Texinfo support.
2856         * tests/instdir-texi.test: Add a call to `ls -l' after that to
2857         `make', for debugging.  When looking for required tools, do not
2858         redirect the output of "$tool --help" to /dev/null, and do not
2859         uselessly run it in a subshell.
2860         * tests/txinfo.test: Rewritten to run autoconf, ./configure and
2861         make.  All checks moved into Makefile.am.
2862         * tests/txinfo8.test: Likewise, and modernize the generated
2863         configure.in.
2864         * tests/txinfo2.test: Moved checks into Makefile.am, and other
2865         minor improvements.
2866         * tests/txinfo5.test: Enable `errexit' shell flag, and related
2867         changes.  Add trailing `:' command.
2868         * tests/txinfo6.test: Likewise, and make grepping of generated
2869         Makefile.in stricter.
2870         * tests/txinfo7.test: Enable `errexit' shell flag, and related
2871         changes.  Add trailing `:' command.  Do not add unnecessary stuff
2872         to Makefile.am.
2873         * tests/txinfo9.test: Verify that more targets which are expected
2874         to be generated only once really are.  Make grepping less strict,
2875         to avoid exposing too much internal details.  More minor changes.
2876         * tests/txinfo16.test: Add trailing `:'.  Prefer cat over echo
2877         for appending to configure.in.  Updated/fixed heading comments.
2878         * tests/txinfo23.test: Likewise, and extended a little by making
2879         it check that no info file is created in the $(srcdir).
2880         * tests/txinfo24.test: Likewise.
2881         * tests/txinfo25.test: Likewise.
2882         * tests/txinfo18.test: Add trailing `:'.  Prefer cat over echo
2883         for appending to configure.in.  Also, check that index files are
2884         cleaned also by "make clean", not only by "make distclean".
2885         * tests/txinfo22.test: Prefer `$me' over hard-coded test name,
2886         and added trailing `:' command.  This testcase also used to check
2887         that automake ignores in-line comments when using variables, but
2888         preserves them in the output; these checks (added in commit
2889         "Release-1-7f-4-g9177ef8") do not really pertain to this test,
2890         so they have been moved ...
2891         * tests/comments-in-var-defn.test: ... into this new test.
2892         * tests/txinfo4.test: Escape literal dots in grep regexps.  Add
2893         trailing `:' command.
2894         * tests/txinfo29.test: Likewise.  Relax grepping of generated
2895         Makefile.in w.r.t. whitespaces.  Prefer `cat' over `echo' to
2896         append to configure.in.
2897         * tests/txinfo3.test: Likewise.
2898         * tests/vtexi.test: Improve grepping of Makefile.in (sometimes
2899         make it stricter, sometimes laxer).  Move `set -e' setting just
2900         after the inclusion of ./defs.  De-uglify a sed command.  Other
2901         minor cosmetic improvements.
2902         * tests/vtexi2.test: Make grepping of Makefile.in stricter.  Add
2903         trailing `:' command.
2904         * tests/vtexi3.test: New test on version.texi support.
2905         * tests/vtexi4.test: Likewise.
2906         * tests/Makefile.am (TESTS): Updated.
2908 2011-01-09  Peter Rosin  <peda@lysator.liu.se>
2910         Fix another typo in Rule.pm comment.
2911         * lib/Automake/Rule.pm: Fix typo.
2913 2011-01-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
2915         cosmetics: remove trailing whitespaces
2916         * doc/automake.texi: Remove trailing whitespaces.
2917         * tests/cond13.test: Likewise.
2918         * tests/cond14.test: Likewise.
2919         * tests/fort4.test: Likewise.
2920         * tests/fort5.test: Likewise.
2921         * tests/suffix7.test: Likewise.
2922         * tests/vtexi2.test: Likewise.
2924         automake: minor fixes in comments
2925         * automake.in: Some minor fixes and enhancements in comments.
2927 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2929         Add test coverage for deleted header files.
2930         * tests/depcomp6.test, tests/depcomp7.test: Update tests to
2931         also check for the deleted header bug.  If no dependency
2932         tracking mechanism could be found, SKIP rather than exit
2933         successfully.  Use GNU style spacing and ANSI C prototypes.
2935         Fix typos in Rule.pm comments.
2936         * lib/Automake/Rule.pm: Fix typos in comments.
2938         docs: split 'amhello Explained' node.
2939         * doc/automake.texi (amhello Explained): Split node ...
2940         (amhello's configure.ac Setup Explained)
2941         (amhello's Makefile.am Setup Explained) : ... into these two.
2942         (Top, Hello World): Adjust, and add @anchor for stable URL links.
2943         Suggestion by Karl Berry in automake bug#7766.
2945 2011-01-08  Karl Berry  <karl@freefriends.org>
2946             Eric Blake  <eblake@redhat.com>
2948         docs: reference defining directories in amhello node.
2949         * doc/automake.texi (amhello Explained): Point to Autoconf
2950         manual for how to convert directory values into macros.
2951         (Optional): Fix grammar nit.
2953 2011-01-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
2955         * NEWS: Fix typo (forgotten word).
2957 2011-01-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
2958             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2960         docs: how to work around checks on invalid primary/directory couples
2961         * doc/automake.texi (Uniform): Document the blessed idiom which can
2962         be used to work around automake checks on invalid primary/directory
2963         couples (such as `lib_PROGRAMS' or `doc_LIBRARIES').
2965 2011-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2967         Sync auxiliary files from upstream.
2968         * lib/config.guess, lib/config.sub, lib/texinfo.tex:
2969         Sync from upstream.
2971         Fix maintainer-check regression.
2972         * tests/subobj11a.test: Pass DISTCHECK_CONFIGURE_FLAGS in the
2973         environment.
2975         Bump copyright years.
2976         * aclocal.in (write_aclocal, version): Bump copyright years.
2977         * automake.in (gen_copyright, version): Likewise.
2978         * doc/automake.texi: Likewise.
2980 2010-12-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2981             Stefano Lattarini  <stefano.lattarini@gmail.com>
2983         Work around a bug in file-inclusion mechanism of Solaris make.
2984         * automake.in (handle_single_transform): In the name of the
2985         dependency file: collapse multiple slash characters into a single
2986         one.
2987         * tests/subobj11a.test: New test.
2988         * tests/subobj11b.test: Likewise.
2989         * tests/subobj11c.test: Likewise.
2990         * tests/depcomp8a.test: Likewise.
2991         * tests/depcomp8b.test: Likewise.
2992         * tests/Makefile.am (TESTS): Updated.
2993         * NEWS: Updated.
2994         Report by Stefano Lattarini, quick fix by Ralf Wildenhues, final
2995         patch and tests by Stefano Lattarini.
2997 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
2999         Fix two spurious testsuite failures on IRIX 6.5.
3000         * tests/suffix13.test (Makefile.am): Account for VPATH issues on
3001         weaker make implementations (e.g. IRIX 6.5).
3002         * tests/parallel-tests8.test: Likewise, plus a required related
3003         change.
3004         Reported by Ralf Wildenhues.  The bugs have been there from the
3005         first versions of the affected test scripts.
3007 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
3009         docs: cygnus mode doesn't require AM_CYGWIN32 macro.
3010         * doc/automake.texi (Cygnus): Mode 'cygnus' does not require
3011         the AM_CYGWIN32 macro (and indeed hasn't required it since at
3012         least commit Release-1-2-31-g3038064 "merged changes from
3013         Cygnus" of 1997-08-25).
3015 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
3017         distlinksbrk.test: Work around botched "make -k".
3018         * tests/distlinksbrk.test: Run "make" multiple times and grep
3019         its output each time for a single error message, rather than
3020         running "make -k" one single time and grepping its output for
3021         all the expected error messages.  This should work around make
3022         implementations with limited (broken?) `-k' support; for more
3023         information, see these subthreads on the automake-patches list:
3024           - 2010-11-15, "Testsuite failures on HP-UX 11.23",
3025             <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00162.html>
3026           - 2010-11-15, "Testsuite failures on IRIX 6.5",
3027             <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00166.html>
3029 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
3031         Fix sed-related buglet in test "subdir5.test"
3032         * tests/subdir5.test: Always terminate text passed to the
3033         `i' sed command with a newline, to work around limitations
3034         in e.g. older OpenBSD sed.
3036 2010-12-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
3038         docs: fix blunder in example about python extension modules
3039         * doc/automake.texi (Python): Use `quaternion_la_SOURCES',
3040         not `quaternion_SOURCES', to declare the sources of python
3041         extension module `quaternion.la'.
3043 2010-12-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
3045         docs: list LTLIBRARIES among Automake primaries
3046         * doc/automake.texi (Uniform): List `LTLIBRARIES' among
3047         the Automake primaries.
3049 2010-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
3051         Improve tests on generated portions of configure help screen.
3052         * tests/help-depend.test: Grepping of configure help screen
3053         relaxed to cater for possible line wrapping, and tightened in
3054         other respects.
3055         * tests/help-depend2.test: Likewise.
3056         * tests/help-dmalloc.test: Likewise.
3057         * tests/help-lispdir.test: Likewise.
3058         * tests/help-maintainer.test: Likewise.
3059         * tests/help-multilib.test: Likewise.
3060         * tests/help-silent.test: Likewise.
3061         * tests/help-upc.test: Likewise.
3062         * tests/help-init.test: Grepping of configure help screen
3063         tightened.
3065 2010-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3067         Avoid running installed automake from 'libtool --help'.
3068         * tests/subobj9.test: Export AUTOCONF and AUTOMAKE.
3069         Together with fixed Libtool, this fixes check-coverage to not
3070         invoke installed automake.
3072 2010-11-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
3074         Fix spurious failures in `silent*.test' for $CC != gcc
3075         In some tests on automake-produced silent rules, we forced the
3076         use of gcc depmode to improve testsuite coverage; but this has
3077         unsurprisingly led to spurious failures when some non-GNU C
3078         compilers were used.  So we are now careful to require GCC in
3079         tests that force gcc depmode.
3080         From reports by Ralf Wildenhues.
3081         * tests/silent5.test: Test removed, its content split into ...
3082         * tests/silent-many-generic.test, tests/silent-many-gcc.test: ...
3083         these new sister tests, the latter of which forces gcc depmode
3084         and lists "gcc" in $required.
3085         * tests/silentlex.test: Test removed, its content split into ...
3086         * tests/silent-lex-generic.test, tests/silent-lex-gcc.test: ...
3087         these new sister tests, the latter of which forces gcc depmode
3088         and lists "gcc" in $required.
3089         * tests/silentyacc.test: Test removed, its content split into ...
3090         * tests/silent-yacc-generic.test, tests/silent-yacc-gcc.test: ...
3091         these new sister tests, the latter of which forces gcc depmode and
3092         lists "gcc" in $required.
3093         * tests/Makefile.am (TESTS): Updated.
3095 2010-11-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
3097         Tests: consistently use "|| Exit 1" after ". ./defs".
3098         * tests/autohdr.test: Use `. ./defs || Exit 1', not bare
3099         `. ./defs', for consistency with other tests.
3100         * tests/autohdr2.test: Likewise.
3101         * tests/autohdr3.test: Likewise.
3102         * tests/autohdr4.test: Likewise.
3103         * tests/cond23.test: Likewise.
3104         * tests/cond24.test: Likewise.
3105         * tests/cond25.test: Likewise.
3106         * tests/cond26.test: Likewise.
3107         * tests/cond27.test: Likewise.
3108         * tests/cond28.test: Likewise.
3109         * tests/cond29.test: Likewise.
3110         * tests/cond30.test: Likewise.
3111         * tests/cond31.test: Likewise.
3112         * tests/cond32.test: Likewise.
3113         * tests/cond33.test: Likewise.
3114         * tests/cond34.test: Likewise.
3115         * tests/cond35.test: Likewise.
3116         * tests/cond36.test: Likewise.
3117         * tests/cond37.test: Likewise.
3118         * tests/cond38.test: Likewise.
3119         * tests/cond39.test: Likewise.
3120         * tests/cond40.test: Likewise.
3121         * tests/cond41.test: Likewise.
3122         * tests/cond42.test: Likewise.
3123         * tests/cond43.test: Likewise.
3124         * tests/cond44.test: Likewise.
3125         * tests/cond45.test: Likewise.
3126         * tests/dollarvar.test: Likewise.
3127         * tests/dollarvar2.test: Likewise.
3128         * tests/hfs.test: Likewise.
3129         * tests/libobj14.test: Likewise.
3130         * tests/percent.test: Likewise.
3131         * tests/percent2.test: Likewise.
3132         * tests/phony.test: Likewise.
3133         * tests/silent.test: Likewise.
3134         * tests/silent2.test: Likewise.
3135         * tests/silent3.test: Likewise.
3136         * tests/silent4.test: Likewise.
3137         * tests/silent5.test: Likewise.
3138         * tests/silent6.test: Likewise.
3139         * tests/silent7.test: Likewise.
3140         * tests/silent9.test: Likewise.
3141         * tests/silentcxx.test: Likewise.
3142         * tests/silentf77.test: Likewise.
3143         * tests/silentf90.test: Likewise.
3144         * tests/silentlex.test: Likewise.
3145         * tests/silentyacc.test: Likewise.
3147         Avoid useless cleaning in some `silent*.test' tests.
3148         * tests/silentf77.test: Removed useless calls to "make clean"
3149         and "make maintainer-clean".
3150         * tests/silentf90.test: Likewise.
3151         * tests/silent3.test: Removed useless call to "make distclean".
3152         * tests/silent4.test: Likewise.
3153         * tests/silent9.test: Likewise.
3155 2010-11-19  Ian Lance Taylor  <iant@google.com>
3157         Sync config-ml.in from GCC.
3158         * config-ml.in: Add Go support: treat GOC and GOCFLAGS like other
3159         compiler/flag environment variables.
3161 2010-11-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
3163         Automake::Config: remove extra trailing semicolon.
3164         * lib/Automake/Config.in: Remove extra trailing semicolon.
3166         help4.test: fix botched heading comment.
3167         * tests/help4.test: Fixed the heading comment, since it
3168         didn't correctly describe what checks the testcase was
3169         supposed to perform.
3171         help2.test: add checks on aclocal too.
3172         * tests/help2.test: Check that also `aclocal --version' and
3173         `aclocal --help' work with configure.in and acinclude.m4 both
3174         broken.
3176 2010-11-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
3178         Fix spurious failures of silent-rules tests with Sun Fortran.
3179         * tests/silentf77.test: Strip from the make output some verbose
3180         messages possibly printed by the SunStudio fortran compilers, to
3181         avoid spurious failures.  Add a trailing `:' command.
3182         * tests/silentf90.test: Likewise.
3184 2010-11-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
3186         Fix spurious failures of silent5.test with Sun Fortran.
3187         * tests/silent5.test: Strip from the make output some verbose
3188         messages possibly printed by the SunStudio fortran compilers,
3189         to avoid spurious failures.  This bug has been there from the
3190         very first version of this test script.
3192 2010-11-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
3194         Fix regression in colon{5,6}.test (failures on AIX 5.3).
3195         * tests/colon5.test: Also substitute `@SHELL@' with `$SHELL' when
3196         post-processing the generated Makefile.in, to work around a bug
3197         of AIX 5.3 make which doesn't allow setting the `$(SHELL)' macro
3198         on the commend line.  Calls to `$MAKE' adjusted accordingly.
3199         * tests/colon6.test: Likewise.
3200         Regression introduced in commit v1.11-175-gf9fe878 "Modernize,
3201         improve and/or extend tests `colon*.test", and reported by Ralf
3202         Wildenhues.
3204 2010-11-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
3206         Fix regression in ansi.test (failure on AIX 5.3).
3207         * tests/ansi.test: Remove redundant hackish check done using a
3208         hand-postprocessed Makefile.in.  This check worked by setting
3209         the `$(SHELL)' macro on the command line of make, but this is
3210         not supported by the AIX 5.3 make implementation.
3211         This bug has been lurking for a long time, and was activated by
3212         commit v1.11-125-gc1f6cdb "Enable `errexit' shell flag in various
3213         tests".  Report by Ralf Wildenhues.
3215 2010-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3217         tests: avoid '##'-style comments inside recipe commands.
3218         * tests/confh.test, tests/confh8.test: Remove
3219         double-hash comments from makefile rule commands, they
3220         are not part of the Automake API.
3222 2010-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3224         tests: work around dash quoting issue in case statements.
3225         * tests/color.test, tests/color2.test: Quote variable in case
3226         pattern, to avoid skipping tests with dash 0.5.5.1.
3228 2010-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3230         Rebuild menus in the manual.
3231         * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
3232         Thanks to Ian Lance Taylor for the suggestion.
3234         Fix install-strip when $(STRIP) contains several words.
3235         * lib/am/install.am (install-strip): Update comment.  Use
3236         separate sub-make invocations for empty and nonempty $(STRIP),
3237         to fix quoting issues.
3238         * tests/strip2.test, tests/strip3.test: New tests.
3239         * tests/Makefile.am (TESTS): Adjust.
3241 2010-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3243         Fix yaccdry.test failure: require bison.
3244         * tests/yaccdry.test: Require bison.
3245         Found by NixOS Hydra.
3247 2010-11-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
3249         Fix a bug in variable concatenation with `+='.
3250         * lib/Automake/VarDef.pm (append): Since the content of the
3251         "appended-to" variable is going to be unconditionally normalized
3252         later, simply separate the appended value with a single whitespace
3253         character, instead of trying to be uselessly smarter by using
3254         escaped newlines.  This fixes a bug in which extra backslashes
3255         where erroneously inserted in the variable's final value.
3256         * tests/pluseq11.test: New test, exposing the bug.
3257         * tests/Makefile.am (TESTS): Update.
3258         Reported by Andy Wingo.
3260 2010-11-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
3262         Fix bug in rules for creating vala vapi/header files.
3263         * automake.in (lang_vala_finish_target): Add forgotten "fi" in an
3264         if control structure in a generated make rules.  Bug introduced
3265         by previous commit `v1.11-221-gd7c1679', and revealed by failure
3266         of test `vala2.test'.
3268 2010-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3270         Fix and document rules to not touch the tree with `make -n'.
3271         * doc/automake.texi (Multiple Outputs): Document the problem of
3272         modifications during dry-run execution, propose solution.
3273         * NEWS: Update.
3274         * automake.in (lang_vala_finish_target): Split recipe so the
3275         stamp file is not removed with GNU `make -n'.
3276         (lang_yacc_target_hook): Separate removal of parser output file
3277         and header remaking.
3278         * lib/am/lisp.am ($(am__ELCFILES)): Determine whether -n was
3279         passed to make, take care not to remove any files in that case.
3280         * lib/am/remake-hdr.am (%CONFIG_H%): Separate removal of
3281         %STAMP% file from induced remaking of config header.
3282         * tests/autohdrdry.test, tests/lispdry.test, tests/yaccdry.test:
3283         New tests.
3284         * tests/Makefile.am (TESTS): Update.
3286 2010-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3288         Add FAQ entry for bug reporting instructions.
3289         * doc/automake.texi (Reporting Bugs): New section.
3290         (Introduction): Refer to it.
3292 2010-10-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
3294         Add support for newer python versions.
3295         * m4/python.m4 (AM_PATH_PYTHON): Add python2.7 and python3.2 to
3296         _AM_PYTHON_INTERPRETER_LIST.  Since we are at it, break a long
3297         line and fix indentation.
3298         * THANKS: Updated.
3299         From a report by Thomas Klausner.
3301         Add test for `AM_WITH_DMALLOC' macro.
3302         * tests/dmalloc.test: New test.
3303         * tests/Makefile.am (TESTS): Update.
3305         Fix nits and bugs in tests `help*.test'.
3306         * tests/help4.test: Fix broken sed commands used to strip `-W...'
3307         flags away from "$AUTOMAKE" and "$ACLOCAL".
3308         * tests/help3.test: Likewise, and fix a botched comment.
3309         * tests/help.test: Likewise.  Also, use "AUTOMAKE_fails ..."
3310         instead of "$AUTOMAKE ... && Exit 1", for consistency and to
3311         please maintainer-check.
3312         * tests/help2.test: Likewise.
3314 2010-10-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
3315             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3317         Improve tests `help*.test' (also fixes maintcheck failures).
3318         * tests/help.test: To run automake, use `$AUTOMAKE' with all `-W'
3319         flags stripped away rather than hard-coded `automake-$APIVERSION',
3320         to better honour user-overrides.  Similarly for aclocal.
3321         * tests/help2.test: Likewise.
3322         * tests/help3.test: Likewise.
3323         * tests/help4.test: Likewise.
3325 2010-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3327         Document and fix expansion of variables before rules.
3328         * doc/automake.texi (General Operation): Document that variables
3329         are expanded before rules.
3330         * lib/am/check.am (am__check_post): Reword a bit so it does not
3331         get matched as a rule.
3332         Suggestion by Ben Pfaff.
3334 2010-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3336         Revert "parallel-tests: avoid command-line length limit issue."
3337         This reverts commit 24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835,
3338         because it re-opened the bug fixed by v1.11-10-g218e678.
3340         2010-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3342         parallel-tests: avoid command-line length limit issue.
3343         * automake.in (handle_tests): New argument $makefile, new
3344         substitution %MAKEFILE%.
3345         (generate_makefile): Adjust.
3346         * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
3347         sanitized TEST_LOGS value as makefile snippet on standard
3348         input to $(MAKE), to avoid exceeding the command line limit on
3349         w32 (MSYS).
3350         * NEWS: Update.
3351         Report by Bob Friesenhahn.
3353 2010-09-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
3355         Extend tests on `--help' and `--version' options.
3356         * tests/help.test: Create a new empty directory and chdir into
3357         it, rather than removing already present files.  Run the aclocal
3358         and automake wrapper scripts directly, instead of relying on
3359         $AUTOMAKE and $ACLOCAL.  Be sure to correctly match literal dots
3360         in aclocal's and automake's stderr.  Add a trailing `:' command.
3361         * tests/help2.test: New test, checking that options `--help' and
3362         `--version' works in directories with broken `configure.in'.
3363         * tests/help3.test: New test, checking that options `--help' and
3364         `--version' take precedence on the other options.
3365         * tests/help4.test: New test, checking that the first among the
3366         `--help' and `--version' options to be specified on the command
3367         line wins.
3368         * tests/Makefile.am (TESTS): Updated.
3370 2010-09-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
3372         Testsuite: Use `$PATH_SEPARATOR', not `:', when extending PATH.
3373         * tests/compile2.test: Do no uselessly (implicitly) repeat the
3374         computation of PATH_SEPARATOR again.
3375         * tests/instmany-mans.test: Use `$PATH_SEPARATOR', not `:', when
3376         extending/redefining PATH.
3377         * tests/instmany-python.test: Likewise.
3378         * tests/instmany.test: Likewise.
3379         * tests/man4.test: Likewise.
3380         * tests/mkinst3.test: Likewise.
3381         * tests/mmodely.test: Likewise.
3382         * tests/multlib.test: Likewise.
3383         * tests/txinfo30.test: Likewise.
3384         * tests/README (Section "Writing test cases" subsection "Do"):
3385         Updated.
3386         * Makefile.am (sc_tests_PATH_SEPARATOR): New maintainer check.
3387         (syntax_check_rules): Updated.
3389         Testsuite: new variables `$PATH_SEPARATOR' and `$APIVERSION'.
3390         * tests/defs.in ($APIVERSION):  New AC_SUBST'd variable.
3391         ($ACLOCAL, $AUTOMAKE): Use it.
3392         ($PATH_SEPARATOR):  New AC_SUBST'd variables.
3393         ($PATH): Use it.
3395 2010-09-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
3397         Manual: be more agnostic w.r.t. version control system used.
3398         * doc/automake.texi (Basics of Distribution): Also refer to `.svn'
3399         directories as a type of probably-unwanted files that are copied
3400         regardless when adding directories to EXTRA_DIST.
3401         (The dist Hook): Show a dist-hook example which removes Subversion
3402         `.svn' private directories from distdir, rather than CVS private
3403         directories.
3404         (missing and AM_MAINTAINER_MODE): Try to be more agnostic w.r.t.
3405         the version control system used.
3407         Manual: index refer to target "git-dist", not "cvs-dist".
3408         * doc/automake.texi (General Operation): Index the non-standard
3409         example about "git-dist" under the "git-dist" label, not under
3410         the "cvs-dist" one.
3412         Perl modules: remove references to "Automake CVS repository".
3413         * lib/Automake/Channels.pm: Update comments to refer to "Automke's
3414         git repository" rather than to "Automake's CVS repository".
3415         * lib/Automake/Configure_ac.pm: Likewise.
3416         * lib/Automake/FileUtils.pm: Likewise.
3417         * lib/Automake/Struct.pm: Likewise.
3418         * lib/Automake/XFile.pm: Likewise.
3419         * lib/Automake/Version.pm (=head1 DESCRIPTION): Refer to "git
3420         branches" rather than "CVS branches".
3422         Remove obsolete .cvsignore files.
3423         * .cvsignore, doc/.cvsignore, lib/.cvsignore, lib/am/.cvsignore,
3424         lib/Automake/.cvsignore, lib/Automake/tests/.cvsignore,
3425         m4/.cvsignore, tests/.cvsignore: Files deleted.  Even when using
3426         savannah's CVS readonly mirror there's no way to commit back to
3427         the real repository, so this files are not worth maintaining or
3428         keeping around.
3430 2010-09-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
3432         * m4/dmalloc.m4: Bump serial number and copyright years.
3434 2010-09-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
3436         Fix broken link in `AM_WITH_DMALLOC' help screen.
3437         * m4/dmalloc.m4 (AM_WITH_DMALLOC): Refer only to the dmalloc site
3438         `http://www.dmalloc.com', not to the dmalloc tarball there (which
3439         seems to have been removed, substituted by multiple release
3440         tarballs now).
3442 2010-09-17  Eric Blake  <eblake@redhat.com>
3444         Avoid triple-space after period.
3445         * automake.in (handle_single_transform): Avoid 3 spaces at
3446         sentence end.
3447         * ChangeLog.03: Likewise.
3448         * lib/Automake/ChannelDefs.pm: Likewise.
3449         * lib/Automake/Channels.pm (_print_message): Likewise.
3450         * lib/Automake/Rule.pm (rule): Likewise.
3451         * lib/Automake/Variable.pm (var): Likewise.
3452         * lib/am/distdir.am: Likewise.
3453         * tests/insthook.test: Likewise.
3455 2010-09-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
3457         Test automake-generated portions of configure help screen.
3458         * tests/help-depend.test: New test.
3459         * tests/help-depend2.test: Likewise.
3460         * tests/help-dmalloc.test: Likewise.
3461         * tests/help-init.test: Likewise.
3462         * tests/help-lispdir.test: Likewise.
3463         * tests/help-maintainer.test: Likewise.
3464         * tests/help-multilib.test: Likewise.
3465         * tests/help-regex.test: Likewise.
3466         * tests/help-silent.test: Likewise.
3467         * tests/help-upc.test: Likewise.
3468         * tests/mmode.test: Remove tests on `configure --help' output,
3469         they are superseded by tests in `help-maintainer.test'.
3470         * tests/Makefile.am (TESTS): Update.
3472 2010-09-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
3474         * tests/README: Don't put GCS mandated tools in $required.
3476 2010-09-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3478         * HACKING: Hint at old commits with `git describe' output.
3480 2010-09-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
3482         Fix regression in test `colon4.test'.
3483         * tests/colon4.test: Fix botched editing to `configure.in'
3484         that made the test useless.  Since we are at it, improve
3485         comments and make grepping of generated Makefile.in slightly
3486         stricter.
3487         Regression introduced by change "Modernize, improve and/or
3488         extend tests `colon*.test" (Stefano Lattarini, 2010-08-08).
3490 2010-09-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
3492         Do not require "gzip" explicitly in tests.
3493         The gzip utility is simply expected to be present on any decent
3494         target system for Automake.  So it's pointless to put it in
3495         $required.
3496         * tests/install2.test ($required): Do not require "gzip".
3497         * tests/lex3.test: Likewise.
3498         * tests/pr9.test: Likewise.
3499         From a suggestion by Ralf Wildenhues.
3501         Make some `confh*.test' tests more "semantic" (plus tweakings).
3502         * tests/confh.test: Run "autoconf", "configure" and "make check",
3503         instead of munging/grepping the generated `Makefile.in'.
3504         * tests/confh4.test: Relax the grepping of Makefile.in w.r.t.
3505         white spaces.  Do not create useless dummy source file `foo.c'
3506         and useless dummy header file `acconfig.h'.
3507         (configure.in): Remove superfluous call to `AC_OUTPUT'.
3508         * tests/confh6.test: Add trailing `:' command.
3509         * tests/confh7.test: In comments, add reference to ...
3510         * tests/confh8.test: ... this new test, "semantic" sister
3511         of `confh7.test'.
3512         * tests/Makefile.am (TESTS): Updated.
3513         Prompted by a report from Ralf Wildenhues.
3515         Remove useless whitespace padding in XFAIL_TESTS definition.
3516         * tests/Makefile.am (XFAIL_TESTS): Remove whitespace padding.
3518 2010-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3520         parallel-tests: avoid command-line length limit issue.
3521         * automake.in (handle_tests): New argument $makefile, new
3522         substitution %MAKEFILE%.
3523         (generate_makefile): Adjust.
3524         * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
3525         sanitized TEST_LOGS value as makefile snippet on standard
3526         input to $(MAKE), to avoid exceeding the command line limit on
3527         w32 (MSYS).
3528         * NEWS: Update.
3529         Report by Bob Friesenhahn.
3531         Posix 2008 requires make to set errexit.
3532         * lib/am/check.am: Update comment.
3534 2010-08-27  Stefano Lattarini  <stefano.lattarini@gmail.com>
3536         Fix bug in test missing6.test.
3537         * tests/missing6.test: Fix the hack used to edit `configure.in',
3538         to avoid producing a configure script that breaks with shells
3539         that do not support $LINENO.  Also throw in a couple of cosmetic
3540         changes.
3542 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3544         Improve robustness of mdate-sh script.
3545         * lib/mdate-sh: Sanitize zsh behavior on startup, to ensure
3546         $ls_command is word-split properly upon invocation.
3547         (error): New function.
3548         (main): Use it.  Improve error checking to avoid endless loop
3549         in case $ls_command gave bogus output.  Fix eval quotation.
3550         * tests/mdate6.test: New test, to expose eval quotation error.
3551         * tests/Makefile.am: Update.
3553 2010-08-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
3555         Fix potential regressions in depcomp{3,5}.test.
3556         * tests/depcomp3.test: Do not uselessly escape the character `$'
3557         in makefile rules, when it's used to expand a make macro.
3558         * tests/depcomp5.test: Likewise.
3560 2010-08-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
3561             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3563         Docs: clarify how to avoid automatic dependencies tracking.
3564         * doc/automake.texi (Automatic dependency tracking): Mention that
3565         automatic dependencies tracking is enabled by default, but that
3566         the package developer can disable it altogether.  Add a reference
3567         to the proper section for a more in-depth explanation.
3569         Fix typo in manual (`Makefile.in' instead of `Makefile.am').
3570         * doc/automake.texi (Automatic dependency tracking): Fix typo.
3572 2010-08-16  Bruno Haible  <bruno@clisp.org>
3574         Don't hide the table of contents.
3575         * doc/automake.texi: Move the table of contents to the beginning.
3577 2010-08-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
3579         Tweak and/or extend some `acloca*.test' tests.
3580         * tests/aclocal8.test:  Ensure verbose printing of captured
3581         output.
3582         * tests/aclocal.test: Likewise.  Also, add trailing `:'
3583         command.
3584         * tests/acloca19.test: Likewise.
3585         * tests/aclocal5.test: Add trailing `:' command, and prefer
3586         `$me' over hard-coded test name.
3587         * tests/aclocal6.test: Likewise.
3588         * tests/aclocal18.test: Add trailing `:' command, and make
3589         some grepping slightly stricter.
3590         * tests/acloca14.test: Likewise.  Also, prefer `diff' over
3591         `cmp', and add some "cosmetic" blank lines.
3593 2010-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
3595         Tweak and extend tests `pr[!0-9]*.test'.
3596         * tests/primary3.test: Add trailing `:' command.
3597         * tests/primary.test: Make grepping of Automake's stderr stricter.
3598         Also, add trailing `:' command, and cosmetic changes in spacing.
3599         * tests/primary2.test: Likewise.
3600         * tests/prefix.test: Enable `errexit' shell flags, and related
3601         changes.  Add a trailing `:' command.
3602         * tests/proginst.test: Likewise.
3604         Modernize, improve and extend tests for PR (`pr[0-9]*.test').
3605         * tests/pr2.test: Add trailing `:' command.
3606         * tests/pr229.test: Likewise.
3607         * tests/pr401.test: Likewise.
3608         * tests/pr401b.test: Likewise.
3609         * tests/pr401c.test: Likewise.
3610         * tests/pr300-prog.test: Likewise, plus cosmetic changes in
3611         spacing.
3612         * tests/pr300-lib.test: Likewise.
3613         * tests/pr300-ltlib.test: Likewise, and ensure verbose printing
3614         of captured make stdout.
3615         * tests/pr211.test: Add trailing `:' command.  Also, use the
3616         `configure.in' stub created by ./defs, rather than writing it
3617         from scratch.
3618         * tests/pr204.test: Likewise, plus cosmetic spacing changes.
3619         * tests/pr287.test: Likewise, and move setting of `errexit' shell
3620         flag earlier in the script (just after inclusion of ./defs).
3621         * tests/pr220.test: Make grepping of Automake's stderr stricter.
3622         Also, add trailing `:' command, and cosmetic changes in spacing.
3623         * tests/pr224.test: Move setting of `errexit' shell flag earlier
3624         in the script (just after inclusion of ./defs).  Do not export
3625         `CC=gcc' to configure explicitly (it's already exported globally
3626         in ./defs, since we have "gcc" in $required).  Use the stub for
3627         `configure.in' created by ./defs, rather than writing it from
3628         scratch.  Do not create dummy files required by "gnu" mode (e.g.
3629         README, NEWS), since we run automake in foreign mode anyway.
3630         * tests/pr72.test: Enable `errexit' shell flags, and related
3631         changes.  Extend existing checks a bit.
3632         * tests/pr9.test: Likewise.  Also, avoid obsolescent constructs in
3633         the generated `configure.in', and extend existing checks over the
3634         generated tarball a bit.
3635         * tests/pr87.test: Enable `errexit' shell flags, and related
3636         changes.  Add a trailing `:' command.  Also, do not create dummy
3637         files required by "gnu" mode (e.g. README, NEWS), since we run
3638         automake in foreign mode anyway.
3639         * tests/pr243.test: Avoid obsolescent constructs in the generated
3640         `configure.in'.  Enable the `errexit' shell flag, and related
3641         changes.  Cosmetic changes to spacing, add trailing `:' command,
3642         and add a "FIXME" comment.
3643         * tests/pr266.test: Likewise, and add explicit command line switch
3644         `--enable-dependecy-tracking' to the ./configure call.
3645         * tests/pr279.test: Avoid obsolescent constructs in the generated
3646         `configure.in'; also, use the `configure.in' stub created by
3647         ./defs, rather than writing it from scratch.  Enable `errexit'
3648         shell flag, and related changes.  Add trailing `:' command.
3649         * tests/pr279-2.test: Likewise, and make grepping of Makefile.in
3650         stricter.
3651         * tests/pr307.test: Move setting of `errexit' shell flag earlier
3652         in the script (just after inclusion of ./defs).  Escape literal
3653         dots in grep regular expressions.  Also, add a trailing `:'
3654         command, and cosmetic changes to spacing.
3656         Tests for PR: add excerpts from original bug report, for clarity.
3657         * tests/pr2.test: Ditto.
3658         * tests/pr9.test: Likewise.
3659         * tests/pr72.test: Likewise.
3660         * tests/pr87.test: Likewise.
3661         * tests/pr211.test: Likewise.
3662         * tests/pr220.test: Likewise.
3663         * tests/pr224.test: Likewise.
3664         * tests/pr229.test: Likewise.
3665         * tests/pr243.test: Likewise.
3666         * tests/pr266.test: Likewise.
3667         * tests/pr279.test: Likewise, and tell to keep it in sync
3668         with its sister test.
3669         * tests/pr279-2.test: Likewise.
3671 2010-08-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
3673         Tweak, extend and improve tests `cond[a-z]*.test'.
3674         * tests/condd.test: Add trailing `:' command.  Typofix in
3675         comment.
3676         * tests/condhook.test: Make sure target `install-data-hook' is
3677         not called by `make install', but that data files are installed.
3678         Use proper m4 quoting in configure.in. Add trailing `:' command.
3679         * tests/condhook2.test: New test, sister test of condhook, with
3680         inverted semantic.
3681         * tests/condinc2.test: Use proper m4 quoting in configure.in.
3682         Prefer trailing `:' command over trailing `Exit 0'.
3683         * tests/condman2.test: Enable errexit shell flag, and related
3684         changes.  Add trailing `:' command.
3685         * tests/condman.test: Likewise.  Also, do not create useless
3686         dummy manpages, and use proper m4 quoting in configure.in.
3687         * tests/condman3.test: New test, similar to condman.test, but
3688         it also runs ./configure and "make install", and check the
3689         installed files.
3690         * tests/Makefile.am (TESTS): Updated.
3692         Modernize, improve and/or extend tests `colon*.test.
3693         * tests/colon.test: Rely on the `configure.in' stub created by
3694         `./defs', rather than writing one from scratch.  Do not create
3695         a useless dummy file.  Add trailing `:' command.
3696         * tests/colon4.test: Enable the `errexit' shell flag, and
3697         related changes.  Rely on the `configure.in' stub created by
3698         `./defs', rather than writing one from scratch.
3699         * tests/colon7.test: Enable `errexit' shell flag, and related
3700         changes.  Improve the generated `configure.in' file.  Add
3701         trailing `:' command.
3702         * tests/colon2.test: Likewise.  Also, add some new checks.
3703         * tests/colon5.test: Improve the generated `configure.in' file.
3704         Add new, much deeper checks.  Add trailing `:' command.
3705         * tests/colon6.test: Likewise.
3706         * tests/colon3.test: Add trailing `:' command.  Remove useless
3707         comments and echos.  Improve the generated `configure.in' file.
3708         make some grepping tests stricter.  Add a "FIXME" comments about
3709         planned improvements.
3711         Improve and extend tests `asm*.test'.
3712         * tests/asm.test: Use configure.in stub generated by ./defs,
3713         and avoid obsoleted autoconf constructs.  Make grepping of
3714         Automake stderr stricter.  Do not create useless source file.
3715         Improve verbose messages.  Minor cosmetic changes.  Tell to
3716         keep it in sync with other sister tests asm*.test.
3717         * tests/asm2.test: Likewise.
3718         * tests/asm3.test: Likewise.
3720         Modernize, improve and/or extend test scripts `conf*.test'.
3721         * tests/confh5.test: Cosmetic changes.
3722         * tests/conff.test: Likewise.
3723         * tests/confdeps.test: Likewise.
3724         * tests/conflnk.test: Likewise.
3725         * tests/conflnk2.test: Likewise.
3726         * tests/confsub.test: Likewise.
3727         * tests/confvar.test: Likewise, and make grepping of Makefile.in
3728         stricter.
3729         * tests/confvar2.test: Likewise.
3730         * tests/conflnk3.test: Cosmetic changes.  Re-enable a temporarily
3731         disabled test (which didn't work with autoconf <= 2.59, but now we
3732         are requiring autoconf 2.62, so...)
3733         * tests/conflnk4.test: Cosmetic changes, and extend existing tests
3734         accordingly to "TODO" comments.
3735         * tests/conff2.test: Make grepping of Automake's stderr stricter.
3736         Add some comments explaining why we don't use the `configure.in'
3737         stub preset be ./defs.
3738         * tests/confh.test: Use the `configure.in' stub created by ./defs,
3739         rather than writing one from scratch, and do not call AC_OUTPUT.
3740         Enable `errexit' shell flag, and related changes.  Prefer diff over
3741         cmp to compare text files. Prefer perl over sed to fetch the value
3742         of $(DIST_COMMON) from Makefile.in.  Make grepping of the contents
3743         of $(DIST_COMMON) stricter.
3744         * tests/confh4.test: Use the `configure.in' stub created by ./defs,
3745         rather than writing one from scratch.  Make grepping of Makefile.in
3746         stricter.
3747         * tests/confh5.test: Make grepping of `config.h' stricter.  Add a
3748         comment.
3749         * tests/configure.test: Avoid obsolescent constructs in generated
3750         `configure.ac'.  Do not write `configure.in' two times.  Escape
3751         literal dots in grep regular expressions.
3752         * tests/confincl.test:  Enable `errexit' shell flag, and related
3753         changes.  Prefer fgrep over grep.  Other cosmetic changes.
3754         * tests/config.test: Renamed to ...
3755         * tests/confh6.test: ... this.  Fix m4 quoting in `configure.in',
3756         and make grepping of `config.h' and `config.h.in' stricter.
3757         * tests/conf2.test: Renamed ...
3758         * tests/confh7.test: ... to this.  Use the `configure.in' stub
3759         created by ./defs, rather than writing one from scratch.  Try to
3760         run the checks both with and without AC_PROG_CC and AC_OUTPUT in
3761         `configure.in'.
3762         * tests/Makefile.am (TESTS): Updated.
3764         Minor improvements and fixes in tests `depcomp*.test'.
3765         * tests/depcomp.test: Do not create useless dummy source files.
3766         Add a trailing `:' command.
3767         * tests/depcomp2.test: Use `unset' on the CFLAG variable to ensure
3768         it's not in in the environment, rather than exporting it with an
3769         empty value.  Do not pass CC=gcc to configure, as that's already
3770         done in ./defs since we have gcc in $required.  Ensure verbose
3771         printing of captured stderr, and normalize its checking.  Add a
3772         trailing `:' command.
3773         * tests/depcomp3.test: Quote literal dots and dollar characters in
3774         grep regexps.  Always use `: >' rather than `touch' to create empty
3775         files.  Explicitly declare phony targets as such in the created
3776         Makefile.am.  Add a trailing `:' command.
3777         * tests/depcomp4.test: Quote literal dots and dollar characters in
3778         grep regexp.  Explicitly declare phony targets as such in the
3779         created Makefile.am.  Ensure verbose printing of captured makes'
3780         stoud/stderr.  Add a trailing `:' command.
3781         * tests/depcomp5.test: Move setting of `errexit' shell flag earlier
3782         in the script (just after inclusion of ./defs).  Quote literal dots
3783         and dollar characters in grep regexps.  Explicitly declare phony
3784         targets as such in the created Makefile.am.  Add a trailing `:'
3785         command.
3786         * tests/depcomp6.test: Consistently use m4 quoting in the generated
3787         configure.in.  Cosmetic fixes to spacing.  Make the "dummy" `if'
3788         statement required by OpenBSD's sh `set -e' more robust, and add
3789         explanatory comments to it.
3790         * tests/depcomp7.test: Likewise, and add  a trailing `:' command.
3792         Separate failing part of test `all.test'.
3793         * tests/all.test: Keep only (x)failing part of the test.  Working
3794         checks moved out to ...
3795         * tests/all2.test: ... this new test.
3796         * tests/Makefile.am (TESTS): Updated.
3798         Modernize, improve and extend tests `subobj*.test'.
3799         * tests/subobjname.test:  Add trailing `:' command.
3800         * tests/subobj.test: Make grepping of `Makefile.in' stricter.
3801         Escape literal dots in grep regexps.
3802         * tests/subobj2.test:  Add trailing `:' command.  Do not use the
3803         unportable fgrep option `-e'.
3804         * tests/subobj3.test: Add trailing `:' command.
3805         (configure.in): Use proper m4 quoting, and avoid obsolescent
3806         constructs.
3807         * tests/subobj8.test: Likewise.  Also, enable `errexit' shell
3808         flag, with related changes
3809         * tests/subobj4.test: Likewise.  Also, make grepping of
3810         `Makefile.in' stricter.
3811         * tests/subobj5.test: Add trailing `:' command.  Move setting of
3812         `errexit' shell flag earlier in the script (just after inclusion
3813         of ./defs).
3814         (configure.in): Use the stub created by `./defs', rather than
3815         writing it from scratch, and avoid obsolescent constructs.
3816         * tests/subobj6.test: Add trailing `:' command.  Move setting of
3817         `errexit' shell flag earlier in the script (just after inclusion
3818         of ./defs).  Do not create useless dummy ac-init file `f'.
3819         * tests/subobj7.test: Do not create useless dummy ac-init file
3820         `f'.
3821         (configure.in): Use the stub created by `./defs', rather than
3822         writing it from scratch, and avoid obsolescent constructs.
3823         * tests/subobj9.test: Move setting of `errexit' shell flag earlier
3824         in the script (just after inclusion of ./defs).  Fail the test if
3825         `make distcheck' fails.  Ensure verbose printing of captured make
3826         stdout.  Avoid useless fork by doing simple grep instead of using
3827         test -n "`COMMAND | grep ...`".
3828         (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
3829         (Makefile.am): Explicitly mark target "print" as phony.
3830         * tests/subobj10.test: Removed duplicated call to `set -e'.  Add
3831         trailing `:' command.
3832         (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
3834         Remove a couple of obsoleted tests.
3835         * tests/fpinstall.test: Removed.
3836         * tests/fpinst2.test: Likewise.
3837         * tests/Makefile.am (TESTS): Updated.
3839         Bootstrap: updated HACKING entry.
3840         * HACKING ("Working with git"): Explain how to override the
3841         autoconf and autom4te programs used by the bootstrap process.
3843         Bootstrap: fixlet.
3844         * bootstrap: Do not remove `lib/Automake/Config.pm' anymore,
3845         since we don't generate it.  Correctly quote arguments of
3846         `eval' builtin.  Fixed a botched error message.  Removed an
3847         extra blank line.
3849         Bootstrap: don't search perl in $PATH.
3850         * bootstrap: Do not explicitly search perl in $PATH anymore.
3851         ($PATH_SEPARATOR): Removed, it's no more needed.
3853         Bootstrap: let the user choose which autoconf to use.
3854         * bootstrap ($AUTOCONF): New variable, from the environment.
3855         ($AUTOM4TE): Likewise, for clarity.
3856         Use "$AUTOCONF" instead of calling "autoconf" directly.
3858         Minor improvements to tests ar*.test.
3859         * tests/ar.test: Add trailing `:' command.
3860         * tests/ar2.test: Likewise, and make grepping of generated
3861         Makefile.in stricter.
3863 2010-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3865         Fix maintainer-check failure.
3866         * tests/cond5.test: Quote sleep argument, this isn't about
3867         time stamp differences.
3869         Sync auxiliary files from upstream.
3870         * lib/config.guess, lib/config.sub, lib/texinfo.tex:
3871         Sync from upstream.
3873 2010-08-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
3875         Work around a nasty bug (segfault) of Solaris make.
3876         * lib/am/check.am (recheck, recheck-html): Trim trailing spaces
3877         from $list, to avoid triggering a nasty bug (potential segfault)
3878         on Solaris make.
3880 2010-08-06  Peter Rosin  <peda@lysator.liu.se>
3882         Make cond5.test more robust on MSYS.
3883         * tests/cond5.test: Add delay before the first kill attempt to
3884         cater for problems with MSYS bash.
3886 2010-11-16  Peter Rosin  <peda@lysator.liu.se>
3888         Skip MSVC oriented tests if the shell is not capable.
3889         * tests/defs: New required entry 'xsi-shell'.
3890         * tests/ar-lib.test, tests/compile3.test, tests/compile6.test:
3891         Require a XSI capable shell.
3892         Reported by Ralf Wildenhues.
3894 2010-11-15  Peter Rosin  <peda@lysator.liu.se>
3896         compile: clear the `eat' variable earlier.
3897         * lib/compile: Clear the `eat' variable earlier.
3898         ($scriptversion): Update.
3899         * tests/compile3.test: Prevent regressions.
3901 2010-10-07  Peter Rosin  <peda@lysator.liu.se>
3903         depcomp: add new one-pass depmode for MSVC 7 and later.
3904         * lib/depcomp: Add new depmodes 'msvc7' and 'msvc7msys' which
3905         make use of the -showIncludes option added in MSVC 7.
3906         * m4/depend.m4 (_AM_DEPENDENCIES): Handle the new depmodes
3907         similarly to 'msvisualcpp' and 'msvcmsys' as MSVC does not
3908         support the -o option.
3910 2010-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3912         tests: fix ar-lib.test for echo that interprets backslashes.
3913         * tests/ar-lib.test: Use printf instead of echo.  Avoid test -a.
3914         More robust quoting.
3916 2010-09-21  Peter Rosin  <peda@lysator.liu.se>
3918         compile: implement library search to support MSVC static linking
3919         * lib/compile (func_cl_wrapper): Implement library search and
3920         -static option so that the user can select whether to prefer
3921         dll import libraries or static libraries.  This enables MSVC to
3922         link against dlls generated by libtool without requiring libtool
3923         or workarounds such as -lfoo.dll etc.  Makes the tests/static.at
3924         test case in libtool pass.
3925         * tests/compile3.test: Don't trip up if there happens to exist
3926         a "foo" library in the library search path.
3927         * tests/compile6.test: New test, verifying the library search.
3928         * tests/Makefile.am (TESTS): Update.
3930 2010-09-02  Peter Rosin  <peda@lysator.liu.se>
3932         Make ar-lib support backslashed files in archives.
3933         * lib/ar-lib: If an archive member contains a backslash, make sure
3934         it is escaped when the archive member is extracted.
3935         * tests/ar-lib.test: Test the above.
3937 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
3939         Do file name conversion for object files in the compile wrapper.
3940         * lib/compile (func_cl_wrapper): Do file name conversion for object
3941         files (i.e. extensions .obj, .OBJ, .o and .O) if needed.
3942         * tests/compile4.test: Test the above.
3944 2010-08-16  Peter Rosin  <peda@lysator.liu.se>
3946         Optimize compile script on MSYS.
3947         * lib/compile (func_file_conv): Add new argument 'lazy' which
3948         takes an optional list of conversion types where the requested
3949         conversion isn't needed.
3950         (func_cl_wrapper): Take advantage of the above for cases where
3951         MSYS is doing the conversion for us.
3952         Suggested by Ralf Wildenhues.
3954 2010-08-16  Peter Rosin  <peda@lysator.liu.se>
3956         Support more C++ file extensions for MSVC in the compile script.
3957         * lib/compile (func_cl_wrapper): MSVC only recognizes the .cpp
3958         file extension as C++, unless it's given a hint. So hint about
3959         .cc, .CC, .cxx, .CXX, c++ and C++. Also do path conversion on
3960         .c, .cpp, .CPP, .lib, .LIB and .Lib files.
3961         * tests/compile3.test: Test the C++ hinting.
3963 2010-08-12  Peter Rosin  <peda@lysator.liu.se>
3965         Enable the use of "link -lib" as the wrapped archiver.
3966         * lib/ar-lib: Enable the use of "link -lib" as the wrapped
3967         archiver, as well as allowing some other options to be passed
3968         through to the wrapped archiver.
3969         * tests/ar-lib.test: Test the above.
3971 2010-08-06  Peter Rosin  <peda@lysator.liu.se>
3973         Add new auxiliary 'ar-lib' script, wrapping Microsoft lib.
3974         * lib/ar-lib: New auxiliary script.
3975         * lib/Makefile.am: Add above.
3976         * tests/ar-lib.test: New test.
3977         * tests/Makefile.am: Add above.
3978         * automake.in (@common_files): Distribute the 'ar-lib' script.
3979         * doc/automake.texi (Auxiliary Programs): Mention the new
3980         'ar-lib' script.
3981         (Optional): Mention 'ar-lib' in AC_CONFIG_AUX_DIR.
3982         * NEWS: Update.
3984 2010-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3986         Fix shell pattern negation in compile script.
3987         * lib/compile (func_file_conv): Use `!' not `^' for pattern
3988         negation.
3990 2010-08-01  Peter Rosin  <peda@lysator.liu.se>
3992         Wrap some MSVC options in the compile script.
3993         * lib/compile: MSVC supports naming the output file, the option
3994         is just not called -o, so transform -o into the appropriate form
3995         for MSVC. Also wrap some other options while at it (-L, -l, -Wl,
3996         -Xlinker and -I) and convert file names to windows form where
3997         needed for those options to make MSVC more usable in an
3998         autotooled environment.
3999         * doc/automake.texi (Auxiliary Programs): Document the above
4000         extension of the compile script.
4001         * NEWS: Updated.
4002         * tests/defs.in: New required entry 'cl'.
4003         * tests/compile3.test: New test.
4004         * tests/compile4.test: New test.
4005         * tests/compile5.test: New test.
4006         * tests/Makefile.am: Update.
4008 2010-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4010         Add example git work flow; discuss merge --log in HACKING.
4011         * HACKING: Update.
4012         Suggestion by Stefano Lattarini.
4014         Add more hints for debugging make rules.
4015         * doc/automake.texi (Debugging Make Rules): Show command to find
4016         out expanded values of variables; point to makefile debugger.
4017         * THANKS: Update.
4018         Prompted by suggestion from Ludovic Courtès and Andy Wingo.
4020 2010-07-27  Patrick Welche  <prlw1@cam.ac.uk>  (tiny change)
4022         Fix typo in the manual.
4023         * doc/automake.texi (Scripts): Fix typo.
4025 2010-07-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4027         Document current policy for development with git.
4028         * HACKING (Working with git): Overhaul.
4029         Prompted by suggestion from Stefano Lattarini.
4031         Fix AM_COND_IF for gone-invalid condition shell expression.
4032         * m4/cond-if.m4 (AM_COND_IF): test contents of $COND_TRUE
4033         variable, rather than re-evaluating the shell expression for
4034         the condition.
4035         * tests/cond40.test: Extend test.
4036         * NEWS: Update.
4038         Avoid syntax error if IF-TRUE part of AM_COND_IF expands empty.
4039         * m4/cond-if.m4 (AM_COND_IF): Ensure IF-TRUE part is never empty
4040         to avoid shell syntax error if the m4 expansion is empty.
4041         * tests/cond40.test: Enhance test.
4043         Coverage: bogus option to AM_INIT_AUTOMAKE.
4044         * tests/init2.test: New test.
4045         * tests/Makefile.am: Update.
4047 2010-07-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
4049         Modernize and improve test scripts `subdir*.test'.
4050         * tests/subdir.test: Enable `errexit' shell flag, and related
4051         changes.  Use the `configure.in' stub created by `./defs',
4052         rather than writing one from scratch.
4053         * tests/subdir2.test: Likewise.
4054         * tests/subdir4.test: Likewise.
4055         * tests/subdir3.test: Enable `errexit' shell flag, and related
4056         changes.  Do not create useless dummy source files.
4057         * tests/subdir5.test: Make grepping of Makefile.in (in topdir
4058         and in subdirs) stricter.  Some minor changes to keep it more
4059         in sync with the related test `subdir8.test'.
4060         * tests/subdir8.test: Likewise (but with the related test being
4061         `subdir5.test' here).
4062         * tests/subdir6.test: Cosmetic change in spacing.
4063         * tests/subdir9.test: Define and use new variable `$distdir'.  Add
4064         trailing `:' command.
4065         * tests/subdir10.test: Cosmetic consistency-related change.
4066         * tests/subdirbuiltsources.test: Cosmetic changes in spacings.
4067         (configure.in): Use stub created by `./defs', rather than writing
4068         it from scratch.  Do not use obsoleted and/or deprecated forms of
4069         autoconf/automake macros.
4071         Modernize and improve test scripts `dist*.test'.
4072         * tests/distcleancheck.test: Do not add useless `-e' option to
4073         a $MAKE call.  Extend test by grepping stderr of make.
4074         * tests/distcom2.test: Do not run the same test script on the
4075         Makefile.in twice, but save its output in an intermediate file
4076         instead.  Make grepping of DIST_COMMON definition stricter.
4077         Display the content of more files, to ease debugging.  Add a
4078         trailing `:' command.  Improved heading comments w.r.t. sister
4079         test(s).
4080         * tests/distcom6.test: Likewise, and avoid to uselessly run
4081         autoconf.
4082         * tests/distcom3.test: Ensure verbose printing of captured stdout
4083         and stderr.  Make grepping of captured stderr stricter.  Also,
4084         add trailing `:' command.
4085         * tests/distcom4.test: Declare the target `test' in the generated
4086         Makefile.am as `.PHONY'.  Display content of more files, to ease
4087         debugging.  Add trailing `:' command.
4088         * tests/distcom5.test: Likewise.  Also, factor out common sed
4089         script in subroutine `extract_distcommon'.
4090         * tests/distcom7.test: Prefer cat + here-doc over echo to write
4091         test Makefile.am files.  Add a trailing `:' command.
4092         * tests/distname.test: Prefer `gzip -d' over `gunzip'.  Move the
4093         call to `set -e' earlier.  Be stricter and more verbose in the
4094         checking of the generated tarball.
4095         (configure.in): Use the stub provided by ./defs, instead of
4096         writing it from scratch.  Avoid obsoleted constructs.  Remove
4097         useless call to `AM_PROG_CC_C_O'.
4098         * tests/distdir.test: Various minor improvements/normalizations.
4099         * tests/distlinks.test: Likewise.
4101 2010-07-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
4103         Improve and extend test cond5.test.
4104         * tests/cond5.test: Do not blindly sleep 60 seconds before polling
4105         the background automake process, but poll it every 10 seconds for
4106         at most 30 times (this makes the test both faster on good machines,
4107         and more resilient to spurious timeout-due failures when in low
4108         priority or on heavily-loaded systems).
4109         Check also that automake writes the expected error messages on the
4110         standard error.
4111         Enable `errexit' flag, and related changes.
4112         Rely on the `configure.in' stub created by `./defs', rather than
4113         writing one from scratch.
4115 2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4117         Update program --help output to match current GCS.
4118         * configure.ac: Set and substitute PACKAGE_URL if AC_PACKAGE_URL
4119         is not defined, for compatibility to Autoconf < 2.64.
4120         * Makefile.am (do_subst): Substitute PACKAGE_BUGREPORT and
4121         PACKAGE_URL.
4122         (sc_diff_automake_in_automake): Update number of diff lines for
4123         additional substitutions.
4124         * aclocal.in (usage): Use PACKAGE_BUGREPORT.  Point to Automake
4125         home page and GNU general help page.
4126         * automake.in (usage): Likewise.
4127         * doc/automake.texi: New flag PACKAGE_BUGREPORT, to factor email
4128         address.
4129         (Introduction, Creating amhello, amhello Explained, Options):
4130         Use it throughout.
4131         * lib/Automake/Makefile.am (do_subst): Substitute
4132         PACKAGE_BUGREPORT.
4133         * lib/Automake/Config.in ($PACKAGE_BUGREPORT): New global.
4134         * lib/Automake/ChannelDefs.pm: Use it for footer of fatal
4135         messages.
4137         Clean up @var handling in the manual.
4138         * doc/automake.texi: Throughout the manual, lower-case @var
4139         names, replace a few one-character names.
4141 2010-06-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
4143         Fix typo-related bug in test script silent5.test.
4144         * tests/silent5.test: Use $EGREP, not $GREP (which is not even
4145         defined).
4147         Tests: remove useless repetitions of `foreign' automake option.
4148         * tests/multlib.test (configure.in): Remove useless use of
4149         `foreign' option in AM_INIT_AUTOMAKE (the `--foreign' option is
4150         already in $AUTOMAKE by default, so no point in repeating it).
4151         * tests/subobj10.test: Likewise.
4152         * tests/subobj9.test: Likewise.
4153         * tests/lex3.test (Makefile.am): Similarly, remove useless use
4154         of `foreign' option in AUTOMAKE_OPTIONS.
4155         * tests/lex5.test: Likewise.
4156         * tests/pr279.test: Likewise.
4157         * tests/pr279-2.test: Likewise.
4158         * tests/specflg3.test: Likewise.
4159         * tests/target-cflags.test: Likewise.
4161         Drop useless requirement "gzip" in lex5.test.
4162         * tests/lex5.test ($required): Do not list "gzip", as it's
4163         never used.
4165 2010-06-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
4167         Fix bugs in test script silent5.test.
4168         * tests/silent5.test: Fixed a nasty bug (due to the use of grep
4169         instead of egrep) that could have led to false negatives.
4171 2010-06-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
4173         Add a test checking that distributed broken symlinks cause
4174         `make dist' to fail.
4175         * tests/distlinksbrk.test: New test.
4176         * tests/Makefile.am (TESTS): Updated.
4178 2010-06-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4180         Fix minor testsuite issues, update docs, for Yacc/Lex changes.
4181         * doc/automake.texi (Yacc and Lex): Mention AM_YFLAGS, YFLAGS
4182         and AM_LFLAGS, LFLAGS in the order in which they now appear in
4183         the rules.
4184         * NEWS: Update.
4185         * tests/lflags.test, tests/lflags2.test, tests/yflags.test,
4186         tests/yflags2.test: Prefer `make -e' over `make VAR=VAL', to
4187         please maintainer-check.  Ensure generated C files contain a
4188         declaration, to please compilers.
4190 2010-06-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
4192         Fix bugs in Automake Yacc/Lex support w.r.t. $(AM_FLAGS) and
4193         $(FLAGS) precedence.
4194         * automake.in: Fix registration of languages "Lex", "Lex (C++)",
4195         "Yacc" and "Yacc (C++)", so that $(LFLAGS) has precedence over
4196         $(AM_LFLAGS) and $(YFLAGS) has precedence over $(AM_YFLAGS).
4197         * tests/Makefile.am (XFAIL_TESTS): Updated accordingly.
4198         * NEWS: Updated.
4200         New tests, exposing bugs in Automake Yacc/Lex support w.r.t.
4201         $(AM_FLAGS) and $(FLAGS) precedence.
4202         * tests/lflags.test: New test, check that user $(LFLAGS) takes
4203         precedence over automake (AM_LFLAGS) and (foo_LFLAGS).  Still
4204         xfailing.
4205         * tests/lflags2.test: Likewise.
4206         * tests/yflags.test: New test, check that user $(YFLAGS) takes
4207         precedence over automake (AM_YFLAGS) and (foo_YFLAGS).  Still
4208         xfailing.
4209         * tests/yflags2.test: Likewise.
4210         * tests/Makefile.am (TESTS, XFAIL_TESTS): Extended accordingly.
4212 2010-06-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
4214         Modernize, improve and extend tests `suffix*.test'.
4215         * tests/suffix3.test: Enable `errexit' shell flag, and related
4216         changes.
4217         * tests/suffix4.test: Likewise.
4218         * tests/suffix6.test: Likewise, and do not create a useless dummy
4219         source file.
4220         * tests/suffix7.test: Likewise.
4221         * tests/suffix5.test: Enable `errexit' shell flag, and related
4222         changes.  Make grepping of Makefile.in slightly stricter.
4223         * tests/suffix.test: Enable `errexit' shell flag, and related
4224         changes.  Also, do not redirect grep output to /dev/null, as this
4225         might unmotivatedly hide useful information.
4226         * tests/suffix2.test: Move setting of `errexit' shell flag earlier
4227         in the script (just after inclusion of ./defs).  Use a more
4228         idiomatic way to count text occurrences in Makefile.in with
4229         grep.  Do not create useless dummy source files.
4230         * tests/suffix10.test: Ensure verbose printing of captured make
4231         stdout.  Minor cosmetic changes.
4232         * tests/suffix8.test: Likewise.  Also, drop useless call to the
4233         env(1) utility, and make grepping of make output stricter by using
4234         $FGREP rather than plain grep.
4235         * tests/suffix11.test: Likewise.
4236         * tests/suffix12.test: Likewise.
4237         * tests/suffix9.test: Prefer cat + here-doc over echo to append to
4238         the `configure.in' stub.  Cosmetic changes.
4239         * tests/suffix13.test: Cosmetic spacing change.
4241 2010-06-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
4243         Add useful comment in test script ext.test.
4244         * tests/ext.test: Add a comment explaining why an apparently
4245         useless `if' statement is indeed required.
4247         Add useful comment in test script obsolete.test.
4248         * tests/obsolete.test: Add a comment explaining why we need
4249         an indirection in adding $AUTOUPDATE to $required.
4251         Normalize whitespaces in 'tests/Makefile.am'.
4252         * tests/Makefile.am (TESTS): Use only spaces, not tabs, in the
4253         definition of this variable.
4255 2010-06-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4257         Remove a couple of unneeded conditionals from tests.
4258         * tests/pr243.test, tests/pr266.test, tests/strip.test: No need
4259         for the FOOTEST conditional.
4261 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
4263         Modernize, improve and/or fix various test scripts.
4264         * tests/symlink3.test: Deleted, separated into two new, more
4265         complete tests ...
4266         * tests/forcemiss.test: ... this one ...
4267         * tests/forcemiss2.test: ... and this one.
4268         * tests/symlink2.test: Enable `errexit' shell flag, make test
4269         stricter, and skip it if symlink creation is not supported.
4270         * tests/postproc.test: Enable `errexit' shell flag, related
4271         changes, and a couple of unrelated cosmetic changes.
4272         * tests/recurs.test: Use the `configure.in' stub created by
4273         `./defs', rather than writing one from scratch.  Make grepping
4274         of Automake stderr slightly stricter.
4275         * tests/substtarg.test: Likewise.
4276         * tests/strip.test: Likewise, and move the call to `set -e'
4277         earlier (just after the inclusion of `./defs'). Also, make sure
4278         that the script installed by `make install-script' is equal to
4279         the original one.
4280         * tests/substref.test: Use the `configure.in' stub created by
4281         `./defs', rather than writing one from scratch.  Move the call
4282         to `set -e' earlier (just after the inclusion of `./defs').
4283         Avoid to explicitly export CC for configure (that's already done
4284         in ./defs).  Avoid potential problems with unpredictable make
4285         output.  Finally, make grepping of Makefile.in stricter.
4286         * tests/substre2.test: Ensure verbose printing of the captured
4287         make's output, and make its grepping slightly stricter.
4288         * tests/cygwin32.test: Enable `errexit' shell flag, and related
4289         changes.  Also, do not create useless dummy source/data files.
4290         * tests/scripts.test: Likewise.
4291         * tests/recurs2.test: Likewise.  Also, use the `configure.in'
4292         stub created by `./defs'.
4293         * tests/Makefile.am (TESTS): Updated.
4295         Modernize, improve and/or fix tests `pluseq*.test.
4296         * tests/pluseq5.test: Append to configure.in using cat with an
4297         here-doc, not using echo.
4298         * tests/pluseq10.test: Make sure that the captured output of
4299         `make' command is always displayed. Where possible, use $FGREP
4300         instead of grep (this change makes some checks slightly stricter).
4301         * tests/pluseq8.test: Enable `errexit' shell flag, with related
4302         changes.
4303         * tests/pluseq.test: Likewise.  Also, do not create useless dummy
4304         data files, and use better m4 quoting in generated configure.in.
4305         * tests/pluseq2.test: Likewise.  Also, append to configure.in
4306         using cat with an here-doc, not using echo.
4307         * tests/pluseq3.test: Likewise.
4308         * tests/pluseq4.test: Likewise.
4309         * tests/pluseq6.test: Likewise.
4310         * tests/pluseq7.test: Do not create useless dummy source file.
4311         * tests/pluseq9.test: Slightly extended w.r.t. the grepping of
4312         Automake stderr.  Some unrelated cosmetic changes.
4314         Testsuite: ensure verbose printing of captured stderr.
4315         * tests/acloca18.test: Print captured stderr before either failing
4316         or grepping it.  Be sure to send captured stderr to stderr, not to
4317         stdout.
4318         * tests/ansi3b.test: Likewise.
4319         * tests/cond39.test: Likewise.
4320         * tests/configure.test: Likewise.
4321         * tests/missing3.test: Likewise.
4322         * tests/missing6.test: Likewise.
4323         * tests/output-order.test: Likewise.
4324         * tests/pr300-ltlib.test: Likewise.
4325         * tests/python6.test: Likewise.
4326         * tests/python7.test: Likewise.
4327         * tests/python8.test: Likewise.
4328         * tests/python9.test: Likewise.
4329         * tests/subobj.test: Likewise.
4330         * tests/vars3.test: Likewise.
4331         * tests/missing4.test: Likewise, and fix a call to grep not to use
4332         the `-c' flag.
4333         * tests/ansi3.test: Likewise, and rely on the `configure.in' stub
4334         created by `./defs', rather than writing one from scratch.
4336         Enable `errexit' shell flag in various tests.
4337         * tests/backsl.test: Enable the `errexit' shell flag, and
4338         related changes.
4339         * tests/backsl2.test: Likewise.
4340         * tests/block.test: Likewise.
4341         * tests/canon2.test: Likewise.
4342         * tests/canon4.test: Likewise.
4343         * tests/comment2.test: Likewise.
4344         * tests/condlib.test: Likewise.
4345         * tests/cond15.test: Likewise, and prefer $FGREP over grep.
4346         * tests/canon3.test: Likewise.  Also, avoid to create an useless
4347         dummy source file.
4348         * tests/acoutpt2.test: Enable the `errexit' shell flag, and some
4349         related changes.  Do some cosmetic improvements in the generated
4350         `configure.in' file.
4351         * tests/cond4.test: Likewise.
4352         * tests/cond14.test: Likewise.
4353         * tests/condinc.test: Likewise.
4354         * tests/cond7.test: Likewise.  Also, remove useless setting of
4355         AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am.
4356         * tests/ansi.test: Enable the `errexit' shell flag, and related
4357         changes.  Extended, esp. by running autoconf, ./configure and
4358         make, and by looking into the distdir.
4360 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
4361             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4363         Extend tests/README w.r.t. trailing `:' in test scripts.
4364         * tests/README (section "Writing test cases" subsection "Do"):
4365         Explain why apparently redundant trailing `:' and `Exit 0' in
4366         test scripts can indeed be useful.
4368 2010-06-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
4370         Improve determination of PATH separator in bootstrap script.
4371         * bootstrap: Determine what the PATH separator is the same way
4372         autoconf does.
4374         Minor improvements in bootstrap script.
4375         * bootstrap: Consistently use two-spaces indentation.  Cosmetic
4376         improvement to comments.
4377         ($me): New variable, containing program basename.
4378         Prepend it to all error messages.
4380         Testsuite now works with BSD make in parallel mode.
4381         * tests/defs.in: Unset variables __MKLVL__ and MAKE_JOBS_FIFO,
4382         which are exported by BSD make when run in parallel mode, and
4383         which can confuse make processes spawned by our testsuite.
4384         This change fixes a lot of spurious failure when the testsuite
4385         is run with BSD make in parallel mode.
4387 2010-06-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
4389         Modernize, improve and/or fix various test scripts.
4390         * tests/sanity.test: Rely on the `configure.in' stub created by
4391         `./defs', rather than writing one from scratch.
4392         * tests/depend2.test: Likewise.  Also, call `set -e' just after
4393         the inclusion of `./defs', instead that later in the script.
4394         * tests/canon5.test: Avoid a useless `|| Exit 1' after a call to
4395         $AUTOMAKE, and improve the positioning of an $ACLOCAL call.
4396         * tests/exeext4.test: Use $FGREP instead of grep, where possible.
4397         Make auxiliary rules in the generated Makefile more silent.
4398         These changes make some checks slightly stricter.
4399         * tests/ext2.test: Call `Exit 1' if inclusion of `./defs' fails.
4400         * tests/gettext2.test: Place final `:' at the end of the script,
4401         rather than in the middle.
4402         * tests/exeext.test: Call `set -e' just after the inclusion of
4403         `./defs', instead that later in the script.
4404         * tests/extra5.test: Likewise.
4405         * tests/confdeps.test: Likewise.  Also, prefer `mv -f' over
4406         plain `mv', just to be sure.
4407         * tests/depcomp.test: Enable `errexit' shell flag, with related
4408         changes.  Also, modernize the generated configure.in.
4409         * tests/cond9.test: Likewise.  Also, rely on the `configure.in'
4410         stub created by `./defs', rather than writing one from scratch.
4411         * tests/cond10.test: Likewise.
4412         * tests/depcomp2.test: Likewise.
4413         * tests/depend3.test: Likewise.
4414         * tests/distcom7.test: Likewise.
4415         * tests/fortdep.test: Likewise.  Also, remove definition of
4416         AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am,
4417         since that flag is already provided by $AUTOMAKE.
4418         * tests/mdate.test: Made stricter, by checking that Automake
4419         actually failed, and by making a stricter grep on the error
4420         message.  Also, set shell `errexit flag'.
4421         * tests/python2.test: Improved verbose messages.
4423         Make test `ammissing.test' stricter.
4424         * tests/ammissing.test: Fail if $ACLOCAL succeeds unexpectedly.
4425         Enable `errexit' shell flag.
4427 2010-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
4429         Enable `errexit' shell flag in some test scripts.
4430         * tests/subcond.test: Enabled `errexit' shell flag, and related
4431         minor changes.
4432         * tests/subst.test: Likewise.
4433         * tests/vars.test: Likewise.
4434         * tests/version4.test: Likewise.
4435         * tests/vpath.test: Likewise.
4436         * tests/vtexi2.test: Likewise.
4437         * tests/werror.test: Likewise.
4438         * tests/whoami.test: Likewise.
4439         * tests/tags.test: Likewise, and avoid to crate an useless dummy
4440         header file.
4441         * tests/acsilent.test: Likewise, and don't use an easily-avoided
4442         command substitution.
4443         * tests/unused.test: Likewise, and don't use an easily-avoided
4444         command substitution.
4445         * tests/version.test: Likewise, and avoid deprecated constructs
4446         in the generated `configure.in'.
4447         * tests/version2.test: Likewise, and avoid deprecated constructs
4448         in the generated `configure.in'.
4450 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4452         Prefer AUTOMAKE_fails over `$AUTOMAKE | grep' in tests.
4453         * tests/ldadd.test: Enable errexit.  Use AUTOMAKE_fails so
4454         the verbose log contains all output.
4455         * tests/mdate.test: Likewise.
4456         Prompted by Stefano Lattarini's change to discover.test.
4458 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
4460         Improve tests link*.test (enable `errexit' shell flag).
4461         * tests/link_c_cxx.test: Enable `errexit shell flag, and related
4462         changes.  Also, do not create useless source files.
4463         * tests/link_dist.test: Likewise.
4464         * tests/link_f90_only.test: Likewise.
4465         * tests/link_f_only.test: Likewise.
4466         * tests/link_fc.test: Likewise.
4467         * tests/link_fccxx.test: Likewise.
4468         * tests/link_fcxx.test: Likewise.
4470 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4472         Improve ext.test semantics, avoid OpenBSD sh errexit issue.
4473         * tests/ext.test: Inside shell compound command, use
4474         `if $cmd; then Exit 1; fi' rather than `$cmd && Exit 1', to
4475         fix failure with OpenBSD sh introduced with last patch.
4476         Actually ensure that a rule for .EXT.o is created for each
4477         known extension EXT.
4479 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
4481         Enable `errexit' shell flag in some test scripts.
4482         * tests/dash.test: Enable `errexit' shell flag, and related
4483         changes.
4484         * tests/defun.test: Likewise.
4485         * tests/defun2.test: Likewise.
4486         * tests/dejagnu.test: Likewise.
4487         * tests/double.test: Likewise.
4488         * tests/distcom2.test: Likewise.
4489         * tests/empty2.test: Likewise.
4490         * tests/empty3.test: Likewise.
4491         * tests/empty4.test: Likewise.
4492         * tests/exdir.test: Likewise.
4493         * tests/ext.test: Likewise.
4494         * tests/extra.test: Likewise.
4495         * tests/extra2.test: Likewise.
4496         * tests/extra3.test: Likewise.
4497         * tests/extra4.test: Likewise.
4498         * tests/flibs.test: Likewise.
4499         * tests/fnoc.test: Likewise.
4500         * tests/fo.test: Likewise.
4501         * tests/instexec.test: Likewise.
4502         * tests/ltdeps.test: Likewise.
4503         * tests/nodep.test: Likewise.
4504         * tests/nodepcomp.test: Likewise.
4505         * tests/f90only.test: Likewise, and remove botched/obsoleted
4506         comments and unnecessary commands.
4507         * tests/fonly.test: Likewise, and remove botched/obsoleted
4508         comments and unnecessary commands.
4509         * tests/discover.test: Likewise, and made stricter.
4511         Enable `errexit' shell flag in all tests cxx*.test.
4512         * tests/cxx.test: Enabled `errexit' shell flag, and related
4513         minor changes.
4514         * tests/cxxansi.test: Likewise.
4515         * tests/cxxcpp.test: Likewise.
4516         * tests/cxxlibobj.test: Likewise.
4517         * tests/cxxlink.test: Likewise.
4518         * tests/cxxo.test: Likewise.
4520         Enable `errexit' shell flag in various tests.
4521         * tests/acoutnoq.test: Enabled `errexit' shell flag, and related
4522         minor changes.
4523         * tests/acoutpt.test: Likewise.
4524         * tests/acoutqnl.test: Likewise.
4525         * tests/amassign.test: Likewise.
4526         * tests/ansi2.test: Likewise.
4527         * tests/ansi4.test: Likewise.
4528         * tests/badprog.test: Likewise.
4529         * tests/checkall.test: Likewise.
4530         * tests/clean.test: Likewise.
4531         * tests/colneq2.test: Likewise.
4532         * tests/colon.test: Likewise.
4533         * tests/colon5.test: Likewise.
4534         * tests/colon6.test: Likewise.
4535         * tests/comment.test: Likewise.
4536         * tests/compile_f90_c_cxx.test: Likewise.
4537         * tests/compile_f_c_cxx.test: Likewise.
4538         * tests/cond3.test: Likewise.
4539         * tests/cond6.test: Likewise.
4540         * tests/cond13.test: Likewise.
4541         * tests/conf2.test: Likewise.
4542         * tests/confvar.test: Likewise.
4543         * tests/confvar2.test: Likewise.
4544         * tests/cond8.test: Likewise, plus a cosmetic change.
4545         * tests/confh4.test: Likewise.  Also, add in the heading comments
4546         an excerpt from the original bug report which motivated the
4547         creation of this test, to make its purpose clearer.
4549 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4551         Rewrite manual to be gender-neutral.
4552         * doc/automake.texi (GNU Build System)
4553         (Standard Directory Variables, General Operation, CVS)
4554         (Hard-Coded Install Paths, Dependencies As Side Effects):
4555         Rewrite text to not contain gender-specific pronouns when
4556         speaking about developers or users, either by avoiding pronouns
4557         or by addressing them as `you' instead.
4558         * THANKS: Update.
4559         Report by Christina Gratorp.
4561         * AUTHORS: Update.
4563 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
4565         Make tests on user extensibility of silent-rules mode stricter.
4566         * tests/silent6.test: Made stricter w.r.t. the grepping of the
4567         output produced by `make'.
4568         * tests/silent7.test: Likewise.
4570         Tests on silent-mode for C/Libtool made stricter.
4571         * tests/silent.test: Made stricter w.r.t. the grepping of the
4572         output produced by `make'.
4573         * tests/silent2.test: Likewise.
4574         * tests/silent4.test: Likewise.
4575         * tests/silent9.test: Likewise.
4576         * tests/silent3.test: Likewise, and add a final `make distclean'
4577         command to keep it better in sync with tests/silent{4,9}.test.
4579         Improved test silent5.test.
4580         * tests/silent5.test: Remove by hand all generated C files after
4581         non-verbose builds, to ensure the following builds are clean.
4582         Try to clean and rebuild with the same verbosity and without
4583         removing generated sources in between, to check that this does
4584         not trigger a different set of rules.  Make grepping of make's
4585         output stricter.  Improved/added some comments.
4587         New tests for Automake silent-mode with Fortran.
4588         * tests/silentf77.test: New test.
4589         * tests/silentf90.test: Likewise.
4590         * tests/Makefile.am (TESTS): Updated accordingly.
4592         New test `silentcxx.test' (Automake silent-mode with C++).
4593         * tests/silentcxx.test: New test.
4594         * tests/Makefile.am (TESTS): Updated accordingly.
4596         New test `silentyacc.test' (Automake silent-mode with Yacc).
4597         * tests/silentyacc.test: New test.
4598         * tests/Makefile.am (TESTS): Updated accordingly.
4600         New test `silentlex.test' (Automake silent-mode with Lex).
4601         * tests/silentlex.test: New test.
4602         * tests/Makefile.am (TESTS): Updated accordingly.
4604         Relax tests on silent-rules to cater to overly verbose makes.
4605         * tests/silent.test: When testing silent builds, don't fail if
4606         make's output simply contains the `mv' substring, but only if
4607         it contains the `mv ' substring (note the trailing space).
4608         * tests/silent2.test: Likewise.
4609         * tests/silent3.test: Likewise.
4610         * tests/silent4.test: Likewise.
4611         * tests/silent5.test: Likewise.
4612         * tests/silent9.test: Likewise.
4614 2010-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4616         Fix silent-rules output for disabled dependency tracking.
4617         * lib/am/depend2.am [!%FASTDEP%]: Rework silent-rules variable
4618         expansion code to also work in the case where %AMDEP% expands
4619         to FALSE at config.status time, using new substitution string
4620         %VERBOSE-NODEP%.
4621         * automake.in (verbose_nodep_flag): New function, appending
4622         `@am__nodep@' to the verbose-variable name.
4623         (handle_languages): If dependencies are not disabled, use it to
4624         set %VERBOSE-NODEP%.
4625         * m4/depend.m4: Substitute am__nodep as '_no', so the second
4626         verbose-variable will always expand to an empty string, if
4627         dependencies are enabled.
4628         * tests/silent5.test: Also test --disable-dependency-tracking;
4629         also test per-target flags for non-C language files.
4630         * tests/silent9.test: New test, like silent4.test but disable
4631         dependency tracking.
4632         * tests/Makefile.am: Adjust.
4633         * NEWS, THANKS: Update.
4634         Report by Dmitry V. Levin <ldv@altlinux.org>.
4636 2010-05-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
4638         Extend test on `nostdinc' automake option.
4639         * tests/nostdinc.test: Enable `errexit' shell flag.  Related and
4640         unrelated minor changes.  Make the grepping of the generated
4641         Makefile.in slightly stricter.  Generate and run configure, so that
4642         the generated Makefile can be grepped too.
4644 2010-05-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4646         Make gnupload portable to EBCDIC hosts.
4647         * lib/gnupload: Use literal newline as argument for 'tr' rather
4648         than \015, for EBCDIC hosts.  Also, avoid unportable nested
4649         double-quotes and backquotes.
4650         * THANKS: Update.
4651         Report from Eric Blake and Steve Goetze via gnulib.
4653 2010-05-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
4655         Fix Autoconf version required by Automake's configure.
4656         Automake configure script used to tell that automake required
4657         autoconf 2.60 or later, but then it checked for autoconf >= 2.62,
4658         and if that was not found, it gave an error saying that Automake
4659         required configure 2.61a-341 or later.  This change should
4660         eliminate such inconsistencies.
4661         * configure.ac ($required_autoconf_version): New variable.
4662         Use it throughout.
4664 2010-05-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4666         Fix unportable sed script in maintainer-check test.
4667         * Makefile.am (sc_tests_Exit_not_exit): Rewrite sed script to
4668         not contain semicolon after 'b' or brace commands, for NetBSD.
4670         Wildcards are not portable to NetBSD make.
4671         * doc/automake.texi (Wildcards): Document portability issue.
4672         * tests/extra10.test, tests/extra11.test, tests/extra12.test:
4673         Require GNU make.
4675 2010-05-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
4677         Make test for configure.in vs. configure.ac stricter.
4678         * tests/configure.test: Use a configure.in file that provokes
4679         an automake error, to ensure configure.ac is preferred.
4681         Avoid possible false negatives in dejagnu7.test.
4682         * tests/dejagnu7.test: Enable shell `errexit' flag.  Also, avoid
4683         unportable use of fgrep option `-e'.
4685         Fix conflnk3.test to work with Solaris/Heirloom Sh.
4686         * tests/conflnk3.test: Use `test -r FILE' and `test ! -r FILE'
4687         instead of respectively `test -e FILE' and `test ! -e FILE',
4688         since Solaris Sh doesn't grok the latter.  Do not SKIP the test
4689         if the shell doesn't support `test -e'.
4691 2010-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4693         Fix typo in manual.
4694         * doc/automake.texi (Simple Tests using parallel-tests): Add
4695         missing closing parenthesis.
4697         Fix leftover call to removed function macros_dump.
4698         * automake.in (read_main_am_file): Call variables_dump, not
4699         macros_dump.  Print actual error before list of variables.
4701 2010-04-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
4703         Minor improvements in comments of test `silent3.test'.
4704         * tests/silent3.test: Tell to keep it in sync with `silent9.test'
4705         too.
4707 2010-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4709         testsuite: ensure verbose printing of captured output.
4710         * tests/acloca14.test, tests/acloca18.test, tests/aclocal.test,
4711         tests/fort2.test, tests/help.test, tests/missing3.test,
4712         tests/missing6.test: Print captured stdout or stderr before
4713         grepping it.
4715 2010-04-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
4717         Make test badopt.test stricter (by enabling `set -e').
4718         * tests/badopt.test: Add call to `set -e'.  Due to this change,
4719         an unexpected failure in the call to `$ACLOCAL' (whose outcome
4720         was previously unchecked) would cause the whole test to fail.
4721         Also, bumped the copyright years.
4723         Make test for configure.in vs. configure.ac stricter.
4724         * tests/configure.test: Use a configure.in file that provokes
4725         an automake error, to ensure configure.ac is preferred.
4727         Use `set -e' in confsub.test (avoids possible false negatives).
4728         * tests/confsub.test: Enable shell `errexit' flag, and related
4729         changes (this helps avoiding some possible minor false negatives).
4730         Also, bumped copyright years.
4732 2010-04-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4734         Fix -Werror handling for presence of configure.in and configure.ac.
4735         * lib/Automake/Variable.pm (Automake::Variable): Do not initialize
4736         $configure_ac at the global level, before command-line arguments
4737         have been parsed.
4738         (require_variables): Initialize it here.
4739         * tests/configure.test: New test.
4740         * tests/Makefile.am: Update.
4741         Report by Stefano Lattarini.
4743 2010-04-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
4745         Avoid possible false negatives in confh5.test.
4746         * tests/confh5.test: Enable shell `errexit' flag, and bumped
4747         copyright years.  Due to this change, any unexpected failure
4748         in calls to $ACLOCAL, $AUTOMAKE, $AUTOCONF or $AUTOHEADER, or
4749         a failure in grepping expected text in output files should now
4750         cause the whole test to fail.
4752 2010-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
4754         Fixed typo in POD documentation of Automake::Channels.
4755         * lib/Automake/Channels.pm: Fixed typo in POD documentation:
4756         @<...> was used instead of C<...>.
4758 2010-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
4760         Refactor tests on Automake TESTS color output.
4761         * tests/color.test: Tests using the expect program moved out to...
4762         * tests/color2.test: ... this new file.
4763         * tests/Makefile.am (TESTS): Extended accordingly.
4765 2010-04-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
4767         Fix typos in comments in test confh5.test
4768         * tests/confh5.test: Fix a couple of typos in comments.
4770         Avoid possible false negatives in canon-name.test.
4771         * tests/canon-name.test: Enable shell `errexit' flag.  Improve
4772         test description.
4774 2010-04-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4776         Fix per-Makefile.am setting of -Werror.
4777         Before this patch, 'AUTOMAKE_OPTIONS = -Werror' in one
4778         Makefile.am would carry over to other Makefile.am files
4779         treated afterwards by the same thread, causing inconsistent
4780         and unstable exit status values.
4781         * lib/Automake/Channels.pm (dup_channel_setup)
4782         (drop_channel_setup): Save and restore the setting of
4783         $warnings_are_errors.
4784         * tests/werror3.test: New test.
4785         * tests/Makefile.am: Adjust.
4786         * NEWS: Update.
4788 2010-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
4790         Bugfix in confh5.test w.r.t. Solaris/Heirloom Sh.
4791         * tests/confh5.test: In the generated Makefile.am: do not use
4792         `test ! -e FILE' to check for the non-existence of a file, since
4793         that is not supported by Solaris/Heirloom Sh.
4795         Make test `aclocal3.test' stricter.
4796         * tests/aclocal3.test: Add call to `set -e'.  Fail if $ACLOCAL
4797         succeds unexpectedly.
4799         Add tests checking that symlinks are resolved by `make dist'.
4800         * tests/distlinks.test: New test.
4801         * tests/Makefile.am (TESTS): Updated accordingly.
4802         Suggested by observations from Ralf Wildenhues.
4804 2010-04-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4806         Use -9 for maximum xz compression with dist-xz.
4807         * lib/am/distdir.am (dist-xz, dist, dist-all): Pass -9 to xz.
4808         * NEWS, THANKS: Update.
4809         Report by Pavel Sanda.
4811 2010-03-30  Stefano Lattarini  <stefano.lattarini@gmail.com>
4813         Avoid an unportable use of `$status' shell variable.
4814         * Makefile.am (path-check): Don't use the `$status' shell variable
4815         in the target's rules, as it's special in Zsh (equivalent to `$?',
4816         and readonly).
4818         Avoid another use of `chmod -R'.
4819         * Makefile.am (path-check): To be safe, do not use `chmod -R' on
4820         $(distdir) before removing it (as Solaris `chmod -R' touches
4821         symlink targets).  Instead, use the cleanup strategy used in
4822         distdir.am.
4824 2010-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4826         Remove uses of @acronym and @sc.
4827         * doc/automake.texi (Public Macros, Limitations on File Names):
4828         Remove all usage of @acronym and @sc in the manual.
4829         Suggested by Karl Berry.
4831 2010-03-13  Karl Berry  <karl@freefriends.org>
4833         GNU hello uses fdl.texi, not gpl.texi.
4834         * doc/automake.texi (Texinfo): Adjust example to upstream
4835         change.
4837 2010-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4839         Formatting cleanups in macro comments.
4840         * automake.in, lib/Automake/Channels.pm,
4841         lib/Automake/FileUtils.pm, lib/Automake/Options.pm,
4842         lib/Automake/Variable.pm, lib/Automake/XFile.pm,
4843         m4/options.m4, m4/substnot.m4: Fix macro comment format.
4845 2010-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
4846             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4848         Avoid generation of `tests/defs-p' file.
4849         * tests/defs.in: In the generated `configure.in' snippet: call
4850         `AM_INIT_AUTOMAKE' with the `parallel-tests' option if the shell
4851         variable `parallel_tests' is set to `yes'.
4852         * tests/Makefile.am (defs-p): Target removed.
4853         (check_SCRIPTS): Removed `defs-p'.
4854         (clean-local-check): Do not unlink `defs-p' anymore.
4855         ($(parallel_tests)): Transformation rules for the test scripts
4856         adjusted.
4857         * tests/gen-parallel-tests: Selection rules for the test
4858         scripts adjusted.
4859         * tests/parallel-tests.test: Set `$parallel_tests' to `yes'
4860         then include `./defs' (rather than simply including `./defs-p').
4861         * tests/parallel-tests2.test: Likewise.
4862         * tests/parallel-tests3.test: Likewise.
4863         * tests/parallel-tests4.test: Likewise.
4864         * tests/parallel-tests5.test: Likewise.
4865         * tests/parallel-tests6.test: Likewise.
4866         * tests/parallel-tests7.test: Likewise.
4867         * tests/parallel-tests8.test: Likewise.
4868         * tests/parallel-tests9.test: Likewise.
4869         * tests/parallel-tests10.test: Likewise.
4870         * tests/README (Section "Writing Test Cases" subsection "Do"):
4871         Adjusted the parts referring to tests checking `parallel-tests'
4872         behaviour.  Some other minor related improvements.
4873         * tests/.gitignore (defs-p): Removed.
4875 2010-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
4877         Remove redundant unset of variable TESTS from some test scripts.
4878         * tests/color.test: Do not unset the `TESTS' variable, as it's
4879         already unset in the `defs' file.
4880         * tests/check5.test: Likewise.
4881         * tests/check8.test: Likewise.
4882         * tests/check9.test: Likewise.
4883         * tests/check10.test: Likewise.
4884         * tests/check11.test: Likewise.
4885         * tests/parallel-tests.test: Likewise.
4886         * tests/parallel-tests3.test: Likewise.
4887         * tests/parallel-tests4.test: Likewise.
4888         * tests/parallel-tests5.test: Likewise.
4889         * tests/parallel-tests6.test: Likewise.
4890         * tests/parallel-tests7.test: Likewise.
4892 2010-02-22  Karl Berry  <karl@gnu.org>
4894         Improve help message of mdate-sh.
4895         * mdate-sh: mention actual output format in help message.
4897 2010-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4899         Deprecate dist-lzma in favor of dist-xz.
4900         * doc/automake.texi (The Types of Distributions, Options):
4901         Adjust text to reflect renaming of lzma to xz.
4902         * NEWS: Update.
4903         Missing deprecation noted by Antonio Diaz Diaz.
4905 2010-02-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
4907         Add tests about support of wildcards in EXTRA_DIST.
4908         * tests/extra10.test: New test, check basic support of wildcards
4909         in EXTRA_DIST.
4910         * tests/extra11.test: New test, check more complex usage of
4911         wildcards in EXTRA_DIST.
4912         * tests/extra12.test: New test, check usage of wildcards in
4913         EXTRA_DIST when $builddir != $srcdir.
4914         * tests/Makefile.am (TESTS): Updated accordingly.
4915         Necessity of these new tests suggested by Braden McDaniel
4916         and Ralf Wildenhues.
4918 2010-02-08  Simon Josefsson  <simon@josefsson.org>
4920         Fix copyright statement in gnupload script.
4921         * lib/gnupload: Fix copyright statement.
4923 2010-02-06  Dmitry V. Levin  <ldv@altlinux.org>  (tiny change)
4924             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4926         Fix exit status of signal handlers in shell scripts.
4927         The value of `$?' on entrance to signal handlers in shell scripts
4928         cannot be relied upon, so set the exit code explicitly to
4929         128 + SIG<SIGNAL>.
4930         * lib/am/check.am (am__check_pre): Use `exit 143' in signal handler.
4931         * lib/elisp-comp: Likewise.
4932         * lib/install-sh: Likewise.
4933         * lib/ylwrap: Likewise.  Also, fix script to trap signal 13, not 3.
4934         * NEWS, THANKS: Update.
4935         Bug report, analysis, and initial patch by Dmitry V. Levin.
4937 2010-02-06  Karl Berry  <karl@gnu.org>
4939         Improve gnupload usage text.
4940         * gnupload (usage): Shorten to make more likely to fit on a tty
4941         line.  Mention CMD in the synopsis.  With ..., plural is implied.
4943 2010-01-28  Christos Kontas  <xakon@yahoo.com>  (tiny change)
4945         Fix some typos in the manual
4946         * doc/automake.texi (Nested Packages, Rebuilding): Fix typos.
4948 2010-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
4950         Slighty improve tests acoutbs.test and acoutbs2.test.
4951         * tests/acoutbs2.test: Enable `errexit' shell flag.  Check that
4952         autoconf and configure work, that the file `zot' is created by
4953         configure, and that no file containing a backslash in its name is
4954         created.
4955         * tests/acoutbs.test: Likewise, plus updated copyright years.
4957         Fix test acoutbs2.test.
4958         * tests/acoutbs2: In the generated configure.in: add proper calls
4959         to AC_INIT and AM_INIT_AUTOMAKE, and remove explicit definition of
4960         PACKAGE and VERSION. Add a call to aclocal before calling automake.
4961         Updated copyright years.
4962         * tests/Makefile.am (XFAIL_TESTS): Removed acoutbs2.test.
4964         Add forgotten test scripts to $(TESTS).
4965         * tests/Makefile.am (TESTS): Added test scripts present on the
4966         filesystem, which were erroneously left out from $(TESTS):
4967         acoutbs2.test, badopt.test, extra2.test.
4968         (XFAIL_TESTS): Added acoutbs2.test.
4970 2010-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4972         Sync auxiliary files from upstream.
4973         * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub:
4974         Sync from upstream.
4976         Bump copyright years.
4977         * aclocal.in (write_aclocal, version): Bump copyright years.
4978         * automake.in (gen_copyright, version): Likewise.
4979         * doc/automake.texi: Likewise.
4981         Rotate ChangeLog.
4982         * ChangeLog.09: New file, rotated from ...
4983         * ChangeLog: ... here.
4984         * Makefile.am (EXTRA_DIST): Distribute ChangeLog.09.
4986 -----
4988 Copyright (C) 2010, 2011  Free Software Foundation, Inc.
4990 Copying and distribution of this file, with or without modification, are
4991 permitted provided the copyright notice and this notice are preserved.
4993 ;; Variables:
4994 ;; coding: utf-8
4995 ;; End: