Merge branch 'maint'
[platform/upstream/automake.git] / ChangeLog
1 2011-05-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
2
3         automake, aclocal: honour configure-time AUTOCONF and AUTOM4TE
4         Currently, the Automake's own configure script allow definition
5         of AUTOCONF and AUTOM4TE, expected to point respectively to an
6         autoconf and autom4te programs.  But while these definitions are
7         honoured in the Automake's build systems and test suite, they
8         were *not* honoured in the generated `automake' and `aclocal'
9         scripts.  This behaviour, apart from being wrong in that it does
10         not allow the user enough freedom in choosing his tools, also
11         caused inconsistencies in the test suite, brining to spurious
12         failures.
13         Problem reported by Graham Reitz on the automake list; see thread:
14         <http://lists.gnu.org/archive/html/automake/2011-05/msg00022.html>
15         * automake.in ($traces): Use `@am_AUTOCONF', not simply `autoconf'.
16         * aclocal.in ($traces): Use `@am_AUTOM4TE', not simply `autom4te'.
17         * Makefile.am (do_subst): Substitute also `@am_AUTOCONF' and
18         `@am_AUTOM4TE'.
19         * NEWS: Update.
20         * THANKS: Update.
21
22 2011-05-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
23
24         build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too
25         Our build system allows the user to override AUTOCONF and AUTOHEADER
26         at configure time, and honours these overrides in our testsuite.
27         But it didn't do the same with AUTOM4TE, AUTORECONF and AUTOUPDATE.
28         This change fixes that inconsistency.
29         * configure.ac (am_AUTOM4TE, am_AUTOUPDATE, am_AUTORECONF): New
30         AC_SUBSTitutions.  Update comments.
31         * tests/defs.in ($AUTOUPDATE): Default to `@am_AUTOUPDATE@' now.
32         ($AUTOM4TE): New variable, defaulting to `@am_AUTOM4TE@'.
33         ($AUTORECONF): New variable, defaulting to `@am_AUTORECONF@'.
34         * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Update.
35
36 2011-05-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
37             Stefano Lattarini  <stefano.lattarini@gmail.com>
38
39         tests/README: fix example about `make -e' usage
40         * tests/README (Section "Writing test cases" subsection "Do"): When
41         some variable is never initialized in the Makefile, `-e' is not
42         necessary in order to override it.  DESTDIR is such a variable: we
43         ensure that we do not ever initialize it.  And as such, it is quite
44         portable to use:
45           $ make DESTDIR=/foo/bar install
46         and in fact, quite widely used.
47         So our example about when `make -e' is required, which references
48         the `DESTDIR' variable, is poorly chosen, if not downright wrong.
49         Rewrite it to use `prefix' as the overridden variable instead.
50
51 2011-05-27  Stefano Lattarini  <stefano.lattarini@gmail.com>
52
53         testsuite: each test case depends on `defs-static'
54         * tests/Makefile.am ($(TEST_LOGS)): Depends on `defs-static' too.
55         Simplify comments.
56
57 2011-05-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
58
59         testsuite: avoid re-running few tests with 'parallel-tests' option
60         Some tests in our testsuite use the 'simple-tests' driver only
61         marginally, or simply as a mean to conveniently check unrelated
62         invariants.  It makes little sense to force these tests to also
63         run with the 'parallel-tests' Automake option active, as doing so
64         offers no real gain in coverage, while often causing a measurable
65         overhead in execution time (for an already too-slow testsuite).
66         * tests/pr401.test (parallel_tests): Define to "no", to prevent
67         the generation of a sibling test script using the 'parallel-tests'
68         driver.
69         * tests/pr401b.test: Likewise.
70         * tests/pr401c.test: Likewise.
71
72 2011-05-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
73
74         testsuite: allow tests to avoid the use of 'parallel-tests' option
75         * tests/gen-parallel-tests: Do not generate "siblings" for tests
76         that explicitly define the `parallel_tests', whether to "yes" or
77         to any other value.  Extend heading comments to give a rationale
78         for this behaviour.
79         * tests/README: Update.
80
81 2011-05-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
82
83         tests/README: update obsoleted advice
84         * tests/README (Section "Writing test cases" subsection "Do"):
85         Do not suggest to use the `*-p.test' pattern for the names of
86         hand-written tests which use the `parallel-tests' Automake option.
87         Not only is this not respected by the existing tests, but it is
88         more likely to cause conflicts with auto-generated tests.
89         So, suggest to *avoid* using the `*-p.test' pattern in names
90         of hand-written tests instead.
91         (Section "Writing test cases" subsection "Do not"):  When
92         suggesting not to override Makefile variables using command
93         line arguments, do not use the badly outdated variables `U'
94         and 'ANSI2KNR' in the example; instead, use the more common
95         and typical `DESTDIR'.
96
97 2011-05-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
98
99         test defs: rename requirement 'non-cross' -> 'native'
100         * tests/defs.in (non-cross): Rename requirement ...
101         (native): ... to this, which is clearer and fits the
102         existing lingo better.
103         Suggestion by Ralf Wildenhues.
104
105 2011-05-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
106
107         testsuite: be more cross-compile friendly
108         * tests/defs.in (cross_compiling): New subroutine.
109         (am__tool_prefix): New internal variable.
110         (gcc, g++, gcj): Force the use of the correct "tool prefix"
111         when cross compiling.
112         (gfortran, g77, non-cross): New requirements.
113
114 2011-05-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
115
116         tests: fix portability issues in 'repeated-options.test'
117         * tests/repeated-options.test: Do not assume that object files
118         have `.o' suffix and executables have no default suffix; instead,
119         use `$(OBJEXT)' and `$(EXEEXT)'.
120
121 2011-05-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
122
123         tests: fix spurious failure of txinfo21.test on FreeBSD
124         * tests/txinfo21.test: Use the `is_newest' subroutine instead of
125         the `ls -t' hack to to determine whether a file has been updated.
126         This is required because at least FreeBSD `ls' do not sort files
127         with the same timestamp in alphabetical order when using the `-t'
128         option.
129
130 2011-05-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
131
132         tests: fix spurious failure of extradep.test on FreeBSD
133         * tests/extradep.test: When using `ls -t' to determine whether a
134         file has been updated, make sure to use as reference a file whose
135         timestamp is expected to be *strictly* older that that of the file
136         being checked.  This is required because at least FreeBSD `ls' do
137         not sort files with the same timestamp in alphabetical order when
138         using the `-t' option.
139         * tests/extradep2.test: Likewise.
140
141 2011-05-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
142
143         tests defs: allow requirements for compilers (mostly dummy)
144         Most of the new requirements that are now accepted in `$required'
145         as consequence of this patch are still dummy.  They are planned
146         to be implemented only in master (or in some derived branch), but
147         having them here (even just as no-op) will allow for an easier
148         integration/backporting of potential new testcases.
149         * tests/defs.in (cc, c++, fortran, fortran77): New requirements,
150         still dummy.
151         (flex): New requirement, picking LEX for configure.
152         (lex): New requirement, alias for `flex'.  A more appropriate
153         implementation, looking for a generic `lex' program, will follow
154         in the future.
155
156 2011-05-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
157
158         tests: add forgotten test scripts to $(TESTS)
159         * tests/Makefile.am (TESTS): Added test scripts  man[678].test,
160         which have been present on the filesystem and in the repository,
161         but which had erroneously been left out from $(TESTS).
162
163 2011-05-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
164
165         tests: ensure verbose printing of captured make output
166         * tests/libtool7.test: Ensure verbose printing of captured
167         make output.
168         * tests/libtool9.test: Likewise.
169
170 2011-05-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
171
172         tests: fix spurious failure in 'color2.test'
173         * tests/color2.test: If $MAKE contains command-line arguments (as
174         in e.g., "make -j2"), expect's directive "spawn $env(MAKE)" fails
175         spuriously, because it tries to run "$MAKE" as a single command.
176         Fix this with proper uses of the TCL `eval' builtin.
177
178 2011-05-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
179
180         tests: fix self check spurious failure with older bash versions
181         * tests/self-check-cleanup.test: Add trailing `:' to the test code
182         passed to $SHELL, otherwise older versions of bash (at least 2.05
183         and 3.2.39) fail to correctly remove the temporary directory in
184         the exit trap.
185
186 2011-04-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
187
188         testsuite: more environment sanitization
189         * tests/defs: Move the checks verifying that the variables `me',
190         `parallel_tests' and `required' aren't set in the environment ...
191         * tests/defs-static.in: ... in here, with some optimizations to
192         avoid useless forks.  Also, do the same checks for the variables
193         `original_AUTOMAKE' and `original_ACLOCAL' too.
194         * tests/self-check-env-sanitize.test: Update.
195         * tests/Makefile.am (TESTS_ENVIRONMENT): Unset also variables
196         `original_AUTOMAKE' and `original_ACLOCAL'.
197
198 2011-04-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
199
200         tests: fix spurious failure (non-renamed AM_TESTS_SETUP usage)
201         * tests/parallel-tests-reset-term.test: Use AM_TESTS_ENVIRONMENT
202         instead of AM_TESTS_SETUP (which has been removed in commit
203         v1.11-349-g12f48fa).
204         Fix spurious failure introduced by merge `v1.11-781-gfeed175'.
205
206 2011-04-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
207
208         tests: fix spurious failure in a test on TESTS (VPATH-related)
209         * tests/check-tests-in-builddir.test: When not using the
210         parallel-tests option, do not check that VPATH components are
211         not present in the displayed test name, since the simple-tests
212         driver do not try to strip them.
213
214 2011-04-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
215
216         tests: fix spurious failure in self-check-env-sanitize.test
217         * tests/self-check-env-sanitize.test: Open file descriptor `5'
218         to stdout.
219         Fix spurious failure introduced by merge `v1.11-788-g3b0c8d5'.
220
221 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
222
223         test: self check subroutines for skipping/failing of tests
224         * tests/self-check-report.test: New test.
225         * tests/Makefile.am (TESTS): Update.
226
227 2011-04-23  Jim Meyering  <meyering@redhat.com>
228             Stefano Lattarini  <stefano.lattarini@gmail.com>
229
230         test defs: new subroutines for test skipping/failing
231         * tests/defs.in (Exit): Move definition of this function earlier.
232         (warn_, skip_, fail_, framework_failure_): New functions, inspired
233         to the homonyms in gnulib's tests/init.sh.
234         ($stderr_fileno_): New global variable, used by the new functions
235         above.
236         * tests/README: Updated.
237         From a suggestion by Ralf Wildenhues.
238
239 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
240
241         tests: fix typo (copy & paste blunder) in heading comment
242         * tests/maintclean-vpath.test: Correctly refer to the sister test
243         as `maintclean.test', not as `maintclean-vpath.test'.
244
245 2011-04-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
246
247         tests: remove redundant test `mclean.test'
248         * tests/mclean.test: Remove, it's a weak grepping test completely
249         superseded by the much more complete `maintclean.test'.
250         * tests/Makefile.am (TESTS): Update.
251
252 2011-04-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
253
254         testsuite: more environment sanitization
255         * tests/defs.in: Sanity check: abort if any of `parallel_tests'
256         or `required' is in the environment.
257         ($sed_unindent_prog): Initialize to empty, to avoid interferences
258         from the environment.
259         * tests/self-check-me-in-env.test: Renamed to ...
260         * tests/self-check-env-sanitize.test: ... this, and extended.
261         * tests/Makefile.am (TESTS): Update.
262         (TESTS_ENVIRONMENT): Unset variables `parallel_tests' and
263         `required'.  Adjust comments.
264
265 2011-04-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
266
267         tests: in self-checks, use $SHELL, not /bin/sh
268         * tests/self-check-me-in-env.test: Include `./defs-static' to get
269         the definition of `$SHELL'.  Use `$SHELL' instead of `/bin/sh' to
270         execute the tests.
271
272 2011-04-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
273
274         tests: prefer AM_TESTS_ENVIRONMENT to TESTS_ENVIRONMENT
275         * tests/Makefile.am (TESTS_ENVIRONMENT): Renamed to ...
276         (AM_TESTS_ENVIRONMENT): ... this.
277
278 2011-04-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
279
280         tests: don't allow `$me' to be overridden from the environment
281         * tests/defs.in: Sanity check: abort if $me is in the environment.
282         * tests/self-check-me-in-env.test: New test.
283         * tests/Makefile.am (TESTS_ENVIRONMENT): Unset variable `me'.
284         (TESTS): Update.
285         Suggestion by Ralf Wildenhues.
286
287 2011-04-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
288
289         check: rename AM_TESTS_SETUP -> AM_TESTS_ENVIRONMENT
290         The AM_TESTS_SETUP naming was not a good one after all.  It may
291         be technically more correct than AM_TESTS_ENVIRONMENT, but the
292         latter is a better one simply because it is easier to remember,
293         and even if you've never heard of it and only know the semantics
294         of TESTS_ENVIRONMENT, you can have a straightforward way to
295         figure out how AM_TESTS_ENVIRONMENT would work.
296         * tests/check.am (am__check_pre): Update.
297         * doc/automake.in (Simple Tests using parallel-tests): Update.
298         * tests/parallel-tests-am_tests_setup.test: Renamed ...
299         * tests/parallel-tests-am_tests_environment.test: ... to this,
300         and updated.
301         * tests/Makefile.am (TESTS): Update.
302         Suggestion and motivation by Ralf Wildenhues.
303
304 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
305
306         test defs: allow overriding of `$me'
307         * tests/defs.in ($me): Allow overriding by the including test
308         script.  Add some explicative comments.
309
310 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
311
312         coverage: more tests on the parallel-tests driver
313         * tests/parallel-tests-interrupt.test: New test.
314         * tests/parallel-tests-reset-term.test: Likewise.
315         * tests/Makefile.am (TESTS): Update.
316
317 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
318
319         check: new developer-reserved AM_TESTS_SETUP variable
320         For reference, see the discussion at:
321         <http://lists.gnu.org/archive/html/automake-patches/2011-01/msg00213.html>
322         * lib/am/check.am [%?PARALLEL_TESTS%] (am__check_pre): Pass also
323         $(AM_TESTS_SETUP).  Comments updated, and some typos fixed.
324         * doc/automake.texi (Simple Tests using parallel-tests): Document
325         AM_TESTS_SETUP.  Reorder some of the existing documentation a bit.
326         * tests/parallel-tests-am_tests_setup.test: New test.
327         From a suggestion by Ralf Wildenhues.
328
329 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
330
331         depcomp tests: don't reject slower dependency extractors
332         * tests/depcomp8b.test: Add the `--enable-dependency-tracking'
333         option to `configure' invocations, so that slower dependency
334         extractors are not rejected.
335         * tests/depcomp8a.test: Likewise.  Also ...
336         (foo.c): ... since we are at it, fix spacing to be consistent
337         with GNU coding standards.
338
339 2011-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
340
341         m4: add missing serial numbers to a few files
342         Fixes automake bug#8483.
343         * m4/amversion.in: Add serial number.
344         * m4/auxdir.m4: Likewise.
345         * m4/gcj.m4: Likewise.
346         * m4/install-sh.m4: Likewise.
347         * m4/mkdirp.m4: Likewise.
348         * m4/python.m4: Likewise.
349         * m4/runlog.m4: Likewise.
350         * m4/strip.m4: Likewise.
351         * m4/upc.m4: Likewise.
352
353 2011-04-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
354
355         tests: fix few bugs in self checks
356         Related to automake bug#8508.
357         * tests/self-check-cleanup.test: Be laxer when grepping output
358         from `ls -l', to account for ACLs and SELinux-only files.
359         * tests/self-check-dir.test: Source `defs-static' to read in the
360         correct definition for $SHELL.
361         * tests/self-check-me.test: Likewise, and extend a bit.
362         Report from Jim Meyering.
363
364 2011-04-16  Jim Meyering  <meyering@redhat.com>
365
366         depcomp: correct invalid sed invocation
367         * lib/depcomp: Insert missing -e before '/:$/d'.
368         Otherwise, that use of sed would treat '/:$/d' as a file name.
369
370 2011-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
371
372         maintainer check: quote literal `$' in Makefile rule
373         * Makefile.am (sc_tests_PATH_SEPARATOR): Escape literal `$'
374         character in double-quoted string.  Fix a bug in which the rule
375         emitted an erroneously empty substring in its error message.
376
377 2011-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
378
379         tests: fix typo in python5b.test
380         * tests/python5b.test: Remove extra `:' from $PATH redefinition.
381
382 2011-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
383
384         tests: remove redundant settings of `errexit' shell flag
385         * tests/autodist-acconfig.test: Do not set the `errexit'
386         shell flag, as it is already set by `tests/defs'.
387         * tests/autodist-acconfig-no-subdir.test: Likewise.
388         * tests/autodist-aclocal-m4.test: Likewise.
389         * tests/autodist-config-headers.test: Likewise.
390         * tests/autodist-configure-no-subdir.test: Likewise.
391         * tests/autodist-stamp-vti.test: Likewise.
392         * tests/autodist-subdir.test: Likewise.
393         * tests/autodist.test: Likewise.
394         * tests/check-exported-srcdir.test: Likewise.
395         * tests/check-tests-in-builddir.test: Likewise.
396         * tests/check-tests_environment.test: Likewise.
397         * tests/help-python.test: Likewise.
398         * tests/java-check.test: Likewise.
399         * tests/java-extra.test: Likewise.
400         * tests/java-noinst.test: Likewise.
401         * tests/lex-subobj-nodep.test: Likewise.
402         * tests/ltinit.test: Likewise.
403         * tests/m4-inclusion.test: Likewise.
404         * tests/maintclean-vpath.test: Likewise.
405         * tests/parallel-tests-subdir.test: Likewise.
406         * tests/pr8365-remake-timing.test: Likewise.
407         * tests/python-dist.test: Likewise.
408         * tests/python-vars.test: Likewise.
409         * tests/python-virtualenv.test: Likewise.
410         * tests/python5b.test: Likewise.
411         * tests/specflg-dummy.test: Likewise.
412         * tests/yacc-dist-nobuild-subdir.test: Likewise.
413         
414 2011-04-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
415
416         coverage: test for automake bug#8485 (known regression)
417         * tests/yacc-dist-nobuild-subdir.test: New test.
418         * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
419
420 2011-04-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
421
422         test defs: define default $distdir (help reducing duplication)
423         * tests/defs ($distdir): New variable, might be used in
424         testcases checking distribution-related features.
425         * tests/pr9.test: Use it.
426         * tests/subdir9.test: Likewise.
427         * tests/lex3.test: Likewise.
428         * tests/lexvpath.test: Likewise.
429         * tests/remake-moved-m4-file.test: Likewise.
430         * tests/remake-renamed-m4-file.test: Likewise.
431         * tests/remake-renamed-m4-macro-and-file.test: Likewise.
432         * tests/yacc-basic.test: Likewise.
433         * tests/yacc-d-basic.test: Likewise.
434         * tests/yacc-d-vpath.test: Likewise.
435         * tests/yacc-dist-nobuild.test: Likewise.
436         * tests/vtexi3.test: Add comment explaining why we redefine
437         $distdir in this test.
438
439 2011-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
440
441         depcomp: fix bugs in tests and in the depcomp script
442         * lib/depcomp (gcc): Remove duplicated `-e' from sed invocation.
443         * tests/depcomp10.test: Make it executable.  Fix a blunder that
444         has left part of an intended comment not prefixed by `#', thus
445         causing shell syntax errors.  In this same comment, break a
446         too-long reported error message on multiple lines, for clarity.
447         Add reference to the relevant bug report.  Add a comment which
448         explains why the test result 'skipped' if the first "make" call
449         fails.  Add other useful comments.
450         * tests/depcomp9.test: Slightly improve comments.
451
452 2011-04-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
453
454         Fix hp depmode for VPATH builds with GNU make.
455         * lib/depcomp: Be sure to remove VPATH-prefixed object from
456         dependency output when creating stub rule.
457         * tests/depcomp10.test: New test.
458         * tests/Makefile.am (TESTS): Update.
459         * NEWS: Update.
460         Report by Bruno Haible.
461
462 2011-04-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
463
464         test defs: fix 'javac' requirement for older JDK versions
465         The Java compiler from JDK 1.5 (and presumably earlier versions)
466         cannot handle the `-version' option by itself; and while it does
467         print the version number, it then errors out with an usage error:
468           $ javac -version
469           javac 1.5.0_22
470           javac: no source files
471           Usage: javac <options> <source files>
472           ...
473         Luckily, adding the `-help' option to the `javac' invocation
474         seems to fix this problem.
475         * tests/defs.in (javac): Pass also the `-help' option to the
476         `javac' program.  Add a comment explaining why it is needed.
477         Report from Ralf Wildenhues.
478
479 2011-04-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
480
481         test defs: new requirement for the default java compiler
482         * tests/defs.in (for tool in $required): New requirement 'javac'.
483         * tests/java.test: Use it instead of ad-hoc configure check.
484         * tests/java-check.test: Likewise.
485         * tests/java-extra.test: Likewise.
486         * tests/java-noinst.test: Likewise.
487         * tests/instfail-java.test: Likewise.
488         * tests/instdir-java.test: Likewise.
489
490 2011-04-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
491
492         java: check_JAVA does not cause compilation by "make all" anymore
493         Fixes automake bug#8234.
494         * automake.in (handle_java): Make stamp of class files built from
495         java sources in $(check_JAVA) a dependency of `check' target, not
496         `all' target.
497         * tests/java-check.test: New test.
498         * tests/Makefile.am (TESTS): Update.
499         * NEWS: Update.
500         * THANKS: Update.
501         Report from Petteri Räty.
502
503 2011-04-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
504             Bruno Haible  <bruno@clisp.org>
505
506         coverage: add tests on remake rules in more complex situations
507         * tests/defs (using_gmake): New function.
508         (for tool in $required): Use it when $tool is 'GNUmake'.
509         * tests/remake-moved-m4-file.test: New test.
510         * tests/remake-deleted-m4-file.test: Likewise.
511         * tests/remake-renamed-m4-file.test: Likewise.
512         * tests/remake-renamed-m4-macro-and-file.test: Likewise.
513         * tests/remake-renamed-m4-macro.test: Likewise.
514         * tests/remake-add-acsubst-gnulib.test: Likewise.
515         * tests/remake-add-header-gnulib.test: Likewise.
516         * tests/remake-remove-header-gnulib.test: Likewise.
517         * tests/Makefile.am (TESTS): Update.
518
519 2011-04-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
520
521         typofix in 'tests/defs'
522         * tests/defs: Fix typo (`itslef' instead of `itself') in
523         comments.
524
525 2011-04-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
526
527         coverage: more on java support EXTRA_ and noinst_ prefixes
528         * tests/java-extra.test: New test, checking support for the
529         prefix `EXTRA_' with the JAVA primary.
530         * tests/java-noinst.test: New test, checking support for the
531         prefix `noinst_' with the JAVA primary.
532         * tests/Makefile.am (TESTS): Update.
533
534 2011-04-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
535
536         Clarify regex code in depcomp.
537         * lib/depcomp: Add comment why we don't need regex-escaping here.
538         Suggested by Stefano Lattarini.
539
540 2011-04-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
541
542         Fix makedepend depmode for VPATH builds.
543         * lib/depcomp [makedepend]: Remove any VPATH prefix from the
544         object file name, so a rebuild doesn't attempt to update the
545         .Po files in the source tree.
546         * tests/depcomp9.test: New test.
547         * tests/Makefile.am (TESTS): Update.
548         * NEWS: Update.
549
550 2011-04-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
551
552         tests: fix timestamp-related failures
553         Fixes automake bug#8365.
554         * tests/aclocal6.test: Sleep before modifying m4 files that should
555         trigger remake rules.  Remove incorrect/obsoleted comments.
556         * tests/subdir5.test: Likewise, and extend a bit.
557         * tests/subdir8.test: Likewise.
558         * tests/pr8365-remake-timing.test: New xfailing test.
559         * tests/Makefile.am (TESTS): Update.
560         Report from Sam Steingold.
561
562 2011-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
563
564         Create subdirs for generated sources even when not dep tracking.
565         * automake.in (handle_single_transform): If $object is derived
566         and lands in subdir, be sure to output a dirstamp dependency.
567         * tests/yacc5.test: Avoid falsely matching the dirstamp
568         dependency when grepping for a rule.
569         * tests/lex-subobj-nodep.test: New test.
570         * tests/Makefile.am (TESTS): Update.
571         * THANKS: Update.
572         Report by Ignacy Gawedzki.
573
574         Fix locale issue in check-exported-srcdir.test.
575         * tests/check-exported-srcdir.test: Reformulate glob to not fail
576         in a locale that ignores or interleaves character case.
577
578 2011-04-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
579
580         docs: better visibility for aclocal in the index
581         * doc/automake.texi (@menu): Rename title for entry 'configure'
582         from "Scanning configure.ac or configure.in" to the more precise
583         "Scanning configure.ac, using aclocal".
584         (@detailmenu): Adjust.
585         (@node configure): Adjust, and extend @cindex calls accordingly.
586         * THANKS: Update.
587         From a report by Maynard Johnson.
588
589 2011-03-30  Stefano Lattarini  <stefano.lattarini@gmail.com>
590
591         tests: improve tests on "maintainer-clean" target
592         * tests/aclocal6.test: Move checks related to "maintainer-clean"
593         functionalities into ...
594         * tests/maintclean-vpath.test: ... this new test.
595         * tests/maintclean.test: Update heading comments.  Extend to also
596         test subdirs.  Remove useless disabling of YACC.  Fix m4 quoting
597         in configure.in.  Add a trailing `:' command.  Remove extra blank
598         lines.
599         * tests/Makefile.am (TESTS): Update.
600
601 2011-03-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
602
603         tests: fix unindent to use printf not echo for script.
604         * tests/defs.in: Use printf rather than echo, as the latter may
605         interpret the backslashes in the sed script.  Fixes test
606         failures with dash as /bin/sh.
607
608 2011-03-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
609             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
610
611         maintcheck: look for problematic names of testcases
612         The configure.in stub created by default by `tests/defs' obtains
613         the first argument of AC_INIT from the test name, and this can
614         cause some supported autoconf versions to fail with a spurious
615         error if that test name contains the name of an m4 or m4sugar
616         builtin or macro (e.g., `defn' or `m4_undefine').
617         See for example the bug fixed by commit v1.11-287-g1325a8a.
618         This change add a maintainer check that warns about test names
619         which are possibly problematic in this regard.
620         * Makefile.am (sc_test_names): New maintainer-check target.
621         (syntax_check_rules): Add it.
622         (m4_builtins): New helper variable.
623         (TESTS): Updated according to the following renamings.
624         * tests/include.test: Renamed ...
625         * tests/hdr-vars-defined-once.test: ... to this.
626         * tests/sinclude.test: Renamed ...
627         * tests/m4-inclusion.test: ... to this, and simplified
628         accordingly.
629         * tests/include2.test: Renamed ...
630         * tests/dist-included-parent-dir.test: ... to this, for
631         consistency.
632
633 2011-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
634
635         tests: fix bug in alloca*.test
636         * tests/alloca.test: Make grepping of automake stderr stricter,
637         add a trailing `:' command; also, add AC_PROG_CC to configure.in,
638         and create a dummy alloca.c file, to ensure that we fail for the
639         proper reason.
640         * tests/alloca2.test: Likewise.  Also, look for LT_INIT, not
641         AC_PROG_LIBTOOL, in the error message (bug introduced with commit
642         v1.11-315-gd51e7b7 "libtool: suggest LT_INIT if LTLIBRARIES
643         primary is used").
644         From a report by Patrick Welche.
645
646 2011-03-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
647
648         cosmetics: better use of m4 quoting and m4sugar macros
649         * m4/dmalloc.m4: Better use of m4 quoting.  Bump serial number.
650         * m4/gcj.m4: Likewise.
651         * m4/init.m4: Likewise.
652         * m4/install-sh.m4: Likewise.
653         * m4/lex.m4: Likewise.
654         * m4/multi.m4: Likewise.
655         * m4/option.m4: Likewise.
656         * m4/python.m4: Likewise.
657         * m4/sanity.m4: Likewise.
658         * m4/cond.m4: Likewise.  Also, prefer the m4sugar macro 'm4_if'
659         over the plain m4 macro 'ifelse'.
660         * m4/depend.m4: Likewise.
661
662 2011-03-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
663
664         tests: add test about deprecated use of AC_INIT
665         * tests/deprecated-acinit.test: New test, check that automake
666         and autoconf complain about an old-style AC_INIT call used with
667         a new-style AM_AUTOMAKE_INIT call.
668         * tests/Makefile.am (TESTS): Update.
669
670 2011-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
671
672         tests: fix bug (comments-in-var-defn.test + autoconf 2.62)
673         * tests/comments-in-var-defn.test: The configure.in stub created
674         by default, which has the AC_INIT first argument obtained by the
675         test name, causes autoconf 2.62 to fail with a spurious error
676         message like: "configure.in:1: error: defn: undefined macro:".
677         Thus, to prevent this, the test is renamed to ...
678         * tests/comments-in-var-def.test: ... this.
679         * tests/Makefile.am (TESTS): Updated.
680
681 2011-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
682
683         cosmetics: convert encoding from ISO-8859 to UTF-8
684         * ChangeLog.03: Convert encoding to UTF-8.
685         * ChangeLog.96: Likewise.
686         * ChangeLog.98: Likewise.
687         * NEWS: Likewise.
688         * TODO: Likewise.
689
690 2011-03-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
691
692         tests: extend checks on the 'unindent' shell function
693         * tests/self-check-unindent.test: Also check that multiple
694         instances of 'unindent' can run in parallel (this was not
695         the case when that function used temporary files).
696
697 2011-03-01  Peter Rosin  <peda@lysator.liu.se>
698
699         test defs: unindent without temporary file
700         * tests/defs.in (commented_sed_unindent_prog): Commented Sed program
701         that strips the "proper" amount of leading whitespace.
702         (unindent): Lazily strip comments from the above program and use it
703         to unindent without using a temporary file.
704
705 2011-02-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
706
707         libtool: suggest LT_INIT if LTLIBRARIES primary is used
708         When the LTLIBRARIES primary was used, but $(LIBTOOL) wasn't
709         defined, automake suggested to add a call to AC_PROG_LIBTOOL
710         in configure.ac.  But that macro is deprecated since Libtool
711         version 1.9b (2004-08-29), in favor of the newer LT_INIT.  So
712         suggest the use of this latter macro instead.
713         * lib/Automake/Variable.pm (%_am_macro_for_var): Pair 'LIBTOOL'
714         with 'LT_INIT', not with 'AC_PROG_LIBTOOL'.
715         * tests/libtool4.test: Adjust and extend.  Also, add a call to
716         macro AC_PROG_CC in configure.in, to help ensuring that automake
717         does not fail for the wrong reasons.
718         * tests/ltinit.test: New test, ensure that automake's libtool
719         support works with LT_INIT-based interface.
720         Thanks to Jack Kelly for the suggestion.
721
722 2011-02-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
723
724         tests: add testcases sanity-checking the testsuite
725         Helper subroutines, variables and other pieces of code defined
726         in the `tests/defs' and used by many testcases are non-obvious,
727         and tricky to get to work portably; but until now, they weren't
728         tested at all in a clear and self-contained way.
729         This change should remedy to the situation.
730         * tests/self-check-cleanup.test: New test, check removal of
731         temporary test working directory by `./defs'.
732         * tests/self-check-dir.test: New test, check that tests using
733         `./defs' create a proper temporary directory, and run in it.
734         * tests/self-check-exit.test: New test, check that, in case of
735         failing commands, the correct exit status is passed to the exit
736         trap installed by the `./defs' script.
737         * tests/self-check-is_newest.test: New test, checking the
738         `is_newest' subroutine.
739         * tests/self-check-me.test: New test, checking that $me gets
740         defined automatically by `tests/defs' if not set, and that it
741         can be overridden from either the shell or the environment.
742         * tests/self-check-sanity.test: New test, check that the sanity
743         checks performed by the `tests/defs' script works correctly.
744         * tests/self-check-unindent.test: New test, checking the
745         `unindent' subroutine.
746         * tests/Makefile.am (TESTS): Update.
747
748 2011-02-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
749
750         tests: tempdirs with restrictive permissions are cleaned correctly
751         Before this change, the removal of a temporary test directory
752         containing subdirectories with restrictive permissions (such as
753         'r--r--r--') could fail.
754         * tests/defs: Ensure that all the subdirectories of a temporary
755         test directory have the 'read', 'write' and 'execute' bits set,
756         before trying to remove it with `rm -rf'.
757         * tests/Makefile.am (clean-local-check): Likewise.
758
759 2011-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
760             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
761
762         test defs: add subroutine for input unindenting
763         * tests/defs.in (unindent): New subroutine.
764         * tests/instspc-tests.sh: Use it.
765
766 2011-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
767
768         python: report the 'PYTHON' influential environment variable
769         * m4/python.m4 (AM_PATH_PYTHON): Call AC_ARG_VAR on PYTHON.
770         * doc/automake.texi (Python): Update and extend.
771         * tests/help-python.test: New test.
772         * tests/Makefile.am (TESTS): Update.
773         * THANKS (Jack Kelly): Update e-mail address.
774         Suggestion by Jack Kelly.
775
776 2011-02-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
777
778         tests defs: clear TESTS_ENVIRONMENT variable
779         * tests/defs.in (TESTS_ENVIRONMENT): Unset it, so that values
780         from environment won't interfere with the testcases.
781         Suggestion by Ralf Wildenhues.
782
783 2011-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
784
785         tests: `instspc-*.test': do not create useless source file
786         * tests/instspc-tests.sh (create_input_data): Do not create
787         unused source file `source2.c'.
788
789 2011-02-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
790
791         tests: optimize `instspc-*.test' for speed
792         After the split of `instspc.test' into various generated tests,
793         the running time of the testsuite has noticeably increased, since
794         all these new generated tests must run aclocal, autoconf and
795         automake, whereas previously they were run only once (at the
796         beginning of `instspc.test').  But luckily, since the new tests
797         share the same input files for the autotools, this situation can
798         be easily worked around (at the expenses of a slight increase of
799         complexity for the testsuite scaffolding).
800         * tests/instspc-data.test: New helper test, properly calling
801         the `instspc-tests.sh' script to generate input data for the
802         others `instspc-*.test' tests.
803         * tests/Makefile.am (TESTS): Add `instspc-data.test'.
804         ($(instspc_tests:.test=.log)): Depend on its log file.
805         (instspc-data.log): Depend on `instspc-tests.sh'.
806         * tests/instspc-tests.sh: Recognize new action `generate-data',
807         and use it to create hand-written and autotools-generated static
808         files shared by all the `instspc-*.test' tests.
809         When sourced by the `instspc-*.test' tests, use those previously
810         created files instead of recreating them from scratch.
811         (unindent, create_input_data): New subroutines.
812         Some other related changes and refactorings.
813         From a suggestion by Ralf Wildenhues.
814
815 2011-02-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
816
817         python: fix spurious failure in tests
818         * tests/python-vars.test: Ignore cached values from config.site
819         by exporting CONFIG_SITE=/dev/null.  Be laxer in matching the
820         expected values of output variables `pythondir' and `pyexecdir',
821         since they can change quite unpredictably among different python
822         installations.  Also, avoid "hyping" debugging output, thus
823         offering smaller trace output and more informative diff.
824         Report and suggestions by Ralf Wildenhues.
825         * tests/python-virtualenv.test: Require python, since we call it
826         even after the virtualenv has been deactivated.  Ignore cached
827         values from config.site by exporting CONFIG_SITE=/dev/null.
828
829 2011-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
830
831         tests: tweak few tests on simple and parallel test drivers
832         * tests/check-exported-srcdir.test: Improve heading comments.
833         * tests/check-tests-in-builddir.test: Likewise.  Also, unset the
834         `FOO_EXIT_STATUS' variable, so that any pre-existing value in the
835         environment won't risk to interfere with the test.
836         Suggestions by Ralf Wildenhues.
837
838 2011-02-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
839
840         python: extend and improve tests, fix minor glitches
841         * m4/python.m4 (AM_PATH_PYTHON): Ensure the "checking ..." messages
842         from configure are always complete, even in case of failure.  Tiny
843         cosmetic improvement in info/error messages.
844         * tests/python.test: Also check that automake complains if the
845         PYTHON primary is used but the `py-compile' script is not present.
846         Make grepping of generated Makefile.in laxer w.r.t. whitespace.
847         Add trailing `:' command.
848         * tests/python2.test: Remove repeated calls aclocal: they are
849         useless because configure.in is never modified.  Make grepping
850         of automake stderr more comprehensive.  Remove the pre-existing
851         `py-compile' file before trying to install it with `--add-missing'.
852         Add trailing `:' command.
853         * tests/python3.test: Add trailing `:' command.
854         * tests/python11.test: Likewise.
855         * tests/python4.test: Likewise.  Also, try to pass PYTHON config
856         variable to configure from the environment, rather than only from
857         the command line.
858         * tests/python5.test: Ensure that the "checking ..." messages from
859         configure are always complete.  Use proper m4 quoting.  Add a
860         trailing `:' command.
861         * tests/python6.test: Simplify test logic, by checking for files
862         created by configure rather then grepping its output.
863         * tests/python7.test: Likewise.
864         * tests/python8.test: Also check that `$PYTHON' is meaningfully
865         set in the ACTION-IF-TRUE argument of AM_PATH_PYTHON.
866         * tests/python9.test: Likewise.
867         * tests/python10.test: Add trailing `:' command.
868         (Makefile.am): Declare `disttest' target as `.PHONY', and add
869         an `ls -l' to its recipe, for debugging.
870         * tests/nobase-python.test: In testing "make uninstall" and
871         "make install" results, prefer idioms that make verbose logs
872         more helpful.  Remove a couple of lines of dead code.  Add a
873         trailing `:' command.
874         * tests/python5b.test: New test, checking that configure performs
875         the check on the python version even when the choice of the python
876         interpreter is forced by the user.
877         * tests/python-dist.test: New test, checking the distribution of
878         *_PYTHON files.
879         * tests/python-vars.test: New test, checking that AM_PATH_PYTHON
880         correctly set all the output variables advertised in the manual.
881         * tests/python-virtualenv.test: New test, checking that python
882         support offered by automake works well with "virtual python
883         environments" created by the `virtualenv' program.
884         * tests/instdir-prog.test: Also check `$(pyexecdir)'.  Existing
885         checks made slightly stricter.
886         * tests/instdir-prog.test: Also check `$(pyexecdir)'.  Existing
887         * tests/instdir-ltlib.test: Likewise.
888         * tests/Makefile.am (TESTS): Update.
889
890 2011-02-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
891
892         coverage: more tests on simple and parallel test drivers
893         * tests/parallel-tests-subdir.test: New test.
894         * tests/check-exported-srcdir.test: Likewise.
895         * tests/check-tests-in-builddir.test: Likewise.
896         * tests/check-tests_environment.test: Likewise.
897         * tests/Makefile.am (TESTS): Update.
898
899 2011-01-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
900
901         tests: fix spurious failures in lflags*.test
902         * tests/lflags.test: Remove 'LEX' from the environment, so
903         that it won't be erroneously picked up by `make -e'.
904         * tests/lflags2.test: Likewise.
905
906 2011-01-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
907
908         docs: color-tests issues with parallel make
909         * doc/automake.texi (Simple Tests): Document that automatic
910         recognition of a capable terminal attached to stdout can fail
911         with some make implementation when running in parallel mode,
912         thus causing colored test output not to be automatically
913         activated when it should.
914
915 2011-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
916
917         coverage: test semantics of "dummy" per-target flags
918         * tests/specflg-dummy.test: New test, ensuring that even "dummy"
919         per-target flags triggers the use of renamed objects.
920         * tests/Makefile.am (TESTS): Update.
921         Suggestion by Ralf Wildenhues.
922
923 2011-01-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
924
925         tests defs: sanitize IFS
926         * tests/defs ($IFS): Define to <space>, <tab>, <newline>.
927         ($sp): New variable, holding a single whitespace character.
928         ($tab): New variable, holding a tabulation character.
929         ($nl): New variable, holding a newline character.
930
931 2011-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
932
933         tests: avoid instspc* failures due to make's whitespace trimming
934         * tests/instspc-tests.sh: Prepend './' when passing the test
935         characters, to avoid leading whitespace characters to be trimmed
936         from macros set from environment variables.  Fixes testsuite
937         failures with HP-UX and Tru64/OSF make.
938
939 2011-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
940
941         tests: fix VPATH auto-expansion workarounds.
942         * tests/suffix10.test, tests/suffix11.test, tests/suffix12.test,
943         tests/suffix3.test, tests/suffix5.test, tests/suffix8.test:
944         Ensure $< is not surrounded by white space, to prevent Solaris
945         make from applying automatic VPATH text expansion.
946
947         tests: fix VPATH auto-expansion workarounds.
948         * tests/parallel-tests8.test, tests/suffix13.test:
949         Ensure $< is not surrounded by white space, to prevent Solaris
950         make from applying automatic VPATH text expansion.
951
952 2011-01-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
953
954         tests: fix spurious failures in yflags*.test
955         * tests/yflags.test: Remove 'YACC' from the environment, so
956         that it won't be erroneously picked up by `make -e'.
957         * tests/yflags2.test: Likewise.
958
959 2011-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
960
961         tests: avoid fn99*.test failures due to buggy AIX 5.3 cp -R.
962         * tests/fn99.test, tests/fn99subdir.test: Skip if an initial
963         `cp -R' of the subdir tree already fails; AIX 5.3 cp messes
964         up its internal memory when copying this tree.
965
966 2011-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
967             Stefano Lattarini  <stefano.lattarini@gmail.com>
968
969         Add comment to check-TESTS rule working around make 3.80 bug.
970         * lib/am/check.am (check-TESTS): Update comment.
971
972 2011-01-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
973
974         tests: less strict double-colon spy.test again.
975         * tests/spy.test: We know BSD make doesn't invoke more than one
976         double-colon rule, so no need to expose that failure.
977
978 2011-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
979
980         install-sh: avoid Tru64 sh `test' operator precedence issues.
981         * lib/install-sh: Protect file names and directory components
982         that consist of `=', `(', `)', or `!'.  Move protection as early
983         as possible, to avoid errors such as with Tru64 sh `test -z ='.
984         * tests/instsh2.test: Extend test to cover more possibilities.
985         Fixes 1.12 instspc-equal-install.test failure on Tru64/OSF 5.1.
986
987 2011-01-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
988             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
989
990         docs: automake testsuite doesn't use TESTS_ENVIRONMENT anymore
991         * doc/automake.texi (Simple Tests): Do not claim Automake uses
992         TESTS_ENVIRONMENT for the perl driver.  Instead, point to the
993         parallel-tests driver.
994
995 2011-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
996
997         tests: check for presence of cscope with redirected input.
998         * tests/defs: Add required test for cscope.
999         Fixes cscope3.test hang with Sun C 5.9 cscope.
1000
1001         tests: avoid false failure in cygnus-dependency-tracking.test.
1002         * tests/cygnus-dependency-tracking.test: Be less restrictive
1003         when grepping the compiler error message, GCC 3.4.6 on FreeBSD
1004         does not mention an undefined symbol.
1005
1006 2011-01-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1007
1008         tests: revert not turning off errexit in instspc-test.sh
1009         * tests/instspc-tests.sh: Turn off errexit while sourcing defs,
1010         the scripts might still not be clean.
1011
1012 2011-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1013
1014         tests: work around Tru64 sh -e issues for instspc*.test.
1015         Apparently, Tru64 sh does not like turning off errexit mode,
1016         and gets confused.
1017         * tests/defs: Document 'errexit' cleanliness requirement.
1018         * tests/defs-static.in: Likewise.  Avoid error from command
1019         substitution to abort instspc*.test with Tru64/OSF 5.1 sh.
1020         * tests/instspc-tests.sh: Drop now-unneeded temporary errexit
1021         dropping.  Add strategic '|| Exit' to let tests work on Tru64.
1022
1023 2011-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1024
1025         Allow _AM_DEPENDENCIES to be used later in configure.
1026         * m4/depend.m4 (_AM_DEPENDENCIES): Remove a previously existing
1027         conftest.dir before recreating it.
1028         Fixes bug#7864.
1029         Report by Eric Blake, from report by Scott McCreary against M4.
1030
1031 2011-01-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1032
1033         tests: avoid failure on w32 file systems.
1034         * tests/parallel-tests-unreadable-log.test: SKIP if file cannot
1035         be turned unreadable.
1036
1037 2011-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1038
1039         tests: allow double-colon spy.test to work with HP-UX make.
1040         * tests/spy.test: Fix comment typos.  Ensure prerequisites we
1041         do not want to depend on are strictly older than the target.
1042         Also test with a target out of date wrt. more than one rule.
1043
1044 2011-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1045
1046         Avoid local $_ perl variable, for Perl before 5.9.1.
1047         * lib/Automake/Options.pm (_process_option_list): Do not
1048         lexically localize $_.  Fixes bootstrap on AIX 5.1.
1049         Bug introduced in commit `v1.11-622-gf90a06c'.
1050
1051 2011-01-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
1052
1053         tests: remove useless requirements from cond36.test
1054         * tests/cond36.test ($required): Remove.
1055         Since we are at it, add a trailing `:' command.
1056
1057 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1058
1059         tests: avoid failing command substitution in errexit mode.
1060         * tests/vartypo2.test, tests/vartypos.test: Rewrite to not use
1061         a command substitution with a nonzero exit status, that causes
1062         IRIX and Tru64/OSF sh to fail the whole test.
1063
1064 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1065             Stefano Lattarini  <stefano.lattarini@gmail.com>
1066
1067         parallel-tests: work around Tru64/OSF 5.1 sh read bugs.
1068         * lib/am/check.am ($(TEST_SUITE_LOG), recheck, recheck-html):
1069         Test file readability before redirecting input from it, to avoid
1070         exiting Tru64/OSF 5.1 sh which treats read as special builtin.
1071         * tests/parallel-tests-unreadable-log.test: New test.
1072         * tests/Makefile.am (TESTS): Update.
1073         * NEWS: Update.
1074
1075 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1076
1077         * NEWS, README: Update copyright years.
1078
1079 2011-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
1080
1081         tests: hard error in case of internal failures or signal caught
1082         * tests/defs: Exit with status 99 (hard error) rather than
1083         1 (failure) on unexpected/internal errors, or when a signal
1084         is caught by the client script.
1085
1086         Tests defs: don't let useless variables leak in test scripts.
1087         * tests/defs ($priv_check_temp, $overwrite_status, $ro_dir_temp,
1088         $create_status, $r2h, $libtool_found, $gettext_found, $aclocaldir,
1089         $extra_includes): Unset once they've served their purpose.
1090
1091 2011-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1092
1093         Fix parallel-tests.test failure with HP-UX make.
1094         * tests/parallel-tests.test: Sleep inside inner tests, so logs
1095         are newer than logs of tests they depend on, for HP-UX make.
1096
1097 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1098
1099         docs: ensure example are separated with empty lines in the input
1100         * doc/automake.texi (Extending aclocal, Emacs Lisp, Rebuilding)
1101         (API Versioning, Renamed Objects, Multiple Outputs): Add empty
1102         lines before `@example' and after `@end example' lines, so info
1103         output is rendered correctly, and a following @noindent honored.
1104         Report by Stefano Lattarini.
1105
1106 2011-01-15  Jim Meyering <meyering@redhat.com>
1107
1108         tests: fix comment typo
1109         * tests/substref.test: Fix grammar in a comment.
1110
1111 2011-01-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
1112
1113         tests: fix spurious failures in two texinfo tests
1114         * tests/txinfo.test ($required): Add 'makeinfo'.
1115         * tests/txinfo8.test: Create a dummy 'textutils.info' file, so
1116         that make won't try to run makeinfo (which could be unavailable)
1117         to build it.
1118         Found by NixOS Hydra, reported by Ralf Wildenhues.
1119
1120 2011-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
1121
1122         Update docs w.r.t. warning and strictness options.
1123         * doc/automake.texi (Strictness): Document that some warnings are
1124         turned off by default in `foreign' strictness.
1125         (Options): Divide into new sections "Options generalities" and
1126         "List of Automake options".  Fix typo (colon instead of full
1127         stop).  Document option precedence (AUTOMAKE_OPTIONS wins over
1128         AM_INIT_AUTOMAKE which wins over command line).  Also document
1129         interactions between options specifying strictness and those
1130         specifying warnings.
1131
1132         More tests on warnings/strictness precedence.
1133         * tests/warning-groups-win-over-strictness.test: New test, similar
1134         to `warnings-win-over-strictness.test', but checking the explicit
1135         catch-all warning flags (like `-Wall' and `-Wnone').
1136         * tests/Makefile.am (TESTS): Update.
1137
1138         Update NEWS about the warnings-over-strictness precedence.
1139         * NEWS: Automake explicit warning levels always take precedence
1140         over the implicit warning levels implied by Automake strictness.
1141
1142         For PR automake/547:
1143         Warnings win over strictness in AUTOMAKE_OPTIONS.
1144         Ensure that, for what concerns the options specified in
1145         AUTOMAKE_OPTIONS, explicitly-defined warnings always take
1146         precedence over implicit strictness-implied warnings.
1147         This finally fixes Automake bug#7669 a.k.a. PR/547.
1148         * automake.in (handle_options): Call 'process_option_list'
1149         only once per set of options.
1150         * lib/Automake/Options.pm (process_global_option_list,
1151         process_option_list): Add sanity checks.
1152         ($_options_processed, $_global_options_processed): New
1153         internal variables, used by the sanity checks above.
1154         * tests/warnings-win-over-strictness.test: Extend.
1155
1156         For PR automake/547:
1157         Change signature of 'Automake::Options::_process_option_list()'.
1158         This only modifies internal details in the automake implementation,
1159         bearing no externally visible effect, but preparing the way for the
1160         final fix of Automake bug#7669 a.k.a. PR/547.
1161         * lib/Automake/Options.pm (_process_option_list): Accept as
1162         arguments a list of hash references with keys 'option' and 'where',
1163         where 'option' is an option as might occur in AUTOMAKE_OPTIONS or
1164         AM_INIT_AUTOMAKE, and 'where' is the location where it occurred.
1165         (process_option_list, process_global_option_list): Updated.
1166         * automake.in (handle_options, scan_autoconf_traces): Update.
1167
1168         Add more tests about AUTOMAKE_OPTIONS.
1169         In view of soon-to-follow refactorings (still in the pursuit of a
1170         fix for Automake bug#7669 a.k.a. PR/547), add some more tests on
1171         AUTOMAKE_OPTIONS support, to prevent obvious regressions.
1172         * tests/amopts-variable-expansion.test: New test.
1173         * tests/amopts-location.test: Likewise.
1174         * tests/Makefile.am (TESTS): Update.
1175
1176         For PR automake/547:
1177         Warnings win over strictness in AM_INIT_AUTOMAKE.
1178         This change ensures that, for what concerns the options specified
1179         in AM_INIT_AUTOMAKE,  explicitly-defined warnings always take
1180         precedence over implicit strictness-implied warnings.  Related to
1181         Automake bug#7669 a.k.a. PR/547.
1182         * lib/Automake/Options.pm (_process_option_list): Parse explicit
1183         warnings only after the strictness level has been set.  Fix POD
1184         documentation.
1185         * tests/warnings-win-over-strictness.test: Extend.
1186
1187         For PR automake/547:
1188         Warnings win over strictness on command line.
1189         Ensure that, on the command line at least, explicitly defined
1190         warnings always take precedence over implicit strictness-implied
1191         warnings.  Related to Automake bug#7669 a.k.a. PR/547.
1192         * automake.in (parse_arguments): Parse warnings only after the
1193         strictness level has been processed.
1194         * tests/gnuwarn.test: Update, plus miscellaneous improvements.
1195         * tests/warnings-win-over-strictness.test: New test.
1196         * tests/Makefile.am (TESTS): Update.
1197
1198         More tests on warnings and strictness.
1199         * tests/warnings-strictness-interactions.test: New test.
1200         * tests/warnings-unknown.test: Likewise.
1201         * tests/Makefile.am (TESTS): Update.
1202
1203         New test on silent-rules mode and portability warnings.
1204         * tests/silent-nowarn.test: New test.
1205         * tests/Makefile.am (TESTS): Update.
1206
1207         Add new tests on strictness and warnings precedence and overriding.
1208         * tests/strictness-override.test: New test.
1209         * tests/strictness-precedence.test: New test.
1210         * tests/warnings-override.test: New test.
1211         * tests/warnings-precedence.test: New test.
1212         * tests/Makefile.am (TESTS): Update.
1213
1214 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1215
1216         Fix remake rule-induced test failures with HP-UX make.
1217         * tests/remake1a.test: Require GNU make.
1218
1219 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1220
1221         Fix remake rule-induced test failures with HP-UX make.
1222         * tests/colon6.test: Update timestamp of subdir Makefile, so we
1223         do not spuriously invoke the nonexistent toplevel am--refresh
1224         rule.
1225
1226         tests: fix typos in colon6.test
1227         * tests/colon6.test: Fix typos.
1228
1229 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1230             Stefano Lattarini  <stefano.lattarini@gmail.com>
1231
1232         tests: explain MSYS setup failure issue, improve test.
1233         * tests/defs: Add comment and failure message, improve fail
1234         logic.
1235
1236 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1237
1238         Fix libobj2.test failure with non-GNU make: define $(AR).
1239         * tests/libobj2.test: Ensure $(AR) is suitably defined.
1240
1241 2011-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1242
1243         tests: avoid spurious failures due to fork failure in test setup
1244         * tests/defs: Ensure $me is always nonempty, to avoid spurious
1245         failures on MinGW/MSYS in case the preceding sed command could
1246         not be spawned.
1247
1248         Avoid configure warnings from wait about reused PIDs.
1249         * m4/sanity.m4 (AM_SANITY_CHECK): Hide wait stderr output.
1250         Fixes spurious failure of depcomp2.test.
1251
1252 2011-01-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1253
1254         Avoid testsuite failures due to Autoconf Fortran change.
1255         Autoconf v2.68-21-g727ce95 causes AC_F77_LIBRARY_LDFLAGS to
1256         require computing the canonical host name.  Ensure config.guess
1257         and config.sub files are present for respective checks.
1258         * tests/compile_f_c_cxx.test: Add stub files.
1259         * tests/flibs.test: Likewise.
1260         * tests/fort4.test: Use $AUTOMAKE -a for installing files.
1261
1262 2011-01-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
1263
1264         docs: clustered '-d' not recognized in YFLAGS
1265         This change fixes automake bug#7828.
1266         * doc/automake.texi (Yacc and Lex): Document that automake
1267         recognizes '-d' in AM_YFLAGS only if it's not clustered with
1268         other options.
1269         From a report by Юрий Пухальский.
1270
1271 2011-01-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
1272
1273         tests: add checks on automatically-distributed files
1274         Related to automake bug#7819.
1275         * tests/autodist.test: New test.
1276         * tests/autodist-subdir.test: Likewise.
1277         * tests/autodist-acconfig.test: Likewise.
1278         * tests/autodist-acconfig-no-subdir.test: Likewise.
1279         * tests/autodist-aclocal-m4.test: Likewise.
1280         * tests/autodist-config-headers.test: Likewise.
1281         * tests/autodist-configure-no-subdir.test: Likewise.
1282         * tests/autodist-stamp-vti.test: Likewise.
1283         * tests/Makefile.am (TESTS): Update.
1284
1285 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1286
1287         tests: do not force yacc-requiring tests to use bison
1288         * tests/defs.in: New required entry 'yacc'.  Remove old
1289         required entry 'bison'.
1290         * tests/cond35.test ($required): Require yacc, not bison.
1291         * tests/cond36.test: Likewise.
1292         * tests/pr204.test: Likewise.
1293         * tests/silent-many-gcc.test: Likewise.
1294         * tests/silent-many-generic.test: Likewise.
1295         * tests/silent-yacc-gcc.test: Likewise.
1296         * tests/silent-yacc-generic.test: Likewise.
1297         * tests/subpkg.test: Likewise.
1298         * tests/suffix10.test: Likewise.
1299         * tests/yacc-basic.test: Likewise.
1300         * tests/yacc-clean.test: Likewise.
1301         * tests/yacc-d-basic.test: Likewise.
1302         * tests/yacc-d-vpath.test: Likewise.
1303         * tests/yacc-dist-nobuild.test: Likewise.
1304         * tests/yacc-nodist.test: Likewise.
1305         * tests/yacc4.test: Likewise.
1306         * tests/yacc6.test: Likewise.
1307         * tests/yacc7.test: Likewise.
1308         * tests/yacc8.test: Likewise.
1309         * tests/yaccdry.test: Likewise.
1310         * tests/yaccvpath.test: Likewise.
1311
1312 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1313
1314         tests: more consistent checks about invalid options
1315         * tests/aclocal.test: Grepping of automake stderr for messages
1316         reporting invalid options made stricter.
1317         * tests/no-outdir-option.test: Likewise.  Also, create a dummy
1318         `Makefile.am', to ensure that the automake failures are really
1319         caused only by unrecognized options.
1320         * tests/automake.test: Added trailing `:' command.  Removed
1321         redundant checks on `--help' and `--version' option (already
1322         performed in the test `help*.test').
1323
1324 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1325
1326         tests: enable 'errexit' shell flag by default.
1327         * tests/defs: Enable `errexit' shell flag (near the end).
1328         Removed redundant comment about the enabling of shell traces.
1329         * tests/README (Writing test cases): Update, and use nicer
1330         formatting in a couple of places.
1331         * All tests: Adjusted by removing now-redundant calls to
1332         'set -e'.
1333
1334 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1335
1336         tests: work around a texi+cygnus bug causing a spurious XFAIL
1337         * tests/txinfo5b.test: New test, like txinfo5.test but calling
1338         automake with the `-Wno-override' option to work around a bug
1339         in the texinfo + cygnus interaction.
1340         * tests/txinfo5.test: Update heading comments.
1341         * tests/Makefile.am (TEST): Updated.
1342
1343 2011-01-09  Dave Hart  <davehart@gmail.com>  (tiny change)
1344
1345         Fix another typo in Rule.pm comment.
1346         * lib/Automake/Rule.pm: Fix typo.
1347
1348 2011-01-09  Peter Rosin  <peda@lysator.liu.se>
1349
1350         Fix another typo in Rule.pm comment.
1351         * lib/Automake/Rule.pm: Fix typo.
1352
1353 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1354
1355         tests: texinfo unrecognized extensions
1356         * tests/txinfo-unrecognized-extension.test: New test.
1357         * tests/Makefile.am (TESTS): Update.
1358
1359         Improve, extend and tweak tests on Texinfo support.
1360         * tests/instdir-texi.test: Add a call to `ls -l' after that to
1361         `make', for debugging.  When looking for required tools, do not
1362         redirect the output of "$tool --help" to /dev/null, and do not
1363         uselessly run it in a subshell.
1364         * tests/txinfo.test: Rewritten to run autoconf, ./configure and
1365         make.  All checks moved into Makefile.am.
1366         * tests/txinfo8.test: Likewise, and modernize the generated
1367         configure.in.
1368         * tests/txinfo2.test: Moved checks into Makefile.am, and other
1369         minor improvements.
1370         * tests/txinfo5.test: Enable `errexit' shell flag, and related
1371         changes.  Add trailing `:' command.
1372         * tests/txinfo6.test: Likewise, and make grepping of generated
1373         Makefile.in stricter.
1374         * tests/txinfo7.test: Enable `errexit' shell flag, and related
1375         changes.  Add trailing `:' command.  Do not add unnecessary stuff
1376         to Makefile.am.
1377         * tests/txinfo9.test: Verify that more targets which are expected
1378         to be generated only once really are.  Make grepping less strict,
1379         to avoid exposing too much internal details.  More minor changes.
1380         * tests/txinfo16.test: Add trailing `:'.  Prefer cat over echo
1381         for appending to configure.in.  Updated/fixed heading comments.
1382         * tests/txinfo23.test: Likewise, and extended a little by making
1383         it check that no info file is created in the $(srcdir).
1384         * tests/txinfo24.test: Likewise.
1385         * tests/txinfo25.test: Likewise.
1386         * tests/txinfo18.test: Add trailing `:'.  Prefer cat over echo
1387         for appending to configure.in.  Also, check that index files are
1388         cleaned also by "make clean", not only by "make distclean".
1389         * tests/txinfo22.test: Prefer `$me' over hard-coded test name,
1390         and added trailing `:' command.  This testcase also used to check
1391         that automake ignores in-line comments when using variables, but
1392         preserves them in the output; these checks (added in commit
1393         "Release-1-7f-4-g9177ef8") do not really pertain to this test,
1394         so they have been moved ...
1395         * tests/comments-in-var-defn.test: ... into this new test.
1396         * tests/txinfo4.test: Escape literal dots in grep regexps.  Add
1397         trailing `:' command.
1398         * tests/txinfo29.test: Likewise.  Relax grepping of generated
1399         Makefile.in w.r.t. whitespaces.  Prefer `cat' over `echo' to
1400         append to configure.in.
1401         * tests/txinfo3.test: Likewise.
1402         * tests/vtexi.test: Improve grepping of Makefile.in (sometimes
1403         make it stricter, sometimes laxer).  Move `set -e' setting just
1404         after the inclusion of ./defs.  De-uglify a sed command.  Other
1405         minor cosmetic improvements.
1406         * tests/vtexi2.test: Make grepping of Makefile.in stricter.  Add
1407         trailing `:' command.
1408         * tests/vtexi3.test: New test on version.texi support.
1409         * tests/vtexi4.test: Likewise.
1410         * tests/Makefile.am (TESTS): Updated.
1411
1412 2011-01-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1413
1414         tests: fix spurious failure in 'tests/yflags-conditional.test'
1415         * tests/yflags-conditional.test: Filter out message "warnings are
1416         treated as errors" from automake stderr, to avoid a false positive
1417         when grepping for extraneous warning messages.
1418
1419 2011-01-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
1420
1421         yacc: warn about conditional content in *YFLAGS variables
1422         This change fixes automake bug#7804.
1423         * automake.in (lang_yacc_target_hook): Warn if any of the relevant
1424         *YFLAGS variables has conditional contents (not only a conditional
1425         definition).  Related refactoring.
1426         * NEWS: Updated.
1427         * tests/yflags-conditional.test: Updated and extended.
1428         * tests/yflags-conditional-force.test: New test.
1429         * tests/Makefile.am (TESTS): Updated.
1430
1431 2011-01-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1432
1433         yacc: support variable expansions in *YFLAGS definition.
1434         This change fixes automake bug#7800.
1435         * automake.in (lang_yacc_target_hook): Use 'value_as_list_recursive'
1436         instead of 'variable_value' to get the value of *YFLAGS variables.
1437         Related changes.
1438         ($DASH_D_PATTERN): Removed.
1439         * tests/Makefile.am (XFAIL_TESTS): Remove yflags-var-expand.test.
1440         * tests/yacc-clean.test: Remove workaround for now-fixed bug.
1441         * NEWS: Update.
1442
1443 2011-01-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1444
1445         yacc: more tests on *YFLAGS support
1446         * tests/yflags-var-expand.test: New test, still xfailing.  It
1447         exposes automake bug#7800 -- "automake fails to honor `-d' in
1448         AM_YFLAGS when variable expansions are involved".
1449         * tests/yflags-d-false-positive.test: New test, checking that
1450         automake do not spuriously see `-d' in *YFLAGS when that isn't
1451         really there.
1452         * tests/yflags-force-override.test: New test, checking that
1453         automake can cope with definition of the YFLAGS variable in
1454         Makefile.am (even if that is an extremely bad practice, as that
1455         variable is user-reserved).
1456         * tests/yflags-cmdline-override.test: New test, checking that
1457         automake can cope with user-redefinition of YFLAGS at configure
1458         time and/or at make time.
1459         * tests/yflags-conditional.test: New test, checks that automake
1460         warns on conditionally-defined *YFLAGS variables.
1461         * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
1462
1463 2011-01-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
1464
1465         yacc: extend and improve tests
1466         * tests/yacc-basic.test: Also check that the intermediate C file
1467         is mentioned in the generated Makefile.in, and that it is created
1468         by the first make invocation.
1469         * tests/yacc3.test: Test removed, superseded by ...
1470         * tests/yacc-d-basic.test: ... this new test.
1471         * tests/yacc2.test: Add reference to that new test in the heading
1472         comments.
1473         * tests/yacc-d-vpath.test: New test.
1474         * tests/yaccvpath.test: Updated heading comments.  Do not require
1475         gcc anymore, as any working C compiler should be enough.  Remove
1476         redundant comments.
1477         * tests/yacc-nodist.test: New test.
1478         * tests/yacc-dist-nobuild.test: New test.
1479         * tests/Makefile.am (TESTS): Update.
1480
1481 2010-12-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
1482
1483         Extend, fix and improve tests on Lex and Yacc support.
1484         * tests/lexcpp.test: New test script, on support for Lex + C++.
1485         * tests/lexvpath.test: New test script, test build and rebuild
1486         rules for lexers in VPATH setup.
1487         * tests/yacc-basic.test: New test script, run simple "semantic"
1488         checks on basic Yacc support (similarly to what lex3.test does
1489         for Lex support).
1490         * tests/lex.test: Don't create useless dummy source file joe.l.
1491         Remove extra blank lines.
1492         * tests/lex4.test: Add trailing `:' command.  Do not create dummy
1493         useless lex source file.
1494         * tests/lex2.test: Likewise.  Call automake with the `-a' option,
1495         so that it doesn't fail for the absence of `ylwrap' script.  Make
1496         grepping of automake stderr stricter.
1497         * tests/yacc7.test: Add trailing `:' command.  Enable `errexit'
1498         shell flag earlier (just after having sourced ./defs).
1499         * tests/yacc4.test: Likewise.  Also ...
1500         (configure.in): Use pre-populated skeleton set up by ./defs,
1501         instead of writing one from scratch.
1502         Other minor cosmetic changes.
1503         * tests/yacc5.test: Likewise.
1504         * tests/yaccvpath.test: Likewise. Also ...
1505         ($distdir): New variable.
1506         Use it throughout.
1507         * tests/lex5.test: Likewise.
1508         * tests/lex3.test: Likewise.  Check the distdir, rather than
1509         grepping the distribution tarball.  Extend the test on the
1510         created binary, and be sure to avoid hangs.  Add some comments.
1511         * tests/yacc.test: Use stricter grepping.  Add trailing `:'.
1512         * tests/yacc6.test: Likewise.
1513         * tests/yacc3.test: Likewise.  Do not create the unused file
1514         `Makefile.sed'.  Remove useless rules from Makefile.am.  Other
1515         minor cosmetic changes.
1516         * tests/yacc2.test: Make grepping of generated `Makefile.in' and
1517         of automake error messages stricter.  Do not redirect output of
1518         grep to /dev/null.  Move call to aclocal earlier.  Reduce the
1519         number of empty blank lines.  Fix a typo in comments.
1520         * tests/yacc8.test: Fixed bugs that reduced the completeness of
1521         the tests.  Added trailing `:' command.
1522         (configure.in): Use pre-populated skeleton set up by ./defs,
1523         instead of writing one from scratch.
1524         * tests/yaccpp.test: Test also extensions `.y++', `.ypp', and
1525         `.yxx', rather than only `.yy'.
1526         * tests/Makefile.am (TESTS): Update.
1527
1528 2011-01-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
1529
1530         cosmetics: remove trailing whitespaces
1531         * doc/automake.texi: Remove trailing whitespaces.
1532         * tests/cond13.test: Likewise.
1533         * tests/cond14.test: Likewise.
1534         * tests/fort4.test: Likewise.
1535         * tests/fort5.test: Likewise.
1536         * tests/libobj17.test: Likewise.
1537         * tests/suffix7.test: Likewise.
1538         * tests/vtexi2.test: Likewise.
1539
1540         automake: minor fixes in comments
1541         * automake.in: Some minor fixes and enhancements in comments.
1542
1543 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1544
1545         Add test coverage for deleted header files.
1546         * tests/depcomp6.test, tests/depcomp7.test: Update tests to
1547         also check for the deleted header bug.  If no dependency
1548         tracking mechanism could be found, SKIP rather than exit
1549         successfully.  Use GNU style spacing and ANSI C prototypes.
1550
1551         Fix typos in Rule.pm comments.
1552         * lib/Automake/Rule.pm: Fix typos in comments.
1553
1554         docs: split 'amhello Explained' node.
1555         * doc/automake.texi (amhello Explained): Split node ...
1556         (amhello's configure.ac Setup Explained)
1557         (amhello's Makefile.am Setup Explained) : ... into these two.
1558         (Top, Hello World): Adjust, and add @anchor for stable URL links.
1559         Suggestion by Karl Berry in automake bug#7766.
1560
1561 2011-01-08  Karl Berry  <karl@freefriends.org>
1562             Eric Blake  <eblake@redhat.com>
1563
1564         docs: reference defining directories in amhello node.
1565         * doc/automake.texi (amhello Explained): Point to Autoconf
1566         manual for how to convert directory values into macros.
1567         (Optional): Fix grammar nit.
1568
1569 2011-01-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
1570
1571         yacc: "make clean" removes .c and .h files from non-distributed .y
1572         Previously, while automake did *not* distribute C source and header
1573         files derived from non-distributed Yacc sources, it still caused
1574         them to be removed only by "make maintainer-clean" only, and not by
1575         simply "make clean" or "make distclean".
1576         This caused "make distcheck" to fail, unless the developer put
1577         those generated .c and .h files in CLEANFILES or in DISTCLEANFILES
1578         by hand.
1579         This change fixes this issue, by making non-distributed `.c' and
1580         `.h' files generated by non-distributed Yacc sources cleaned by
1581         "make clean".
1582         * tests/automake.in (lang_yacc_target_hook): Make C source and
1583         header files derived from non-distributed Yacc files cleaned by
1584         "make clean", not only by "make maintainer-clean".
1585         * tests/yacc-clean.test: New test.
1586         * tests/Makefile.am (TESTS): Update.
1587         * NEWS: Update.
1588
1589 2011-01-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
1590
1591         * NEWS: Fix typo (forgotten word).
1592
1593 2011-01-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
1594             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1595
1596         docs: how to work around checks on invalid primary/directory couples
1597         * doc/automake.texi (Uniform): Document the blessed idiom which can
1598         be used to work around automake checks on invalid primary/directory
1599         couples (such as `lib_PROGRAMS' or `doc_LIBRARIES').
1600
1601 2010-01-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
1602
1603         Tests: normalize use of the 'errexit' shell flag.
1604         * tests/maken3.test (check_targets): Remove redundant call to
1605         'set -e'.
1606         * tests/maken4.test: Likewise.
1607         * tests/ansi5.test: Call 'set -e' just after './defs' has been
1608         sourced.
1609         * tests/ansi6.test: Likewise.
1610         * tests/ansi7.test: Likewise.
1611         * tests/cond16.test: Likewise.
1612         * tests/cond17.test: Likewise.
1613         * tests/cond18.test: Likewise.
1614         * tests/cond19.test: Likewise.
1615         * tests/cond20.test: Likewise.
1616         * tests/cond21.test: Likewise.
1617         * tests/instdat2.test: Likewise.
1618         * tests/instdir-texi.test: Likewise.
1619         * tests/parallel-tests3.test: Likewise.
1620         * tests/remake1a.test: Likewise.
1621         * tests/ccnoco.test: Likewise, and add trailing `:' command.
1622         * tests/comment4.test: Likewise.
1623         * tests/gcj4.test: Likewise.
1624         * tests/nodist2.test: Likewise.
1625         * tests/nodist3.test: Enable 'errexit' shell flag (this should
1626         have been done in commit v1.11-248-g317e17b, but the relevant
1627         hunk has been forgotten somehow).
1628         * tests/output.test: Likewise.
1629         * tests/gnits2.test: Likewise, and display captured stderr to
1630         script's stderr, not to script's stdout.
1631         * tests/gnits3.test: Likewise.  Also, prefer 'cat' over 'echo'
1632         to append to Makefile.am, and really check that the exit status
1633         of "make installcheck" indicates failure.
1634
1635 2011-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1636
1637         Sync auxiliary files from upstream.
1638         * lib/config.guess, lib/config.sub, lib/texinfo.tex:
1639         Sync from upstream.
1640
1641         Avoid caching bug in cygnus mode test.
1642         * tests/cygnus-requires-maintainer-mode.test: Remove
1643         autom4te.cache directory before rerunning aclocal, to
1644         remove trace caches.
1645
1646         Fix maintainer-check regression.
1647         * tests/subobj11a.test: Pass DISTCHECK_CONFIGURE_FLAGS in the
1648         environment.
1649
1650         Bump copyright years.
1651         * aclocal.in (write_aclocal, version): Bump copyright years.
1652         * automake.in (gen_copyright, version): Likewise.
1653         * doc/automake.texi: Likewise.
1654
1655 2010-12-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1656
1657         * NEWS: Add missing blank line between two entries.
1658
1659 2010-12-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
1660
1661         Improve and extend tests `suffix*.test'.
1662         * tests/suffix.test: Check that suffix rules for C compilation are
1663         only included once.  Try also with a static library.
1664         * tests/suffix2.test: Add a new grep to help potential debugging.
1665         Do not run automake with the `--add-missing' options, since we
1666         already create all the needed auxiliary files.  Try also *without*
1667         the `no-dependencies' automake option.
1668         * tests/suffix4.test: Make grepping of Makefile.in stricter.
1669         * tests/suffix3.test: Rewritten to run also autoconf, ./configure
1670         and make.
1671         * tests/suffix5.test: Likewise.
1672         * tests/suffix6.test: Fix botched recipe indentation (eight spaces
1673         were used instead of a tabulation character).  Extend to check
1674         that `.obj' is handled like `.$(OBJEXT)' (as is done for `.o').
1675         Improved parsing & grepping of generated Makefile.in.  Other minor
1676         fixes and improvements.
1677         * tests/suffix10.test: Move some checks in Makefile.am.  Also run
1678         "make all".
1679         * tests/suffix12.test: Likewise, and account for VPATH issues in
1680         weaker make implementations.
1681         * tests/suffix11.test: Likewise.  Also, run "make distcheck", for
1682         completeness, and related changes.
1683         * tests/suffix8.test: Likewise.  Also, do not put `gcc' anymore
1684         in $required.
1685         * tests/suffix13.test: Do not use the `--force-missing' automake
1686         option unnecessarily.
1687         * tests/suffix6b.test: New test, semantic sister of `suffix6.test'.
1688         * tests/suffix6c.test: Likewise.
1689         * tests/Makefile.am (TESTS): Updated.
1690
1691 2010-12-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1692             Stefano Lattarini  <stefano.lattarini@gmail.com>
1693
1694         Work around a bug in file-inclusion mechanism of Solaris make.
1695         * automake.in (handle_single_transform): In the name of the
1696         dependency file: collapse multiple slash characters into a single
1697         one.
1698         * tests/subobj11a.test: New test.
1699         * tests/subobj11b.test: Likewise.
1700         * tests/subobj11c.test: Likewise.
1701         * tests/depcomp8a.test: Likewise.
1702         * tests/depcomp8b.test: Likewise.
1703         * tests/Makefile.am (TESTS): Updated.
1704         * NEWS: Updated.
1705         Report by Stefano Lattarini, quick fix by Ralf Wildenhues, final
1706         patch and tests by Stefano Lattarini.
1707
1708 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
1709
1710         Fix two spurious testsuite failures on IRIX 6.5.
1711         * tests/suffix13.test (Makefile.am): Account for VPATH issues on
1712         weaker make implementations (e.g. IRIX 6.5).
1713         * tests/parallel-tests8.test: Likewise, plus a required related
1714         change.
1715         Reported by Ralf Wildenhues.  The bugs have been there from the
1716         first versions of the affected test scripts.
1717
1718 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
1719
1720         docs: cygnus mode doesn't require AM_CYGWIN32 macro.
1721         * doc/automake.texi (Cygnus): Mode 'cygnus' does not require
1722         the AM_CYGWIN32 macro (and indeed hasn't required it since at
1723         least commit Release-1-2-31-g3038064 "merged changes from
1724         Cygnus" of 1997-08-25).
1725
1726 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
1727
1728         Add some tests on 'cygnus' mode.
1729         * tests/clean2.test: Extend.
1730         * tests/cygnus-check-without-all.test: New test.
1731         * tests/cygnus-dependency-tracking.test: Likewise.
1732         * tests/cygnus-distclean.test: Likewise.
1733         * tests/cygnus-imply-foreign.test: Likewise.
1734         * tests/cygnus-no-dist.test: Likewise.
1735         * tests/cygnus-no-installinfo.test: Likewise.
1736         * tests/cygnus-requires-maintainer-mode.test: Likewise.
1737         * tests/Makefile.am (TESTS): Update.
1738
1739 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
1740
1741         Fix parallel testsuite run with Zsh.
1742         This change deals with a Zsh incompatibility in the handling
1743         of the special shell variable `$0' in sourced files; this
1744         incompatibility used to cause utter breakage when the
1745         Automake testsuite was run in parallel mode with Zsh as
1746         the $(TEST_LOG_COMPILER).
1747         For more information, please refer to the thread "Fix parallel
1748         testsuite run with zsh" on automake-patches, dated 2010-12-22:
1749          <http://lists.gnu.org/archive/html/automake-patches/2010-12/msg00135.html>
1750         This change works around the problems described above for Zsh 4.3
1751         or later, and offers better error messages (instead of random
1752         failures) for earlier Zsh version.
1753         * tests/README (Supported shells): When describing the manual
1754         workaround about the Zsh incompatibility in the handling of `$0',
1755         tell that it is now needed only with Zsh versions preceding 4.3.
1756         Done also some minor rewordings.
1757         * tests/defs-static.in ($argv0): New variable, offers a workaround
1758         for the Zsh incompatibility in the handling of `$0'.
1759         Abort if that variable cannot be correctly set (can happen only
1760         in older Zsh version).
1761         * tests/defs ($me): Define using `$argv0', not `$0'.
1762
1763 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
1764
1765         Tests defs: keep track of original $AUTOMAKE and $ACLOCAL values.
1766         This is especially useful for tests which might want to run
1767         automake and aclocal without additional flags and warnings.
1768         * tests/defs-static.in ($original_ACLOCAL): New variable.
1769         ($original_AUTOMAKE): Likewise.
1770         * tests/help.test: Use them.
1771         * tests/help2.test: Likewise.
1772         * tests/help3.test: Likewise.
1773         * tests/help4.test: Likewise.
1774         From a suggestion by Ralf Wildenhues.
1775
1776 2010-12-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
1777
1778         distlinksbrk.test: Work around botched "make -k".
1779         * tests/distlinksbrk.test: Run "make" multiple times and grep
1780         its output each time for a single error message, rather than
1781         running "make -k" one single time and grepping its output for
1782         all the expected error messages.  This should work around make
1783         implementations with limited (broken?) `-k' support; for more
1784         information, see these subthreads on the automake-patches list:
1785           - 2010-11-15, "Testsuite failures on HP-UX 11.23",
1786             <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00162.html>
1787           - 2010-11-15, "Testsuite failures on IRIX 6.5",
1788             <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00166.html>
1789
1790 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
1791
1792         Minor improvements to test 'amopts.test'.
1793         * tests/amopts.test: Remove botched comment.  Make grepping of
1794         automake stderr slighty stricter.  Add trailing `:' command.
1795
1796 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
1797
1798         backcompat6.test: avoid comments inside recipe commands.
1799         * tests/backcompat6.test: Remove shell comments from makefile rule
1800         commands, as they are not portable to (at least) Tru64 make.
1801
1802 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
1803
1804         man8.test: avoid comments inside recipe commands.
1805         * tests/man8.test: Remove shell comments from makefile rule
1806         commands, as they are not portable to (at least) Tru64 make.
1807
1808 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
1809
1810         Fix sed-related buglet in test "subdir5.test"
1811         * tests/subdir5.test: Always terminate text passed to the
1812         `i' sed command with a newline, to work around limitations
1813         in e.g. older OpenBSD sed.
1814
1815 2010-12-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
1816
1817         Fix spurious failures in tests on AC_CONFIG_AUX_DIR.
1818         * tests/auxdir7.test: Do not try to needlessly overwrite the files
1819         `install-sh' and `missing'.  This avoid spurious failures in "make
1820         distcheck", when those files might be copied as read-only from the
1821         `lib' directory.
1822         * tests/auxdir8.test: Likewise.
1823
1824 2010-12-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1825
1826         Make test 'posixsubst-script' portable to MinGW/MSYS.
1827         * tests/posixsubst-script.test: Ensure that the generated dummy
1828         scripts really start with a shebang line, to work around a
1829         limitation of 'test -x' on MinGW/MSYS.
1830         Reported by Ralf Wildenhues.
1831
1832         Improve comments in tests `posixsubst*.test'.
1833         * tests/posixsubst-data.test: Improve comment explaining why we
1834         try also empty match suffix.
1835         * tests/posixsubst-extradist.test: Likewise.
1836         * tests/posixsubst-ldadd.test: Likewise.
1837         * tests/posixsubst-libraries.test: Likewise.
1838         * tests/posixsubst-ltlibraries.test: Likewise.
1839         * tests/posixsubst-programs.test: Likewise.
1840         * tests/posixsubst-scripts.test: Likewise.
1841         * tests/posixsubst-sources.test: Likewise.
1842         * tests/posixsubst-tests.test: Likewise.
1843         Suggested by Ralf Wildenhues.
1844
1845 2010-12-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
1846
1847         docs: fix blunder in example about python extension modules
1848         * doc/automake.texi (Python): Use `quaternion_la_SOURCES',
1849         not `quaternion_SOURCES', to declare the sources of python
1850         extension module `quaternion.la'.
1851
1852 2010-12-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
1853
1854         docs: list LTLIBRARIES among Automake primaries
1855         * doc/automake.texi (Uniform): List `LTLIBRARIES' among
1856         the Automake primaries.
1857
1858 2010-12-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
1859             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1860
1861         Tests defs: requirement 'xsi-shell' must be synced with libtool.
1862         * tests/defs (xsi-shell): Add comment telling to keep the
1863         XSI-conformance checks in sync with libtool.
1864
1865 2010-12-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
1866
1867         Minor cleanups in canon7.test.
1868         * tests/canon7.test (_foo_bar_SOURCES): Remove libs.c.
1869         (configure.in): Remove AC_PROG_CXX.
1870
1871 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1872
1873         Avoid false positive in sc_tests_plain_make maintainer-check.
1874         * Makefile.am (sc_tests_plain_make): Ensure to only match full
1875         `make' words.  Avoid false positive with remake11.test.
1876
1877 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1878
1879         Fix canon7.test failure.
1880         * tests/canon7.test (_foo_bar_SOURCES): Add foobar.c.
1881         (lib.h, libd.c, libs.c): Use const for constant strings.
1882
1883 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1884
1885         Fix typos in test comments.
1886         * tests/posixsubst-data.test, tests/posixsubst-extradist.test,
1887         tests/posixsubst-ldadd.test, tests/posixsubst-libraries.test,
1888         tests/posixsubst-ltlibraries.test, tests/posixsubst-programs.test,
1889         tests/posixsubst-scripts.test, tests/posixsubst-sources.test,
1890         tests/posixsubst-tests.test: Fix typos.
1891
1892 2010-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
1893
1894         More uses of AS_HELP_STRING in automake macros.
1895         * m4/depend.m4 (AM_DEP_TRACK): Use `AS_HELP_STRING' to format
1896         the help message added to the generated configure.
1897         * m4/dmalloc.m4 (AM_WITH_DMALLOC): Likewise.
1898         * m4/lispdir.m4 (AM_PATH_LISPDIR): Likewise.
1899         * m4/maintainer.m4 (AM_MAINTAINER_MODE): Likewise.
1900         * m4/multi.m4 (AM_ENABLE_MULTILIB): Likewise.
1901         Also, bumped all serial numbers of the modified m4 files.
1902
1903 2010-12-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
1904
1905         Improve tests on generated portions of configure help screen.
1906         * tests/help-depend.test: Grepping of configure help screen
1907         relaxed to cater for possible line wrapping, and tightened in
1908         other respects.
1909         * tests/help-depend2.test: Likewise.
1910         * tests/help-dmalloc.test: Likewise.
1911         * tests/help-lispdir.test: Likewise.
1912         * tests/help-maintainer.test: Likewise.
1913         * tests/help-multilib.test: Likewise.
1914         * tests/help-silent.test: Likewise.
1915         * tests/help-upc.test: Likewise.
1916         * tests/help-init.test: Grepping of configure help screen
1917         tightened.
1918
1919 2010-12-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
1920
1921         Extended tests on AC_CONFIG_AUX_DIR.
1922         * tests/auxdir.test: Enable `errexit' shell flag.  Prefer `$me'
1923         over hard-coded test name.  Use proper m4 quoting.  Add trailing
1924         `:' command.
1925         * tests/auxdir2.test: Likewise.  Try to call automake also with
1926         the `-a' option, so that it will not fail for spurious reasons.
1927         * tests/auxdir3.test: Add an explanatory comment and a trailing
1928         `:' command.
1929         * tests/auxdir4.test: Prefer `$me' over hard-coded test name.
1930         Make grepping of automake stderr slightly stricter.  Also, now
1931         this test just checks about Automake's reaction to unportable
1932         auxiliary directory names (and it has been extended in this
1933         respect).  Moved the checks about non-existent auxiliary
1934         directories to ...
1935         * tests/auxdir5.test: ... this new test.
1936         * tests/auxdir6.test: New test.
1937         * tests/auxdir7.test: Likewise.
1938         * tests/auxdir8.test: Likewise.
1939         * tests/auxdir9.test: Likewise.
1940         * tests/Makefile.am (TESTS): Updated.
1941
1942 2010-12-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
1943
1944         Tests: extend checks on remake rules.
1945         This adds proper semantical tests (i.e. run make to check the
1946         rebuild rules are correctly triggered) in addition to tentative
1947         grepping of the generated Makefile.in(s).
1948         * tests/remake.test: Enable `errexit' shell flag, and related
1949         changes.  Modernize `configure.in'.  Add trailing `:' command.
1950         Improve heading comments, and add a reference to new sister test
1951         remake1a.test.
1952         * tests/remake3.test: Likewise (but with sister test being
1953         remake3a.test).
1954         * tests/remake2.test: Improve heading comments.  Enable `errexit'
1955         shell flag, and related changes.  Modernize `configure.in'.  Make
1956         grepping of `Makefile.in' slightly stricter.  Add trailing `:'
1957         command.
1958         * tests/remake5.test: Also run the `distcheck' target.  Add
1959         trailing `:' command.  Use proper m4 quoting in configure.in.
1960         * tests/remake4.test: Prefer `$me' over hard-coded test name.
1961         * tests/remake7.test: Use the `configure.in' stub created by
1962         ./defs, rather than writing it from scratch.
1963         * tests/remake6.test: Likewise.  Also, add trailing `:' command,
1964         and ensure verbose printing of captured make output.
1965         * tests/remake1a.test: New test, sister of remake.test.
1966         * tests/remake3a.test: New test, sister of remake3.test.
1967         * tests/remake8a.test: New test.
1968         * tests/remake8b.test: Likewise.
1969         * tests/remake9a.test: Likewise.
1970         * tests/remake9b.test: Likewise.
1971         * tests/remake9c.test: Likewise.
1972         * tests/remake9d.test: Likewise.
1973         * tests/remake10a.test: Likewise.
1974         * tests/remake10b.test: Likewise.
1975         * tests/remake10c.test: Likewise.
1976         * tests/remake11.test: Likewise.
1977         * tests/remake12.test: Likewise.
1978         * tests/Makefile.am (TESTS): Updated.
1979
1980 2010-12-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
1981
1982         Improve and extend tests on canonicalization.
1983         * tests/canon-name.test: Add trailing `:' command.  When writing
1984         configure.in, prefer to use $me instead of hard-coding the test
1985         name.
1986         * tests/canon3.test: Prefer trailing `:' over trailing `Exit 0'.
1987         * tests/canon4.test: Likewise.  Make grepping of Makefile.in
1988         stricter.  Improve heading comment, and add reference to ...
1989         * tests/canon6.test: ... this new test (sister test of the
1990         previous one).
1991         * tests/canon.test: Prefer cat + here-doc over echo to append
1992         text to configure.in.  Extend grepping of Automake stderr.  Add
1993         trailing `:' command.
1994         * tests/canon5.test: Likewise.
1995         * tests/canon7.test: New file, stress test on canonicalization.
1996         * tests/canon8.test: New test, for better coverage (check that
1997         the `@' character is not transliterated in canonicalizations).
1998         * tests/Makefile.am: Updated.
1999
2000 2010-12-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
2001
2002         Libobj tests: refer to automake bug tracker for limitations.
2003         * tests/libobj15b.test (configure.in): In the comment explaining
2004         why an apparently redundant AC_OUTPUT is indeed needed, refer
2005         to the relevant entry in the Automake bug tracker rather than
2006         describing the bug in detail with a FIXME-style comment.
2007         * tests/libobj15c.test: Likewise.
2008         * tests/libobj20b.test: Likewise.
2009
2010         Libobj tests: do not use `##' automake comments in-line.
2011         * tests/libobj19.test (Makefile.am): Do not use inline `##'
2012         comments in the definition of AUTOMAKE_OPTIONS.
2013         * tests/libobj20c.test: Likewise.
2014         Report by Ralf Wildenhues.
2015
2016 2010-12-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2017
2018         Fix testsuite failure of check12.test without DejaGNU.
2019         * tests/check12.test: Require runtest.
2020
2021 2010-12-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
2022
2023         Tests defs: more uses of $top_testsrcdir.
2024         * tests/compile6.test: Use `$top_testsrcdir' instead of
2025         `$testsrcdir/..'.
2026
2027 2010-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
2028
2029         Tests required tools: also try `-v' option for GNU compilers.
2030         * tests/defs.in: In the loop on "$required" tools, for gcc
2031         and g++, also run "gcc -v" (resp. "g++ -v"), to get more
2032         information, and for consistency with gcj.
2033
2034 2010-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
2035             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2036
2037         Tests defs: avoid some useless subshells.
2038         * tests/defs: In the loop on "$required" tools: avoid subshells
2039         where not needed.
2040
2041 2010-12-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
2042
2043         Extend tests on AC_LIBOBJ and friends.
2044         * tests/aclibobj.test: Removed, superseded by ...
2045         * tests/libobj-basic.test: ... this new test, which runs autoconf,
2046         ./configure and make, to ensure everything really works.
2047         * tests/libobj3.test: Add trailing `:' command.  Escape literal
2048         dot in grep regexp.
2049         * tests/libobj4.test: Enable `errexit' shell flag, and related
2050         changes.  Add trailing `:' command.  Use proper m4 quoting.
2051         * tests/ltlibobjs.test: Likewise.
2052         * tests/libobj5.test: Enable `errexit' shell flag, and related
2053         changes.  Add trailing `:' command.  Make more robust by using
2054         longer filenames to be grepped.
2055         * tests/libobj8.test: Enable `errexit' shell flag, and related
2056         changes.  Add trailing `:' command.  Use the configure.in
2057         stub provided by ./defs, rather than writing it from scratch.
2058         * tests/libobj2.test: Likewise.  Also, add calls to autoconf,
2059         ./configure and make, to ensure everything really works.
2060         * tests/libobj7.test: Likewise, and ensure that at least one
2061         function listed in AC_REPLACE_FUNCTIONS is truly replaced.
2062         * tests/libobj13.test: Make grepping of Automake stderr slightly
2063         stricter.  Add trailing `:' command.
2064         * tests/libobj12.test: Likewise.  Also, prefer "cat + here-doc"
2065         over "echo" to append to Makefile.am, and some cosmetic changes
2066         in spacing.
2067         * tests/libobj14.test: Call `Exit 1' if sourcing of ./defs fails.
2068         Slighty improve m4 quoting.  Add trailing `:' command.
2069         * tests/libobj10.test: Add calls to autoconf, ./configure and
2070         make, to ensure everything really works.  Also, remove tests that
2071         nonexistent source for AC_LIBOBJ cause an Automake failure: this
2072         is already checked by ...
2073         * tests/libobj15a.test: ... this new test.
2074         * tests/libobj15b.test: New test, sister test of libobj15a.test,
2075         checks AC_LIBSOURCE instead of AC_LIBOBJ.
2076         * tests/libobj15c.test: New test, sister test of libobj15a.test,
2077         checks AC_LIBSOURCES instead of AC_LIBOBJ.
2078         * tests/libobj11.test: Removed, superseded by ...
2079         * tests/libobj16a.test: ... this new test.
2080         * tests/libobj16b.test: New test, sister test of libobj16a.test,
2081         but using oldish/deprecated idioms.
2082         * tests/libobj17.test: New test.
2083         * tests/libobj18.test: Likewise.
2084         * tests/libobj19.test: Likewise.
2085         * tests/libobj20a.test: Likewise.
2086         * tests/libobj20b.test: Likewise.
2087         * tests/libobj20c.test: Likewise.
2088         * tests/Makefile.am (TESTS): Updated.
2089
2090 2010-12-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2091
2092         Test `$(var:suf=rpl)' expansion in special automake variables.
2093         * tests/posixsubst-data.test: New test.
2094         * tests/posixsubst-extradist.test: Likewise.
2095         * tests/posixsubst-ldadd.test: Likewise.
2096         * tests/posixsubst-libraries.test: Likewise.
2097         * tests/posixsubst-ltlibraries.test: Likewise.
2098         * tests/posixsubst-programs.test: Likewise.
2099         * tests/posixsubst-scripts.test: Likewise.
2100         * tests/posixsubst-sources.test: Likewise.
2101         * tests/posixsubst-tests.test: Likewise.
2102         * tests/Makefile.am (TESTS): Update.
2103
2104 2010-12-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
2105
2106         Make tests `colon*.test' more "semantic".
2107         Prefer running configure and make over grepping the generated
2108         files; this is both more correct and less fragile.
2109         * tests/colon.test: Made more "semantic", as described above.
2110         * tests/colon5.test: Likewise.
2111         * tests/colon6.test: Likewise.
2112         * tests/colon7.test: Likewise.
2113         * tests/colon2.test: Likewise, and improve syncing with sister
2114         test `colon3.test'.
2115         * tests/colon3.test: Likewise (but with the sister test being
2116         `colon2.test' here).
2117
2118 2010-12-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2119
2120         Extend and improve tests on DejaGnu support.
2121         * tests/dejagnu.test: Do not create useless dummy test script.
2122         Add trailing `:' command.  In heading comments, add reference
2123         to ...
2124         * tests/check12.test: ... this new "semantic" test, covering
2125         concurrent use of dejagnu tests, simple tests and `check-local'
2126         target.
2127         * tests/dejagnu2.test: Make test more reliable, by avoid weak
2128         grepping of make output.  Prefer `cat' over `echo' to append
2129         to configure.in.  Quote literal dots in grep regexps.  Prefer
2130         `grep -c ...' over `grep ... | wc -l'.  Make grepping of
2131         automake stderr slightly stricter.  Add trailing `:' command.
2132         * tests/dejagnu3.test: Prefer `cat' over `echo' to append to
2133         configure.in.  Check stderr of expected-to-fail "make" call.
2134         Remove extra blank lines from Makefile.am.
2135         * tests/dejagnu4.test: Prefer `cat' over `echo' to append to
2136         configure.in.  Prefer `mv -f' over plain `mv' when the target
2137         file already exists.  Avoid extra mkdir calls by creating more
2138         directories at once.  Better use of blank lines.  Check that
2139         the `*.log' and `*.sum' files are created by runtest also when
2140         "make check" fails.
2141         * tests/dejagnu7.test: Prefer `cat' over `echo' to append to
2142         configure.in.  Better use of blank lines.  Add a trailing `:'
2143         command.
2144         * tests/dejagnu6.test: Likewise, and give the dejagnu test a
2145         more descriptive name.
2146         * tests/dejagnu5.test: Likewise.  Also, simply define package
2147         name to `$me' rather than using a non-obvious sed script to
2148         extract it from `AC_INIT', and write the Makefile.am with only
2149         one command.
2150         * tests/Makefile.am (TESTS): Updated.
2151
2152 2010-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2153
2154         Avoid running installed automake from 'libtool --help'.
2155         * tests/subobj9.test: Export AUTOCONF and AUTOMAKE.
2156         Together with fixed Libtool, this fixes check-coverage to not
2157         invoke installed automake.
2158
2159 2010-12-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
2160
2161         Separate checks on target overriding into multiple test scripts.
2162         * tests/overrid.test: Deleted, its contents separated into ...
2163         * tests/override-suggest-local.test: ... this new test ...
2164         * tests/override-html.test: ... and this new test ...
2165         * tests/override-conditional-1.test: ... and this new test ...
2166         * tests/override-conditional-2.test: ... and this new test (still
2167         xfailing).
2168         * tests/Makefile.am (TESTS, XFAIL_TESTS): Updated.
2169
2170         Enable `set -e' in more tests (plus some tweakings).
2171         * tests/implicit.test: Enable `errexit' shell flag, and related
2172         changes.  Add trailing `:' command.
2173         * tests/insh2.test: Likewise.
2174         * tests/instman2.test: Likewise.
2175         * tests/interp.test: Likewise.
2176         * tests/interp2.test: Likewise.
2177         * tests/library.test: Likewise.
2178         * tests/mclean.test: Likewise.
2179         * tests/info.test: Enable `errexit' shell flag, and related
2180         changes.  Add trailing `:' command.  Remove useless chaff from
2181         generated Makefile.am.  Add a "FIXME" comment.
2182         * tests/include.test: Enable `errexit' shell flag, and related
2183         changes.  Add trailing `:' command.  Prefer cat + here-doc over
2184         echo to append to configure.in.  Make tests more robust by using
2185         longer and less common names to grep.  Remove an useless call to
2186         echo.  Remove an useless subshell.
2187         * tests/header.test: Enable `errexit' shell flag, and related
2188         changes.  Use proper m4 quoting.  Add excerpts from the original
2189         report of the bug tested for by this script.
2190         * tests/gcj.test: Enable `errexit' shell flag, and related
2191         changes.  Use proper m4 quoting.  Add trailing `:' command.
2192         * tests/gcj3.test: Likewise.
2193         * tests/ldflags.test: Likewise.
2194         * tests/libtool.test: Likewise.
2195         * tests/listval.test: Likewise.
2196         * tests/javaprim.test: Likewise, and prefer cat + here-doc over
2197         echo to append to configure.in.
2198         * tests/javasubst.test: Likewise.
2199         * tests/discorver.test: Enable `errexit' shell flag.  Prefer
2200         trailing `:' over trailing `Exit 0'.
2201         * tests/instdat.test: Enable `errexit' shell flag, and related
2202         changes.  Use proper m4 quoting.  Avoid useless subshell.  Prefer
2203         cat + here-doc over echo to append to configure.in.
2204         * tests/libtool2.test: Enable `errexit' shell flag, and related
2205         changes.  Add trailing `:' command.  Use the configure.in
2206         stub provided by ./defs, rather than writing it from scratch.
2207
2208         Modernize, improve and/or tweak some test scripts.
2209         * tests/maintclean.test: Use proper m4 quoting.  Add trailing `:'
2210         command.
2211         * tests/sinclude.test: Likewise, and add a couple of blank lines,
2212         for clarity.
2213         * tests/make.test: Move setting of `errexit' shell flag earlier in
2214         the script (just after inclusion of ./defs).  Use the configure.in
2215         stub created by ./defs, rather than writing it from scratch.  Some
2216         cosmetic changes in spacing.  Ensure we wait enough time before
2217         touching configure.in to trigger the rebuild rules.
2218         * tests/makej.test: Use `$me' instead of hard-coding the test
2219         name.  Add trailing `:' command.
2220         * tests/version7.test: Likewise.
2221         * tests/space.test: Enable `errexit' shell flag, and related
2222         changes.
2223         * tests/makevars.test: Likewise.  Also, prefer trailing `:' over
2224         trailing `Exit 0', and be more tolerant of white spaces when
2225         grepping Makefile.in.
2226
2227 2010-12-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
2228
2229         * tests/silent8.test: Use "|| Exit 1" after ". ./defs".
2230
2231         Enable `set -e' in more tests (plus some tweakings).
2232         * tests/mkinstall.test: Enable `errexit' shell flag, and related
2233         changes.  Add a trailing `:' command, if needed.
2234         * tests/mdate2.test: Likewise.
2235         * tests/objc.test: Likewise.
2236         * tests/noinst.test: Likewise.
2237         * tests/outdir.test: Likewise.
2238         * tests/number.test: Likewise.
2239         * tests/pluseq.test: Likewise.
2240         * tests/req.test: Likewise.
2241         * tests/rulepat.test: Likewise.
2242         * tests/specflg6.test: Likewise.
2243         * tests/spell3.test: Likewise.
2244         * tests/parse.test: Likewise, and ...
2245         (configure.in): Use the stub created by ./defs, rather than
2246         writing it from scratch.  Remove useless calls to AC_PROG_RANLIB
2247         and AC_OUTPUT.
2248         * tests/mdate4.test: Likewise.
2249         * tests/mkinstall.test: Likewise, and ...
2250         (configure.in): ... drop useless call to `AC_OUTPUT'.
2251         * tests/output.test: Enable `errexit' shell flag, and related
2252         changes.  Add a trailing `:' command.
2253         (configure.in): Modernize.
2254         * tests/output2.test: Likewise.
2255         * tests/output3.test: Likewise.
2256         * tests/output4.test: Likewise.
2257         * tests/mdate3.test: Enable `errexit' shell flag, and related
2258         changes.  Prefer `$me' over hard-coded test name.  Do not move
2259         non-existent or useless files in the build auxiliary directory.
2260         * tests/nodistdir.test: Enable `errexit' shell flag, and related
2261         changes.  Prefer trailing `:' over trailing `Exit 0'.
2262         * tests/nodist.test: Likewise.  Also, prefer cat + here-doc over
2263         echo to create input test files, and do not create useless dummy
2264         C source files.
2265         * tests/nodist2.test: Likewise.
2266         * tests/ppf77.test: Enable `errexit' shell flag, with related
2267         changes.  Add a trailing `:' command.  Do not create useless
2268         dummy source files.
2269         * tests/spelling.test: Enable `errexit' shell flag, with related
2270         changes.  Add a trailing `:' command.  Also, grep Automake error
2271         message.
2272         * tests/specflg3.test: Enable `errexit' shell flag, with related
2273         changes.  Avoid unportable use of `-e' option of fgrep.  Prefer
2274         trailing `:' over trailing `Exit 0'.  Remove extra empty lines,
2275         and cosmetic changes to whitespaces.
2276         * tests/obsolete.test: Enable `errexit' shell flag, with related
2277         changes.  Improve verbosity.  Other miscellaneous changes.
2278
2279 2010-11-30  Stefano Lattarini  <stefano.lattarini@gmail.com>
2280
2281         Improve and extend tests on `:=' variable assignments.
2282         * tests/colneq.test: Avoid redundant use of variable assignments
2283         in Makefile.am.  Use command-line automake options instead of
2284         editing AUTOMAKE_OPTIONS in Makefile.am.  Make grepping of the
2285         generated Makefile.in slightly stricter.  Add a trailing `:'
2286         command.
2287         * tests/colneq2.test: Do not create unneeded dummy files.  Run
2288         also autoconf, ./configure and make.  Add trailing `:' command.
2289         * tests/colneq3.test: New test, similar to colneq.test, but
2290         running also autoconf, ./configure and make.
2291         * tests/Makefile.am (TESTS): Update.
2292
2293 2010-11-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
2294
2295         Remove long-deprecated options --Werror and --Wno-error.
2296         These options has been deprecated at least since commit
2297         "Release-1-6-1b-35-gc037f20", dated 2002-07-06.
2298         * automake.in (parse_arguments): Do not recognize anymore options
2299         `--Werror' and `--Wno-error' as synonyms of respectively `-Werror'
2300         and `-Wno-error'.
2301         * tests/werror.test: Update: use `-Werror' instead of `--Werror'.
2302         * NEWS: Update.
2303
2304 2010-11-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
2305
2306         Fix spurious failures in `silent*.test' for $CC != gcc
2307         In some tests on automake-produced silent rules, we forced the
2308         use of gcc depmode to improve testsuite coverage; but this has
2309         unsurprisingly led to spurious failures when some non-GNU C
2310         compilers were used.  So we are now careful to require GCC in
2311         tests that force gcc depmode.
2312         From reports by Ralf Wildenhues.
2313         * tests/silent5.test: Test removed, its content split into ...
2314         * tests/silent-many-generic.test, tests/silent-many-gcc.test: ...
2315         these new sister tests, the latter of which forces gcc depmode
2316         and lists "gcc" in $required.
2317         * tests/silentlex.test: Test removed, its content split into ...
2318         * tests/silent-lex-generic.test, tests/silent-lex-gcc.test: ...
2319         these new sister tests, the latter of which forces gcc depmode
2320         and lists "gcc" in $required.
2321         * tests/silentyacc.test: Test removed, its content split into ...
2322         * tests/silent-yacc-generic.test, tests/silent-yacc-gcc.test: ...
2323         these new sister tests, the latter of which forces gcc depmode and
2324         lists "gcc" in $required.
2325         * tests/Makefile.am (TESTS): Updated.
2326
2327 2010-11-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
2328
2329         Tests: consistently use "|| Exit 1" after ". ./defs".
2330         * tests/autohdr.test: Use `. ./defs || Exit 1', not bare
2331         `. ./defs', for consistency with other tests.
2332         * tests/autohdr2.test: Likewise.
2333         * tests/autohdr3.test: Likewise.
2334         * tests/autohdr4.test: Likewise.
2335         * tests/cond23.test: Likewise.
2336         * tests/cond24.test: Likewise.
2337         * tests/cond25.test: Likewise.
2338         * tests/cond26.test: Likewise.
2339         * tests/cond27.test: Likewise.
2340         * tests/cond28.test: Likewise.
2341         * tests/cond29.test: Likewise.
2342         * tests/cond30.test: Likewise.
2343         * tests/cond31.test: Likewise.
2344         * tests/cond32.test: Likewise.
2345         * tests/cond33.test: Likewise.
2346         * tests/cond34.test: Likewise.
2347         * tests/cond35.test: Likewise.
2348         * tests/cond36.test: Likewise.
2349         * tests/cond37.test: Likewise.
2350         * tests/cond38.test: Likewise.
2351         * tests/cond39.test: Likewise.
2352         * tests/cond40.test: Likewise.
2353         * tests/cond41.test: Likewise.
2354         * tests/cond42.test: Likewise.
2355         * tests/cond43.test: Likewise.
2356         * tests/cond44.test: Likewise.
2357         * tests/cond45.test: Likewise.
2358         * tests/dollarvar.test: Likewise.
2359         * tests/dollarvar2.test: Likewise.
2360         * tests/hfs.test: Likewise.
2361         * tests/libobj14.test: Likewise.
2362         * tests/percent.test: Likewise.
2363         * tests/percent2.test: Likewise.
2364         * tests/phony.test: Likewise.
2365         * tests/silent.test: Likewise.
2366         * tests/silent2.test: Likewise.
2367         * tests/silent3.test: Likewise.
2368         * tests/silent4.test: Likewise.
2369         * tests/silent5.test: Likewise.
2370         * tests/silent6.test: Likewise.
2371         * tests/silent7.test: Likewise.
2372         * tests/silent9.test: Likewise.
2373         * tests/silentcxx.test: Likewise.
2374         * tests/silentf77.test: Likewise.
2375         * tests/silentf90.test: Likewise.
2376         * tests/silentlex.test: Likewise.
2377         * tests/silentyacc.test: Likewise.
2378
2379         Avoid useless cleaning in some `silent*.test' tests.
2380         * tests/silentf77.test: Removed useless calls to "make clean"
2381         and "make maintainer-clean".
2382         * tests/silentf90.test: Likewise.
2383         * tests/silent3.test: Removed useless call to "make distclean".
2384         * tests/silent4.test: Likewise.
2385         * tests/silent9.test: Likewise.
2386
2387 2010-11-19  Ian Lance Taylor  <iant@google.com>
2388
2389         Sync config-ml.in from GCC.
2390         * config-ml.in: Add Go support: treat GOC and GOCFLAGS like other
2391         compiler/flag environment variables.
2392
2393 2010-11-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2394
2395         release-stats: account for more generated tests.
2396         * Makefile.am (release-stats): Be sure to take into account all
2397         the generated tests, by grepping the test scripts to decide which
2398         ones of them are automatically generated.
2399
2400 2010-11-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
2401
2402         Code cleanup after removal of option `--output-directory'.
2403         * automake.in ($output_directory): Remove, it's unconditionally
2404         defined to `.' and used only ...
2405         (generate_makefile): ... in this subroutine, which now has been
2406         edited and simplified accordingly.
2407
2408         Remove obsolete automake option `--output-directory'.
2409         This option has been deprecated since version 1.7 (2002/2003).
2410         * automake.in ($output_directory): Define to `.' unconditionally.
2411         (parse_arguments): Remove handling of equivalent options `-o' and
2412         `--output-directory'.
2413         * tests/outdir.test: Removed.
2414         * tests/no-outdir-option.test: New test.
2415         * tests/Makefile.am (TESTS): Updated.
2416         * NEWS: Updated.
2417
2418 2010-11-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
2419
2420         Automake::Config: remove extra trailing semicolon.
2421         * lib/Automake/Config.in: Remove extra trailing semicolon.
2422
2423         help4.test: fix botched heading comment.
2424         * tests/help4.test: Fixed the heading comment, since it
2425         didn't correctly describe what checks the testcase was
2426         supposed to perform.
2427
2428         help2.test: add checks on aclocal too.
2429         * tests/help2.test: Check that also `aclocal --version' and
2430         `aclocal --help' work with configure.in and acinclude.m4 both
2431         broken.
2432
2433 2010-11-19  Stefano Lattarini  <stefano.lattarini@gmail.com>
2434
2435         New test on repeated automake options.
2436         * tests/repeated-options.test: New test, check that automake
2437         does not complain on repeated options, nor generate broken or
2438         incorrect makefiles.
2439         * tests/Makefile.am (TESTS): Updated.
2440
2441 2010-11-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2442
2443         Fix spurious failures of silent-rules tests with Sun Fortran.
2444         * tests/silentf77.test: Strip from the make output some verbose
2445         messages possibly printed by the SunStudio fortran compilers, to
2446         avoid spurious failures.  Add a trailing `:' command.
2447         * tests/silentf90.test: Likewise.
2448
2449 2010-11-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
2450
2451         Fix spurious failures of silent5.test with Sun Fortran.
2452         * tests/silent5.test: Strip from the make output some verbose
2453         messages possibly printed by the SunStudio fortran compilers,
2454         to avoid spurious failures.  This bug has been there from the
2455         very first version of this test script.
2456
2457 2010-11-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
2458
2459         Fix regression in colon{5,6}.test (failures on AIX 5.3).
2460         * tests/colon5.test: Also substitute `@SHELL@' with `$SHELL' when
2461         post-processing the generated Makefile.in, to work around a bug
2462         of AIX 5.3 make which doesn't allow setting the `$(SHELL)' macro
2463         on the commend line.  Calls to `$MAKE' adjusted accordingly.
2464         * tests/colon6.test: Likewise.
2465         Regression introduced in commit v1.11-175-gf9fe878 "Modernize,
2466         improve and/or extend tests `colon*.test", and reported by Ralf
2467         Wildenhues.
2468
2469 2010-11-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
2470
2471         Fix regression in ansi.test (failure on AIX 5.3).
2472         * tests/ansi.test: Remove redundant hackish check done using a
2473         hand-postprocessed Makefile.in.  This check worked by setting
2474         the `$(SHELL)' macro on the command line of make, but this is
2475         not supported by the AIX 5.3 make implementation.
2476         This bug has been lurking for a long time, and was activated by
2477         commit v1.11-125-gc1f6cdb "Enable `errexit' shell flag in various
2478         tests".  Report by Ralf Wildenhues.
2479
2480 2010-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2481
2482         backcompat5.test: avoid '##'-style comments inside recipe commands.
2483         * tests/backcompat5.test: Remove double-hash comments
2484         from makefile rule commands, they are not part of the
2485         Automake API.  Fixes testsuite failure with Tru64 make.
2486
2487         tests: avoid '##'-style comments inside recipe commands.
2488         * tests/confh.test, tests/confh8.test: Remove
2489         double-hash comments from makefile rule commands, they
2490         are not part of the Automake API.
2491
2492 2010-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2493
2494         tests: work around dash quoting issue in case statements.
2495         * tests/color.test, tests/color2.test: Quote variable in case
2496         pattern, to avoid skipping tests with dash 0.5.5.1.
2497
2498 2010-11-16  Peter Rosin  <peda@lysator.liu.se>
2499
2500         Skip MSVC oriented tests if the shell is not capable.
2501         * tests/defs: New required entry 'xsi-shell'.
2502         * tests/ar-lib.test, tests/compile3.test, tests/compile6.test:
2503         Require a XSI capable shell.
2504         Reported by Ralf Wildenhues.
2505
2506 2010-11-15  Peter Rosin  <peda@lysator.liu.se>
2507
2508         compile: clear the `eat' variable earlier.
2509         * lib/compile: Clear the `eat' variable earlier.
2510         ($scriptversion): Update.
2511         * tests/compile3.test: Prevent regressions.
2512
2513 2010-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2514
2515         More stable configure output from sanity check.
2516         * m4/sanity.m4 (AM_SANITY_CHECK): Always print check line
2517         about ensuring newer files, even if we don't actually need
2518         to wait any more.
2519
2520 2010-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2521
2522         Rebuild menus in the manual.
2523         * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
2524         Thanks to Ian Lance Taylor for the suggestion.
2525
2526         Fix install-strip when $(STRIP) contains several words.
2527         * lib/am/install.am (install-strip): Update comment.  Use
2528         separate sub-make invocations for empty and nonempty $(STRIP),
2529         to fix quoting issues.
2530         * tests/strip2.test, tests/strip3.test: New tests.
2531         * tests/Makefile.am (TESTS): Adjust.
2532
2533 2010-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2534
2535         Fix yaccdry.test failure: require bison.
2536         * tests/yaccdry.test: Require bison.
2537         Found by NixOS Hydra.
2538
2539 2010-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
2540
2541         Fix bug in test `backcompat6.test' (MSYS portability).
2542         * tests/backcompat6.test (Makefile.am): Grep the output from the
2543         test program, rather than diffing it, to avoid spurious failures
2544         on MinGW/MSYS due to LF vs. CRLF line endings.
2545         Reported by Ralf Wildenhues.
2546
2547 2010-11-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
2548
2549         Deprecate obsolete macro AM_WITH_REGEX.
2550         * m4/regex.m4: Document the `AM_WITH_REGEX' macro as obsolete,
2551         and state that it should be removed two years from now.
2552         (AM_WITH_REGEX): Raise an m4-time warning of the "obsolete"
2553         category when this macro is used.
2554         * doc/automake.texi (Public Macros): Move description of
2555         `AM_WITH_REGEX' from here ...
2556         (Obsolete Macros): ... to here, and declare it as obsolete
2557         and "to be removed in a future version".
2558         * tests/regex-obsolete.test: New test.
2559         * tests/Makefile.am (TESTS): Update.
2560
2561 2010-11-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2562
2563         Improve and extend tests on man pages support.
2564         * tests/man.test: Enable `errexit' shell flag, and related changes.
2565         Make grepping of generated Makefile.in slightly stricter.
2566         * tests/man3.test:  Add trailing `:' command.
2567         * tests/man5.test: Prefer cat + here-doc over echo to append to
2568         configure.in.
2569         * tests/man2.test: Likewise, and add trailing `:' command.
2570         * tests/man4.test: More thorough and consistent checking of make
2571         error messages.  Place fake `help2man' program in a new `bin'
2572         directory rather than in `.'.  Move the checks using the real
2573         `help2man' program to ...
2574         * tests/man6.test: ... this new test, and extend them.  This test
2575         passes with GNU make and Solaris make, still fails with BSD make.
2576         * tests/man7.test: New test, extracted from old man4.test, which
2577         checks for a bug in maintainer-clean w.r.t. generated manpages.
2578         * tests/man8.test: New test, extracted from old man4.test, which
2579         checks for a bug in distcheck w.r.t. generated manpages.  Passes
2580         with GNU make and Solaris make, still fails with BSD make.
2581
2582 2010-11-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
2583
2584         Minor improvements and extensions to various tests.
2585         * tests/defun.test: Also run autoconf and grep the generated
2586         configure to make sure that aclocal truly picks up all the
2587         required macros.
2588         * tests/compile_f_c_cxx.test: Prefer trailing `:' over trailing
2589         `Exit 0'.  Do not create useless dummy source files.  Do not set
2590         useless `$(foo_LDADD)' variable in `Makefile.am'.  Do not call
2591         useless macro `AC_F77_LIBRARY_LDFLAGS' in `configure.in'.
2592         * tests/compile_f90_c_cxx.test: Likewise.
2593         * tests/suffix10.test: Slightly stricter grepping of make output.
2594         * tests/compile.test: Add trailing `:' command.
2595         * tests/defun2.test: Likewise.
2596         * tests/vars3.test: Likewise.
2597         * tests/vartar.test: Likewise.
2598         * tests/vars.test: Likewise.  Also, extend test by checking
2599         that the definition of `MY_FLAGS*' variables is preserved in
2600         the generated `Makefile.in'.
2601         * tests/stamph2.test: Prefer trailing `:' over trailing `Exit 0'.
2602         Use proper m4 quoting in `configure.in'.
2603
2604 2010-11-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
2605
2606         Tests defs: improve messages for skipped tests.
2607         * tests/defs: Give meaningful messages about the reasons of a
2608         test skip; this is especially useful as this file is run without
2609         verbose xtraces on.  Related reorderings in the code and new
2610         comments.
2611
2612 2010-11-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
2613
2614         Tests defs: move static definitions in a new file `defs-static'.
2615         The new file is meant to be idempotent w.r.t. multiple inclusions.
2616         * tests/defs.in: Removed, its contents split among ...
2617         * tests/defs-static.in: ... this new file ...
2618         * tests/defs: ... and this new file, including the former.
2619         * configure.ac (AC_CONFIG_FILES): Remove `tests/defs', add
2620         `tests/defs-static'.
2621         (AC_CONFIG_LINKS): Add `tests/defs'.
2622         * tests/Makefile.am ($(parallel_tests)): Update.
2623         ($(instspc_tests)): Likewise.
2624         * tests/.gitignore: Update.
2625
2626         Tests defs: $testsbuilddir is now AC_SUBST'ed.
2627         * tests/defs.in ($testsbuilddir): Substitute from @abs_builddir@.
2628         Add sanity check on $testsbuilddir, similar to those on
2629         $testsrcdir and $top_testsrcdir.
2630
2631         Tests defs: do not print message "Running test $0" anymore.
2632         * tests/defs.in: Printing the message "=== Running test $0" at
2633         the beginning of each tests made sense when Automake used the old
2634         test-driver, which sent all the output directly to stdout/stderr.
2635         Now that the parallel test-driver is used, which saves output of
2636         each test in its corresponding log file, that old message is just
2637         useless noise.
2638
2639         Tests defs: rename $curdir -> $testbuilddir
2640         * tests/defs.in: Rename $curdir to $testbuildir, for clarity and
2641         consistency with $testsrcdir and $top_testsrcdir.
2642
2643         Tests defs: prefer "$curdir" over "`pwd`".
2644         * tests/defs.in: We already save the value of `pwd` in $curdir
2645         early in the file, so there no need to recalculate it later, when
2646         the current working directory is not changed.
2647
2648         Tests defs: use `$me' in more error messages.
2649         * tests/defs.in: Also use `$me' in error messages referring to
2650         missing `defs' or `defs.in', since that variable is now defined
2651         before those checks.
2652
2653         Tests defs: do not use `Exit' where plain `exit' suffices.
2654         * tests/defs.in: Use "exit 77" rather than "Exit 77" to skip the
2655         test when required libtool/gettext macros are not found, since
2656         such skips would take place before the exit trap is installed.
2657
2658         Tests defs: improve and extends comments.
2659         * tests/defs.in: Improve and extends some comments, especially in
2660         relation with the changes introduced by the previous reordering.
2661
2662         Tests defs: various reorderings.
2663         * tests/defs.in: Reordered various snippets of code in a
2664         clearer way.
2665
2666 2010-11-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
2667
2668         Fix bug in test `backcompat4.test' (stale autom4te cache).
2669         * tests/backcompat4.test: Remove stale autom4te cache directory
2670         before re-running aclocal and automake.  Also, since we are at
2671         it, be more verbose in displaying contents of generated files,
2672         to ease debuggability.
2673         Reported by Ralf Wildenhues.
2674
2675 2010-11-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
2676
2677         Fix a bug in variable concatenation with `+='.
2678         * lib/Automake/VarDef.pm (append): Since the content of the
2679         "appended-to" variable is going to be unconditionally normalized
2680         later, simply separate the appended value with a single whitespace
2681         character, instead of trying to be uselessly smarter by using
2682         escaped newlines.  This fixes a bug in which extra backslashes
2683         where erroneously inserted in the variable's final value.
2684         * tests/pluseq11.test: New test, exposing the bug.
2685         * tests/Makefile.am (TESTS): Update.
2686         Reported by Andy Wingo.
2687
2688 2010-11-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
2689
2690         Modernize, improve and/or tweak various test scripts.
2691         * tests/stamph2.test: Improve m4 quoting in `configure.in', and
2692         prefer trailing `:' over trailing `Exit 0'.
2693         * tests/syntax.test: Escape literal dots in grep regexps.
2694         * tests/copy.test: Enable `errexit' shell flag.  Extend test by
2695         checking with `test' utility that the script `install-sh' is
2696         copied, but not symlinked.
2697         * tests/depdist.test: Move setting of `errexit' shell flag earlier
2698         in the script (just after inclusion of ./defs).  Avoid obsoleted
2699         constructs in generated `configure.in'.  Prefer to do our checks
2700         by running configure and make over grepping Makefile.in.
2701         * tests/target-cflags: Move setting of `errexit' shell flag
2702         earlier in the script (just after inclusion of ./defs). Use the
2703         `configure.in' stub created by `./defs', rather than writing it
2704         from scratch.
2705         * tests/target-clash: Do not uselessly run autoconf.
2706         * tests/ctarget1.test: Renamed ...
2707         * tests/cond-basic.test: ... to this.  Use the `configure.in' stub
2708         created by `./defs', rather than writing it from scratch.
2709         Move setting of `errexit' shell flag earlier in the script (just
2710         after inclusion of ./defs).  Other minor cosmetic changes.
2711         * tests/Makefile.am (TESTS): Updated.
2712
2713 2010-11-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
2714
2715         New tests on obsoleted usages of automake/autoconf macros (such
2716         as AC_INIT, AM_INIT_AUTOMAKE and AC_OUTPUT).
2717         * tests/backcompat.test: New test script.
2718         * tests/backcompat2.test: Likewise.
2719         * tests/backcompat3.test: Likewise.
2720         * tests/backcompat4.test: Likewise.
2721         * tests/backcompat5.test: Likewise.
2722         * tests/backcompat6.test: Likewise.
2723         * tests/init.test: Extended and improved, esp. by trying more
2724         combinations of calls to AC_INIT and AM_INIT_AUTOMAKE with few
2725         arguments.
2726         * tests/Makefile.am (TESTS): Updated.
2727
2728 2010-11-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
2729
2730         Fix bug in rules for creating vala vapi/header files.
2731         * automake.in (lang_vala_finish_target): Add forgotten "fi" in an
2732         if control structure in a generated make rules.  Bug introduced
2733         by previous commit `v1.11-221-gd7c1679', and revealed by failure
2734         of test `vala2.test'.
2735
2736 2010-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2737
2738         Fix and document rules to not touch the tree with `make -n'.
2739         * doc/automake.texi (Multiple Outputs): Document the problem of
2740         modifications during dry-run execution, propose solution.
2741         * NEWS: Update.
2742         * automake.in (lang_vala_finish_target): Split recipe so the
2743         stamp file is not removed with GNU `make -n'.
2744         (lang_yacc_target_hook): Separate removal of parser output file
2745         and header remaking.
2746         * lib/am/lisp.am ($(am__ELCFILES)): Determine whether -n was
2747         passed to make, take care not to remove any files in that case.
2748         * lib/am/remake-hdr.am (%CONFIG_H%): Separate removal of
2749         %STAMP% file from induced remaking of config header.
2750         * tests/autohdrdry.test, tests/lispdry.test, tests/yaccdry.test:
2751         New tests.
2752         * tests/Makefile.am (TESTS): Update.
2753
2754 2010-11-05  Stefano Lattarini  <stefano.lattarini@gmail.com>
2755
2756         Fix potential bug in generated tests `instpc-*.test'.
2757         This bug is due to the changes introduced by the recently-merged
2758         "tests-init" branch.  In that branch, `tests/defs' didn't define
2759         anymore `$srcdir', instead defining directly `$testsrcdir'; but
2760         the generated tests were using `$srcdir', hence the bug.
2761         Luckily, since the Automake parallel test driver automatically
2762         exports `srcdir' to a proper value, that prevented the bug from
2763         manifesting itself.
2764         * tests/Makefile.am ($(instspc_tests)): In the generated test
2765         scripts, use `$testsrcdir', not `$srcdir'.
2766
2767 2010-11-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
2768
2769         Overhauled and modularized tests in `instspc.test'.
2770         The test `instspc.test' was way too big and fragile.  Its running
2771         time was very long.  It also produced a log that was nearly
2772         unreadable due to its length, making it very difficult to find
2773         out the reason for failures.
2774         Also, it was too much monolithic, with a single (maybe spurious)
2775         failure in a corner case causing the whole test to fail (even if
2776         everything worked as expected in the other 99% of cases).
2777         The present change should solve these problems, by separating
2778         `instspc.test' into many smaller, self-contained, auto-generated
2779         tests.
2780         * tests/instspc.test: Removed.
2781         * tests/instspc-tests.sh: New script, fulfilling a double role:
2782         1. it generates a Makefile.am snippet `tests/instspc-tests.am',
2783         containing the definition of a list of new tests which will take
2784         over the older `instspc.test', and
2785         2. it is sourced by said generated tests with proper parameters
2786         pre-set, to run the "meat" of the checks.
2787         This apparent abuse is indeed required because the test generation
2788         code and test execution code are inevitably intertwined.
2789         * tests/Makefile.am ($(srcdir)/instspc-tests.am): Include this
2790         snippet, which (among the other things) defines ...
2791         (instspc_tests): ... this new macro, containing the list of the
2792         newly generated `instspc*.test' tests, and ...
2793         (instspc_xfail_tests): ... this new macro, containing the list
2794         of the `instspc*.test' tests expected to fail.
2795         ($(instspc_tests)): New rule, generates the `instspc*.test' tests.
2796         ($(instspc_tests:.test=.log)): New rule, registers the dependency
2797         of all `instspc*.test' tests on the `instspc-tests.sh' script.
2798         (TESTS): Add `$(instspc_tests)', remove `instspc.test'.
2799         (XFAIL_TESTS): Add `$(xfail_instspc_tests)'.
2800         (EXTRA_DIST): Distribute instspc-tests.sh.
2801         (MAINTAINERCLEANFILES): Added $(instspc_tests).
2802         Other minor cosmetic changes.
2803         * bootstrap: Generate instspc-tests.am.
2804         * tests/.gitignore: Updated.
2805
2806 2010-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2807
2808         Add FAQ entry for bug reporting instructions.
2809         * doc/automake.texi (Reporting Bugs): New section.
2810         (Introduction): Refer to it.
2811
2812 2010-10-07  Peter Rosin  <peda@lysator.liu.se>
2813
2814         depcomp: add new one-pass depmode for MSVC 7 and later.
2815         * lib/depcomp: Add new depmodes 'msvc7' and 'msvc7msys' which
2816         make use of the -showIncludes option added in MSVC 7.
2817         * m4/depend.m4 (_AM_DEPENDENCIES): Handle the new depmodes
2818         similarly to 'msvisualcpp' and 'msvcmsys' as MSVC does not
2819         support the -o option.
2820
2821 2010-10-05  Jim Meyering  <meyering@redhat.com>
2822
2823         dist-xz, dist-bzip2: don't hard-code -9: honor envvar settings
2824         * lib/am/distdir.am (dist-xz): Do not hard-code xz's -9: that
2825         made it impossible to override.  Instead, use its XZ_OPT envvar,
2826         defaulting to -9 if not defined.  Thus no change in behavior
2827         when XZ_OPT is not set, and now, this rule honors the setting
2828         of that envvar when it is set.  Suggested by Lasse Collin.
2829         (dist-bzip2): Likewise for it's corresponding envvar: BZIP2.
2830         * NEWS (Miscellaneous changes): Mention it.
2831         * doc/automake.texi (The Types of Distributions): Describe the
2832         newly enabled environment variables.
2833
2834 2010-10-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
2835
2836         Add support for newer python versions.
2837         * m4/python.m4 (AM_PATH_PYTHON): Add python2.7 and python3.2 to
2838         _AM_PYTHON_INTERPRETER_LIST.  Since we are at it, break a long
2839         line and fix indentation.
2840         * THANKS: Updated.
2841         From a report by Thomas Klausner.
2842
2843         Add test for `AM_WITH_DMALLOC' macro.
2844         * tests/dmalloc.test: New test.
2845         * tests/Makefile.am (TESTS): Update.
2846
2847         Fix nits and bugs in tests `help*.test'.
2848         * tests/help4.test: Fix broken sed commands used to strip `-W...'
2849         flags away from "$AUTOMAKE" and "$ACLOCAL".
2850         * tests/help3.test: Likewise, and fix a botched comment.
2851         * tests/help.test: Likewise.  Also, use "AUTOMAKE_fails ..."
2852         instead of "$AUTOMAKE ... && Exit 1", for consistency and to
2853         please maintainer-check.
2854         * tests/help2.test: Likewise.
2855
2856 2010-10-03  Stefano Lattarini  <stefano.lattarini@gmail.com>
2857             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2858
2859         Improve tests `help*.test' (also fixes maintcheck failures).
2860         * tests/help.test: To run automake, use `$AUTOMAKE' with all `-W'
2861         flags stripped away rather than hard-coded `automake-$APIVERSION',
2862         to better honour user-overrides.  Similarly for aclocal.
2863         * tests/help2.test: Likewise.
2864         * tests/help3.test: Likewise.
2865         * tests/help4.test: Likewise.
2866
2867 2010-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2868
2869         tests: fix ar-lib.test for echo that interprets backslashes.
2870         * tests/ar-lib.test: Use printf instead of echo.  Avoid test -a.
2871         More robust quoting.
2872
2873 2010-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2874
2875         maintainer-check coverage for variables before rules.
2876         * Makefile.am (sc_ensure_testsuite_has_run): Suggest keeping
2877         around the test directories.
2878         (sc_tests_makefile_variable_order): New rule with a heuristic to
2879         catch ordering violations.
2880
2881         Document and fix expansion of variables before rules.
2882         * doc/automake.texi (General Operation): Document that variables
2883         are expanded before rules.
2884         * lib/am/check.am (am__check_post): Reword a bit so it does not
2885         get matched as a rule.
2886         Suggestion by Ben Pfaff.
2887
2888 2010-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2889
2890         Coverage and minor fixes for variable typo detection.
2891         * automake.in (check_typos): Remove `EXTRA_' prefix when
2892         computing canonical name.
2893         * tests/vartypo2.test, tests/vartypos.test: New tests.
2894         * tests/Makefile.am (TESTS): Update.
2895
2896         Implement EXTRA_maude_DEPENDENCIES for programs and libraries.
2897         * automake.in (handle_programs, handle_libraries)
2898         (handle_ltlibraries): Mark EXTRA_*_DEPENDENCIES as recognized.
2899         * doc/automake.texi (Linking, Program and Library Variables)
2900         (LIBOBJS): Document EXTRA_*_DEPENDENCIES.
2901         * lib/am/library.am (%LIBRARY%): Also depend on
2902         $(EXTRA_%XLIBRARY%_DEPENDENCIES).
2903         * lib/am/ltlibrary.am (%LTLIBRARY%): Also depend on
2904         (%XLTLIBRARY%_DEPENDENCIES).
2905         * lib/am/program.am (%PROGRAM%%EXEEXT%): Also depend on
2906         $(EXTRA_%XPROGRAM%_DEPENDENCIES).
2907         * tests/extradep.test, tests/extradep2.test: New tests.
2908         * tests/Makefile.am (TESTS): Update.
2909         * NEWS: Update.
2910         Suggested by Eric Blake.
2911
2912         tests: avoid running into timing issues due to sanity change.
2913         * tests/acloca10.test, tests/acloca18.test, tests/aclocal9.test:
2914         Insert strategic sleep before aclocal reruns, to ensure files
2915         are newer.
2916         * tests/python11.test: Use --force for repeated autotools runs.
2917         Reports from the NixOS Hydra build daemon via Ludovic Courtès.
2918
2919         Fix timestamp issues by ensuring configure takes at least a second.
2920         * m4/sanity.m4 (AM_SANITY_CHECK): If we didn't sleep here,
2921         start a sleep in the background and wait for it to finish
2922         before creating config.status, hopefully fixing all spurious
2923         testsuite failures involving botched time stamps.
2924         * NEWS: Update.
2925         Reports by Ludovic Courtès, Peter Breitenlohner, and others.
2926
2927 2010-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2928
2929         Revert "parallel-tests: avoid command-line length limit issue."
2930         This reverts commit 24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835,
2931         because it re-opened the bug fixed by v1.11-10-g218e678.
2932
2933         2010-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2934
2935         parallel-tests: avoid command-line length limit issue.
2936         * automake.in (handle_tests): New argument $makefile, new
2937         substitution %MAKEFILE%.
2938         (generate_makefile): Adjust.
2939         * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
2940         sanitized TEST_LOGS value as makefile snippet on standard
2941         input to $(MAKE), to avoid exceeding the command line limit on
2942         w32 (MSYS).
2943         * NEWS: Update.
2944         Report by Bob Friesenhahn.
2945
2946 2010-09-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
2947
2948         Extend tests on `--help' and `--version' options.
2949         * tests/help.test: Create a new empty directory and chdir into
2950         it, rather than removing already present files.  Run the aclocal
2951         and automake wrapper scripts directly, instead of relying on
2952         $AUTOMAKE and $ACLOCAL.  Be sure to correctly match literal dots
2953         in aclocal's and automake's stderr.  Add a trailing `:' command.
2954         * tests/help2.test: New test, checking that options `--help' and
2955         `--version' works in directories with broken `configure.in'.
2956         * tests/help3.test: New test, checking that options `--help' and
2957         `--version' take precedence on the other options.
2958         * tests/help4.test: New test, checking that the first among the
2959         `--help' and `--version' options to be specified on the command
2960         line wins.
2961         * tests/Makefile.am (TESTS): Updated.
2962
2963 2010-09-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
2964
2965         Testsuite: Use `$PATH_SEPARATOR', not `:', when extending PATH.
2966         * tests/compile2.test: Do no uselessly (implicitly) repeat the
2967         computation of PATH_SEPARATOR again.
2968         * tests/instmany-mans.test: Use `$PATH_SEPARATOR', not `:', when
2969         extending/redefining PATH.
2970         * tests/instmany-python.test: Likewise.
2971         * tests/instmany.test: Likewise.
2972         * tests/man4.test: Likewise.
2973         * tests/mkinst3.test: Likewise.
2974         * tests/mmodely.test: Likewise.
2975         * tests/multlib.test: Likewise.
2976         * tests/txinfo30.test: Likewise.
2977         * tests/README (Section "Writing test cases" subsection "Do"):
2978         Updated.
2979         * Makefile.am (sc_tests_PATH_SEPARATOR): New maintainer check.
2980         (syntax_check_rules): Updated.
2981
2982         Testsuite: new variables `$PATH_SEPARATOR' and `$APIVERSION'.
2983         * tests/defs.in ($APIVERSION):  New AC_SUBST'd variable.
2984         ($ACLOCAL, $AUTOMAKE): Use it.
2985         ($PATH_SEPARATOR):  New AC_SUBST'd variables.
2986         ($PATH): Use it.
2987
2988 2010-09-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
2989
2990         Manual: be more agnostic w.r.t. version control system used.
2991         * doc/automake.texi (Basics of Distribution): Also refer to `.svn'
2992         directories as a type of probably-unwanted files that are copied
2993         regardless when adding directories to EXTRA_DIST.
2994         (The dist Hook): Show a dist-hook example which removes Subversion
2995         `.svn' private directories from distdir, rather than CVS private
2996         directories.
2997         (missing and AM_MAINTAINER_MODE): Try to be more agnostic w.r.t.
2998         the version control system used.
2999
3000         Manual: index refer to target "git-dist", not "cvs-dist".
3001         * doc/automake.texi (General Operation): Index the non-standard
3002         example about "git-dist" under the "git-dist" label, not under
3003         the "cvs-dist" one.
3004
3005         Perl modules: remove references to "Automake CVS repository".
3006         * lib/Automake/Channels.pm: Update comments to refer to "Automke's
3007         git repository" rather than to "Automake's CVS repository".
3008         * lib/Automake/Configure_ac.pm: Likewise.
3009         * lib/Automake/FileUtils.pm: Likewise.
3010         * lib/Automake/Struct.pm: Likewise.
3011         * lib/Automake/XFile.pm: Likewise.
3012         * lib/Automake/Version.pm (=head1 DESCRIPTION): Refer to "git
3013         branches" rather than "CVS branches".
3014
3015         Remove obsolete .cvsignore files.
3016         * .cvsignore, doc/.cvsignore, lib/.cvsignore, lib/am/.cvsignore,
3017         lib/Automake/.cvsignore, lib/Automake/tests/.cvsignore,
3018         m4/.cvsignore, tests/.cvsignore: Files deleted.  Even when using
3019         savannah's CVS readonly mirror there's no way to commit back to
3020         the real repository, so this files are not worth maintaining or
3021         keeping around.
3022
3023 2010-09-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
3024
3025         * m4/dmalloc.m4: Bump serial number and copyright years.
3026
3027 2010-09-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
3028
3029         Fix broken link in `AM_WITH_DMALLOC' help screen.
3030         * m4/dmalloc.m4 (AM_WITH_DMALLOC): Refer only to the dmalloc site
3031         `http://www.dmalloc.com', not to the dmalloc tarball there (which
3032         seems to have been removed, substituted by multiple release
3033         tarballs now).
3034
3035 2010-09-21  Peter Rosin  <peda@lysator.liu.se>
3036
3037         compile: implement library search to support MSVC static linking
3038         * lib/compile (func_cl_wrapper): Implement library search and
3039         -static option so that the user can select whether to prefer
3040         dll import libraries or static libraries.  This enables MSVC to
3041         link against dlls generated by libtool without requiring libtool
3042         or workarounds such as -lfoo.dll etc.  Makes the tests/static.at
3043         test case in libtool pass.
3044         * tests/compile3.test: Don't trip up if there happens to exist
3045         a "foo" library in the library search path.
3046         * tests/compile6.test: New test, verifying the library search.
3047         * tests/Makefile.am (TESTS): Update.
3048
3049 2010-09-17  Eric Blake  <eblake@redhat.com>
3050
3051         Avoid triple-space after period.
3052         * automake.in (handle_single_transform): Avoid 3 spaces at
3053         sentence end.
3054         * ChangeLog.03: Likewise.
3055         * lib/Automake/ChannelDefs.pm: Likewise.
3056         * lib/Automake/Channels.pm (_print_message): Likewise.
3057         * lib/Automake/Rule.pm (rule): Likewise.
3058         * lib/Automake/Variable.pm (var): Likewise.
3059         * lib/am/distdir.am: Likewise.
3060         * tests/insthook.test: Likewise.
3061
3062 2010-09-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
3063
3064         Test automake-generated portions of configure help screen.
3065         * tests/help-depend.test: New test.
3066         * tests/help-depend2.test: Likewise.
3067         * tests/help-dmalloc.test: Likewise.
3068         * tests/help-init.test: Likewise.
3069         * tests/help-lispdir.test: Likewise.
3070         * tests/help-maintainer.test: Likewise.
3071         * tests/help-multilib.test: Likewise.
3072         * tests/help-regex.test: Likewise.
3073         * tests/help-silent.test: Likewise.
3074         * tests/help-upc.test: Likewise.
3075         * tests/mmode.test: Remove tests on `configure --help' output,
3076         they are superseded by tests in `help-maintainer.test'.
3077         * tests/Makefile.am (TESTS): Update.
3078
3079 2010-09-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
3080
3081         * tests/README: Don't put GCS mandated tools in $required.
3082
3083 2010-09-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3084
3085         * HACKING: Hint at old commits with `git describe' output.
3086
3087 2010-09-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
3088
3089         Prefer `$(am__cd)' to plain `cd' in our Makefiles.
3090         * Makefile.am (recheck, dist-hook, git-dist, path-check, fetch)
3091         (release-stats): Use `$(am__cd)' rather than plain `cd'.
3092         * tests/Makefile.am ($(srcdir)/parallel-tests.am): Likewise.
3093
3094 2010-09-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
3095
3096         Fix regression in test `colon4.test'.
3097         * tests/colon4.test: Fix botched editing to `configure.in'
3098         that made the test useless.  Since we are at it, improve
3099         comments and make grepping of generated Makefile.in slightly
3100         stricter.
3101         Regression introduced by change "Modernize, improve and/or
3102         extend tests `colon*.test" (Stefano Lattarini, 2010-08-08).
3103
3104 2010-09-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
3105
3106         Do not require "gzip" explicitly in tests.
3107         The gzip utility is simply expected to be present on any decent
3108         target system for Automake.  So it's pointless to put it in
3109         $required.
3110         * tests/install2.test ($required): Do not require "gzip".
3111         * tests/lex3.test: Likewise.
3112         * tests/pr9.test: Likewise.
3113         From a suggestion by Ralf Wildenhues.
3114
3115 2010-09-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
3116
3117         Use AS_HELP_STRING in AM_SILENT_RULES.
3118         * m4/silent.m4 (AM_SILENT_RULES): Use `AS_HELP_STRING' to format
3119         help message regarding configure options `--enable-silent-rules'
3120         and `--disable-silent-rules'.  Also throw in a couple of cosmetic
3121         changes in the related `case' statement (indentation, balancing
3122         of parentheses).
3123         * THANKS: Update.
3124         From a report by Jeff A. Daily.
3125
3126 2010-09-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
3127
3128         Make some `confh*.test' tests more "semantic" (plus tweakings).
3129         * tests/confh.test: Run "autoconf", "configure" and "make check",
3130         instead of munging/grepping the generated `Makefile.in'.
3131         * tests/confh4.test: Relax the grepping of Makefile.in w.r.t.
3132         white spaces.  Do not create useless dummy source file `foo.c'
3133         and useless dummy header file `acconfig.h'.
3134         (configure.in): Remove superfluous call to `AC_OUTPUT'.
3135         * tests/confh6.test: Add trailing `:' command.
3136         * tests/confh7.test: In comments, add reference to ...
3137         * tests/confh8.test: ... this new test, "semantic" sister
3138         of `confh7.test'.
3139         * tests/Makefile.am (TESTS): Updated.
3140         Prompted by a report from Ralf Wildenhues.
3141
3142 2010-09-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
3143
3144         Remove useless whitespace padding in XFAIL_TESTS definition.
3145         * tests/Makefile.am (XFAIL_TESTS): Remove whitespace padding.
3146
3147 2010-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3148
3149         parallel-tests: avoid command-line length limit issue.
3150         * automake.in (handle_tests): New argument $makefile, new
3151         substitution %MAKEFILE%.
3152         (generate_makefile): Adjust.
3153         * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
3154         sanitized TEST_LOGS value as makefile snippet on standard
3155         input to $(MAKE), to avoid exceeding the command line limit on
3156         w32 (MSYS).
3157         * NEWS: Update.
3158         Report by Bob Friesenhahn.
3159
3160         Posix 2008 requires make to set errexit.
3161         * lib/am/check.am: Update comment.
3162
3163 2010-09-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
3164
3165         Tests defs: remove variable $testaclocaldir.
3166         * tests/defs.in ($testaclocaldir): Removed.
3167         * tests/aclocal.test: Use `$top_testsrcdir/m4' directly, not
3168         `$testaclocaldir'.
3169
3170         Tests defs: $srcdir and $top_srcdir renaming.
3171         * tests/defs.in ($srcdir): Remove, define $testsrcdir directly.
3172         * tests/Makefile.am ($(parallel_tests)): Generation of derived
3173         tests updated.
3174
3175         Tests defs: new variable $top_testsrcdir.
3176         * tests/defs.in ($top_testsrcdir): Define unconditionally
3177         to @abs_top_srcdir@.  Use it throughout.
3178         * tests/ar-lib.test: Use `$top_testsrcdir' instead of
3179         `$testsrcdir/..'.
3180         * tests/auxdir.test: Likewise.
3181         * tests/compile.test: Likewise.
3182         * tests/compile2.test: Likewise.
3183         * tests/compile3.test: Likewise.
3184         * tests/compile5.test: Likewise.
3185         * tests/mdate6.test: Likewise.
3186         * tests/mkinst3.test: Likewise.
3187         * tests/multlib.test: Likewise.
3188         * tests/txinfo22.test: Likewise.
3189
3190         Tests defs: $srcdir is unconditionally substituted.
3191         * tests/defs.in ($srcdir): Define unconditionally to @abs_srcdir@.
3192         Remove code for $srcdir normalization, which is now useless.
3193
3194 2010-09-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
3195
3196         Tests defs: make spacing more consistent.
3197         * tests/defs.in: Make spacing more consistent in indentation.
3198         Especially, indent using only spaces, not tabs.  Also, move
3199         a comment to a better position.
3200
3201         Improve code for requiring libtool and gettext in tests.
3202         * tests/defs.in: Stricter (and more correct) detection of wheter
3203         libtool, libtoolize and/or gettext are in $required.
3204
3205
3206 2010-08-27  Stefano Lattarini  <stefano.lattarini@gmail.com>
3207
3208         Fix bug in test missing6.test.
3209         * tests/missing6.test: Fix the hack used to edit `configure.in',
3210         to avoid producing a configure script that breaks with shells
3211         that do not support $LINENO.  Also throw in a couple of cosmetic
3212         changes.
3213
3214 2010-09-02  Peter Rosin  <peda@lysator.liu.se>
3215
3216         Make ar-lib support backslashed files in archives.
3217         * lib/ar-lib: If an archive member contains a backslash, make sure
3218         it is escaped when the archive member is extracted.
3219         * tests/ar-lib.test: Test the above.
3220
3221 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
3222
3223         Do file name conversion for object files in the compile wrapper.
3224         * lib/compile (func_cl_wrapper): Do file name conversion for object
3225         files (i.e. extensions .obj, .OBJ, .o and .O) if needed.
3226         * tests/compile4.test: Test the above.
3227
3228 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3229
3230         Speed up removal of auxiliary linker output files for ltlibraries.
3231         * lib/am/ltlib.am (clean-%DIR%LTLIBRARIES): Rewrite using just
3232         one `rm' invocation.
3233         Report by Bob Friesenhahn.
3234
3235         Improve robustness of mdate-sh script.
3236         * lib/mdate-sh: Sanitize zsh behavior on startup, to ensure
3237         $ls_command is word-split properly upon invocation.
3238         (error): New function.
3239         (main): Use it.  Improve error checking to avoid endless loop
3240         in case $ls_command gave bogus output.  Fix eval quotation.
3241         * tests/mdate6.test: New test, to expose eval quotation error.
3242         * tests/Makefile.am: Update.
3243
3244 2010-08-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
3245
3246         Fix potential regressions in depcomp{3,5}.test.
3247         * tests/depcomp3.test: Do not uselessly escape the character `$'
3248         in makefile rules, when it's used to expand a make macro.
3249         * tests/depcomp5.test: Likewise.
3250
3251 2010-08-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
3252             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3253
3254         Docs: clarify how to avoid automatic dependencies tracking.
3255         * doc/automake.texi (Automatic dependency tracking): Mention that
3256         automatic dependencies tracking is enabled by default, but that
3257         the package developer can disable it altogether.  Add a reference
3258         to the proper section for a more in-depth explanation.
3259
3260         Fix typo in manual (`Makefile.in' instead of `Makefile.am').
3261         * doc/automake.texi (Automatic dependency tracking): Fix typo.
3262
3263 2010-08-16  Bruno Haible  <bruno@clisp.org>
3264
3265         Don't hide the table of contents.
3266         * doc/automake.texi: Move the table of contents to the beginning.
3267
3268 2010-08-16  Peter Rosin  <peda@lysator.liu.se>
3269
3270         Optimize compile script on MSYS.
3271         * lib/compile (func_file_conv): Add new argument 'lazy' which
3272         takes an optional list of conversion types where the requested
3273         conversion isn't needed.
3274         (func_cl_wrapper): Take advantage of the above for cases where
3275         MSYS is doing the conversion for us.
3276         Suggested by Ralf Wildenhues.
3277
3278 2010-08-16  Peter Rosin  <peda@lysator.liu.se>
3279
3280         Support more C++ file extensions for MSVC in the compile script.
3281         * lib/compile (func_cl_wrapper): MSVC only recognizes the .cpp
3282         file extension as C++, unless it's given a hint. So hint about
3283         .cc, .CC, .cxx, .CXX, c++ and C++. Also do path conversion on
3284         .c, .cpp, .CPP, .lib, .LIB and .Lib files.
3285         * tests/compile3.test: Test the C++ hinting.
3286
3287 2010-08-12  Peter Rosin  <peda@lysator.liu.se>
3288
3289         Enable the use of "link -lib" as the wrapped archiver.
3290         * lib/ar-lib: Enable the use of "link -lib" as the wrapped
3291         archiver, as well as allowing some other options to be passed
3292         through to the wrapped archiver.
3293         * tests/ar-lib.test: Test the above.
3294
3295 2010-08-10  Stefano Lattarini  <stefano.lattarini@gmail.com>
3296
3297         Tweak and/or extend some `acloca*.test' tests.
3298         * tests/aclocal8.test:  Ensure verbose printing of captured
3299         output.
3300         * tests/aclocal.test: Likewise.  Also, add trailing `:'
3301         command.
3302         * tests/acloca19.test: Likewise.
3303         * tests/aclocal5.test: Add trailing `:' command, and prefer
3304         `$me' over hard-coded test name.
3305         * tests/aclocal6.test: Likewise.
3306         * tests/aclocal18.test: Add trailing `:' command, and make
3307         some grepping slightly stricter.
3308         * tests/acloca14.test: Likewise.  Also, prefer `diff' over
3309         `cmp', and add some "cosmetic" blank lines.
3310
3311 2010-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
3312
3313         Tweak and extend tests `pr[!0-9]*.test'.
3314         * tests/primary3.test: Add trailing `:' command.
3315         * tests/primary.test: Make grepping of Automake's stderr stricter.
3316         Also, add trailing `:' command, and cosmetic changes in spacing.
3317         * tests/primary2.test: Likewise.
3318         * tests/prefix.test: Enable `errexit' shell flags, and related
3319         changes.  Add a trailing `:' command.
3320         * tests/proginst.test: Likewise.
3321
3322         Modernize, improve and extend tests for PR (`pr[0-9]*.test').
3323         * tests/pr2.test: Add trailing `:' command.
3324         * tests/pr229.test: Likewise.
3325         * tests/pr401.test: Likewise.
3326         * tests/pr401b.test: Likewise.
3327         * tests/pr401c.test: Likewise.
3328         * tests/pr300-prog.test: Likewise, plus cosmetic changes in
3329         spacing.
3330         * tests/pr300-lib.test: Likewise.
3331         * tests/pr300-ltlib.test: Likewise, and ensure verbose printing
3332         of captured make stdout.
3333         * tests/pr211.test: Add trailing `:' command.  Also, use the
3334         `configure.in' stub created by ./defs, rather than writing it
3335         from scratch.
3336         * tests/pr204.test: Likewise, plus cosmetic spacing changes.
3337         * tests/pr287.test: Likewise, and move setting of `errexit' shell
3338         flag earlier in the script (just after inclusion of ./defs).
3339         * tests/pr220.test: Make grepping of Automake's stderr stricter.
3340         Also, add trailing `:' command, and cosmetic changes in spacing.
3341         * tests/pr224.test: Move setting of `errexit' shell flag earlier
3342         in the script (just after inclusion of ./defs).  Do not export
3343         `CC=gcc' to configure explicitly (it's already exported globally
3344         in ./defs, since we have "gcc" in $required).  Use the stub for
3345         `configure.in' created by ./defs, rather than writing it from
3346         scratch.  Do not create dummy files required by "gnu" mode (e.g.
3347         README, NEWS), since we run automake in foreign mode anyway.
3348         * tests/pr72.test: Enable `errexit' shell flags, and related
3349         changes.  Extend existing checks a bit.
3350         * tests/pr9.test: Likewise.  Also, avoid obsolescent constructs in
3351         the generated `configure.in', and extend existing checks over the
3352         generated tarball a bit.
3353         * tests/pr87.test: Enable `errexit' shell flags, and related
3354         changes.  Add a trailing `:' command.  Also, do not create dummy
3355         files required by "gnu" mode (e.g. README, NEWS), since we run
3356         automake in foreign mode anyway.
3357         * tests/pr243.test: Avoid obsolescent constructs in the generated
3358         `configure.in'.  Enable the `errexit' shell flag, and related
3359         changes.  Cosmetic changes to spacing, add trailing `:' command,
3360         and add a "FIXME" comment.
3361         * tests/pr266.test: Likewise, and add explicit command line switch
3362         `--enable-dependency-tracking' to the ./configure call.
3363         * tests/pr279.test: Avoid obsolescent constructs in the generated
3364         `configure.in'; also, use the `configure.in' stub created by
3365         ./defs, rather than writing it from scratch.  Enable `errexit'
3366         shell flag, and related changes.  Add trailing `:' command.
3367         * tests/pr279-2.test: Likewise, and make grepping of Makefile.in
3368         stricter.
3369         * tests/pr307.test: Move setting of `errexit' shell flag earlier
3370         in the script (just after inclusion of ./defs).  Escape literal
3371         dots in grep regular expressions.  Also, add a trailing `:'
3372         command, and cosmetic changes to spacing.
3373
3374         Tests for PR: add excerpts from original bug report, for clarity.
3375         * tests/pr2.test: Ditto.
3376         * tests/pr9.test: Likewise.
3377         * tests/pr72.test: Likewise.
3378         * tests/pr87.test: Likewise.
3379         * tests/pr211.test: Likewise.
3380         * tests/pr220.test: Likewise.
3381         * tests/pr224.test: Likewise.
3382         * tests/pr229.test: Likewise.
3383         * tests/pr243.test: Likewise.
3384         * tests/pr266.test: Likewise.
3385         * tests/pr279.test: Likewise, and tell to keep it in sync
3386         with its sister test.
3387         * tests/pr279-2.test: Likewise.
3388
3389 2010-08-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
3390
3391         Tweak, extend and improve tests `cond[a-z]*.test'.
3392         * tests/condd.test: Add trailing `:' command.  Typofix in
3393         comment.
3394         * tests/condhook.test: Make sure target `install-data-hook' is
3395         not called by `make install', but that data files are installed.
3396         Use proper m4 quoting in configure.in. Add trailing `:' command.
3397         * tests/condhook2.test: New test, sister test of condhook, with
3398         inverted semantic.
3399         * tests/condinc2.test: Use proper m4 quoting in configure.in.
3400         Prefer trailing `:' command over trailing `Exit 0'.
3401         * tests/condman2.test: Enable errexit shell flag, and related
3402         changes.  Add trailing `:' command.
3403         * tests/condman.test: Likewise.  Also, do not create useless
3404         dummy manpages, and use proper m4 quoting in configure.in.
3405         * tests/condman3.test: New test, similar to condman.test, but
3406         it also runs ./configure and "make install", and check the
3407         installed files.
3408         * tests/Makefile.am (TESTS): Updated.
3409
3410         Modernize, improve and/or extend tests `colon*.test.
3411         * tests/colon.test: Rely on the `configure.in' stub created by
3412         `./defs', rather than writing one from scratch.  Do not create
3413         a useless dummy file.  Add trailing `:' command.
3414         * tests/colon4.test: Enable the `errexit' shell flag, and
3415         related changes.  Rely on the `configure.in' stub created by
3416         `./defs', rather than writing one from scratch.
3417         * tests/colon7.test: Enable `errexit' shell flag, and related
3418         changes.  Improve the generated `configure.in' file.  Add
3419         trailing `:' command.
3420         * tests/colon2.test: Likewise.  Also, add some new checks.
3421         * tests/colon5.test: Improve the generated `configure.in' file.
3422         Add new, much deeper checks.  Add trailing `:' command.
3423         * tests/colon6.test: Likewise.
3424         * tests/colon3.test: Add trailing `:' command.  Remove useless
3425         comments and echos.  Improve the generated `configure.in' file.
3426         make some grepping tests stricter.  Add a "FIXME" comments about
3427         planned improvements.
3428
3429         Improve and extend tests `asm*.test'.
3430         * tests/asm.test: Use configure.in stub generated by ./defs,
3431         and avoid obsoleted autoconf constructs.  Make grepping of
3432         Automake stderr stricter.  Do not create useless source file.
3433         Improve verbose messages.  Minor cosmetic changes.  Tell to
3434         keep it in sync with other sister tests asm*.test.
3435         * tests/asm2.test: Likewise.
3436         * tests/asm3.test: Likewise.
3437
3438         Modernize, improve and/or extend test scripts `conf*.test'.
3439         * tests/confh5.test: Cosmetic changes.
3440         * tests/conff.test: Likewise.
3441         * tests/confdeps.test: Likewise.
3442         * tests/conflnk.test: Likewise.
3443         * tests/conflnk2.test: Likewise.
3444         * tests/confsub.test: Likewise.
3445         * tests/confvar.test: Likewise, and make grepping of Makefile.in
3446         stricter.
3447         * tests/confvar2.test: Likewise.
3448         * tests/conflnk3.test: Cosmetic changes.  Re-enable a temporarily
3449         disabled test (which didn't work with autoconf <= 2.59, but now we
3450         are requiring autoconf 2.62, so...)
3451         * tests/conflnk4.test: Cosmetic changes, and extend existing tests
3452         accordingly to "TODO" comments.
3453         * tests/conff2.test: Make grepping of Automake's stderr stricter.
3454         Add some comments explaining why we don't use the `configure.in'
3455         stub preset be ./defs.
3456         * tests/confh.test: Use the `configure.in' stub created by ./defs,
3457         rather than writing one from scratch, and do not call AC_OUTPUT.
3458         Enable `errexit' shell flag, and related changes.  Prefer diff over
3459         cmp to compare text files. Prefer perl over sed to fetch the value
3460         of $(DIST_COMMON) from Makefile.in.  Make grepping of the contents
3461         of $(DIST_COMMON) stricter.
3462         * tests/confh4.test: Use the `configure.in' stub created by ./defs,
3463         rather than writing one from scratch.  Make grepping of Makefile.in
3464         stricter.
3465         * tests/confh5.test: Make grepping of `config.h' stricter.  Add a
3466         comment.
3467         * tests/configure.test: Avoid obsolescent constructs in generated
3468         `configure.ac'.  Do not write `configure.in' two times.  Escape
3469         literal dots in grep regular expressions.
3470         * tests/confincl.test:  Enable `errexit' shell flag, and related
3471         changes.  Prefer fgrep over grep.  Other cosmetic changes.
3472         * tests/config.test: Renamed to ...
3473         * tests/confh6.test: ... this.  Fix m4 quoting in `configure.in',
3474         and make grepping of `config.h' and `config.h.in' stricter.
3475         * tests/conf2.test: Renamed ...
3476         * tests/confh7.test: ... to this.  Use the `configure.in' stub
3477         created by ./defs, rather than writing one from scratch.  Try to
3478         run the checks both with and without AC_PROG_CC and AC_OUTPUT in
3479         `configure.in'.
3480         * tests/Makefile.am (TESTS): Updated.
3481
3482         Minor improvements and fixes in tests `depcomp*.test'.
3483         * tests/depcomp.test: Do not create useless dummy source files.
3484         Add a trailing `:' command.
3485         * tests/depcomp2.test: Use `unset' on the CFLAGS variable to ensure
3486         it's not in in the environment, rather than exporting it with an
3487         empty value.  Do not pass CC=gcc to configure, as that's already
3488         done in ./defs since we have gcc in $required.  Ensure verbose
3489         printing of captured stderr, and normalize its checking.  Add a
3490         trailing `:' command.
3491         * tests/depcomp3.test: Quote literal dots and dollar characters in
3492         grep regexps.  Always use `: >' rather than `touch' to create empty
3493         files.  Explicitly declare phony targets as such in the created
3494         Makefile.am.  Add a trailing `:' command.
3495         * tests/depcomp4.test: Quote literal dots and dollar characters in
3496         grep regexp.  Explicitly declare phony targets as such in the
3497         created Makefile.am.  Ensure verbose printing of captured makes'
3498         stoud/stderr.  Add a trailing `:' command.
3499         * tests/depcomp5.test: Move setting of `errexit' shell flag earlier
3500         in the script (just after inclusion of ./defs).  Quote literal dots
3501         and dollar characters in grep regexps.  Explicitly declare phony
3502         targets as such in the created Makefile.am.  Add a trailing `:'
3503         command.
3504         * tests/depcomp6.test: Consistently use m4 quoting in the generated
3505         configure.in.  Cosmetic fixes to spacing.  Make the "dummy" `if'
3506         statement required by OpenBSD's sh `set -e' more robust, and add
3507         explanatory comments to it.
3508         * tests/depcomp7.test: Likewise, and add  a trailing `:' command.
3509
3510         Separate failing part of test `all.test'.
3511         * tests/all.test: Keep only (x)failing part of the test.  Working
3512         checks moved out to ...
3513         * tests/all2.test: ... this new test.
3514         * tests/Makefile.am (TESTS): Updated.
3515
3516         Modernize, improve and extend tests `subobj*.test'.
3517         * tests/subobjname.test:  Add trailing `:' command.
3518         * tests/subobj.test: Make grepping of `Makefile.in' stricter.
3519         Escape literal dots in grep regexps.
3520         * tests/subobj2.test:  Add trailing `:' command.  Do not use the
3521         unportable fgrep option `-e'.
3522         * tests/subobj3.test: Add trailing `:' command.
3523         (configure.in): Use proper m4 quoting, and avoid obsolescent
3524         constructs.
3525         * tests/subobj8.test: Likewise.  Also, enable `errexit' shell
3526         flag, with related changes
3527         * tests/subobj4.test: Likewise.  Also, make grepping of
3528         `Makefile.in' stricter.
3529         * tests/subobj5.test: Add trailing `:' command.  Move setting of
3530         `errexit' shell flag earlier in the script (just after inclusion
3531         of ./defs).
3532         (configure.in): Use the stub created by `./defs', rather than
3533         writing it from scratch, and avoid obsolescent constructs.
3534         * tests/subobj6.test: Add trailing `:' command.  Move setting of
3535         `errexit' shell flag earlier in the script (just after inclusion
3536         of ./defs).  Do not create useless dummy ac-init file `f'.
3537         * tests/subobj7.test: Do not create useless dummy ac-init file
3538         `f'.
3539         (configure.in): Use the stub created by `./defs', rather than
3540         writing it from scratch, and avoid obsolescent constructs.
3541         * tests/subobj9.test: Move setting of `errexit' shell flag earlier
3542         in the script (just after inclusion of ./defs).  Fail the test if
3543         `make distcheck' fails.  Ensure verbose printing of captured make
3544         stdout.  Avoid useless fork by doing simple grep instead of using
3545         test -n "`COMMAND | grep ...`".
3546         (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
3547         (Makefile.am): Explicitly mark target "print" as phony.
3548         * tests/subobj10.test: Removed duplicated call to `set -e'.  Add
3549         trailing `:' command.
3550         (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
3551
3552         Remove a couple of obsoleted tests.
3553         * tests/fpinstall.test: Removed.
3554         * tests/fpinst2.test: Likewise.
3555         * tests/Makefile.am (TESTS): Updated.
3556
3557         Bootstrap: updated HACKING entry.
3558         * HACKING ("Working with git"): Explain how to override the
3559         autoconf and autom4te programs used by the bootstrap process.
3560
3561         Bootstrap: fixlet.
3562         * bootstrap: Do not remove `lib/Automake/Config.pm' anymore,
3563         since we don't generate it.  Correctly quote arguments of
3564         `eval' builtin.  Fixed a botched error message.  Removed an
3565         extra blank line.
3566
3567         Bootstrap: don't search perl in $PATH.
3568         * bootstrap: Do not explicitly search perl in $PATH anymore.
3569         ($PATH_SEPARATOR): Removed, it's no more needed.
3570
3571         Bootstrap: let the user choose which autoconf to use.
3572         * bootstrap ($AUTOCONF): New variable, from the environment.
3573         ($AUTOM4TE): Likewise, for clarity.
3574         Use "$AUTOCONF" instead of calling "autoconf" directly.
3575
3576         Minor improvements to tests ar*.test.
3577         * tests/ar.test: Add trailing `:' command.
3578         * tests/ar2.test: Likewise, and make grepping of generated
3579         Makefile.in stricter.
3580
3581 2010-08-06  Peter Rosin  <peda@lysator.liu.se>
3582
3583         Add new auxiliary 'ar-lib' script, wrapping Microsoft lib.
3584         * lib/ar-lib: New auxiliary script.
3585         * lib/Makefile.am: Add above.
3586         * tests/ar-lib.test: New test.
3587         * tests/Makefile.am: Add above.
3588         * automake.in (@common_files): Distribute the 'ar-lib' script.
3589         * doc/automake.texi (Auxiliary Programs): Mention the new
3590         'ar-lib' script.
3591         (Optional): Mention 'ar-lib' in AC_CONFIG_AUX_DIR.
3592         * NEWS: Update.
3593
3594 2010-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3595
3596         Fix shell pattern negation in compile script.
3597         * lib/compile (func_file_conv): Use `!' not `^' for pattern
3598         negation.
3599
3600 2010-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3601
3602         Fix maintainer-check failure.
3603         * tests/cond5.test: Quote sleep argument, this isn't about
3604         time stamp differences.
3605
3606         Sync auxiliary files from upstream.
3607         * lib/config.guess, lib/config.sub, lib/texinfo.tex:
3608         Sync from upstream.
3609
3610 2010-08-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
3611
3612         Work around a nasty bug (segfault) of Solaris make.
3613         * lib/am/check.am (recheck, recheck-html): Trim trailing spaces
3614         from $list, to avoid triggering a nasty bug (potential segfault)
3615         on Solaris make.
3616
3617 2010-08-06  Peter Rosin  <peda@lysator.liu.se>
3618
3619         Make cond5.test more robust on MSYS.
3620         * tests/cond5.test: Add delay before the first kill attempt to
3621         cater for problems with MSYS bash.
3622
3623 2010-08-01  Peter Rosin  <peda@lysator.liu.se>
3624
3625         Wrap some MSVC options in the compile script.
3626         * lib/compile: MSVC supports naming the output file, the option
3627         is just not called -o, so transform -o into the appropriate form
3628         for MSVC. Also wrap some other options while at it (-L, -l, -Wl,
3629         -Xlinker and -I) and convert file names to windows form where
3630         needed for those options to make MSVC more usable in an
3631         autotooled environment.
3632         * doc/automake.texi (Auxiliary Programs): Document the above
3633         extension of the compile script.
3634         * NEWS: Updated.
3635         * tests/defs.in: New required entry 'cl'.
3636         * tests/compile3.test: New test.
3637         * tests/compile4.test: New test.
3638         * tests/compile5.test: New test.
3639         * tests/Makefile.am: Update.
3640
3641 2010-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3642
3643         Add example git work flow; discuss merge --log in HACKING.
3644         * HACKING: Update.
3645         Suggestion by Stefano Lattarini.
3646
3647         Add more hints for debugging make rules.
3648         * doc/automake.texi (Debugging Make Rules): Show command to find
3649         out expanded values of variables; point to makefile debugger.
3650         * THANKS: Update.
3651         Prompted by suggestion from Ludovic Courtès and Andy Wingo.
3652
3653 2010-07-27  Patrick Welche  <prlw1@cam.ac.uk>  (tiny change)
3654
3655         Fix typo in the manual.
3656         * doc/automake.texi (Scripts): Fix typo.
3657
3658 2010-07-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3659
3660         Document current policy for development with git.
3661         * HACKING (Working with git): Overhaul.
3662         Prompted by suggestion from Stefano Lattarini.
3663
3664         Fix AM_COND_IF for gone-invalid condition shell expression.
3665         * m4/cond-if.m4 (AM_COND_IF): test contents of $COND_TRUE
3666         variable, rather than re-evaluating the shell expression for
3667         the condition.
3668         * tests/cond40.test: Extend test.
3669         * NEWS: Update.
3670
3671         Avoid syntax error if IF-TRUE part of AM_COND_IF expands empty.
3672         * m4/cond-if.m4 (AM_COND_IF): Ensure IF-TRUE part is never empty
3673         to avoid shell syntax error if the m4 expansion is empty.
3674         * tests/cond40.test: Enhance test.
3675
3676         Coverage: bogus option to AM_INIT_AUTOMAKE.
3677         * tests/init2.test: New test.
3678         * tests/Makefile.am: Update.
3679
3680 2010-07-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
3681
3682         Modernize and improve test scripts `subdir*.test'.
3683         * tests/subdir.test: Enable `errexit' shell flag, and related
3684         changes.  Use the `configure.in' stub created by `./defs',
3685         rather than writing one from scratch.
3686         * tests/subdir2.test: Likewise.
3687         * tests/subdir4.test: Likewise.
3688         * tests/subdir3.test: Enable `errexit' shell flag, and related
3689         changes.  Do not create useless dummy source files.
3690         * tests/subdir5.test: Make grepping of Makefile.in (in topdir
3691         and in subdirs) stricter.  Some minor changes to keep it more
3692         in sync with the related test `subdir8.test'.
3693         * tests/subdir8.test: Likewise (but with the related test being
3694         `subdir5.test' here).
3695         * tests/subdir6.test: Cosmetic change in spacing.
3696         * tests/subdir9.test: Define and use new variable `$distdir'.  Add
3697         trailing `:' command.
3698         * tests/subdir10.test: Cosmetic consistency-related change.
3699         * tests/subdirbuiltsources.test: Cosmetic changes in spacings.
3700         (configure.in): Use stub created by `./defs', rather than writing
3701         it from scratch.  Do not use obsoleted and/or deprecated forms of
3702         autoconf/automake macros.
3703
3704         Modernize and improve test scripts `dist*.test'.
3705         * tests/distcleancheck.test: Do not add useless `-e' option to
3706         a $MAKE call.  Extend test by grepping stderr of make.
3707         * tests/distcom2.test: Do not run the same test script on the
3708         Makefile.in twice, but save its output in an intermediate file
3709         instead.  Make grepping of DIST_COMMON definition stricter.
3710         Display the content of more files, to ease debugging.  Add a
3711         trailing `:' command.  Improved heading comments w.r.t. sister
3712         test(s).
3713         * tests/distcom6.test: Likewise, and avoid to uselessly run
3714         autoconf.
3715         * tests/distcom3.test: Ensure verbose printing of captured stdout
3716         and stderr.  Make grepping of captured stderr stricter.  Also,
3717         add trailing `:' command.
3718         * tests/distcom4.test: Declare the target `test' in the generated
3719         Makefile.am as `.PHONY'.  Display content of more files, to ease
3720         debugging.  Add trailing `:' command.
3721         * tests/distcom5.test: Likewise.  Also, factor out common sed
3722         script in subroutine `extract_distcommon'.
3723         * tests/distcom7.test: Prefer cat + here-doc over echo to write
3724         test Makefile.am files.  Add a trailing `:' command.
3725         * tests/distname.test: Prefer `gzip -d' over `gunzip'.  Move the
3726         call to `set -e' earlier.  Be stricter and more verbose in the
3727         checking of the generated tarball.
3728         (configure.in): Use the stub provided by ./defs, instead of
3729         writing it from scratch.  Avoid obsoleted constructs.  Remove
3730         useless call to `AM_PROG_CC_C_O'.
3731         * tests/distdir.test: Various minor improvements/normalizations.
3732         * tests/distlinks.test: Likewise.
3733
3734 2010-07-18  Stefano Lattarini  <stefano.lattarini@gmail.com>
3735
3736         Improve and extend test cond5.test.
3737         * tests/cond5.test: Do not blindly sleep 60 seconds before polling
3738         the background automake process, but poll it every 10 seconds for
3739         at most 30 times (this makes the test both faster on good machines,
3740         and more resilient to spurious timeout-due failures when in low
3741         priority or on heavily-loaded systems).
3742         Check also that automake writes the expected error messages on the
3743         standard error.
3744         Enable `errexit' flag, and related changes.
3745         Rely on the `configure.in' stub created by `./defs', rather than
3746         writing one from scratch.
3747
3748 2010-06-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3749
3750         Update program --help output to match current GCS.
3751         * configure.ac: Set and substitute PACKAGE_URL if AC_PACKAGE_URL
3752         is not defined, for compatibility to Autoconf < 2.64.
3753         * Makefile.am (do_subst): Substitute PACKAGE_BUGREPORT and
3754         PACKAGE_URL.
3755         (sc_diff_automake_in_automake): Update number of diff lines for
3756         additional substitutions.
3757         * aclocal.in (usage): Use PACKAGE_BUGREPORT.  Point to Automake
3758         home page and GNU general help page.
3759         * automake.in (usage): Likewise.
3760         * doc/automake.texi: New flag PACKAGE_BUGREPORT, to factor email
3761         address.
3762         (Introduction, Creating amhello, amhello Explained, Options):
3763         Use it throughout.
3764         * lib/Automake/Makefile.am (do_subst): Substitute
3765         PACKAGE_BUGREPORT.
3766         * lib/Automake/Config.in ($PACKAGE_BUGREPORT): New global.
3767         * lib/Automake/ChannelDefs.pm: Use it for footer of fatal
3768         messages.
3769
3770         Clean up @var handling in the manual.
3771         * doc/automake.texi: Throughout the manual, lower-case @var
3772         names, replace a few one-character names.
3773
3774 2010-06-26  Stefano Lattarini  <stefano.lattarini@gmail.com>
3775
3776         Fix typo-related bug in test script silent5.test.
3777         * tests/silent5.test: Use $EGREP, not $GREP (which is not even
3778         defined).
3779
3780         Tests: remove useless repetitions of `foreign' automake option.
3781         * tests/multlib.test (configure.in): Remove useless use of
3782         `foreign' option in AM_INIT_AUTOMAKE (the `--foreign' option is
3783         already in $AUTOMAKE by default, so no point in repeating it).
3784         * tests/subobj10.test: Likewise.
3785         * tests/subobj9.test: Likewise.
3786         * tests/lex3.test (Makefile.am): Similarly, remove useless use
3787         of `foreign' option in AUTOMAKE_OPTIONS.
3788         * tests/lex5.test: Likewise.
3789         * tests/pr279.test: Likewise.
3790         * tests/pr279-2.test: Likewise.
3791         * tests/specflg3.test: Likewise.
3792         * tests/target-cflags.test: Likewise.
3793
3794         Drop useless requirement "gzip" in lex5.test.
3795         * tests/lex5.test ($required): Do not list "gzip", as it's
3796         never used.
3797
3798 2010-06-24  Stefano Lattarini  <stefano.lattarini@gmail.com>
3799
3800         Fix bugs in test script silent5.test.
3801         * tests/silent5.test: Fixed a nasty bug (due to the use of grep
3802         instead of egrep) that could have led to false negatives.
3803
3804 2010-06-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
3805
3806         Add a test checking that distributed broken symlinks cause
3807         `make dist' to fail.
3808         * tests/distlinksbrk.test: New test.
3809         * tests/Makefile.am (TESTS): Updated.
3810
3811 2010-06-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3812
3813         Fix minor testsuite issues, update docs, for Yacc/Lex changes.
3814         * doc/automake.texi (Yacc and Lex): Mention AM_YFLAGS, YFLAGS
3815         and AM_LFLAGS, LFLAGS in the order in which they now appear in
3816         the rules.
3817         * NEWS: Update.
3818         * tests/lflags.test, tests/lflags2.test, tests/yflags.test,
3819         tests/yflags2.test: Prefer `make -e' over `make VAR=VAL', to
3820         please maintainer-check.  Ensure generated C files contain a
3821         declaration, to please compilers.
3822
3823 2010-06-21  Stefano Lattarini  <stefano.lattarini@gmail.com>
3824
3825         Fix bugs in Automake Yacc/Lex support w.r.t. $(AM_FLAGS) and
3826         $(FLAGS) precedence.
3827         * automake.in: Fix registration of languages "Lex", "Lex (C++)",
3828         "Yacc" and "Yacc (C++)", so that $(LFLAGS) has precedence over
3829         $(AM_LFLAGS) and $(YFLAGS) has precedence over $(AM_YFLAGS).
3830         * tests/Makefile.am (XFAIL_TESTS): Updated accordingly.
3831         * NEWS: Updated.
3832
3833         New tests, exposing bugs in Automake Yacc/Lex support w.r.t.
3834         $(AM_FLAGS) and $(FLAGS) precedence.
3835         * tests/lflags.test: New test, check that user $(LFLAGS) takes
3836         precedence over automake (AM_LFLAGS) and (foo_LFLAGS).  Still
3837         xfailing.
3838         * tests/lflags2.test: Likewise.
3839         * tests/yflags.test: New test, check that user $(YFLAGS) takes
3840         precedence over automake (AM_YFLAGS) and (foo_YFLAGS).  Still
3841         xfailing.
3842         * tests/yflags2.test: Likewise.
3843         * tests/Makefile.am (TESTS, XFAIL_TESTS): Extended accordingly.
3844
3845 2010-06-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
3846
3847         Modernize, improve and extend tests `suffix*.test'.
3848         * tests/suffix3.test: Enable `errexit' shell flag, and related
3849         changes.
3850         * tests/suffix4.test: Likewise.
3851         * tests/suffix6.test: Likewise, and do not create a useless dummy
3852         source file.
3853         * tests/suffix7.test: Likewise.
3854         * tests/suffix5.test: Enable `errexit' shell flag, and related
3855         changes.  Make grepping of Makefile.in slightly stricter.
3856         * tests/suffix.test: Enable `errexit' shell flag, and related
3857         changes.  Also, do not redirect grep output to /dev/null, as this
3858         might unmotivatedly hide useful information.
3859         * tests/suffix2.test: Move setting of `errexit' shell flag earlier
3860         in the script (just after inclusion of ./defs).  Use a more
3861         idiomatic way to count text occurrences in Makefile.in with
3862         grep.  Do not create useless dummy source files.
3863         * tests/suffix10.test: Ensure verbose printing of captured make
3864         stdout.  Minor cosmetic changes.
3865         * tests/suffix8.test: Likewise.  Also, drop useless call to the
3866         env(1) utility, and make grepping of make output stricter by using
3867         $FGREP rather than plain grep.
3868         * tests/suffix11.test: Likewise.
3869         * tests/suffix12.test: Likewise.
3870         * tests/suffix9.test: Prefer cat + here-doc over echo to append to
3871         the `configure.in' stub.  Cosmetic changes.
3872         * tests/suffix13.test: Cosmetic spacing change.
3873
3874 2010-06-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
3875
3876         Add useful comment in test script ext.test.
3877         * tests/ext.test: Add a comment explaining why an apparently
3878         useless `if' statement is indeed required.
3879
3880 2010-06-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
3881
3882         Add useful comment in test script obsolete.test.
3883         * tests/obsolete.test: Add a comment explaining why we need
3884         an indirection in adding $AUTOUPDATE to $required.
3885
3886         Normalize whitespaces in 'tests/Makefile.am'.
3887         * tests/Makefile.am (TESTS): Use only spaces, not tabs, in the
3888         definition of this variable.
3889
3890         Parallel tests generation: improve comments (tiny change).
3891         * tests/Makefile.am ($(parallel_tests)): Added useful comment to
3892         generated tests.
3893
3894         Tests defs: truly get rid of `$am_defs_included' (unused variable)
3895          * tests/defs.in ($am_defs_included): Remove, its now unused.  It
3896         should have been removed in a previous changeset, but the removal
3897         was done only partially (oversight).
3898
3899 2010-06-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3900
3901         Remove a couple of unneeded conditionals from tests.
3902         * tests/pr243.test, tests/pr266.test, tests/strip.test: No need
3903         for the FOOTEST conditional.
3904
3905 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
3906
3907         Modernize, improve and/or fix various test scripts.
3908         * tests/symlink3.test: Deleted, separated into two new, more
3909         complete tests ...
3910         * tests/forcemiss.test: ... this one ...
3911         * tests/forcemiss2.test: ... and this one.
3912         * tests/symlink2.test: Enable `errexit' shell flag, make test
3913         stricter, and skip it if symlink creation is not supported.
3914         * tests/postproc.test: Enable `errexit' shell flag, related
3915         changes, and a couple of unrelated cosmetic changes.
3916         * tests/recurs.test: Use the `configure.in' stub created by
3917         `./defs', rather than writing one from scratch.  Make grepping
3918         of Automake stderr slightly stricter.
3919         * tests/substtarg.test: Likewise.
3920         * tests/strip.test: Likewise, and move the call to `set -e'
3921         earlier (just after the inclusion of `./defs'). Also, make sure
3922         that the script installed by `make install-script' is equal to
3923         the original one.
3924         * tests/substref.test: Use the `configure.in' stub created by
3925         `./defs', rather than writing one from scratch.  Move the call
3926         to `set -e' earlier (just after the inclusion of `./defs').
3927         Avoid to explicitly export CC for configure (that's already done
3928         in ./defs).  Avoid potential problems with unpredictable make
3929         output.  Finally, make grepping of Makefile.in stricter.
3930         * tests/substre2.test: Ensure verbose printing of the captured
3931         make's output, and make its grepping slightly stricter.
3932         * tests/cygwin32.test: Enable `errexit' shell flag, and related
3933         changes.  Also, do not create useless dummy source/data files.
3934         * tests/scripts.test: Likewise.
3935         * tests/recurs2.test: Likewise.  Also, use the `configure.in'
3936         stub created by `./defs'.
3937         * tests/Makefile.am (TESTS): Updated.
3938
3939         Modernize, improve and/or fix tests `pluseq*.test.
3940         * tests/pluseq5.test: Append to configure.in using cat with an
3941         here-doc, not using echo.
3942         * tests/pluseq10.test: Make sure that the captured output of
3943         `make' command is always displayed. Where possible, use $FGREP
3944         instead of grep (this change makes some checks slightly stricter).
3945         * tests/pluseq8.test: Enable `errexit' shell flag, with related
3946         changes.
3947         * tests/pluseq.test: Likewise.  Also, do not create useless dummy
3948         data files, and use better m4 quoting in generated configure.in.
3949         * tests/pluseq2.test: Likewise.  Also, append to configure.in
3950         using cat with an here-doc, not using echo.
3951         * tests/pluseq3.test: Likewise.
3952         * tests/pluseq4.test: Likewise.
3953         * tests/pluseq6.test: Likewise.
3954         * tests/pluseq7.test: Do not create useless dummy source file.
3955         * tests/pluseq9.test: Slightly extended w.r.t. the grepping of
3956         Automake stderr.  Some unrelated cosmetic changes.
3957
3958 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
3959
3960         cscope.test: ensure verbose printing of captured stderr.
3961         * tests/cscope.test: Print captured stderr before failing.
3962
3963 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
3964
3965         Testsuite: ensure verbose printing of captured stderr.
3966         * tests/acloca18.test: Print captured stderr before either failing
3967         or grepping it.  Be sure to send captured stderr to stderr, not to
3968         stdout.
3969         * tests/ansi3b.test: Likewise.
3970         * tests/cond39.test: Likewise.
3971         * tests/configure.test: Likewise.
3972         * tests/missing3.test: Likewise.
3973         * tests/missing6.test: Likewise.
3974         * tests/output-order.test: Likewise.
3975         * tests/pr300-ltlib.test: Likewise.
3976         * tests/python6.test: Likewise.
3977         * tests/python7.test: Likewise.
3978         * tests/python8.test: Likewise.
3979         * tests/python9.test: Likewise.
3980         * tests/subobj.test: Likewise.
3981         * tests/vars3.test: Likewise.
3982         * tests/missing4.test: Likewise, and fix a call to grep not to use
3983         the `-c' flag.
3984         * tests/ansi3.test: Likewise, and rely on the `configure.in' stub
3985         created by `./defs', rather than writing one from scratch.
3986
3987         Enable `errexit' shell flag in various tests.
3988         * tests/backsl.test: Enable the `errexit' shell flag, and
3989         related changes.
3990         * tests/backsl2.test: Likewise.
3991         * tests/block.test: Likewise.
3992         * tests/canon2.test: Likewise.
3993         * tests/canon4.test: Likewise.
3994         * tests/comment2.test: Likewise.
3995         * tests/condlib.test: Likewise.
3996         * tests/cond15.test: Likewise, and prefer $FGREP over grep.
3997         * tests/canon3.test: Likewise.  Also, avoid to create an useless
3998         dummy source file.
3999         * tests/acoutpt2.test: Enable the `errexit' shell flag, and some
4000         related changes.  Do some cosmetic improvements in the generated
4001         `configure.in' file.
4002         * tests/cond4.test: Likewise.
4003         * tests/cond14.test: Likewise.
4004         * tests/condinc.test: Likewise.
4005         * tests/cond7.test: Likewise.  Also, remove useless setting of
4006         AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am.
4007         * tests/ansi.test: Enable the `errexit' shell flag, and related
4008         changes.  Extended, esp. by running autoconf, ./configure and
4009         make, and by looking into the distdir.
4010
4011 2010-06-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
4012             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4013
4014         Extend tests/README w.r.t. trailing `:' in test scripts.
4015         * tests/README (section "Writing test cases" subsection "Do"):
4016         Explain why apparently redundant trailing `:' and `Exit 0' in
4017         test scripts can indeed be useful.
4018
4019 2010-06-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
4020
4021         Improve determination of PATH separator in bootstrap script.
4022         * bootstrap: Determine what the PATH separator is the same way
4023         autoconf does.
4024
4025         Minor improvements in bootstrap script.
4026         * bootstrap: Consistently use two-spaces indentation.  Cosmetic
4027         improvement to comments.
4028         ($me): New variable, containing program basename.
4029         Prepend it to all error messages.
4030
4031         Testsuite now works with BSD make in parallel mode.
4032         * tests/defs.in: Unset variables __MKLVL__ and MAKE_JOBS_FIFO,
4033         which are exported by BSD make when run in parallel mode, and
4034         which can confuse make processes spawned by our testsuite.
4035         This change fixes a lot of spurious failure when the testsuite
4036         is run with BSD make in parallel mode.
4037
4038 2010-06-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
4039
4040         Modernize, improve and/or fix various test scripts.
4041         * tests/sanity.test: Rely on the `configure.in' stub created by
4042         `./defs', rather than writing one from scratch.
4043         * tests/depend2.test: Likewise.  Also, call `set -e' just after
4044         the inclusion of `./defs', instead that later in the script.
4045         * tests/canon5.test: Avoid a useless `|| Exit 1' after a call to
4046         $AUTOMAKE, and improve the positioning of an $ACLOCAL call.
4047         * tests/exeext4.test: Use $FGREP instead of grep, where possible.
4048         Make auxiliary rules in the generated Makefile more silent.
4049         These changes make some checks slightly stricter.
4050         * tests/ext2.test: Call `Exit 1' if inclusion of `./defs' fails.
4051         * tests/gettext2.test: Place final `:' at the end of the script,
4052         rather than in the middle.
4053         * tests/exeext.test: Call `set -e' just after the inclusion of
4054         `./defs', instead that later in the script.
4055         * tests/extra5.test: Likewise.
4056         * tests/confdeps.test: Likewise.  Also, prefer `mv -f' over
4057         plain `mv', just to be sure.
4058         * tests/depcomp.test: Enable `errexit' shell flag, with related
4059         changes.  Also, modernize the generated configure.in.
4060         * tests/cond9.test: Likewise.  Also, rely on the `configure.in'
4061         stub created by `./defs', rather than writing one from scratch.
4062         * tests/cond10.test: Likewise.
4063         * tests/depcomp2.test: Likewise.
4064         * tests/depend3.test: Likewise.
4065         * tests/distcom7.test: Likewise.
4066         * tests/fortdep.test: Likewise.  Also, remove definition of
4067         AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am,
4068         since that flag is already provided by $AUTOMAKE.
4069         * tests/mdate.test: Made stricter, by checking that Automake
4070         actually failed, and by making a stricter grep on the error
4071         message.  Also, set shell `errexit flag'.
4072         * tests/python2.test: Improved verbose messages.
4073
4074         Make test `ammissing.test' stricter.
4075         * tests/ammissing.test: Fail if $ACLOCAL succeeds unexpectedly.
4076         Enable `errexit' shell flag.
4077
4078 2010-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
4079             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4080
4081         Fix error in generation of parallel tests.
4082         * tests/defs.in ($am_skip_defs): New variable, to be used when
4083         ./defs must be sourced multiple times.  If set, unset it and
4084         only define $srcdir; otherwise, also go through the rest of
4085         the script.
4086         ($am_defs_included): Remove, no more needed.
4087         * tests/Makefile.am ($(parallel_tests)): Update accordingly,
4088         using only $srcdir from defs.
4089         Fixes potential test failures of tests that use $required.
4090
4091 2010-06-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
4092
4093         Enable `errexit' shell flag in some test scripts.
4094         * tests/subcond.test: Enabled `errexit' shell flag, and related
4095         minor changes.
4096         * tests/subst.test: Likewise.
4097         * tests/vars.test: Likewise.
4098         * tests/version4.test: Likewise.
4099         * tests/vpath.test: Likewise.
4100         * tests/vtexi2.test: Likewise.
4101         * tests/werror.test: Likewise.
4102         * tests/whoami.test: Likewise.
4103         * tests/tags.test: Likewise, and avoid to crate an useless dummy
4104         header file.
4105         * tests/acsilent.test: Likewise, and don't use an easily-avoided
4106         command substitution.
4107         * tests/unused.test: Likewise, and don't use an easily-avoided
4108         command substitution.
4109         * tests/version.test: Likewise, and avoid deprecated constructs
4110         in the generated `configure.in'.
4111         * tests/version2.test: Likewise, and avoid deprecated constructs
4112         in the generated `configure.in'.
4113
4114 2010-06-07  Stefano Lattarini  <stefano.lattarini@gmail.com>
4115             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4116
4117         Improve declaration of dependencies in the testsuite.
4118         * tests/Makefile.am (check_SCRIPTS): Remove.  Instead, let ...
4119         ($(TEST_LOGS)): ... all test logs depend on the scripts.
4120         * test/gen-parallel-tests: For each parallel test foo-p.test,
4121         let `foo-p.log' also depend on `foo.test', since it is sourced.
4122
4123 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4124
4125         Coverage for TAGS_DEPENDENCIES warning.
4126         * tests/tags2.test: New test.
4127         * tests/Makefile.am: Update.
4128
4129         Coverage for use of anachronistic variables.
4130         * tests/oldvars.test: New test.
4131         * tests/Makefile.am: Update.
4132
4133         Testsuite coverage for bogus macro file serial numbers.
4134         * tests/acloca18.test: Also test ill-formed serial numbers
4135         and serial numbers after macro definitions.
4136
4137         Coverage for aclocal diagnosing underquoted macros.
4138         * tests/acloca23.test: New test.
4139         * tests/Makefile.am: Update.
4140
4141 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4142
4143         Prefer AUTOMAKE_fails over `$AUTOMAKE | grep' in tests.
4144         * tests/ldadd.test: Enable errexit.  Use AUTOMAKE_fails so
4145         the verbose log contains all output.
4146         * tests/mdate.test: Likewise.
4147         Prompted by Stefano Lattarini's change to discover.test.
4148
4149 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4150
4151         More minor message fixes.
4152         * aclocal.in (scan_file): Fix recommended info command line.
4153         * automake.in (handle_lib_objects): No need to prepend function
4154         name to prog_error message.
4155         (handle_tags): Add missing word and missing space in error
4156         message.
4157         (handle_dist): Add missing closing single quote in message.
4158         Line-wrap one long message for readability.
4159
4160 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
4161             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4162
4163         Fix distcheck failure with distributed generated parallel tests.
4164         * tests/Makefile.am ($(parallel_tests)): Cope with $(srcdir)
4165         being different from the value at developer `make dist' time.
4166         * tests/defs.in: Protect against multiple inclusion, by using ...
4167         ($am_defs_included): ... this new variable.
4168         ($srcdir): Do not compute, but simply define to `@abs_srcdir@'
4169         as substituted by configure.
4170         Report, suggestions and first fix by Ralf Wildenhues, final
4171         patch by Stefano Lattarini.
4172
4173 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
4174
4175         Improve tests link*.test (enable `errexit' shell flag).
4176         * tests/link_c_cxx.test: Enable `errexit shell flag, and related
4177         changes.  Also, do not create useless source files.
4178         * tests/link_dist.test: Likewise.
4179         * tests/link_f90_only.test: Likewise.
4180         * tests/link_f_only.test: Likewise.
4181         * tests/link_fc.test: Likewise.
4182         * tests/link_fccxx.test: Likewise.
4183         * tests/link_fcxx.test: Likewise.
4184
4185 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4186
4187         Improve ext.test semantics, avoid OpenBSD sh errexit issue.
4188         * tests/ext.test: Inside shell compound command, use
4189         `if $cmd; then Exit 1; fi' rather than `$cmd && Exit 1', to
4190         fix failure with OpenBSD sh introduced with last patch.
4191         Actually ensure that a rule for .EXT.o is created for each
4192         known extension EXT.
4193
4194 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
4195
4196         Enable `errexit' shell flag in some test scripts.
4197         * tests/dash.test: Enable `errexit' shell flag, and related
4198         changes.
4199         * tests/defun.test: Likewise.
4200         * tests/defun2.test: Likewise.
4201         * tests/dejagnu.test: Likewise.
4202         * tests/double.test: Likewise.
4203         * tests/distcom2.test: Likewise.
4204         * tests/empty2.test: Likewise.
4205         * tests/empty3.test: Likewise.
4206         * tests/empty4.test: Likewise.
4207         * tests/exdir.test: Likewise.
4208         * tests/ext.test: Likewise.
4209         * tests/extra.test: Likewise.
4210         * tests/extra2.test: Likewise.
4211         * tests/extra3.test: Likewise.
4212         * tests/extra4.test: Likewise.
4213         * tests/flibs.test: Likewise.
4214         * tests/fnoc.test: Likewise.
4215         * tests/fo.test: Likewise.
4216         * tests/instexec.test: Likewise.
4217         * tests/ltdeps.test: Likewise.
4218         * tests/nodep.test: Likewise.
4219         * tests/nodepcomp.test: Likewise.
4220         * tests/f90only.test: Likewise, and remove botched/obsoleted
4221         comments and unnecessary commands.
4222         * tests/fonly.test: Likewise, and remove botched/obsoleted
4223         comments and unnecessary commands.
4224         * tests/discover.test: Likewise, and made stricter.
4225
4226         Enable `errexit' shell flag in all tests cxx*.test.
4227         * tests/cxx.test: Enabled `errexit' shell flag, and related
4228         minor changes.
4229         * tests/cxxansi.test: Likewise.
4230         * tests/cxxcpp.test: Likewise.
4231         * tests/cxxlibobj.test: Likewise.
4232         * tests/cxxlink.test: Likewise.
4233         * tests/cxxo.test: Likewise.
4234
4235         Enable `errexit' shell flag in various tests.
4236         * tests/acoutnoq.test: Enabled `errexit' shell flag, and related
4237         minor changes.
4238         * tests/acoutpt.test: Likewise.
4239         * tests/acoutqnl.test: Likewise.
4240         * tests/amassign.test: Likewise.
4241         * tests/ansi2.test: Likewise.
4242         * tests/ansi4.test: Likewise.
4243         * tests/badprog.test: Likewise.
4244         * tests/checkall.test: Likewise.
4245         * tests/clean.test: Likewise.
4246         * tests/colneq2.test: Likewise.
4247         * tests/colon.test: Likewise.
4248         * tests/colon5.test: Likewise.
4249         * tests/colon6.test: Likewise.
4250         * tests/comment.test: Likewise.
4251         * tests/compile_f90_c_cxx.test: Likewise.
4252         * tests/compile_f_c_cxx.test: Likewise.
4253         * tests/cond3.test: Likewise.
4254         * tests/cond6.test: Likewise.
4255         * tests/cond13.test: Likewise.
4256         * tests/conf2.test: Likewise.
4257         * tests/confvar.test: Likewise.
4258         * tests/confvar2.test: Likewise.
4259         * tests/cond8.test: Likewise, plus a cosmetic change.
4260         * tests/confh4.test: Likewise.  Also, add in the heading comments
4261         an excerpt from the original bug report which motivated the
4262         creation of this test, to make its purpose clearer.
4263
4264 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4265
4266         Rewrite manual to be gender-neutral.
4267         * doc/automake.texi (GNU Build System)
4268         (Standard Directory Variables, General Operation, CVS)
4269         (Hard-Coded Install Paths, Dependencies As Side Effects):
4270         Rewrite text to not contain gender-specific pronouns when
4271         speaking about developers or users, either by avoiding pronouns
4272         or by addressing them as `you' instead.
4273         * THANKS: Update.
4274         Report by Christina Gratorp.
4275
4276         * AUTHORS: Update.
4277
4278 2010-06-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
4279
4280         Tiny fix in silent8.test (display output of `make' command).
4281         * tests/silent8.test: Make sure that the captured output of `make'
4282         command is always displayed.
4283
4284         Make tests on user extensibility of silent-rules mode stricter.
4285         * tests/silent6.test: Made stricter w.r.t. the grepping of the
4286         output produced by `make'.
4287         * tests/silent7.test: Likewise.
4288
4289         Tests on silent-mode for C/Libtool made stricter.
4290         * tests/silent.test: Made stricter w.r.t. the grepping of the
4291         output produced by `make'.
4292         * tests/silent2.test: Likewise.
4293         * tests/silent4.test: Likewise.
4294         * tests/silent9.test: Likewise.
4295         * tests/silent3.test: Likewise, and add a final `make distclean'
4296         command to keep it better in sync with tests/silent{4,9}.test.
4297
4298         Improved test silent5.test.
4299         * tests/silent5.test: Remove by hand all generated C files after
4300         non-verbose builds, to ensure the following builds are clean.
4301         Try to clean and rebuild with the same verbosity and without
4302         removing generated sources in between, to check that this does
4303         not trigger a different set of rules.  Make grepping of make's
4304         output stricter.  Improved/added some comments.
4305
4306         New tests for Automake silent-mode with Fortran.
4307         * tests/silentf77.test: New test.
4308         * tests/silentf90.test: Likewise.
4309         * tests/Makefile.am (TESTS): Updated accordingly.
4310
4311         New test `silentcxx.test' (Automake silent-mode with C++).
4312         * tests/silentcxx.test: New test.
4313         * tests/Makefile.am (TESTS): Updated accordingly.
4314
4315         New test `silentyacc.test' (Automake silent-mode with Yacc).
4316         * tests/silentyacc.test: New test.
4317         * tests/Makefile.am (TESTS): Updated accordingly.
4318
4319         New test `silentlex.test' (Automake silent-mode with Lex).
4320         * tests/silentlex.test: New test.
4321         * tests/Makefile.am (TESTS): Updated accordingly.
4322
4323         Relax tests on silent-rules to cater to overly verbose makes.
4324         * tests/silent.test: When testing silent builds, don't fail if
4325         make's output simply contains the `mv' substring, but only if
4326         it contains the `mv ' substring (note the trailing space).
4327         * tests/silent2.test: Likewise.
4328         * tests/silent3.test: Likewise.
4329         * tests/silent4.test: Likewise.
4330         * tests/silent5.test: Likewise.
4331         * tests/silent9.test: Likewise.
4332
4333 2010-05-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
4334
4335         Extend test on `nostdinc' automake option.
4336         * tests/nostdinc.test: Enable `errexit' shell flag.  Related and
4337         unrelated minor changes.  Make the grepping of the generated
4338         Makefile.in slightly stricter.  Generate and run configure, so that
4339         the generated Makefile can be grepped too.
4340
4341 2010-05-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4342
4343         Make gnupload portable to EBCDIC hosts.
4344         * lib/gnupload: Use literal newline as argument for 'tr' rather
4345         than \015, for EBCDIC hosts.  Also, avoid unportable nested
4346         double-quotes and backquotes.
4347         * THANKS: Update.
4348         Report from Eric Blake and Steve Goetze via gnulib.
4349
4350 2010-05-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
4351
4352         Fix Autoconf version required by Automake's configure.
4353         Automake configure script used to tell that automake required
4354         autoconf 2.60 or later, but then it checked for autoconf >= 2.62,
4355         and if that was not found, it gave an error saying that Automake
4356         required configure 2.61a-341 or later.  This change should
4357         eliminate such inconsistencies.
4358         * configure.ac ($required_autoconf_version): New variable.
4359         Use it throughout.
4360
4361 2010-05-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4362
4363         Fix truncated comment in Makefile.am.
4364         * Makefile.am (sc_tests_logs_duplicate_prefixes): Fix unfinished
4365         sentence in comment.
4366         Report by Stefano Lattarini.
4367
4368         Relax silent8.test for NetBSD make.
4369         * tests/silent8.test: Accept ./foo.info in output as well.
4370
4371         Fix unportable sed script in maintainer-check test.
4372         * Makefile.am (sc_tests_Exit_not_exit): Rewrite sed script to
4373         not contain semicolon after 'b' or brace commands, for NetBSD.
4374
4375         Wildcards are not portable to NetBSD make.
4376         * doc/automake.texi (Wildcards): Document portability issue.
4377         * tests/extra10.test, tests/extra11.test, tests/extra12.test:
4378         Require GNU make.
4379
4380 2010-05-23  Stefano Lattarini  <stefano.lattarini@gmail.com>
4381
4382         Make test for configure.in vs. configure.ac stricter.
4383         * tests/configure.test: Use a configure.in file that provokes
4384         an automake error, to ensure configure.ac is preferred.
4385
4386         Avoid possible false negatives in dejagnu7.test.
4387         * tests/dejagnu7.test: Enable shell `errexit' flag.  Also, avoid
4388         unportable use of fgrep option `-e'.
4389
4390         Fix conflnk3.test to work with Solaris/Heirloom Sh.
4391         * tests/conflnk3.test: Use `test -r FILE' and `test ! -r FILE'
4392         instead of respectively `test -e FILE' and `test ! -e FILE',
4393         since Solaris Sh doesn't grok the latter.  Do not SKIP the test
4394         if the shell doesn't support `test -e'.
4395
4396 2010-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4397
4398         Warning and error message formatting cleanups.
4399         * aclocal.in (parse_arguments, main): Remove trailing period or
4400         newline in error or warning messages, avoid capitalization of
4401         the first word of a message.
4402         * automake.in (check_user_variables, handle_languages)
4403         (handle_ltlibraries, scan_aclocal_m4, scan_autoconf_config_files)
4404         (scan_autoconf_files, cond_stack_if, require_file_internal)
4405         (usage, generate_makefile, parse_arguments): Likewise.
4406         * lib/Automake/ChannelDefs.pm (set_strictness): Likewise.
4407         * lib/Automake/Configure_ac.pm (find_configure_ac): Likewise.
4408         * lib/Automake/Options.pm (set_strictness): Likewise.
4409         * lib/Automake/Rule.pm (define): Likewise.
4410         * lib/Automake/Variable.pm (define, variables_dump): Likewise.
4411         * tests/ltinstloc.test, tests/suffix11.test: Adjust expected
4412         error message.
4413         * lib/Automake/Channels.pm (setup_channel): Reword error message
4414         to be the same as in msg.
4415
4416         Fix placing of ellipses in English text and synopses.
4417         * Makefile.am: Be sure to add a space before `...' in natural
4418         language text.
4419         * automake.in (scan_autoconf_traces): Likewise.
4420         * lib/Automake/Rule.pm (define): Likewise.
4421         * lib/Automake/Variable.pm (define): Likewise.
4422         * lib/am/dejagnu.am: Likewise.
4423         * lib/am/progs.am: Likewise.
4424         * lib/gnupload (dprint, upload): Likewise.
4425         * tests/confdeps.test: Likewise.
4426         * tests/location.test: Adjust expected output.
4427         * automake.in (usage): In synopsis, use singular for OPTION,
4428         * remove space before ellipsis.
4429         * aclocal.in (usage): Likewise.  Also, fix indentation.
4430
4431         Fix more duplicate message prefixes.
4432         * lib/Automake/XFile.pm (seek): Do not prepend $me.
4433         ($me): Remove now-unused package-global.
4434         * aclocal.in (check_acinclude): Remove duplicate 'warning: '
4435         prefix.
4436
4437         Fix typo in manual.
4438         * doc/automake.texi (Simple Tests using parallel-tests): Add
4439         missing closing parenthesis.
4440
4441         Fix leftover call to removed function macros_dump.
4442         * automake.in (read_main_am_file): Call variables_dump, not
4443         macros_dump.  Print actual error before list of variables.
4444
4445 2010-04-22  Stefano Lattarini  <stefano.lattarini@gmail.com>
4446
4447         Minor improvements in comments of test `silent3.test'.
4448         * tests/silent3.test: Tell to keep it in sync with `silent9.test'
4449         too.
4450
4451 2010-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4452
4453         testsuite: ensure verbose printing of captured output.
4454         * tests/acloca14.test, tests/acloca18.test, tests/aclocal.test,
4455         tests/fort2.test, tests/help.test, tests/missing3.test,
4456         tests/missing6.test: Print captured stdout or stderr before
4457         grepping it.
4458
4459 2010-04-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
4460
4461         Make test badopt.test stricter (by enabling `set -e').
4462         * tests/badopt.test: Add call to `set -e'.  Due to this change,
4463         an unexpected failure in the call to `$ACLOCAL' (whose outcome
4464         was previously unchecked) would cause the whole test to fail.
4465         Also, bumped the copyright years.
4466
4467         Make test for configure.in vs. configure.ac stricter.
4468         * tests/configure.test: Use a configure.in file that provokes
4469         an automake error, to ensure configure.ac is preferred.
4470
4471         Use `set -e' in confsub.test (avoids possible false negatives).
4472         * tests/confsub.test: Enable shell `errexit' flag, and related
4473         changes (this helps avoiding some possible minor false negatives).
4474         Also, bumped copyright years.
4475
4476 2010-04-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4477
4478         Fix -Werror handling for presence of configure.in and configure.ac.
4479         * lib/Automake/Variable.pm (Automake::Variable): Do not initialize
4480         $configure_ac at the global level, before command-line arguments
4481         have been parsed.
4482         (require_variables): Initialize it here.
4483         * tests/configure.test: New test.
4484         * tests/Makefile.am: Update.
4485         Report by Stefano Lattarini.
4486
4487 2010-04-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
4488
4489         Avoid possible false negatives in confh5.test.
4490         * tests/confh5.test: Enable shell `errexit' flag, and bumped
4491         copyright years.  Due to this change, any unexpected failure
4492         in calls to $ACLOCAL, $AUTOMAKE, $AUTOCONF or $AUTOHEADER, or
4493         a failure in grepping expected text in output files should now
4494         cause the whole test to fail.
4495
4496 2010-04-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
4497
4498         Fixed typo in POD documentation of Automake::Channels.
4499         * lib/Automake/Channels.pm: Fixed typo in POD documentation:
4500         @<...> was used instead of C<...>.
4501
4502 2010-04-14  Stefano Lattarini  <stefano.lattarini@gmail.com>
4503
4504         Refactor tests on Automake TESTS color output.
4505         * tests/color.test: Tests using the expect program moved out to...
4506         * tests/color2.test: ... this new file.
4507         * tests/Makefile.am (TESTS): Extended accordingly.
4508
4509 2010-04-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
4510
4511         Fix typos in comments in test confh5.test
4512         * tests/confh5.test: Fix a couple of typos in comments.
4513
4514         Avoid possible false negatives in canon-name.test.
4515         * tests/canon-name.test: Enable shell `errexit' flag.  Improve
4516         test description.
4517
4518 2010-04-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4519
4520         Print 'warnings are treated as errors' note if needed.
4521         * lib/Automake/Channels.pm: Fix typo in comment.
4522         (_print_message): If -Werror is enabled, print a 'warnings are
4523         treated as errors' note before the first such warning.
4524         * tests/warnopts.test: Adjust comment to mention expected warning.
4525         Adjust code to ignore 'warnings are treated as errors' note.
4526         * tests/location.test: Adjust expected output with -Werror.
4527         * tests/werror4.test: New test.
4528         * tests/Makefile.am: Update.
4529         * NEWS: Update.
4530
4531         Ensure we don't print 'warning:' or 'error:' twice.
4532         * Makefile.am (sc_ensure_testsuite_has_run): New helper rule.
4533         (sc_tests_logs_duplicate_prefixes): New rule, to check for
4534         wrong-looking warning and error messages in the test suite logs.
4535         * aclocal.in (scan_configure_dep, scan_file): Remove duplicate
4536         `warning: ' prefix.
4537         * tests/vars3.test: Rename variable to avoid false positive.
4538
4539         Prepend type to warning, error, and fatal messages.
4540         For the first part of messages of types `error' or `fatal',
4541         prepend `error: ' to the message.  Prepend `warning: ' to
4542         warning messages, whatever the setting of -Werror.
4543         * lib/Automake/Channels.pm (partial): Move up definition.
4544         (_format_message): Emit `header' and `footer' strings only with
4545         the first resp. last part of a set of partial messages.
4546         * lib/Automake/ChannelDefs.pm: Add missing '1;' statement at the
4547         end of the module.
4548         (Automake::ChannelDefs): Setup warning channels with header
4549         `warning: ', error and fatal messages with header `error: '.
4550         * tests/condinc2.test, tests/ltinstloc.test: Adjust expected
4551         error messages.
4552         * tests/comment5.test: Likewise.  Also, include stack notes
4553         should not start with `error:'.
4554         * tests/location.test: Likewise.  Also, try both -Werror and
4555         -Wno-error.
4556         * NEWS: Update.
4557         Report by Bruno Haible.
4558
4559         Fix capitalization of error messages, reword one message.
4560         * lib/Automake/Variable.pm (define): Do not capitalize the first
4561         word in the error message.
4562         * automake.in (require_file_internal): Likewise.  Also, reword
4563         and line-wrap for better readability.
4564         * tests/distcom7.test, tests/pluseq5.test, tests/pluseq9.test:
4565         Adjust tests.
4566
4567         Fix connected warnings about obsolete exeext override.
4568         * lib/Automake/Rule.pm (define): Merge two warnings that belong
4569         together, by setting the 'partial' flag for the first one.
4570
4571         Fix per-Makefile.am setting of -Werror.
4572         Before this patch, 'AUTOMAKE_OPTIONS = -Werror' in one
4573         Makefile.am would carry over to other Makefile.am files
4574         treated afterwards by the same thread, causing inconsistent
4575         and unstable exit status values.
4576         * lib/Automake/Channels.pm (dup_channel_setup)
4577         (drop_channel_setup): Save and restore the setting of
4578         $warnings_are_errors.
4579         * tests/werror3.test: New test.
4580         * tests/Makefile.am: Adjust.
4581         * NEWS: Update.
4582
4583 2010-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
4584
4585         Bugfix in confh5.test w.r.t. Solaris/Heirloom Sh.
4586         * tests/confh5.test: In the generated Makefile.am: do not use
4587         `test ! -e FILE' to check for the non-existence of a file, since
4588         that is not supported by Solaris/Heirloom Sh.
4589
4590         Make test `aclocal3.test' stricter.
4591         * tests/aclocal3.test: Add call to `set -e'.  Fail if $ACLOCAL
4592         succeds unexpectedly.
4593
4594         Add tests checking that symlinks are resolved by `make dist'.
4595         * tests/distlinks.test: New test.
4596         * tests/Makefile.am (TESTS): Updated accordingly.
4597         Suggested by observations from Ralf Wildenhues.
4598
4599 2010-04-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4600
4601         Use -9 for maximum xz compression with dist-xz.
4602         * lib/am/distdir.am (dist-xz, dist, dist-all): Pass -9 to xz.
4603         * NEWS, THANKS: Update.
4604         Report by Pavel Sanda.
4605
4606 2010-04-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
4607
4608         Avoid possible false negatives in cond46.test.
4609         * tests/cond46.test: Enable shell `errexit' flag (and bumped
4610         copyright years).  Due to this change, the testcase should now
4611         fail on unexpected failures in calls to $ACLOCAL/$AUTOMAKE (whose
4612         outcomes were previously unchecked), and on failures in grepping
4613         the expected diagnostic in Automake stderr.
4614
4615 2010-04-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
4616
4617         Generated tests are now just a thin layer around other tests.
4618         * tests/Makefile.am: Rewrite the rule to generate the `*-p.test'
4619         test scripts so that any of them simply includes the corresponding
4620         `*.test' script (after setting `$parallel_tests' to `yes').
4621         * tests/.gitignore: Add wildcard for temporary files used in the
4622         generation of `*-p.test' tests.
4623
4624 2010-03-30  Stefano Lattarini  <stefano.lattarini@gmail.com>
4625
4626         Avoid an unportable use of `$status' shell variable.
4627         * Makefile.am (path-check): Don't use the `$status' shell variable
4628         in the target's rules, as it's special in Zsh (equivalent to `$?',
4629         and readonly).
4630
4631         Avoid another use of `chmod -R'.
4632         * Makefile.am (path-check): To be safe, do not use `chmod -R' on
4633         $(distdir) before removing it (as Solaris `chmod -R' touches
4634         symlink targets).  Instead, use the cleanup strategy used in
4635         distdir.am.
4636
4637 2010-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4638
4639         Remove uses of @acronym and @sc.
4640         * doc/automake.texi (Public Macros, Limitations on File Names):
4641         Remove all usage of @acronym and @sc in the manual.
4642         Suggested by Karl Berry.
4643
4644 2010-03-13  Karl Berry  <karl@freefriends.org>
4645
4646         GNU hello uses fdl.texi, not gpl.texi.
4647         * doc/automake.texi (Texinfo): Adjust example to upstream
4648         change.
4649
4650 2010-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4651
4652         Formatting cleanups in macro comments.
4653         * automake.in, lib/Automake/Channels.pm,
4654         lib/Automake/FileUtils.pm, lib/Automake/Options.pm,
4655         lib/Automake/Variable.pm, lib/Automake/XFile.pm,
4656         m4/options.m4, m4/substnot.m4: Fix macro comment format.
4657
4658 2010-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
4659             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4660
4661         Avoid generation of `tests/defs-p' file.
4662         * tests/defs.in: In the generated `configure.in' snippet: call
4663         `AM_INIT_AUTOMAKE' with the `parallel-tests' option if the shell
4664         variable `parallel_tests' is set to `yes'.
4665         * tests/Makefile.am (defs-p): Target removed.
4666         (check_SCRIPTS): Removed `defs-p'.
4667         (clean-local-check): Do not unlink `defs-p' anymore.
4668         ($(parallel_tests)): Transformation rules for the test scripts
4669         adjusted.
4670         * tests/gen-parallel-tests: Selection rules for the test
4671         scripts adjusted.
4672         * tests/parallel-tests.test: Set `$parallel_tests' to `yes'
4673         then include `./defs' (rather than simply including `./defs-p').
4674         * tests/parallel-tests2.test: Likewise.
4675         * tests/parallel-tests3.test: Likewise.
4676         * tests/parallel-tests4.test: Likewise.
4677         * tests/parallel-tests5.test: Likewise.
4678         * tests/parallel-tests6.test: Likewise.
4679         * tests/parallel-tests7.test: Likewise.
4680         * tests/parallel-tests8.test: Likewise.
4681         * tests/parallel-tests9.test: Likewise.
4682         * tests/parallel-tests10.test: Likewise.
4683         * tests/README (Section "Writing Test Cases" subsection "Do"):
4684         Adjusted the parts referring to tests checking `parallel-tests'
4685         behaviour.  Some other minor related improvements.
4686         * tests/.gitignore (defs-p): Removed.
4687
4688 2010-03-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
4689
4690         Remove redundant unset of variable TESTS from some test scripts.
4691         * tests/color.test: Do not unset the `TESTS' variable, as it's
4692         already unset in the `defs' file.
4693         * tests/check5.test: Likewise.
4694         * tests/check8.test: Likewise.
4695         * tests/check9.test: Likewise.
4696         * tests/check10.test: Likewise.
4697         * tests/check11.test: Likewise.
4698         * tests/parallel-tests.test: Likewise.
4699         * tests/parallel-tests3.test: Likewise.
4700         * tests/parallel-tests4.test: Likewise.
4701         * tests/parallel-tests5.test: Likewise.
4702         * tests/parallel-tests6.test: Likewise.
4703         * tests/parallel-tests7.test: Likewise.
4704
4705 2010-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4706
4707         Fix cscope test on systems without working Fortran compiler.
4708         * tests/cscope.test: Skip remainder of test if `$MAKE all' fails.
4709         * THANKS: Update.
4710         Report by Peter Johansson.
4711
4712 2010-02-24  Antonio Diaz Diaz  <ant_diaz@teleline.es>  (tiny change)
4713             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4714
4715         Add lzip compression support.
4716         * automake.in (handle_dist): Recognize dist-lzip.
4717         (make_paragraphs): Map LZIP to dist-lzip.
4718         * doc/automake.texi (Dist): Add dist-lzip.
4719         (Options): Likewise.
4720         * lib/Automake/Options.pm (_process_option_list): Add dist-lzip.
4721         * lib/am/distdir.am
4722         (dist dist-all): Add command to create an lzip-compressed tarball.
4723         (distcheck): Handle lzip-compressed tarballs just like the others.
4724         * tests/defs.in: Test for lzip, too.
4725         * tests/lzip.test: New file, based on nogzip.test.
4726         * tests/Makefile.am (TESTS): Add lzip.test.
4727         * NEWS: Update.
4728
4729 2010-02-22  Karl Berry  <karl@gnu.org>
4730
4731         Improve help message of mdate-sh.
4732         * mdate-sh: mention actual output format in help message.
4733
4734 2010-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4735
4736         Deprecate dist-lzma in favor of dist-xz.
4737         * doc/automake.texi (The Types of Distributions, Options):
4738         Adjust text to reflect renaming of lzma to xz.
4739         * NEWS: Update.
4740         Missing deprecation noted by Antonio Diaz Diaz.
4741
4742 2010-02-20  Stefano Lattarini  <stefano.lattarini@gmail.com>
4743
4744         Add tests about support of wildcards in EXTRA_DIST.
4745         * tests/extra10.test: New test, check basic support of wildcards
4746         in EXTRA_DIST.
4747         * tests/extra11.test: New test, check more complex usage of
4748         wildcards in EXTRA_DIST.
4749         * tests/extra12.test: New test, check usage of wildcards in
4750         EXTRA_DIST when $builddir != $srcdir.
4751         * tests/Makefile.am (TESTS): Updated accordingly.
4752         Necessity of these new tests suggested by Braden McDaniel
4753         and Ralf Wildenhues.
4754
4755 2010-02-08  Simon Josefsson  <simon@josefsson.org>
4756
4757         Fix copyright statement in gnupload script.
4758         * lib/gnupload: Fix copyright statement.
4759
4760 2010-02-06  Dmitry V. Levin  <ldv@altlinux.org>  (tiny change)
4761             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4762
4763         Fix exit status of signal handlers in shell scripts.
4764         The value of `$?' on entrance to signal handlers in shell scripts
4765         cannot be relied upon, so set the exit code explicitly to
4766         128 + SIG<SIGNAL>.
4767         * lib/am/check.am (am__check_pre): Use `exit 143' in signal handler.
4768         * lib/elisp-comp: Likewise.
4769         * lib/install-sh: Likewise.
4770         * lib/ylwrap: Likewise.  Also, fix script to trap signal 13, not 3.
4771         * NEWS, THANKS: Update.
4772         Bug report, analysis, and initial patch by Dmitry V. Levin.
4773
4774 2010-02-06  Karl Berry  <karl@gnu.org>
4775
4776         Improve gnupload usage text.
4777         * gnupload (usage): Shorten to make more likely to fit on a tty
4778         line.  Mention CMD in the synopsis.  With ..., plural is implied.
4779
4780 2010-01-28  Christos Kontas  <xakon@yahoo.com>  (tiny change)
4781
4782         Fix some typos in the manual
4783         * doc/automake.texi (Nested Packages, Rebuilding): Fix typos.
4784
4785 2010-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4786
4787         Fix silent-rules output for disabled dependency tracking.
4788         * lib/am/depend2.am [!%FASTDEP%]: Rework silent-rules variable
4789         expansion code to also work in the case where %AMDEP% expands
4790         to FALSE at config.status time, using new substitution string
4791         %VERBOSE-NODEP%.
4792         * automake.in (verbose_nodep_flag): New function, appending
4793         `@am__nodep@' to the verbose-variable name.
4794         (handle_languages): If dependencies are not disabled, use it to
4795         set %VERBOSE-NODEP%.
4796         * m4/depend.m4: Substitute am__nodep as '_no', so the second
4797         verbose-variable will always expand to an empty string, if
4798         dependencies are enabled.
4799         * tests/silent5.test: Also test --disable-dependency-tracking;
4800         also test per-target flags for non-C language files.
4801         * tests/silent9.test: New test, like silent4.test but disable
4802         dependency tracking.
4803         * tests/Makefile.am: Adjust.
4804         * NEWS, THANKS: Update.
4805         Report by Dmitry V. Levin <ldv@altlinux.org>.
4806
4807 2010-01-17  Stefano Lattarini  <stefano.lattarini@gmail.com>
4808
4809         Slighty improve tests acoutbs.test and acoutbs2.test.
4810         * tests/acoutbs2.test: Enable `errexit' shell flag.  Check that
4811         autoconf and configure work, that the file `zot' is created by
4812         configure, and that no file containing a backslash in its name is
4813         created.
4814         * tests/acoutbs.test: Likewise, plus updated copyright years.
4815
4816         Fix test acoutbs2.test.
4817         * tests/acoutbs2: In the generated configure.in: add proper calls
4818         to AC_INIT and AM_INIT_AUTOMAKE, and remove explicit definition of
4819         PACKAGE and VERSION. Add a call to aclocal before calling automake.
4820         Updated copyright years.
4821         * tests/Makefile.am (XFAIL_TESTS): Removed acoutbs2.test.
4822
4823         Add forgotten test scripts to $(TESTS).
4824         * tests/Makefile.am (TESTS): Added test scripts present on the
4825         filesystem, which were erroneously left out from $(TESTS):
4826         acoutbs2.test, badopt.test, extra2.test.
4827         (XFAIL_TESTS): Added acoutbs2.test.
4828
4829 2010-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4830
4831         Sync auxiliary files from upstream.
4832         * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub:
4833         Sync from upstream.
4834
4835         Bump copyright years.
4836         * aclocal.in (write_aclocal, version): Bump copyright years.
4837         * automake.in (gen_copyright, version): Likewise.
4838         * doc/automake.texi: Likewise.
4839
4840         Rotate ChangeLog.
4841         * ChangeLog.09: New file, rotated from ...
4842         * ChangeLog: ... here.
4843         * Makefile.am (EXTRA_DIST): Distribute ChangeLog.09.
4844
4845 -----
4846
4847 Copyright (C) 2010, 2011  Free Software Foundation, Inc.
4848
4849 Copying and distribution of this file, with or without modification, are
4850 permitted provided the copyright notice and this notice are preserved.
4851
4852 ;; Variables:
4853 ;; coding: utf-8
4854 ;; End: