Merge branch 'maint'
[platform/upstream/automake.git] / ChangeLog
1 2011-12-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
2
3         gitignore: use only one .gitignore file, in the top-level directory
4         * doc/.gitignore, doc/amhello/.gitignore, lib/Automake/.gitignore,
5         lib/Automake/tests/.gitignore, tests/.gitignore: Deleted, their
6         contents merged into ...
7         * .gitignore: ... this top-level file.  Since we are at it, improve
8         it by anchoring files where it makes sense.
9
10 2011-12-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
11
12         tests: one more fixlet for gettext macros requirement
13         * tests/gettext-macros.test (configure.in): Add calls to
14         AC_INIT and AC_PROG_CC, to avoid a spurious failure in the
15         later aclocal invocation.
16         Luckily, this wart wasn't causing any spurious SKIP or FAIL,
17         but only the redundant addition to the `-Wno-syntax' option
18         to some aclocal invocations in the gettext tests.
19
20 2011-12-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
21
22         tests: fix handling of gettext macros requirement
23
24         The code introduced in the earlier change `v1.11-581-gb7d67d5'
25         and aimed at automatically fetching all the .m4 files provided by
26         gettext has proven inadequate, since it hasn't managed to truly
27         and always get *all* the required .m4 files.  For example, it has
28         failed to fetch the file `intldir.m4' (present in gettext 0.18.1,
29         and where the macro `AM_GNU_GETTEXT_INTL_SUBDIR' is defined),
30         which in turn has caused spurious SKIPs of at least the test
31         `gettext3.test'.
32
33         The reason for this debacle is that autopoint looks at the version
34         specified in AM_GNU_GETTEXT_VERSION to decide which version of the
35         gettext infrastructure to bring in; since we were unconditionally
36         specifying the older 0.10.35 version, the newer `.m4' files weren't
37         brought in.
38
39         * tests/gettext-macros.test: In AM_GNU_GETTEXT_VERSION, instead
40         of unconditionally specifying the older 0.10.35 version, specify
41         the version of the available `gettextize' or `autopoint' program,
42         dynamically extracted with the help of ...
43         (extract_program_version):... this new function, and saved ...
44         ($autopoint_version): ... in this new variable.
45
46 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
47
48         tests: fix failure due to debugging code forgotten into a test
49         * tests/missing-tar.test: Don't ever call the `missing' script
50         with `sh -x'; this was used for debugging, but an instance of
51         it slipped into the committed test case.  Bug revealed by a
52         failure on a Solaris 10 system with GNU tar installed as `gtar'.
53
54 2011-12-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
55
56         tests: avoid spurious failure of libtool and gettext tests
57
58         On Solaris 10 (and presumably earlier), /bin/sh trips up on
59         here-documents that contains a command substitution *and* are
60         fed to a shell function:
61
62           # All as expected.
63           $ cat <<END
64           `pwd`
65           END
66           /home/stefano
67           $ echo status = $?
68           status = 0
69
70           # An apparently innocuous function ...
71           $ kitty () { cat; }
72           # ... but hilarity ensues!
73           $ kitty <<END
74           `pwd`
75           END
76           /tmp/sh137723: cannot open
77           $ echo status = $?
78           status = 1
79
80         We need to work around this misbehaviour in a couple of our
81         tests (whose failures where causing cascading failures in a
82         lot of other tests).
83
84         * tests/gettext-macros.test: Avoid the use of command substitution
85         in a here-document passed to the `indent' function, by using the
86         `echo' builtin instead.
87         * tests/libtool-macros.test: Likewise.
88
89         See also:
90         <http://lists.gnu.org/archive/html/bug-autoconf/2011-12/msg00001.html>
91
92 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
93
94         Merge branch 'maint' into master.
95         * m4/regex.m4: Bump serial number by some notches, for good
96         measure.  Prefer the deprecation message from maint over that
97         from master.
98         * m4/python.m4: Bump serial number.
99         * tests/Makefile.am (canon6.log): Depend on `libtool-macros.log'.
100         (canon7.log): Likewise.
101         (extradep2.log): Likewise.
102         (ar-lib4.log): Likewise.
103         (ar-lib6a.log): Likewise.
104         (ar-lib6b.log): Likewise.
105         (vartypo2): Likewise.
106         (posixsubst-ltlibraries.log): Likewise.
107         * tests/defs: Adjust the path of the included `get.sh' scripts
108         generated by `libtool-macros.test' and `gettext-macros.test'.
109         * aclocal.m4: Delete, it's auto-generated now. 
110         * configure: Likewise.
111         * Makefile.in: Likewise.
112         * doc/Makefile.in: Likewise.
113         * m4/Makefile.in: Likewise.
114         * tests/Makefile.in: Likewise.
115         * lib/Makefile.in: Likewise.
116         * lib/am/Makefile.in: Likewise.
117         * lib/Automake/Makefile.in: Likewise.
118         * lib/Automake/tests/Makefile.in: Likewise.
119         * .gitignore: Correctly ignored the autogenerated files
120         that are not committed anymore.
121
122 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
123
124         hacking: distribute it, and mention it in the ChangeLog
125         Not distributing the HACKING file might make it more difficult,
126         for some random curious user, to get informed about or interested
127         in the Automake development process, or to send us patches.
128         * Makefile.am (EXTRA_DIST): Add HACKING.
129         * HACKING: It's OK to distribute this file, and to mention it in
130         the ChangeLog.
131
132 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
133
134         regex: deprecate the obsolete macro AM_WITH_REGEX
135         This is a backport of commit v1.11-433-g37b0aee.
136         Today, practically nobody uses the GNU rx library, which, according
137         to its own website <http://www.gnu.org/software/rx/rx.html>, has
138         been "decommissioned".  Consequently, the automake-provided macro
139         AM_WITH_REGEX is not used nor required anymore.  Deprecate it, so
140         that it will be possible to safely remove it in the next major
141         automake version.
142         * m4/regex.m4 (AM_WITH_REGEX): Give a warning of the class
143         `obsolete' when this macro is used.
144         * doc/automake.texi (Public Macros): Move description of
145         `AM_WITH_REGEX' from here ...
146         (Obsolete Macros): ... to here, and declare it as obsolete
147         and "to be removed in a future version".
148         * tests/regex-obsolete.test: New test.
149         * tests/Makefile.am (TESTS): Add it.
150         * NEWS: Update.
151         See also:
152         <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00131.html>
153
154 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
155
156         maint: distribute .xz tarballs, not .bz2 ones
157         Many GNU packages are moving towards xz-compressed tarballs, so
158         let's follow suit, by dropping the creation and distribution of
159         a bzip2-compressed tarball and switching to xz instead.
160         For compatibility and safeness, we will continue to create and
161         distribute a gzip-compressed tarball as well.
162         * configure.ac (AM_INIT_AUTOMAKE): Drop `dist-bzip2', add
163         `dist-xz'.
164         * NEWS: Update
165         Suggested by Jim Meyering.
166
167 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
168
169         include: avoid "deleted .am file" problem
170         * automake.in (handle_configure): When processing `configure.am',
171         also expand `HAVE-MAKEFILE-IN-DEPS' to a boolean telling whether
172         `MAKEFILE-IN-DEPS' is empty or not.
173         * lib/am/configure.am [?HAVE-MAKEFILE-IN-DEPS?]
174         (%MAKEFILE-IN-DEPS%): New target without dependencies, to
175         avoid the "deleted .am file" problem.  Emit this only when
176         `?HAVE-MAKEFILE-IN-DEPS?' is true, to avoid generating an
177         "empty" dependency declaration.
178         * tests/deleted-am.test: Make grepping of error message stricter.
179         * tests/dist-missing-am.test: Likewise.
180         * tests/remake-deleted-am.test: New test.
181         * tests/remake-deleted-am-2.test: Likewise.
182         * tests/remake-deleted-am-subdir.test: Likewise.
183         * tests/remake-renamed-am.test: Likewise.
184         * tests/makefile-deps.test: Likewise.
185         * tests/Makefile.am (TESTS): Add the new tests.
186         * NEWS: Update.
187         Fixes automake bug#9768.
188         Report by Peter Johansson.
189         See also commit `Release-1-10-40-gd0ebf71', which fixed a similar
190         problem for .m4 files included by configure.ac.
191
192 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
193
194         maint: better use of autoconf 2.68 features
195         * configure.ac: Now that Automake requires autoconf 2.68 for its
196         own bootstrapping and build system, we can assume that PACKAGE_URL
197         gets automatically AC_SUBT'd.
198
199 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
200
201         cosmetics: use proper m4 quoting in configure.ac
202         * configure.ac (AC_CONFIG_SRCDIR): Use proper m4 quoting
203         for its arguments.
204         (AC_CONFIG_AUX_DIR): Likewise.
205         (AC_PROG_PATH): Likewise.
206
207 2011-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
208
209         tests: better handling of gettext and libtool requirements
210
211         This change fixes automake bug#9807.
212
213         Before this change, the automake testsuite only looked for the
214         `.m4' files containing libtool and gettext macros definitions in
215         the directory `${prefix}/share/aclocal' (and in the directories
216         specified by the `dirlist' file in there, if any), where ${prefix}
217         was the configure-time automake installation prefix (defaulting
218         to `/usr/local').
219
220         This approach had various shortcomings and disadvantages.  Let's
221         briefly describe the three major ones.
222
223         First, on most GNU/Linux systems, a libtool or gettext installed
224         from distro-provided packages (e.g., by dpkg on Debian/Ubuntu, or
225         by rmp on RedHat/Fedora) would have `/usr', not `/usr/local', as
226         its ${prefix}; so, trying to run the automake testsuite with a
227         simple "./configure && make && make check" would have failed to
228         execute the libtool and gettext tests on most GNU/Linux distros.
229         It's true that it was quite easy to work around this issue, by
230         creating a proper `/usr/local/share/aclocal/dirlist' file with
231         an entry pointing to `/usr/share/aclocal' (a workaround in fact
232         used by most automake developers); but the typical user wasn't
233         aware of the necessity of this trick, so the libtool and gettext
234         tests was usually skipped on testsuite runs "in the wild", thus
235         needlessly reducing coverage.
236
237         Second, the older testsuite behaviour made more difficult for
238         the developers to run the testsuite with non-default libtool or
239         gettext.  For example, assume the developer is working on a system
240         that has a default libtool version 1.5 installed in the /usr/local
241         hierarchy; to improve coverage, the developer installs also a more
242         modern libtool version, say 2.4, in its home directory, let's say
243         in ~/libtool-2.4; he then tries to run the automake testsuite with
244         this more modern libtool by doing an (apparently) simple:
245           $ PATH=$HOME/libtool-2.4:$PATH make check
246         But the automake testsuite would still look for libtool macros in
247         /usr/local/share/aclocal, not in ~/libtool-2.4/share/aclocal, so
248         the wrong version of the macros would be picked up, and the tests
249         would either fail spuriously or (which would be worse) pass without
250         truly covering the libtool version the developers was thinking to
251         be testing with.
252         Worse again, the automake testsuite would *unconditionally* look
253         for libtool macros in /usr/local/share/aclocal, so even something
254         like:
255           $ export ACLOCAL_PATH=$HOME/libtool-2.4/share/aclocal
256           $ PATH=$HOME/libtool-2.4:$PATH make check
257         wouldn't work.
258
259         Third and last, during a "make distcheck", automake is configured
260         with a ${prefix} pointing to a proper subdirectory of the build
261         directory (usually `pwd`/_inst), which gets created on-the-fly;
262         in this case, with the old approach, the automake testsuite never
263         found the libtool and gettext macro files, ans so the libtool and
264         gettext tests was *always* skipped in a "make distcheck".
265
266         * tests/libtool-macros.test: New helper test, looking (with the
267         help of the `libtoolize' script) for libtool macro files required
268         by most libtool tests, and making them easily accessible.
269         * tests/gettext-macros.test: New helper test, looking (with the
270         help of the `libtoolize' script) for libtool macro files required
271         by most libtool tests, and making them easily accessible.
272         * tests/defs.in: Update to make it rely on the results and setups
273         of `libtool-macros.test' and `gettext-macros.test'.
274         * tests/Makefile.am: Declare dependency of all the logs of libtool
275         tests from `libtool-macros.log', and all the logs of gettext tests
276         from `gettext-macros.log'.
277         (TESTS): Add the new tests.
278
279 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
280
281         fix: typos and grammaros in comments of the new test
282         * tests/get-sysconf.test: Fix few typos, grammaros and botched
283         wording.  Reported by Eric Blake.
284
285 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
286
287         tests: report useful system information in 'test-suite.log'
288         It has already happened various times that a user has run the
289         automake testsuite, experienced a failure, read the messages
290         telling him "See tests/test-suite.log" and "Please report to
291         bug-automake@gnu.org", and done exactly that -- sending us only
292         the contents of `tests/test-suite.log', which are usually not
293         enough to start debugging the reported failure.  So we have to
294         ask him for more details, and usually also for the `config.log'
295         file generated by configure.  It's time to fix this recurring
296         feedback inefficiency.  We do so by creating a dummy test case
297         that takes care of copying the contents of `config.log', plus
298         other useful system information, in the final `test-suite.log'.
299         * tests/get-sysconf.test: New test, gathering system information
300         and then always terminating with a SKIP, so that its output gets
301         copied in `test-suite.log'.
302         * tests/Makefile.am (TESTS): Add it.
303
304 2011-12-07  Reuben Thomas  <rrt@sc3d.org>  (tiny change)
305
306         python: remove relics for Python 1.5 support
307         * m4/python.m4: The comments in here claim to support only
308         Python >= 2.0, yet this file still has specific support for
309         Python 1.5.  Just remove it, python 1.5 is 12 years old now,
310         and practically defunct.
311         * NEWS: Update.
312         See also commit `Release-1-10-205-gd5bec12', "Support for
313         Python 3.0, drop support for pre-2.0."
314
315 2011-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
316
317         configure: remove extraneous 'eval's from AM_RUN_LOG invocations
318         * configure.ac: Remove extra 'eval's from AM_RUN_LOG invocations;
319         for example, instead of "AM_RUN_LOG([eval $PERL --version])",
320         simply use "AM_RUN_LOG([$PERL --version])"
321
322 2011-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
323
324         configure: report TeX version in config.log
325         * configure.ac: If possible, report the version of the selected
326         TeX program; this should render the logs more informative.
327
328 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
329
330         maint: snapshots from `maint' are still development snapshots
331         The maintenance-oriented development line in the `maint' branch,
332         while being usually pretty stable and 99% backward-compatible,
333         is not always right off production-quality; but until now, the
334         Automake package version declared in configure.ac hid this fact,
335         since it appeared to be the version of a stable release (e.g.,
336         11.1).  Fix this.
337         * configure.ac (AC_INIT): Bump version to "1.11.0a".
338
339 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
340
341         configure: print proper message for test releases
342         * configure.ac: If the current release is detected to be a test
343         release or a development snapshot, print a proper warning for
344         the user.
345         * README-alpha: Delete, it's obsolete now (and in fact this file
346         hasn't been touched in eleven years, since release 1.4b or so).
347         * HACKING (Release procedure): Don't say to update README-alpha.
348
349 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
350
351         devel: help in comparing Makefile.in from different commits
352         Now that the generated Makefile.in, configure and aclocal.m4 files
353         are no longer committed in Automake's git repository, a simple
354         "git diff" or "git log" no longer shows if and how a change in
355         Automake results in changes to the Makefile.in files and/or
356         configure script of its own build system.  Still, the ability to
357         peek so easily at such differences has proved itself quite useful
358         in the past, often revealing inconsistencies and blunders, and
359         sometimes even bugs; so it would be a pity to lose that altogether.
360         With this change, we add a new maintainer recipe that re-introduces
361         much of that capability, by generating and comparing on the fly the
362         Makefile.in, configure and aclocal.m4 derived from two arbitrary
363         commits of the Automake repository.
364         * Makefile.am (autodiffs, compare-autodiffs): New phony targets.
365
366 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
367
368         repo: don't commit generated files in the git repository anymore
369         It has been quite some time since autoconf and libtool have stopped
370         committing the generated autotools files in their git repositories,
371         with no significant ill effects we're aware of.  It's true that the
372         autoconf bootstrap process has now the minor annoyance that a
373         pre-installed autoconf is required to complete it; but luckily
374         automake will not have a similar annoyance, since our bootstrap
375         script take care, through some hoops, to use the very automake and
376         aclocal versions from the current git checkout to generate the
377         required aclocal.m4 and Makefile.in files.  In fact, this has been
378         a necessity also in the past, because automake has been known to
379         use in its own build system new development features that hadn't
380         been present in any previously released automake distribution.
381         * .gitignore: Ignore configure, aclocal.m4, and all the
382         Makefile.in files.
383         * configure.ac (AC_PREREQ): New macro call, to require the
384         latest autoconf (2.68 for the moment).
385
386 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
387
388         missing: don't try to re-run tar with a munged command line
389         * lib/missing: If the default `tar' program fails with the given
390         arguments, and GNU tar is not available, don't try to re-run the
391         default `tar' with a munged command line (e.g., ditching possibly
392         unportable options), as that could be subtly alter the intended
393         semantics (and maybe even create a somewhat corrupted tarball).
394         Also, it's worth noting that the main purpose of the `missing'
395         script is to allow a non-developer to build the package in the
396         face of slightly-skewed timestamps, not to provide wrappers for
397         all the maintainer tools -- so we don't have to try too hard
398         when `missing' is just called to wrap `tar'.
399         * tests/missing-tar.test: New test.
400         * tests/Makefile.am (TESTS): Add it.
401
402 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
403
404         missing: inform the user if GNU tar is called
405         * lib/missing: If the code trying to run GNU tar is reached, it
406         means that the previous attempt to run the default tar program
407         has failed, very likely producing some error message.  At this
408         point, just running GNU tar without further comments might be
409         confusing.
410
411 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
412
413         missing: if GNU tar exists but fails when called, give up
414         * lib/missing: If the code trying to run GNU tar is reached,
415         don't continue if the invoked GNU tar program fails, as there
416         is little point in doing so (and can even be confusing and
417         counter-productive).
418
419 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
420
421         missing: miscellaneous fixlets
422         * lib/missing: Some shells, such as Solaris or FreeBSD /bin/sh,
423         warn about missing programs before performing redirections.
424         Therefore, where we have to silently check whether a program
425         exists, perform redirections on a subshell.
426         Remove redundant uses of double-quotes in variable definitions.
427         Delete an extra blank line.
428
429 2011-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
430
431         maint: remove executable bit from automake.in
432         * automake.in: This file is not meant to be executed, only to
433         be preprocessed to create the `automake' script; so don't leave
434         it executable.
435
436 2011-12-20  Peter Rosin  <peda@lysator.liu.se>
437
438         tests: fix spurious failure on systems lacking unistd.h
439         This is for automake bug#10324.
440         * tests/silent-lex-generic.test (foo.l): Add a dummy #define of
441         YY_NO_UNISTD_H, so that the generated foo.c file won't require
442         unistd.h to be present (it is not present when compiling with,
443         e.g., MSVC 9).
444
445 2011-12-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
446
447         test defs: hack to support autoconf-wrapper programs
448         * tests/defs-static.in ($AUTOCONF): Add a dummy `-B' option to the
449         autoconf invocation, so that, when the Debian autoconf wrapper is
450         involved, it will correctly dispatch an autoconf >= 2.50 instead of
451         defaulting to autoconf 2.13.
452         ($AUTOHEADER, $AUTORECONF): Likewise, but for autoheader and
453         autoreconf respectively.
454         Reported by Bruno Haible:
455         <http://lists.gnu.org/archive/html/automake/2011-12/msg00039.html>
456
457 2011-12-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
458
459         tests: fix a minor spurious failure with FreeBSD make
460         * tests/remake-am-pr10111.test: Avoid using `#' comments in
461         makefile recipes, as these have been confusing FreeBSD make.
462         The failure was masked by the fact that this test is currently
463         expected to fail.
464         Suggested by a report from Bruno Haible.
465
466 2011-12-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
467
468         tests: make two test scripts executable
469         * tests/remake-am-pr10111.test: Make executable.
470         * tests/remake-m4-pr10111.test: Likewise.
471
472 2011-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
473
474         readme: reference webpages for automake mailing lists
475         * README: Rationalize and reorganize the (brief) description of
476         the automake mailing lists.   In particular, instead of suggesting
477         the reader to write to the `-request' addresses to subscribe to
478         mailing lists, point him to the relevant webpages, where he can
479         also subscribe via a web form.
480
481 2011-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
482
483         readme: update advice about testsuite execution
484         * README: Now that the automake testsuite uses the parallel-tests
485         driver, there is no need for the user to capture the stdout of
486         "make check" to determine which tests have failed: a detailed log
487         is automatically saved into the `tests/test-suite.log' file.
488         Since we are at it, improve the wording by dropping an extra
489         "please".
490
491 2011-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
492
493         readme: don't reference the old homepage at sources.redhat.com
494         * README: Don't reference the old homepage at sources.redhat.com,
495         which is no longer active; reference the homepage on www.gnu.org
496         instead.  See also automake bug#10157 and bug#10248.
497         * tests/README: Likewise, and remove related extra-pedantic advice
498         about copyright papers for test cases (we'll ask for those papers
499         explicitly when we think they are warranted).
500
501 2011-12-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
502
503         hacking: some more fixlets
504         * HACKING (Release Procedure): Place the list of pre-release
505         bootstrap-and-test commands on a line of its own, so it's easy to
506         select and then paste it into a terminal window.
507         Fix the explanation of "make git-release", as, since the previous
508         change, "make git-release" would simply run "make dist" rather
509         than "make distcheck".
510         Suggestion from Jim Meyering.
511
512 2011-12-12  Peter Rosin  <peda@lysator.liu.se>
513
514         * NEWS: Fix typo in 'make dist-bzip2' description.
515
516 2011-12-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
517
518         release: don't run "make distcheck" automatically
519         * Makefile.am (git-dist): The developers should test extensively
520         before finally creating the release tarball; so don't run "make
521         distcheck" on their behalf here; instead ...
522         * HACKING (Release procedure): ... state here that "make check"
523         and "make distcheck" should be run before calling "make git-dist".
524
525 2011-12-09  Jim Meyering  <meyering@redhat.com>
526             Stefano Lattarini  <stefano.lattarini@gmail.com>
527
528         dist-xz, dist-bzip2: don't hard-code -9, honor envvar settings
529         Before the present change, automake-generated `dist-xz' rule used
530         a hard-coded `xz -9'.  That was a problem because on this front,
531         xz differs from gzip and bzip2.  While the latter two don't incur
532         any run-time decompression penalty for using a higher compression
533         level, specifying -9 with xz imposes a potentially fatal virtual
534         memory requirement on any client that wants to decompress your
535         tar.xz file.
536         People have complained that a tarball compressed with -9 cannot
537         be uncompressed in a low-memory environment (wrt-based embedded).
538         Hence, instead of defaulting to -9, which is useful only for very
539         large tarballs, it defaults to -e (equivalent to -6e).  This
540         limits the default memory requirements imposed on decompressors,
541         yet still gives very good compression ratios.
542         * lib/am/distdir.am (dist-xz): Do not hard-code xz's -9: that made
543         it impossible to override.  Actually don't default to -9, either,
544         since that induced inordinately large virtual memory usage when
545         merely decompressing.  Instead, use its XZ_OPT envvar, defaulting
546         to -e if not defined.  Suggested by Lasse Collin.
547         (dist-bzip2): Similarly, do not hard-code -9, but do continue to
548         use -9 by default.  Honor the BZIP2 envvar.
549         * NEWS: Update.
550         * doc/automake.texi (The Types of Distributions): Describe the
551         newly enabled environment variables.
552
553 2011-12-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
554
555         * NEWS: Fix typos, grammaros and suboptimal wording.
556         Reported by Jim Meyering.
557
558 2011-12-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
559
560         maint: sync auxiliary files from upstream
561         * lib/texinfo.tex: Synced from upstream, by "make fetch".
562         * lib/config.guess: Likewise.
563         * lib/config.sub: Likewise.
564
565 2011-12-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
566
567         tests: fix spurious failures due to missing 'yywrap()' function
568
569         The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
570         the "lex library" expected to provide a `yywrap' function (function
571         which is required to link most lex-generated programs).  On the
572         contrary, when all the link attempts (i.e., with `-ll' and `-lfl')
573         fail, configure declares that no lex library is needed, and simply
574         proceeds with the configuration process -- only for the build to
575         possibly fail later, at make time.
576
577         This behaviour is intended; the Autoconf manual reads:
578          ``You are encouraged to use Flex in your sources, since it is
579            both more pleasant to use than plain Lex and the C source it
580            produces is portable.  In order to ensure portability, however,
581            you must either provide a function `yywrap' or, if you don't use
582            it (e.g., your scanner has no `#include'-like feature), simply
583            include a `%noyywrap' statement in the scanner's source.''
584
585         This AC_PROG_LEX behaviour is causing some spurious failures of
586         the Automake testsuite in environments which lack a proper library
587         providing `yywrap' (this happens for example on Fedora-based
588         systems).   The proper workaround is to simply provide a fall-back
589         implementation of `yywrap' in our lexers.
590
591         See also partially-overlapping commit `v1.11-871-geb147a1' (from
592         the 'testsuite-work' branch), which was motivated by similar
593         spurious failures experienced when cross-compiling.
594
595         From a report by Jim Meyering:
596         <http://lists.gnu.org/archive/html/automake-patches/2011-10/msg00092.html>
597
598         * tests/cond35.test: Provide a dummy `yywrap' function.
599         * tests/lex3.test: Likewise.
600         * tests/silent-lex-generic.test: Likewise.
601         * tests/silent-lex-gcc.test: Likewise.
602         * tests/silent-many-generic.test: Likewise.
603         * tests/silent-many-gcc.test: Likewise.
604
605 2011-12-04  Paul Eggert  <eggert@cs.ucla.edu>
606
607         depcomp: spelling fix
608         * lib/depcomp (-h): Fix misspelling in usage diagnostic.
609
610 2011-11-28  Peter Rosin  <peda@lysator.liu.se>
611
612         tests: fix 'distcheck-override-infodir.test' on Cygwin
613         * tests/distcheck-override-infodir.test (Makefile.am): Do not add
614         any `/' between $(DESTDIR) and the following paths.  Otherwise,
615         when $(DESTDIR) is empty, the recipes will try to access files
616         with a leading double slash, which have an implementation-defined
617         interpretation (e.g., for Cygwin, they mean UNC paths).
618
619 2011-11-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
620
621         cosmetics: typofix in comments
622         * tests/remake-am-pr10111.test (Makefile.am): Fix typo in comments.
623         * THANKS: Update.
624         Reported by Krzysztof Żelechowski.
625
626 2011-11-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
627
628         coverage: undistributed '.am' and '.m4' files are diagnosed
629         The stub rules emitted to work around the "deleted header problem"
630         for `.m4' files (included by autoconf in e.g., configure.ac) and
631         for `.am' files (included by automake in e.g., Makefile.am) should
632         not prevent "make" from correctly complaining when such a required
633         file is missing from a distribution tarball.
634         * tests/dist-missing-am.test: New test.
635         * tests/dist-missing-m4.test: Likewise.
636         * tests/dist-missing-included-m4.test: Likewise.
637         * tests/Makefile.am (TESTS): Add them.
638         Suggestion by Ralf Wildenhues.
639
640 2011-11-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
641
642         coverage: required but missing '.am' and '.m4' files are diagnosed
643         The stub rules emitted to work around the "deleted header problem"
644         for `.m4' files (included by autoconf in e.g., configure.ac) and
645         for `.am' files (included by automake in e.g., Makefile.am) should
646         not prevent the remake rules from correctly erroring out when a
647         still-required file is missing.
648         * tests/deleted-am.test: New test.
649         * tests/deleted-m4.test: Likewise.
650         * tests/Makefile.am (TESTS): Add them.
651
652 2011-11-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
653
654         coverage: expose automake bug#10111 in the testsuite
655         * tests/remake-am-pr10111.test: New test, xfailing.
656         * tests/remake-m4-pr10111.test: Likewise.
657         * tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.
658
659 2011-11-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
660
661         texinfo: work around Solaris 10 xpg4 shell bug in install rules
662         * lib/am/texinfos.am (install-html-am): Use an extra variable
663         indirection to work around a bug in Solaris 10 /usr/xpg4/bin/sh.
664         Bug revealed by a failure of `txinfo21.test'.  See also:
665         <http://lists.gnu.org/archive/html/bug-autoconf/2011-11/msg00005.html>
666         <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10026#23>
667
668 2011-11-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
669
670         configure: report perl version in config.log
671         * configure.ac: Report the version of the selected perl interpreter
672         in config.log; this should render the logs more informative.
673
674 2011-11-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
675
676         tests: fix spurious failure with older install-info
677         * tests/install-info-dir.test (foo.texi): Also add proper
678         `@settitle', `@dircategory' and `@direntry' directive, otherwise
679         older versions of `install-info' (e.g., 4.8) will fail to create
680         the `dir' index file in ${infodir}.
681         Problem revealed by a failure on NetBSD 5.1.
682
683 2011-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
684
685         maintcheck: fix spurious failure in 'color2.test'
686         * tests/color2.test: Avoid creative quoting to avoid a spurious
687         failure of the `sc_tests_Exit_not_exit' maintainer check.
688
689 2011-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
690
691         tests: fix spurious error in 'uninstall-fail.test' on Solaris
692         * tests/uninstall-fail.test: Solaris 10 /usr/xpg4/bin/sh can add
693         a line number before the `:' in the error messages issued by shell
694         builtins.  Account for that in our grepping of make output.
695
696 2011-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
697
698         tests: fix typo in 'uninstall-fail.test'
699         * tests/uninstall-fail.test: Always use `$rm_f_is_silent_on_error'
700         instead of the bogus `$rm_f_is_silent_on_failure'.
701
702 2011-11-19  Paul Eggert  <eggert@cs.ucla.edu>
703
704         * lib/install-sh: Spelling fix in comment.
705
706 2011-11-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
707
708         tests: avoid a spurious failure of 'ltinit.test' MinGW
709         * tests/ltinit.test: Be laxer in grepping configure output, to
710         avoid spurious failures on systems which lack POSIX dynamic
711         linking (e.g., MinGW), or when cross-compiling for such systems.
712         See also commit `v1.11-855-ge9e5d4a'.
713         Report and suggestion from Peter Rosin.
714
715 2011-11-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
716
717         tests: testsuite is now safe to run with dmake in parallel mode
718         * tests/defs.in: Unset variables DMAKE_CHILD, DMAKE_DEF_PRINTED
719         and DMAKE_MAX_JOBS, which are exported by Solaris dmake when run
720         in parallel mode, and which might confuse make processes spawned
721         by our testsuite.
722
723 2011-11-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
724
725         tests: fix spurious failures w.r.t. parallel make and colorization
726         * tests/color2.test: Skip the test if the $MAKE program fails to
727         consider the standard output as a tty when spawned by `expect'.
728         This is required for make implementations, like FreeBSD make and
729         Solaris dmake, that redirect the output of recipes to temporary
730         files or pipes when run in parallel mode.  Since we are at it,
731         simplify the detection of a working `expect' program, and throw
732         in other minor simplifications.
733
734 2011-11-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
735
736         tests: fix spurious failure in 'distcheck-override-infodir.test'
737         * tests/distcheck-override-infodir.test ($required): Add
738         'install-info'.
739
740 2011-11-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
741
742         tests: avoid another failure of 'uninstall-fail.test' on Solaris
743         * tests/uninstall-fail.test: On Solaris 10, if `/bin/rm' is run
744         with the `-f' option, it doesn't print any error message when
745         failing to remove a file (due to e.g., "Permission denied").
746         Yikes.  Cater to this incompatibility, by relaxing the test when
747         a faulty `rm' is detected.
748
749 2011-11-05  Stefano Lattarini  <stefano.lattarini@gmail.com>
750
751         ar-lib: fix configure output for "unrecognized archiver interface"
752         * m4/ar-lib.m4: Ensure that, even when an error is hit while trying
753         to determine the archiver interface kind, the "checking archiver
754         interface" message from configure is properly terminated before
755         an error message is printed, to avoid slightly garbled output.
756         * tests/ar4.test: Enhance.
757         * tests/ar5.test: Likewise.
758
759 2011-11-05  Stefano Lattarini  <stefano.lattarini@gmail.com>
760
761         Merge branch 'msvc' into master
762         * tests/extra-portability3.test: Use `$original_AUTOMAKE' instead
763         of hackishly extracting the first component of `$AUTOMAKE'.
764         * tests/extra-portability.test: Likewise.  Also, since we are at
765         it, throw in a couple of small extensions and tweakings (suggested
766         by the minor merge conflicts).
767
768 2011-11-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
769
770         warnings: fix buglets for portability warnings
771         * lib/Automake/ChannelDefs.pm (switch_warning): Ensure the
772         correct implications and inter-dependencies between warnings
773         in the categories `portability', `extra-portability' and
774         `recursive-portability' are respected.  Also add detailed
775         explicative comments, and references to the relevant tests.
776         * tests/dollarvar2.test: Update and extend.  Also, remove
777         some unnecessary uses of `--force' option in automake calls.
778         * tests/extra-portability3.test: New test.
779         * tests/Makefile.am (TESTS): Add it.
780
781 2011-11-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
782
783         tests: extend tests on 'extra-portability' warning category
784         * tests/extra-portability.test: Redefine `$AUTOMAKE' to ensure we
785         have complete control over the automake options.  Extend by using
786         also a setup where no `portability' warning is present (only an
787         `extra-portability' warning is).  Other minor extensions.  Remove
788         some redundant, verbose comments about the expected diagnostic.
789
790 2011-11-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
791
792         test defs: new functions to analyze configure help screen
793         * tests/defs (extract_configure_help, grep_configure_help): New
794         functions.
795         * tests/maintmode-configure-msg.test: Use them, reducing code
796         duplication and test brittleness.
797         * tests/help-depend.test: Likewise.
798         * tests/help-depend2.test: Likewise.
799         * tests/help-dmalloc.test: Likewise.
800         * tests/help-lispdir.test: Likewise.
801         * tests/help-multilib.test: Likewise.
802         * tests/help-python.test: Likewise.
803         * tests/help-regex.test: Likewise.
804         * tests/help-silent.test: Likewise.
805         * tests/help-upc.test: Likewise.
806         * tests/help-init.test: Make grepping of configure help screen
807         slightly stricter.
808         * tests/self-check-configure-help.test: New self test.
809         * tests/Makefile.am (TESTS): Add it.
810         From a report by Jim Meyering.
811
812 2011-11-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
813
814         tests: various minor tweakings, mostly related to AM_PROG_AR
815         * tests/alloca.test: Adjust to new portability requirements due
816         to the new AM_PROG_AR macro.
817         * tests/discover.test: Likewise.
818         * tests/libobj3.test: Likewise.
819         * tests/pluseq7.test: Likewise.  Also, make grepping of automake
820         expected error message stricter.
821         * tests/stdlib.test: Likewise, and extend the test a bit.
822         * tests/parse.test (configure.in): Remove redundant call to
823         AC_PROG_RANLIB.
824         * tests/library2.test: Adjust to new portability requirements
825         due to the new AM_PROG_AR macro.  Also ...
826         (configure.in): ... add call to AC_PROG_CC, to ensure automake
827         really fails for the expected reason.
828
829 2011-11-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
830
831         Merge branch 'msvc' into master
832
833         * tests/instspc-tests.sh: Adjust to new portability requirements
834         due to the new AM_PROG_AR macro.
835         * tests/libobj-basic.test: Likewise.
836         * tests/libobj2.test: Likewise.
837         * tests/libobj15a.test: Likewise.
838         * tests/libobj15b.test: Likewise.
839         * tests/libobj15c.test: Likewise.
840         * tests/libobj16a.test: Likewise.
841         * tests/libobj16b.test: Likewise.
842         * tests/libobj17.test: Likewise.
843         * tests/libobj18.test: Likewise.
844         * tests/libobj19.test: Likewise.
845         * tests/libobj20a.test: Likewise.
846         * tests/libobj20b.test: Likewise.
847         * tests/libobj20c.test: Likewise.
848         * tests/canon6.test: Likewise.
849         * tests/canon6.test: Likewise.
850         * tests/canon7.tests: Likewise.
851         * tests/extra9.test: Likewise.
852         * tests/extradep.test: Likewise.
853         * tests/extradep2.test: Likewise.
854         * tests/posixsubst-ldadd.test: Likewise.
855         * tests/posixsubst-libraries.test: Likewise.
856         * tests/posixsubst-ltlibraries.test: Likewise.
857         * tests/python-virtualenv.test: Likewise.
858         * tests/vartypos.test: Likewise.
859         * tests/vartypo2.test: Likewise.
860         * tests/suffix.test: Update to take into account previous
861         master-only changes.
862         * tests/suffix2.test: Likewise.
863         * tests/libobj7.test: Call automake with the `--add-missing'
864         option, instead of creating a dummy `ar-lib' file, since this
865         test now also runs "./configure" and "make".
866         * tests/suffix5.test: Copy the real `ar-lib' script file,
867         instead of creating a dummy one, since this test now also
868         runs "./configure" and "make".
869         * tests/extra-portability2.test: Fix this test not to rely
870         on the older, faulty semantics of "strictness specification
871         always reset warning level", which has been fixed in commit
872         v1.11-623-g1609491 (see also automake bug#7669 a.k.a. PR/547).
873         Since we are at it, throw inf few other minor unrelated
874         improvements.
875         * tests/extra-portability.test: Explicitly pass `-Wall' to
876         automake calls, for clarity.
877
878 2011-10-21  Peter Rosin  <peda@lysator.liu.se>
879
880         warnings: new 'extra-portability' category, for AM_PROG_AR
881         * lib/Automake/ChannelDefs.pm: Register new extra-portability
882         warning channel.
883         (switch_warning): Turn off extra-portability if portability is
884         turned off, and turn on portability if extra-portability is
885         turned on.
886         (set_strictness): Silence extra-portability for --gnits, --gnu
887         and --foreign.
888         * tests/extra-portability2.test: New test, checking that the
889         extra-portability channel is silenced by --gnits, --gnu and
890         --foreign.
891         * doc/automake.texi (Invoking Automake): Document the new warning
892         category and its interaction with the portability category.
893         * tests/extra-portability.test: New test, checking the interaction
894         between the portability and extra-portability warning categories.
895         * automake.in (handle_libraries, handle_ltlibraries): Move the
896         AM_PROG_AR warnings to the new extra-portability channel.
897         * tests/ar2.test: Adjust to the new warning channel.
898         * tests/pr300-lib.test: Likewise.
899         * tests/pr300-ltlib.test: Likewise.
900         * tests/pr307.test: Likewise.
901         * tests/pr401.test: Likewise.
902         * tests/pr401b.test: Likewise.
903         * tests/pr401c.test: Likewise.
904         * tests/pr72.test: Likewise.
905         * NEWS: Likewise.
906         * tests/Makefile.am (TESTS): Update.
907
908 2011-10-21  Peter Rosin  <peda@lysator.liu.se>
909             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
910             Stefano Lattarini  <stefano.lattarini@gmail.com>
911
912         Add new 'AM_PROG_AR' macro, triggering the 'ar-lib' script.
913         * m4/ar-lib.m4: New macro AM_PROG_AR, which locates an
914         archiver and triggers the auxiliary 'ar-lib' script if needed.
915         * m4/Makefile.am (dist_m4data_DATA): Update.
916         * automake.in ($seen_ar): New variable.
917         (scan_autoconf_traces): Set it.
918         (handle_libraries, handle_ltlibraries): Require AM_PROG_AR for
919         portability.
920         * doc/automake.texi (Public Macros): Mention the new
921         'AM_PROG_AR' macro.
922         (Subpackages): Add AM_PROG_AR to the example.
923         (A Library): Adjust recommendations for AR given the new
924         AM_PROG_AR macro.
925         * All relevant tests: Adjust to new portability requirements due
926         to the new AM_PROG_AR macro.
927         * tests/ar-lib2.test: New test, checking that AM_PROG_AR triggers
928         install of ar-lib.
929         * tests/ar-lib3.test: New test, checking that lib_LIBRARIES
930         requires AM_PROG_AR.
931         * tests/ar-lib4.test: New test, checking that lib_LTLIBRARIES
932         requires AM_PROG_AR.
933         * tests/ar-lib5a.test: New test, checking that AM_PROG_AR triggers
934         use of ar-lib when the archiver is Microsoft lib.
935         * tests/ar-lib5b.test: New test, checking that AM_PROG_AR triggers
936         use of ar-lib when the archiver is a faked lib.
937         * tests/ar-lib6a.test: New test, checking the ordering of
938         AM_PROG_AR and LT_INIT.
939         * tests/ar-lib6b.test: New test, checking the ordering of
940         AM_PROG_AR and AC_PROG_LIBTOOL.
941         * tests/ar-lib7.test: New test, checking that automake warns
942         if ar-lib is missing.
943         * tests/ar3.test: New test, checking that AR and ARFLAGS may
944         be overridden by the user even if AM_PROG_AR is used.
945         * tests/ar4.test: New test, checking that AM_PROG_AR bails out
946         if it cannot determine the archiver interface.
947         * tests/ar5.test: New test, checking that AM_PROG_AR runs its
948         optional argument if it cannot determine the archiver interface.
949         * tests/defs.in: New required entry 'lib'.
950         * tests/Makefile.am (TESTS): Update.
951         * NEWS: Update.
952
953 2011-11-03  Zack Weinberg <zackw@panix.com>  (tiny change)
954             Stefano Lattarini  <stefano.lattarini@gmail.com>
955
956         maint-mode: fix botched configure messages
957         This change fixes automake bug#9890.
958         * m4/maintainer.m4 (AM_MAINTAINER_MODE): Fix the "checking ..."
959         configure message related to the enabling/disabling of maintainer
960         mode.
961         * tests/help-maintainer.test: Renamed ...
962         * tests/maintmode-configure-msg.test: ... to this, and extended
963         to cover the fixed bug.  Also, since we are at it, make grepping
964         of configure help screens stricter, and throw in some few other
965         changes to reduce code duplication and enhance readability.
966         * tests/Makefile.am (TESTS): Update.
967         * THANKS: Update with Zack's new e-mail address.
968         Report and initial patch by Zack Weinberg, test cases added by
969         Stefano Lattarini.
970
971 2011-10-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
972
973         info: allow user to inhibit creation/update of '${infodir}/dir'
974         With this change, we allow the user to request the install-info
975         rules not to update the `${infodir}/dir' file, by setting the
976         environment variable `AM_UPDATE_INFO_DIR' to the value "no".
977         This is especially useful to distro packagers, and is a definite
978         improvement over our previous hack of looking whether the
979         `install-info' program was the Debian or GNU version -- hack
980         which had been silently broken with recent versions of debian
981         install-info BTW (probably since dpkg 1.15.4, 2009-09-06).
982         This change fixes automake bug#9773.  See also Debian Bug#543992.
983         * lib/am/texinfos.am: Don't look anymore at the output of
984         `install-info --version' to decide whether to use it to update
985         the `${infodir}/dir' or not; instead, honour the environment
986         variable `AM_UPDATE_INFO_DIR'.
987         * tests/install-info-dir.test: New test.
988         * tests/Makefile.am (TESTS): Add it.
989         * tests/defs: Also unset `AM_UPDATE_INFO_DIR', to avoid unwanted
990         interferences from the environment.
991         * doc/automake.texi (Texinfo): Update.
992         * NEWS: Likewise.
993         * THANKS: Likewise.
994         Report by Jonathan Nieder.
995
996 2011-10-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
997
998         deps: partially revert commit `v1.11-512-geeee551'
999         This change partly reverts commit "Create subdirs for generated
1000         sources even when not dep tracking", of 2011-04-02.
1001         That commit had caused the bugs #8485 and #8526.  Since we are
1002         nearing the bug-fixing automake release 1.11.2, the safest policy
1003         at the moment is to just revert the problematic hunks: an older,
1004         known bug is better than a regression.
1005         * automake.in (handle_single_transform): Don't add a dirstamp
1006         dependency, even when $object is derived and lands in a subdir.
1007         * tests/Makefile.am (XFAIL_TESTS): Add lex-subobj-nodep.test,
1008         remove yacc-dist-nobuild-subdir.test.
1009
1010 2011-10-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
1011
1012         tests: few improvements to some `ar-lib' related tests
1013
1014         * tests/ar-lib5a.test (Makefile.am): Also check that the target
1015         library has truly been created.
1016         (ar-lib): Use the real `ar-lib' script (mildly patched) rather
1017         than a dummy one, to ensure better "real-life coverage".  Fix
1018         botched shebang line.
1019         * tests/ar-lib5b.test: Extend the PATH variable to make the dummy
1020         `lib' script accessible, instead of explicitly calling it by its
1021         relative/absolute path.
1022         (ar-lib): Fix botched shebang line.
1023         (bin/lib): Likewise.  Also, add explicative comments, and make
1024         slightly stricter.
1025
1026 2011-10-24  Peter Rosin  <peda@lysator.liu.se>
1027
1028         Merge branch 'maint' into msvc
1029
1030         * tests/subpkg-yacc.test: Adjust to new portability requirements due
1031         to the new AM_PROG_AR macro.
1032
1033 2011-10-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1034
1035         dejagnu: allow the package developer to extend site.exp
1036         Fixes automake bug#7873.
1037         * lib/am/dejagnu.am (site.exp): Depend from the files listed in
1038         $(EXTRA_DEJAGNU_SITE_CONFIG), if any.  Append their contents to
1039         the generated site.exp (still preserving user edits).
1040         * doc/automake.texi (Dejagnu Tests): Update.
1041         * tests/dejagnu-siteexp-append.test: New test.
1042         * tests/dejagnu-siteexp-extend.test: Likewise.
1043         * tests/dejagnu-siteexp-useredit.test: Likewise.
1044         * tests/Makefile.am (TESTS): Update.
1045         * NEWS: Update.
1046         Suggestion by Rainer Orth.
1047
1048 2011-10-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1049
1050         dejagnu: ensure 'srcdir' is defined as a relative directory
1051         This change fixes automake bug#7833.
1052         * lib/am/dejagnu.am (check-DEJAGNU): Prefer using plain $(srcdir)
1053         over calculating and using the absolute path of $(srcdir).
1054         * tests/dejagnu-relative-srcdir.test: New test.
1055         * tests/dejagnu-absolute-builddir.test: Likewise.
1056         * tests/Makefile.am (TESTS): Update.
1057         Report by Ian Lance Taylor.  Suggestions by Ralf Wildenhues.
1058
1059 2010-12-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1060
1061         Fix testsuite failure of check12.test without DejaGNU.
1062         * tests/check12.test: Require runtest.
1063
1064 2010-12-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
1065
1066         Extend and improve tests on DejaGnu support.
1067         * tests/dejagnu.test: Do not create useless dummy test script.
1068         Add trailing `:' command.  In heading comments, add reference
1069         to ...
1070         * tests/check12.test: ... this new "semantic" test, covering
1071         concurrent use of dejagnu tests, simple tests and `check-local'
1072         target.
1073         * tests/dejagnu2.test: Make test more reliable, by avoid weak
1074         grepping of make output.  Prefer `cat' over `echo' to append
1075         to configure.in.  Quote literal dots in grep regexps.  Prefer
1076         `grep -c ...' over `grep ... | wc -l'.  Make grepping of
1077         automake stderr slightly stricter.  Add trailing `:' command.
1078         * tests/dejagnu3.test: Prefer `cat' over `echo' to append to
1079         configure.in.  Check stderr of expected-to-fail "make" call.
1080         Remove extra blank lines from Makefile.am.
1081         * tests/dejagnu4.test: Prefer `cat' over `echo' to append to
1082         configure.in.  Prefer `mv -f' over plain `mv' when the target
1083         file already exists.  Avoid extra mkdir calls by creating more
1084         directories at once.  Better use of blank lines.  Check that
1085         the `*.log' and `*.sum' files are created by runtest also when
1086         "make check" fails.
1087         * tests/dejagnu7.test: Prefer `cat' over `echo' to append to
1088         configure.in.  Better use of blank lines.  Add a trailing `:'
1089         command.
1090         * tests/dejagnu6.test: Likewise, and give the dejagnu test a
1091         more descriptive name.
1092         * tests/dejagnu5.test: Likewise.  Also, simply define package
1093         name to `$me' rather than using a non-obvious sed script to
1094         extract it from `AC_INIT', and write the Makefile.am with only
1095         one command.
1096         * tests/Makefile.am (TESTS): Updated.
1097
1098 2011-10-21  Peter Rosin  <peda@lysator.liu.se>
1099
1100         * THANKS: Fix whitespace issue.
1101
1102 2011-10-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
1103
1104         tests: fix spurious failures due to missing 'yywrap()' function
1105
1106         The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
1107         the "lex library" expected to provide a `yywrap' function (function
1108         which is required to link most lex-generated programs).  On the
1109         contrary, when all the link attempts (i.e., with `-ll' and `-lfl')
1110         fail, configure declares that no lex library is needed, and simply
1111         proceeds with the configuration process -- only for the build to
1112         possibly fail later, at make time.
1113
1114         This behaviour is intended; the Autoconf manual reads:
1115          ``You are encouraged to use Flex in your sources, since it is
1116            both more pleasant to use than plain Lex and the C source it
1117            produces is portable.  In order to ensure portability, however,
1118            you must either provide a function `yywrap' or, if you don't use
1119            it (e.g., your scanner has no `#include'-like feature), simply
1120            include a `%noyywrap' statement in the scanner's source.''
1121
1122         This AC_PROG_LEX behaviour is causing some spurious failures of
1123         the Automake testsuite in environments which lack a proper library
1124         providing `yywrap' (this happens for example on Fedora-based
1125         systems).   The proper workaround is to simply provide a fall-back
1126         implementation of `yywrap' in our lexers.
1127
1128         See also partially-overlapping commit `v1.11-871-geb147a1' (from
1129         the 'testsuite-work' branch), which was motivated by similar
1130         spurious failures experienced when cross-compiling.
1131
1132         Reported by Jim Meyering:
1133         <http://lists.gnu.org/archive/html/automake-patches/2011-10/msg00092.html>
1134
1135         * tests/cond35.test: Provide a dummy `yywrap' function.
1136         * tests/lex3.test: Likewise.
1137         * tests/lexvpath.test: Likewise.
1138         * tests/silent-lex-generic.test: Likewise.
1139         * tests/silent-lex-gcc.test: Likewise.
1140
1141 2011-10-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1142
1143         tests: fix spurious failure with FreeBSD make and Yacc in VPATH
1144         * tests/subpkg.test: Some cosmetic adjustments.  Move the tests
1145         checking that $(YLWRAP) is defined and installed properly when
1146         ylwrap is in a default auxdir found in a parent package ...
1147         * tests/subpkg-yacc.test: ... into this new test, which carefully
1148         avoids to trigger the known bug#7884 (combo FreeBSD make plus Yacc
1149         plus VPATH build).
1150         * tests/Makefile.am (TESTS): Update.
1151
1152 2011-10-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1153
1154         tests: avoid spurious failure in 'parallel-tests3.test'
1155         This fixes automake bug#8788.
1156         * tests/parallel-tests3.test: To ensure that the serial run of
1157         the dummy testsuite is still ongoing when the parallel run has
1158         terminated, use `kill -0', not a bare `kill'.  This will prevent
1159         a testsuite crash on NetBSD 5.1, and a testsuite hang on FreeBSD
1160         8.2.  Also, since we are at it, try harder to avoid possible
1161         hangs of the script in other unusual situations.
1162
1163 2011-10-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1164
1165         tests: fix spurious failures with "chatty" make implementations
1166         * tests/distcheck-missing-m4.test: On failure, some make
1167         implementations (such as Solaris make) print the whole failed
1168         recipe on standard output.  This was causing a spurious failure
1169         in the checks grepping the output from make.  Work around this.
1170         * tests/distcheck-outdated-m4.test: Likewise.
1171
1172 2011-10-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1173
1174         tests: fix spurious failure on fast machines
1175         * tests/aclocal-path-precedence.test: Also remove the `configure'
1176         script between different test runs, to ensure it is always remade
1177         by autoconf.  Add proper explicative comments.
1178
1179 2011-10-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1180
1181         tests: avoid spurious failure of 'uninstall-fail.test' on Solaris
1182         * tests/uninstall-fail.test: All the Solaris 10 shells (/bin/sh,
1183         /bin/ksh, and /usr/xpg4/bin/sh), upon failing to chdir to a
1184         directory with the `cd' builtin, print a message like:
1185           "sh: /root: permission denied"
1186         which doesn't report the `cd' builtin anywhere.  Relax the grepping
1187         of the error message accordingly.
1188
1189 2011-10-20  Jim Meyering  <meyering@redhat.com>
1190
1191         tests: fix aclocal-print-acdir.test
1192         * tests/aclocal-print-acdir.test: Adjust to pass.
1193
1194 2011-10-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1195
1196         tests: avoid spurious failure of 'uninstall-fail.test' on Cygwin
1197         * tests/uninstall-fail.test: Be sure to really skip this test
1198         on systems that allows files to be removed from unwritable
1199         directories.  Motivated by a spurious failure on Cygwin 1.5.
1200
1201 2011-10-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
1202
1203         tests: fix spurious failure with autoconf 2.62
1204         * tests/aclocal-path-precedence.test: Rewrite configure.in,
1205         rather than appending to it, to avoid spurious failures (at
1206         least with autoconf 2.62) due to repeated calls to AC_INIT.
1207         Also, add package name and version arguments to AC_INIT, to
1208         avoid spurious errors from automake.
1209
1210 2011-10-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
1211
1212         docs: avoid using colon character inside arguments of @pxref
1213         Fixes automake bug#9753
1214         * doc/automake.texi (VPATH Builds): Avoid using colon character
1215         `:' inside arguments of @pxref, as this can cause problems in
1216         the generated `.info' files, and such an usage will be explicitly
1217         forbidden by future texinfo documentation.
1218         * THANKS: Update.
1219         Reported by Дилян Палаузов.
1220
1221 2011-10-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
1222
1223         refactor: improve signature of 'check_directory' sub in automake
1224         * automake.in (check_directory): Take the relative directory
1225         the directory to be checked is expected to be found into as
1226         an optional parameter, rather than reading it from the global
1227         variable `$relative_dir'.
1228         (scan_autoconf_traces, check_directories_in_var): Adjust.
1229
1230 2011-10-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
1231
1232         parallel-tests: warn on conditional TEST_EXTENSIONS definition
1233         Before this change, automake would have still bailed out, but
1234         with a confusing error message (about an invalid redefinition
1235         of TEST_EXTENSIONS).
1236         * automake.in (handle_tests): Warn explicitly if TEST_EXTENSIONS
1237         has conditional contents.
1238         * tests/test-extensions-con.test: New test.
1239         * tests/Makefile.am (TESTS): Add it.
1240         * NEWS: Update.
1241
1242 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1243
1244         parallel-tests: don't allow @substitutions@ in TEST_EXTENSIONS
1245         Even after the last commit `v1.11-476-g90bea64', the checks
1246         performed by automake on entries in $(TEST_EXTENSIONS) tried to
1247         allow for @substitited@ stuff.  This however ends up allowing
1248         quite brittle setups, which, most importantly, are of no real
1249         practical usefulness anyway.  So it's better to just disallow
1250         @substitutions@ in TEST_EXTENSIONS altogether, offering a clear
1251         error message, instead of risking weird bugs and unexpected
1252         behaviors in the generated Makefile.in.
1253         * automake.in ($TEST_EXTENSION_PATTERN): Turned from a regular
1254         expression ...
1255         (is_valid_test_extension): ... into this subroutine.  Don't allow
1256         generic @substitutions@ anymore (possibly making an exception for
1257         `@EXEEXT@' under the proper circumstances).
1258         * tests/test-extensions.test: Adjust and extend.
1259
1260 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1261
1262         tests: fix spurious failure in 'insthook.test'
1263         * tests/insthook.test (Makefile.am): Add a proper `uninstall-hook'
1264         target to remove the symlink created by the `install-exec-hook'
1265         target; this prevents "make distcheck" from failing spuriously.
1266         Since we are at it, delete an extra blank line, and add a trailing
1267         `:' command.
1268
1269 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1270
1271         maintcheck: fix spurious failure
1272         * lib/am/distdir.am: Use `$(infodir)', not `${infodir}', to avoid
1273         complaints from the `sc_no_brace_variable_expansions' maintainer
1274         check.
1275
1276 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1277
1278         fix: make a test script executable
1279         * tests/nobase-nodist.test: Make executable.
1280
1281 2011-10-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1282
1283         coverage: expose automake bug#9651
1284         * tests/dist-auxfile.test: New test, xfailing.
1285         * tests/dist-auxfile-2.test: Likewise.
1286         * tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.
1287
1288 2011-10-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
1289
1290         parallel-tests: automake error our on invalid TEST_EXTENSIONS
1291         This change fixes automake bug#9400.
1292         * automake.in (handle_tests): Bail out if a suffix specified in
1293         TEST_EXTENSIONS would produce an invalid `xxx_LOG_COMPILER'
1294         variable or an invalid suffix rule.  Before this change, automake
1295         would have issued a confusing error messages (about invalid or
1296         non-POSIX variables being defined), and in some situations would
1297         have even produced a broken `Makefile.in' file.
1298         ($TEST_EXTENSION_PATTERN): New helper variable.
1299         * doc/automake.texi (Simple Tests using parallel-tests): Document
1300         the limitations on TEST_EXTENSIONS explicitly.
1301         * NEWS: Update.
1302         * tests/test-extensions.test: New test.
1303         * tests/Makefile.am (TESTS): Update.
1304
1305 2011-09-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1306
1307         docs: don't suggest installing `.m4' files in hard-coded location
1308         This change fixes automake bug#7988.
1309         * doc/automake.texi (aclocal Options): State that the use of
1310         the `--print-ac-dir' option to determine the directory where
1311         third-party packages can install their `.m4' files is discouraged
1312         now.
1313         (Extending aclocal): Suggest telling the user about ACLOCAL_PATH.
1314         * THANKS: Update.
1315         Report by Peter Johansson.
1316
1317 2011-09-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
1318
1319         distuninstallcheck: fail also when only one file is left installed
1320         This change fixes automake bug#9579.
1321         * lib/am/distdir.am (distuninstallcheck): Be stricter in ignoring
1322         a potential `dir' file created by install-info and left installed.
1323         Also, be more careful about "this can't happen" kind of errors.
1324         (am__distuninstallcheck_listfiles): New internal helper macro.
1325         * tests/distcheck-pr9579.test: New test.
1326         * tests/distcheck-override-infodir.test: Likewise.
1327         * tests/Makefile.am (TESTS): Add them.
1328         * NEWS, THANKS: Update.
1329         Report by Nick Bowler.
1330
1331 2011-09-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1332
1333         maintcheck: fix usage of `cd' instead of `$(am__cd)'
1334         * lib/am/inst-vars.am (am__uninstall_files_from_dir): Use
1335         `$(am__cd)', not plain `cd'.
1336
1337 2011-09-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
1338
1339         uninstall: "make uninstall" before "make install" works
1340         This change fixes automake bug#9578.
1341         * lib/am/inst-vars.am (am__uninstall_files_from_dir): New internal
1342         macro, that defines a shell code fragment to uninstall files from
1343         a given directory.
1344         * lib/am/data.am (uninstall-%DIR%%PRIMARY%): Use it, to reduce code
1345         duplication and improve consistency and correctness.
1346         * lib/am/libs.am (uninstall-%DIR%LIBRARIES): Likewise.
1347         * lib/am/lisp.am (uninstall-%DIR%LISP): Likewise.
1348         * lib/am/mans.am (uninstall-man%SECTION%): Likewise.
1349         * lib/am/python.am (uninstall-%DIR%LIBRARIES): Likewise.
1350         * lib/am/scripts.am (uninstall-%DIR%SCRIPTS): Likewise.
1351         * tests/uninstall-pr9578.test: New test.
1352         * tests/uninstall-fail.test: New test.
1353         * tests/Makefile.am (TESTS): Add them.
1354         * NEWS, THANKS: Update.
1355         Report by Nick Bowler.
1356
1357 2011-09-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
1358
1359         tests: fix tests on aclocal search path precedences
1360         * tests/aclocal-path-precedence.test: Call `$ACLOCAL' with the
1361         proper overridden system acdir.
1362
1363 2011-09-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1364
1365         docs: remove mention of deprecated option `--acdir'
1366         * doc/automake.texi (aclocal Options): Remove mention of
1367         deprecated `--acdir' option.
1368
1369 2011-09-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1370
1371         * NEWS: Cleanup after botched merges.
1372
1373 2011-09-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1374
1375         * NEWS: Fix typo.
1376
1377 2011-09-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
1378
1379         docs: document planned precedence changes in aclocal search path
1380         * doc/automake.texi (Macro Search Path): Explicitly state that the
1381         lookup order for extra directories of `.m4' files will be changed
1382         in the next major release.
1383         * NEWS: Likewise.
1384
1385 2011-09-19  Paolo Bonzini  <bonzini@gnu.org>
1386             Stefano Lattarini  <stefano.lattarini@gmail.com>
1387
1388         aclocal: handle ACLOCAL_PATH environment variable
1389         * aclocal.in (parse_ACLOCAL_PATH): New function, parse ACLOCAL_PATH
1390         as a colon-separated list of directories to be included in the
1391         search path.
1392         * doc/automake.texi (Macro Search Path): Document new behavior and
1393         the precedence rules for various elements of the search path.
1394         * tests/aclocal-path.test: New test.
1395         * tests/aclocal-path-install.test: Likewise.
1396         * tests/aclocal-path-install-serial.test: Likewise.
1397         * tests/aclocal-path-precedence.test: Likewise.
1398         * tests/aclocal-path-nonexistent.test: Likewise.
1399         * tests/Makefile.am (TESTS): Add them.
1400         * NEWS: Update.
1401         * tests/distcheck-missing-m4.test: Extend by also checking
1402         interactions with ACLOCAL_PATH.
1403         * tests/distcheck-outdated-m4.test: Likewise, and fix a couple
1404         of botched comments since we are at it.
1405
1406 2011-09-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1407
1408         tests: fix spurious failure in 'primary-prefix-valid-couples.test'
1409         * tests/primary-prefix-valid-couples.test: After commit
1410         v1.11-464-gc9dfc36, `java_JAVA' is not a valid prefix/primary
1411         combination by default anymore: one has to explicitly define
1412         $(javadir) to make it so.  So just drop `java_JAVA' from our
1413         Makefile.am  Also, since we are at it, ...
1414         (configure.in): ... remove AM_PROG_GCJ from here, as it's not
1415         really required.
1416
1417 2011-09-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1418
1419         docs: deprecate JAVA primary
1420         * doc/automake.texi (Java): Deprecate the JAVA primary, stating
1421         that it will become obsolete in automake 1.12 and probably removed
1422         altogether in automake 1.13.  Reflect this in the section title,
1423         by appending the string "(deprecated feature)".
1424         (@menu, @detailmenu): Update.
1425         (Java Support with gcj): The cross-referenced support for bytecode
1426         compilation with the JAVA primary is rudimentary and deprecated.
1427         State that explicitly.
1428
1429 2011-09-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
1430
1431         docs: clearer distinction between `.java' with javac and with gcj
1432         * doc/automake.texi (Java support): Rename this node ...
1433         (Java support with gcj): ... to this, and change its title from
1434         "Compiling Java sources" to "Compiling Java sources using gcj".
1435         (@detailmenu, @menu, @cindex): Update and make more precise.
1436         (Java): Change the title of this node from simply "Java" to
1437         "Java bytecode compilation".
1438         (@detailmenu, @menu, @cindex): Update and make more precise.
1439
1440 2011-09-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1441
1442         java: complain if java_JAVA is used but $(javadir) is undefined
1443         Fixes automake bug#8461.
1444         * automake.in (handle_java): Remove inappropriate "java" argument
1445         from the calls to `&am_install_var' and `&am_primary_prefixes'.
1446         * tests/instdir-java.test (Makefile.am): Define `$(javadir)'.
1447         * tests/javadir-undefined.test: New test.
1448         * tests/Makefile.am (TESTS): Add it.
1449         * NEWS: Update.
1450
1451 2011-09-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
1452
1453         automake: remove special handling of `ANSI2KNR' make variable
1454         * automake.in (define_configure_variable): Remove special-cased
1455         handling of `ANSI2KNR' variable.  Related minor simplifications.
1456
1457 2011-09-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
1458
1459         cosmetics: fix various typos and grammaros
1460         * NEWS: Fix typos.
1461         * tests/py-compile-basic.test: Likewise.
1462         * tests/py-compile-basedir.test: Fix botched wording in comments.
1463         * tests/py-compile-option-terminate.test: Fix typo and incomplete
1464         comment.
1465         Suggestions by Peter Rosin.
1466
1467 2011-09-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1468
1469         coverage: test interactions of `nobase_' and `nodist_'
1470         * tests/nobase-nodist.test: New test.
1471         * tests/Makefile.am (TESTS): Add it.
1472
1473 2011-09-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1474
1475         java: fix various blunders in test 'java-mix.test'
1476         * tests/java-mix.test: Add missing call to `set -e'.  Fix inverted
1477         semantics (`.java' files are expected *not* to be distributed by
1478         default, not the other way round).  Fix various typos in the name
1479         of the `.java' files.  Correct other minor blunders.  Improve some
1480         comments.
1481
1482 2011-09-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1483
1484         tests: fix spurious failure on fast machines
1485         * tests/aclocal-acdir.test: Avoid spurious failures due to caching
1486         issues, by cleaning the autom4te cache between all the aclocal
1487         invocations, and by always calling autoconf with the `--force'
1488         flag.
1489
1490 2011-09-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1491
1492         aclocal: better URL reference in error message
1493         * aclocal.in (scan_file): In the error message about underquoted
1494         definitions, reference the automake page at `www.gnu.org', not
1495         at `sources.redhat.com'.
1496
1497 2011-09-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1498
1499         coverage: distcheck-hook to catch missing/outdated *.m4 files
1500         Related to automake bug#9037.
1501         * tests/distcheck-missing-m4.test: New test.
1502         * tests/distcheck-outdated-m4.test: Likewise.
1503         * tests/distcheck-hook-m4.am: New data file, used by the new
1504         tests.
1505         * tests/Makefile.am (distcheck-m4-missing.log,
1506         distcheck-m4-outdated.log): Depend on it.
1507         (EXTRA_DIST): Distribute it.
1508         (TESTS): Add the new tests.
1509
1510 2011-09-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1511
1512         aclocal: more granularity in acdir overriding
1513         Before this change, using the `--acdir' option caused aclocal to
1514         redefine both the directory of automake-provided m4 macros and the
1515         directory of third-party system-wide m4 macros.  With this change,
1516         we deprecate the `--acdir' aclocal option, and introduce two new
1517         options `--automake-acdir' and `--system-acdir', to allow for more
1518         granularity.
1519         * aclocal.in (@automake_includes, @system_includes,
1520         @user_includes): Fix and extend comments.
1521         (usage): Update.
1522         (handle_acdir_option): New function.
1523         (parse_arguments): Recognize new options `--system-acdir' and
1524         `automake-acdir', and handle `--acdir' using the new function
1525         above.  Simplify logic by assuming that the directory of
1526         third-party system-wide m4 files always exists.
1527         * tests/aclocal.in: Update to use the new options, instead of
1528         the deprecated. `--acdir'.
1529         * m4/dirlist: Move ...
1530         * m4/acdir/dirlist: ... here.
1531         * m4/Makefile.am (EXTRA_DIST): Update.
1532         (m4datadir): Rename ...
1533         (automake_acdir): ... to this.  Accordingly, ...
1534         (dist_m4data_DATA): ... rename this ...
1535         (dist_automake_ac_DATA): ... to this.
1536         (system_acdir): New, directory.
1537         (dist_system_ac_DATA): New, defined to an empty value; this will
1538         ensure that the $(system_acdir) directory will be created by
1539         "make install".
1540         * tests/aclocal.test: Remove check about the `--print-ac-dir'
1541         option of aclocal, it has been moved into ...
1542         * tests/aclocal-print-acdir.test: ... this new test, and quite
1543         extended.
1544         * tests/aclocal-acdir.test: New test.
1545         * tests/Makefile.am (TESTS): Add the new tests.
1546         * NEWS, bootstrap: Update.
1547         * doc/automake.texi (aclocal Options, Macro Search Path): Update.
1548
1549 2011-09-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1550
1551         tests: fix spurious failures due to ignored signals
1552         * tests/defs (is_blocked_signal): New function.
1553         * tests/parallel-tests-interrupt.test: Do not try to use/trap
1554         signals that are ignored by the parent shell: they will be
1555         ignored by all the child processes too.
1556         * tests/self-check-exit.test: Likewise.
1557         * tests/self-check-cleanup.test: Likewise, and do few minor
1558         improvements and extensions since we are at it.
1559
1560 2011-09-05  Peter Rosin  <peda@lysator.liu.se>
1561
1562         * tests/amhello-binpkg.test: Add missing $EXEEXT usage.
1563
1564 2011-09-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
1565
1566         fix: list test 'vala-vpath.test' in XFAIL_TESTS
1567         * tests/Makefile.am (XFAIL_TESTS): Update.
1568
1569 2011-09-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
1570
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.
1579
1580 2011-09-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
1581
1582         automake: fix regression due to de-ansification support removal
1583         The last change `v1.11-947-g136b489' removed code that automake
1584         was using to decide whether binary objects were built by the
1585         generated Makefile.in, so that it could avoid to emit unneeded
1586         code when this was not the case.  Re-introduce such code in a
1587         less-obfuscated form, and add a test to ensure we don't regress
1588         again.
1589         * automake.in ($must_handle_compiled_objects): New global
1590         variable, telling whether the generated Makefile has to build
1591         compiled objects.
1592         (initialize_per_input): Reset it.
1593         (handle_programs, handle_libraries, handle_ltlibraries): Set
1594         it to a true value when required.
1595         (handle_compile): Don't generate any code if the variable
1596         `$must_handle_compiled_objects' is not set to a true value.
1597         * tests/no-extra-makefile-code.test: New test.
1598         * tests/Makefile.am (TESTS): Add it.
1599
1600 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1601
1602         automake: cleanups after de-ansification support removal (2)
1603         * automake.in ($get_object_extension_was_run): Remove, it's not
1604         really needed anymore.
1605         (&get_object_extension): Remove, it's a no-op now.
1606         All callers adjusted.
1607
1608 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1609
1610         automake: cleanups after de-ansification support removal (1)
1611         * automake.in (lang_c_rewrite, handle_single_transform): Rename
1612         variable `$nonansi_obj' to `$obj'.
1613
1614 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1615
1616         ansi: remove obsolete code/files for de-ANSI-fication support
1617         * lib/ansi2knr.1, lib/ansi2knr.c: Deleted.
1618         * lib/Makefile.am (dist_pkgvdata_DATA): Do not list them anymore.
1619         * lib/am/ansi2knr.am: Delete.
1620         * lib/am/Makefile.am (dist_am_DATA): Do not list it anymore.
1621         * lib/Automake/Variable.pm (%_am_macro_for_var): Remove entries for
1622         `ANSI2KNR' and `U'.
1623         * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Don't care anymore
1624         about possible definition of the `$U' variable.
1625         * automake.in (@common_files): Drop `ansi2knr.1' and `ansi2knr.c'.
1626         (struct): Remove scalar field `ansi'.
1627         All callers adjusted.
1628         (&lang_c_finish, %de_ansi_files): Remove, they're not required
1629         anymore.
1630         All callers adjusted.
1631         ($get_object_extension_was_run): Fix typo in comment.
1632         (&get_object_extension): Drop code dealing with de-ansification;
1633         this function basically a no-op now, but is required to properly
1634         initialize `$get_object_extension_was_run' variable.
1635         (&handle_languages, &handle_compile, &lang_c_rewrite): Drop code
1636         dealing with de-ansification.
1637
1638 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1639
1640         ansi: reject attempts to use automatic de-ANSI-fication support
1641         * tests/protos.m4 (AM_C_PROTOTYPES): Error out whenever called.
1642         * lib/Automake/Options.pm (_process_option_list ): Error out
1643         with a proper error message when the `ansi2knr' option is used.
1644         Related updates to comments.
1645         * tests/depacl2.test: Update.
1646         * tests/ansi2knr-no-more.test: New test.
1647         * tests/Makefile.am (TESTS): Add it.
1648         * NEWS: Update.
1649
1650 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1651
1652         tests: remove tests about obsolete de-ANSI-fication support
1653         * tests/ansi.test: Delete.
1654         * tests/ansi10.test: Likewise.
1655         * tests/ansi2.test: Likewise.
1656         * tests/ansi2knr-deprecation.test: Likewise.
1657         * tests/ansi3.test: Likewise.
1658         * tests/ansi3b.test: Likewise.
1659         * tests/ansi4.test: Likewise.
1660         * tests/ansi5.test: Likewise.
1661         * tests/ansi6.test: Likewise.
1662         * tests/ansi7.test: Likewise.
1663         * tests/ansi8.test: Likewise.
1664         * tests/ansi9.test: Likewise.
1665         * tests/cxxansi.test: Likewise.
1666         * tests/libobj8.test: Likewise.
1667         * tests/subobj3.test: Likewise.
1668         * tests/Makefile.am (TESTS): Update.
1669
1670 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
1671
1672         docs: remove description of de-ANSI-fication support from manual
1673         * doc/automake.texi (Auxiliary Programs): Remove mention of
1674         `ansi2knr.c' and `ansi2knr.1'.
1675         (Obsolete Macros): Remove mention of `AM_C_PROTOTYPES'.  Do not
1676         index it nor variables `ANSI2KNR' and `U' anymore.
1677         (List of Automake options): Remove mention of `ansi2knr' option,
1678         and obsolete entries for concept and option indexes.
1679         (Optional): Remove entry about `AM_C_PROTOTYPES'.
1680         (@c LocalWords): Remove `ansi' and `knr'.
1681         (@menu, @detailmenu): Remove entries about de-ANSI-fication
1682         support.
1683
1684 2011-09-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
1685
1686         coverage: vala support failing for VPATH from-scratch builds
1687         * tests/vala-vpath.test: New test, xfailing.
1688         * tests/Makefile.am (TESTS): Update.
1689         * THANKS: Update.
1690         From a report by Zbigniew Jędrzejewski-Szmek.
1691         Related to automake bug#8753.
1692
1693 2011-09-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
1694
1695         docs: report few more automake parsing limitations
1696         Partly motivated by automake bug#8360.
1697         * doc/automake.texi (General Operation): Report few more automake
1698         limitations w.r.t. parsing of unusual makefile constructs.  Related
1699         minor reorderings.
1700         * tests/doc-parsing-buglets-colneq-subst.test: New test.
1701         * tests/doc-parsing-buglets-tabs.test: Likewise.
1702         * tests/Makefile.am (TESTS): Update.
1703
1704 2011-08-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
1705
1706         tests: list "forgotten" test script in TESTS
1707         * tests/Makefile.am (TESTS): Also list ...
1708         * tests/java-empty-classpath.test: ... this test.  Since we are
1709         at it, remove trailing whitespace from a couple of lines.
1710
1711 2011-08-25  Eric Blake  <eblake@redhat.com>
1712
1713         ylwrap: fix unusual indentation whitespace
1714         * lib/ylwrap: Convert tabs to spaces.
1715         Reported by Karl Berry.
1716
1717 2011-08-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
1718
1719         * THANKS (Daniel Richard G.): Update e-mail address.
1720
1721 2011-08-16  Daniel Richard G. <skunk@iskunk.org>  (tiny change)
1722             Stefano Lattarini  <stefano.lattarini@gmail.com>
1723
1724         java: avoid compilation errors when CLASSPATH is empty
1725         * lib/am/java.am (CLASSPATH_ENV): When redefining `$CLASSPATH',
1726         do not append an empty component in case the previous value of
1727         CLASSPATH is empty or unset.
1728         * tests/java-empty-classpath.test: New test.
1729         * tests/Makefile.am (TESTS): Update.
1730         Fixes automake bug#9306.
1731
1732 2011-08-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
1733
1734         parallel-tests: no more spurious successes for FreeBSD make
1735         Work around a bug of FreeBSD make bug that was causing the
1736         automake-generated "check" target to complete with success
1737         even if some tests failed; this happened only when FreeBSD
1738         make was run in concurrent mode (as in, e.g., "make -j2
1739         check").  The bug is not present in NetBSD make.
1740         This change fixes automake bug#9245:
1741          <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9245>
1742         See also FreeBSD PR bin/159730:
1743          <http://www.freebsd.org/cgi/query-pr.cgi?pr=159730>
1744         * lib/am/check.am [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Use a
1745         more "safe" (and apparently redundant) idiom to exit with error,
1746         so that the non-zero exit status is picked up also by FreeBSD
1747         make when it's running in concurrent mode.
1748         * NEWS: Update.
1749         * tests/check-concurrency-bug9245.test: New test.
1750         * tests/Makefile.am (TESTS): Update.
1751
1752 2011-08-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1753
1754         hacking: we now require autoconf 2.68
1755         * HACKING ("Working in git"): Use autoconf and autom4te 2.68,
1756         not 2.67, in the examples.
1757
1758 2011-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1759
1760         coverage: possible infinite recursion in the test harness
1761         Motivated by a regression in the 'test-protocols' branch.
1762         * tests/parallel-tests-fork-bomb.test: New test, checking that
1763         if $(TEST_SUITE_LOG) is in $(TEST_LOGS), we obtain a diagnosed
1764         error rather than a make hang or a fork bomb.
1765         * tests/Makefile.am (TESTS): Update.
1766
1767 2011-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1768
1769         test defs: yet more environment cleanup
1770         * tests/defs: Also unset the TEST_SUITE_LOG variable.
1771
1772 2011-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1773
1774         tests: fix various blunders in 'suffix-chain.test'
1775         * tests/suffix-chain.test: Fix various blunders that were causing
1776         this test to fail spuriously: append to `configure.in', not to
1777         `configure.ac'; add a `;' character after the `return' statement
1778         in an input file; use tabs, not spaces, to indent Makefile recipes;
1779         and use more uncommon suffixes that don't trigger built-in recipes
1780         with FreeBSD make.
1781
1782 2011-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1783
1784         tests: don't let a known Solaris make bug poison too many tests
1785         See automake bug#7670 and bug#7824.
1786         * tests/defs (make_can_chain_suffix_rules): New function, tell
1787         whether the make implementation in use can chain suffix rules
1788         automatically or not.
1789         * tests/suffix3.test: Use it to avoid issuing calls to make that
1790         are unportable to make implementations that are not smart enough
1791         to chain suffix rules automatically.
1792         * tests/suffix8.test: Use it to avoid issuing calls to make that
1793         * tests/suffix10.test: Use it to avoid issuing calls to make that
1794         * tests/suffix11.test: Use it to avoid issuing calls to make that
1795         * tests/suffix-chain.test: New test, exposes the limitation that
1796         we have papered over in the tests above.
1797
1798 2011-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1799
1800         gitignore: more use of anchors
1801         * .gitignore: Anchor files that are intended to be ignored only
1802         if found in the same directory of the `.gitignore' file, not also
1803         in its subdirectories.
1804         * doc/.gitignore, doc/amhello/.gitignore, lib/Automake/.gitignore,
1805         lib/Automake/tests/.gitignore, tests/.gitignore: Likewise.  Also,
1806         where needed, add new entries that were once implied by the
1807         non-anchored entries in the upper-level `.gitignore' files.
1808
1809 2011-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1810
1811         testsuite: avoid spurious failure of self checks on Solaris
1812         This is just a quick workaround to prevent having too much noise
1813         in the testsuite; more proper fixes have been committed into the
1814         'testsuite-work' branch.
1815         * tests/self-check-dir.test: Relax a test to avoid unimportant
1816         failure on Solaris 10.
1817         * tests/self-check-exit.test: Likewise.
1818
1819 2011-08-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1820
1821         test defs: more environment cleanup
1822         * tests/defs: Also unset variables AM_COLOR_TESTS and
1823         AM_TESTS_ENVIRONMENT.
1824
1825 2011-08-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1826
1827         tests: fix spurious failure with Solaris make
1828         * tests/distcheck-configure-flags-am.test: Avoid using `+=' too
1829         liberally with AM_DISTCHECK_CONFIGURE_FLAGS, since the line breaks
1830         so introduced, in conjunction with single quotes, might confuse
1831         Solaris make.
1832
1833 2011-08-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
1834
1835         maintcheck: fix maintainer-check failures, both real and spurious
1836         * tests/amhello-binpkg.test: Use "$MAKE", not bare "make".
1837         * Makefile.am (sc_perl_local): Also allow perl special variable
1838         `$~' to be localized.  And be slightly laxer in the regexp, to
1839         allow for usages like "local $_ = $foo;".
1840         (sc_tests_overriding_macros_on_cmdline): Also allow for command
1841         line overriding of the `DISABLE_HARD_ERRORS' make variable.  Try
1842         to avoid false positives for usages like "$MAKE || st=$?".
1843
1844 2011-08-03  Bruno Haible  <bruno@clisp.org>
1845
1846         docs: how to use '-I' option in AM_CPPFLAGS for best VPATH support
1847         * doc/automake.texi (Program Variables): Recommend -I options to
1848         both the build directory and the source directory when needed.
1849
1850 2011-07-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1851
1852         tests: relax a test on amhello examples to cater to Solaris tar
1853         * tests/amhello-binpkg.test: When the tar implementation in use
1854         is not GNU tar, relax the tests on tar output, to avoid spurious
1855         failures.  For example, "tar cvf ..." with GNU tar can output
1856         lines like "./usr/bin/hello" on the standard output, while with
1857         Solaris tar it can output lines like "a ./usr/bin/hello 8K" on
1858         standard output, and with Heirloom tar it can output lines like
1859         "a ./usr/bin/hello 15 tape blocks" on standard error.
1860
1861 2011-07-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1862
1863         test defs: function 'is_newest' now works also with directories
1864         * tests/defs (is_newest): Call `find' with the `-prune' option,
1865         so that it won't descend in the directories (which could cause
1866         spurious results).
1867         * tests/self-check-is_newest: Extend accordingly.
1868         From a report by Jim Meyering, see automake bug#9147.
1869
1870 2011-07-15  Benoit Sigoure  <tsunanet@gmail.com>
1871
1872         docs: add references between the 2 sections on java support
1873         * doc/automake.texi (Java Support, Java): Add cross-references.
1874
1875 2011-07-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1876
1877         Sync auxiliary files from upstream.
1878         * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub,
1879         lib/texinfo.tex: Sync from upstream.
1880
1881 2011-07-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1882
1883         tests: fix weakness in 'tests-environment-backcompat.test'
1884         * tests/tests-environment-backcompat.test: Do not override the
1885         content of xfailing test `baz.test' with a "weaker" version that
1886         fails unconditionally: the test must fail only when the 'strict'
1887         pragma is in use, in order not to reduce coverage.
1888
1889 2011-07-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1890
1891         docs, tests: synchronize examples on silent-rules from config.site
1892         * doc/automake.texi (Automake silent-rules Option): Reference test
1893         'silent-configsite.test' in comments.
1894
1895 2011-07-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1896
1897         tests: portability fixes in tests on amhello examples
1898         * tests/amhello-binpkg.test: Don't use "tar xzf too.tag.gz" to
1899         extract a gzip-compressed tarball, that's unportable to some
1900         tar implementations; use the "gzip -dc fo.tar.gz | tar xf -"
1901         idiom instead.
1902         * tests/amhello-cflags.test: Likewise.
1903         * tests/amhello-cross-compile.test: Likewise.
1904         Suggestion from Ralf Wildenhues.
1905
1906 2011-07-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
1907
1908         remake: add test ensuring that slower remakes don't hang
1909         * tests/remake-subdir-long-time.test: New test.
1910         * tests/Makefile.am (TESTS): Update.
1911         Suggestion by Ralf Wildenhues.
1912
1913 2011-07-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
1914
1915         remake: fix outdated comment in configure.am
1916         * lib/am/configure.am: Fix comment falsified by changes in
1917         commit `v1.11-366-gbee9871'.
1918         Suggestion by Ralf Wildenhues.
1919
1920 2011-07-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
1921
1922         docs, tests: synchronize examples from docs to tests
1923         * tests/README (Writing test cases): Give suggestions on how to
1924         keep test cases and examples in the documentation synchronized.
1925         * doc/automake.texi: Improve or fix existing testcase-referencing
1926         comments, and add many new ones.
1927         * HACKING (Administrivia): Suggest to test complex examples and
1928         idioms from the manual.
1929         * tests/specflg8.test: Improve synchronization with the example
1930         in the manual.
1931         * tests/output11.test:Likewise.
1932         * tests/txinfo21.test:Likewise.
1933         * tests/interp.test: Likewise.
1934         * tests/amhello-cflags.test: New test.
1935         * tests/amhello-cross-compile.test: Likewise.
1936         * tests/amhello-binpkg.test: Likewise.
1937         * tests/tests-environment-backcompat.test: Likewise.
1938         * tests/parallel-tests-log-compiler-example.test: Likewise.
1939         * tests/Makefile.am (TESTS): Update.
1940
1941 2011-06-30   Stefano Lattarini  <stefano.lattarini@gmail.com>
1942
1943         coverage: new test on parallel-tests TESTS runtime overriding
1944         * tests/parallel-tests-cmdline-override.test: New test, check that
1945         we can use indirections when overriding TESTS and TEST_LOGS from
1946         the command line.
1947         * tests/Makefile.am (TESTS): Update.
1948
1949 2011-06-29   Stefano Lattarini  <stefano.lattarini@gmail.com>
1950
1951         docs: explain why AM_TESTS_ENVIRONMENT must be semicolon-terminated
1952         * doc/automake.texi (Simple Tests using parallel-tests): Ditto, and
1953         related adjustments.
1954         Suggestion by Ralf Wildenhues.
1955
1956 2011-06-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
1957
1958         docs: fix unportable example of AM_TESTS_ENVIRONMENT usage
1959         * doc/automake.texi (Simple Tests using parallel-tests): The
1960         old example on AM_TESTS_ENVIRONMENT relied on unportable shell
1961         features, and in particular didn't work with various Korn
1962         Shells (see also commit `v1.11-925-g29ca903').  Give another
1963         example, simpler this time, but still inspired to real-world
1964         usage (the GNU coreutils testsuite).
1965
1966 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1967
1968         docs: avoid a footnote, some related rewordings and improvements
1969         * doc/automake.texi (Dist): Reword the part about automatically
1970         distributed files to avoid a footnote.  Since we are at it, extend
1971         a bit, and add an example and a reference to a relevant test case.
1972
1973 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1974
1975         docs: minor cosmetic fixes
1976         * doc/automake.texi: Break few overly long lines, throughout the
1977         file.
1978         ("Simple Tests"): Move @vindex for XFAIL_TESTS to the correct
1979         position, i.e., before and not after the paragraph where it is
1980         introduced.
1981         ("Options" @item ansi2knr): Use @pxref instead of @xref.  This
1982         fixes a texinfo warning.
1983         ("Other things Automake recognizes" @item AM_C_PROTOTYPES): Use
1984         @pxref instead of @ref.
1985
1986 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1987
1988         help: improve text about automatically-distributed files
1989         This change fixes automake bug#7819.
1990         * automake.in (usage): Distinguish between files that are always
1991         automatically distributed when found, and those which are only
1992         "under certain conditions".
1993         * doc/automake.texi (Basics of Distribution): Update accordingly.
1994         * tests/autodist-subdir.test: Update.
1995         * tests/autodist-no-duplicate.test: Likewise.
1996         * tests/autodist.test: Likewise.
1997         (configure.in): Remove useless call to AM_MAINTAINER_MODE.
1998
1999 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2000
2001         refactor: split 'usage' subroutine in automake
2002         This change is related to automake bug#7819.
2003         * automake.in (print_autodist_files): New subroutine,
2004         extracted from ...
2005         (usage): ... this, which now uses it.
2006         * tests/autodist-no-duplicate.test: New test.
2007         * tests/Makefile.am (TESTS): Update.
2008
2009 2011-06-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2010
2011         tests: fix bug in 'autodist.test'
2012         * tests/autodist.test: Avoid spurious failure due to no
2013         `defs-static' file being found in the parent directory.
2014
2015 2011-06-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
2016
2017         maintcheck: extend 'sc_tests_plain_*' checks
2018         * Makefile.am (sc_tests_plain_autom4te): New check.
2019         (sc_tests_plain_autoreconf): Likewise.
2020         (sc_tests_plain_autoheader): Likewise.
2021         (syntax_check_rules): Update.
2022
2023 2011-06-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
2024
2025         tests: interactions between TESTS_ENVIRONMENT and LOG_COMPILER
2026         * tests/tests-environment-and-log-compiler.test: New test,
2027         checking that we can use variables and functions set by
2028         TESTS_ENVIRONMENT and AM_TESTS_ENVIRONMENT in LOG_COMPILER
2029         and LOG_FLAGS (for tests both with and without registered
2030         extensions).
2031         * tests/Makefile.am (TESTS): Update.
2032
2033 2011-06-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2034
2035         maintcheck: avoid few spurious failures
2036         * Makefile.am (sc_tests_plain_aclocal, sc_tests_plain_perl,
2037         sc_tests_plain_autoconf, sc_tests_plain_automake,
2038         sc_tests_plain_autoupate): Be stricter in matching an erroneous
2039         literal command, i.e., `aclocal', `automake', `perl', etc.
2040
2041 2011-06-20  Bert Wesarg <bert.wesarg@googlemail.com>  (tiny change)
2042
2043         check: don't use multi-line coloring for the report
2044         "less -R" can't handle multi-line coloring as it is done for the
2045         check reports of the serial and parallel testsuite, because of
2046         performance reasons.  Thus, color each line of the check report
2047         by its own.
2048         * lib/am/check.am (am__text_box): Accept colors for lines, and
2049         color each line by its own.
2050         [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Let am__text_box handle
2051         the line coloring.
2052         [!%?PARALLEL_TESTS%] $(check-TESTS): Color each report line by
2053         its own.
2054         * THANKS: Update.
2055
2056 2011-06-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
2057
2058         docs: AM_DISTCHECK_CONFIGURE_FLAGS is for corner cases
2059         * doc/automake.texi (Checking the Distribution): Explain that the
2060         developers should take care of making their code buildable without
2061         requiring any special configure options, so that in general
2062         AM_DISTCHECK_CONFIGURE_FLAGS shouldn't be used.  Give an example
2063         of where its use is legitimate.
2064         Suggestions from Ralf Wildenhues and Eric Blake.
2065
2066 2011-06-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
2067
2068         ansi2knr: deprecate, it will go away in the next major release
2069         * doc/automake.texi: Loudly and repeatedly state that the old
2070         de-ANSI-fication features are now deprecated and will be removed
2071         in the next major Automake release.  Other related adjustments.
2072         * lib/Automake/Options.pm (_process_option_list ): Give a warning
2073         in the `obsolete' category when the `ansi2knr' option is used.
2074         * m4/protos.m4 (AM_C_PROTOTYPES): Deprecate this macro: a warning
2075         in the `obsolete' category will be emitted it if is used.
2076         * tests/ansi2knr-deprecation.test: New test.
2077         * tests/Makefile.am (TESTS): Update.
2078         * tests/ansi.test: Adjust, by calling autoconf and/or automake
2079         with the `-Wno-obsolete' flag.
2080         * tests/ansi10.test: Likewise.
2081         * tests/ansi2.test: Likewise.
2082         * tests/ansi3.test: Likewise.
2083         * tests/ansi3b.test: Likewise.
2084         * tests/ansi4.test: Likewise.
2085         * tests/ansi5.test: Likewise.
2086         * tests/ansi6.test: Likewise.
2087         * tests/ansi7.test: Likewise.
2088         * tests/ansi8.test: Likewise.
2089         * tests/ansi9.test: Likewise.
2090         * tests/cxxansi.test: Likewise.
2091         * tests/libobj8.test: Likewise.
2092         * NEWS: Update about the future planned backward-incompatibility
2093         due to the removal of de-ANSI-fication feature.
2094
2095 2011-06-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
2096
2097         docs: primary/prefix combination "pkglib_PROGRAMS" is now invalid
2098         * doc/automake.texi (Program Sources): pkglib_PROGRAMS is not a
2099         valid combination anymore, so don't document it.  Inconsistency
2100         introduced in commit `v1.11-373-g9ca6326'.
2101
2102 2011-06-19  Jim Meyering  <meyering@redhat.com>
2103
2104         docs: replace obsolete @vindex entry with a useful one
2105         * doc/automake.texi (Program Sources): Do not index obsolete
2106         pkglib_PROGRAMS here.  Do index pkglibexec_PROGRAMS.
2107
2108 2011-06-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
2109
2110         tests: more checks on portable fd redirection in TESTS_ENVIRONMENT
2111         * tests/tests-environment-fd-redirect.test: Extend by also using
2112         a perl script among the tests.  Run the test shell script with
2113         the `errexit' flag active.  Export `VERBOSE' to yes when running
2114         "make check", to give more debugging information in case of
2115         failures.  Look for a Korn Shell also in `/usr/bin', not on only
2116         in `/bin'.
2117
2118 2011-06-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
2119
2120         tests: optimize tests on primary/prefix mismatch for speed
2121         * tests/primary-prefix-invalid-couples.test: Partial rewrite, in
2122         order to use just a single automake invocation rather than one
2123         invocation for each invalid primary/prefix couple.  This improves
2124         the test script execution time by an order of magnitude.
2125         Since we are at it, throw in some other improvements to avoid
2126         unrelated automake warnings and failures that could potentially
2127         cause false positives w.r.t. the automake exit status.
2128
2129 2011-06-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
2130
2131         news: update w.r.t. introduction of AM_DISTCHECK_CONFIGURE_FLAGS
2132         * NEWS (Miscellaneous changes): Update.
2133
2134 2011-06-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2135
2136         maintcheck: DISTCHECK_CONFIGURE_FLAGS can be defined on make cmdline
2137         * Makefile.am (sc_tests_overriding_macros_on_cmdline): It's now
2138         acceptable that the test scripts override DISTCHECK_CONFIGURE_FLAGS
2139         on the make command line.  Update comments accordingly.  Since we
2140         are at it, make the relevant grepping rules slightly tighter.
2141
2142 2011-06-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2143
2144         distcheck: add support for AM_DISTCHECK_CONFIGURE_FLAGS
2145         * doc/automake.texi (Checking the Distribution): Suggest to use
2146         AM_DISTCHECK_CONFIGURE_FLAGS, not DISTCHECK_CONFIGURE_FLAGS, to
2147         define (in the top-level Makefile.am) extra flags to be passed
2148         to configure at "make distcheck" time; DISTCHECK_CONFIGURE_FLAGS
2149         should be reserved for the user.  Add proper `@vindex' directive.
2150         Document that AM_DISTCHECK_CONFIGURE_FLAGS is not honoured in a
2151         subpackage Makefile.am, but the flags in it are passed down to
2152         the configure script of the subpackage.
2153         * lib/am/distdir.am (distcheck): Also pass the flags in
2154         $(AM_DISTCHECK_CONFIGURE_FLAGS) to the configure invocation.
2155         Update comments.
2156         * tests/defs.in.test (AM_DISTCHECK_CONFIGURE_FLAGS,
2157         DISTCHECK_CONFIGURE_FLAGS): Unset in case they are exported in
2158         the environment, they might improperly influence our testsuite.
2159         * tests/distcheck-configure-flags.test: New test.
2160         * tests/distcheck-configure-flags-am.test: Likewise.
2161         * tests/distcheck-configure-flags-subpkg.test: Likewise.
2162         * distcheck-hook.test: Likewise.
2163         * distcheck-hook2.test: Likewise.
2164         * tests/Makefile.am (TESTS): Update.
2165         Closes automake bug#8784.
2166
2167 2010-06-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
2168
2169         docs: better documentation for silent make rules
2170         * doc/automake.texi (Options): Detailed description of the
2171         automake option `silent-rules' moved from here ...
2172         (Silent Make): ... into this new chapter, expanded, improved,
2173         and subdivided into ...
2174         (Make verbosity, Tricks For Silencing Make,
2175         Automake silent-rules Option): ... these new sections.
2176         (@menu, @detailmenu): Update.
2177         * tests/silent-configsite.test: New test, checking that the
2178         user can control default mode of silent-rules from config.site,
2179         as is documented in the manual.
2180         * tests/Makefile.am (TESTS): Updated.
2181
2182 2011-06-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
2183
2184         Warnings about primary/prefix mismatch fixed and extended.
2185         * automake.in (%standard_prefix): Add `doc' and `locale'.
2186         Rename `pkgdatadir' to `pkgdata'.  Similarly for`pkglibdir',
2187         `pkgincludedir' and `pkglibexecdir'.
2188         (handle_programs): List `pkglibexec', not `pkglib', among the
2189         prefixes valid for the `PROGRAMS' primary.
2190         (handle_data): List also `doc' among the prefixes valid for
2191         the `DATA' primary.  This is required by automake's own build
2192         system.
2193         * tests/dirforbid.test: Test removed, superseded by ...
2194         * tests/primary-prefix-invalid-couples.test: ... this new test.
2195         * tests/primary-prefix-valid-couples.test: New test.
2196         * tests/primary-prefix-couples-documented-valid.test: Likewise.
2197         * tests/primary-prefix-couples-force-valid.test: Likewise.
2198         * tests/java3.test: Adjusted, and extended a bit.
2199         * tests/Makefile.am (TESTS): Updated.
2200         * NEWS: Updated.
2201         From a report by Eric Blake.
2202
2203 2011-06-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
2204
2205         tests: check portable fd redirection in TESTS_ENVIRONMENT
2206         * tests/tests-environment-fd-redirect.test: New test.
2207         * tests/Makefile.am (TESTS): Update.
2208         Motivated by coreutils bug#8846:
2209          <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8846>
2210         See also following CC:ed thread on bug-autoconf list:
2211          <http://lists.gnu.org/archive/html/bug-autoconf/2011-06/msg00002.html>
2212
2213 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2214
2215         test defs: new function 'fatal_', for hard errors
2216         Before this patch, the only way offered by tests/defs to
2217         properly signal a hard error was the `framework_failure_'
2218         function.  But the error message issued by that function,
2219         as its name would suggest, refers to a set-up failure in the
2220         testsuite, while hard errors can obviously also be due to
2221         other reasons.  The best way to fix this inconsistency is to
2222         introduce a new function with a more general error message.
2223         Inspired by a recent similar change to Gnulib's tests/init.sh.
2224         * tests/defs.in (fatal_): New function.
2225         * tests/README (Section "Writing test cases" subsection "Do"):
2226         Suggest the use of `fatal_', not of `framework_failure_', for
2227         generic hard errors.  The latter should be reserved for "real"
2228         set-up failures.
2229
2230 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2231
2232         py-compile: '--' and non-option arguments terminate the option list
2233         * lib/py-compile: Any non-option argument, or the special `--'
2234         argument, now explicitly terminates the list of options.
2235         * tests/py-compile-option-terminate.test: New test.
2236         * tests/Makefile.am (TESTS): Update.
2237         * NEWS: Update.
2238
2239 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2240
2241         py-compile: complain on unrecognized options
2242         * lib/py-compile: Complain on unrecognized options.  Don't be too
2243         lax in matching `--help' and `--version' options.
2244         * tests/py-compile-usage.test: Extend accordingly.
2245         * NEWS: Update.
2246
2247 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2248
2249         py-compile: normalize error and help messages
2250         * lib/py-compile: Now error messages do not begin with a capital
2251         letter, nor end with a period, as per GNU standards.  Prepend the
2252         error messages with the name of the script, not with its path.
2253         When an invalid usage is recognized, always display the customary
2254         message "Try `py-compile --help' ..." on a line of its own.
2255         ($me): New variable, containing the name of the
2256         program, i.e., `py-compile'.  Use it throughout.
2257         (usage_error): New function, used to display error messages about
2258         invalid usage.
2259         * tests/py-compile-usage.test: Extend and tighten accordingly.
2260
2261 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2262
2263         python tests: add "unit tests" on py-compile
2264         * tests/py-compile-basic.test: New test.
2265         * tests/py-compile-basic2.test: New test.
2266         * tests/py-compile-basedir.test: Likewise.
2267         * tests/py-compile-destdir.test: Likewise.
2268         * tests/py-compile-env.test: Likewise.
2269         * tests/py-compile-usage.test: Likewise.
2270         * tests/Makefile.am (TESTS): Update.
2271         Tested with python 2.0.1, 2.4.6, 2.6.6, 2.7.1, and 3.1.3.
2272
2273 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2274
2275         py-compile: the '--destdir' option now accepts a blank argument
2276         * lib/py-compile (Option parsing): Do not count an empty argument
2277         to `--destdir' or `--basedir' as a missing argument.
2278         * lib/python.am: Simplify accordingly, passing the `--destdir'
2279         option to py-compile unconditionally, even if `$(DESTDIR)' is
2280         empty.
2281         * NEWS: Update.
2282
2283 2011-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2284
2285         python: run the 'py-compile' script with $(SHELL)
2286         * lib/python.am (install-%DIR%PYTHON): Run each instance of
2287         py-compile using $(SHELL).  Since we are at it, break overly
2288         long lines.
2289         (am__py_compile): New variable, to reduce code duplication.
2290
2291 2011-06-05  Stefano Lattarini  <stefano.lattarini@gmail.com>
2292
2293         tests: fix typo-related error in auxdir2.test
2294         * tests/auxdir2.test (configure.in):  Close m4 quoting in the
2295         argument to AC_CONFIG_AUX_DIR.  Without this, aclocal fails with
2296         "ERROR: end of file in string".  This problem hasn't been exposed
2297         by the testsuite before because this test is in XFAIL_TESTS, so
2298         its failure went unnoticed, even if it was due to a wrong cause.
2299         Bug introduced in commit v1.11-249-g49ac3de.
2300
2301 2011-06-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
2302
2303         maintcheck: fix some more failures
2304         * tests/instdir-ltlib.test: Use creative quoting to avoid
2305         spuriously triggering the `sc_rm_minus_f' maintainer check.
2306         * tests/instdir-prog.test: Likewise.
2307         * tests/instspc-data.test: Use creative quoting to avoid
2308         spuriously triggering the `sc_tests_Exit_not_exit' maintainer
2309         check.
2310
2311 2011-06-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
2312
2313         maintcheck: fix some failures, extend some checks
2314         * Makefile.am (sc_diff_automake_in_automake): Update, as we
2315         now expect 9 lines, not 8, to be changed from `automake.in'
2316         to `automake'.
2317         (sc_diff_aclocal_in_aclocal): New maintainer check, similar to
2318         the above, and checking that only 10 lines are changed from
2319         `aclocal.in' to `aclocal'.
2320         (syntax_check_rules): Update.
2321         (sc_tests_Exit_not_exit): Exempt self tests `self-check-*.test'
2322         from this check, as they can legitimately use the bare `exit'
2323         builtin in various places.
2324         * doc/automake.texi (Python): Remove stray `@' from the end of
2325         a line.  Typo introduced in commit `v1.11-312-g5bf7af6'.
2326         * tests/depcomp8a.test: Pass DISTCHECK_CONFIGURE_FLAGS to make
2327         from the environment rather than from the command line, to
2328         pacify the `sc_tests_overriding_macros_on_cmdline' maintainer
2329         check.
2330         * tests/depcomp8b.test: Likewise.
2331
2332 2011-05-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
2333
2334         remake: behave better with non-GNU make in subdirectories
2335         Currently, with every decent make program, it is possible to
2336         rebuild out-of-date autotools-generated files with a simple
2337         "make Makefile" -- but for this to work reliably with non-GNU
2338         make implementations, the command must be issued from the
2339         top-level directory.  This patch removes such limitation.
2340         * lib/am/configure.am (am--refresh): Depend on `%MAKEFILE%'.
2341         * tests/remake-subdir.test: New test.
2342         * tests/remake-subdir2.test: Likewise.
2343         * tests/remake-subdir-gnu.test: Likewise.
2344         * tests/remake-subdir-from-subdir.test: Likewise.
2345         * tests/Makefile.am (TESTS): Update.
2346
2347 2011-05-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
2348
2349         automake, aclocal: honour configure-time AUTOCONF and AUTOM4TE
2350         Currently, the Automake's own configure script allow definition
2351         of AUTOCONF and AUTOM4TE, expected to point respectively to an
2352         autoconf and autom4te programs.  But while these definitions are
2353         honoured in the Automake's build systems and test suite, they
2354         were *not* honoured in the generated `automake' and `aclocal'
2355         scripts.  This behaviour, apart from being wrong in that it does
2356         not allow the user enough freedom in choosing his tools, also
2357         caused inconsistencies in the test suite, brining to spurious
2358         failures.
2359         Problem reported by Graham Reitz on the automake list; see thread:
2360         <http://lists.gnu.org/archive/html/automake/2011-05/msg00022.html>
2361         * automake.in ($traces): Use `@am_AUTOCONF', not simply `autoconf'.
2362         * aclocal.in ($traces): Use `@am_AUTOM4TE', not simply `autom4te'.
2363         * Makefile.am (do_subst): Substitute also `@am_AUTOCONF' and
2364         `@am_AUTOM4TE'.
2365         * NEWS: Update.
2366         * THANKS: Update.
2367
2368 2011-05-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
2369
2370         build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too
2371         Our build system allows the user to override AUTOCONF and AUTOHEADER
2372         at configure time, and honours these overrides in our testsuite.
2373         But it didn't do the same with AUTOM4TE, AUTORECONF and AUTOUPDATE.
2374         This change fixes that inconsistency.
2375         * configure.ac (am_AUTOM4TE, am_AUTOUPDATE, am_AUTORECONF): New
2376         AC_SUBSTitutions.  Update comments.
2377         * tests/defs.in ($AUTOUPDATE): Default to `@am_AUTOUPDATE@' now.
2378         ($AUTOM4TE): New variable, defaulting to `@am_AUTOM4TE@'.
2379         ($AUTORECONF): New variable, defaulting to `@am_AUTORECONF@'.
2380         * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Update.
2381
2382 2011-05-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
2383
2384         parallel-tests: stricter checks on DISABLE_HARD_ERRORS support
2385         * tests/parallel-tests-harderror.test: New test, doing more
2386         in-depth checks on DISABLE_HARD_ERRORS.
2387         * tests/parallel-tests.test: Remove tests on DISABLE_HARD_ERRORS,
2388         now redundant.
2389         * tests/Makefile.am (TESTS): Update.
2390
2391 2011-05-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2392             Stefano Lattarini  <stefano.lattarini@gmail.com>
2393
2394         tests/README: fix example about `make -e' usage
2395         * tests/README (Section "Writing test cases" subsection "Do"): When
2396         some variable is never initialized in the Makefile, `-e' is not
2397         necessary in order to override it.  DESTDIR is such a variable: we
2398         ensure that we do not ever initialize it.  And as such, it is quite
2399         portable to use:
2400           $ make DESTDIR=/foo/bar install
2401         and in fact, quite widely used.
2402         So our example about when `make -e' is required, which references
2403         the `DESTDIR' variable, is poorly chosen, if not downright wrong.
2404         Rewrite it to use `prefix' as the overridden variable instead.
2405
2406 2011-05-27  Stefano Lattarini  <stefano.lattarini@gmail.com>
2407
2408         testsuite: each test case depends on `defs-static'
2409         * tests/Makefile.am ($(TEST_LOGS)): Depends on `defs-static' too.
2410         Simplify comments.
2411
2412 2011-05-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2413
2414         testsuite: avoid re-running few tests with 'parallel-tests' option
2415         Some tests in our testsuite use the 'simple-tests' driver only
2416         marginally, or simply as a mean to conveniently check unrelated
2417         invariants.  It makes little sense to force these tests to also
2418         run with the 'parallel-tests' Automake option active, as doing so
2419         offers no real gain in coverage, while often causing a measurable
2420         overhead in execution time (for an already too-slow testsuite).
2421         * tests/pr401.test (parallel_tests): Define to "no", to prevent
2422         the generation of a sibling test script using the 'parallel-tests'
2423         driver.
2424         * tests/pr401b.test: Likewise.
2425         * tests/pr401c.test: Likewise.
2426         * tests/java-flat.test: Likewise, and properly update heading
2427         comments.
2428         * tests/java-nested.test: Likewise, but defining `parallel_tests'
2429         to "yes" instead, for improved coverage in conjunction with the
2430         sister test `java-flat.test'.
2431
2432 2011-05-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2433
2434         testsuite: allow tests to avoid the use of 'parallel-tests' option
2435         * tests/gen-parallel-tests: Do not generate "siblings" for tests
2436         that explicitly define the `parallel_tests', whether to "yes" or
2437         to any other value.  Extend heading comments to give a rationale
2438         for this behaviour.
2439         * tests/README: Update.
2440
2441 2011-05-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2442
2443         tests/README: update obsoleted advice
2444         * tests/README (Section "Writing test cases" subsection "Do"):
2445         Do not suggest to use the `*-p.test' pattern for the names of
2446         hand-written tests which use the `parallel-tests' Automake option.
2447         Not only is this not respected by the existing tests, but it is
2448         more likely to cause conflicts with auto-generated tests.
2449         So, suggest to *avoid* using the `*-p.test' pattern in names
2450         of hand-written tests instead.
2451         (Section "Writing test cases" subsection "Do not"):  When
2452         suggesting not to override Makefile variables using command
2453         line arguments, do not use the badly outdated variables `U'
2454         and 'ANSI2KNR' in the example; instead, use the more common
2455         and typical `DESTDIR'.
2456
2457 2011-05-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
2458
2459         test defs: rename requirement 'non-cross' -> 'native'
2460         * tests/defs.in (non-cross): Rename requirement ...
2461         (native): ... to this, which is clearer and fits the
2462         existing lingo better.
2463         Suggestion by Ralf Wildenhues.
2464
2465 2011-05-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
2466
2467         testsuite: be more cross-compile friendly
2468         * tests/defs.in (cross_compiling): New subroutine.
2469         (am__tool_prefix): New internal variable.
2470         (gcc, g++, gcj): Force the use of the correct "tool prefix"
2471         when cross compiling.
2472         (gfortran, g77, non-cross): New requirements.
2473
2474 2011-05-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
2475
2476         tests: fix portability issues in 'repeated-options.test'
2477         * tests/repeated-options.test: Do not assume that object files
2478         have `.o' suffix and executables have no default suffix; instead,
2479         use `$(OBJEXT)' and `$(EXEEXT)'.
2480
2481 2011-05-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
2482
2483         check: document and test $(TEST_SUITE_LOG) overriding
2484         * doc/automake.texi (Simple Tests using parallel-tests): Explain
2485         how and why TEST_SUITE_LOG can be overridden at runtime.
2486         * tests/parallel-tests-log-override-1.test: New test, check that
2487         the newly documented idiom and similar usages are truly supported.
2488         * tests/parallel-tests-log-override-2.test: Likewise.
2489         * tests/parallel-tests-log-override-recheck.test: Likewise.
2490         * tests/Makefile.am (TESTS): Update.
2491
2492 2011-05-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
2493
2494         tests: fix spurious failure of txinfo21.test on FreeBSD
2495         * tests/txinfo21.test: Use the `is_newest' subroutine instead of
2496         the `ls -t' hack to to determine whether a file has been updated.
2497         This is required because at least FreeBSD `ls' do not sort files
2498         with the same timestamp in alphabetical order when using the `-t'
2499         option.
2500
2501 2011-05-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
2502
2503         tests: fix spurious failure of extradep.test on FreeBSD
2504         * tests/extradep.test: When using `ls -t' to determine whether a
2505         file has been updated, make sure to use as reference a file whose
2506         timestamp is expected to be *strictly* older that that of the file
2507         being checked.  This is required because at least FreeBSD `ls' do
2508         not sort files with the same timestamp in alphabetical order when
2509         using the `-t' option.
2510         * tests/extradep2.test: Likewise.
2511
2512 2011-05-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
2513
2514         tests defs: use `skip_' for skipping java-related tests
2515         * tests/defs.in (java, javac): Use `skip_' to signal test
2516         skipping.
2517
2518 2011-05-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
2519
2520         tests defs: allow requirements for compilers (mostly dummy)
2521         Most of the new requirements that are now accepted in `$required'
2522         as consequence of this patch are still dummy.  They are planned
2523         to be implemented only in master (or in some derived branch), but
2524         having them here (even just as no-op) will allow for an easier
2525         integration/backporting of potential new testcases.
2526         * tests/defs.in (cc, c++, fortran, fortran77): New requirements,
2527         still dummy.
2528         (flex): New requirement, picking LEX for configure.
2529         (lex): New requirement, alias for `flex'.  A more appropriate
2530         implementation, looking for a generic `lex' program, will follow
2531         in the future.
2532
2533 2011-05-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
2534
2535         tests: add forgotten test scripts to $(TESTS)
2536         * tests/Makefile.am (TESTS): Added test scripts  man[678].test,
2537         which have been present on the filesystem and in the repository,
2538         but which had erroneously been left out from $(TESTS).
2539
2540 2011-05-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
2541
2542         tests: ensure verbose printing of captured make output
2543         * tests/libtool7.test: Ensure verbose printing of captured
2544         make output.
2545         * tests/libtool9.test: Likewise.
2546
2547 2011-05-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
2548
2549         tests: fix spurious failure in 'color2.test'
2550         * tests/color2.test: If $MAKE contains command-line arguments (as
2551         in e.g., "make -j2"), expect's directive "spawn $env(MAKE)" fails
2552         spuriously, because it tries to run "$MAKE" as a single command.
2553         Fix this with proper uses of the TCL `eval' builtin.
2554
2555 2011-05-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
2556
2557         tests: fix self check spurious failure with older bash versions
2558         * tests/self-check-cleanup.test: Add trailing `:' to the test code
2559         passed to $SHELL, otherwise older versions of bash (at least 2.05
2560         and 3.2.39) fail to correctly remove the temporary directory in
2561         the exit trap.
2562
2563 2011-04-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
2564
2565         testsuite: more environment sanitization
2566         * tests/defs: Move the checks verifying that the variables `me',
2567         `parallel_tests' and `required' aren't set in the environment ...
2568         * tests/defs-static.in: ... in here, with some optimizations to
2569         avoid useless forks.  Also, do the same checks for the variables
2570         `original_AUTOMAKE' and `original_ACLOCAL' too.
2571         * tests/self-check-env-sanitize.test: Update.
2572         * tests/Makefile.am (TESTS_ENVIRONMENT): Unset also variables
2573         `original_AUTOMAKE' and `original_ACLOCAL'.
2574
2575 2011-04-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
2576
2577         tests: fix spurious failure (non-renamed AM_TESTS_SETUP usage)
2578         * tests/parallel-tests-reset-term.test: Use AM_TESTS_ENVIRONMENT
2579         instead of AM_TESTS_SETUP (which has been removed in commit
2580         v1.11-349-g12f48fa).
2581         Fix spurious failure introduced by merge `v1.11-781-gfeed175'.
2582
2583 2011-04-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
2584
2585         tests: fix spurious failure in a test on TESTS (VPATH-related)
2586         * tests/check-tests-in-builddir.test: When not using the
2587         parallel-tests option, do not check that VPATH components are
2588         not present in the displayed test name, since the simple-tests
2589         driver do not try to strip them.
2590
2591 2011-04-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
2592
2593         tests: fix spurious failure in self-check-env-sanitize.test
2594         * tests/self-check-env-sanitize.test: Open file descriptor `5'
2595         to stdout.
2596         Fix spurious failure introduced by merge `v1.11-788-g3b0c8d5'.
2597
2598 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2599
2600         test: self check subroutines for skipping/failing of tests
2601         * tests/self-check-report.test: New test.
2602         * tests/Makefile.am (TESTS): Update.
2603
2604 2011-04-23  Jim Meyering  <meyering@redhat.com>
2605             Stefano Lattarini  <stefano.lattarini@gmail.com>
2606
2607         test defs: new subroutines for test skipping/failing
2608         * tests/defs.in (Exit): Move definition of this function earlier.
2609         (warn_, skip_, fail_, framework_failure_): New functions, inspired
2610         to the homonyms in gnulib's tests/init.sh.
2611         ($stderr_fileno_): New global variable, used by the new functions
2612         above.
2613         * tests/README: Updated.
2614         From a suggestion by Ralf Wildenhues.
2615
2616 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2617
2618         tests: fix typo (copy & paste blunder) in heading comment
2619         * tests/maintclean-vpath.test: Correctly refer to the sister test
2620         as `maintclean.test', not as `maintclean-vpath.test'.
2621
2622 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2623
2624         tests: remove redundant test `mclean.test'
2625         * tests/mclean.test: Remove, it's a weak grepping test completely
2626         superseded by the much more complete `maintclean.test'.
2627         * tests/Makefile.am (TESTS): Update.
2628
2629 2011-05-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
2630
2631         java tests: use $PATH_SEPARATOR where appropriate
2632         * tests/java-compile-run-nested.test: Use `$PATH_SEPARATOR', not
2633         `:', to separate entries of extended PATH and CLASSPATH variables.
2634         * tests/java-compile-run-flat.test: Likewise.
2635
2636 2011-04-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
2637
2638         java coverage: test JAVACFLAGS and AM_JAVACFLAGS
2639         * tests/javaflags.test: New test.
2640         * tests/Makefile.am (TESTS): Update.
2641
2642 2011-04-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
2643
2644         java coverage: test rebuild rules for java
2645         * tests/java-rebuild.test: New test.
2646         * tests/Makefile.am (TESTS): Update.
2647
2648 2011-04-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
2649
2650         java coverage: try to build and run a java program
2651         * tests/java-compile-run-flat.test: New test, try to build and run
2652         a "UNIX-style" java program (complete with wrapper shell script
2653         and the like) with a "flat" source-tree setup (i.e., everything in
2654         the top-level directory).
2655         * tests/java-compile-nested.test: Likewise, but using a more
2656         typical "nested" source-tree setup.
2657         * tests/Makefile.am (TESTS): Update.
2658
2659 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2660
2661         test defs: new requirement for the default java interpreter
2662         * tests/defs.in (for tool in $required): New requirement 'java'.
2663
2664 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2665
2666         java tests: tweak and make stricter a couple of tests
2667         * tests/javasubst.test: Use proper m4 quoting.  Add trailing `:'
2668         command.  Enable `errexit' shell flag, and related changes.
2669         Prefer cat + here-doc over echo to append to configure.in.
2670         Make grepping of Makefile.in stricter.  Add debugging output.
2671         Improve heading comments.
2672         * tests/javaprim.test: Likewise.
2673
2674 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2675
2676         java coverage: add test on uninstall with JAVA primary
2677         * tests/java-uninstall.test: New test.
2678         * tests/Makefile.am (TESTS): Update.
2679
2680 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2681
2682         java tests: require java compiler more properly
2683         * tests/java-extra.test: Use "required=javac" instead of ad-hoc
2684         configure check.
2685         * tests/java-noinst.test: Likewise.
2686
2687 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
2688
2689         java: allow both JAVA and nobase_JAVA in the same Makefile.am
2690         * automake.in (handle_java): Also strip `nobase_' from the given
2691         prefix, when needed.
2692         * tests/java-clean.test: Update and extend.
2693         * tests/java-compile-install.test: Likewise.
2694         * tests/java-no-duplicate.test: Likewise.
2695         * tests/java-sources.test: Likewise.
2696         * tests/java-noinst.test: Likewise.
2697         * tests/java-mix-dist-nodist.test: Renamed to ...
2698         * tests/java-mix.test: ... this, and extended.
2699         * tests/java-nobase.test: New test, still xfailing due to
2700         unrelated issues.
2701         * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
2702
2703 2011-04-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
2704
2705         testsuite: more environment sanitization
2706         * tests/defs.in: Sanity check: abort if any of `parallel_tests'
2707         or `required' is in the environment.
2708         ($sed_unindent_prog): Initialize to empty, to avoid interferences
2709         from the environment.
2710         * tests/self-check-me-in-env.test: Renamed to ...
2711         * tests/self-check-env-sanitize.test: ... this, and extended.
2712         * tests/Makefile.am (TESTS): Update.
2713         (TESTS_ENVIRONMENT): Unset variables `parallel_tests' and
2714         `required'.  Adjust comments.
2715
2716 2011-04-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
2717
2718         tests: in self-checks, use $SHELL, not /bin/sh
2719         * tests/self-check-me-in-env.test: Include `./defs-static' to get
2720         the definition of `$SHELL'.  Use `$SHELL' instead of `/bin/sh' to
2721         execute the tests.
2722
2723 2011-04-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
2724
2725         tests: prefer AM_TESTS_ENVIRONMENT to TESTS_ENVIRONMENT
2726         * tests/Makefile.am (TESTS_ENVIRONMENT): Renamed to ...
2727         (AM_TESTS_ENVIRONMENT): ... this.
2728
2729 2011-04-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
2730
2731         tests: don't allow `$me' to be overridden from the environment
2732         * tests/defs.in: Sanity check: abort if $me is in the environment.
2733         * tests/self-check-me-in-env.test: New test.
2734         * tests/Makefile.am (TESTS_ENVIRONMENT): Unset variable `me'.
2735         (TESTS): Update.
2736         Suggestion by Ralf Wildenhues.
2737
2738 2011-04-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
2739
2740         check: rename AM_TESTS_SETUP -> AM_TESTS_ENVIRONMENT
2741         The AM_TESTS_SETUP naming was not a good one after all.  It may
2742         be technically more correct than AM_TESTS_ENVIRONMENT, but the
2743         latter is a better one simply because it is easier to remember,
2744         and even if you've never heard of it and only know the semantics
2745         of TESTS_ENVIRONMENT, you can have a straightforward way to
2746         figure out how AM_TESTS_ENVIRONMENT would work.
2747         * tests/check.am (am__check_pre): Update.
2748         * doc/automake.in (Simple Tests using parallel-tests): Update.
2749         * tests/parallel-tests-am_tests_setup.test: Renamed ...
2750         * tests/parallel-tests-am_tests_environment.test: ... to this,
2751         and updated.
2752         * tests/Makefile.am (TESTS): Update.
2753         Suggestion and motivation by Ralf Wildenhues.
2754
2755 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2756
2757         test defs: allow overriding of `$me'
2758         * tests/defs.in ($me): Allow overriding by the including test
2759         script.  Add some explicative comments.
2760
2761 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2762
2763         coverage: more tests on the parallel-tests driver
2764         * tests/parallel-tests-interrupt.test: New test.
2765         * tests/parallel-tests-reset-term.test: Likewise.
2766         * tests/Makefile.am (TESTS): Update.
2767
2768 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2769
2770         check: new developer-reserved AM_TESTS_SETUP variable
2771         For reference, see the discussion at:
2772         <http://lists.gnu.org/archive/html/automake-patches/2011-01/msg00213.html>
2773         * lib/am/check.am [%?PARALLEL_TESTS%] (am__check_pre): Pass also
2774         $(AM_TESTS_SETUP).  Comments updated, and some typos fixed.
2775         * doc/automake.texi (Simple Tests using parallel-tests): Document
2776         AM_TESTS_SETUP.  Reorder some of the existing documentation a bit.
2777         * tests/parallel-tests-am_tests_setup.test: New test.
2778         From a suggestion by Ralf Wildenhues.
2779
2780 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2781
2782         depcomp tests: don't reject slower dependency extractors
2783         * tests/depcomp8b.test: Add the `--enable-dependency-tracking'
2784         option to `configure' invocations, so that slower dependency
2785         extractors are not rejected.
2786         * tests/depcomp8a.test: Likewise.  Also ...
2787         (foo.c): ... since we are at it, fix spacing to be consistent
2788         with GNU coding standards.
2789
2790 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2791
2792         m4: add missing serial numbers to a few files
2793         Fixes automake bug#8483.
2794         * m4/amversion.in: Add serial number.
2795         * m4/auxdir.m4: Likewise.
2796         * m4/gcj.m4: Likewise.
2797         * m4/install-sh.m4: Likewise.
2798         * m4/mkdirp.m4: Likewise.
2799         * m4/python.m4: Likewise.
2800         * m4/runlog.m4: Likewise.
2801         * m4/strip.m4: Likewise.
2802         * m4/upc.m4: Likewise.
2803
2804 2011-04-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
2805
2806         tests: fix few bugs in self checks
2807         Related to automake bug#8508.
2808         * tests/self-check-cleanup.test: Be laxer when grepping output
2809         from `ls -l', to account for ACLs and SELinux-only files.
2810         * tests/self-check-dir.test: Source `defs-static' to read in the
2811         correct definition for $SHELL.
2812         * tests/self-check-me.test: Likewise, and extend a bit.
2813         Report from Jim Meyering.
2814
2815 2011-04-16  Jim Meyering  <meyering@redhat.com>
2816
2817         depcomp: correct invalid sed invocation
2818         * lib/depcomp: Insert missing -e before '/:$/d'.
2819         Otherwise, that use of sed would treat '/:$/d' as a file name.
2820
2821 2011-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
2822
2823         maintainer check: quote literal `$' in Makefile rule
2824         * Makefile.am (sc_tests_PATH_SEPARATOR): Escape literal `$'
2825         character in double-quoted string.  Fix a bug in which the rule
2826         emitted an erroneously empty substring in its error message.
2827
2828 2011-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
2829
2830         tests: fix typo in python5b.test
2831         * tests/python5b.test: Remove extra `:' from $PATH redefinition.
2832
2833 2011-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
2834
2835         tests: remove redundant settings of `errexit' shell flag
2836         * tests/autodist-acconfig.test: Do not set the `errexit'
2837         shell flag, as it is already set by `tests/defs'.
2838         * tests/autodist-acconfig-no-subdir.test: Likewise.
2839         * tests/autodist-aclocal-m4.test: Likewise.
2840         * tests/autodist-config-headers.test: Likewise.
2841         * tests/autodist-configure-no-subdir.test: Likewise.
2842         * tests/autodist-stamp-vti.test: Likewise.
2843         * tests/autodist-subdir.test: Likewise.
2844         * tests/autodist.test: Likewise.
2845         * tests/check-exported-srcdir.test: Likewise.
2846         * tests/check-tests-in-builddir.test: Likewise.
2847         * tests/check-tests_environment.test: Likewise.
2848         * tests/help-python.test: Likewise.
2849         * tests/java-check.test: Likewise.
2850         * tests/java-extra.test: Likewise.
2851         * tests/java-noinst.test: Likewise.
2852         * tests/lex-subobj-nodep.test: Likewise.
2853         * tests/ltinit.test: Likewise.
2854         * tests/m4-inclusion.test: Likewise.
2855         * tests/maintclean-vpath.test: Likewise.
2856         * tests/parallel-tests-subdir.test: Likewise.
2857         * tests/pr8365-remake-timing.test: Likewise.
2858         * tests/python-dist.test: Likewise.
2859         * tests/python-vars.test: Likewise.
2860         * tests/python-virtualenv.test: Likewise.
2861         * tests/python5b.test: Likewise.
2862         * tests/specflg-dummy.test: Likewise.
2863         * tests/yacc-dist-nobuild-subdir.test: Likewise.
2864
2865 2011-04-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
2866
2867         coverage: test for automake bug#8485 (known regression)
2868         * tests/yacc-dist-nobuild-subdir.test: New test.
2869         * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
2870
2871 2011-04-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
2872
2873         test defs: define default $distdir (help reducing duplication)
2874         * tests/defs ($distdir): New variable, might be used in
2875         testcases checking distribution-related features.
2876         * tests/pr9.test: Use it.
2877         * tests/subdir9.test: Likewise.
2878         * tests/lex3.test: Likewise.
2879         * tests/lexvpath.test: Likewise.
2880         * tests/remake-moved-m4-file.test: Likewise.
2881         * tests/remake-renamed-m4-file.test: Likewise.
2882         * tests/remake-renamed-m4-macro-and-file.test: Likewise.
2883         * tests/yacc-basic.test: Likewise.
2884         * tests/yacc-d-basic.test: Likewise.
2885         * tests/yacc-d-vpath.test: Likewise.
2886         * tests/yacc-dist-nobuild.test: Likewise.
2887         * tests/vtexi3.test: Add comment explaining why we redefine
2888         $distdir in this test.
2889
2890 2011-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
2891
2892         depcomp: fix bugs in tests and in the depcomp script
2893         * lib/depcomp (gcc): Remove duplicated `-e' from sed invocation.
2894         * tests/depcomp10.test: Make it executable.  Fix a blunder that
2895         has left part of an intended comment not prefixed by `#', thus
2896         causing shell syntax errors.  In this same comment, break a
2897         too-long reported error message on multiple lines, for clarity.
2898         Add reference to the relevant bug report.  Add a comment which
2899         explains why the test result 'skipped' if the first "make" call
2900         fails.  Add other useful comments.
2901         * tests/depcomp9.test: Slightly improve comments.
2902
2903 2011-04-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2904
2905         Fix hp depmode for VPATH builds with GNU make.
2906         * lib/depcomp: Be sure to remove VPATH-prefixed object from
2907         dependency output when creating stub rule.
2908         * tests/depcomp10.test: New test.
2909         * tests/Makefile.am (TESTS): Update.
2910         * NEWS: Update.
2911         Report by Bruno Haible.
2912
2913 2011-04-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
2914
2915         java: allow both dist_JAVA and nodist_JAVA in the same Makefile.am
2916         Fixes automake bug#8434.
2917         * automake.in (handle_java): Strip `dist_' and `nodist_' from
2918         the given prefix.  Define a new internal Makefile variable
2919         `am__java_sources'.  Related adjustments.
2920         * lib/am/java.am (JAVAC, JAVAROOT, CLASSPATH_ENV): Define only the
2921         first time this am file is processed.
2922         (class%DIR%.stamp): Stamp file renamed ...
2923         (class%NDIR%.stamp): ... to this, so that the `dist_' and `nodist_'
2924         prefixes are stripped from the name of the stampfile.  Adjust
2925         declaration of dependencies by using the new automake-generated
2926         internal variable `$(am__java_sources)'.  In the rule, use `$@'
2927         as the name of the target, rather than hard-coding it.
2928         * tests/java.test: Update and extend.
2929         * tests/java-no-duplicate.test: New test.
2930         * tests/java-mix-dist-nodist.test: Likewise.
2931         * tests/java-compile-and-install.test: Likewise.
2932         * tests/java-clean.test: Likewise.
2933         * tests/java-sources.test: Likewise.
2934         * tests/Makefile.am (TESTS): Update.
2935
2936 2011-04-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
2937
2938         coverage: more on java support EXTRA_ and noinst_ prefixes
2939         * tests/java-extra.test: New test, checking support for the
2940         prefix `EXTRA_' with the JAVA primary.
2941         * tests/java-noinst.test: New test, checking support for the
2942         prefix `noinst_' with the JAVA primary.
2943         * tests/Makefile.am (TESTS): Update.
2944
2945 2011-04-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2946
2947         test defs: fix 'javac' requirement for older JDK versions
2948         The Java compiler from JDK 1.5 (and presumably earlier versions)
2949         cannot handle the `-version' option by itself; and while it does
2950         print the version number, it then errors out with an usage error:
2951           $ javac -version
2952           javac 1.5.0_22
2953           javac: no source files
2954           Usage: javac <options> <source files>
2955           ...
2956         Luckily, adding the `-help' option to the `javac' invocation
2957         seems to fix this problem.
2958         * tests/defs.in (javac): Pass also the `-help' option to the
2959         `javac' program.  Add a comment explaining why it is needed.
2960         Report from Ralf Wildenhues.
2961
2962 2011-04-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2963
2964         test defs: new requirement for the default java compiler
2965         * tests/defs.in (for tool in $required): New requirement 'javac'.
2966         * tests/java.test: Use it instead of ad-hoc configure check.
2967         * tests/java-check.test: Likewise.
2968         * tests/java-extra.test: Likewise.
2969         * tests/java-noinst.test: Likewise.
2970         * tests/instfail-java.test: Likewise.
2971         * tests/instdir-java.test: Likewise.
2972
2973 2011-04-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
2974
2975         java: check_JAVA does not cause compilation by "make all" anymore
2976         Fixes automake bug#8234.
2977         * automake.in (handle_java): Make stamp of class files built from
2978         java sources in $(check_JAVA) a dependency of `check' target, not
2979         `all' target.
2980         * tests/java-check.test: New test.
2981         * tests/Makefile.am (TESTS): Update.
2982         * NEWS: Update.
2983         * THANKS: Update.
2984         Report from Petteri Räty.
2985
2986 2011-04-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
2987             Bruno Haible  <bruno@clisp.org>
2988
2989         coverage: add tests on remake rules in more complex situations
2990         * tests/defs (using_gmake): New function.
2991         (for tool in $required): Use it when $tool is 'GNUmake'.
2992         * tests/remake-moved-m4-file.test: New test.
2993         * tests/remake-deleted-m4-file.test: Likewise.
2994         * tests/remake-renamed-m4-file.test: Likewise.
2995         * tests/remake-renamed-m4-macro-and-file.test: Likewise.
2996         * tests/remake-renamed-m4-macro.test: Likewise.
2997         * tests/remake-add-acsubst-gnulib.test: Likewise.
2998         * tests/remake-add-header-gnulib.test: Likewise.
2999         * tests/remake-remove-header-gnulib.test: Likewise.
3000         * tests/Makefile.am (TESTS): Update.
3001
3002 2011-04-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
3003
3004         typofix in 'tests/defs'
3005         * tests/defs: Fix typo (`itslef' instead of `itself') in
3006         comments.
3007
3008 2011-04-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3009
3010         Clarify regex code in depcomp.
3011         * lib/depcomp: Add comment why we don't need regex-escaping here.
3012         Suggested by Stefano Lattarini.
3013
3014 2011-04-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3015
3016         Fix makedepend depmode for VPATH builds.
3017         * lib/depcomp [makedepend]: Remove any VPATH prefix from the
3018         object file name, so a rebuild doesn't attempt to update the
3019         .Po files in the source tree.
3020         * tests/depcomp9.test: New test.
3021         * tests/Makefile.am (TESTS): Update.
3022         * NEWS: Update.
3023
3024 2011-04-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
3025
3026         tests: fix timestamp-related failures
3027         Fixes automake bug#8365.
3028         * tests/aclocal6.test: Sleep before modifying m4 files that should
3029         trigger remake rules.  Remove incorrect/obsoleted comments.
3030         * tests/subdir5.test: Likewise, and extend a bit.
3031         * tests/subdir8.test: Likewise.
3032         * tests/pr8365-remake-timing.test: New xfailing test.
3033         * tests/Makefile.am (TESTS): Update.
3034         Report from Sam Steingold.
3035
3036 2011-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3037
3038         Create subdirs for generated sources even when not dep tracking.
3039         * automake.in (handle_single_transform): If $object is derived
3040         and lands in subdir, be sure to output a dirstamp dependency.
3041         * tests/yacc5.test: Avoid falsely matching the dirstamp
3042         dependency when grepping for a rule.
3043         * tests/lex-subobj-nodep.test: New test.
3044         * tests/Makefile.am (TESTS): Update.
3045         * THANKS: Update.
3046         Report by Ignacy Gawedzki.
3047
3048         Fix locale issue in check-exported-srcdir.test.
3049         * tests/check-exported-srcdir.test: Reformulate glob to not fail
3050         in a locale that ignores or interleaves character case.
3051
3052 2011-04-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
3053
3054         docs: better visibility for aclocal in the index
3055         * doc/automake.texi (@menu): Rename title for entry 'configure'
3056         from "Scanning configure.ac or configure.in" to the more precise
3057         "Scanning configure.ac, using aclocal".
3058         (@detailmenu): Adjust.
3059         (@node configure): Adjust, and extend @cindex calls accordingly.
3060         * THANKS: Update.
3061         From a report by Maynard Johnson.
3062
3063 2011-03-30  Stefano Lattarini  <stefano.lattarini@gmail.com>
3064
3065         tests: improve tests on "maintainer-clean" target
3066         * tests/aclocal6.test: Move checks related to "maintainer-clean"
3067         functionalities into ...
3068         * tests/maintclean-vpath.test: ... this new test.
3069         * tests/maintclean.test: Update heading comments.  Extend to also
3070         test subdirs.  Remove useless disabling of YACC.  Fix m4 quoting
3071         in configure.in.  Add a trailing `:' command.  Remove extra blank
3072         lines.
3073         * tests/Makefile.am (TESTS): Update.
3074
3075 2011-03-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3076
3077         tests: fix unindent to use printf not echo for script.
3078         * tests/defs.in: Use printf rather than echo, as the latter may
3079         interpret the backslashes in the sed script.  Fixes test
3080         failures with dash as /bin/sh.
3081
3082 2011-03-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
3083             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3084
3085         maintcheck: look for problematic names of testcases
3086         The configure.in stub created by default by `tests/defs' obtains
3087         the first argument of AC_INIT from the test name, and this can
3088         cause some supported autoconf versions to fail with a spurious
3089         error if that test name contains the name of an m4 or m4sugar
3090         builtin or macro (e.g., `defn' or `m4_undefine').
3091         See for example the bug fixed by commit v1.11-287-g1325a8a.
3092         This change add a maintainer check that warns about test names
3093         which are possibly problematic in this regard.
3094         * Makefile.am (sc_test_names): New maintainer-check target.
3095         (syntax_check_rules): Add it.
3096         (m4_builtins): New helper variable.
3097         (TESTS): Updated according to the following renamings.
3098         * tests/include.test: Renamed ...
3099         * tests/hdr-vars-defined-once.test: ... to this.
3100         * tests/sinclude.test: Renamed ...
3101         * tests/m4-inclusion.test: ... to this, and simplified
3102         accordingly.
3103         * tests/include2.test: Renamed ...
3104         * tests/dist-included-parent-dir.test: ... to this, for
3105         consistency.
3106
3107 2011-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
3108
3109         tests: fix bug in alloca*.test
3110         * tests/alloca.test: Make grepping of automake stderr stricter,
3111         add a trailing `:' command; also, add AC_PROG_CC to configure.in,
3112         and create a dummy alloca.c file, to ensure that we fail for the
3113         proper reason.
3114         * tests/alloca2.test: Likewise.  Also, look for LT_INIT, not
3115         AC_PROG_LIBTOOL, in the error message (bug introduced with commit
3116         v1.11-315-gd51e7b7 "libtool: suggest LT_INIT if LTLIBRARIES
3117         primary is used").
3118         From a report by Patrick Welche.
3119
3120 2011-03-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
3121
3122         cosmetics: better use of m4 quoting and m4sugar macros
3123         * m4/dmalloc.m4: Better use of m4 quoting.  Bump serial number.
3124         * m4/gcj.m4: Likewise.
3125         * m4/init.m4: Likewise.
3126         * m4/install-sh.m4: Likewise.
3127         * m4/lex.m4: Likewise.
3128         * m4/multi.m4: Likewise.
3129         * m4/option.m4: Likewise.
3130         * m4/python.m4: Likewise.
3131         * m4/sanity.m4: Likewise.
3132         * m4/cond.m4: Likewise.  Also, prefer the m4sugar macro 'm4_if'
3133         over the plain m4 macro 'ifelse'.
3134         * m4/depend.m4: Likewise.
3135
3136 2011-03-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
3137
3138         tests: add test about deprecated use of AC_INIT
3139         * tests/deprecated-acinit.test: New test, check that automake
3140         and autoconf complain about an old-style AC_INIT call used with
3141         a new-style AM_AUTOMAKE_INIT call.
3142         * tests/Makefile.am (TESTS): Update.
3143
3144 2011-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
3145
3146         tests: fix bug (comments-in-var-defn.test + autoconf 2.62)
3147         * tests/comments-in-var-defn.test: The configure.in stub created
3148         by default, which has the AC_INIT first argument obtained by the
3149         test name, causes autoconf 2.62 to fail with a spurious error
3150         message like: "configure.in:1: error: defn: undefined macro:".
3151         Thus, to prevent this, the test is renamed to ...
3152         * tests/comments-in-var-def.test: ... this.
3153         * tests/Makefile.am (TESTS): Updated.
3154
3155 2011-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
3156
3157         cosmetics: convert encoding from ISO-8859 to UTF-8
3158         * ChangeLog.03: Convert encoding to UTF-8.
3159         * ChangeLog.96: Likewise.
3160         * ChangeLog.98: Likewise.
3161         * NEWS: Likewise.
3162         * TODO: Likewise.
3163
3164 2011-03-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
3165
3166         tests: extend checks on the 'unindent' shell function
3167         * tests/self-check-unindent.test: Also check that multiple
3168         instances of 'unindent' can run in parallel (this was not
3169         the case when that function used temporary files).
3170
3171 2011-03-01  Peter Rosin  <peda@lysator.liu.se>
3172
3173         test defs: unindent without temporary file
3174         * tests/defs.in (commented_sed_unindent_prog): Commented Sed program
3175         that strips the "proper" amount of leading whitespace.
3176         (unindent): Lazily strip comments from the above program and use it
3177         to unindent without using a temporary file.
3178
3179 2011-02-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
3180
3181         libtool: suggest LT_INIT if LTLIBRARIES primary is used
3182         When the LTLIBRARIES primary was used, but $(LIBTOOL) wasn't
3183         defined, automake suggested to add a call to AC_PROG_LIBTOOL
3184         in configure.ac.  But that macro is deprecated since Libtool
3185         version 1.9b (2004-08-29), in favor of the newer LT_INIT.  So
3186         suggest the use of this latter macro instead.
3187         * lib/Automake/Variable.pm (%_am_macro_for_var): Pair 'LIBTOOL'
3188         with 'LT_INIT', not with 'AC_PROG_LIBTOOL'.
3189         * tests/libtool4.test: Adjust and extend.  Also, add a call to
3190         macro AC_PROG_CC in configure.in, to help ensuring that automake
3191         does not fail for the wrong reasons.
3192         * tests/ltinit.test: New test, ensure that automake's libtool
3193         support works with LT_INIT-based interface.
3194         Thanks to Jack Kelly for the suggestion.
3195
3196 2011-02-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
3197
3198         tests: add testcases sanity-checking the testsuite
3199         Helper subroutines, variables and other pieces of code defined
3200         in the `tests/defs' and used by many testcases are non-obvious,
3201         and tricky to get to work portably; but until now, they weren't
3202         tested at all in a clear and self-contained way.
3203         This change should remedy to the situation.
3204         * tests/self-check-cleanup.test: New test, check removal of
3205         temporary test working directory by `./defs'.
3206         * tests/self-check-dir.test: New test, check that tests using
3207         `./defs' create a proper temporary directory, and run in it.
3208         * tests/self-check-exit.test: New test, check that, in case of
3209         failing commands, the correct exit status is passed to the exit
3210         trap installed by the `./defs' script.
3211         * tests/self-check-is_newest.test: New test, checking the
3212         `is_newest' subroutine.
3213         * tests/self-check-me.test: New test, checking that $me gets
3214         defined automatically by `tests/defs' if not set, and that it
3215         can be overridden from either the shell or the environment.
3216         * tests/self-check-sanity.test: New test, check that the sanity
3217         checks performed by the `tests/defs' script works correctly.
3218         * tests/self-check-unindent.test: New test, checking the
3219         `unindent' subroutine.
3220         * tests/Makefile.am (TESTS): Update.
3221
3222 2011-02-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
3223
3224         tests: tempdirs with restrictive permissions are cleaned correctly
3225         Before this change, the removal of a temporary test directory
3226         containing subdirectories with restrictive permissions (such as
3227         'r--r--r--') could fail.
3228         * tests/defs: Ensure that all the subdirectories of a temporary
3229         test directory have the 'read', 'write' and 'execute' bits set,
3230         before trying to remove it with `rm -rf'.
3231         * tests/Makefile.am (clean-local-check): Likewise.
3232
3233 2011-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
3234             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3235
3236         test defs: add subroutine for input unindenting
3237         * tests/defs.in (unindent): New subroutine.
3238         * tests/instspc-tests.sh: Use it.
3239
3240 2011-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
3241
3242         python: report the 'PYTHON' influential environment variable
3243         * m4/python.m4 (AM_PATH_PYTHON): Call AC_ARG_VAR on PYTHON.
3244         * doc/automake.texi (Python): Update and extend.
3245         * tests/help-python.test: New test.
3246         * tests/Makefile.am (TESTS): Update.
3247         * THANKS (Jack Kelly): Update e-mail address.
3248         Suggestion by Jack Kelly.
3249
3250 2011-02-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
3251
3252         tests defs: clear TESTS_ENVIRONMENT variable
3253         * tests/defs.in (TESTS_ENVIRONMENT): Unset it, so that values
3254         from environment won't interfere with the testcases.
3255         Suggestion by Ralf Wildenhues.
3256
3257 2011-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
3258
3259         tests: `instspc-*.test': do not create useless source file
3260         * tests/instspc-tests.sh (create_input_data): Do not create
3261         unused source file `source2.c'.
3262
3263 2011-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
3264
3265         tests: optimize `instspc-*.test' for speed
3266         After the split of `instspc.test' into various generated tests,
3267         the running time of the testsuite has noticeably increased, since
3268         all these new generated tests must run aclocal, autoconf and
3269         automake, whereas previously they were run only once (at the
3270         beginning of `instspc.test').  But luckily, since the new tests
3271         share the same input files for the autotools, this situation can
3272         be easily worked around (at the expenses of a slight increase of
3273         complexity for the testsuite scaffolding).
3274         * tests/instspc-data.test: New helper test, properly calling
3275         the `instspc-tests.sh' script to generate input data for the
3276         others `instspc-*.test' tests.
3277         * tests/Makefile.am (TESTS): Add `instspc-data.test'.
3278         ($(instspc_tests:.test=.log)): Depend on its log file.
3279         (instspc-data.log): Depend on `instspc-tests.sh'.
3280         * tests/instspc-tests.sh: Recognize new action `generate-data',
3281         and use it to create hand-written and autotools-generated static
3282         files shared by all the `instspc-*.test' tests.
3283         When sourced by the `instspc-*.test' tests, use those previously
3284         created files instead of recreating them from scratch.
3285         (unindent, create_input_data): New subroutines.
3286         Some other related changes and refactorings.
3287         From a suggestion by Ralf Wildenhues.
3288
3289 2011-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
3290
3291         python: fix spurious failure in tests
3292         * tests/python-vars.test: Ignore cached values from config.site
3293         by exporting CONFIG_SITE=/dev/null.  Be laxer in matching the
3294         expected values of output variables `pythondir' and `pyexecdir',
3295         since they can change quite unpredictably among different python
3296         installations.  Also, avoid "hyping" debugging output, thus
3297         offering smaller trace output and more informative diff.
3298         Report and suggestions by Ralf Wildenhues.
3299         * tests/python-virtualenv.test: Require python, since we call it
3300         even after the virtualenv has been deactivated.  Ignore cached
3301         values from config.site by exporting CONFIG_SITE=/dev/null.
3302
3303 2011-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
3304
3305         tests: tweak few tests on simple and parallel test drivers
3306         * tests/check-exported-srcdir.test: Improve heading comments.
3307         * tests/check-tests-in-builddir.test: Likewise.  Also, unset the
3308         `FOO_EXIT_STATUS' variable, so that any pre-existing value in the
3309         environment won't risk to interfere with the test.
3310         Suggestions by Ralf Wildenhues.
3311
3312 2011-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
3313
3314         python: extend and improve tests, fix minor glitches
3315         * m4/python.m4 (AM_PATH_PYTHON): Ensure the "checking ..." messages
3316         from configure are always complete, even in case of failure.  Tiny
3317         cosmetic improvement in info/error messages.
3318         * tests/python.test: Also check that automake complains if the
3319         PYTHON primary is used but the `py-compile' script is not present.
3320         Make grepping of generated Makefile.in laxer w.r.t. whitespace.
3321         Add trailing `:' command.
3322         * tests/python2.test: Remove repeated calls aclocal: they are
3323         useless because configure.in is never modified.  Make grepping
3324         of automake stderr more comprehensive.  Remove the pre-existing
3325         `py-compile' file before trying to install it with `--add-missing'.
3326         Add trailing `:' command.
3327         * tests/python3.test: Add trailing `:' command.
3328         * tests/python11.test: Likewise.
3329         * tests/python4.test: Likewise.  Also, try to pass PYTHON config
3330         variable to configure from the environment, rather than only from
3331         the command line.
3332         * tests/python5.test: Ensure that the "checking ..." messages from
3333         configure are always complete.  Use proper m4 quoting.  Add a
3334         trailing `:' command.
3335         * tests/python6.test: Simplify test logic, by checking for files
3336         created by configure rather then grepping its output.
3337         * tests/python7.test: Likewise.
3338         * tests/python8.test: Also check that `$PYTHON' is meaningfully
3339         set in the ACTION-IF-TRUE argument of AM_PATH_PYTHON.
3340         * tests/python9.test: Likewise.
3341         * tests/python10.test: Add trailing `:' command.
3342         (Makefile.am): Declare `disttest' target as `.PHONY', and add
3343         an `ls -l' to its recipe, for debugging.
3344         * tests/nobase-python.test: In testing "make uninstall" and
3345         "make install" results, prefer idioms that make verbose logs
3346         more helpful.  Remove a couple of lines of dead code.  Add a
3347         trailing `:' command.
3348         * tests/python5b.test: New test, checking that configure performs
3349         the check on the python version even when the choice of the python
3350         interpreter is forced by the user.
3351         * tests/python-dist.test: New test, checking the distribution of
3352         *_PYTHON files.
3353         * tests/python-vars.test: New test, checking that AM_PATH_PYTHON
3354         correctly set all the output variables advertised in the manual.
3355         * tests/python-virtualenv.test: New test, checking that python
3356         support offered by automake works well with "virtual python
3357         environments" created by the `virtualenv' program.
3358         * tests/instdir-prog.test: Also check `$(pyexecdir)'.  Existing
3359         checks made slightly stricter.
3360         * tests/instdir-prog.test: Also check `$(pyexecdir)'.  Existing
3361         * tests/instdir-ltlib.test: Likewise.
3362         * tests/Makefile.am (TESTS): Update.
3363
3364 2011-02-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
3365
3366         coverage: more tests on simple and parallel test drivers
3367         * tests/parallel-tests-subdir.test: New test.
3368         * tests/check-exported-srcdir.test: Likewise.
3369         * tests/check-tests-in-builddir.test: Likewise.
3370         * tests/check-tests_environment.test: Likewise.
3371         * tests/Makefile.am (TESTS): Update.
3372
3373 2011-01-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
3374
3375         tests: fix spurious failures in lflags*.test
3376         * tests/lflags.test: Remove 'LEX' from the environment, so
3377         that it won't be erroneously picked up by `make -e'.
3378         * tests/lflags2.test: Likewise.
3379
3380 2011-01-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
3381
3382         docs: color-tests issues with parallel make
3383         * doc/automake.texi (Simple Tests): Document that automatic
3384         recognition of a capable terminal attached to stdout can fail
3385         with some make implementation when running in parallel mode,
3386         thus causing colored test output not to be automatically
3387         activated when it should.
3388
3389 2011-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
3390
3391         coverage: test semantics of "dummy" per-target flags
3392         * tests/specflg-dummy.test: New test, ensuring that even "dummy"
3393         per-target flags triggers the use of renamed objects.
3394         * tests/Makefile.am (TESTS): Update.
3395         Suggestion by Ralf Wildenhues.
3396
3397 2011-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
3398
3399         tests defs: sanitize IFS
3400         * tests/defs ($IFS): Define to <space>, <tab>, <newline>.
3401         ($sp): New variable, holding a single whitespace character.
3402         ($tab): New variable, holding a tabulation character.
3403         ($nl): New variable, holding a newline character.
3404
3405 2011-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3406
3407         tests: avoid instspc* failures due to make's whitespace trimming
3408         * tests/instspc-tests.sh: Prepend './' when passing the test
3409         characters, to avoid leading whitespace characters to be trimmed
3410         from macros set from environment variables.  Fixes testsuite
3411         failures with HP-UX and Tru64/OSF make.
3412
3413 2011-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3414
3415         tests: fix VPATH auto-expansion workarounds.
3416         * tests/suffix10.test, tests/suffix11.test, tests/suffix12.test,
3417         tests/suffix3.test, tests/suffix5.test, tests/suffix8.test:
3418         Ensure $< is not surrounded by white space, to prevent Solaris
3419         make from applying automatic VPATH text expansion.
3420
3421         tests: fix VPATH auto-expansion workarounds.
3422         * tests/parallel-tests8.test, tests/suffix13.test:
3423         Ensure $< is not surrounded by white space, to prevent Solaris
3424         make from applying automatic VPATH text expansion.
3425
3426 2011-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
3427
3428         tests: fix spurious failures in yflags*.test
3429         * tests/yflags.test: Remove 'YACC' from the environment, so
3430         that it won't be erroneously picked up by `make -e'.
3431         * tests/yflags2.test: Likewise.
3432
3433 2011-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3434
3435         tests: avoid fn99*.test failures due to buggy AIX 5.3 cp -R.
3436         * tests/fn99.test, tests/fn99subdir.test: Skip if an initial
3437         `cp -R' of the subdir tree already fails; AIX 5.3 cp messes
3438         up its internal memory when copying this tree.
3439
3440 2011-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3441             Stefano Lattarini  <stefano.lattarini@gmail.com>
3442
3443         Add comment to check-TESTS rule working around make 3.80 bug.
3444         * lib/am/check.am (check-TESTS): Update comment.
3445
3446 2011-01-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3447
3448         tests: less strict double-colon spy.test again.
3449         * tests/spy.test: We know BSD make doesn't invoke more than one
3450         double-colon rule, so no need to expose that failure.
3451
3452 2011-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3453
3454         install-sh: avoid Tru64 sh `test' operator precedence issues.
3455         * lib/install-sh: Protect file names and directory components
3456         that consist of `=', `(', `)', or `!'.  Move protection as early
3457         as possible, to avoid errors such as with Tru64 sh `test -z ='.
3458         * tests/instsh2.test: Extend test to cover more possibilities.
3459         Fixes 1.12 instspc-equal-install.test failure on Tru64/OSF 5.1.
3460
3461 2011-01-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
3462             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3463
3464         docs: automake testsuite doesn't use TESTS_ENVIRONMENT anymore
3465         * doc/automake.texi (Simple Tests): Do not claim Automake uses
3466         TESTS_ENVIRONMENT for the perl driver.  Instead, point to the
3467         parallel-tests driver.
3468
3469 2011-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3470
3471         tests: check for presence of cscope with redirected input.
3472         * tests/defs: Add required test for cscope.
3473         Fixes cscope3.test hang with Sun C 5.9 cscope.
3474
3475         tests: avoid false failure in cygnus-dependency-tracking.test.
3476         * tests/cygnus-dependency-tracking.test: Be less restrictive
3477         when grepping the compiler error message, GCC 3.4.6 on FreeBSD
3478         does not mention an undefined symbol.
3479
3480 2011-01-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3481
3482         tests: revert not turning off errexit in instspc-test.sh
3483         * tests/instspc-tests.sh: Turn off errexit while sourcing defs,
3484         the scripts might still not be clean.
3485
3486 2011-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3487
3488         tests: work around Tru64 sh -e issues for instspc*.test.
3489         Apparently, Tru64 sh does not like turning off errexit mode,
3490         and gets confused.
3491         * tests/defs: Document 'errexit' cleanliness requirement.
3492         * tests/defs-static.in: Likewise.  Avoid error from command
3493         substitution to abort instspc*.test with Tru64/OSF 5.1 sh.
3494         * tests/instspc-tests.sh: Drop now-unneeded temporary errexit
3495         dropping.  Add strategic '|| Exit' to let tests work on Tru64.
3496
3497 2011-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3498
3499         Allow _AM_DEPENDENCIES to be used later in configure.
3500         * m4/depend.m4 (_AM_DEPENDENCIES): Remove a previously existing
3501         conftest.dir before recreating it.
3502         Fixes bug#7864.
3503         Report by Eric Blake, from report by Scott McCreary against M4.
3504
3505 2011-01-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3506
3507         tests: avoid failure on w32 file systems.
3508         * tests/parallel-tests-unreadable-log.test: SKIP if file cannot
3509         be turned unreadable.
3510
3511 2011-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3512
3513         tests: allow double-colon spy.test to work with HP-UX make.
3514         * tests/spy.test: Fix comment typos.  Ensure prerequisites we
3515         do not want to depend on are strictly older than the target.
3516         Also test with a target out of date wrt. more than one rule.
3517
3518 2011-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3519
3520         Avoid local $_ perl variable, for Perl before 5.9.1.
3521         * lib/Automake/Options.pm (_process_option_list): Do not
3522         lexically localize $_.  Fixes bootstrap on AIX 5.1.
3523         Bug introduced in commit `v1.11-622-gf90a06c'.
3524
3525 2011-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
3526
3527         tests: remove useless requirements from cond36.test
3528         * tests/cond36.test ($required): Remove.
3529         Since we are at it, add a trailing `:' command.
3530
3531 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3532
3533         tests: avoid failing command substitution in errexit mode.
3534         * tests/vartypo2.test, tests/vartypos.test: Rewrite to not use
3535         a command substitution with a nonzero exit status, that causes
3536         IRIX and Tru64/OSF sh to fail the whole test.
3537
3538 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3539             Stefano Lattarini  <stefano.lattarini@gmail.com>
3540
3541         parallel-tests: work around Tru64/OSF 5.1 sh read bugs.
3542         * lib/am/check.am ($(TEST_SUITE_LOG), recheck, recheck-html):
3543         Test file readability before redirecting input from it, to avoid
3544         exiting Tru64/OSF 5.1 sh which treats read as special builtin.
3545         * tests/parallel-tests-unreadable-log.test: New test.
3546         * tests/Makefile.am (TESTS): Update.
3547         * NEWS: Update.
3548
3549 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3550
3551         * NEWS, README: Update copyright years.
3552
3553 2011-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
3554
3555         tests: hard error in case of internal failures or signal caught
3556         * tests/defs: Exit with status 99 (hard error) rather than
3557         1 (failure) on unexpected/internal errors, or when a signal
3558         is caught by the client script.
3559
3560         Tests defs: don't let useless variables leak in test scripts.
3561         * tests/defs ($priv_check_temp, $overwrite_status, $ro_dir_temp,
3562         $create_status, $r2h, $libtool_found, $gettext_found, $aclocaldir,
3563         $extra_includes): Unset once they've served their purpose.
3564
3565 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3566
3567         Fix parallel-tests.test failure with HP-UX make.
3568         * tests/parallel-tests.test: Sleep inside inner tests, so logs
3569         are newer than logs of tests they depend on, for HP-UX make.
3570
3571 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3572
3573         docs: ensure example are separated with empty lines in the input
3574         * doc/automake.texi (Extending aclocal, Emacs Lisp, Rebuilding)
3575         (API Versioning, Renamed Objects, Multiple Outputs): Add empty
3576         lines before `@example' and after `@end example' lines, so info
3577         output is rendered correctly, and a following @noindent honored.
3578         Report by Stefano Lattarini.
3579
3580 2011-01-15  Jim Meyering <meyering@redhat.com>
3581
3582         tests: fix comment typo
3583         * tests/substref.test: Fix grammar in a comment.
3584
3585 2011-01-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
3586
3587         tests: fix spurious failures in two texinfo tests
3588         * tests/txinfo.test ($required): Add 'makeinfo'.
3589         * tests/txinfo8.test: Create a dummy 'textutils.info' file, so
3590         that make won't try to run makeinfo (which could be unavailable)
3591         to build it.
3592         Found by NixOS Hydra, reported by Ralf Wildenhues.
3593
3594 2011-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
3595
3596         Update docs w.r.t. warning and strictness options.
3597         * doc/automake.texi (Strictness): Document that some warnings are
3598         turned off by default in `foreign' strictness.
3599         (Options): Divide into new sections "Options generalities" and
3600         "List of Automake options".  Fix typo (colon instead of full
3601         stop).  Document option precedence (AUTOMAKE_OPTIONS wins over
3602         AM_INIT_AUTOMAKE which wins over command line).  Also document
3603         interactions between options specifying strictness and those
3604         specifying warnings.
3605
3606         More tests on warnings/strictness precedence.
3607         * tests/warning-groups-win-over-strictness.test: New test, similar
3608         to `warnings-win-over-strictness.test', but checking the explicit
3609         catch-all warning flags (like `-Wall' and `-Wnone').
3610         * tests/Makefile.am (TESTS): Update.
3611
3612         Update NEWS about the warnings-over-strictness precedence.
3613         * NEWS: Automake explicit warning levels always take precedence
3614         over the implicit warning levels implied by Automake strictness.
3615
3616         For PR automake/547:
3617         Warnings win over strictness in AUTOMAKE_OPTIONS.
3618         Ensure that, for what concerns the options specified in
3619         AUTOMAKE_OPTIONS, explicitly-defined warnings always take
3620         precedence over implicit strictness-implied warnings.
3621         This finally fixes Automake bug#7669 a.k.a. PR/547.
3622         * automake.in (handle_options): Call 'process_option_list'
3623         only once per set of options.
3624         * lib/Automake/Options.pm (process_global_option_list,
3625         process_option_list): Add sanity checks.
3626         ($_options_processed, $_global_options_processed): New
3627         internal variables, used by the sanity checks above.
3628         * tests/warnings-win-over-strictness.test: Extend.
3629
3630         For PR automake/547:
3631         Change signature of 'Automake::Options::_process_option_list()'.
3632         This only modifies internal details in the automake implementation,
3633         bearing no externally visible effect, but preparing the way for the
3634         final fix of Automake bug#7669 a.k.a. PR/547.
3635         * lib/Automake/Options.pm (_process_option_list): Accept as
3636         arguments a list of hash references with keys 'option' and 'where',
3637         where 'option' is an option as might occur in AUTOMAKE_OPTIONS or
3638         AM_INIT_AUTOMAKE, and 'where' is the location where it occurred.
3639         (process_option_list, process_global_option_list): Updated.
3640         * automake.in (handle_options, scan_autoconf_traces): Update.
3641
3642         Add more tests about AUTOMAKE_OPTIONS.
3643         In view of soon-to-follow refactorings (still in the pursuit of a
3644         fix for Automake bug#7669 a.k.a. PR/547), add some more tests on
3645         AUTOMAKE_OPTIONS support, to prevent obvious regressions.
3646         * tests/amopts-variable-expansion.test: New test.
3647         * tests/amopts-location.test: Likewise.
3648         * tests/Makefile.am (TESTS): Update.
3649
3650         For PR automake/547:
3651         Warnings win over strictness in AM_INIT_AUTOMAKE.
3652         This change ensures that, for what concerns the options specified
3653         in AM_INIT_AUTOMAKE,  explicitly-defined warnings always take
3654         precedence over implicit strictness-implied warnings.  Related to
3655         Automake bug#7669 a.k.a. PR/547.
3656         * lib/Automake/Options.pm (_process_option_list): Parse explicit
3657         warnings only after the strictness level has been set.  Fix POD
3658         documentation.
3659         * tests/warnings-win-over-strictness.test: Extend.
3660
3661         For PR automake/547:
3662         Warnings win over strictness on command line.
3663         Ensure that, on the command line at least, explicitly defined
3664         warnings always take precedence over implicit strictness-implied
3665         warnings.  Related to Automake bug#7669 a.k.a. PR/547.
3666         * automake.in (parse_arguments): Parse warnings only after the
3667         strictness level has been processed.
3668         * tests/gnuwarn.test: Update, plus miscellaneous improvements.
3669         * tests/warnings-win-over-strictness.test: New test.
3670         * tests/Makefile.am (TESTS): Update.
3671
3672         More tests on warnings and strictness.
3673         * tests/warnings-strictness-interactions.test: New test.
3674         * tests/warnings-unknown.test: Likewise.
3675         * tests/Makefile.am (TESTS): Update.
3676
3677         New test on silent-rules mode and portability warnings.
3678         * tests/silent-nowarn.test: New test.
3679         * tests/Makefile.am (TESTS): Update.
3680
3681         Add new tests on strictness and warnings precedence and overriding.
3682         * tests/strictness-override.test: New test.
3683         * tests/strictness-precedence.test: New test.
3684         * tests/warnings-override.test: New test.
3685         * tests/warnings-precedence.test: New test.
3686         * tests/Makefile.am (TESTS): Update.
3687
3688 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3689
3690         Fix remake rule-induced test failures with HP-UX make.
3691         * tests/remake1a.test: Require GNU make.
3692
3693 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3694
3695         Fix remake rule-induced test failures with HP-UX make.
3696         * tests/colon6.test: Update timestamp of subdir Makefile, so we
3697         do not spuriously invoke the nonexistent toplevel am--refresh
3698         rule.
3699
3700         tests: fix typos in colon6.test
3701         * tests/colon6.test: Fix typos.
3702
3703 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3704             Stefano Lattarini  <stefano.lattarini@gmail.com>
3705
3706         tests: explain MSYS setup failure issue, improve test.
3707         * tests/defs: Add comment and failure message, improve fail
3708         logic.
3709
3710 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3711
3712         Fix libobj2.test failure with non-GNU make: define $(AR).
3713         * tests/libobj2.test: Ensure $(AR) is suitably defined.
3714
3715 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3716
3717         tests: avoid spurious failures due to fork failure in test setup
3718         * tests/defs: Ensure $me is always nonempty, to avoid spurious
3719         failures on MinGW/MSYS in case the preceding sed command could
3720         not be spawned.
3721
3722         Avoid configure warnings from wait about reused PIDs.
3723         * m4/sanity.m4 (AM_SANITY_CHECK): Hide wait stderr output.
3724         Fixes spurious failure of depcomp2.test.
3725
3726 2011-01-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3727
3728         Avoid testsuite failures due to Autoconf Fortran change.
3729         Autoconf v2.68-21-g727ce95 causes AC_F77_LIBRARY_LDFLAGS to
3730         require computing the canonical host name.  Ensure config.guess
3731         and config.sub files are present for respective checks.
3732         * tests/compile_f_c_cxx.test: Add stub files.
3733         * tests/flibs.test: Likewise.
3734         * tests/fort4.test: Use $AUTOMAKE -a for installing files.
3735
3736 2011-01-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
3737
3738         docs: clustered '-d' not recognized in YFLAGS
3739         This change fixes automake bug#7828.
3740         * doc/automake.texi (Yacc and Lex): Document that automake
3741         recognizes '-d' in AM_YFLAGS only if it's not clustered with
3742         other options.
3743         From a report by Юрий Пухальский.
3744
3745 2011-01-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
3746
3747         tests: add checks on automatically-distributed files
3748         Related to automake bug#7819.
3749         * tests/autodist.test: New test.
3750         * tests/autodist-subdir.test: Likewise.
3751         * tests/autodist-acconfig.test: Likewise.
3752         * tests/autodist-acconfig-no-subdir.test: Likewise.
3753         * tests/autodist-aclocal-m4.test: Likewise.
3754         * tests/autodist-config-headers.test: Likewise.
3755         * tests/autodist-configure-no-subdir.test: Likewise.
3756         * tests/autodist-stamp-vti.test: Likewise.
3757         * tests/Makefile.am (TESTS): Update.
3758
3759 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
3760
3761         tests: do not force yacc-requiring tests to use bison
3762         * tests/defs.in: New required entry 'yacc'.  Remove old
3763         required entry 'bison'.
3764         * tests/cond35.test ($required): Require yacc, not bison.
3765         * tests/cond36.test: Likewise.
3766         * tests/pr204.test: Likewise.
3767         * tests/silent-many-gcc.test: Likewise.
3768         * tests/silent-many-generic.test: Likewise.
3769         * tests/silent-yacc-gcc.test: Likewise.
3770         * tests/silent-yacc-generic.test: Likewise.
3771         * tests/subpkg.test: Likewise.
3772         * tests/suffix10.test: Likewise.
3773         * tests/yacc-basic.test: Likewise.
3774         * tests/yacc-clean.test: Likewise.
3775         * tests/yacc-d-basic.test: Likewise.
3776         * tests/yacc-d-vpath.test: Likewise.
3777         * tests/yacc-dist-nobuild.test: Likewise.
3778         * tests/yacc-nodist.test: Likewise.
3779         * tests/yacc4.test: Likewise.
3780         * tests/yacc6.test: Likewise.
3781         * tests/yacc7.test: Likewise.
3782         * tests/yacc8.test: Likewise.
3783         * tests/yaccdry.test: Likewise.
3784         * tests/yaccvpath.test: Likewise.
3785
3786 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
3787
3788         tests: more consistent checks about invalid options
3789         * tests/aclocal.test: Grepping of automake stderr for messages
3790         reporting invalid options made stricter.
3791         * tests/no-outdir-option.test: Likewise.  Also, create a dummy
3792         `Makefile.am', to ensure that the automake failures are really
3793         caused only by unrecognized options.
3794         * tests/automake.test: Added trailing `:' command.  Removed
3795         redundant checks on `--help' and `--version' option (already
3796         performed in the test `help*.test').
3797
3798 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
3799
3800         tests: enable 'errexit' shell flag by default.
3801         * tests/defs: Enable `errexit' shell flag (near the end).
3802         Removed redundant comment about the enabling of shell traces.
3803         * tests/README (Writing test cases): Update, and use nicer
3804         formatting in a couple of places.
3805         * All tests: Adjusted by removing now-redundant calls to
3806         'set -e'.
3807
3808 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
3809
3810         tests: work around a texi+cygnus bug causing a spurious XFAIL
3811         * tests/txinfo5b.test: New test, like txinfo5.test but calling
3812         automake with the `-Wno-override' option to work around a bug
3813         in the texinfo + cygnus interaction.
3814         * tests/txinfo5.test: Update heading comments.
3815         * tests/Makefile.am (TEST): Updated.
3816
3817 2011-01-09  Dave Hart  <davehart@gmail.com>  (tiny change)
3818
3819         Fix another typo in Rule.pm comment.
3820         * lib/Automake/Rule.pm: Fix typo.
3821
3822 2011-01-09  Peter Rosin  <peda@lysator.liu.se>
3823
3824         Fix another typo in Rule.pm comment.
3825         * lib/Automake/Rule.pm: Fix typo.
3826
3827 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
3828
3829         tests: texinfo unrecognized extensions
3830         * tests/txinfo-unrecognized-extension.test: New test.
3831         * tests/Makefile.am (TESTS): Update.
3832
3833         Improve, extend and tweak tests on Texinfo support.
3834         * tests/instdir-texi.test: Add a call to `ls -l' after that to
3835         `make', for debugging.  When looking for required tools, do not
3836         redirect the output of "$tool --help" to /dev/null, and do not
3837         uselessly run it in a subshell.
3838         * tests/txinfo.test: Rewritten to run autoconf, ./configure and
3839         make.  All checks moved into Makefile.am.
3840         * tests/txinfo8.test: Likewise, and modernize the generated
3841         configure.in.
3842         * tests/txinfo2.test: Moved checks into Makefile.am, and other
3843         minor improvements.
3844         * tests/txinfo5.test: Enable `errexit' shell flag, and related
3845         changes.  Add trailing `:' command.
3846         * tests/txinfo6.test: Likewise, and make grepping of generated
3847         Makefile.in stricter.
3848         * tests/txinfo7.test: Enable `errexit' shell flag, and related
3849         changes.  Add trailing `:' command.  Do not add unnecessary stuff
3850         to Makefile.am.
3851         * tests/txinfo9.test: Verify that more targets which are expected
3852         to be generated only once really are.  Make grepping less strict,
3853         to avoid exposing too much internal details.  More minor changes.
3854         * tests/txinfo16.test: Add trailing `:'.  Prefer cat over echo
3855         for appending to configure.in.  Updated/fixed heading comments.
3856         * tests/txinfo23.test: Likewise, and extended a little by making
3857         it check that no info file is created in the $(srcdir).
3858         * tests/txinfo24.test: Likewise.
3859         * tests/txinfo25.test: Likewise.
3860         * tests/txinfo18.test: Add trailing `:'.  Prefer cat over echo
3861         for appending to configure.in.  Also, check that index files are
3862         cleaned also by "make clean", not only by "make distclean".
3863         * tests/txinfo22.test: Prefer `$me' over hard-coded test name,
3864         and added trailing `:' command.  This testcase also used to check
3865         that automake ignores in-line comments when using variables, but
3866         preserves them in the output; these checks (added in commit
3867         "Release-1-7f-4-g9177ef8") do not really pertain to this test,
3868         so they have been moved ...
3869         * tests/comments-in-var-defn.test: ... into this new test.
3870         * tests/txinfo4.test: Escape literal dots in grep regexps.  Add
3871         trailing `:' command.
3872         * tests/txinfo29.test: Likewise.  Relax grepping of generated
3873         Makefile.in w.r.t. whitespaces.  Prefer `cat' over `echo' to
3874         append to configure.in.
3875         * tests/txinfo3.test: Likewise.
3876         * tests/vtexi.test: Improve grepping of Makefile.in (sometimes
3877         make it stricter, sometimes laxer).  Move `set -e' setting just
3878         after the inclusion of ./defs.  De-uglify a sed command.  Other
3879         minor cosmetic improvements.
3880         * tests/vtexi2.test: Make grepping of Makefile.in stricter.  Add
3881         trailing `:' command.
3882         * tests/vtexi3.test: New test on version.texi support.
3883         * tests/vtexi4.test: Likewise.
3884         * tests/Makefile.am (TESTS): Updated.
3885
3886 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
3887
3888         tests: fix spurious failure in 'tests/yflags-conditional.test'
3889         * tests/yflags-conditional.test: Filter out message "warnings are
3890         treated as errors" from automake stderr, to avoid a false positive
3891         when grepping for extraneous warning messages.
3892
3893 2011-01-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
3894
3895         yacc: warn about conditional content in *YFLAGS variables
3896         This change fixes automake bug#7804.
3897         * automake.in (lang_yacc_target_hook): Warn if any of the relevant
3898         *YFLAGS variables has conditional contents (not only a conditional
3899         definition).  Related refactoring.
3900         * NEWS: Updated.
3901         * tests/yflags-conditional.test: Updated and extended.
3902         * tests/yflags-conditional-force.test: New test.
3903         * tests/Makefile.am (TESTS): Updated.
3904
3905 2011-01-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
3906
3907         yacc: support variable expansions in *YFLAGS definition.
3908         This change fixes automake bug#7800.
3909         * automake.in (lang_yacc_target_hook): Use 'value_as_list_recursive'
3910         instead of 'variable_value' to get the value of *YFLAGS variables.
3911         Related changes.
3912         ($DASH_D_PATTERN): Removed.
3913         * tests/Makefile.am (XFAIL_TESTS): Remove yflags-var-expand.test.
3914         * tests/yacc-clean.test: Remove workaround for now-fixed bug.
3915         * NEWS: Update.
3916
3917 2011-01-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
3918
3919         yacc: more tests on *YFLAGS support
3920         * tests/yflags-var-expand.test: New test, still xfailing.  It
3921         exposes automake bug#7800 -- "automake fails to honor `-d' in
3922         AM_YFLAGS when variable expansions are involved".
3923         * tests/yflags-d-false-positive.test: New test, checking that
3924         automake do not spuriously see `-d' in *YFLAGS when that isn't
3925         really there.
3926         * tests/yflags-force-override.test: New test, checking that
3927         automake can cope with definition of the YFLAGS variable in
3928         Makefile.am (even if that is an extremely bad practice, as that
3929         variable is user-reserved).
3930         * tests/yflags-cmdline-override.test: New test, checking that
3931         automake can cope with user-redefinition of YFLAGS at configure
3932         time and/or at make time.
3933         * tests/yflags-conditional.test: New test, checks that automake
3934         warns on conditionally-defined *YFLAGS variables.
3935         * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
3936
3937 2011-01-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
3938
3939         yacc: extend and improve tests
3940         * tests/yacc-basic.test: Also check that the intermediate C file
3941         is mentioned in the generated Makefile.in, and that it is created
3942         by the first make invocation.
3943         * tests/yacc3.test: Test removed, superseded by ...
3944         * tests/yacc-d-basic.test: ... this new test.
3945         * tests/yacc2.test: Add reference to that new test in the heading
3946         comments.
3947         * tests/yacc-d-vpath.test: New test.
3948         * tests/yaccvpath.test: Updated heading comments.  Do not require
3949         gcc anymore, as any working C compiler should be enough.  Remove
3950         redundant comments.
3951         * tests/yacc-nodist.test: New test.
3952         * tests/yacc-dist-nobuild.test: New test.
3953         * tests/Makefile.am (TESTS): Update.
3954
3955 2010-12-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
3956
3957         Extend, fix and improve tests on Lex and Yacc support.
3958         * tests/lexcpp.test: New test script, on support for Lex + C++.
3959         * tests/lexvpath.test: New test script, test build and rebuild
3960         rules for lexers in VPATH setup.
3961         * tests/yacc-basic.test: New test script, run simple "semantic"
3962         checks on basic Yacc support (similarly to what lex3.test does
3963         for Lex support).
3964         * tests/lex.test: Don't create useless dummy source file joe.l.
3965         Remove extra blank lines.
3966         * tests/lex4.test: Add trailing `:' command.  Do not create dummy
3967         useless lex source file.
3968         * tests/lex2.test: Likewise.  Call automake with the `-a' option,
3969         so that it doesn't fail for the absence of `ylwrap' script.  Make
3970         grepping of automake stderr stricter.
3971         * tests/yacc7.test: Add trailing `:' command.  Enable `errexit'
3972         shell flag earlier (just after having sourced ./defs).
3973         * tests/yacc4.test: Likewise.  Also ...
3974         (configure.in): Use pre-populated skeleton set up by ./defs,
3975         instead of writing one from scratch.
3976         Other minor cosmetic changes.
3977         * tests/yacc5.test: Likewise.
3978         * tests/yaccvpath.test: Likewise. Also ...
3979         ($distdir): New variable.
3980         Use it throughout.
3981         * tests/lex5.test: Likewise.
3982         * tests/lex3.test: Likewise.  Check the distdir, rather than
3983         grepping the distribution tarball.  Extend the test on the
3984         created binary, and be sure to avoid hangs.  Add some comments.
3985         * tests/yacc.test: Use stricter grepping.  Add trailing `:'.
3986         * tests/yacc6.test: Likewise.
3987         * tests/yacc3.test: Likewise.  Do not create the unused file
3988         `Makefile.sed'.  Remove useless rules from Makefile.am.  Other
3989         minor cosmetic changes.
3990         * tests/yacc2.test: Make grepping of generated `Makefile.in' and
3991         of automake error messages stricter.  Do not redirect output of
3992         grep to /dev/null.  Move call to aclocal earlier.  Reduce the
3993         number of empty blank lines.  Fix a typo in comments.
3994         * tests/yacc8.test: Fixed bugs that reduced the completeness of
3995         the tests.  Added trailing `:' command.
3996         (configure.in): Use pre-populated skeleton set up by ./defs,
3997         instead of writing one from scratch.
3998         * tests/yaccpp.test: Test also extensions `.y++', `.ypp', and
3999         `.yxx', rather than only `.yy'.
4000         * tests/Makefile.am (TESTS): Update.
4001
4002 2011-01-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
4003
4004         cosmetics: remove trailing whitespaces
4005         * doc/automake.texi: Remove trailing whitespaces.
4006         * tests/cond13.test: Likewise.
4007         * tests/cond14.test: Likewise.
4008         * tests/fort4.test: Likewise.
4009         * tests/fort5.test: Likewise.
4010         * tests/libobj17.test: Likewise.
4011         * tests/suffix7.test: Likewise.
4012         * tests/vtexi2.test: Likewise.
4013
4014         automake: minor fixes in comments
4015         * automake.in: Some minor fixes and enhancements in comments.
4016
4017 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4018
4019         Add test coverage for deleted header files.
4020         * tests/depcomp6.test, tests/depcomp7.test: Update tests to
4021         also check for the deleted header bug.  If no dependency
4022         tracking mechanism could be found, SKIP rather than exit
4023         successfully.  Use GNU style spacing and ANSI C prototypes.
4024
4025         Fix typos in Rule.pm comments.
4026         * lib/Automake/Rule.pm: Fix typos in comments.
4027
4028         docs: split 'amhello Explained' node.
4029         * doc/automake.texi (amhello Explained): Split node ...
4030         (amhello's configure.ac Setup Explained)
4031         (amhello's Makefile.am Setup Explained) : ... into these two.
4032         (Top, Hello World): Adjust, and add @anchor for stable URL links.
4033         Suggestion by Karl Berry in automake bug#7766.
4034
4035 2011-01-08  Karl Berry  <karl@freefriends.org>
4036             Eric Blake  <eblake@redhat.com>
4037
4038         docs: reference defining directories in amhello node.
4039         * doc/automake.texi (amhello Explained): Point to Autoconf
4040         manual for how to convert directory values into macros.
4041         (Optional): Fix grammar nit.
4042
4043 2011-01-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
4044
4045         yacc: "make clean" removes .c and .h files from non-distributed .y
4046         Previously, while automake did *not* distribute C source and header
4047         files derived from non-distributed Yacc sources, it still caused
4048         them to be removed only by "make maintainer-clean" only, and not by
4049         simply "make clean" or "make distclean".
4050         This caused "make distcheck" to fail, unless the developer put
4051         those generated .c and .h files in CLEANFILES or in DISTCLEANFILES
4052         by hand.
4053         This change fixes this issue, by making non-distributed `.c' and
4054         `.h' files generated by non-distributed Yacc sources cleaned by
4055         "make clean".
4056         * tests/automake.in (lang_yacc_target_hook): Make C source and
4057         header files derived from non-distributed Yacc files cleaned by
4058         "make clean", not only by "make maintainer-clean".
4059         * tests/yacc-clean.test: New test.
4060         * tests/Makefile.am (TESTS): Update.
4061         * NEWS: Update.
4062
4063 2011-01-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
4064
4065         * NEWS: Fix typo (forgotten word).
4066
4067 2011-01-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
4068             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4069
4070         docs: how to work around checks on invalid primary/directory couples
4071         * doc/automake.texi (Uniform): Document the blessed idiom which can
4072         be used to work around automake checks on invalid primary/directory
4073         couples (such as `lib_PROGRAMS' or `doc_LIBRARIES').
4074
4075 2010-01-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
4076
4077         Tests: normalize use of the 'errexit' shell flag.
4078         * tests/maken3.test (check_targets): Remove redundant call to
4079         'set -e'.
4080         * tests/maken4.test: Likewise.
4081         * tests/ansi5.test: Call 'set -e' just after './defs' has been
4082         sourced.
4083         * tests/ansi6.test: Likewise.
4084         * tests/ansi7.test: Likewise.
4085         * tests/cond16.test: Likewise.
4086         * tests/cond17.test: Likewise.
4087         * tests/cond18.test: Likewise.
4088         * tests/cond19.test: Likewise.
4089         * tests/cond20.test: Likewise.
4090         * tests/cond21.test: Likewise.
4091         * tests/instdat2.test: Likewise.
4092         * tests/instdir-texi.test: Likewise.
4093         * tests/parallel-tests3.test: Likewise.
4094         * tests/remake1a.test: Likewise.
4095         * tests/ccnoco.test: Likewise, and add trailing `:' command.
4096         * tests/comment4.test: Likewise.
4097         * tests/gcj4.test: Likewise.
4098         * tests/nodist2.test: Likewise.
4099         * tests/nodist3.test: Enable 'errexit' shell flag (this should
4100         have been done in commit v1.11-248-g317e17b, but the relevant
4101         hunk has been forgotten somehow).
4102         * tests/output.test: Likewise.
4103         * tests/gnits2.test: Likewise, and display captured stderr to
4104         script's stderr, not to script's stdout.
4105         * tests/gnits3.test: Likewise.  Also, prefer 'cat' over 'echo'
4106         to append to Makefile.am, and really check that the exit status
4107         of "make installcheck" indicates failure.
4108
4109 2011-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4110
4111         Sync auxiliary files from upstream.
4112         * lib/config.guess, lib/config.sub, lib/texinfo.tex:
4113         Sync from upstream.
4114
4115         Avoid caching bug in cygnus mode test.
4116         * tests/cygnus-requires-maintainer-mode.test: Remove
4117         autom4te.cache directory before rerunning aclocal, to
4118         remove trace caches.
4119
4120         Fix maintainer-check regression.
4121         * tests/subobj11a.test: Pass DISTCHECK_CONFIGURE_FLAGS in the
4122         environment.
4123
4124         Bump copyright years.
4125         * aclocal.in (write_aclocal, version): Bump copyright years.
4126         * automake.in (gen_copyright, version): Likewise.
4127         * doc/automake.texi: Likewise.
4128
4129 2010-12-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
4130
4131         * NEWS: Add missing blank line between two entries.
4132
4133 2010-12-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
4134
4135         Improve and extend tests `suffix*.test'.
4136         * tests/suffix.test: Check that suffix rules for C compilation are
4137         only included once.  Try also with a static library.
4138         * tests/suffix2.test: Add a new grep to help potential debugging.
4139         Do not run automake with the `--add-missing' options, since we
4140         already create all the needed auxiliary files.  Try also *without*
4141         the `no-dependencies' automake option.
4142         * tests/suffix4.test: Make grepping of Makefile.in stricter.
4143         * tests/suffix3.test: Rewritten to run also autoconf, ./configure
4144         and make.
4145         * tests/suffix5.test: Likewise.
4146         * tests/suffix6.test: Fix botched recipe indentation (eight spaces
4147         were used instead of a tabulation character).  Extend to check
4148         that `.obj' is handled like `.$(OBJEXT)' (as is done for `.o').
4149         Improved parsing & grepping of generated Makefile.in.  Other minor
4150         fixes and improvements.
4151         * tests/suffix10.test: Move some checks in Makefile.am.  Also run
4152         "make all".
4153         * tests/suffix12.test: Likewise, and account for VPATH issues in
4154         weaker make implementations.
4155         * tests/suffix11.test: Likewise.  Also, run "make distcheck", for
4156         completeness, and related changes.
4157         * tests/suffix8.test: Likewise.  Also, do not put `gcc' anymore
4158         in $required.
4159         * tests/suffix13.test: Do not use the `--force-missing' automake
4160         option unnecessarily.
4161         * tests/suffix6b.test: New test, semantic sister of `suffix6.test'.
4162         * tests/suffix6c.test: Likewise.
4163         * tests/Makefile.am (TESTS): Updated.
4164
4165 2010-12-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4166             Stefano Lattarini  <stefano.lattarini@gmail.com>
4167
4168         Work around a bug in file-inclusion mechanism of Solaris make.
4169         * automake.in (handle_single_transform): In the name of the
4170         dependency file: collapse multiple slash characters into a single
4171         one.
4172         * tests/subobj11a.test: New test.
4173         * tests/subobj11b.test: Likewise.
4174         * tests/subobj11c.test: Likewise.
4175         * tests/depcomp8a.test: Likewise.
4176         * tests/depcomp8b.test: Likewise.
4177         * tests/Makefile.am (TESTS): Updated.
4178         * NEWS: Updated.
4179         Report by Stefano Lattarini, quick fix by Ralf Wildenhues, final
4180         patch and tests by Stefano Lattarini.
4181
4182 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
4183
4184         Fix two spurious testsuite failures on IRIX 6.5.
4185         * tests/suffix13.test (Makefile.am): Account for VPATH issues on
4186         weaker make implementations (e.g. IRIX 6.5).
4187         * tests/parallel-tests8.test: Likewise, plus a required related
4188         change.
4189         Reported by Ralf Wildenhues.  The bugs have been there from the
4190         first versions of the affected test scripts.
4191
4192 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
4193
4194         docs: cygnus mode doesn't require AM_CYGWIN32 macro.
4195         * doc/automake.texi (Cygnus): Mode 'cygnus' does not require
4196         the AM_CYGWIN32 macro (and indeed hasn't required it since at
4197         least commit Release-1-2-31-g3038064 "merged changes from
4198         Cygnus" of 1997-08-25).
4199
4200 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
4201
4202         Add some tests on 'cygnus' mode.
4203         * tests/clean2.test: Extend.
4204         * tests/cygnus-check-without-all.test: New test.
4205         * tests/cygnus-dependency-tracking.test: Likewise.
4206         * tests/cygnus-distclean.test: Likewise.
4207         * tests/cygnus-imply-foreign.test: Likewise.
4208         * tests/cygnus-no-dist.test: Likewise.
4209         * tests/cygnus-no-installinfo.test: Likewise.
4210         * tests/cygnus-requires-maintainer-mode.test: Likewise.
4211         * tests/Makefile.am (TESTS): Update.
4212
4213 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
4214
4215         Fix parallel testsuite run with Zsh.
4216         This change deals with a Zsh incompatibility in the handling
4217         of the special shell variable `$0' in sourced files; this
4218         incompatibility used to cause utter breakage when the
4219         Automake testsuite was run in parallel mode with Zsh as
4220         the $(TEST_LOG_COMPILER).
4221         For more information, please refer to the thread "Fix parallel
4222         testsuite run with zsh" on automake-patches, dated 2010-12-22:
4223          <http://lists.gnu.org/archive/html/automake-patches/2010-12/msg00135.html>
4224         This change works around the problems described above for Zsh 4.3
4225         or later, and offers better error messages (instead of random
4226         failures) for earlier Zsh version.
4227         * tests/README (Supported shells): When describing the manual
4228         workaround about the Zsh incompatibility in the handling of `$0',
4229         tell that it is now needed only with Zsh versions preceding 4.3.
4230         Done also some minor rewordings.
4231         * tests/defs-static.in ($argv0): New variable, offers a workaround
4232         for the Zsh incompatibility in the handling of `$0'.
4233         Abort if that variable cannot be correctly set (can happen only
4234         in older Zsh version).
4235         * tests/defs ($me): Define using `$argv0', not `$0'.
4236
4237 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
4238
4239         Tests defs: keep track of original $AUTOMAKE and $ACLOCAL values.
4240         This is especially useful for tests which might want to run
4241         automake and aclocal without additional flags and warnings.
4242         * tests/defs-static.in ($original_ACLOCAL): New variable.
4243         ($original_AUTOMAKE): Likewise.
4244         * tests/help.test: Use them.
4245         * tests/help2.test: Likewise.
4246         * tests/help3.test: Likewise.
4247         * tests/help4.test: Likewise.
4248         From a suggestion by Ralf Wildenhues.
4249
4250 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
4251
4252         distlinksbrk.test: Work around botched "make -k".
4253         * tests/distlinksbrk.test: Run "make" multiple times and grep
4254         its output each time for a single error message, rather than
4255         running "make -k" one single time and grepping its output for
4256         all the expected error messages.  This should work around make
4257         implementations with limited (broken?) `-k' support; for more
4258         information, see these subthreads on the automake-patches list:
4259           - 2010-11-15, "Testsuite failures on HP-UX 11.23",
4260             <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00162.html>
4261           - 2010-11-15, "Testsuite failures on IRIX 6.5",
4262             <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00166.html>
4263
4264 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
4265
4266         Minor improvements to test 'amopts.test'.
4267         * tests/amopts.test: Remove botched comment.  Make grepping of
4268         automake stderr slighty stricter.  Add trailing `:' command.
4269
4270 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
4271
4272         backcompat6.test: avoid comments inside recipe commands.
4273         * tests/backcompat6.test: Remove shell comments from makefile rule
4274         commands, as they are not portable to (at least) Tru64 make.
4275
4276 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
4277
4278         man8.test: avoid comments inside recipe commands.
4279         * tests/man8.test: Remove shell comments from makefile rule
4280         commands, as they are not portable to (at least) Tru64 make.
4281
4282 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
4283
4284         Fix sed-related buglet in test "subdir5.test"
4285         * tests/subdir5.test: Always terminate text passed to the
4286         `i' sed command with a newline, to work around limitations
4287         in e.g. older OpenBSD sed.
4288
4289 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
4290
4291         Fix spurious failures in tests on AC_CONFIG_AUX_DIR.
4292         * tests/auxdir7.test: Do not try to needlessly overwrite the files
4293         `install-sh' and `missing'.  This avoid spurious failures in "make
4294         distcheck", when those files might be copied as read-only from the
4295         `lib' directory.
4296         * tests/auxdir8.test: Likewise.
4297
4298 2010-12-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
4299
4300         Make test 'posixsubst-script' portable to MinGW/MSYS.
4301         * tests/posixsubst-script.test: Ensure that the generated dummy
4302         scripts really start with a shebang line, to work around a
4303         limitation of 'test -x' on MinGW/MSYS.
4304         Reported by Ralf Wildenhues.
4305
4306         Improve comments in tests `posixsubst*.test'.
4307         * tests/posixsubst-data.test: Improve comment explaining why we
4308         try also empty match suffix.
4309         * tests/posixsubst-extradist.test: Likewise.
4310         * tests/posixsubst-ldadd.test: Likewise.
4311         * tests/posixsubst-libraries.test: Likewise.
4312         * tests/posixsubst-ltlibraries.test: Likewise.
4313         * tests/posixsubst-programs.test: Likewise.
4314         * tests/posixsubst-scripts.test: Likewise.
4315         * tests/posixsubst-sources.test: Likewise.
4316         * tests/posixsubst-tests.test: Likewise.
4317         Suggested by Ralf Wildenhues.
4318
4319 2010-12-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
4320
4321         docs: fix blunder in example about python extension modules
4322         * doc/automake.texi (Python): Use `quaternion_la_SOURCES',
4323         not `quaternion_SOURCES', to declare the sources of python
4324         extension module `quaternion.la'.
4325
4326 2010-12-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
4327
4328         docs: list LTLIBRARIES among Automake primaries
4329         * doc/automake.texi (Uniform): List `LTLIBRARIES' among
4330         the Automake primaries.
4331
4332 2010-12-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
4333             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4334
4335         Tests defs: requirement 'xsi-shell' must be synced with libtool.
4336         * tests/defs (xsi-shell): Add comment telling to keep the
4337         XSI-conformance checks in sync with libtool.
4338
4339 2010-12-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
4340
4341         Minor cleanups in canon7.test.
4342         * tests/canon7.test (_foo_bar_SOURCES): Remove libs.c.
4343         (configure.in): Remove AC_PROG_CXX.
4344
4345 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4346
4347         Avoid false positive in sc_tests_plain_make maintainer-check.
4348         * Makefile.am (sc_tests_plain_make): Ensure to only match full
4349         `make' words.  Avoid false positive with remake11.test.
4350
4351 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4352
4353         Fix canon7.test failure.
4354         * tests/canon7.test (_foo_bar_SOURCES): Add foobar.c.
4355         (lib.h, libd.c, libs.c): Use const for constant strings.
4356
4357 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4358
4359         Fix typos in test comments.
4360         * tests/posixsubst-data.test, tests/posixsubst-extradist.test,
4361         tests/posixsubst-ldadd.test, tests/posixsubst-libraries.test,
4362         tests/posixsubst-ltlibraries.test, tests/posixsubst-programs.test,
4363         tests/posixsubst-scripts.test, tests/posixsubst-sources.test,
4364         tests/posixsubst-tests.test: Fix typos.
4365
4366 2010-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
4367
4368         More uses of AS_HELP_STRING in automake macros.
4369         * m4/depend.m4 (AM_DEP_TRACK): Use `AS_HELP_STRING' to format
4370         the help message added to the generated configure.
4371         * m4/dmalloc.m4 (AM_WITH_DMALLOC): Likewise.
4372         * m4/lispdir.m4 (AM_PATH_LISPDIR): Likewise.
4373         * m4/maintainer.m4 (AM_MAINTAINER_MODE): Likewise.
4374         * m4/multi.m4 (AM_ENABLE_MULTILIB): Likewise.
4375         Also, bumped all serial numbers of the modified m4 files.
4376
4377 2010-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
4378
4379         Improve tests on generated portions of configure help screen.
4380         * tests/help-depend.test: Grepping of configure help screen
4381         relaxed to cater for possible line wrapping, and tightened in
4382         other respects.
4383         * tests/help-depend2.test: Likewise.
4384         * tests/help-dmalloc.test: Likewise.
4385         * tests/help-lispdir.test: Likewise.
4386         * tests/help-maintainer.test: Likewise.
4387         * tests/help-multilib.test: Likewise.
4388         * tests/help-silent.test: Likewise.
4389         * tests/help-upc.test: Likewise.
4390         * tests/help-init.test: Grepping of configure help screen
4391         tightened.
4392
4393 2010-12-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
4394
4395         Extended tests on AC_CONFIG_AUX_DIR.
4396         * tests/auxdir.test: Enable `errexit' shell flag.  Prefer `$me'
4397         over hard-coded test name.  Use proper m4 quoting.  Add trailing
4398         `:' command.
4399         * tests/auxdir2.test: Likewise.  Try to call automake also with
4400         the `-a' option, so that it will not fail for spurious reasons.
4401         * tests/auxdir3.test: Add an explanatory comment and a trailing
4402         `:' command.
4403         * tests/auxdir4.test: Prefer `$me' over hard-coded test name.
4404         Make grepping of automake stderr slightly stricter.  Also, now
4405         this test just checks about Automake's reaction to unportable
4406         auxiliary directory names (and it has been extended in this
4407         respect).  Moved the checks about non-existent auxiliary
4408         directories to ...
4409         * tests/auxdir5.test: ... this new test.
4410         * tests/auxdir6.test: New test.
4411         * tests/auxdir7.test: Likewise.
4412         * tests/auxdir8.test: Likewise.
4413         * tests/auxdir9.test: Likewise.
4414         * tests/Makefile.am (TESTS): Updated.
4415
4416 2010-12-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
4417
4418         Tests: extend checks on remake rules.
4419         This adds proper semantical tests (i.e. run make to check the
4420         rebuild rules are correctly triggered) in addition to tentative
4421         grepping of the generated Makefile.in(s).
4422         * tests/remake.test: Enable `errexit' shell flag, and related
4423         changes.  Modernize `configure.in'.  Add trailing `:' command.
4424         Improve heading comments, and add a reference to new sister test
4425         remake1a.test.
4426         * tests/remake3.test: Likewise (but with sister test being
4427         remake3a.test).
4428         * tests/remake2.test: Improve heading comments.  Enable `errexit'
4429         shell flag, and related changes.  Modernize `configure.in'.  Make
4430         grepping of `Makefile.in' slightly stricter.  Add trailing `:'
4431         command.
4432         * tests/remake5.test: Also run the `distcheck' target.  Add
4433         trailing `:' command.  Use proper m4 quoting in configure.in.
4434         * tests/remake4.test: Prefer `$me' over hard-coded test name.
4435         * tests/remake7.test: Use the `configure.in' stub created by
4436         ./defs, rather than writing it from scratch.
4437         * tests/remake6.test: Likewise.  Also, add trailing `:' command,
4438         and ensure verbose printing of captured make output.
4439         * tests/remake1a.test: New test, sister of remake.test.
4440         * tests/remake3a.test: New test, sister of remake3.test.
4441         * tests/remake8a.test: New test.
4442         * tests/remake8b.test: Likewise.
4443         * tests/remake9a.test: Likewise.
4444         * tests/remake9b.test: Likewise.
4445         * tests/remake9c.test: Likewise.
4446         * tests/remake9d.test: Likewise.
4447         * tests/remake10a.test: Likewise.
4448         * tests/remake10b.test: Likewise.
4449         * tests/remake10c.test: Likewise.
4450         * tests/remake11.test: Likewise.
4451         * tests/remake12.test: Likewise.
4452         * tests/Makefile.am (TESTS): Updated.
4453
4454 2010-12-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
4455
4456         Improve and extend tests on canonicalization.
4457         * tests/canon-name.test: Add trailing `:' command.  When writing
4458         configure.in, prefer to use $me instead of hard-coding the test
4459         name.
4460         * tests/canon3.test: Prefer trailing `:' over trailing `Exit 0'.
4461         * tests/canon4.test: Likewise.  Make grepping of Makefile.in
4462         stricter.  Improve heading comment, and add reference to ...
4463         * tests/canon6.test: ... this new test (sister test of the
4464         previous one).
4465         * tests/canon.test: Prefer cat + here-doc over echo to append
4466         text to configure.in.  Extend grepping of Automake stderr.  Add
4467         trailing `:' command.
4468         * tests/canon5.test: Likewise.
4469         * tests/canon7.test: New file, stress test on canonicalization.
4470         * tests/canon8.test: New test, for better coverage (check that
4471         the `@' character is not transliterated in canonicalizations).
4472         * tests/Makefile.am: Updated.
4473
4474 2010-12-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
4475
4476         Libobj tests: refer to automake bug tracker for limitations.
4477         * tests/libobj15b.test (configure.in): In the comment explaining
4478         why an apparently redundant AC_OUTPUT is indeed needed, refer
4479         to the relevant entry in the Automake bug tracker rather than
4480         describing the bug in detail with a FIXME-style comment.
4481         * tests/libobj15c.test: Likewise.
4482         * tests/libobj20b.test: Likewise.
4483
4484         Libobj tests: do not use `##' automake comments in-line.
4485         * tests/libobj19.test (Makefile.am): Do not use inline `##'
4486         comments in the definition of AUTOMAKE_OPTIONS.
4487         * tests/libobj20c.test: Likewise.
4488         Report by Ralf Wildenhues.
4489
4490 2010-12-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
4491
4492         Tests defs: more uses of $top_testsrcdir.
4493         * tests/compile6.test: Use `$top_testsrcdir' instead of
4494         `$testsrcdir/..'.
4495
4496 2010-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
4497
4498         Tests required tools: also try `-v' option for GNU compilers.
4499         * tests/defs.in: In the loop on "$required" tools, for gcc
4500         and g++, also run "gcc -v" (resp. "g++ -v"), to get more
4501         information, and for consistency with gcj.
4502
4503 2010-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
4504             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4505
4506         Tests defs: avoid some useless subshells.
4507         * tests/defs: In the loop on "$required" tools: avoid subshells
4508         where not needed.
4509
4510 2010-12-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
4511
4512         Extend tests on AC_LIBOBJ and friends.
4513         * tests/aclibobj.test: Removed, superseded by ...
4514         * tests/libobj-basic.test: ... this new test, which runs autoconf,
4515         ./configure and make, to ensure everything really works.
4516         * tests/libobj3.test: Add trailing `:' command.  Escape literal
4517         dot in grep regexp.
4518         * tests/libobj4.test: Enable `errexit' shell flag, and related
4519         changes.  Add trailing `:' command.  Use proper m4 quoting.
4520         * tests/ltlibobjs.test: Likewise.
4521         * tests/libobj5.test: Enable `errexit' shell flag, and related
4522         changes.  Add trailing `:' command.  Make more robust by using
4523         longer filenames to be grepped.
4524         * tests/libobj8.test: Enable `errexit' shell flag, and related
4525         changes.  Add trailing `:' command.  Use the configure.in
4526         stub provided by ./defs, rather than writing it from scratch.
4527         * tests/libobj2.test: Likewise.  Also, add calls to autoconf,
4528         ./configure and make, to ensure everything really works.
4529         * tests/libobj7.test: Likewise, and ensure that at least one
4530         function listed in AC_REPLACE_FUNCTIONS is truly replaced.
4531         * tests/libobj13.test: Make grepping of Automake stderr slightly
4532         stricter.  Add trailing `:' command.
4533         * tests/libobj12.test: Likewise.  Also, prefer "cat + here-doc"
4534         over "echo" to append to Makefile.am, and some cosmetic changes
4535         in spacing.
4536         * tests/libobj14.test: Call `Exit 1' if sourcing of ./defs fails.
4537         Slighty improve m4 quoting.  Add trailing `:' command.
4538         * tests/libobj10.test: Add calls to autoconf, ./configure and
4539         make, to ensure everything really works.  Also, remove tests that
4540         nonexistent source for AC_LIBOBJ cause an Automake failure: this
4541         is already checked by ...
4542         * tests/libobj15a.test: ... this new test.
4543         * tests/libobj15b.test: New test, sister test of libobj15a.test,
4544         checks AC_LIBSOURCE instead of AC_LIBOBJ.
4545         * tests/libobj15c.test: New test, sister test of libobj15a.test,
4546         checks AC_LIBSOURCES instead of AC_LIBOBJ.
4547         * tests/libobj11.test: Removed, superseded by ...
4548         * tests/libobj16a.test: ... this new test.
4549         * tests/libobj16b.test: New test, sister test of libobj16a.test,
4550         but using oldish/deprecated idioms.
4551         * tests/libobj17.test: New test.
4552         * tests/libobj18.test: Likewise.
4553         * tests/libobj19.test: Likewise.
4554         * tests/libobj20a.test: Likewise.
4555         * tests/libobj20b.test: Likewise.
4556         * tests/libobj20c.test: Likewise.
4557         * tests/Makefile.am (TESTS): Updated.
4558
4559 2010-12-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
4560
4561         Test `$(var:suf=rpl)' expansion in special automake variables.
4562         * tests/posixsubst-data.test: New test.
4563         * tests/posixsubst-extradist.test: Likewise.
4564         * tests/posixsubst-ldadd.test: Likewise.
4565         * tests/posixsubst-libraries.test: Likewise.
4566         * tests/posixsubst-ltlibraries.test: Likewise.
4567         * tests/posixsubst-programs.test: Likewise.
4568         * tests/posixsubst-scripts.test: Likewise.
4569         * tests/posixsubst-sources.test: Likewise.
4570         * tests/posixsubst-tests.test: Likewise.
4571         * tests/Makefile.am (TESTS): Update.
4572
4573 2010-12-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
4574
4575         Make tests `colon*.test' more "semantic".
4576         Prefer running configure and make over grepping the generated
4577         files; this is both more correct and less fragile.
4578         * tests/colon.test: Made more "semantic", as described above.
4579         * tests/colon5.test: Likewise.
4580         * tests/colon6.test: Likewise.
4581         * tests/colon7.test: Likewise.
4582         * tests/colon2.test: Likewise, and improve syncing with sister
4583         test `colon3.test'.
4584         * tests/colon3.test: Likewise (but with the sister test being
4585         `colon2.test' here).
4586
4587 2010-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4588
4589         Avoid running installed automake from 'libtool --help'.
4590         * tests/subobj9.test: Export AUTOCONF and AUTOMAKE.
4591         Together with fixed Libtool, this fixes check-coverage to not
4592         invoke installed automake.
4593
4594 2010-12-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
4595
4596         Separate checks on target overriding into multiple test scripts.
4597         * tests/overrid.test: Deleted, its contents separated into ...
4598         * tests/override-suggest-local.test: ... this new test ...
4599         * tests/override-html.test: ... and this new test ...
4600         * tests/override-conditional-1.test: ... and this new test ...
4601         * tests/override-conditional-2.test: ... and this new test (still
4602         xfailing).
4603         * tests/Makefile.am (TESTS, XFAIL_TESTS): Updated.
4604
4605         Enable `set -e' in more tests (plus some tweakings).
4606         * tests/implicit.test: Enable `errexit' shell flag, and related
4607         changes.  Add trailing `:' command.
4608         * tests/insh2.test: Likewise.
4609         * tests/instman2.test: Likewise.
4610         * tests/interp.test: Likewise.
4611         * tests/interp2.test: Likewise.
4612         * tests/library.test: Likewise.
4613         * tests/mclean.test: Likewise.
4614         * tests/info.test: Enable `errexit' shell flag, and related
4615         changes.  Add trailing `:' command.  Remove useless chaff from
4616         generated Makefile.am.  Add a "FIXME" comment.
4617         * tests/include.test: Enable `errexit' shell flag, and related
4618         changes.  Add trailing `:' command.  Prefer cat + here-doc over
4619         echo to append to configure.in.  Make tests more robust by using
4620         longer and less common names to grep.  Remove an useless call to
4621         echo.  Remove an useless subshell.
4622         * tests/header.test: Enable `errexit' shell flag, and related
4623         changes.  Use proper m4 quoting.  Add excerpts from the original
4624         report of the bug tested for by this script.
4625         * tests/gcj.test: Enable `errexit' shell flag, and related
4626         changes.  Use proper m4 quoting.  Add trailing `:' command.
4627         * tests/gcj3.test: Likewise.
4628         * tests/ldflags.test: Likewise.
4629         * tests/libtool.test: Likewise.
4630         * tests/listval.test: Likewise.
4631         * tests/javaprim.test: Likewise, and prefer cat + here-doc over
4632         echo to append to configure.in.
4633         * tests/javasubst.test: Likewise.
4634         * tests/discorver.test: Enable `errexit' shell flag.  Prefer
4635         trailing `:' over trailing `Exit 0'.
4636         * tests/instdat.test: Enable `errexit' shell flag, and related
4637         changes.  Use proper m4 quoting.  Avoid useless subshell.  Prefer
4638         cat + here-doc over echo to append to configure.in.
4639         * tests/libtool2.test: Enable `errexit' shell flag, and related
4640         changes.  Add trailing `:' command.  Use the configure.in
4641         stub provided by ./defs, rather than writing it from scratch.
4642
4643         Modernize, improve and/or tweak some test scripts.
4644         * tests/maintclean.test: Use proper m4 quoting.  Add trailing `:'
4645         command.
4646         * tests/sinclude.test: Likewise, and add a couple of blank lines,
4647         for clarity.
4648         * tests/make.test: Move setting of `errexit' shell flag earlier in
4649         the script (just after inclusion of ./defs).  Use the configure.in
4650         stub created by ./defs, rather than writing it from scratch.  Some
4651         cosmetic changes in spacing.  Ensure we wait enough time before
4652         touching configure.in to trigger the rebuild rules.
4653         * tests/makej.test: Use `$me' instead of hard-coding the test
4654         name.  Add trailing `:' command.
4655         * tests/version7.test: Likewise.
4656         * tests/space.test: Enable `errexit' shell flag, and related
4657         changes.
4658         * tests/makevars.test: Likewise.  Also, prefer trailing `:' over
4659         trailing `Exit 0', and be more tolerant of white spaces when
4660         grepping Makefile.in.
4661
4662 2010-12-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
4663
4664         * tests/silent8.test: Use "|| Exit 1" after ". ./defs".
4665
4666         Enable `set -e' in more tests (plus some tweakings).
4667         * tests/mkinstall.test: Enable `errexit' shell flag, and related
4668         changes.  Add a trailing `:' command, if needed.
4669         * tests/mdate2.test: Likewise.
4670         * tests/objc.test: Likewise.
4671         * tests/noinst.test: Likewise.
4672         * tests/outdir.test: Likewise.
4673         * tests/number.test: Likewise.
4674         * tests/pluseq.test: Likewise.
4675         * tests/req.test: Likewise.
4676         * tests/rulepat.test: Likewise.
4677         * tests/specflg6.test: Likewise.
4678         * tests/spell3.test: Likewise.
4679         * tests/parse.test: Likewise, and ...
4680         (configure.in): Use the stub created by ./defs, rather than
4681         writing it from scratch.  Remove useless calls to AC_PROG_RANLIB
4682         and AC_OUTPUT.
4683         * tests/mdate4.test: Likewise.
4684         * tests/mkinstall.test: Likewise, and ...
4685         (configure.in): ... drop useless call to `AC_OUTPUT'.
4686         * tests/output.test: Enable `errexit' shell flag, and related
4687         changes.  Add a trailing `:' command.
4688         (configure.in): Modernize.
4689         * tests/output2.test: Likewise.
4690         * tests/output3.test: Likewise.
4691         * tests/output4.test: Likewise.
4692         * tests/mdate3.test: Enable `errexit' shell flag, and related
4693         changes.  Prefer `$me' over hard-coded test name.  Do not move
4694         non-existent or useless files in the build auxiliary directory.
4695         * tests/nodistdir.test: Enable `errexit' shell flag, and related
4696         changes.  Prefer trailing `:' over trailing `Exit 0'.
4697         * tests/nodist.test: Likewise.  Also, prefer cat + here-doc over
4698         echo to create input test files, and do not create useless dummy
4699         C source files.
4700         * tests/nodist2.test: Likewise.
4701         * tests/ppf77.test: Enable `errexit' shell flag, with related
4702         changes.  Add a trailing `:' command.  Do not create useless
4703         dummy source files.
4704         * tests/spelling.test: Enable `errexit' shell flag, with related
4705         changes.  Add a trailing `:' command.  Also, grep Automake error
4706         message.
4707         * tests/specflg3.test: Enable `errexit' shell flag, with related
4708         changes.  Avoid unportable use of `-e' option of fgrep.  Prefer
4709         trailing `:' over trailing `Exit 0'.  Remove extra empty lines,
4710         and cosmetic changes to whitespaces.
4711         * tests/obsolete.test: Enable `errexit' shell flag, with related
4712         changes.  Improve verbosity.  Other miscellaneous changes.
4713
4714 2010-11-30  Stefano Lattarini  <stefano.lattarini@gmail.com>
4715
4716         Improve and extend tests on `:=' variable assignments.
4717         * tests/colneq.test: Avoid redundant use of variable assignments
4718         in Makefile.am.  Use command-line automake options instead of
4719         editing AUTOMAKE_OPTIONS in Makefile.am.  Make grepping of the
4720         generated Makefile.in slightly stricter.  Add a trailing `:'
4721         command.
4722         * tests/colneq2.test: Do not create unneeded dummy files.  Run
4723         also autoconf, ./configure and make.  Add trailing `:' command.
4724         * tests/colneq3.test: New test, similar to colneq.test, but
4725         running also autoconf, ./configure and make.
4726         * tests/Makefile.am (TESTS): Update.
4727
4728 2010-11-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
4729
4730         Remove long-deprecated options --Werror and --Wno-error.
4731         These options has been deprecated at least since commit
4732         "Release-1-6-1b-35-gc037f20", dated 2002-07-06.
4733         * automake.in (parse_arguments): Do not recognize anymore options
4734         `--Werror' and `--Wno-error' as synonyms of respectively `-Werror'
4735         and `-Wno-error'.
4736         * tests/werror.test: Update: use `-Werror' instead of `--Werror'.
4737         * NEWS: Update.
4738
4739 2010-11-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
4740
4741         Fix spurious failures in `silent*.test' for $CC != gcc
4742         In some tests on automake-produced silent rules, we forced the
4743         use of gcc depmode to improve testsuite coverage; but this has
4744         unsurprisingly led to spurious failures when some non-GNU C
4745         compilers were used.  So we are now careful to require GCC in
4746         tests that force gcc depmode.
4747         From reports by Ralf Wildenhues.
4748         * tests/silent5.test: Test removed, its content split into ...
4749         * tests/silent-many-generic.test, tests/silent-many-gcc.test: ...
4750         these new sister tests, the latter of which forces gcc depmode
4751         and lists "gcc" in $required.
4752         * tests/silentlex.test: Test removed, its content split into ...
4753         * tests/silent-lex-generic.test, tests/silent-lex-gcc.test: ...
4754         these new sister tests, the latter of which forces gcc depmode
4755         and lists "gcc" in $required.
4756         * tests/silentyacc.test: Test removed, its content split into ...
4757         * tests/silent-yacc-generic.test, tests/silent-yacc-gcc.test: ...
4758         these new sister tests, the latter of which forces gcc depmode and
4759         lists "gcc" in $required.
4760         * tests/Makefile.am (TESTS): Updated.
4761
4762 2010-11-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
4763
4764         Tests: consistently use "|| Exit 1" after ". ./defs".
4765         * tests/autohdr.test: Use `. ./defs || Exit 1', not bare
4766         `. ./defs', for consistency with other tests.
4767         * tests/autohdr2.test: Likewise.
4768         * tests/autohdr3.test: Likewise.
4769         * tests/autohdr4.test: Likewise.
4770         * tests/cond23.test: Likewise.
4771         * tests/cond24.test: Likewise.
4772         * tests/cond25.test: Likewise.
4773         * tests/cond26.test: Likewise.
4774         * tests/cond27.test: Likewise.
4775         * tests/cond28.test: Likewise.
4776         * tests/cond29.test: Likewise.
4777         * tests/cond30.test: Likewise.
4778         * tests/cond31.test: Likewise.
4779         * tests/cond32.test: Likewise.
4780         * tests/cond33.test: Likewise.
4781         * tests/cond34.test: Likewise.
4782         * tests/cond35.test: Likewise.
4783         * tests/cond36.test: Likewise.
4784         * tests/cond37.test: Likewise.
4785         * tests/cond38.test: Likewise.
4786         * tests/cond39.test: Likewise.
4787         * tests/cond40.test: Likewise.
4788         * tests/cond41.test: Likewise.
4789         * tests/cond42.test: Likewise.
4790         * tests/cond43.test: Likewise.
4791         * tests/cond44.test: Likewise.
4792         * tests/cond45.test: Likewise.
4793         * tests/dollarvar.test: Likewise.
4794         * tests/dollarvar2.test: Likewise.
4795         * tests/hfs.test: Likewise.
4796         * tests/libobj14.test: Likewise.
4797         * tests/percent.test: Likewise.
4798         * tests/percent2.test: Likewise.
4799         * tests/phony.test: Likewise.
4800         * tests/silent.test: Likewise.
4801         * tests/silent2.test: Likewise.
4802         * tests/silent3.test: Likewise.
4803         * tests/silent4.test: Likewise.
4804         * tests/silent5.test: Likewise.
4805         * tests/silent6.test: Likewise.
4806         * tests/silent7.test: Likewise.
4807         * tests/silent9.test: Likewise.
4808         * tests/silentcxx.test: Likewise.
4809         * tests/silentf77.test: Likewise.
4810         * tests/silentf90.test: Likewise.
4811         * tests/silentlex.test: Likewise.
4812         * tests/silentyacc.test: Likewise.
4813
4814         Avoid useless cleaning in some `silent*.test' tests.
4815         * tests/silentf77.test: Removed useless calls to "make clean"
4816         and "make maintainer-clean".
4817         * tests/silentf90.test: Likewise.
4818         * tests/silent3.test: Removed useless call to "make distclean".
4819         * tests/silent4.test: Likewise.
4820         * tests/silent9.test: Likewise.
4821
4822 2010-11-19  Ian Lance Taylor  <iant@google.com>
4823
4824         Sync config-ml.in from GCC.
4825         * config-ml.in: Add Go support: treat GOC and GOCFLAGS like other
4826         compiler/flag environment variables.
4827
4828 2010-11-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
4829
4830         release-stats: account for more generated tests.
4831         * Makefile.am (release-stats): Be sure to take into account all
4832         the generated tests, by grepping the test scripts to decide which
4833         ones of them are automatically generated.
4834
4835 2010-11-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
4836
4837         Code cleanup after removal of option `--output-directory'.
4838         * automake.in ($output_directory): Remove, it's unconditionally
4839         defined to `.' and used only ...
4840         (generate_makefile): ... in this subroutine, which now has been
4841         edited and simplified accordingly.
4842
4843         Remove obsolete automake option `--output-directory'.
4844         This option has been deprecated since version 1.7 (2002/2003).
4845         * automake.in ($output_directory): Define to `.' unconditionally.
4846         (parse_arguments): Remove handling of equivalent options `-o' and
4847         `--output-directory'.
4848         * tests/outdir.test: Removed.
4849         * tests/no-outdir-option.test: New test.
4850         * tests/Makefile.am (TESTS): Updated.
4851         * NEWS: Updated.
4852
4853 2010-11-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
4854
4855         Automake::Config: remove extra trailing semicolon.
4856         * lib/Automake/Config.in: Remove extra trailing semicolon.
4857
4858         help4.test: fix botched heading comment.
4859         * tests/help4.test: Fixed the heading comment, since it
4860         didn't correctly describe what checks the testcase was
4861         supposed to perform.
4862
4863         help2.test: add checks on aclocal too.
4864         * tests/help2.test: Check that also `aclocal --version' and
4865         `aclocal --help' work with configure.in and acinclude.m4 both
4866         broken.
4867
4868 2010-11-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
4869
4870         New test on repeated automake options.
4871         * tests/repeated-options.test: New test, check that automake
4872         does not complain on repeated options, nor generate broken or
4873         incorrect makefiles.
4874         * tests/Makefile.am (TESTS): Updated.
4875
4876 2010-11-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
4877
4878         Fix spurious failures of silent-rules tests with Sun Fortran.
4879         * tests/silentf77.test: Strip from the make output some verbose
4880         messages possibly printed by the SunStudio fortran compilers, to
4881         avoid spurious failures.  Add a trailing `:' command.
4882         * tests/silentf90.test: Likewise.
4883
4884 2010-11-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
4885
4886         Fix spurious failures of silent5.test with Sun Fortran.
4887         * tests/silent5.test: Strip from the make output some verbose
4888         messages possibly printed by the SunStudio fortran compilers,
4889         to avoid spurious failures.  This bug has been there from the
4890         very first version of this test script.
4891
4892 2010-11-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
4893
4894         Fix regression in colon{5,6}.test (failures on AIX 5.3).
4895         * tests/colon5.test: Also substitute `@SHELL@' with `$SHELL' when
4896         post-processing the generated Makefile.in, to work around a bug
4897         of AIX 5.3 make which doesn't allow setting the `$(SHELL)' macro
4898         on the commend line.  Calls to `$MAKE' adjusted accordingly.
4899         * tests/colon6.test: Likewise.
4900         Regression introduced in commit v1.11-175-gf9fe878 "Modernize,
4901         improve and/or extend tests `colon*.test", and reported by Ralf
4902         Wildenhues.
4903
4904 2010-11-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
4905
4906         Fix regression in ansi.test (failure on AIX 5.3).
4907         * tests/ansi.test: Remove redundant hackish check done using a
4908         hand-postprocessed Makefile.in.  This check worked by setting
4909         the `$(SHELL)' macro on the command line of make, but this is
4910         not supported by the AIX 5.3 make implementation.
4911         This bug has been lurking for a long time, and was activated by
4912         commit v1.11-125-gc1f6cdb "Enable `errexit' shell flag in various
4913         tests".  Report by Ralf Wildenhues.
4914
4915 2010-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4916
4917         backcompat5.test: avoid '##'-style comments inside recipe commands.
4918         * tests/backcompat5.test: Remove double-hash comments
4919         from makefile rule commands, they are not part of the
4920         Automake API.  Fixes testsuite failure with Tru64 make.
4921
4922         tests: avoid '##'-style comments inside recipe commands.
4923         * tests/confh.test, tests/confh8.test: Remove
4924         double-hash comments from makefile rule commands, they
4925         are not part of the Automake API.
4926
4927 2010-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4928
4929         tests: work around dash quoting issue in case statements.
4930         * tests/color.test, tests/color2.test: Quote variable in case
4931         pattern, to avoid skipping tests with dash 0.5.5.1.
4932
4933 2010-11-16  Peter Rosin  <peda@lysator.liu.se>
4934
4935         Skip MSVC oriented tests if the shell is not capable.
4936         * tests/defs: New required entry 'xsi-shell'.
4937         * tests/ar-lib.test, tests/compile3.test, tests/compile6.test:
4938         Require a XSI capable shell.
4939         Reported by Ralf Wildenhues.
4940
4941 2010-11-15  Peter Rosin  <peda@lysator.liu.se>
4942
4943         compile: clear the `eat' variable earlier.
4944         * lib/compile: Clear the `eat' variable earlier.
4945         ($scriptversion): Update.
4946         * tests/compile3.test: Prevent regressions.
4947
4948 2010-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4949
4950         More stable configure output from sanity check.
4951         * m4/sanity.m4 (AM_SANITY_CHECK): Always print check line
4952         about ensuring newer files, even if we don't actually need
4953         to wait any more.
4954
4955 2010-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4956
4957         Rebuild menus in the manual.
4958         * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
4959         Thanks to Ian Lance Taylor for the suggestion.
4960
4961         Fix install-strip when $(STRIP) contains several words.
4962         * lib/am/install.am (install-strip): Update comment.  Use
4963         separate sub-make invocations for empty and nonempty $(STRIP),
4964         to fix quoting issues.
4965         * tests/strip2.test, tests/strip3.test: New tests.
4966         * tests/Makefile.am (TESTS): Adjust.
4967
4968 2010-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4969
4970         Fix yaccdry.test failure: require bison.
4971         * tests/yaccdry.test: Require bison.
4972         Found by NixOS Hydra.
4973
4974 2010-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
4975
4976         Fix bug in test `backcompat6.test' (MSYS portability).
4977         * tests/backcompat6.test (Makefile.am): Grep the output from the
4978         test program, rather than diffing it, to avoid spurious failures
4979         on MinGW/MSYS due to LF vs. CRLF line endings.
4980         Reported by Ralf Wildenhues.
4981
4982 2010-11-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
4983
4984         Deprecate obsolete macro AM_WITH_REGEX.
4985         * m4/regex.m4: Document the `AM_WITH_REGEX' macro as obsolete,
4986         and state that it should be removed two years from now.
4987         (AM_WITH_REGEX): Raise an m4-time warning of the "obsolete"
4988         category when this macro is used.
4989         * doc/automake.texi (Public Macros): Move description of
4990         `AM_WITH_REGEX' from here ...
4991         (Obsolete Macros): ... to here, and declare it as obsolete
4992         and "to be removed in a future version".
4993         * tests/regex-obsolete.test: New test.
4994         * tests/Makefile.am (TESTS): Update.
4995
4996 2010-11-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
4997
4998         Improve and extend tests on man pages support.
4999         * tests/man.test: Enable `errexit' shell flag, and related changes.
5000         Make grepping of generated Makefile.in slightly stricter.
5001         * tests/man3.test:  Add trailing `:' command.
5002         * tests/man5.test: Prefer cat + here-doc over echo to append to
5003         configure.in.
5004         * tests/man2.test: Likewise, and add trailing `:' command.
5005         * tests/man4.test: More thorough and consistent checking of make
5006         error messages.  Place fake `help2man' program in a new `bin'
5007         directory rather than in `.'.  Move the checks using the real
5008         `help2man' program to ...
5009         * tests/man6.test: ... this new test, and extend them.  This test
5010         passes with GNU make and Solaris make, still fails with BSD make.
5011         * tests/man7.test: New test, extracted from old man4.test, which
5012         checks for a bug in maintainer-clean w.r.t. generated manpages.
5013         * tests/man8.test: New test, extracted from old man4.test, which
5014         checks for a bug in distcheck w.r.t. generated manpages.  Passes
5015         with GNU make and Solaris make, still fails with BSD make.
5016
5017 2010-11-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
5018
5019         Minor improvements and extensions to various tests.
5020         * tests/defun.test: Also run autoconf and grep the generated
5021         configure to make sure that aclocal truly picks up all the
5022         required macros.
5023         * tests/compile_f_c_cxx.test: Prefer trailing `:' over trailing
5024         `Exit 0'.  Do not create useless dummy source files.  Do not set
5025         useless `$(foo_LDADD)' variable in `Makefile.am'.  Do not call
5026         useless macro `AC_F77_LIBRARY_LDFLAGS' in `configure.in'.
5027         * tests/compile_f90_c_cxx.test: Likewise.
5028         * tests/suffix10.test: Slightly stricter grepping of make output.
5029         * tests/compile.test: Add trailing `:' command.
5030         * tests/defun2.test: Likewise.
5031         * tests/vars3.test: Likewise.
5032         * tests/vartar.test: Likewise.
5033         * tests/vars.test: Likewise.  Also, extend test by checking
5034         that the definition of `MY_FLAGS*' variables is preserved in
5035         the generated `Makefile.in'.
5036         * tests/stamph2.test: Prefer trailing `:' over trailing `Exit 0'.
5037         Use proper m4 quoting in `configure.in'.
5038
5039 2010-11-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
5040
5041         Tests defs: improve messages for skipped tests.
5042         * tests/defs: Give meaningful messages about the reasons of a
5043         test skip; this is especially useful as this file is run without
5044         verbose xtraces on.  Related reorderings in the code and new
5045         comments.
5046
5047 2010-11-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
5048
5049         Tests defs: move static definitions in a new file `defs-static'.
5050         The new file is meant to be idempotent w.r.t. multiple inclusions.
5051         * tests/defs.in: Removed, its contents split among ...
5052         * tests/defs-static.in: ... this new file ...
5053         * tests/defs: ... and this new file, including the former.
5054         * configure.ac (AC_CONFIG_FILES): Remove `tests/defs', add
5055         `tests/defs-static'.
5056         (AC_CONFIG_LINKS): Add `tests/defs'.
5057         * tests/Makefile.am ($(parallel_tests)): Update.
5058         ($(instspc_tests)): Likewise.
5059         * tests/.gitignore: Update.
5060
5061         Tests defs: $testsbuilddir is now AC_SUBST'ed.
5062         * tests/defs.in ($testsbuilddir): Substitute from @abs_builddir@.
5063         Add sanity check on $testsbuilddir, similar to those on
5064         $testsrcdir and $top_testsrcdir.
5065
5066         Tests defs: do not print message "Running test $0" anymore.
5067         * tests/defs.in: Printing the message "=== Running test $0" at
5068         the beginning of each tests made sense when Automake used the old
5069         test-driver, which sent all the output directly to stdout/stderr.
5070         Now that the parallel test-driver is used, which saves output of
5071         each test in its corresponding log file, that old message is just
5072         useless noise.
5073
5074         Tests defs: rename $curdir -> $testbuilddir
5075         * tests/defs.in: Rename $curdir to $testbuildir, for clarity and
5076         consistency with $testsrcdir and $top_testsrcdir.
5077
5078         Tests defs: prefer "$curdir" over "`pwd`".
5079         * tests/defs.in: We already save the value of `pwd` in $curdir
5080         early in the file, so there no need to recalculate it later, when
5081         the current working directory is not changed.
5082
5083         Tests defs: use `$me' in more error messages.
5084         * tests/defs.in: Also use `$me' in error messages referring to
5085         missing `defs' or `defs.in', since that variable is now defined
5086         before those checks.
5087
5088         Tests defs: do not use `Exit' where plain `exit' suffices.
5089         * tests/defs.in: Use "exit 77" rather than "Exit 77" to skip the
5090         test when required libtool/gettext macros are not found, since
5091         such skips would take place before the exit trap is installed.
5092
5093         Tests defs: improve and extends comments.
5094         * tests/defs.in: Improve and extends some comments, especially in
5095         relation with the changes introduced by the previous reordering.
5096
5097         Tests defs: various reorderings.
5098         * tests/defs.in: Reordered various snippets of code in a
5099         clearer way.
5100
5101 2010-11-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
5102
5103         Fix bug in test `backcompat4.test' (stale autom4te cache).
5104         * tests/backcompat4.test: Remove stale autom4te cache directory
5105         before re-running aclocal and automake.  Also, since we are at
5106         it, be more verbose in displaying contents of generated files,
5107         to ease debuggability.
5108         Reported by Ralf Wildenhues.
5109
5110 2010-11-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
5111
5112         Fix a bug in variable concatenation with `+='.
5113         * lib/Automake/VarDef.pm (append): Since the content of the
5114         "appended-to" variable is going to be unconditionally normalized
5115         later, simply separate the appended value with a single whitespace
5116         character, instead of trying to be uselessly smarter by using
5117         escaped newlines.  This fixes a bug in which extra backslashes
5118         where erroneously inserted in the variable's final value.
5119         * tests/pluseq11.test: New test, exposing the bug.
5120         * tests/Makefile.am (TESTS): Update.
5121         Reported by Andy Wingo.
5122
5123 2010-11-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
5124
5125         Modernize, improve and/or tweak various test scripts.
5126         * tests/stamph2.test: Improve m4 quoting in `configure.in', and
5127         prefer trailing `:' over trailing `Exit 0'.
5128         * tests/syntax.test: Escape literal dots in grep regexps.
5129         * tests/copy.test: Enable `errexit' shell flag.  Extend test by
5130         checking with `test' utility that the script `install-sh' is
5131         copied, but not symlinked.
5132         * tests/depdist.test: Move setting of `errexit' shell flag earlier
5133         in the script (just after inclusion of ./defs).  Avoid obsoleted
5134         constructs in generated `configure.in'.  Prefer to do our checks
5135         by running configure and make over grepping Makefile.in.
5136         * tests/target-cflags: Move setting of `errexit' shell flag
5137         earlier in the script (just after inclusion of ./defs). Use the
5138         `configure.in' stub created by `./defs', rather than writing it
5139         from scratch.
5140         * tests/target-clash: Do not uselessly run autoconf.
5141         * tests/ctarget1.test: Renamed ...
5142         * tests/cond-basic.test: ... to this.  Use the `configure.in' stub
5143         created by `./defs', rather than writing it from scratch.
5144         Move setting of `errexit' shell flag earlier in the script (just
5145         after inclusion of ./defs).  Other minor cosmetic changes.
5146         * tests/Makefile.am (TESTS): Updated.
5147
5148 2010-11-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
5149
5150         New tests on obsoleted usages of automake/autoconf macros (such
5151         as AC_INIT, AM_INIT_AUTOMAKE and AC_OUTPUT).
5152         * tests/backcompat.test: New test script.
5153         * tests/backcompat2.test: Likewise.
5154         * tests/backcompat3.test: Likewise.
5155         * tests/backcompat4.test: Likewise.
5156         * tests/backcompat5.test: Likewise.
5157         * tests/backcompat6.test: Likewise.
5158         * tests/init.test: Extended and improved, esp. by trying more
5159         combinations of calls to AC_INIT and AM_INIT_AUTOMAKE with few
5160         arguments.
5161         * tests/Makefile.am (TESTS): Updated.
5162
5163 2010-11-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
5164
5165         Fix bug in rules for creating vala vapi/header files.
5166         * automake.in (lang_vala_finish_target): Add forgotten "fi" in an
5167         if control structure in a generated make rules.  Bug introduced
5168         by previous commit `v1.11-221-gd7c1679', and revealed by failure
5169         of test `vala2.test'.
5170
5171 2010-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5172
5173         Fix and document rules to not touch the tree with `make -n'.
5174         * doc/automake.texi (Multiple Outputs): Document the problem of
5175         modifications during dry-run execution, propose solution.
5176         * NEWS: Update.
5177         * automake.in (lang_vala_finish_target): Split recipe so the
5178         stamp file is not removed with GNU `make -n'.
5179         (lang_yacc_target_hook): Separate removal of parser output file
5180         and header remaking.
5181         * lib/am/lisp.am ($(am__ELCFILES)): Determine whether -n was
5182         passed to make, take care not to remove any files in that case.
5183         * lib/am/remake-hdr.am (%CONFIG_H%): Separate removal of
5184         %STAMP% file from induced remaking of config header.
5185         * tests/autohdrdry.test, tests/lispdry.test, tests/yaccdry.test:
5186         New tests.
5187         * tests/Makefile.am (TESTS): Update.
5188
5189 2010-11-05  Stefano Lattarini  <stefano.lattarini@gmail.com>
5190
5191         Fix potential bug in generated tests `instpc-*.test'.
5192         This bug is due to the changes introduced by the recently-merged
5193         "tests-init" branch.  In that branch, `tests/defs' didn't define
5194         anymore `$srcdir', instead defining directly `$testsrcdir'; but
5195         the generated tests were using `$srcdir', hence the bug.
5196         Luckily, since the Automake parallel test driver automatically
5197         exports `srcdir' to a proper value, that prevented the bug from
5198         manifesting itself.
5199         * tests/Makefile.am ($(instspc_tests)): In the generated test
5200         scripts, use `$testsrcdir', not `$srcdir'.
5201
5202 2010-11-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
5203
5204         Overhauled and modularized tests in `instspc.test'.
5205         The test `instspc.test' was way too big and fragile.  Its running
5206         time was very long.  It also produced a log that was nearly
5207         unreadable due to its length, making it very difficult to find
5208         out the reason for failures.
5209         Also, it was too much monolithic, with a single (maybe spurious)
5210         failure in a corner case causing the whole test to fail (even if
5211         everything worked as expected in the other 99% of cases).
5212         The present change should solve these problems, by separating
5213         `instspc.test' into many smaller, self-contained, auto-generated
5214         tests.
5215         * tests/instspc.test: Removed.
5216         * tests/instspc-tests.sh: New script, fulfilling a double role:
5217         1. it generates a Makefile.am snippet `tests/instspc-tests.am',
5218         containing the definition of a list of new tests which will take
5219         over the older `instspc.test', and
5220         2. it is sourced by said generated tests with proper parameters
5221         pre-set, to run the "meat" of the checks.
5222         This apparent abuse is indeed required because the test generation
5223         code and test execution code are inevitably intertwined.
5224         * tests/Makefile.am ($(srcdir)/instspc-tests.am): Include this
5225         snippet, which (among the other things) defines ...
5226         (instspc_tests): ... this new macro, containing the list of the
5227         newly generated `instspc*.test' tests, and ...
5228         (instspc_xfail_tests): ... this new macro, containing the list
5229         of the `instspc*.test' tests expected to fail.
5230         ($(instspc_tests)): New rule, generates the `instspc*.test' tests.
5231         ($(instspc_tests:.test=.log)): New rule, registers the dependency
5232         of all `instspc*.test' tests on the `instspc-tests.sh' script.
5233         (TESTS): Add `$(instspc_tests)', remove `instspc.test'.
5234         (XFAIL_TESTS): Add `$(xfail_instspc_tests)'.
5235         (EXTRA_DIST): Distribute instspc-tests.sh.
5236         (MAINTAINERCLEANFILES): Added $(instspc_tests).
5237         Other minor cosmetic changes.
5238         * bootstrap: Generate instspc-tests.am.
5239         * tests/.gitignore: Updated.
5240
5241 2010-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5242
5243         Add FAQ entry for bug reporting instructions.
5244         * doc/automake.texi (Reporting Bugs): New section.
5245         (Introduction): Refer to it.
5246
5247 2010-10-07  Peter Rosin  <peda@lysator.liu.se>
5248
5249         depcomp: add new one-pass depmode for MSVC 7 and later.
5250         * lib/depcomp: Add new depmodes 'msvc7' and 'msvc7msys' which
5251         make use of the -showIncludes option added in MSVC 7.
5252         * m4/depend.m4 (_AM_DEPENDENCIES): Handle the new depmodes
5253         similarly to 'msvisualcpp' and 'msvcmsys' as MSVC does not
5254         support the -o option.
5255
5256 2010-10-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
5257
5258         Add support for newer python versions.
5259         * m4/python.m4 (AM_PATH_PYTHON): Add python2.7 and python3.2 to
5260         _AM_PYTHON_INTERPRETER_LIST.  Since we are at it, break a long
5261         line and fix indentation.
5262         * THANKS: Updated.
5263         From a report by Thomas Klausner.
5264
5265         Add test for `AM_WITH_DMALLOC' macro.
5266         * tests/dmalloc.test: New test.
5267         * tests/Makefile.am (TESTS): Update.
5268
5269         Fix nits and bugs in tests `help*.test'.
5270         * tests/help4.test: Fix broken sed commands used to strip `-W...'
5271         flags away from "$AUTOMAKE" and "$ACLOCAL".
5272         * tests/help3.test: Likewise, and fix a botched comment.
5273         * tests/help.test: Likewise.  Also, use "AUTOMAKE_fails ..."
5274         instead of "$AUTOMAKE ... && Exit 1", for consistency and to
5275         please maintainer-check.
5276         * tests/help2.test: Likewise.
5277
5278 2010-10-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
5279             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5280
5281         Improve tests `help*.test' (also fixes maintcheck failures).
5282         * tests/help.test: To run automake, use `$AUTOMAKE' with all `-W'
5283         flags stripped away rather than hard-coded `automake-$APIVERSION',
5284         to better honour user-overrides.  Similarly for aclocal.
5285         * tests/help2.test: Likewise.
5286         * tests/help3.test: Likewise.
5287         * tests/help4.test: Likewise.
5288
5289 2010-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5290
5291         tests: fix ar-lib.test for echo that interprets backslashes.
5292         * tests/ar-lib.test: Use printf instead of echo.  Avoid test -a.
5293         More robust quoting.
5294
5295 2010-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5296
5297         maintainer-check coverage for variables before rules.
5298         * Makefile.am (sc_ensure_testsuite_has_run): Suggest keeping
5299         around the test directories.
5300         (sc_tests_makefile_variable_order): New rule with a heuristic to
5301         catch ordering violations.
5302
5303         Document and fix expansion of variables before rules.
5304         * doc/automake.texi (General Operation): Document that variables
5305         are expanded before rules.
5306         * lib/am/check.am (am__check_post): Reword a bit so it does not
5307         get matched as a rule.
5308         Suggestion by Ben Pfaff.
5309
5310 2010-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5311
5312         Coverage and minor fixes for variable typo detection.
5313         * automake.in (check_typos): Remove `EXTRA_' prefix when
5314         computing canonical name.
5315         * tests/vartypo2.test, tests/vartypos.test: New tests.
5316         * tests/Makefile.am (TESTS): Update.
5317
5318         Implement EXTRA_maude_DEPENDENCIES for programs and libraries.
5319         * automake.in (handle_programs, handle_libraries)
5320         (handle_ltlibraries): Mark EXTRA_*_DEPENDENCIES as recognized.
5321         * doc/automake.texi (Linking, Program and Library Variables)
5322         (LIBOBJS): Document EXTRA_*_DEPENDENCIES.
5323         * lib/am/library.am (%LIBRARY%): Also depend on
5324         $(EXTRA_%XLIBRARY%_DEPENDENCIES).
5325         * lib/am/ltlibrary.am (%LTLIBRARY%): Also depend on
5326         (%XLTLIBRARY%_DEPENDENCIES).
5327         * lib/am/program.am (%PROGRAM%%EXEEXT%): Also depend on
5328         $(EXTRA_%XPROGRAM%_DEPENDENCIES).
5329         * tests/extradep.test, tests/extradep2.test: New tests.
5330         * tests/Makefile.am (TESTS): Update.
5331         * NEWS: Update.
5332         Suggested by Eric Blake.
5333
5334         tests: avoid running into timing issues due to sanity change.
5335         * tests/acloca10.test, tests/acloca18.test, tests/aclocal9.test:
5336         Insert strategic sleep before aclocal reruns, to ensure files
5337         are newer.
5338         * tests/python11.test: Use --force for repeated autotools runs.
5339         Reports from the NixOS Hydra build daemon via Ludovic Courtès.
5340
5341         Fix timestamp issues by ensuring configure takes at least a second.
5342         * m4/sanity.m4 (AM_SANITY_CHECK): If we didn't sleep here,
5343         start a sleep in the background and wait for it to finish
5344         before creating config.status, hopefully fixing all spurious
5345         testsuite failures involving botched time stamps.
5346         * NEWS: Update.
5347         Reports by Ludovic Courtès, Peter Breitenlohner, and others.
5348
5349 2010-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5350
5351         Revert "parallel-tests: avoid command-line length limit issue."
5352         This reverts commit 24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835,
5353         because it re-opened the bug fixed by v1.11-10-g218e678.
5354
5355         2010-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5356
5357         parallel-tests: avoid command-line length limit issue.
5358         * automake.in (handle_tests): New argument $makefile, new
5359         substitution %MAKEFILE%.
5360         (generate_makefile): Adjust.
5361         * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
5362         sanitized TEST_LOGS value as makefile snippet on standard
5363         input to $(MAKE), to avoid exceeding the command line limit on
5364         w32 (MSYS).
5365         * NEWS: Update.
5366         Report by Bob Friesenhahn.
5367
5368 2010-09-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
5369
5370         Extend tests on `--help' and `--version' options.
5371         * tests/help.test: Create a new empty directory and chdir into
5372         it, rather than removing already present files.  Run the aclocal
5373         and automake wrapper scripts directly, instead of relying on
5374         $AUTOMAKE and $ACLOCAL.  Be sure to correctly match literal dots
5375         in aclocal's and automake's stderr.  Add a trailing `:' command.
5376         * tests/help2.test: New test, checking that options `--help' and
5377         `--version' works in directories with broken `configure.in'.
5378         * tests/help3.test: New test, checking that options `--help' and
5379         `--version' take precedence on the other options.
5380         * tests/help4.test: New test, checking that the first among the
5381         `--help' and `--version' options to be specified on the command
5382         line wins.
5383         * tests/Makefile.am (TESTS): Updated.
5384
5385 2010-09-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
5386
5387         Testsuite: Use `$PATH_SEPARATOR', not `:', when extending PATH.
5388         * tests/compile2.test: Do no uselessly (implicitly) repeat the
5389         computation of PATH_SEPARATOR again.
5390         * tests/instmany-mans.test: Use `$PATH_SEPARATOR', not `:', when
5391         extending/redefining PATH.
5392         * tests/instmany-python.test: Likewise.
5393         * tests/instmany.test: Likewise.
5394         * tests/man4.test: Likewise.
5395         * tests/mkinst3.test: Likewise.
5396         * tests/mmodely.test: Likewise.
5397         * tests/multlib.test: Likewise.
5398         * tests/txinfo30.test: Likewise.
5399         * tests/README (Section "Writing test cases" subsection "Do"):
5400         Updated.
5401         * Makefile.am (sc_tests_PATH_SEPARATOR): New maintainer check.
5402         (syntax_check_rules): Updated.
5403
5404         Testsuite: new variables `$PATH_SEPARATOR' and `$APIVERSION'.
5405         * tests/defs.in ($APIVERSION):  New AC_SUBST'd variable.
5406         ($ACLOCAL, $AUTOMAKE): Use it.
5407         ($PATH_SEPARATOR):  New AC_SUBST'd variables.
5408         ($PATH): Use it.
5409
5410 2010-09-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
5411
5412         Manual: be more agnostic w.r.t. version control system used.
5413         * doc/automake.texi (Basics of Distribution): Also refer to `.svn'
5414         directories as a type of probably-unwanted files that are copied
5415         regardless when adding directories to EXTRA_DIST.
5416         (The dist Hook): Show a dist-hook example which removes Subversion
5417         `.svn' private directories from distdir, rather than CVS private
5418         directories.
5419         (missing and AM_MAINTAINER_MODE): Try to be more agnostic w.r.t.
5420         the version control system used.
5421
5422         Manual: index refer to target "git-dist", not "cvs-dist".
5423         * doc/automake.texi (General Operation): Index the non-standard
5424         example about "git-dist" under the "git-dist" label, not under
5425         the "cvs-dist" one.
5426
5427         Perl modules: remove references to "Automake CVS repository".
5428         * lib/Automake/Channels.pm: Update comments to refer to "Automke's
5429         git repository" rather than to "Automake's CVS repository".
5430         * lib/Automake/Configure_ac.pm: Likewise.
5431         * lib/Automake/FileUtils.pm: Likewise.
5432         * lib/Automake/Struct.pm: Likewise.
5433         * lib/Automake/XFile.pm: Likewise.
5434         * lib/Automake/Version.pm (=head1 DESCRIPTION): Refer to "git
5435         branches" rather than "CVS branches".
5436
5437         Remove obsolete .cvsignore files.
5438         * .cvsignore, doc/.cvsignore, lib/.cvsignore, lib/am/.cvsignore,
5439         lib/Automake/.cvsignore, lib/Automake/tests/.cvsignore,
5440         m4/.cvsignore, tests/.cvsignore: Files deleted.  Even when using
5441         savannah's CVS readonly mirror there's no way to commit back to
5442         the real repository, so this files are not worth maintaining or
5443         keeping around.
5444
5445 2010-09-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
5446
5447         * m4/dmalloc.m4: Bump serial number and copyright years.
5448
5449 2010-09-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
5450
5451         Fix broken link in `AM_WITH_DMALLOC' help screen.
5452         * m4/dmalloc.m4 (AM_WITH_DMALLOC): Refer only to the dmalloc site
5453         `http://www.dmalloc.com', not to the dmalloc tarball there (which
5454         seems to have been removed, substituted by multiple release
5455         tarballs now).
5456
5457 2010-09-21  Peter Rosin  <peda@lysator.liu.se>
5458
5459         compile: implement library search to support MSVC static linking
5460         * lib/compile (func_cl_wrapper): Implement library search and
5461         -static option so that the user can select whether to prefer
5462         dll import libraries or static libraries.  This enables MSVC to
5463         link against dlls generated by libtool without requiring libtool
5464         or workarounds such as -lfoo.dll etc.  Makes the tests/static.at
5465         test case in libtool pass.
5466         * tests/compile3.test: Don't trip up if there happens to exist
5467         a "foo" library in the library search path.
5468         * tests/compile6.test: New test, verifying the library search.
5469         * tests/Makefile.am (TESTS): Update.
5470
5471 2010-09-17  Eric Blake  <eblake@redhat.com>
5472
5473         Avoid triple-space after period.
5474         * automake.in (handle_single_transform): Avoid 3 spaces at
5475         sentence end.
5476         * ChangeLog.03: Likewise.
5477         * lib/Automake/ChannelDefs.pm: Likewise.
5478         * lib/Automake/Channels.pm (_print_message): Likewise.
5479         * lib/Automake/Rule.pm (rule): Likewise.
5480         * lib/Automake/Variable.pm (var): Likewise.
5481         * lib/am/distdir.am: Likewise.
5482         * tests/insthook.test: Likewise.
5483
5484 2010-09-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
5485
5486         Test automake-generated portions of configure help screen.
5487         * tests/help-depend.test: New test.
5488         * tests/help-depend2.test: Likewise.
5489         * tests/help-dmalloc.test: Likewise.
5490         * tests/help-init.test: Likewise.
5491         * tests/help-lispdir.test: Likewise.
5492         * tests/help-maintainer.test: Likewise.
5493         * tests/help-multilib.test: Likewise.
5494         * tests/help-regex.test: Likewise.
5495         * tests/help-silent.test: Likewise.
5496         * tests/help-upc.test: Likewise.
5497         * tests/mmode.test: Remove tests on `configure --help' output,
5498         they are superseded by tests in `help-maintainer.test'.
5499         * tests/Makefile.am (TESTS): Update.
5500
5501 2010-09-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
5502
5503         * tests/README: Don't put GCS mandated tools in $required.
5504
5505 2010-09-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5506
5507         * HACKING: Hint at old commits with `git describe' output.
5508
5509 2010-09-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
5510
5511         Prefer `$(am__cd)' to plain `cd' in our Makefiles.
5512         * Makefile.am (recheck, dist-hook, git-dist, path-check, fetch)
5513         (release-stats): Use `$(am__cd)' rather than plain `cd'.
5514         * tests/Makefile.am ($(srcdir)/parallel-tests.am): Likewise.
5515
5516 2010-09-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
5517
5518         Fix regression in test `colon4.test'.
5519         * tests/colon4.test: Fix botched editing to `configure.in'
5520         that made the test useless.  Since we are at it, improve
5521         comments and make grepping of generated Makefile.in slightly
5522         stricter.
5523         Regression introduced by change "Modernize, improve and/or
5524         extend tests `colon*.test" (Stefano Lattarini, 2010-08-08).
5525
5526 2010-09-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
5527
5528         Do not require "gzip" explicitly in tests.
5529         The gzip utility is simply expected to be present on any decent
5530         target system for Automake.  So it's pointless to put it in
5531         $required.
5532         * tests/install2.test ($required): Do not require "gzip".
5533         * tests/lex3.test: Likewise.
5534         * tests/pr9.test: Likewise.
5535         From a suggestion by Ralf Wildenhues.
5536
5537 2010-09-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
5538
5539         Use AS_HELP_STRING in AM_SILENT_RULES.
5540         * m4/silent.m4 (AM_SILENT_RULES): Use `AS_HELP_STRING' to format
5541         help message regarding configure options `--enable-silent-rules'
5542         and `--disable-silent-rules'.  Also throw in a couple of cosmetic
5543         changes in the related `case' statement (indentation, balancing
5544         of parentheses).
5545         * THANKS: Update.
5546         From a report by Jeff A. Daily.
5547
5548 2010-09-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
5549
5550         Make some `confh*.test' tests more "semantic" (plus tweakings).
5551         * tests/confh.test: Run "autoconf", "configure" and "make check",
5552         instead of munging/grepping the generated `Makefile.in'.
5553         * tests/confh4.test: Relax the grepping of Makefile.in w.r.t.
5554         white spaces.  Do not create useless dummy source file `foo.c'
5555         and useless dummy header file `acconfig.h'.
5556         (configure.in): Remove superfluous call to `AC_OUTPUT'.
5557         * tests/confh6.test: Add trailing `:' command.
5558         * tests/confh7.test: In comments, add reference to ...
5559         * tests/confh8.test: ... this new test, "semantic" sister
5560         of `confh7.test'.
5561         * tests/Makefile.am (TESTS): Updated.
5562         Prompted by a report from Ralf Wildenhues.
5563
5564 2010-09-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
5565
5566         Remove useless whitespace padding in XFAIL_TESTS definition.
5567         * tests/Makefile.am (XFAIL_TESTS): Remove whitespace padding.
5568
5569 2010-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5570
5571         parallel-tests: avoid command-line length limit issue.
5572         * automake.in (handle_tests): New argument $makefile, new
5573         substitution %MAKEFILE%.
5574         (generate_makefile): Adjust.
5575         * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
5576         sanitized TEST_LOGS value as makefile snippet on standard
5577         input to $(MAKE), to avoid exceeding the command line limit on
5578         w32 (MSYS).
5579         * NEWS: Update.
5580         Report by Bob Friesenhahn.
5581
5582         Posix 2008 requires make to set errexit.
5583         * lib/am/check.am: Update comment.
5584
5585 2010-09-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
5586
5587         Tests defs: remove variable $testaclocaldir.
5588         * tests/defs.in ($testaclocaldir): Removed.
5589         * tests/aclocal.test: Use `$top_testsrcdir/m4' directly, not
5590         `$testaclocaldir'.
5591
5592         Tests defs: $srcdir and $top_srcdir renaming.
5593         * tests/defs.in ($srcdir): Remove, define $testsrcdir directly.
5594         * tests/Makefile.am ($(parallel_tests)): Generation of derived
5595         tests updated.
5596
5597         Tests defs: new variable $top_testsrcdir.
5598         * tests/defs.in ($top_testsrcdir): Define unconditionally
5599         to @abs_top_srcdir@.  Use it throughout.
5600         * tests/ar-lib.test: Use `$top_testsrcdir' instead of
5601         `$testsrcdir/..'.
5602         * tests/auxdir.test: Likewise.
5603         * tests/compile.test: Likewise.
5604         * tests/compile2.test: Likewise.
5605         * tests/compile3.test: Likewise.
5606         * tests/compile5.test: Likewise.
5607         * tests/mdate6.test: Likewise.
5608         * tests/mkinst3.test: Likewise.
5609         * tests/multlib.test: Likewise.
5610         * tests/txinfo22.test: Likewise.
5611
5612         Tests defs: $srcdir is unconditionally substituted.
5613         * tests/defs.in ($srcdir): Define unconditionally to @abs_srcdir@.
5614         Remove code for $srcdir normalization, which is now useless.
5615
5616 2010-09-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
5617
5618         Tests defs: make spacing more consistent.
5619         * tests/defs.in: Make spacing more consistent in indentation.
5620         Especially, indent using only spaces, not tabs.  Also, move
5621         a comment to a better position.
5622
5623         Improve code for requiring libtool and gettext in tests.
5624         * tests/defs.in: Stricter (and more correct) detection of wheter
5625         libtool, libtoolize and/or gettext are in $required.
5626
5627
5628 2010-08-27  Stefano Lattarini  <stefano.lattarini@gmail.com>
5629
5630         Fix bug in test missing6.test.
5631         * tests/missing6.test: Fix the hack used to edit `configure.in',
5632         to avoid producing a configure script that breaks with shells
5633         that do not support $LINENO.  Also throw in a couple of cosmetic
5634         changes.
5635
5636 2010-09-02  Peter Rosin  <peda@lysator.liu.se>
5637
5638         Make ar-lib support backslashed files in archives.
5639         * lib/ar-lib: If an archive member contains a backslash, make sure
5640         it is escaped when the archive member is extracted.
5641         * tests/ar-lib.test: Test the above.
5642
5643 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
5644
5645         Do file name conversion for object files in the compile wrapper.
5646         * lib/compile (func_cl_wrapper): Do file name conversion for object
5647         files (i.e. extensions .obj, .OBJ, .o and .O) if needed.
5648         * tests/compile4.test: Test the above.
5649
5650 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5651
5652         Speed up removal of auxiliary linker output files for ltlibraries.
5653         * lib/am/ltlib.am (clean-%DIR%LTLIBRARIES): Rewrite using just
5654         one `rm' invocation.
5655         Report by Bob Friesenhahn.
5656
5657         Improve robustness of mdate-sh script.
5658         * lib/mdate-sh: Sanitize zsh behavior on startup, to ensure
5659         $ls_command is word-split properly upon invocation.
5660         (error): New function.
5661         (main): Use it.  Improve error checking to avoid endless loop
5662         in case $ls_command gave bogus output.  Fix eval quotation.
5663         * tests/mdate6.test: New test, to expose eval quotation error.
5664         * tests/Makefile.am: Update.
5665
5666 2010-08-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
5667
5668         Fix potential regressions in depcomp{3,5}.test.
5669         * tests/depcomp3.test: Do not uselessly escape the character `$'
5670         in makefile rules, when it's used to expand a make macro.
5671         * tests/depcomp5.test: Likewise.
5672
5673 2010-08-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
5674             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5675
5676         Docs: clarify how to avoid automatic dependencies tracking.
5677         * doc/automake.texi (Automatic dependency tracking): Mention that
5678         automatic dependencies tracking is enabled by default, but that
5679         the package developer can disable it altogether.  Add a reference
5680         to the proper section for a more in-depth explanation.
5681
5682         Fix typo in manual (`Makefile.in' instead of `Makefile.am').
5683         * doc/automake.texi (Automatic dependency tracking): Fix typo.
5684
5685 2010-08-16  Bruno Haible  <bruno@clisp.org>
5686
5687         Don't hide the table of contents.
5688         * doc/automake.texi: Move the table of contents to the beginning.
5689
5690 2010-08-16  Peter Rosin  <peda@lysator.liu.se>
5691
5692         Optimize compile script on MSYS.
5693         * lib/compile (func_file_conv): Add new argument 'lazy' which
5694         takes an optional list of conversion types where the requested
5695         conversion isn't needed.
5696         (func_cl_wrapper): Take advantage of the above for cases where
5697         MSYS is doing the conversion for us.
5698         Suggested by Ralf Wildenhues.
5699
5700 2010-08-16  Peter Rosin  <peda@lysator.liu.se>
5701
5702         Support more C++ file extensions for MSVC in the compile script.
5703         * lib/compile (func_cl_wrapper): MSVC only recognizes the .cpp
5704         file extension as C++, unless it's given a hint. So hint about
5705         .cc, .CC, .cxx, .CXX, c++ and C++. Also do path conversion on
5706         .c, .cpp, .CPP, .lib, .LIB and .Lib files.
5707         * tests/compile3.test: Test the C++ hinting.
5708
5709 2010-08-12  Peter Rosin  <peda@lysator.liu.se>
5710
5711         Enable the use of "link -lib" as the wrapped archiver.
5712         * lib/ar-lib: Enable the use of "link -lib" as the wrapped
5713         archiver, as well as allowing some other options to be passed
5714         through to the wrapped archiver.
5715         * tests/ar-lib.test: Test the above.
5716
5717 2010-08-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
5718
5719         Tweak and/or extend some `acloca*.test' tests.
5720         * tests/aclocal8.test:  Ensure verbose printing of captured
5721         output.
5722         * tests/aclocal.test: Likewise.  Also, add trailing `:'
5723         command.
5724         * tests/acloca19.test: Likewise.
5725         * tests/aclocal5.test: Add trailing `:' command, and prefer
5726         `$me' over hard-coded test name.
5727         * tests/aclocal6.test: Likewise.
5728         * tests/aclocal18.test: Add trailing `:' command, and make
5729         some grepping slightly stricter.
5730         * tests/acloca14.test: Likewise.  Also, prefer `diff' over
5731         `cmp', and add some "cosmetic" blank lines.
5732
5733 2010-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
5734
5735         Tweak and extend tests `pr[!0-9]*.test'.
5736         * tests/primary3.test: Add trailing `:' command.
5737         * tests/primary.test: Make grepping of Automake's stderr stricter.
5738         Also, add trailing `:' command, and cosmetic changes in spacing.
5739         * tests/primary2.test: Likewise.
5740         * tests/prefix.test: Enable `errexit' shell flags, and related
5741         changes.  Add a trailing `:' command.
5742         * tests/proginst.test: Likewise.
5743
5744         Modernize, improve and extend tests for PR (`pr[0-9]*.test').
5745         * tests/pr2.test: Add trailing `:' command.
5746         * tests/pr229.test: Likewise.
5747         * tests/pr401.test: Likewise.
5748         * tests/pr401b.test: Likewise.
5749         * tests/pr401c.test: Likewise.
5750         * tests/pr300-prog.test: Likewise, plus cosmetic changes in
5751         spacing.
5752         * tests/pr300-lib.test: Likewise.
5753         * tests/pr300-ltlib.test: Likewise, and ensure verbose printing
5754         of captured make stdout.
5755         * tests/pr211.test: Add trailing `:' command.  Also, use the
5756         `configure.in' stub created by ./defs, rather than writing it
5757         from scratch.
5758         * tests/pr204.test: Likewise, plus cosmetic spacing changes.
5759         * tests/pr287.test: Likewise, and move setting of `errexit' shell
5760         flag earlier in the script (just after inclusion of ./defs).
5761         * tests/pr220.test: Make grepping of Automake's stderr stricter.
5762         Also, add trailing `:' command, and cosmetic changes in spacing.
5763         * tests/pr224.test: Move setting of `errexit' shell flag earlier
5764         in the script (just after inclusion of ./defs).  Do not export
5765         `CC=gcc' to configure explicitly (it's already exported globally
5766         in ./defs, since we have "gcc" in $required).  Use the stub for
5767         `configure.in' created by ./defs, rather than writing it from
5768         scratch.  Do not create dummy files required by "gnu" mode (e.g.
5769         README, NEWS), since we run automake in foreign mode anyway.
5770         * tests/pr72.test: Enable `errexit' shell flags, and related
5771         changes.  Extend existing checks a bit.
5772         * tests/pr9.test: Likewise.  Also, avoid obsolescent constructs in
5773         the generated `configure.in', and extend existing checks over the
5774         generated tarball a bit.
5775         * tests/pr87.test: Enable `errexit' shell flags, and related
5776         changes.  Add a trailing `:' command.  Also, do not create dummy
5777         files required by "gnu" mode (e.g. README, NEWS), since we run
5778         automake in foreign mode anyway.
5779         * tests/pr243.test: Avoid obsolescent constructs in the generated
5780         `configure.in'.  Enable the `errexit' shell flag, and related
5781         changes.  Cosmetic changes to spacing, add trailing `:' command,
5782         and add a "FIXME" comment.
5783         * tests/pr266.test: Likewise, and add explicit command line switch
5784         `--enable-dependency-tracking' to the ./configure call.
5785         * tests/pr279.test: Avoid obsolescent constructs in the generated
5786         `configure.in'; also, use the `configure.in' stub created by
5787         ./defs, rather than writing it from scratch.  Enable `errexit'
5788         shell flag, and related changes.  Add trailing `:' command.
5789         * tests/pr279-2.test: Likewise, and make grepping of Makefile.in
5790         stricter.
5791         * tests/pr307.test: Move setting of `errexit' shell flag earlier
5792         in the script (just after inclusion of ./defs).  Escape literal
5793         dots in grep regular expressions.  Also, add a trailing `:'
5794         command, and cosmetic changes to spacing.
5795
5796         Tests for PR: add excerpts from original bug report, for clarity.
5797         * tests/pr2.test: Ditto.
5798         * tests/pr9.test: Likewise.
5799         * tests/pr72.test: Likewise.
5800         * tests/pr87.test: Likewise.
5801         * tests/pr211.test: Likewise.
5802         * tests/pr220.test: Likewise.
5803         * tests/pr224.test: Likewise.
5804         * tests/pr229.test: Likewise.
5805         * tests/pr243.test: Likewise.
5806         * tests/pr266.test: Likewise.
5807         * tests/pr279.test: Likewise, and tell to keep it in sync
5808         with its sister test.
5809         * tests/pr279-2.test: Likewise.
5810
5811 2010-08-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
5812
5813         Tweak, extend and improve tests `cond[a-z]*.test'.
5814         * tests/condd.test: Add trailing `:' command.  Typofix in
5815         comment.
5816         * tests/condhook.test: Make sure target `install-data-hook' is
5817         not called by `make install', but that data files are installed.
5818         Use proper m4 quoting in configure.in. Add trailing `:' command.
5819         * tests/condhook2.test: New test, sister test of condhook, with
5820         inverted semantic.
5821         * tests/condinc2.test: Use proper m4 quoting in configure.in.
5822         Prefer trailing `:' command over trailing `Exit 0'.
5823         * tests/condman2.test: Enable errexit shell flag, and related
5824         changes.  Add trailing `:' command.
5825         * tests/condman.test: Likewise.  Also, do not create useless
5826         dummy manpages, and use proper m4 quoting in configure.in.
5827         * tests/condman3.test: New test, similar to condman.test, but
5828         it also runs ./configure and "make install", and check the
5829         installed files.
5830         * tests/Makefile.am (TESTS): Updated.
5831
5832         Modernize, improve and/or extend tests `colon*.test.
5833         * tests/colon.test: Rely on the `configure.in' stub created by
5834         `./defs', rather than writing one from scratch.  Do not create
5835         a useless dummy file.  Add trailing `:' command.
5836         * tests/colon4.test: Enable the `errexit' shell flag, and
5837         related changes.  Rely on the `configure.in' stub created by
5838         `./defs', rather than writing one from scratch.
5839         * tests/colon7.test: Enable `errexit' shell flag, and related
5840         changes.  Improve the generated `configure.in' file.  Add
5841         trailing `:' command.
5842         * tests/colon2.test: Likewise.  Also, add some new checks.
5843         * tests/colon5.test: Improve the generated `configure.in' file.
5844         Add new, much deeper checks.  Add trailing `:' command.
5845         * tests/colon6.test: Likewise.
5846         * tests/colon3.test: Add trailing `:' command.  Remove useless
5847         comments and echos.  Improve the generated `configure.in' file.
5848         make some grepping tests stricter.  Add a "FIXME" comments about
5849         planned improvements.
5850
5851         Improve and extend tests `asm*.test'.
5852         * tests/asm.test: Use configure.in stub generated by ./defs,
5853         and avoid obsoleted autoconf constructs.  Make grepping of
5854         Automake stderr stricter.  Do not create useless source file.
5855         Improve verbose messages.  Minor cosmetic changes.  Tell to
5856         keep it in sync with other sister tests asm*.test.
5857         * tests/asm2.test: Likewise.
5858         * tests/asm3.test: Likewise.
5859
5860         Modernize, improve and/or extend test scripts `conf*.test'.
5861         * tests/confh5.test: Cosmetic changes.
5862         * tests/conff.test: Likewise.
5863         * tests/confdeps.test: Likewise.
5864         * tests/conflnk.test: Likewise.
5865         * tests/conflnk2.test: Likewise.
5866         * tests/confsub.test: Likewise.
5867         * tests/confvar.test: Likewise, and make grepping of Makefile.in
5868         stricter.
5869         * tests/confvar2.test: Likewise.
5870         * tests/conflnk3.test: Cosmetic changes.  Re-enable a temporarily
5871         disabled test (which didn't work with autoconf <= 2.59, but now we
5872         are requiring autoconf 2.62, so...)
5873         * tests/conflnk4.test: Cosmetic changes, and extend existing tests
5874         accordingly to "TODO" comments.
5875         * tests/conff2.test: Make grepping of Automake's stderr stricter.
5876         Add some comments explaining why we don't use the `configure.in'
5877         stub preset be ./defs.
5878         * tests/confh.test: Use the `configure.in' stub created by ./defs,
5879         rather than writing one from scratch, and do not call AC_OUTPUT.
5880         Enable `errexit' shell flag, and related changes.  Prefer diff over
5881         cmp to compare text files. Prefer perl over sed to fetch the value
5882         of $(DIST_COMMON) from Makefile.in.  Make grepping of the contents
5883         of $(DIST_COMMON) stricter.
5884         * tests/confh4.test: Use the `configure.in' stub created by ./defs,
5885         rather than writing one from scratch.  Make grepping of Makefile.in
5886         stricter.
5887         * tests/confh5.test: Make grepping of `config.h' stricter.  Add a
5888         comment.
5889         * tests/configure.test: Avoid obsolescent constructs in generated
5890         `configure.ac'.  Do not write `configure.in' two times.  Escape
5891         literal dots in grep regular expressions.
5892         * tests/confincl.test:  Enable `errexit' shell flag, and related
5893         changes.  Prefer fgrep over grep.  Other cosmetic changes.
5894         * tests/config.test: Renamed to ...
5895         * tests/confh6.test: ... this.  Fix m4 quoting in `configure.in',
5896         and make grepping of `config.h' and `config.h.in' stricter.
5897         * tests/conf2.test: Renamed ...
5898         * tests/confh7.test: ... to this.  Use the `configure.in' stub
5899         created by ./defs, rather than writing one from scratch.  Try to
5900         run the checks both with and without AC_PROG_CC and AC_OUTPUT in
5901         `configure.in'.
5902         * tests/Makefile.am (TESTS): Updated.
5903
5904         Minor improvements and fixes in tests `depcomp*.test'.
5905         * tests/depcomp.test: Do not create useless dummy source files.
5906         Add a trailing `:' command.
5907         * tests/depcomp2.test: Use `unset' on the CFLAGS variable to ensure
5908         it's not in in the environment, rather than exporting it with an
5909         empty value.  Do not pass CC=gcc to configure, as that's already
5910         done in ./defs since we have gcc in $required.  Ensure verbose
5911         printing of captured stderr, and normalize its checking.  Add a
5912         trailing `:' command.
5913         * tests/depcomp3.test: Quote literal dots and dollar characters in
5914         grep regexps.  Always use `: >' rather than `touch' to create empty
5915         files.  Explicitly declare phony targets as such in the created
5916         Makefile.am.  Add a trailing `:' command.
5917         * tests/depcomp4.test: Quote literal dots and dollar characters in
5918         grep regexp.  Explicitly declare phony targets as such in the
5919         created Makefile.am.  Ensure verbose printing of captured makes'
5920         stoud/stderr.  Add a trailing `:' command.
5921         * tests/depcomp5.test: Move setting of `errexit' shell flag earlier
5922         in the script (just after inclusion of ./defs).  Quote literal dots
5923         and dollar characters in grep regexps.  Explicitly declare phony
5924         targets as such in the created Makefile.am.  Add a trailing `:'
5925         command.
5926         * tests/depcomp6.test: Consistently use m4 quoting in the generated
5927         configure.in.  Cosmetic fixes to spacing.  Make the "dummy" `if'
5928         statement required by OpenBSD's sh `set -e' more robust, and add
5929         explanatory comments to it.
5930         * tests/depcomp7.test: Likewise, and add  a trailing `:' command.
5931
5932         Separate failing part of test `all.test'.
5933         * tests/all.test: Keep only (x)failing part of the test.  Working
5934         checks moved out to ...
5935         * tests/all2.test: ... this new test.
5936         * tests/Makefile.am (TESTS): Updated.
5937
5938         Modernize, improve and extend tests `subobj*.test'.
5939         * tests/subobjname.test:  Add trailing `:' command.
5940         * tests/subobj.test: Make grepping of `Makefile.in' stricter.
5941         Escape literal dots in grep regexps.
5942         * tests/subobj2.test:  Add trailing `:' command.  Do not use the
5943         unportable fgrep option `-e'.
5944         * tests/subobj3.test: Add trailing `:' command.
5945         (configure.in): Use proper m4 quoting, and avoid obsolescent
5946         constructs.
5947         * tests/subobj8.test: Likewise.  Also, enable `errexit' shell
5948         flag, with related changes
5949         * tests/subobj4.test: Likewise.  Also, make grepping of
5950         `Makefile.in' stricter.
5951         * tests/subobj5.test: Add trailing `:' command.  Move setting of
5952         `errexit' shell flag earlier in the script (just after inclusion
5953         of ./defs).
5954         (configure.in): Use the stub created by `./defs', rather than
5955         writing it from scratch, and avoid obsolescent constructs.
5956         * tests/subobj6.test: Add trailing `:' command.  Move setting of
5957         `errexit' shell flag earlier in the script (just after inclusion
5958         of ./defs).  Do not create useless dummy ac-init file `f'.
5959         * tests/subobj7.test: Do not create useless dummy ac-init file
5960         `f'.
5961         (configure.in): Use the stub created by `./defs', rather than
5962         writing it from scratch, and avoid obsolescent constructs.
5963         * tests/subobj9.test: Move setting of `errexit' shell flag earlier
5964         in the script (just after inclusion of ./defs).  Fail the test if
5965         `make distcheck' fails.  Ensure verbose printing of captured make
5966         stdout.  Avoid useless fork by doing simple grep instead of using
5967         test -n "`COMMAND | grep ...`".
5968         (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
5969         (Makefile.am): Explicitly mark target "print" as phony.
5970         * tests/subobj10.test: Removed duplicated call to `set -e'.  Add
5971         trailing `:' command.
5972         (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
5973
5974         Remove a couple of obsoleted tests.
5975         * tests/fpinstall.test: Removed.
5976         * tests/fpinst2.test: Likewise.
5977         * tests/Makefile.am (TESTS): Updated.
5978
5979         Bootstrap: updated HACKING entry.
5980         * HACKING ("Working with git"): Explain how to override the
5981         autoconf and autom4te programs used by the bootstrap process.
5982
5983         Bootstrap: fixlet.
5984         * bootstrap: Do not remove `lib/Automake/Config.pm' anymore,
5985         since we don't generate it.  Correctly quote arguments of
5986         `eval' builtin.  Fixed a botched error message.  Removed an
5987         extra blank line.
5988
5989         Bootstrap: don't search perl in $PATH.
5990         * bootstrap: Do not explicitly search perl in $PATH anymore.
5991         ($PATH_SEPARATOR): Removed, it's no more needed.
5992
5993         Bootstrap: let the user choose which autoconf to use.
5994         * bootstrap ($AUTOCONF): New variable, from the environment.
5995         ($AUTOM4TE): Likewise, for clarity.
5996         Use "$AUTOCONF" instead of calling "autoconf" directly.
5997
5998         Minor improvements to tests ar*.test.
5999         * tests/ar.test: Add trailing `:' command.
6000         * tests/ar2.test: Likewise, and make grepping of generated
6001         Makefile.in stricter.
6002
6003 2010-08-06  Peter Rosin  <peda@lysator.liu.se>
6004
6005         Add new auxiliary 'ar-lib' script, wrapping Microsoft lib.
6006         * lib/ar-lib: New auxiliary script.
6007         * lib/Makefile.am: Add above.
6008         * tests/ar-lib.test: New test.
6009         * tests/Makefile.am: Add above.
6010         * automake.in (@common_files): Distribute the 'ar-lib' script.
6011         * doc/automake.texi (Auxiliary Programs): Mention the new
6012         'ar-lib' script.
6013         (Optional): Mention 'ar-lib' in AC_CONFIG_AUX_DIR.
6014         * NEWS: Update.
6015
6016 2010-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6017
6018         Fix shell pattern negation in compile script.
6019         * lib/compile (func_file_conv): Use `!' not `^' for pattern
6020         negation.
6021
6022 2010-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6023
6024         Fix maintainer-check failure.
6025         * tests/cond5.test: Quote sleep argument, this isn't about
6026         time stamp differences.
6027
6028         Sync auxiliary files from upstream.
6029         * lib/config.guess, lib/config.sub, lib/texinfo.tex:
6030         Sync from upstream.
6031
6032 2010-08-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
6033
6034         Work around a nasty bug (segfault) of Solaris make.
6035         * lib/am/check.am (recheck, recheck-html): Trim trailing spaces
6036         from $list, to avoid triggering a nasty bug (potential segfault)
6037         on Solaris make.
6038
6039 2010-08-06  Peter Rosin  <peda@lysator.liu.se>
6040
6041         Make cond5.test more robust on MSYS.
6042         * tests/cond5.test: Add delay before the first kill attempt to
6043         cater for problems with MSYS bash.
6044
6045 2010-08-01  Peter Rosin  <peda@lysator.liu.se>
6046
6047         Wrap some MSVC options in the compile script.
6048         * lib/compile: MSVC supports naming the output file, the option
6049         is just not called -o, so transform -o into the appropriate form
6050         for MSVC. Also wrap some other options while at it (-L, -l, -Wl,
6051         -Xlinker and -I) and convert file names to windows form where
6052         needed for those options to make MSVC more usable in an
6053         autotooled environment.
6054         * doc/automake.texi (Auxiliary Programs): Document the above
6055         extension of the compile script.
6056         * NEWS: Updated.
6057         * tests/defs.in: New required entry 'cl'.
6058         * tests/compile3.test: New test.
6059         * tests/compile4.test: New test.
6060         * tests/compile5.test: New test.
6061         * tests/Makefile.am: Update.
6062
6063 2010-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6064
6065         Add example git work flow; discuss merge --log in HACKING.
6066         * HACKING: Update.
6067         Suggestion by Stefano Lattarini.
6068
6069         Add more hints for debugging make rules.
6070         * doc/automake.texi (Debugging Make Rules): Show command to find
6071         out expanded values of variables; point to makefile debugger.
6072         * THANKS: Update.
6073         Prompted by suggestion from Ludovic Courtès and Andy Wingo.
6074
6075 2010-07-27  Patrick Welche  <prlw1@cam.ac.uk>  (tiny change)
6076
6077         Fix typo in the manual.
6078         * doc/automake.texi (Scripts): Fix typo.
6079
6080 2010-07-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6081
6082         Document current policy for development with git.
6083         * HACKING (Working with git): Overhaul.
6084         Prompted by suggestion from Stefano Lattarini.
6085
6086         Fix AM_COND_IF for gone-invalid condition shell expression.
6087         * m4/cond-if.m4 (AM_COND_IF): test contents of $COND_TRUE
6088         variable, rather than re-evaluating the shell expression for
6089         the condition.
6090         * tests/cond40.test: Extend test.
6091         * NEWS: Update.
6092
6093         Avoid syntax error if IF-TRUE part of AM_COND_IF expands empty.
6094         * m4/cond-if.m4 (AM_COND_IF): Ensure IF-TRUE part is never empty
6095         to avoid shell syntax error if the m4 expansion is empty.
6096         * tests/cond40.test: Enhance test.
6097
6098         Coverage: bogus option to AM_INIT_AUTOMAKE.
6099         * tests/init2.test: New test.
6100         * tests/Makefile.am: Update.
6101
6102 2010-07-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
6103
6104         Modernize and improve test scripts `subdir*.test'.
6105         * tests/subdir.test: Enable `errexit' shell flag, and related
6106         changes.  Use the `configure.in' stub created by `./defs',
6107         rather than writing one from scratch.
6108         * tests/subdir2.test: Likewise.
6109         * tests/subdir4.test: Likewise.
6110         * tests/subdir3.test: Enable `errexit' shell flag, and related
6111         changes.  Do not create useless dummy source files.
6112         * tests/subdir5.test: Make grepping of Makefile.in (in topdir
6113         and in subdirs) stricter.  Some minor changes to keep it more
6114         in sync with the related test `subdir8.test'.
6115         * tests/subdir8.test: Likewise (but with the related test being
6116         `subdir5.test' here).
6117         * tests/subdir6.test: Cosmetic change in spacing.
6118         * tests/subdir9.test: Define and use new variable `$distdir'.  Add
6119         trailing `:' command.
6120         * tests/subdir10.test: Cosmetic consistency-related change.
6121         * tests/subdirbuiltsources.test: Cosmetic changes in spacings.
6122         (configure.in): Use stub created by `./defs', rather than writing
6123         it from scratch.  Do not use obsoleted and/or deprecated forms of
6124         autoconf/automake macros.
6125
6126         Modernize and improve test scripts `dist*.test'.
6127         * tests/distcleancheck.test: Do not add useless `-e' option to
6128         a $MAKE call.  Extend test by grepping stderr of make.
6129         * tests/distcom2.test: Do not run the same test script on the
6130         Makefile.in twice, but save its output in an intermediate file
6131         instead.  Make grepping of DIST_COMMON definition stricter.
6132         Display the content of more files, to ease debugging.  Add a
6133         trailing `:' command.  Improved heading comments w.r.t. sister
6134         test(s).
6135         * tests/distcom6.test: Likewise, and avoid to uselessly run
6136         autoconf.
6137         * tests/distcom3.test: Ensure verbose printing of captured stdout
6138         and stderr.  Make grepping of captured stderr stricter.  Also,
6139         add trailing `:' command.
6140         * tests/distcom4.test: Declare the target `test' in the generated
6141         Makefile.am as `.PHONY'.  Display content of more files, to ease
6142         debugging.  Add trailing `:' command.
6143         * tests/distcom5.test: Likewise.  Also, factor out common sed
6144         script in subroutine `extract_distcommon'.
6145         * tests/distcom7.test: Prefer cat + here-doc over echo to write
6146         test Makefile.am files.  Add a trailing `:' command.
6147         * tests/distname.test: Prefer `gzip -d' over `gunzip'.  Move the
6148         call to `set -e' earlier.  Be stricter and more verbose in the
6149         checking of the generated tarball.
6150         (configure.in): Use the stub provided by ./defs, instead of
6151         writing it from scratch.  Avoid obsoleted constructs.  Remove
6152         useless call to `AM_PROG_CC_C_O'.
6153         * tests/distdir.test: Various minor improvements/normalizations.
6154         * tests/distlinks.test: Likewise.
6155
6156 2010-07-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
6157
6158         Improve and extend test cond5.test.
6159         * tests/cond5.test: Do not blindly sleep 60 seconds before polling
6160         the background automake process, but poll it every 10 seconds for
6161         at most 30 times (this makes the test both faster on good machines,
6162         and more resilient to spurious timeout-due failures when in low
6163         priority or on heavily-loaded systems).
6164         Check also that automake writes the expected error messages on the
6165         standard error.
6166         Enable `errexit' flag, and related changes.
6167         Rely on the `configure.in' stub created by `./defs', rather than
6168         writing one from scratch.
6169
6170 2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6171
6172         Update program --help output to match current GCS.
6173         * configure.ac: Set and substitute PACKAGE_URL if AC_PACKAGE_URL
6174         is not defined, for compatibility to Autoconf < 2.64.
6175         * Makefile.am (do_subst): Substitute PACKAGE_BUGREPORT and
6176         PACKAGE_URL.
6177         (sc_diff_automake_in_automake): Update number of diff lines for
6178         additional substitutions.
6179         * aclocal.in (usage): Use PACKAGE_BUGREPORT.  Point to Automake
6180         home page and GNU general help page.
6181         * automake.in (usage): Likewise.
6182         * doc/automake.texi: New flag PACKAGE_BUGREPORT, to factor email
6183         address.
6184         (Introduction, Creating amhello, amhello Explained, Options):
6185         Use it throughout.
6186         * lib/Automake/Makefile.am (do_subst): Substitute
6187         PACKAGE_BUGREPORT.
6188         * lib/Automake/Config.in ($PACKAGE_BUGREPORT): New global.
6189         * lib/Automake/ChannelDefs.pm: Use it for footer of fatal
6190         messages.
6191
6192         Clean up @var handling in the manual.
6193         * doc/automake.texi: Throughout the manual, lower-case @var
6194         names, replace a few one-character names.
6195
6196 2010-06-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
6197
6198         Fix typo-related bug in test script silent5.test.
6199         * tests/silent5.test: Use $EGREP, not $GREP (which is not even
6200         defined).
6201
6202         Tests: remove useless repetitions of `foreign' automake option.
6203         * tests/multlib.test (configure.in): Remove useless use of
6204         `foreign' option in AM_INIT_AUTOMAKE (the `--foreign' option is
6205         already in $AUTOMAKE by default, so no point in repeating it).
6206         * tests/subobj10.test: Likewise.
6207         * tests/subobj9.test: Likewise.
6208         * tests/lex3.test (Makefile.am): Similarly, remove useless use
6209         of `foreign' option in AUTOMAKE_OPTIONS.
6210         * tests/lex5.test: Likewise.
6211         * tests/pr279.test: Likewise.
6212         * tests/pr279-2.test: Likewise.
6213         * tests/specflg3.test: Likewise.
6214         * tests/target-cflags.test: Likewise.
6215
6216         Drop useless requirement "gzip" in lex5.test.
6217         * tests/lex5.test ($required): Do not list "gzip", as it's
6218         never used.
6219
6220 2010-06-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
6221
6222         Fix bugs in test script silent5.test.
6223         * tests/silent5.test: Fixed a nasty bug (due to the use of grep
6224         instead of egrep) that could have led to false negatives.
6225
6226 2010-06-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
6227
6228         Add a test checking that distributed broken symlinks cause
6229         `make dist' to fail.
6230         * tests/distlinksbrk.test: New test.
6231         * tests/Makefile.am (TESTS): Updated.
6232
6233 2010-06-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6234
6235         Fix minor testsuite issues, update docs, for Yacc/Lex changes.
6236         * doc/automake.texi (Yacc and Lex): Mention AM_YFLAGS, YFLAGS
6237         and AM_LFLAGS, LFLAGS in the order in which they now appear in
6238         the rules.
6239         * NEWS: Update.
6240         * tests/lflags.test, tests/lflags2.test, tests/yflags.test,
6241         tests/yflags2.test: Prefer `make -e' over `make VAR=VAL', to
6242         please maintainer-check.  Ensure generated C files contain a
6243         declaration, to please compilers.
6244
6245 2010-06-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
6246
6247         Fix bugs in Automake Yacc/Lex support w.r.t. $(AM_FLAGS) and
6248         $(FLAGS) precedence.
6249         * automake.in: Fix registration of languages "Lex", "Lex (C++)",
6250         "Yacc" and "Yacc (C++)", so that $(LFLAGS) has precedence over
6251         $(AM_LFLAGS) and $(YFLAGS) has precedence over $(AM_YFLAGS).
6252         * tests/Makefile.am (XFAIL_TESTS): Updated accordingly.
6253         * NEWS: Updated.
6254
6255         New tests, exposing bugs in Automake Yacc/Lex support w.r.t.
6256         $(AM_FLAGS) and $(FLAGS) precedence.
6257         * tests/lflags.test: New test, check that user $(LFLAGS) takes
6258         precedence over automake (AM_LFLAGS) and (foo_LFLAGS).  Still
6259         xfailing.
6260         * tests/lflags2.test: Likewise.
6261         * tests/yflags.test: New test, check that user $(YFLAGS) takes
6262         precedence over automake (AM_YFLAGS) and (foo_YFLAGS).  Still
6263         xfailing.
6264         * tests/yflags2.test: Likewise.
6265         * tests/Makefile.am (TESTS, XFAIL_TESTS): Extended accordingly.
6266
6267 2010-06-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
6268
6269         Modernize, improve and extend tests `suffix*.test'.
6270         * tests/suffix3.test: Enable `errexit' shell flag, and related
6271         changes.
6272         * tests/suffix4.test: Likewise.
6273         * tests/suffix6.test: Likewise, and do not create a useless dummy
6274         source file.
6275         * tests/suffix7.test: Likewise.
6276         * tests/suffix5.test: Enable `errexit' shell flag, and related
6277         changes.  Make grepping of Makefile.in slightly stricter.
6278         * tests/suffix.test: Enable `errexit' shell flag, and related
6279         changes.  Also, do not redirect grep output to /dev/null, as this
6280         might unmotivatedly hide useful information.
6281         * tests/suffix2.test: Move setting of `errexit' shell flag earlier
6282         in the script (just after inclusion of ./defs).  Use a more
6283         idiomatic way to count text occurrences in Makefile.in with
6284         grep.  Do not create useless dummy source files.
6285         * tests/suffix10.test: Ensure verbose printing of captured make
6286         stdout.  Minor cosmetic changes.
6287         * tests/suffix8.test: Likewise.  Also, drop useless call to the
6288         env(1) utility, and make grepping of make output stricter by using
6289         $FGREP rather than plain grep.
6290         * tests/suffix11.test: Likewise.
6291         * tests/suffix12.test: Likewise.
6292         * tests/suffix9.test: Prefer cat + here-doc over echo to append to
6293         the `configure.in' stub.  Cosmetic changes.
6294         * tests/suffix13.test: Cosmetic spacing change.
6295
6296 2010-06-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
6297
6298         Add useful comment in test script ext.test.
6299         * tests/ext.test: Add a comment explaining why an apparently
6300         useless `if' statement is indeed required.
6301
6302 2010-06-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
6303
6304         Add useful comment in test script obsolete.test.
6305         * tests/obsolete.test: Add a comment explaining why we need
6306         an indirection in adding $AUTOUPDATE to $required.
6307
6308         Normalize whitespaces in 'tests/Makefile.am'.
6309         * tests/Makefile.am (TESTS): Use only spaces, not tabs, in the
6310         definition of this variable.
6311
6312         Parallel tests generation: improve comments (tiny change).
6313         * tests/Makefile.am ($(parallel_tests)): Added useful comment to
6314         generated tests.
6315
6316         Tests defs: truly get rid of `$am_defs_included' (unused variable)
6317          * tests/defs.in ($am_defs_included): Remove, its now unused.  It
6318         should have been removed in a previous changeset, but the removal
6319         was done only partially (oversight).
6320
6321 2010-06-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6322
6323         Remove a couple of unneeded conditionals from tests.
6324         * tests/pr243.test, tests/pr266.test, tests/strip.test: No need
6325         for the FOOTEST conditional.
6326
6327 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
6328
6329         Modernize, improve and/or fix various test scripts.
6330         * tests/symlink3.test: Deleted, separated into two new, more
6331         complete tests ...
6332         * tests/forcemiss.test: ... this one ...
6333         * tests/forcemiss2.test: ... and this one.
6334         * tests/symlink2.test: Enable `errexit' shell flag, make test
6335         stricter, and skip it if symlink creation is not supported.
6336         * tests/postproc.test: Enable `errexit' shell flag, related
6337         changes, and a couple of unrelated cosmetic changes.
6338         * tests/recurs.test: Use the `configure.in' stub created by
6339         `./defs', rather than writing one from scratch.  Make grepping
6340         of Automake stderr slightly stricter.
6341         * tests/substtarg.test: Likewise.
6342         * tests/strip.test: Likewise, and move the call to `set -e'
6343         earlier (just after the inclusion of `./defs'). Also, make sure
6344         that the script installed by `make install-script' is equal to
6345         the original one.
6346         * tests/substref.test: Use the `configure.in' stub created by
6347         `./defs', rather than writing one from scratch.  Move the call
6348         to `set -e' earlier (just after the inclusion of `./defs').
6349         Avoid to explicitly export CC for configure (that's already done
6350         in ./defs).  Avoid potential problems with unpredictable make
6351         output.  Finally, make grepping of Makefile.in stricter.
6352         * tests/substre2.test: Ensure verbose printing of the captured
6353         make's output, and make its grepping slightly stricter.
6354         * tests/cygwin32.test: Enable `errexit' shell flag, and related
6355         changes.  Also, do not create useless dummy source/data files.
6356         * tests/scripts.test: Likewise.
6357         * tests/recurs2.test: Likewise.  Also, use the `configure.in'
6358         stub created by `./defs'.
6359         * tests/Makefile.am (TESTS): Updated.
6360
6361         Modernize, improve and/or fix tests `pluseq*.test.
6362         * tests/pluseq5.test: Append to configure.in using cat with an
6363         here-doc, not using echo.
6364         * tests/pluseq10.test: Make sure that the captured output of
6365         `make' command is always displayed. Where possible, use $FGREP
6366         instead of grep (this change makes some checks slightly stricter).
6367         * tests/pluseq8.test: Enable `errexit' shell flag, with related
6368         changes.
6369         * tests/pluseq.test: Likewise.  Also, do not create useless dummy
6370         data files, and use better m4 quoting in generated configure.in.
6371         * tests/pluseq2.test: Likewise.  Also, append to configure.in
6372         using cat with an here-doc, not using echo.
6373         * tests/pluseq3.test: Likewise.
6374         * tests/pluseq4.test: Likewise.
6375         * tests/pluseq6.test: Likewise.
6376         * tests/pluseq7.test: Do not create useless dummy source file.
6377         * tests/pluseq9.test: Slightly extended w.r.t. the grepping of
6378         Automake stderr.  Some unrelated cosmetic changes.
6379
6380 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
6381
6382         cscope.test: ensure verbose printing of captured stderr.
6383         * tests/cscope.test: Print captured stderr before failing.
6384
6385 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
6386
6387         Testsuite: ensure verbose printing of captured stderr.
6388         * tests/acloca18.test: Print captured stderr before either failing
6389         or grepping it.  Be sure to send captured stderr to stderr, not to
6390         stdout.
6391         * tests/ansi3b.test: Likewise.
6392         * tests/cond39.test: Likewise.
6393         * tests/configure.test: Likewise.
6394         * tests/missing3.test: Likewise.
6395         * tests/missing6.test: Likewise.
6396         * tests/output-order.test: Likewise.
6397         * tests/pr300-ltlib.test: Likewise.
6398         * tests/python6.test: Likewise.
6399         * tests/python7.test: Likewise.
6400         * tests/python8.test: Likewise.
6401         * tests/python9.test: Likewise.
6402         * tests/subobj.test: Likewise.
6403         * tests/vars3.test: Likewise.
6404         * tests/missing4.test: Likewise, and fix a call to grep not to use
6405         the `-c' flag.
6406         * tests/ansi3.test: Likewise, and rely on the `configure.in' stub
6407         created by `./defs', rather than writing one from scratch.
6408
6409         Enable `errexit' shell flag in various tests.
6410         * tests/backsl.test: Enable the `errexit' shell flag, and
6411         related changes.
6412         * tests/backsl2.test: Likewise.
6413         * tests/block.test: Likewise.
6414         * tests/canon2.test: Likewise.
6415         * tests/canon4.test: Likewise.
6416         * tests/comment2.test: Likewise.
6417         * tests/condlib.test: Likewise.
6418         * tests/cond15.test: Likewise, and prefer $FGREP over grep.
6419         * tests/canon3.test: Likewise.  Also, avoid to create an useless
6420         dummy source file.
6421         * tests/acoutpt2.test: Enable the `errexit' shell flag, and some
6422         related changes.  Do some cosmetic improvements in the generated
6423         `configure.in' file.
6424         * tests/cond4.test: Likewise.
6425         * tests/cond14.test: Likewise.
6426         * tests/condinc.test: Likewise.
6427         * tests/cond7.test: Likewise.  Also, remove useless setting of
6428         AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am.
6429         * tests/ansi.test: Enable the `errexit' shell flag, and related
6430         changes.  Extended, esp. by running autoconf, ./configure and
6431         make, and by looking into the distdir.
6432
6433 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
6434             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6435
6436         Extend tests/README w.r.t. trailing `:' in test scripts.
6437         * tests/README (section "Writing test cases" subsection "Do"):
6438         Explain why apparently redundant trailing `:' and `Exit 0' in
6439         test scripts can indeed be useful.
6440
6441 2010-06-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
6442
6443         Improve determination of PATH separator in bootstrap script.
6444         * bootstrap: Determine what the PATH separator is the same way
6445         autoconf does.
6446
6447         Minor improvements in bootstrap script.
6448         * bootstrap: Consistently use two-spaces indentation.  Cosmetic
6449         improvement to comments.
6450         ($me): New variable, containing program basename.
6451         Prepend it to all error messages.
6452
6453         Testsuite now works with BSD make in parallel mode.
6454         * tests/defs.in: Unset variables __MKLVL__ and MAKE_JOBS_FIFO,
6455         which are exported by BSD make when run in parallel mode, and
6456         which can confuse make processes spawned by our testsuite.
6457         This change fixes a lot of spurious failure when the testsuite
6458         is run with BSD make in parallel mode.
6459
6460 2010-06-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
6461
6462         Modernize, improve and/or fix various test scripts.
6463         * tests/sanity.test: Rely on the `configure.in' stub created by
6464         `./defs', rather than writing one from scratch.
6465         * tests/depend2.test: Likewise.  Also, call `set -e' just after
6466         the inclusion of `./defs', instead that later in the script.
6467         * tests/canon5.test: Avoid a useless `|| Exit 1' after a call to
6468         $AUTOMAKE, and improve the positioning of an $ACLOCAL call.
6469         * tests/exeext4.test: Use $FGREP instead of grep, where possible.
6470         Make auxiliary rules in the generated Makefile more silent.
6471         These changes make some checks slightly stricter.
6472         * tests/ext2.test: Call `Exit 1' if inclusion of `./defs' fails.
6473         * tests/gettext2.test: Place final `:' at the end of the script,
6474         rather than in the middle.
6475         * tests/exeext.test: Call `set -e' just after the inclusion of
6476         `./defs', instead that later in the script.
6477         * tests/extra5.test: Likewise.
6478         * tests/confdeps.test: Likewise.  Also, prefer `mv -f' over
6479         plain `mv', just to be sure.
6480         * tests/depcomp.test: Enable `errexit' shell flag, with related
6481         changes.  Also, modernize the generated configure.in.
6482         * tests/cond9.test: Likewise.  Also, rely on the `configure.in'
6483         stub created by `./defs', rather than writing one from scratch.
6484         * tests/cond10.test: Likewise.
6485         * tests/depcomp2.test: Likewise.
6486         * tests/depend3.test: Likewise.
6487         * tests/distcom7.test: Likewise.
6488         * tests/fortdep.test: Likewise.  Also, remove definition of
6489         AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am,
6490         since that flag is already provided by $AUTOMAKE.
6491         * tests/mdate.test: Made stricter, by checking that Automake
6492         actually failed, and by making a stricter grep on the error
6493         message.  Also, set shell `errexit flag'.
6494         * tests/python2.test: Improved verbose messages.
6495
6496         Make test `ammissing.test' stricter.
6497         * tests/ammissing.test: Fail if $ACLOCAL succeeds unexpectedly.
6498         Enable `errexit' shell flag.
6499
6500 2010-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
6501             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6502
6503         Fix error in generation of parallel tests.
6504         * tests/defs.in ($am_skip_defs): New variable, to be used when
6505         ./defs must be sourced multiple times.  If set, unset it and
6506         only define $srcdir; otherwise, also go through the rest of
6507         the script.
6508         ($am_defs_included): Remove, no more needed.
6509         * tests/Makefile.am ($(parallel_tests)): Update accordingly,
6510         using only $srcdir from defs.
6511         Fixes potential test failures of tests that use $required.
6512
6513 2010-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
6514
6515         Enable `errexit' shell flag in some test scripts.
6516         * tests/subcond.test: Enabled `errexit' shell flag, and related
6517         minor changes.
6518         * tests/subst.test: Likewise.
6519         * tests/vars.test: Likewise.
6520         * tests/version4.test: Likewise.
6521         * tests/vpath.test: Likewise.
6522         * tests/vtexi2.test: Likewise.
6523         * tests/werror.test: Likewise.
6524         * tests/whoami.test: Likewise.
6525         * tests/tags.test: Likewise, and avoid to crate an useless dummy
6526         header file.
6527         * tests/acsilent.test: Likewise, and don't use an easily-avoided
6528         command substitution.
6529         * tests/unused.test: Likewise, and don't use an easily-avoided
6530         command substitution.
6531         * tests/version.test: Likewise, and avoid deprecated constructs
6532         in the generated `configure.in'.
6533         * tests/version2.test: Likewise, and avoid deprecated constructs
6534         in the generated `configure.in'.
6535
6536 2010-06-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
6537             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6538
6539         Improve declaration of dependencies in the testsuite.
6540         * tests/Makefile.am (check_SCRIPTS): Remove.  Instead, let ...
6541         ($(TEST_LOGS)): ... all test logs depend on the scripts.
6542         * test/gen-parallel-tests: For each parallel test foo-p.test,
6543         let `foo-p.log' also depend on `foo.test', since it is sourced.
6544
6545 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6546
6547         Coverage for TAGS_DEPENDENCIES warning.
6548         * tests/tags2.test: New test.
6549         * tests/Makefile.am: Update.
6550
6551         Coverage for use of anachronistic variables.
6552         * tests/oldvars.test: New test.
6553         * tests/Makefile.am: Update.
6554
6555         Testsuite coverage for bogus macro file serial numbers.
6556         * tests/acloca18.test: Also test ill-formed serial numbers
6557         and serial numbers after macro definitions.
6558
6559         Coverage for aclocal diagnosing underquoted macros.
6560         * tests/acloca23.test: New test.
6561         * tests/Makefile.am: Update.
6562
6563 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6564
6565         Prefer AUTOMAKE_fails over `$AUTOMAKE | grep' in tests.
6566         * tests/ldadd.test: Enable errexit.  Use AUTOMAKE_fails so
6567         the verbose log contains all output.
6568         * tests/mdate.test: Likewise.
6569         Prompted by Stefano Lattarini's change to discover.test.
6570
6571 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6572
6573         More minor message fixes.
6574         * aclocal.in (scan_file): Fix recommended info command line.
6575         * automake.in (handle_lib_objects): No need to prepend function
6576         name to prog_error message.
6577         (handle_tags): Add missing word and missing space in error
6578         message.
6579         (handle_dist): Add missing closing single quote in message.
6580         Line-wrap one long message for readability.
6581
6582 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
6583             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6584
6585         Fix distcheck failure with distributed generated parallel tests.
6586         * tests/Makefile.am ($(parallel_tests)): Cope with $(srcdir)
6587         being different from the value at developer `make dist' time.
6588         * tests/defs.in: Protect against multiple inclusion, by using ...
6589         ($am_defs_included): ... this new variable.
6590         ($srcdir): Do not compute, but simply define to `@abs_srcdir@'
6591         as substituted by configure.
6592         Report, suggestions and first fix by Ralf Wildenhues, final
6593         patch by Stefano Lattarini.
6594
6595 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
6596
6597         Improve tests link*.test (enable `errexit' shell flag).
6598         * tests/link_c_cxx.test: Enable `errexit shell flag, and related
6599         changes.  Also, do not create useless source files.
6600         * tests/link_dist.test: Likewise.
6601         * tests/link_f90_only.test: Likewise.
6602         * tests/link_f_only.test: Likewise.
6603         * tests/link_fc.test: Likewise.
6604         * tests/link_fccxx.test: Likewise.
6605         * tests/link_fcxx.test: Likewise.
6606
6607 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6608
6609         Improve ext.test semantics, avoid OpenBSD sh errexit issue.
6610         * tests/ext.test: Inside shell compound command, use
6611         `if $cmd; then Exit 1; fi' rather than `$cmd && Exit 1', to
6612         fix failure with OpenBSD sh introduced with last patch.
6613         Actually ensure that a rule for .EXT.o is created for each
6614         known extension EXT.
6615
6616 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
6617
6618         Enable `errexit' shell flag in some test scripts.
6619         * tests/dash.test: Enable `errexit' shell flag, and related
6620         changes.
6621         * tests/defun.test: Likewise.
6622         * tests/defun2.test: Likewise.
6623         * tests/dejagnu.test: Likewise.
6624         * tests/double.test: Likewise.
6625         * tests/distcom2.test: Likewise.
6626         * tests/empty2.test: Likewise.
6627         * tests/empty3.test: Likewise.
6628         * tests/empty4.test: Likewise.
6629         * tests/exdir.test: Likewise.
6630         * tests/ext.test: Likewise.
6631         * tests/extra.test: Likewise.
6632         * tests/extra2.test: Likewise.
6633         * tests/extra3.test: Likewise.
6634         * tests/extra4.test: Likewise.
6635         * tests/flibs.test: Likewise.
6636         * tests/fnoc.test: Likewise.
6637         * tests/fo.test: Likewise.
6638         * tests/instexec.test: Likewise.
6639         * tests/ltdeps.test: Likewise.
6640         * tests/nodep.test: Likewise.
6641         * tests/nodepcomp.test: Likewise.
6642         * tests/f90only.test: Likewise, and remove botched/obsoleted
6643         comments and unnecessary commands.
6644         * tests/fonly.test: Likewise, and remove botched/obsoleted
6645         comments and unnecessary commands.
6646         * tests/discover.test: Likewise, and made stricter.
6647
6648         Enable `errexit' shell flag in all tests cxx*.test.
6649         * tests/cxx.test: Enabled `errexit' shell flag, and related
6650         minor changes.
6651         * tests/cxxansi.test: Likewise.
6652         * tests/cxxcpp.test: Likewise.
6653         * tests/cxxlibobj.test: Likewise.
6654         * tests/cxxlink.test: Likewise.
6655         * tests/cxxo.test: Likewise.
6656
6657         Enable `errexit' shell flag in various tests.
6658         * tests/acoutnoq.test: Enabled `errexit' shell flag, and related
6659         minor changes.
6660         * tests/acoutpt.test: Likewise.
6661         * tests/acoutqnl.test: Likewise.
6662         * tests/amassign.test: Likewise.
6663         * tests/ansi2.test: Likewise.
6664         * tests/ansi4.test: Likewise.
6665         * tests/badprog.test: Likewise.
6666         * tests/checkall.test: Likewise.
6667         * tests/clean.test: Likewise.
6668         * tests/colneq2.test: Likewise.
6669         * tests/colon.test: Likewise.
6670         * tests/colon5.test: Likewise.
6671         * tests/colon6.test: Likewise.
6672         * tests/comment.test: Likewise.
6673         * tests/compile_f90_c_cxx.test: Likewise.
6674         * tests/compile_f_c_cxx.test: Likewise.
6675         * tests/cond3.test: Likewise.
6676         * tests/cond6.test: Likewise.
6677         * tests/cond13.test: Likewise.
6678         * tests/conf2.test: Likewise.
6679         * tests/confvar.test: Likewise.
6680         * tests/confvar2.test: Likewise.
6681         * tests/cond8.test: Likewise, plus a cosmetic change.
6682         * tests/confh4.test: Likewise.  Also, add in the heading comments
6683         an excerpt from the original bug report which motivated the
6684         creation of this test, to make its purpose clearer.
6685
6686 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6687
6688         Rewrite manual to be gender-neutral.
6689         * doc/automake.texi (GNU Build System)
6690         (Standard Directory Variables, General Operation, CVS)
6691         (Hard-Coded Install Paths, Dependencies As Side Effects):
6692         Rewrite text to not contain gender-specific pronouns when
6693         speaking about developers or users, either by avoiding pronouns
6694         or by addressing them as `you' instead.
6695         * THANKS: Update.
6696         Report by Christina Gratorp.
6697
6698         * AUTHORS: Update.
6699
6700 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
6701
6702         Tiny fix in silent8.test (display output of `make' command).
6703         * tests/silent8.test: Make sure that the captured output of `make'
6704         command is always displayed.
6705
6706         Make tests on user extensibility of silent-rules mode stricter.
6707         * tests/silent6.test: Made stricter w.r.t. the grepping of the
6708         output produced by `make'.
6709         * tests/silent7.test: Likewise.
6710
6711         Tests on silent-mode for C/Libtool made stricter.
6712         * tests/silent.test: Made stricter w.r.t. the grepping of the
6713         output produced by `make'.
6714         * tests/silent2.test: Likewise.
6715         * tests/silent4.test: Likewise.
6716         * tests/silent9.test: Likewise.
6717         * tests/silent3.test: Likewise, and add a final `make distclean'
6718         command to keep it better in sync with tests/silent{4,9}.test.
6719
6720         Improved test silent5.test.
6721         * tests/silent5.test: Remove by hand all generated C files after
6722         non-verbose builds, to ensure the following builds are clean.
6723         Try to clean and rebuild with the same verbosity and without
6724         removing generated sources in between, to check that this does
6725         not trigger a different set of rules.  Make grepping of make's
6726         output stricter.  Improved/added some comments.
6727
6728         New tests for Automake silent-mode with Fortran.
6729         * tests/silentf77.test: New test.
6730         * tests/silentf90.test: Likewise.
6731         * tests/Makefile.am (TESTS): Updated accordingly.
6732
6733         New test `silentcxx.test' (Automake silent-mode with C++).
6734         * tests/silentcxx.test: New test.
6735         * tests/Makefile.am (TESTS): Updated accordingly.
6736
6737         New test `silentyacc.test' (Automake silent-mode with Yacc).
6738         * tests/silentyacc.test: New test.
6739         * tests/Makefile.am (TESTS): Updated accordingly.
6740
6741         New test `silentlex.test' (Automake silent-mode with Lex).
6742         * tests/silentlex.test: New test.
6743         * tests/Makefile.am (TESTS): Updated accordingly.
6744
6745         Relax tests on silent-rules to cater to overly verbose makes.
6746         * tests/silent.test: When testing silent builds, don't fail if
6747         make's output simply contains the `mv' substring, but only if
6748         it contains the `mv ' substring (note the trailing space).
6749         * tests/silent2.test: Likewise.
6750         * tests/silent3.test: Likewise.
6751         * tests/silent4.test: Likewise.
6752         * tests/silent5.test: Likewise.
6753         * tests/silent9.test: Likewise.
6754
6755 2010-05-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
6756
6757         Extend test on `nostdinc' automake option.
6758         * tests/nostdinc.test: Enable `errexit' shell flag.  Related and
6759         unrelated minor changes.  Make the grepping of the generated
6760         Makefile.in slightly stricter.  Generate and run configure, so that
6761         the generated Makefile can be grepped too.
6762
6763 2010-05-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6764
6765         Make gnupload portable to EBCDIC hosts.
6766         * lib/gnupload: Use literal newline as argument for 'tr' rather
6767         than \015, for EBCDIC hosts.  Also, avoid unportable nested
6768         double-quotes and backquotes.
6769         * THANKS: Update.
6770         Report from Eric Blake and Steve Goetze via gnulib.
6771
6772 2010-05-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
6773
6774         Fix Autoconf version required by Automake's configure.
6775         Automake configure script used to tell that automake required
6776         autoconf 2.60 or later, but then it checked for autoconf >= 2.62,
6777         and if that was not found, it gave an error saying that Automake
6778         required configure 2.61a-341 or later.  This change should
6779         eliminate such inconsistencies.
6780         * configure.ac ($required_autoconf_version): New variable.
6781         Use it throughout.
6782
6783 2010-05-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6784
6785         Fix truncated comment in Makefile.am.
6786         * Makefile.am (sc_tests_logs_duplicate_prefixes): Fix unfinished
6787         sentence in comment.
6788         Report by Stefano Lattarini.
6789
6790         Relax silent8.test for NetBSD make.
6791         * tests/silent8.test: Accept ./foo.info in output as well.
6792
6793         Fix unportable sed script in maintainer-check test.
6794         * Makefile.am (sc_tests_Exit_not_exit): Rewrite sed script to
6795         not contain semicolon after 'b' or brace commands, for NetBSD.
6796
6797         Wildcards are not portable to NetBSD make.
6798         * doc/automake.texi (Wildcards): Document portability issue.
6799         * tests/extra10.test, tests/extra11.test, tests/extra12.test:
6800         Require GNU make.
6801
6802 2010-05-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
6803
6804         Make test for configure.in vs. configure.ac stricter.
6805         * tests/configure.test: Use a configure.in file that provokes
6806         an automake error, to ensure configure.ac is preferred.
6807
6808         Avoid possible false negatives in dejagnu7.test.
6809         * tests/dejagnu7.test: Enable shell `errexit' flag.  Also, avoid
6810         unportable use of fgrep option `-e'.
6811
6812         Fix conflnk3.test to work with Solaris/Heirloom Sh.
6813         * tests/conflnk3.test: Use `test -r FILE' and `test ! -r FILE'
6814         instead of respectively `test -e FILE' and `test ! -e FILE',
6815         since Solaris Sh doesn't grok the latter.  Do not SKIP the test
6816         if the shell doesn't support `test -e'.
6817
6818 2010-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6819
6820         Warning and error message formatting cleanups.
6821         * aclocal.in (parse_arguments, main): Remove trailing period or
6822         newline in error or warning messages, avoid capitalization of
6823         the first word of a message.
6824         * automake.in (check_user_variables, handle_languages)
6825         (handle_ltlibraries, scan_aclocal_m4, scan_autoconf_config_files)
6826         (scan_autoconf_files, cond_stack_if, require_file_internal)
6827         (usage, generate_makefile, parse_arguments): Likewise.
6828         * lib/Automake/ChannelDefs.pm (set_strictness): Likewise.
6829         * lib/Automake/Configure_ac.pm (find_configure_ac): Likewise.
6830         * lib/Automake/Options.pm (set_strictness): Likewise.
6831         * lib/Automake/Rule.pm (define): Likewise.
6832         * lib/Automake/Variable.pm (define, variables_dump): Likewise.
6833         * tests/ltinstloc.test, tests/suffix11.test: Adjust expected
6834         error message.
6835         * lib/Automake/Channels.pm (setup_channel): Reword error message
6836         to be the same as in msg.
6837
6838         Fix placing of ellipses in English text and synopses.
6839         * Makefile.am: Be sure to add a space before `...' in natural
6840         language text.
6841         * automake.in (scan_autoconf_traces): Likewise.
6842         * lib/Automake/Rule.pm (define): Likewise.
6843         * lib/Automake/Variable.pm (define): Likewise.
6844         * lib/am/dejagnu.am: Likewise.
6845         * lib/am/progs.am: Likewise.
6846         * lib/gnupload (dprint, upload): Likewise.
6847         * tests/confdeps.test: Likewise.
6848         * tests/location.test: Adjust expected output.
6849         * automake.in (usage): In synopsis, use singular for OPTION,
6850         * remove space before ellipsis.
6851         * aclocal.in (usage): Likewise.  Also, fix indentation.
6852
6853         Fix more duplicate message prefixes.
6854         * lib/Automake/XFile.pm (seek): Do not prepend $me.
6855         ($me): Remove now-unused package-global.
6856         * aclocal.in (check_acinclude): Remove duplicate 'warning: '
6857         prefix.
6858
6859         Fix typo in manual.
6860         * doc/automake.texi (Simple Tests using parallel-tests): Add
6861         missing closing parenthesis.
6862
6863         Fix leftover call to removed function macros_dump.
6864         * automake.in (read_main_am_file): Call variables_dump, not
6865         macros_dump.  Print actual error before list of variables.
6866
6867 2010-04-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
6868
6869         Minor improvements in comments of test `silent3.test'.
6870         * tests/silent3.test: Tell to keep it in sync with `silent9.test'
6871         too.
6872
6873 2010-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6874
6875         testsuite: ensure verbose printing of captured output.
6876         * tests/acloca14.test, tests/acloca18.test, tests/aclocal.test,
6877         tests/fort2.test, tests/help.test, tests/missing3.test,
6878         tests/missing6.test: Print captured stdout or stderr before
6879         grepping it.
6880
6881 2010-04-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
6882
6883         Make test badopt.test stricter (by enabling `set -e').
6884         * tests/badopt.test: Add call to `set -e'.  Due to this change,
6885         an unexpected failure in the call to `$ACLOCAL' (whose outcome
6886         was previously unchecked) would cause the whole test to fail.
6887         Also, bumped the copyright years.
6888
6889         Make test for configure.in vs. configure.ac stricter.
6890         * tests/configure.test: Use a configure.in file that provokes
6891         an automake error, to ensure configure.ac is preferred.
6892
6893         Use `set -e' in confsub.test (avoids possible false negatives).
6894         * tests/confsub.test: Enable shell `errexit' flag, and related
6895         changes (this helps avoiding some possible minor false negatives).
6896         Also, bumped copyright years.
6897
6898 2010-04-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6899
6900         Fix -Werror handling for presence of configure.in and configure.ac.
6901         * lib/Automake/Variable.pm (Automake::Variable): Do not initialize
6902         $configure_ac at the global level, before command-line arguments
6903         have been parsed.
6904         (require_variables): Initialize it here.
6905         * tests/configure.test: New test.
6906         * tests/Makefile.am: Update.
6907         Report by Stefano Lattarini.
6908
6909 2010-04-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
6910
6911         Avoid possible false negatives in confh5.test.
6912         * tests/confh5.test: Enable shell `errexit' flag, and bumped
6913         copyright years.  Due to this change, any unexpected failure
6914         in calls to $ACLOCAL, $AUTOMAKE, $AUTOCONF or $AUTOHEADER, or
6915         a failure in grepping expected text in output files should now
6916         cause the whole test to fail.
6917
6918 2010-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
6919
6920         Fixed typo in POD documentation of Automake::Channels.
6921         * lib/Automake/Channels.pm: Fixed typo in POD documentation:
6922         @<...> was used instead of C<...>.
6923
6924 2010-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
6925
6926         Refactor tests on Automake TESTS color output.
6927         * tests/color.test: Tests using the expect program moved out to...
6928         * tests/color2.test: ... this new file.
6929         * tests/Makefile.am (TESTS): Extended accordingly.
6930
6931 2010-04-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
6932
6933         Fix typos in comments in test confh5.test
6934         * tests/confh5.test: Fix a couple of typos in comments.
6935
6936         Avoid possible false negatives in canon-name.test.
6937         * tests/canon-name.test: Enable shell `errexit' flag.  Improve
6938         test description.
6939
6940 2010-04-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6941
6942         Print 'warnings are treated as errors' note if needed.
6943         * lib/Automake/Channels.pm: Fix typo in comment.
6944         (_print_message): If -Werror is enabled, print a 'warnings are
6945         treated as errors' note before the first such warning.
6946         * tests/warnopts.test: Adjust comment to mention expected warning.
6947         Adjust code to ignore 'warnings are treated as errors' note.
6948         * tests/location.test: Adjust expected output with -Werror.
6949         * tests/werror4.test: New test.
6950         * tests/Makefile.am: Update.
6951         * NEWS: Update.
6952
6953         Ensure we don't print 'warning:' or 'error:' twice.
6954         * Makefile.am (sc_ensure_testsuite_has_run): New helper rule.
6955         (sc_tests_logs_duplicate_prefixes): New rule, to check for
6956         wrong-looking warning and error messages in the test suite logs.
6957         * aclocal.in (scan_configure_dep, scan_file): Remove duplicate
6958         `warning: ' prefix.
6959         * tests/vars3.test: Rename variable to avoid false positive.
6960
6961         Prepend type to warning, error, and fatal messages.
6962         For the first part of messages of types `error' or `fatal',
6963         prepend `error: ' to the message.  Prepend `warning: ' to
6964         warning messages, whatever the setting of -Werror.
6965         * lib/Automake/Channels.pm (partial): Move up definition.
6966         (_format_message): Emit `header' and `footer' strings only with
6967         the first resp. last part of a set of partial messages.
6968         * lib/Automake/ChannelDefs.pm: Add missing '1;' statement at the
6969         end of the module.
6970         (Automake::ChannelDefs): Setup warning channels with header
6971         `warning: ', error and fatal messages with header `error: '.
6972         * tests/condinc2.test, tests/ltinstloc.test: Adjust expected
6973         error messages.
6974         * tests/comment5.test: Likewise.  Also, include stack notes
6975         should not start with `error:'.
6976         * tests/location.test: Likewise.  Also, try both -Werror and
6977         -Wno-error.
6978         * NEWS: Update.
6979         Report by Bruno Haible.
6980
6981         Fix capitalization of error messages, reword one message.
6982         * lib/Automake/Variable.pm (define): Do not capitalize the first
6983         word in the error message.
6984         * automake.in (require_file_internal): Likewise.  Also, reword
6985         and line-wrap for better readability.
6986         * tests/distcom7.test, tests/pluseq5.test, tests/pluseq9.test:
6987         Adjust tests.
6988
6989         Fix connected warnings about obsolete exeext override.
6990         * lib/Automake/Rule.pm (define): Merge two warnings that belong
6991         together, by setting the 'partial' flag for the first one.
6992
6993         Fix per-Makefile.am setting of -Werror.
6994         Before this patch, 'AUTOMAKE_OPTIONS = -Werror' in one
6995         Makefile.am would carry over to other Makefile.am files
6996         treated afterwards by the same thread, causing inconsistent
6997         and unstable exit status values.
6998         * lib/Automake/Channels.pm (dup_channel_setup)
6999         (drop_channel_setup): Save and restore the setting of
7000         $warnings_are_errors.
7001         * tests/werror3.test: New test.
7002         * tests/Makefile.am: Adjust.
7003         * NEWS: Update.
7004
7005 2010-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
7006
7007         Bugfix in confh5.test w.r.t. Solaris/Heirloom Sh.
7008         * tests/confh5.test: In the generated Makefile.am: do not use
7009         `test ! -e FILE' to check for the non-existence of a file, since
7010         that is not supported by Solaris/Heirloom Sh.
7011
7012         Make test `aclocal3.test' stricter.
7013         * tests/aclocal3.test: Add call to `set -e'.  Fail if $ACLOCAL
7014         succeds unexpectedly.
7015
7016         Add tests checking that symlinks are resolved by `make dist'.
7017         * tests/distlinks.test: New test.
7018         * tests/Makefile.am (TESTS): Updated accordingly.
7019         Suggested by observations from Ralf Wildenhues.
7020
7021 2010-04-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7022
7023         Use -9 for maximum xz compression with dist-xz.
7024         * lib/am/distdir.am (dist-xz, dist, dist-all): Pass -9 to xz.
7025         * NEWS, THANKS: Update.
7026         Report by Pavel Sanda.
7027
7028 2010-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
7029
7030         Avoid possible false negatives in cond46.test.
7031         * tests/cond46.test: Enable shell `errexit' flag (and bumped
7032         copyright years).  Due to this change, the testcase should now
7033         fail on unexpected failures in calls to $ACLOCAL/$AUTOMAKE (whose
7034         outcomes were previously unchecked), and on failures in grepping
7035         the expected diagnostic in Automake stderr.
7036
7037 2010-04-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
7038
7039         Generated tests are now just a thin layer around other tests.
7040         * tests/Makefile.am: Rewrite the rule to generate the `*-p.test'
7041         test scripts so that any of them simply includes the corresponding
7042         `*.test' script (after setting `$parallel_tests' to `yes').
7043         * tests/.gitignore: Add wildcard for temporary files used in the
7044         generation of `*-p.test' tests.
7045
7046 2010-03-30  Stefano Lattarini  <stefano.lattarini@gmail.com>
7047
7048         Avoid an unportable use of `$status' shell variable.
7049         * Makefile.am (path-check): Don't use the `$status' shell variable
7050         in the target's rules, as it's special in Zsh (equivalent to `$?',
7051         and readonly).
7052
7053         Avoid another use of `chmod -R'.
7054         * Makefile.am (path-check): To be safe, do not use `chmod -R' on
7055         $(distdir) before removing it (as Solaris `chmod -R' touches
7056         symlink targets).  Instead, use the cleanup strategy used in
7057         distdir.am.
7058
7059 2010-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7060
7061         Remove uses of @acronym and @sc.
7062         * doc/automake.texi (Public Macros, Limitations on File Names):
7063         Remove all usage of @acronym and @sc in the manual.
7064         Suggested by Karl Berry.
7065
7066 2010-03-13  Karl Berry  <karl@freefriends.org>
7067
7068         GNU hello uses fdl.texi, not gpl.texi.
7069         * doc/automake.texi (Texinfo): Adjust example to upstream
7070         change.
7071
7072 2010-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7073
7074         Formatting cleanups in macro comments.
7075         * automake.in, lib/Automake/Channels.pm,
7076         lib/Automake/FileUtils.pm, lib/Automake/Options.pm,
7077         lib/Automake/Variable.pm, lib/Automake/XFile.pm,
7078         m4/options.m4, m4/substnot.m4: Fix macro comment format.
7079
7080 2010-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
7081             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7082
7083         Avoid generation of `tests/defs-p' file.
7084         * tests/defs.in: In the generated `configure.in' snippet: call
7085         `AM_INIT_AUTOMAKE' with the `parallel-tests' option if the shell
7086         variable `parallel_tests' is set to `yes'.
7087         * tests/Makefile.am (defs-p): Target removed.
7088         (check_SCRIPTS): Removed `defs-p'.
7089         (clean-local-check): Do not unlink `defs-p' anymore.
7090         ($(parallel_tests)): Transformation rules for the test scripts
7091         adjusted.
7092         * tests/gen-parallel-tests: Selection rules for the test
7093         scripts adjusted.
7094         * tests/parallel-tests.test: Set `$parallel_tests' to `yes'
7095         then include `./defs' (rather than simply including `./defs-p').
7096         * tests/parallel-tests2.test: Likewise.
7097         * tests/parallel-tests3.test: Likewise.
7098         * tests/parallel-tests4.test: Likewise.
7099         * tests/parallel-tests5.test: Likewise.
7100         * tests/parallel-tests6.test: Likewise.
7101         * tests/parallel-tests7.test: Likewise.
7102         * tests/parallel-tests8.test: Likewise.
7103         * tests/parallel-tests9.test: Likewise.
7104         * tests/parallel-tests10.test: Likewise.
7105         * tests/README (Section "Writing Test Cases" subsection "Do"):
7106         Adjusted the parts referring to tests checking `parallel-tests'
7107         behaviour.  Some other minor related improvements.
7108         * tests/.gitignore (defs-p): Removed.
7109
7110 2010-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
7111
7112         Remove redundant unset of variable TESTS from some test scripts.
7113         * tests/color.test: Do not unset the `TESTS' variable, as it's
7114         already unset in the `defs' file.
7115         * tests/check5.test: Likewise.
7116         * tests/check8.test: Likewise.
7117         * tests/check9.test: Likewise.
7118         * tests/check10.test: Likewise.
7119         * tests/check11.test: Likewise.
7120         * tests/parallel-tests.test: Likewise.
7121         * tests/parallel-tests3.test: Likewise.
7122         * tests/parallel-tests4.test: Likewise.
7123         * tests/parallel-tests5.test: Likewise.
7124         * tests/parallel-tests6.test: Likewise.
7125         * tests/parallel-tests7.test: Likewise.
7126
7127 2010-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7128
7129         Fix cscope test on systems without working Fortran compiler.
7130         * tests/cscope.test: Skip remainder of test if `$MAKE all' fails.
7131         * THANKS: Update.
7132         Report by Peter Johansson.
7133
7134 2010-02-24  Antonio Diaz Diaz  <ant_diaz@teleline.es>  (tiny change)
7135             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7136
7137         Add lzip compression support.
7138         * automake.in (handle_dist): Recognize dist-lzip.
7139         (make_paragraphs): Map LZIP to dist-lzip.
7140         * doc/automake.texi (Dist): Add dist-lzip.
7141         (Options): Likewise.
7142         * lib/Automake/Options.pm (_process_option_list): Add dist-lzip.
7143         * lib/am/distdir.am
7144         (dist dist-all): Add command to create an lzip-compressed tarball.
7145         (distcheck): Handle lzip-compressed tarballs just like the others.
7146         * tests/defs.in: Test for lzip, too.
7147         * tests/lzip.test: New file, based on nogzip.test.
7148         * tests/Makefile.am (TESTS): Add lzip.test.
7149         * NEWS: Update.
7150
7151 2010-02-22  Karl Berry  <karl@gnu.org>
7152
7153         Improve help message of mdate-sh.
7154         * mdate-sh: mention actual output format in help message.
7155
7156 2010-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7157
7158         Deprecate dist-lzma in favor of dist-xz.
7159         * doc/automake.texi (The Types of Distributions, Options):
7160         Adjust text to reflect renaming of lzma to xz.
7161         * NEWS: Update.
7162         Missing deprecation noted by Antonio Diaz Diaz.
7163
7164 2010-02-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
7165
7166         Add tests about support of wildcards in EXTRA_DIST.
7167         * tests/extra10.test: New test, check basic support of wildcards
7168         in EXTRA_DIST.
7169         * tests/extra11.test: New test, check more complex usage of
7170         wildcards in EXTRA_DIST.
7171         * tests/extra12.test: New test, check usage of wildcards in
7172         EXTRA_DIST when $builddir != $srcdir.
7173         * tests/Makefile.am (TESTS): Updated accordingly.
7174         Necessity of these new tests suggested by Braden McDaniel
7175         and Ralf Wildenhues.
7176
7177 2010-02-08  Simon Josefsson  <simon@josefsson.org>
7178
7179         Fix copyright statement in gnupload script.
7180         * lib/gnupload: Fix copyright statement.
7181
7182 2010-02-06  Dmitry V. Levin  <ldv@altlinux.org>  (tiny change)
7183             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7184
7185         Fix exit status of signal handlers in shell scripts.
7186         The value of `$?' on entrance to signal handlers in shell scripts
7187         cannot be relied upon, so set the exit code explicitly to
7188         128 + SIG<SIGNAL>.
7189         * lib/am/check.am (am__check_pre): Use `exit 143' in signal handler.
7190         * lib/elisp-comp: Likewise.
7191         * lib/install-sh: Likewise.
7192         * lib/ylwrap: Likewise.  Also, fix script to trap signal 13, not 3.
7193         * NEWS, THANKS: Update.
7194         Bug report, analysis, and initial patch by Dmitry V. Levin.
7195
7196 2010-02-06  Karl Berry  <karl@gnu.org>
7197
7198         Improve gnupload usage text.
7199         * gnupload (usage): Shorten to make more likely to fit on a tty
7200         line.  Mention CMD in the synopsis.  With ..., plural is implied.
7201
7202 2010-01-28  Christos Kontas  <xakon@yahoo.com>  (tiny change)
7203
7204         Fix some typos in the manual
7205         * doc/automake.texi (Nested Packages, Rebuilding): Fix typos.
7206
7207 2010-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7208
7209         Fix silent-rules output for disabled dependency tracking.
7210         * lib/am/depend2.am [!%FASTDEP%]: Rework silent-rules variable
7211         expansion code to also work in the case where %AMDEP% expands
7212         to FALSE at config.status time, using new substitution string
7213         %VERBOSE-NODEP%.
7214         * automake.in (verbose_nodep_flag): New function, appending
7215         `@am__nodep@' to the verbose-variable name.
7216         (handle_languages): If dependencies are not disabled, use it to
7217         set %VERBOSE-NODEP%.
7218         * m4/depend.m4: Substitute am__nodep as '_no', so the second
7219         verbose-variable will always expand to an empty string, if
7220         dependencies are enabled.
7221         * tests/silent5.test: Also test --disable-dependency-tracking;
7222         also test per-target flags for non-C language files.
7223         * tests/silent9.test: New test, like silent4.test but disable
7224         dependency tracking.
7225         * tests/Makefile.am: Adjust.
7226         * NEWS, THANKS: Update.
7227         Report by Dmitry V. Levin <ldv@altlinux.org>.
7228
7229 2010-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
7230
7231         Slighty improve tests acoutbs.test and acoutbs2.test.
7232         * tests/acoutbs2.test: Enable `errexit' shell flag.  Check that
7233         autoconf and configure work, that the file `zot' is created by
7234         configure, and that no file containing a backslash in its name is
7235         created.
7236         * tests/acoutbs.test: Likewise, plus updated copyright years.
7237
7238         Fix test acoutbs2.test.
7239         * tests/acoutbs2: In the generated configure.in: add proper calls
7240         to AC_INIT and AM_INIT_AUTOMAKE, and remove explicit definition of
7241         PACKAGE and VERSION. Add a call to aclocal before calling automake.
7242         Updated copyright years.
7243         * tests/Makefile.am (XFAIL_TESTS): Removed acoutbs2.test.
7244
7245         Add forgotten test scripts to $(TESTS).
7246         * tests/Makefile.am (TESTS): Added test scripts present on the
7247         filesystem, which were erroneously left out from $(TESTS):
7248         acoutbs2.test, badopt.test, extra2.test.
7249         (XFAIL_TESTS): Added acoutbs2.test.
7250
7251 2010-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7252
7253         Sync auxiliary files from upstream.
7254         * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub:
7255         Sync from upstream.
7256
7257         Bump copyright years.
7258         * aclocal.in (write_aclocal, version): Bump copyright years.
7259         * automake.in (gen_copyright, version): Likewise.
7260         * doc/automake.texi: Likewise.
7261
7262         Rotate ChangeLog.
7263         * ChangeLog.09: New file, rotated from ...
7264         * ChangeLog: ... here.
7265         * Makefile.am (EXTRA_DIST): Distribute ChangeLog.09.
7266
7267 -----
7268
7269 Copyright (C) 2010, 2011  Free Software Foundation, Inc.
7270
7271 Copying and distribution of this file, with or without modification, are
7272 permitted provided the copyright notice and this notice are preserved.
7273
7274 ;; Variables:
7275 ;; coding: utf-8
7276 ;; End: