1 2011-08-03 Bruno Haible <bruno@clisp.org>
3 docs: how to use '-I' option in AM_CPPFLAGS for best VPATH support
4 * doc/automake.texi (Program Variables): Recommend -I options to
5 both the build directory and the source directory when needed.
7 2011-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
9 tests: relax a test on amhello examples to cater to Solaris tar
10 * tests/amhello-binpkg.test: When the tar implementation in use
11 is not GNU tar, relax the tests on tar output, to avoid spurious
12 failures. For example, "tar cvf ..." with GNU tar can output
13 lines like "./usr/bin/hello" on the standard output, while with
14 Solaris tar it can output lines like "a ./usr/bin/hello 8K" on
15 standard output, and with Heirloom tar it can output lines like
16 "a ./usr/bin/hello 15 tape blocks" on standard error.
18 2011-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
20 test defs: function 'is_newest' now works also with directories
21 * tests/defs (is_newest): Call `find' with the `-prune' option,
22 so that it won't descend in the directories (which could cause
24 * tests/self-check-is_newest: Extend accordingly.
25 From a report by Jim Meyering, see automake bug#9147.
27 2011-07-15 Benoit Sigoure <tsunanet@gmail.com>
29 docs: add references between the 2 sections on java support
30 * doc/automake.texi (Java Support, Java): Add cross-references.
32 2011-07-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
34 Sync auxiliary files from upstream.
35 * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub,
36 lib/texinfo.tex: Sync from upstream.
38 2011-07-24 Stefano Lattarini <stefano.lattarini@gmail.com>
40 tests: small enhancement to 'primary3.test'
41 * tests/primary3.test: Also test that the program named `foo.la'
42 has been effectively created.
44 2011-07-24 Stefano Lattarini <stefano.lattarini@gmail.com>
46 tests: a small simplification in 'pr8365-remake-timing.test'
47 * tests/pr8365-remake-timing.test: Avoid redundant definition
48 and use of `$save_AUTOCONF' variable.
50 2011-07-24 Stefano Lattarini <stefano.lattarini@gmail.com>
52 tests: remove an extra leading blank line
53 * tests/override-conditional-1.test: Remove extra blank line
54 placed before the shebang line.
56 2011-07-18 Stefano Lattarini <stefano.lattarini@gmail.com>
58 tests: fix typos, grammaros and other blunders in comments
59 All affected files changed.
61 2011-07-16 Stefano Lattarini <stefano.lattarini@gmail.com>
63 test defs: new subroutine 'seq_', simulating GNU seq(1)
64 * tests/defs (seq_): New subroutine.
65 * tests/instmany.test: Use it.
66 * tests/instmany-mans.test: Likewise.
67 * tests/instmany-python.test: Likewise.
68 * tests/self-check-seq.test: New self test.
69 * tests/Makefile.am (TESTS): Update.
71 2011-07-16 Stefano Lattarini <stefano.lattarini@gmail.com>
73 tests: remove duplication about testing of config.* aux files
74 * tests/add-missing.test: Also check that the `AC_CANONICAL_SYSTEM'
75 autoconf macro causes the `config.sub' and `config.guess' scripts
76 to be installed by `automake --add-missing'. Since we are at it,
77 fix minor buglets and cosmetic issues in the `check_' function.
78 * tests/hosts.test: Removed, completely subsumed by the previous
80 * tests/Makefile.am (TESTS): Update.
82 2011-07-16 Stefano Lattarini <stefano.lattarini@gmail.com>
84 tests: more uses of the 'unindent' subroutine
85 * tests/backcompat.test: Prefer `unindent' over plain `cat' for
86 here documents created from within a loop of if/else body.
87 * tests/backcompat2.test: Likewise.
88 * tests/backcompat4.test: Likewise.
89 * tests/init.test: Likewise.
90 * tests/instmany.test: Likewise.
91 * tests/instmany-mans.test: Likewise.
92 * tests/instmany-python.test: Likewise.
93 * tests/missing5.test: Likewise.
94 * tests/parallel-am2.test : Likewise.
95 * tests/parallel-am3.test : Likewise.
96 * tests/pr307.test: Likewise.
97 * tests/depend4.test: Likewise. Since we are at it, normalize
98 other code formatting.
99 * tests/instfail-java.test: Prefer `echo' over `cat' + here-doc
102 2011-07-16 Stefano Lattarini <stefano.lattarini@gmail.com>
104 tests: avoid '##'-style comments inside recipe commands
105 * tests/autodist.test: Do not whitespace-indent `##' comments when
106 they are embedded in a makefile rule: having them indented is not
107 part of the Automake API, and might cause failures with e.g., Tru64
109 * tests/autodist-subdir.test: Likewise.
110 * tests/backcompat.test: Likewise.
111 * tests/backcompat6.test: Likewise.
112 * tests/colon7.test: Likewise.
113 * tests/posixsubst-scripts.test: Likewise.
114 * tests/posixsubst-sources.test: Likewise.
116 2011-07-16 Stefano Lattarini <stefano.lattarini@gmail.com>
118 tests: tweak, improve and extend tests on lisp support
119 * tests/lisp2.test: Prettify, and improve debugging output. Make
120 grepping of automake stderr stricter.
121 * tests/lisp7.test: Ensure verbose printing of captured make
122 output. Add trailing `:' command.
123 * tests/lisp8.test: Likewise.
124 * tests/lisp3.test: Likewise. Also, check that `.el' files and
125 compiled `.elc' files get installed by "make install", and
126 uninstalled by "make uninstall".
127 * tests/lisp4.test: Ensure installed `.el' files gets removed by
128 "make uninstall". Related changes. Add trailing `:' command.
129 * tests/lisp5.test: Likewise.
130 * tests/lisp6.test: Use proper m4 quoting in configure.in. Fix
131 use of blank lines, to improve clarity and symmetry. Fix typo in
132 comment. Add trailing `:' command.
134 2011-07-16 Stefano Lattarini <stefano.lattarini@gmail.com>
136 tests: drop useless requirement in 'license.test'
137 * tests/license.test: Drop useless requirement "makeinfo". Add
138 an extra blank line, for clarity.
140 2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
142 tests: fix weakness in 'tests-environment-backcompat.test'
143 * tests/tests-environment-backcompat.test: Do not override the
144 content of xfailing test `baz.test' with a "weaker" version that
145 fails unconditionally: the test must fail only when the 'strict'
146 pragma is in use, in order not to reduce coverage.
148 2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
150 docs, tests: synchronize examples on silent-rules from config.site
151 * doc/automake.texi (Automake silent-rules Option): Reference test
152 'silent-configsite.test' in comments.
154 2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
156 tests defs: more uses of $top_testsrcdir
157 * tests/autodist-stamp-vti.test: Use `$top_testsrcdir' instead
159 * tests/repeated-options.test: Likewise.
160 * tests/suffix5.test: Likewise.
161 * tests/vtexi3.test: Likewise.
163 2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
165 self tests: fix typo in comment
166 * tests/self-check-exit.test: Fix typo in heading comments.
168 2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
170 tests: remove redundant settings of `errexit' shell flag
171 * tests/amhello-binpkg.test: Do not set the `errexit' shell
172 flag, as it is already set by `tests/defs'.
173 * tests/amhello-cflags.test: Likewise.
174 * tests/amhello-cross-compile.test: Likewise.
175 * tests/ansi2knr-deprecation.test: Likewise.
176 * tests/autodist-no-duplicate.test: Likewise.
177 * tests/distcheck-configure-flags-am.test: Likewise.
178 * tests/distcheck-configure-flags-subpkg.test: Likewise.
179 * tests/distcheck-configure-flags.test: Likewise.
180 * tests/distcheck-hook.test: Likewise.
181 * tests/distcheck-hook2.test: Likewise.
182 * tests/parallel-tests-am_tests_environment.test: Likewise.
183 * tests/parallel-tests-harderror.test: Likewise.
184 * tests/parallel-tests-log-compiler-example.test: Likewise.
185 * tests/parallel-tests-log-override-1.test: Likewise.
186 * tests/parallel-tests-log-override-2.test: Likewise.
187 * tests/parallel-tests-log-override-recheck.test: Likewise.
188 * tests/primary-prefix-couples-documented-valid.test: Likewise.
189 * tests/primary-prefix-couples-force-valid.test: Likewise.
190 * tests/primary-prefix-invalid-couples.test: Likewise.
191 * tests/primary-prefix-valid-couples.test: Likewise.
192 * tests/remake-subdir-from-subdir.test: Likewise.
193 * tests/remake-subdir-gnu.test: Likewise.
194 * tests/remake-subdir-long-time.test: Likewise.
195 * tests/remake-subdir.test: Likewise.
196 * tests/remake-subdir2.test: Likewise.
197 * tests/silent-configsite.test: Likewise.
198 * tests/tests-environment-backcompat.test: Likewise.
200 2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
202 tests: portability fixes in tests on amhello examples
203 * tests/amhello-binpkg.test: Don't use "tar xzf too.tag.gz" to
204 extract a gzip-compressed tarball, that's unportable to some
205 tar implementations; use the "gzip -dc fo.tar.gz | tar xf -"
207 * tests/amhello-cflags.test: Likewise.
208 * tests/amhello-cross-compile.test: Likewise.
209 Suggestion from Ralf Wildenhues.
211 2011-07-04 Stefano Lattarini <stefano.lattarini@gmail.com>
213 remake: add test ensuring that slower remakes don't hang
214 * tests/remake-subdir-long-time.test: New test.
215 * tests/Makefile.am (TESTS): Update.
216 Suggestion by Ralf Wildenhues.
218 2011-07-04 Stefano Lattarini <stefano.lattarini@gmail.com>
220 remake: fix outdated comment in configure.am
221 * lib/am/configure.am: Fix comment falsified by changes in
222 commit `v1.11-366-gbee9871'.
223 Suggestion by Ralf Wildenhues.
225 2011-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
227 docs, tests: synchronize examples from docs to tests
228 * tests/README (Writing test cases): Give suggestions on how to
229 keep test cases and examples in the documentation synchronized.
230 * doc/automake.texi: Improve or fix existing testcase-referencing
231 comments, and add many new ones.
232 * HACKING (Administrivia): Suggest to test complex examples and
233 idioms from the manual.
234 * tests/specflg8.test: Improve synchronization with the example
236 * tests/output11.test:Likewise.
237 * tests/txinfo21.test:Likewise.
238 * tests/interp.test: Likewise.
239 * tests/amhello-cflags.test: New test.
240 * tests/amhello-cross-compile.test: Likewise.
241 * tests/amhello-binpkg.test: Likewise.
242 * tests/tests-environment-backcompat.test: Likewise.
243 * tests/parallel-tests-log-compiler-example.test: Likewise.
244 * tests/Makefile.am (TESTS): Update.
246 2011-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
248 coverage: new test on parallel-tests TESTS runtime overriding
249 * tests/parallel-tests-cmdline-override.test: New test, check that
250 we can use indirections when overriding TESTS and TEST_LOGS from
252 * tests/Makefile.am (TESTS): Update.
254 2011-06-29 Stefano Lattarini <stefano.lattarini@gmail.com>
256 docs: explain why AM_TESTS_ENVIRONMENT must be semicolon-terminated
257 * doc/automake.texi (Simple Tests using parallel-tests): Ditto, and
259 Suggestion by Ralf Wildenhues.
261 2011-06-29 Stefano Lattarini <stefano.lattarini@gmail.com>
263 docs: fix unportable example of AM_TESTS_ENVIRONMENT usage
264 * doc/automake.texi (Simple Tests using parallel-tests): The
265 old example on AM_TESTS_ENVIRONMENT relied on unportable shell
266 features, and in particular didn't work with various Korn
267 Shells (see also commit `v1.11-925-g29ca903'). Give another
268 example, simpler this time, but still inspired to real-world
269 usage (the GNU coreutils testsuite).
271 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
273 docs: avoid a footnote, some related rewordings and improvements
274 * doc/automake.texi (Dist): Reword the part about automatically
275 distributed files to avoid a footnote. Since we are at it, extend
276 a bit, and add an example and a reference to a relevant test case.
278 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
280 docs: minor cosmetic fixes
281 * doc/automake.texi: Break few overly long lines, throughout the
283 ("Simple Tests"): Move @vindex for XFAIL_TESTS to the correct
284 position, i.e., before and not after the paragraph where it is
286 ("Options" @item ansi2knr): Use @pxref instead of @xref. This
287 fixes a texinfo warning.
288 ("Other things Automake recognizes" @item AM_C_PROTOTYPES): Use
289 @pxref instead of @ref.
291 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
293 help: improve text about automatically-distributed files
294 This change fixes automake bug#7819.
295 * automake.in (usage): Distinguish between files that are always
296 automatically distributed when found, and those which are only
297 "under certain conditions".
298 * doc/automake.texi (Basics of Distribution): Update accordingly.
299 * tests/autodist-subdir.test: Update.
300 * tests/autodist-no-duplicate.test: Likewise.
301 * tests/autodist.test: Likewise.
302 (configure.in): Remove useless call to AM_MAINTAINER_MODE.
304 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
306 refactor: split 'usage' subroutine in automake
307 This change is related to automake bug#7819.
308 * automake.in (print_autodist_files): New subroutine,
310 (usage): ... this, which now uses it.
311 * tests/autodist-no-duplicate.test: New test.
312 * tests/Makefile.am (TESTS): Update.
314 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
316 tests: fix bug in 'autodist.test'
317 * tests/autodist.test: Avoid spurious failure due to no
318 `defs-static' file being found in the parent directory.
320 2011-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
322 maintcheck: extend 'sc_tests_plain_*' checks
323 * Makefile.am (sc_tests_plain_autom4te): New check.
324 (sc_tests_plain_autoreconf): Likewise.
325 (sc_tests_plain_autoheader): Likewise.
326 (syntax_check_rules): Update.
328 2011-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
330 tests: interactions between TESTS_ENVIRONMENT and LOG_COMPILER
331 * tests/tests-environment-and-log-compiler.test: New test,
332 checking that we can use variables and functions set by
333 TESTS_ENVIRONMENT and AM_TESTS_ENVIRONMENT in LOG_COMPILER
334 and LOG_FLAGS (for tests both with and without registered
336 * tests/Makefile.am (TESTS): Update.
338 2011-06-24 Stefano Lattarini <stefano.lattarini@gmail.com>
340 tests: make 'subst-no-trailing-empty-line.test' more robust
341 * tests/subst-no-trailing-empty-line.test: Strengthen existing
342 checks, to try more scenarios and be slightly stricter in some
345 2011-06-24 Stefano Lattarini <stefano.lattarini@gmail.com>
347 tests: fix an incomplete comment
348 * tests/subst-no-trailing-empty-line.test: Fix an incomplete
349 comment, and move it to a more proper place. Minor cosmetic
350 fixes to other comments.
352 2011-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
354 maintcheck: avoid few more spurious failures
355 * tests/depmod-data.test: Use creative quoting to avoid
356 spuriously triggering the `sc_tests_Exit_not_exit' maintainer
357 check. Commit `v1.11-900-g3453b8e' attempted to fix it, but
358 succeeded only partially.
359 * tests/cond33.test: Fix header comments, not to reference
360 obsolescent make variable `$(mkdir_p)'.
361 * tests/cond4.test: Rewrite "$MAKE exp=..." as "exp=.. $MAKE -e",
362 to please `sc_tests_overriding_macros_on_cmdline'
363 * tests/cond19.test: Likewise.
364 * tests/cond32.test: Likewise.
365 * tests/add-missing.test: Use "AUTOMAKE_fails" instead of
366 "$AUTOMAKE ... && Exit 1", to please `sc_tests_automake_fails'.
368 2011-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
370 maintcheck: avoid few spurious failures
371 * Makefile.am (sc_tests_plain_aclocal, sc_tests_plain_perl,
372 sc_tests_plain_autoconf, sc_tests_plain_automake,
373 sc_tests_plain_autoupate): Be stricter in matching an erroneous
374 literal command, i.e., `aclocal', `automake', `perl', etc.
376 2011-06-20 Bert Wesarg <bert.wesarg@googlemail.com> (tiny change)
378 check: don't use multi-line coloring for the report
379 "less -R" can't handle multi-line coloring as it is done for the
380 check reports of the serial and parallel testsuite, because of
381 performance reasons. Thus, color each line of the check report
383 * lib/am/check.am (am__text_box): Accept colors for lines, and
384 color each line by its own.
385 [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Let am__text_box handle
387 [!%?PARALLEL_TESTS%] $(check-TESTS): Color each report line by
391 2011-06-18 Stefano Lattarini <stefano.lattarini@gmail.com>
393 docs: AM_DISTCHECK_CONFIGURE_FLAGS is for corner cases
394 * doc/automake.texi (Checking the Distribution): Explain that the
395 developers should take care of making their code buildable without
396 requiring any special configure options, so that in general
397 AM_DISTCHECK_CONFIGURE_FLAGS shouldn't be used. Give an example
398 of where its use is legitimate.
399 Suggestions from Ralf Wildenhues and Eric Blake.
401 2011-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
403 ansi2knr: deprecate, it will go away in the next major release
404 * doc/automake.texi: Loudly and repeatedly state that the old
405 de-ANSI-fication features are now deprecated and will be removed
406 in the next major Automake release. Other related adjustments.
407 * lib/Automake/Options.pm (_process_option_list ): Give a warning
408 in the `obsolete' category when the `ansi2knr' option is used.
409 * m4/protos.m4 (AM_C_PROTOTYPES): Deprecate this macro: a warning
410 in the `obsolete' category will be emitted it if is used.
411 * tests/ansi2knr-deprecation.test: New test.
412 * tests/Makefile.am (TESTS): Update.
413 * tests/ansi.test: Adjust, by calling autoconf and/or automake
414 with the `-Wno-obsolete' flag.
415 * tests/ansi10.test: Likewise.
416 * tests/ansi2.test: Likewise.
417 * tests/ansi3.test: Likewise.
418 * tests/ansi3b.test: Likewise.
419 * tests/ansi4.test: Likewise.
420 * tests/ansi5.test: Likewise.
421 * tests/ansi6.test: Likewise.
422 * tests/ansi7.test: Likewise.
423 * tests/ansi8.test: Likewise.
424 * tests/ansi9.test: Likewise.
425 * tests/cxxansi.test: Likewise.
426 * tests/libobj8.test: Likewise.
427 * NEWS: Update about the future planned backward-incompatibility
428 due to the removal of de-ANSI-fication feature.
430 2011-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
432 docs: primary/prefix combination "pkglib_PROGRAMS" is now invalid
433 * doc/automake.texi (Program Sources): pkglib_PROGRAMS is not a
434 valid combination anymore, so don't document it. Inconsistency
435 introduced in commit `v1.11-373-g9ca6326'.
437 2011-06-19 Jim Meyering <meyering@redhat.com>
439 docs: replace obsolete @vindex entry with a useful one
440 * doc/automake.texi (Program Sources): Do not index obsolete
441 pkglib_PROGRAMS here. Do index pkglibexec_PROGRAMS.
443 2011-06-18 Stefano Lattarini <stefano.lattarini@gmail.com>
445 tests: more checks on portable fd redirection in TESTS_ENVIRONMENT
446 * tests/tests-environment-fd-redirect.test: Extend by also using
447 a perl script among the tests. Run the test shell script with
448 the `errexit' flag active. Export `VERBOSE' to yes when running
449 "make check", to give more debugging information in case of
450 failures. Look for a Korn Shell also in `/usr/bin', not on only
453 2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
455 tests: optimize tests on primary/prefix mismatch for speed
456 * tests/primary-prefix-invalid-couples.test: Partial rewrite, in
457 order to use just a single automake invocation rather than one
458 invocation for each invalid primary/prefix couple. This improves
459 the test script execution time by an order of magnitude.
460 Since we are at it, throw in some other improvements to avoid
461 unrelated automake warnings and failures that could potentially
462 cause false positives w.r.t. the automake exit status.
464 2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
466 news: update w.r.t. introduction of AM_DISTCHECK_CONFIGURE_FLAGS
467 * NEWS (Miscellaneous changes): Update.
469 2011-06-10 Stefano Lattarini <stefano.lattarini@gmail.com>
471 maintcheck: DISTCHECK_CONFIGURE_FLAGS can be defined on make cmdline
472 * Makefile.am (sc_tests_overriding_macros_on_cmdline): It's now
473 acceptable that the test scripts override DISTCHECK_CONFIGURE_FLAGS
474 on the make command line. Update comments accordingly. Since we
475 are at it, make the relevant grepping rules slightly tighter.
477 2011-06-10 Stefano Lattarini <stefano.lattarini@gmail.com>
479 distcheck: add support for AM_DISTCHECK_CONFIGURE_FLAGS
480 * doc/automake.texi (Checking the Distribution): Suggest to use
481 AM_DISTCHECK_CONFIGURE_FLAGS, not DISTCHECK_CONFIGURE_FLAGS, to
482 define (in the top-level Makefile.am) extra flags to be passed
483 to configure at "make distcheck" time; DISTCHECK_CONFIGURE_FLAGS
484 should be reserved for the user. Add proper `@vindex' directive.
485 Document that AM_DISTCHECK_CONFIGURE_FLAGS is not honoured in a
486 subpackage Makefile.am, but the flags in it are passed down to
487 the configure script of the subpackage.
488 * lib/am/distdir.am (distcheck): Also pass the flags in
489 $(AM_DISTCHECK_CONFIGURE_FLAGS) to the configure invocation.
491 * tests/defs.in.test (AM_DISTCHECK_CONFIGURE_FLAGS,
492 DISTCHECK_CONFIGURE_FLAGS): Unset in case they are exported in
493 the environment, they might improperly influence our testsuite.
494 * tests/distcheck-configure-flags.test: New test.
495 * tests/distcheck-configure-flags-am.test: Likewise.
496 * tests/distcheck-configure-flags-subpkg.test: Likewise.
497 * distcheck-hook.test: Likewise.
498 * distcheck-hook2.test: Likewise.
499 * tests/Makefile.am (TESTS): Update.
500 Closes automake bug#8784.
502 2010-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
504 docs: better documentation for silent make rules
505 * doc/automake.texi (Options): Detailed description of the
506 automake option `silent-rules' moved from here ...
507 (Silent Make): ... into this new chapter, expanded, improved,
508 and subdivided into ...
509 (Make verbosity, Tricks For Silencing Make,
510 Automake silent-rules Option): ... these new sections.
511 (@menu, @detailmenu): Update.
512 * tests/silent-configsite.test: New test, checking that the
513 user can control default mode of silent-rules from config.site,
514 as is documented in the manual.
515 * tests/Makefile.am (TESTS): Updated.
517 2011-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
519 Warnings about primary/prefix mismatch fixed and extended.
520 * automake.in (%standard_prefix): Add `doc' and `locale'.
521 Rename `pkgdatadir' to `pkgdata'. Similarly for`pkglibdir',
522 `pkgincludedir' and `pkglibexecdir'.
523 (handle_programs): List `pkglibexec', not `pkglib', among the
524 prefixes valid for the `PROGRAMS' primary.
525 (handle_data): List also `doc' among the prefixes valid for
526 the `DATA' primary. This is required by automake's own build
528 * tests/dirforbid.test: Test removed, superseded by ...
529 * tests/primary-prefix-invalid-couples.test: ... this new test.
530 * tests/primary-prefix-valid-couples.test: New test.
531 * tests/primary-prefix-couples-documented-valid.test: Likewise.
532 * tests/primary-prefix-couples-force-valid.test: Likewise.
533 * tests/java3.test: Adjusted, and extended a bit.
534 * tests/Makefile.am (TESTS): Updated.
536 From a report by Eric Blake.
538 2011-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
540 tests: check portable fd redirection in TESTS_ENVIRONMENT
541 * tests/tests-environment-fd-redirect.test: New test.
542 * tests/Makefile.am (TESTS): Update.
543 Motivated by coreutils bug#8846:
544 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8846>
545 See also following CC:ed thread on bug-autoconf list:
546 <http://lists.gnu.org/archive/html/bug-autoconf/2011-06/msg00002.html>
548 2011-06-16 Stefano Lattarini <stefano.lattarini@gmail.com>
550 tests: make test 'self-check-reexec.test' more portable
551 * tests/self-check-reexec.test: Rewrite not to require a Korn
552 Shell able to grok variable expansions such as `${.sh.version}';
553 Solaris 10 /bin/ksh fails on this for example. Instead, just
554 require bash and a shell that is not bash.
556 2011-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
557 Jim Meyering <meyering@redhat.com>
559 test defs: fix ksh-related portability bug in warning messages
560 Running "make check" normally prints a diagnostic to the outermost
561 stderr (usually a tty) to explain why a test is skipped, thus
562 giving better and faster feedback to the user. It used to do
563 so by redirecting file descriptor 9 to stderr (via "exec 9>&2")
564 before invoking the test scripts, which then would write any skip
565 explanation to file descriptor 9 via the `skip_' function defined
567 However, various Korn Shells (at least Solaris 10's /bin/ksh and
568 Debian GNU/Linux's /bin/ksh) and the HP-UX's /bin/sh close open
569 file descriptors > 2 upon an `exec' system call; thus the effects
570 of "exec 9>&2" are cancelled upon fork-and-exec, so we would get
571 a "Bad file number" diagnostic and no skip explanation with those
573 The present change remedies this situation.
574 * tests/Makefile.am (AM_TESTS_ENVIRONMENT): Redirect more portably,
575 via a trailing "9>&2", rather than the prior "exec 9>&2; ...". Add
576 explanatory comments.
577 * tests/defs (stderr_fileno_): Update the advice in comments.
578 Based on commit v8.12-82-g6b68745 "tests: accommodate HP-UX and
579 ksh-derived shells" in GNU coreutils.
580 Further references, with lots of discussion:
581 <http://lists.gnu.org/archive/html/bug-autoconf/2011-06/msg00002.html>
582 <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/22488>
583 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8846>
585 2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
587 tests: remove 'test_prefer_config_shell' from the environment
588 Since commit `v1.11-910-g7df1a9b', the once user-overridable
589 variable `$test_prefer_config_shell' has become an internal
590 detail, and the test scripts now complain and bail out if it is
591 set in the environment.
592 * tests/Makefile.am (AM_TESTS_ENVIRONMENT): Unset the variable
593 `test_prefer_config_shell' if it is set in the environment.
595 2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
597 tests: autogenerate list of wrapped tests for `lib/' shell scripts
598 * tests/gen-config-shell-tests: New script, generates distributed
599 makefile snippet `tests/config-shell-tests.am' to list all tests
600 that use the `get_shell_script' function, with names mangled to
601 use suffix `-w.shtst', in ...
602 * tests/Makefile.am (config_shell_tests): ... this macro, whose
603 definition has been consequently removed from Makefile.am.
604 (EXTRA_DIST): Distribute the new script.
605 ($(srcdir)/config-shell-tests.am): Generate using the new script.
606 (include): Include the `config-shell-tests.am' fragment.
607 * bootstrap: Invoke `tests/gen-config-shell-tests' to generate
608 `tests/config-shell-tests.am'.
609 * tests/.gitignore: Ignore `config-shell-tests.am'.
610 * tests/gen-parallel-tests: Fixlet in heading comments.
612 2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
614 tests: test mdate-sh with /bin/sh too
615 * tests/mdate5.test: Fetch the `mdate-sh' script using the
616 `get_shell_script' function, and run it directly instead of
618 * tests/mdate6.test: Likewise. Since we are at it, make checks
619 on the `mdate-sh' output stricter, remove now unneeded calls to
620 aclocal and automake and creation/extension of `configure.in',
621 `Makefile.am' and `textutils.tex' files, and add a trailing `:'
623 * tests/Makefile.am (config_shell_tests): Add `mdate5-w.shtst'
624 and `mdate6-w.shtst'.
626 2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
628 tests: extend tests on `--add-missing' and `--copy' a bit
629 * tests/add-missing.test: Fix typo in heading comments. Try with
630 another testcase that install many (but not all) the auxiliary
631 scripts at once, and uses non-standard (but valid and documented)
632 setups (e.g., defining YACC in Makefile.am instead of calling
633 AC_PROG_YACC from configure.in).
634 * tests/copy.test: Reference `add-missing.test' in heading
635 comments. Try few more test scenarios.
637 2011-06-16 Stefano Lattarini <stefano.lattarini@gmail.com>
639 tests: few fixlets and improvements
640 * tests/cond31.test ($required): Remove `cc', it's not really
642 * tests/confh.test: Call autoheader too. The lack of this call
643 wasn't causing spurious failures because the automatic remake
644 rules were somehow invoking it on our behalf (at make time).
645 * tests/fn99subdir.test: Use $subdirname throughout, instead of
646 ${subdirname}, for consistency with the rest of the testsuite.
647 Avoid an unnecessary subshell, which could also cause spurious
648 passes, being guarded by a trailing `|| Exit 1', which neutralize
649 the `errexit' flag. Remove an unnecessary `|| Exit 1' guard.
650 * tests/insh2.test: Rewrite to avoid hackish Makefile.in munging,
651 and to also run configure and make.
653 2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
655 tests: don't hard-code test name in txinfo21.test
656 * tests/txinfo21.test: Use `$me' instead of hard-coding the
657 current testcase name "txinfo21". Add a trailing `:' command
660 2011-06-10 Stefano Lattarini <stefano.lattarini@gmail.com>
662 tests: new test dedicated to `--add-missing' and `--copy'
663 * tests/add-missing.test: New test.
664 * tests/Makefile.am (TESTS): Update.
665 Suggested by Peter Rosin.
667 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
669 testsuite: use 'fatal_' and 'framework_failure_' for hard errors
670 * tests/defs (require_xsi): Use `fatal_', not `framework_failure',
671 to report an invalid usage.
672 * tests/remake-gnulib-remove-header.test: Prefer using `fatal_'
673 with a proper error message over a direct call to `Exit 99'.
674 * tests/pr8365-remake-timing.test: Likewise.
675 * tests/cygnus-imply-foreign.test: Likewise.
676 * tests/missing6.test: Likewise.
677 * tests/cond8.test: Likewise.
678 * tests/cond33.test: Likewise.
679 * tests/python-virtualenv.test: Prefer using `framework_failure_'
680 with a proper error message over a direct call to `Exit 99'.
681 * tests/instspc-tests.sh: Prefer using `framework_failure_' and
682 `fatal_' over direct calls to `Exit 99'.
683 (fatal_): Define this (which is a simplified version of the one
684 in `tests/defs') for early uses (i.e., before `tests/defs'
686 * tests/depmode-tests.sh: Likewise. Also, simplify the
687 'get_depmodes' function and calls to it accordingly.
689 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
691 self tests: check new 'fatal_' function
692 * tests/self-check-exit.test: Also check the new 'fatal_'
695 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
697 test defs: new function 'fatal_', for hard errors
698 Before this patch, the only way offered by tests/defs to
699 properly signal a hard error was the `framework_failure_'
700 function. But the error message issued by that function,
701 as its name would suggest, refers to a set-up failure in the
702 testsuite, while hard errors can obviously also be due to
703 other reasons. The best way to fix this inconsistency is to
704 introduce a new function with a more general error message.
705 Inspired by a recent similar change to Gnulib's tests/init.sh.
706 * tests/defs (fatal_): New function.
707 * tests/README (Section "Writing test cases" subsection "Do"):
708 Suggest the use of `fatal_', not of `framework_failure_', for
709 generic hard errors. The latter should be reserved for "real"
712 2011-06-07 Stefano Lattarini <stefano.lattarini@gmail.com>
714 tests: `lib/' shell scripts transparently tested also with $SHELL
715 With the previous commit, the user could prefer the use of $SHELL
716 over /bin/sh in some tests checking the Automake-provided shell
717 scripts by manually exporting `test_prefer_config_shell' to "yes"
718 in the environment. With this commit, we ensure that such tests
719 *always* and *transparently* run using both $SHELL and /bin/sh
720 to execute the checked scripts. The `test_prefer_config_shell'
721 variable becomes an internal detail, and is no more meant to be
722 manually defined or overridden.
723 * tests/defs-static.in: Check that `test_prefer_config_shell' is
724 not exported in the environment. Error out if this is the case.
725 * tests/config-shell-tests.sh: New file, driver script to run
726 checks on the shell scripts in `lib/' using the $SHELL determined
727 at configure time instead of the default system shell /bin/sh.
728 * Makefile.am (TESTS_EXTENSIONS): Add `.shtst'.
729 (SHTST_LOG_COMPILER): Define, it calls `config-shell-tests.sh'.
730 (config_shell_tests): Define to a list of tests that wraps other
731 `*.test' tests using `config-shell-tests.sh'.
732 ($(config_shell_tests)): Dummy dependency declaration required
733 in order to have make actually produce expected log files from
734 the `.shtst.log' suffix rule.
735 (EXTRA_DIST): Distribute `config-shell-tests.sh'.
736 (TESTS): Add `$(config_shell_tests)'.
737 * tests/self-check-env-sanitize.test: Update, by checking that
738 `test_prefer_config_shell' isn't exported in the environment.
740 2011-06-07 Stefano Lattarini <stefano.lattarini@gmail.com>
742 tests: can use also $SHELL to check shell scripts from `lib/'
743 * tests/ar-lib.test: If the variable `$test_prefer_config_shell'
744 is set to "yes", run the script under test with configure-time
745 determined $SHELL, rather than with /bin/sh.
746 The `$test_prefer_config_shell' variable defaults to empty, but
747 can be overridden at runtime by the user, thus allowing more
749 * tests/compile.test: Likewise.
750 * tests/compile2.test: Likewise.
751 * tests/compile3.test: Likewise.
752 * tests/compile4.test: Likewise.
753 * tests/compile5.test: Likewise.
754 * tests/compile6.test: Likewise.
755 * tests/instsh2.test: Likewise.
756 * tests/instsh3.test: Likewise.
757 * tests/mkinst3.test: Likewise.
758 * tests/missing.test: Likewise.
759 * tests/missing2.test: Likewise.
760 * tests/missing3.test: Likewise.
761 * tests/missing5.test: Likewise.
762 * tests/defs (get_shell_script): New subroutine, factoring out
763 code common to the tests above.
764 (xsi-lib-shell): If `$test_prefer_config_shell' is set to "yes",
765 check that $SHELL, not /bin/sh, supports XSI constructs, as we
766 expect the test will use $SHELL and not /bin/sh to run the
769 2011-06-07 Stefano Lattarini <stefano.lattarini@gmail.com>
771 tests defs: better requirements for XSI shells
772 This change avoids potential spurious failures with tests using
773 the requirement 'xsi-shell' to mean that they want */bin/sh* (not
774 $SHELL) to be XSI-conforming. This idiom used to work before
775 commit `v1.11-874-g1321be7' (as back then the test scripts were
776 unconditionally run with /bin/sh), but has become inconsistent
777 now that the test scripts re-execute themselves with configure
779 The described spurious failures have already occurred in practice,
780 for examples on Solaris systems which also had GNU Bash installed.
781 From a suggestion by Peter Rosin. See discussion at:
782 <http://lists.gnu.org/archive/html/automake-patches/2011-06/msg00016.html>
783 * tests/defs (xsi-shell): Now check that $SHELL, rather than the
784 shell currently running the test script, is an XSI shell.
785 (xsi-bin-sh): New requirement, checking that /bin/sh (which can
786 differ from $SHELL) is an XSI shell.
787 (xsi-lib-shell): New requirement, checking that the shell that
788 should be used to test the Automake-provided scripts from `lib/'
789 is an XSI shell. For the moment, this is just an alias for
791 (require_xsi): New subroutine, used to factor out code common to
792 the requirements above.
793 ($xsi_shell_code): New variable, contains shell code supposed to
794 work only with XSI shells. Used by the new subroutine above.
795 * tests/ar-lib.test ($required): Require 'xsi-lib-shell' instead
796 of 'xsi-shell', since the script we test here is run with /bin/sh,
798 * tests/compile3.test: Likewise.
799 * tests/compile6.test: Likewise.
801 2011-06-05 Stefano Lattarini <stefano.lattarini@gmail.com>
803 tests: fix typo-related error in auxdir2.test
804 * tests/auxdir2.test (configure.in): Close m4 quoting in the
805 argument to AC_CONFIG_AUX_DIR. Without this, aclocal fails with
806 "ERROR: end of file in string". This problem hasn't been exposed
807 by the testsuite before because this test is in XFAIL_TESTS, so
808 its failure went unnoticed, even if it was due to a wrong cause.
809 Bug introduced in commit v1.11-249-g49ac3de.
811 2011-06-05 Stefano Lattarini <stefano.lattarini@gmail.com>
813 self tests: check that `$me' can be overridden
814 * tests/self-check-me.test: Check that `$me' can be overridden
815 before sourcing ./defs, with or without sourcing ./defs-static
816 beforehand, and that this override is honored. Update heading
819 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
821 self tests: fix another spurious failure
822 Our ad-hoc usage of `tests/defs' in the testsuite's self tests
823 stopped working properly when we made the test scripts re-execute
824 themselves with the configure-time $SHELL. Fix this.
825 Fixes a regression introduced by commit 'v1.11-874-g1321be7'.
826 * tests/self-check-exit.test: Export `AM_TESTS_REEXEC' to "no"
827 before running the self tests. This fixes a spurious failure
828 present only when the test was run by hand.
830 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
832 silent-rules tests: fix spurious failures with Sun Studio C++
833 * tests/silentcxx.test: The C++ compiler from Sun Studio is named
834 `CC'. Account for this in our grepping checks on the make output.
835 Since we are at it, throw in a couple of improvements to comments
837 * tests/silent-many-generic.test: The C++ compiler from Sun Studio
838 is named `CC', and this can cause spurious failures in our grepping
839 of the make output. Work around this by using a wrapper script
840 around the C++ compiler (generated on the fly), since filtering the
841 make output proved to be too fragile.
843 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
845 tests: fix spurious failure in backcompat2.test on NetBSD
846 * tests/backcompat2.test: Add trailing `:' in the body of a `for'
847 loop, in case the last command there might have an exit status
848 different 0. This work around `set -e' issues in some BSD shells,
849 e.g., NetBSD /bin/ksh.
851 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
853 tests: fix spurious failure in autohdr3.test
854 * tests/autohder3.test (Makefile.am): Let `test' depend on `all',
855 so that config.h header is truly remade.
856 Remove now useless call to `$MAKE' when non-GNU make is in use.
857 Failure introduced by commit `v1.11-895-g5e62b96'.
859 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
861 tests: fix spurious failure of cond29.test on NetBSD
862 * tests/cond29.test: Skip if we cannot safely limit the maximal
863 size of used virtual memory to 20K. This fixes a spurious failure
865 Bug introduced in commit `v1.11-885-g908d335'.
867 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
869 maintcheck: fix again few more failures
870 * tests/cond29.test: To please the `sc_tests_Exit_not_exit'
871 maintainer check, avoid using `sh -c "exit 0"' where a simple
873 * tests/depmod-data.test: Use creative quoting to avoid
874 spuriously triggering the `sc_tests_Exit_not_exit' maintainer
877 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
879 maintcheck: fix some more failures
880 * tests/instdir-ltlib.test: Use creative quoting to avoid
881 spuriously triggering the `sc_rm_minus_f' maintainer check.
882 * tests/instdir-prog.test: Likewise.
883 * tests/instspc-data.test: Use creative quoting to avoid
884 spuriously triggering the `sc_tests_Exit_not_exit' maintainer
887 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
889 maintcheck: fix some failures, extend some checks
890 * Makefile.am (sc_diff_automake_in_automake): Update, as we
891 now expect 9 lines, not 8, to be changed from `automake.in'
893 (sc_diff_aclocal_in_aclocal): New maintainer check, similar to
894 the above, and checking that only 10 lines are changed from
895 `aclocal.in' to `aclocal'.
896 (syntax_check_rules): Update.
897 (sc_tests_Exit_not_exit): Exempt self tests `self-check-*.test'
898 from this check, as they can legitimately use the bare `exit'
899 builtin in various places.
900 * doc/automake.texi (Python): Remove stray `@' from the end of
901 a line. Typo introduced in commit `v1.11-312-g5bf7af6'.
902 * tests/depcomp8a.test: Pass DISTCHECK_CONFIGURE_FLAGS to make
903 from the environment rather than from the command line, to
904 pacify the `sc_tests_overriding_macros_on_cmdline' maintainer
906 * tests/depcomp8b.test: Likewise.
908 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
910 tests: don't require GNU make where it's not strictly needed
911 * tests/autohdr3.test: Rewrite to be stricter when make is GNU
912 make. Drop the requirement of GNU make.
913 * tests/aclocal5.test: Drop GNU make requirement, it's not truly
914 needed. Add reference to similar tests `remake-subdir*.test'.
915 * remake-subdir-gnu.test, remake-subdir-from-subdir.test,
916 remake-subdir.test, remake-subdir2.test: Add reference to
917 each other, and to related test `aclocal5.test'.
918 * tests/aclocal6.test: Drop GNU make requirement, it's not
920 * tests/confh6.test: Likewise.
921 * tests/lex3.test: Likewise.
922 * tests/remake11.test: Likewise.
923 * tests/subdir5.test: Likewise.
924 * tests/subdir8.test: Likewise.
925 * tests/werror2.test: Likewise.
926 * tests/conff.test: Likewise, and ensure verbose printing of
927 captured make output.
928 * tests/lex5.test: Tweak so that GNU make is no more required.
929 * tests/version7.test: Likewise.
930 * tests/maken2.test: Add explicative comment for why this test
932 * tests/maken4.test: Let it run also with BSD makes supporting
933 the `.MAKE' special target.
934 * tests/output6.test: Use proper m4 quoting in configure.in.
935 Expand make macros with one-character name using `$(x)', not
936 `$x', for portability. Move checks in the makefiles, rather
937 than relying on grepping the output from make. Drop the now
938 unneeded GNU make requirement.
940 2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
942 remake: behave better with non-GNU make in subdirectories
943 Currently, with every decent make program, it is possible to
944 rebuild out-of-date autotools-generated files with a simple
945 "make Makefile" -- but for this to work reliably with non-GNU
946 make implementations, the command must be issued from the
947 top-level directory. This patch removes such limitation.
948 * lib/am/configure.am (am--refresh): Depend on `%MAKEFILE%'.
949 * tests/remake-subdir.test: New test.
950 * tests/remake-subdir2.test: Likewise.
951 * tests/remake-subdir-gnu.test: Likewise.
952 * tests/remake-subdir-from-subdir.test: Likewise.
953 * tests/Makefile.am (TESTS): Update.
955 2011-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
957 lex tests: fix spurious failures with Solaris lex
958 * tests/lex-lib.test (foo.l): Avoid empty "rules section", which
959 can confuse Solaris lex.
960 * tests/lex-libobj.test (foo.l): Likewise.
962 2011-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
964 lex tests: do not force the use of flex unconditionally
965 * tests/defs (lex): Act more similarly to what the `yacc'
966 requirement does, i.e., only force the use of flex if the
967 $LEX variable is left unset by the user.
968 (flex): Use `skip_' to skip the test if flex is not found.
970 2011-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
972 lex tests: avoid possible hang; fix and extend
973 * tests/lex3.test (foo.l:yywrap): Return 1, not 0, to avoid hangs.
974 Bug introduced in commit 'v1.11-871-geb147a1'.
975 (Makefile.am): Do not add `@LEXLIB@' to `$(LDADD)', as we define
976 our own `yywrap' function.
977 * tests/lex.test (tscan.l): In `yywrap', return 1, not 0, for
978 consistency with the default flex implementation.
979 * tests/lex-libobj.test (yywrap.c): Likewise.
980 * tests/lex-subobj-nodep.test (s1.l): Likewise.
981 * tests/lexvpath.test (foo.c): Likewise.
982 * tests/silent-lex-gcc (foo.l): Likewise.
983 * tests/silent-lex-generic (foo.l): Likewise.
984 * tests/silent-many-gcc (foo5.l): Likewise.
985 * tests/silent-many-generic (foo5.l): Likewise.
986 * tests/lex-lib.test (mu.c): Likewise.
987 Update heading comments, to refer to ...
988 * tests/lex-lib-external.test: ... this new test, which checks
989 that we can get use the `yywrap' function from a system-wide
990 library, if that's available.
992 2011-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
994 tests: prefer `skip_' over `echo ...; Exit 77'
995 * tests/self-check-cleanup.test: When the test must be skipped,
996 use `skip_ REASON' instead of `echo REASON; Exit 77'. Also,
997 make the skip message shorter and clearer.
999 2011-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
1001 tests: fix spurious failures in self tests
1002 Our ad-hoc usage of `tests/defs' in the testsuite's self tests
1003 stopped working properly when we made the test scripts re-execute
1004 themselves with the configure-time $SHELL. Fix this.
1005 Fixes a bug introduced by commit 'v1.11-874-g1321be7'.
1006 * tests/defs: Only check that we can find the client test script
1007 when we must re-execute it.
1008 * tests/self-check-cleanup.test: Export `AM_TESTS_REEXEC' to "no"
1009 before running the self tests.
1010 * tests/self-check-dir.test: Likewise.
1011 * tests/self-check-explicit-skips.test: Likewise.
1012 * tests/self-check-me.test: Likewise.
1013 * tests/self-check-sanity.test: Likewise.
1014 * tests/self-check-reexec.test: New test.
1015 * tests/Makefile.am (TESTS): Update.
1017 2011-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
1019 tests: prefer ulimit over timeout in test on a memory-hogging bug
1020 * tests/cond29.test: Use 'ulimit' instead of 'timeout' to ensure
1021 that automake does not uses up too much resources. This is really
1022 and improvement because the bug tested by this script wasn't just
1023 a "it hangs" or "it runs too slow" bug, but rather a memory-hogging
1024 bug (due to combinatorial explosion when many Automake conditionals
1025 had to be handled) which could easily crash the whole system, which
1026 is unacceptable. The requirement of a proper and working 'ulimit'
1027 builtin might cause the test to be skipped on more systems, but
1028 that shouldn't be a problem since the bug isn't about a portability
1029 issue, but is rather an automake internal implementation problem.
1030 I've verified that the test as updated by this patch still passes
1031 with automake 1.8.5, automake 1.10.2, and obviously the development
1032 version of automake, and that it fails with automake 1.7.9.
1034 2011-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
1036 testsuite: avoid generating `*-p.test' tests, use a wrapper script
1037 The generated `*-p.test' tests had already become just thin layers
1038 around the corresponding test scripts. This change makes the final
1039 step, converting to the use of a generic wrapper script and thus
1040 avoiding the extra test generation (similarly to what is done for
1041 the `*.instspc' and `*.depmod' tests).
1042 * tests/parallel-tests.sh: New file, driver script to run checks
1043 the on the `parallel-tests' semantics by wrapping tests that use
1044 the generic "Simple Tests" driver.
1045 * tests/gen-parallel-tests: Update, mostly to reflect the new
1046 `.ptest' extensions used for tests in $(parallel_tests).
1047 * Makefile.am (TESTS_EXTENSIONS): Add `.ptest'.
1048 (PTEST_LOG_COMPILER): Define, it calls `parallel-tests.sh'.
1049 ($(parallel_tests)): Do not really generate `*-p.test' tests
1050 anymore; this is now just a dummy dependency declaration required
1051 in order to have make actually produce expected log files from
1052 the `.ptest.log' suffix rule.
1053 (EXTRA_DIST): Distribute `parallel-tests.sh'.
1054 (MAINTAINERCLEANFILES): Don't remove the `$(parallel_tests)', it
1055 is not necessary anymore.
1056 (generated_tests): Variable definition removed.
1057 (TESTS): Update, by listing `$(parallel_tests)' directly instead
1058 of `$(generated_tests)'
1059 (expected_list_of_tests): Remove `$(generated_tests)'.
1060 (maintainer-check-list-of-tests): No need to explicitly depend on
1061 `$(expected_list_of_tests)' anymore.
1063 2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
1065 automake, aclocal: honour configure-time AUTOCONF and AUTOM4TE
1066 Currently, the Automake's own configure script allow definition
1067 of AUTOCONF and AUTOM4TE, expected to point respectively to an
1068 autoconf and autom4te programs. But while these definitions are
1069 honoured in the Automake's build systems and test suite, they
1070 were *not* honoured in the generated `automake' and `aclocal'
1071 scripts. This behaviour, apart from being wrong in that it does
1072 not allow the user enough freedom in choosing his tools, also
1073 caused inconsistencies in the test suite, brining to spurious
1075 Problem reported by Graham Reitz on the automake list; see thread:
1076 <http://lists.gnu.org/archive/html/automake/2011-05/msg00022.html>
1077 * automake.in ($traces): Use `@am_AUTOCONF', not simply `autoconf'.
1078 * aclocal.in ($traces): Use `@am_AUTOM4TE', not simply `autom4te'.
1079 * Makefile.am (do_subst): Substitute also `@am_AUTOCONF' and
1084 2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
1086 build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too
1087 Our build system allows the user to override AUTOCONF and AUTOHEADER
1088 at configure time, and honours these overrides in our testsuite.
1089 But it didn't do the same with AUTOM4TE, AUTORECONF and AUTOUPDATE.
1090 This change fixes that inconsistency.
1091 * configure.ac (am_AUTOM4TE, am_AUTOUPDATE, am_AUTORECONF): New
1092 AC_SUBSTitutions. Update comments.
1093 * tests/defs.in ($AUTOUPDATE): Default to `@am_AUTOUPDATE@' now.
1094 ($AUTOM4TE): New variable, defaulting to `@am_AUTOM4TE@'.
1095 ($AUTORECONF): New variable, defaulting to `@am_AUTORECONF@'.
1096 * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Update.
1098 2011-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
1100 parallel-tests: stricter checks on DISABLE_HARD_ERRORS support
1101 * tests/parallel-tests-harderror.test: New test, doing more
1102 in-depth checks on DISABLE_HARD_ERRORS.
1103 * tests/parallel-tests.test: Remove tests on DISABLE_HARD_ERRORS,
1105 * tests/Makefile.am (TESTS): Update.
1107 2011-05-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1108 Stefano Lattarini <stefano.lattarini@gmail.com>
1110 tests/README: fix example about `make -e' usage
1111 * tests/README (Section "Writing test cases" subsection "Do"): When
1112 some variable is never initialized in the Makefile, `-e' is not
1113 necessary in order to override it. DESTDIR is such a variable: we
1114 ensure that we do not ever initialize it. And as such, it is quite
1116 $ make DESTDIR=/foo/bar install
1117 and in fact, quite widely used.
1118 So our example about when `make -e' is required, which references
1119 the `DESTDIR' variable, is poorly chosen, if not downright wrong.
1120 Rewrite it to use `prefix' as the overridden variable instead.
1122 2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
1124 tests: don't require gfortran if any fortran compiler is enough
1125 * tests/silentf90.test ($required): Require `fortran', not
1127 * tests/silentf77.test ($required): Require `fortran77', not
1129 * tests/silent-many-generic.test ($required): Require `fortran'
1130 and `fortran77' rather than `gfortran'.
1132 2011-05-27 Stefano Lattarini <stefano.lattarini@gmail.com>
1134 tests: improve `ccnoco*.test', better cross-compiling support
1135 * tests/ccnoco3.test (Mycomp): Use the `$CC' chosen by `tests/defs'
1136 instead of forcing `gcc' unconditionally. This ensures better
1137 coverage in case of cross-compiling, when GCC can be named e.g.,
1138 `i586-mingw32msvc-gcc', instead of simply `gcc'.
1139 * tests/ccnoco.test: Likewise. Remove redundant checks. Modernize
1140 the created `configure.in'. Run tests both in-tree and in VPATH.
1141 Export `CC' to the overridden value only once.
1142 * tests/ccnoco2.test: Slightly stricter grepping of automake
1143 stderr. Add trailing `:' command.
1145 2011-05-27 Stefano Lattarini <stefano.lattarini@gmail.com>
1147 testsuite: each test case depends on `defs-static'
1148 * tests/Makefile.am ($(TEST_LOGS)): Depends on `defs-static' too.
1151 2011-05-27 Stefano Lattarini <stefano.lattarini@gmail.com>
1153 testsuite: use $SHELL to run tests which are shell scripts
1154 * tests/Makefile.am (TEST_LOG_COMPILER): Define so that the
1155 configure-time $SHELL is used to run the tests.
1156 * tests/defs: Add code to re-execute by default the running
1157 test script with configure-time $SHELL. Updated comments.
1158 * configure.ac: Check that `set -e' is working for $SHELL,
1160 * tests/defs-static.in: Update comments.
1161 * tests/README (Supported shells): Updated.
1162 (Getting details from failures): Don't tell that tests are
1163 run by /bin/sh by default.
1165 2011-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
1167 tests: split 'subst2.test' to improve modularity and coverage
1168 * tests/subst2.test: Test removed, split into ...
1169 * tests/programs-primary-rewritten.test: ... this test ...
1170 * tests/subst-no-trailing-empty-line.test: ... and this one ...
1171 * tests/extra-programs-empty.test: ... and this one.
1172 * tests/Makefile.am (TESTS): Update.
1174 2011-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
1176 tests: tweak and improve tests on Automake conditionals
1177 The "avoid the requirement of a working compiler" we refer about
1178 below is obtained by disabling automatic dependency tracking and
1179 defining `CC' (and `EXEEXT', `OBJEXT', `CXX', etc., if needed) to
1180 dummy values, either directly in the `Makefile.am', or by AC_SUBST
1182 The "cosmetic changes" we refer about below consists in, e.g.,
1183 adding a trailing `:' command to a script, using proper m4 quoting
1184 in `configure.in' files, adding commands that offer more debugging
1185 output, explicitly declaring phony targets as such in Makefiles,
1186 making use of idioms more consistent with those employed in other
1187 tests, following the GNU formatting standards more closely, etc.
1188 * tests/cond.test: Cosmetic changes.
1189 * tests/cond3.test: Likewise.
1190 * tests/cond10.test: Likewise.
1191 * tests/cond14.test: Likewise.
1192 * tests/cond15.test: Likewise.
1193 * tests/cond17.test: Likewise.
1194 * tests/cond40.test: Likewise.
1195 * tests/cond13.test: Likewise, and make grepping of the generated
1196 `Makefile.in' slightly stricter.
1197 * tests/cond6.test: Extend by also running ./configure, make and
1198 "make install". Few cosmetic changes.
1199 * tests/cond8.test: Likewise.
1200 * tests/cond2.test: Do few cosmetic changes. Make grepping of
1201 automake stderr stricter.
1202 * tests/cond20.test: Likewise.
1203 * tests/cond23.test: Likewise.
1204 * tests/cond24.test: Likewise.
1205 * tests/cond42.test: Likewise.
1206 * tests/cond46.test: Likewise.
1207 * tests/cond9.test: Move more checks in the `Makefile.am' instead
1208 of grepping make's output.
1209 * tests/cond38.test: Likewise.
1210 * tests/cond11.test: Likewise. Avoid the requirement of a working
1212 * tests/cond16.test: Likewise.
1213 * tests/cond22.test: Likewise.
1214 * tests/cond30.test: Likewise.
1215 * tests/cond31.test: Likewise.
1216 * tests/cond4.test: Likewise, and drop the now-useless GNU make
1217 requirement as well.
1218 * tests/cond18.test: Likewise.
1219 * tests/cond19.test: Likewise.
1220 * tests/cond22.test: Likewise.
1221 * tests/cond25.test: Add trailing `:' command.
1222 * tests/cond26.test: Likewise.
1223 * tests/cond27.test: Likewise.
1224 * tests/cond28.test: Likewise.
1225 * tests/cond29.test: Use `unindent' function for better formatting.
1226 Other minor cosmetic changes. Use a `timeout' program (if it's
1227 available) to determine whether the script takes too long, instead
1228 of just hoping that the user will notice an abnormally long test
1230 * tests/cond33.test: Extend a bit. Fix heading comments. Few more
1232 * tests/cond37.test: Ensure verbose printing of captured make
1233 output. Minor cosmetic changes.
1234 * tests/cond34.test: Likewise. Avoid the requirement of a working
1235 C compiler. Make grepping of make output slightly stricter.
1236 * tests/cond35.test: Quote literal dots in grep regexp. Add extra
1237 debugging output. Minor cosmetic changes.
1238 * tests/cond36.test: Likewise.
1239 * tests/cond41.test: Do not simply check that aclocal fails, but
1240 also grep its stderr for the expected error message.
1241 * tests/cond43.test: Likewise (but the program being automake).
1242 Few cosmetic changes.
1243 * tests/condd.test: Avoid the requirement of a working C compiler.
1244 * tests/condman3.test: Extend by using more man pages and more
1246 * tests/condman.test: Removed, it's completely superseded by
1248 * tests/Makefile.am (TESTS): Update.
1250 2011-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
1252 lex tests: avoid spurious failures when LEXLIB isn't found
1253 The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
1254 the "lex library" expected to provide a `yywrap' function (function
1255 which is required to link most lex-generated programs). On the
1256 contrary, when all the link attempts (i.e., with `-ll' and `-lfl')
1257 fail, configure declares that no lex library is needed, and simply
1258 proceeds with the configuration process -- only for the build to
1259 possibly fail later, at make time.
1260 This behaviour might be (partly) intended; the Autoconf manual
1262 ``You are encouraged to use Flex in your sources, since it is
1263 both more pleasant to use than plain Lex and the C source
1264 it produces is portable. In order to ensure portability,
1265 however, you must either provide a function `yywrap' or, if
1266 you don't use it (e.g., your scanner has no `#include'-like
1267 feature), simply include a `%noyywrap' statement in the
1269 This AC_PROG_LEX behaviour is causing some spurious failures of the
1270 Automake testsuite in environments which lack a proper library
1271 providing `yywrap' (this happens for example in Linux->MinGW cross
1272 compilations). But at this point is clear that a proper workaround
1273 is to simply provide a fall-back implementation of `yywrap' in our
1275 * tests/cond35.test: Provide a dummy `yywrap' function.
1276 * tests/lex3.test: Likewise.
1277 * tests/lexvpath.test: Likewise.
1278 * tests/silent-many-gcc.test: Likewise.
1279 * tests/silent-many-generic.test: Likewise.
1280 * tests/silent-lex-gcc.test: Likewise, and a dummy `main' too.
1281 * tests/silent-lex-generic.test: Likewise.
1282 * tests/lex-lib.test: New test.
1283 * tests/lex-libobj.test: New test.
1284 * tests/lex-nowrap.test: New test.
1285 * tests/Makefile.am (TESTS): Update.
1287 Thanks to Russ Allbery for the suggestion.
1289 2011-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
1291 testsuite: require C++ compiler explicitly in tests needing it
1292 The list of the test scripts which needed a C++ compiler but
1293 failed to require it explicitly has been found by running:
1294 $ tests=`grep -lE 'CXX|\.c(c|\+\+|xx|pp)' *.test | tr '\n' ' '`
1295 $ am_explicit_skips=yes CXX=false make check TESTS="$tests"
1296 and looking for tests that reported FAIL instead of SKIP.
1297 After the present change, all those previously failing tests
1298 either pass or get correctly skipped.
1299 * tests/subobj9.test: Require `c++', instead of explicitly
1300 skipping on configure failure. Add excerpts and/or details from
1301 the original bug report that prompted this tests to be written.
1302 * tests/silentcxx-gcc.test: Require g++.
1303 * tests/silentcxx.test: Require c++.
1304 * tests/suffix3.test: Likewise.
1306 2011-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
1308 testsuite: don't require g++ where any C++ compiler is enough
1309 * tests/specflg10.test ($required): Use `c++', not g++.
1310 * tests/silent-many-generic.test: Likewise.
1312 2011-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
1314 testsuite: require C compiler explicitly in tests needing it
1315 The list of the test scripts which needed a C compiler but
1316 failed to require it explicitly has been found by running:
1317 $ am_explicit_skips=yes CC=false make check
1318 and looking for tests that reported FAIL instead of SKIP.
1319 After the present change, all those previously failing tests
1320 either pass or get correctly skipped.
1321 * tests/aclocal4.test ($required): Add `cc'.
1322 * tests/ansi.test: Likewise.
1323 * tests/ansi10.test: Likewise.
1324 * tests/ansi3.test: Likewise.
1325 * tests/ansi3b.test: Likewise.
1326 * tests/ansi5.test: Likewise.
1327 * tests/ansi6.test: Likewise.
1328 * tests/ansi7.test: Likewise.
1329 * tests/ansi9.test: Likewise.
1330 * tests/backcompat6.test: Likewise.
1331 * tests/canon7.test: Likewise.
1332 * tests/check5.test: Likewise.
1333 * tests/check7.test: Likewise.
1334 * tests/check8.test: Likewise.
1335 * tests/cond4.test: Likewise.
1336 * tests/cond11.test: Likewise.
1337 * tests/cond16.test: Likewise.
1338 * tests/cond18.test: Likewise.
1339 * tests/cond19.test: Likewise.
1340 * tests/cond22.test: Likewise.
1341 * tests/cond30.test: Likewise.
1342 * tests/cond31.test: Likewise.
1343 * tests/cond32.test: Likewise.
1344 * tests/cond34.test: Likewise.
1345 * tests/cond35.test: Likewise.
1346 * tests/cond39.test: Likewise.
1347 * tests/condd.test: Likewise.
1348 * tests/cygnus-dependency-tracking.test: Likewise.
1349 * tests/depcomp2.test: Likewise.
1350 * tests/depcomp6.test: Likewise.
1351 * tests/depcomp7.test: Likewise.
1352 * tests/depcomp8a.test: Likewise.
1353 * tests/depcomp8b.test: Likewise.
1354 * tests/depdist.test: Likewise.
1355 * tests/depend2.test: Likewise.
1356 * tests/depend5.test: Likewise.
1357 * tests/distcleancheck.test: Likewise.
1358 * tests/distname.test: Likewise.
1359 * tests/exeext.test: Likewise.
1360 * tests/exeext4.test: Likewise.
1361 * tests/extradep.test: Likewise.
1362 * tests/extradep2.test: Likewise.
1363 * tests/gnits2.test: Likewise.
1364 * tests/gnits3.test: Likewise.
1365 * tests/instdir-ltlib.test: Likewise.
1366 * tests/instdir-prog.test: Likewise.
1367 * tests/instfail.test: Likewise.
1368 * tests/instfail-libtool.test: Likewise.
1369 * tests/lex3.test: Likewise.
1370 * tests/lex5.test: Likewise.
1371 * tests/lexvpath.test: Likewise.
1372 * tests/lex-subobj-nodep.test: Likewise.
1373 * tests/lflags.test: Likewise.
1374 * tests/libobj-basic.test: Likewise.
1375 * tests/libobj2.test: Likewise.
1376 * tests/libobj7.test: Likewise.
1377 * tests/libobj10.test: Likewise.
1378 * tests/libobj16a.test: Likewise.
1379 * tests/libobj16b.test: Likewise.
1380 * tests/libobj17.test: Likewise.
1381 * tests/libobj19.test: Likewise.
1382 * tests/libtool2.test: Likewise.
1383 * tests/libtool3.test: Likewise.
1384 * tests/libtool7.test: Likewise.
1385 * tests/libtool9.test: Likewise.
1386 * tests/libtoo10.test: Likewise.
1387 * tests/libtoo11.test: Likewise.
1388 * tests/ltcond.test: Likewise.
1389 * tests/ltcond2.test: Likewise.
1390 * tests/ltconv.test: Likewise.
1391 * tests/ltinit.test: Likewise.
1392 * tests/ltlibsrc.test: Likewise.
1393 * tests/ltorder.test: Likewise.
1394 * tests/nobase.test: Likewise.
1395 * tests/nobase-libtool.test: Likewise.
1396 * tests/mmodely.test: Likewise.
1397 * tests/parallel-tests5.test: Likewise.
1398 * tests/parallel-tests-suffix-prog.test: Likewise.
1399 * tests/parallel-tests-ext-driver-prog.test: Likewise.
1400 * tests/posixsubst-ldadd.test: Likewise.
1401 * tests/posixsubst-libraries.test: Likewise.
1402 * tests/posixsubst-ltlibraries.test: Likewise.
1403 * tests/posixsubst-programs.test: Likewise.
1404 * tests/posixsubst-sources.test: Likewise.
1405 * tests/pr87.test: Likewise.
1406 * tests/pr204.test: Likewise.
1407 * tests/pr224.test: Likewise.
1408 * tests/pr300-lib.test: Likewise.
1409 * tests/pr300-ltlib.test: Likewise.
1410 * tests/pr300-prog.test: Likewise.
1411 * tests/pr401.test: Likewise.
1412 * tests/pr401b.test: Likewise.
1413 * tests/pr401c.test: Likewise.
1414 * tests/remake-gnulib-add-acsubst.test: Likewise.
1415 * tests/remake-gnulib-add-header.test: Likewise.
1416 * tests/regex.test: Likewise.
1417 * tests/repeated-options.test: Likewise.
1418 * tests/silent.test: Likewise.
1419 * tests/silent3.test: Likewise.
1420 * tests/silent9.test: Likewise.
1421 * tests/silent-lex-generic.test: Likewise.
1422 * tests/silent-many-generic.test: Likewise.
1423 * tests/silent-yacc-generic.test: Likewise.
1424 * tests/specflg7.test: Likewise.
1425 * tests/specflg9.test: Likewise.
1426 * tests/specflg10.test: Likewise.
1427 * tests/stdinc.test: Likewise.
1428 * tests/strip.test: Likewise.
1429 * tests/strip2.test: Likewise.
1430 * tests/strip3.test: Likewise.
1431 * tests/subdirbuiltsources.test: Likewise.
1432 * tests/subobj3.test: Likewise.
1433 * tests/subobj6.test: Likewise.
1434 * tests/subobj11a.test: Likewise.
1435 * tests/subpkg.test: Likewise.
1436 * tests/subst2.test: Likewise.
1437 * tests/subst3.test: Likewise.
1438 * tests/substref.test: Likewise.
1439 * tests/substre2.test: Likewise.
1440 * tests/suffix5.test: Likewise.
1441 * tests/suffix8.test: Likewise.
1442 * tests/suffix10.test: Likewise.
1443 * tests/suffix11.test: Likewise.
1444 * tests/suffix12.test: Likewise.
1445 * tests/suffix13.test: Likewise.
1446 * tests/target-cflags.test: Likewise.
1447 * tests/transform.test: Likewise.
1448 * tests/transform2.test: Likewise.
1449 * tests/yacc-basic.test: Likewise.
1450 * tests/yacc-d-basic.test: Likewise.
1451 * tests/yacc-clean.test: Likewise.
1452 * tests/yacc-dist-nobuild.test: Likewise.
1453 * tests/yacc-nodist.test: Likewise.
1454 * tests/yaccvpath.test: Likewise.
1455 * tests/yacc-d-vpath.test: Likewise.
1456 * tests/yacc4.test: Likewise.
1457 * tests/yacc7.test: Likewise.
1458 * tests/yacc8.test: Likewise.
1459 * tests/yaccdry.test: Likewise.
1460 * tests/yflags-cmdline-override.test: Likewise.
1461 * tests/yflags-force-override.test: Likewise.
1462 * tests/python-virtualenv.test: Likewise. Also, improve skip
1464 * tests/subobj5.test ($required): Add `cc'.
1465 (Makefile.am): Set `AUTOMAKE_OPTIONS' to `subdir-objects', and
1466 add new checking rules `test-build' and `test-distdir'.
1467 Extend the test by building and examining the distdir, the
1468 program, and the object files.
1469 * tests/postproc.test ($required): Add `cc'.
1470 Avoid the explicit `|| Exit $?' after call to configure, which
1471 is now either redundant (e.g., when `am_explicit_skips' is
1472 unset), or counter-productive (e.g., when `am_explicit_skips'
1474 * tests/pr243.test: Likewise.
1475 * tests/pr266.test: Likewise.
1476 * tests/pr220.test: Simplify so that it doesn't require a
1478 * tests/subdir5.test: Likewise.
1479 * tests/subdir8.test: Likewise.
1480 * tests/lflags.test: Likewise.
1481 * tests/yflags.test: Likewise.
1482 * tests/yflags-force-conditional.test: Likewise.
1483 * tests/lflags2.test: Simplify so that it doesn't require a
1484 C++ compiler anymore.
1485 * tests/yflags2.test: Likewise.
1486 * tests/autohdrdry.test (configure.in): Remove unneeded call
1488 * tests/pr287.test: Likewise.
1489 * tests/check6.test: Likewise.
1490 * tests/cond21.test: Likewise, plus some cosmetic adjustments.
1491 * tests/upc.test: Skip if configure fails with status `77'.
1492 * tests/upc3.test: Likewise.
1493 * tests/vala4.test: Likewise.
1494 * tests/nostdinc.test: Likewise. Also, make grepping checks
1495 on `Makefile.in'. Update heading comments.
1496 * tests/compile5.test: When we must skip, skip explicitly,
1497 and with a meaningful message.
1498 * tests/instspc-tests.sh: When running in "test-build" or
1499 "test-install" mode (as determined by the value of variable
1500 `$instspc_action'), require `cc'. Adjust comments.
1501 * tests/depmod-tests.sh: Likewise.
1503 2011-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
1505 testsuite: allow user to ask for stricter skip semantics
1506 Given how the Automake testsuite is currently structured, if a
1507 command in a test script fails with status `77', the global test
1508 outcome is considered a SKIP, because the value of `77' for `$?'
1509 is passed to the exit trap. Indeed, this happens in practice, as
1510 an autoconf-generated configure script can exit with status `77'
1511 if it fails to find, e.g., a required compiler.
1512 While this behaviour is quite useful for avoiding spurious test
1513 failures in the wild, it can also sometimes prevent the Automake
1514 developers to easily see and declare the requirements of their
1516 This change introduces a new variable `am_explicit_skips', meant to
1517 be user-overridable, and which, when set to a "true" value (i.e.,
1518 `yes' or `1'), require a direct call to `Exit 77' in order to make
1519 the test outcome be considered a SKIP.
1520 * tests/defs.in ($am__test_skipped): New variable, initialized
1522 (Exit): Set `$am__test_skipped' to `yes' if passed an exit status
1524 (trap '...' 0): When `$am_explicit_skips' is set to a "true" value,
1525 reset an exit status of `77' to `78' if $am__test_skipped is not
1527 * tests/self-check-exit.test: Adjust: unset `am_explicit_skips'.
1528 * tests/self-check-explicit-skips.test: New test.
1529 * tests/Makefile.am (TESTS): Update.
1531 2011-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
1533 testsuite: user can force skipping of compiler-requiring tests
1534 * tests/defs (cc, c++, fortran, fortran77): Skip the test if
1535 the relevant compiler is disabled by having the corresponding
1536 variable (CC, CXX, FC and F77, respectively) set to "false".
1537 (yacc): For consistency, skip the test when the YACC variable
1538 is set to "false", not when it's set to "no". Since we are at
1539 it, fix the skip message to be shorter and more consistent.
1541 2011-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1543 tests: tweak and improve tests on "Simple Tests" driver
1544 * tests/check.test: Make grepping of generated Makefile.in
1545 slightly stricter. Add trailing `:' command.
1546 * tests/check2.test: Ensure verbose printing of captured make
1547 output. Make grepping of generated Makefile.in and of make
1548 output stricter. Add trailing `:' command.
1549 * tests/check3.test: Likewise. Also, fix minor error in a
1551 * tests/check4.test: Stricter grepping of make output. Use
1552 `using_gmake' subroutine instead of copy&paste from defs.in
1553 to determine whether $MAKE is GNU make. Add a trailing `:'
1555 * tests/check6.test: Add trailing `:' command.
1556 * tests/check10.test: Prefer redirection `>' over `>>' when
1557 creating new files. Ensure verbose printing of captured make
1559 * tests/check11.test: Likewise.
1560 * tests/check7.test: Likewise. Make grepping of make output
1561 stricter. Prefer "make distcheck" over a simple "make check"
1562 in a VPATH build. Add trailing `:' command.
1563 (a.c): Format following GNU coding standards.
1564 (Makefile.am): Explicitly declare target `print-xfail-tests'
1565 as PHONY. Distribute $(check_SCRIPTS), for distcheck.
1566 * tests/parallel-tests.test: Prefer redirection `>' over `>>'
1567 when creating new files.
1568 * tests/parallel-tests2.test: Likewise.
1569 * tests/parallel-tests9.test: Likewise.
1570 * tests/parallel-tests8.test: Likewise. Make grepping of
1571 automake stderr stricter.
1572 * tests/check8.test: Likewise. Make formatting of created
1573 *.c files more consistent with GNU Coding Standards.
1574 * tests/check-subst-prog.test (configure.in): Break overly
1576 (pass-prog.c, xfail-prog.c): Format them more consistently
1577 with GNU Coding Standards.
1578 * tests/parallel-tests3.test: Use a shorter and clearer skip
1579 message. Use the `unindent' subroutine to improve readability
1580 of indented loop bodies. Simplify the hack used to please
1582 * tests/parallel-tests5.test: Make formatting of created *.c
1583 files more consistent with GNU Coding Standards. Use the
1584 `unindent' subroutine to improve readability of indented loop
1586 * tests/parallel-tests10.test: Add blank line, for clarity.
1587 Prefer trailing `:' over trailing `Exit 0', for consistency
1590 2011-05-21 Stefano Lattarini <stefano.lattarini@gmail.com>
1592 tests/README: small consistency improvement
1593 * tests/README (Section "User interface" subsection "Running the
1594 tests"): In examples, be more consistent w.r.t. the differences
1595 between GNU and non-GNU make.
1597 2011-05-21 Stefano Lattarini <stefano.lattarini@gmail.com>
1599 tests/README: suggest how to run tests in cross-compile mode
1600 * tests/README (Section "User interface" subsection "Running the
1601 tests"): Briefly explain how to override 'host_alias' at runtime
1602 to force the use of cross-compilers by the testsuite. Give an
1605 2011-05-21 Stefano Lattarini <stefano.lattarini@gmail.com>
1607 test defs: better detection of cross-compile mode
1608 * configure.ac (AC_CANONICAL_HOST): New, probably not strictly
1609 necessary, but useful to complements AC_CANONICAL_BUILD.
1610 * tests/defs-static.in ($host_alias, $build_alias): New variables,
1611 exported, user-overridable, defaults AC_SUBST'd by configure.
1612 * tests/defs (cross_compiling): Consider cross-compilation mode
1613 active only if `$host_alias' is not empty *and* it differs from
1614 `$build_alias'. This is more faithful to the way configure
1615 determines whether it is cross-compiling, but still allows the
1616 user to easily force cross-compilation by overriding `host_alias'
1617 and `build_alias' at runtime.
1618 From a report by Ralf Wildenhues.
1620 2011-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
1622 testsuite: avoid re-running few tests with 'parallel-tests' option
1623 Some tests in our testsuite use the 'simple-tests' driver only
1624 marginally, or simply as a mean to conveniently check unrelated
1625 invariants. It makes little sense to force these tests to also
1626 run with the 'parallel-tests' Automake option active, as doing so
1627 offers no real gain in coverage, while often causing a measurable
1628 overhead in execution time (for an already too-slow testsuite).
1629 * tests/pr401.test (parallel_tests): Define to "no", to prevent
1630 the generation of a sibling test script using the 'parallel-tests'
1632 * tests/pr401b.test: Likewise.
1633 * tests/pr401c.test: Likewise.
1635 2011-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
1637 testsuite: allow tests to avoid the use of 'parallel-tests' option
1638 * tests/gen-parallel-tests: Do not generate "siblings" for tests
1639 that explicitly define the `parallel_tests', whether to "yes" or
1640 to any other value. Extend heading comments to give a rationale
1642 * tests/README: Update.
1644 2011-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
1646 tests/README: update obsoleted advice
1647 * tests/README (Section "Writing test cases" subsection "Do"):
1648 Do not suggest to use the `*-p.test' pattern for the names of
1649 hand-written tests which use the `parallel-tests' Automake option.
1650 Not only is this not respected by the existing tests, but it is
1651 more likely to cause conflicts with auto-generated tests.
1652 So, suggest to *avoid* using the `*-p.test' pattern in names
1653 of hand-written tests instead.
1654 (Section "Writing test cases" subsection "Do not"): When
1655 suggesting not to override Makefile variables using command
1656 line arguments, do not use the badly outdated variables `U'
1657 and 'ANSI2KNR' in the example; instead, use the more common
1658 and typical `DESTDIR'.
1660 2011-05-18 Stefano Lattarini <stefano.lattarini@gmail.com>
1662 tests: avoid spurious failures in cross-compile mode
1663 * tests/depcomp2.test: Ensure verbose printing of captured stderr
1665 * tests/ansi3.test ($required): Add 'native', as the ansi2knr
1666 functionality is not meant to work with a cross-compiler.
1667 * tests/ansi3b.test: Likewise.
1668 * tests/ansi5.test: Likewise.
1669 * tests/ansi6.test: Likewise.
1670 * tests/ansi7.test: Likewise.
1671 * tests/ansi8.test: Likewise.
1672 * tests/ansi10.test: Likewise.
1673 * tests/subobj3.test: Likewise.
1674 * tests/check8.test ($required): Add 'native', as this test is
1675 not meant to work with a cross-compiler.
1676 * tests/gnits2.test: Likewise.
1677 * tests/ltconv.test: Likewise.
1678 * tests/ltcond2.test: Likewise.
1679 * tests/parallel-tests5.test: Likewise.
1680 * tests/specflg7.test: Likewise.
1681 * tests/specflg8.test: Likewise.
1682 * tests/check5.test: Likewise. Also, ensure verbose printing of
1683 captured make output, and thrown in few cosmetic and consistency
1685 * tests/ltinit.test: Be laxer in grepping configure output, to
1686 avoid spurious failures on systems which lack POSIX dynamic
1687 linking (e.g., MinGW), or when cross-compiling for such systems.
1688 * tests/ansi9.test: Skip parts of the test that would require a
1690 * tests/backcompat6.test: Likewise.
1691 * tests/depcomp8a.test: Likewise.
1692 * tests/pr401.test: Likewise.
1693 * tests/pr401b.test: Likewise.
1694 * tests/pr401c.test: Likewise.
1695 * tests/target-cflags.test: Likewise.
1696 * tests/lex3.test: Likewise.
1697 * tests/yacc-basic.test: Likewise.
1698 * tests/autohdr4.test: Likewise. Also, extend the test to ensure
1699 more coverage in cross-compile mode.
1700 * tests/canon7.test: Likewise.
1701 * tests/check9.test: Removed, split into two new tests ...
1702 * tests/check-subst-prog.test: ... this one, which requires a
1703 native C compiler ...
1704 * tests/check-subst.test: ... and this one, which doesn't require
1706 * tests/parallel-tests4.test: Removed, split into two new tests ...
1707 * tests/parallel-tests-suffix-prog.test: ... this one, which
1708 requires a native C compiler ...
1709 * tests/parallel-tests-suffix.test: ... and this one, which
1710 doesn't require any compiler.
1711 * tests/parallel-tests7.test: Removed, split into two new tests ...
1712 * tests/parallel-tests-ext-driver-prog.test: ... this one, which
1713 requires a native C compiler ...
1714 * tests/parallel-tests-ext-driver.test: ... and this one, which
1715 doesn't require any compiler.
1716 * tests/Makefile.am (TESTS): Update.
1718 2011-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
1720 test defs: rename requirement 'non-cross' -> 'native'
1721 * tests/defs.in (non-cross): Rename requirement ...
1722 (native): ... to this, which is clearer and fits the
1723 existing lingo better.
1724 Suggestion by Ralf Wildenhues.
1726 2011-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
1728 testsuite: be more cross-compile friendly
1729 * tests/defs.in (cross_compiling): New subroutine.
1730 (am__tool_prefix): New internal variable.
1731 (gcc, g++, gcj): Force the use of the correct "tool prefix"
1732 when cross compiling.
1733 (gfortran, g77, non-cross): New requirements.
1735 2011-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
1737 tests: fix portability issues in 'repeated-options.test'
1738 * tests/repeated-options.test: Do not assume that object files
1739 have `.o' suffix and executables have no default suffix; instead,
1740 use `$(OBJEXT)' and `$(EXEEXT)'.
1742 2011-05-11 Stefano Lattarini <stefano.lattarini@gmail.com>
1744 check: document and test $(TEST_SUITE_LOG) overriding
1745 * doc/automake.texi (Simple Tests using parallel-tests): Explain
1746 how and why TEST_SUITE_LOG can be overridden at runtime.
1747 * tests/parallel-tests-log-override-1.test: New test, check that
1748 the newly documented idiom and similar usages are truly supported.
1749 * tests/parallel-tests-log-override-2.test: Likewise.
1750 * tests/parallel-tests-log-override-recheck.test: Likewise.
1751 * tests/Makefile.am (TESTS): Update.
1753 2011-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
1755 tests: fix spurious failure of extradep.test on FreeBSD
1756 * tests/extradep.test: When using `ls -t' to determine whether a
1757 file has been updated, make sure to use as reference a file whose
1758 timestamp is expected to be *strictly* older that that of the file
1759 being checked. This is required because at least FreeBSD `ls' do
1760 not sort files with the same timestamp in alphabetical order when
1761 using the `-t' option.
1762 * tests/extradep2.test: Likewise.
1764 2011-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
1766 tests: fix spurious failure of txinfo21.test on FreeBSD
1767 * tests/txinfo21.test: Use the `is_newest' subroutine instead of
1768 the `ls -t' hack to to determine whether a file has been updated.
1769 This is required because at least FreeBSD `ls' do not sort files
1770 with the same timestamp in alphabetical order when using the `-t'
1773 2011-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
1775 tests: fix syntax error in 'silentcxx-gcc.test'
1776 * tests/silentcxx-gcc.test (for config_args in ...): Remove extra
1777 trailing backslash from the list of looped-on items.
1779 2011-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
1781 depmod tests: fix bug in depmodes list extraction
1782 * tests/depmod-tests.sh (get_depmodes): Use `echo $all_depmodes'
1783 instead of `... | tr "$nl" "$sp"' to strip extra whitespaces and
1784 newlines from `$all_depmodes'. The latter idiom with `tr' is
1785 wrong since it gets run before `./defs' is sourced, and thus `$nl'
1786 and `$sp' are undefined.
1787 Bug revealad by FreeBSD tr(1) implementation, which doesn't accept
1788 empty strings as arguments.
1790 2011-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1792 tests: add excerpts from few original bug reports, for clarity.
1793 * tests/comment6.test: Add excerpts and/or details from the
1794 original bug report that prompted this tests to be added and/or
1796 * tests/dejagnu4.test: Likewise.
1797 * tests/installdir.test: Likewise.
1799 2011-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1801 tests defs: allow requirements for compilers (mostly dummy)
1802 Most of the new requirements that are now accepted in `$required'
1803 as consequence of this patch are still dummy. They are planned
1804 to be implemented only in master (or in some derived branch), but
1805 having them here (even just as no-op) will allow for an easier
1806 integration/backporting of potential new testcases.
1807 * tests/defs.in (cc, c++, fortran, fortran77): New requirements,
1809 (flex): New requirement, picking LEX for configure.
1810 (lex): New requirement, alias for `flex'. A more appropriate
1811 implementation, looking for a generic `lex' program, will follow
1814 2011-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1816 tests: 'silent-many-gcc.test' improved and made more robust
1817 * tests/silent-many-gcc.test: Also force "fast" gcc depmode
1818 for C++ compilations. Add sanity checks verifying that the
1819 cache variables we force are really used by configure. Fix
1822 2011-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1824 tests: drop useless requirements of 'g++'
1825 * tests/lflags2.test ($required): Remove 'g++', as any working
1826 C++ compiler should be enough, and ./configure will cause the
1827 test to skip if no working C++ compiler is found.
1828 * tests/yflags2.test: Likewise.
1829 * tests/subobj9.test: Likewise.
1830 * tests/silentcxx.test: Likewise. Also, do not force depmodes
1831 that could cause non-GNU C++ compilers to fail.
1832 * tests/silentcxx-gcc.test: New test, like `silentcxx.test',
1833 but forcing "fast" gcc depmode (and thus requiring the GNU C++
1835 * tests/specflg10.test: Add proper "fixme" comment telling that
1836 we should make this test work with a generic C++ compiler.
1837 * tests/Makefile.am (TESTS): Update.
1839 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1841 tests defs: one more environment sanitization (corner case)
1842 * tests/defs (am__using_gmake): Initialize. The `using_gmake'
1843 subroutine was using this variable for caching, but wasn't
1844 initializing it, which could cause problems in the (admittedly
1845 very unlikely) case in which it was pre-existent in the
1848 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1850 tests: add forgotten test scripts to $(TESTS)
1851 * tests/Makefile.am (TESTS): Added test scripts man[678].test,
1852 which have been present on the filesystem and in the repository,
1853 but which had erroneously been left out from $(TESTS).
1855 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1857 tests: ensure verbose printing of captured make output
1858 * tests/libtool7.test: Ensure verbose printing of captured
1860 * tests/libtool9.test: Likewise.
1862 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1864 maintcheck: consistency of list of test scripts
1865 * CheckListOfTests.am: New file.
1866 (maintainer-check-list-of-tests): New target,
1867 check for consistency between list of tests defined in the
1868 including Makefile and list of tests on the filesystem.
1869 (clean-maintcheck-testslist-tmp): New rule, to clean up the
1870 temporary files that might be left around by the rules associated
1871 with the previous target.
1872 (clean-local): Depend on it.
1873 * lib/Automake/tests/Makefile.am: Include `CheckListOfTests.am'.
1874 (maintainer-check): Added dependency from the new target
1875 `maintainer-check-list-of-tests'.
1876 * tests/Makefile.am: Likewise. Also ...
1877 (checked_test_extensions): Define to `.test'.
1878 (expected_test_list): Define properly.
1879 * Makefile.am (maintainer-check-list-of-test): New target,
1880 calling recursively into `tests/' and `lib/Automake/tests/',
1882 (TEST_SUBDIRS): ... this new variable.
1884 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1886 tests: drop useless requirements of gcc (plus testsuite tweakings)
1887 * tests/libobj14.test ($required): Remove 'gcc', as we never run
1889 * tests/targetclash.test: Likewise.
1890 * tests/ansi6.test ($required): Remove 'gcc', as any working
1891 C compiler should be enough.
1892 * tests/ansi7.test: Likewise.
1893 * tests/ansi9.test: Likewise.
1894 * tests/ansi10.test: Likewise.
1895 * tests/lex5.test: Likewise.
1896 * tests/lexvpath.test: Likewise.
1897 * tests/mmodely.test: Likewise.
1898 * tests/pr204.test: Likewise.
1899 * tests/pr300-lib.test: Likewise.
1900 * tests/pr300-prog.test: Likewise.
1901 * tests/primary3.test: Likewise.
1902 * tests/specflg7.test: Likewise.
1903 * tests/specflg8.test: Likewise.
1904 * tests/subdir5.test: Likewise.
1905 * tests/subdir8.test: Likewise.
1906 * tests/subobj6.test: Likewise.
1907 * tests/subst3.test: Likewise.
1908 * tests/substre2.test: Likewise.
1909 * tests/yacc6.test: Likewise.
1910 * tests/yacc8.test: Likewise.
1911 * tests/depcomp2.test: Likewise. Also, avoid clobbering user-set
1913 * tests/lex3.test: Likewise.
1914 * tests/ansi3.test: Likewise. Also, avoid 'CC=gcc' in configure.
1915 * tests/ansi3b.test: Likewise.
1916 * tests/ansi5.test: Likewise.
1917 * tests/autohdr4.test ($required): Remove 'gcc', as any working
1918 C compiler should be enough.
1919 Also, do not reject slow dependency extractors (which we might
1920 be forced to use now that $CC is not necessarily gcc anymore).
1921 * tests/cond16.test ($required): Remove 'gcc', as any working
1922 C compiler should be enough.
1923 Since we are at it, throw in few minor tweakings (mostly cosmetic,
1924 stylistic, or consistency-related).
1925 * tests/cond18.test: Likewise.
1926 * tests/cond35.test: Likewise.
1927 * tests/gnits2.test: Likewise.
1928 * tests/libtool3.test: Likewise.
1929 * tests/libtool7.test: Likewise.
1930 * tests/libtool9.test: Likewise.
1931 * tests/ltcond.test: Likewise.
1932 * tests/ltcond2.test: Likewise.
1933 * tests/ltconv.test: Likewise.
1934 * tests/ltlibsrc.test: Likewise.
1935 * tests/nobase.test: Likewise.
1936 * tests/nobase-libtool.test: Likewise.
1937 * tests/pr220.test: Likewise.
1938 * tests/pr224.test: Likewise.
1939 * tests/pr300-ltlib.test: Likewise.
1940 * tests/pr401.test: Likewise.
1941 * tests/pr401b.test: Likewise.
1942 * tests/pr401c.test: Likewise.
1943 * tests/subpkg.test: Likewise.
1944 * tests/target-cflags.test: Likewise.
1945 * tests/transform.test: Likewise.
1946 * tests/yacc4.test: Likewise.
1947 * tests/cond19.test: Likewise. Also, avoid clobbering user-set
1949 * tests/cond4.test: Likewise.
1950 * tests/depend2.test: Likewise.
1951 * tests/pr87.test: Likewise.
1952 * tests/subobj3.test: Likewise.
1953 * tests/substref.test: Likewise.
1955 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1957 test defs: increase coverage w.r.t. GNU make
1958 * tests/defs (GNUmake): Instead of just skipping the tests
1959 requiring GNU make if $MAKE is not GNU make, try to look for
1960 it and, if found, redefine $MAKE accordingly. This will help
1961 to transparently increase coverage on non-GNU systems which
1962 have GNU make available in PATH.
1964 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1966 tests: improve few inter-tests references
1967 * tests/acloca22.test: Improve and extend the heading comments.
1968 Add reference to related tests 'remake-deleted-m4-file.test' and
1969 'remake-renamed-m4-macro-and-file.test'. Since we are at it,
1970 add trailing `:' command, and few blank lines for readability.
1971 * tests/remake-renamed-m4-macro-and-file.test: In the heading
1972 comments, add reference to the related test 'acloca22.test'.
1974 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1976 tests: fix spurious failure in 'color2.test'
1977 * tests/color2.test: If $MAKE contains command-line arguments (as
1978 in e.g., "make -j2"), expect's directive "spawn $env(MAKE)" fails
1979 spuriously, because it tries to run "$MAKE" as a single command.
1980 Fix this with proper uses of the TCL `eval' builtin.
1982 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1984 tests: few more checks on automatic remake support
1985 * tests/remake-all-1.test: New test, check that the "all" target
1986 triggers rebuilt of outdated Makefiles.
1987 * tests/remake-all-2.test: Likewise, but for when the makefiles
1988 are not named `Makefile'.
1989 * tests/Makefile.am (TESTS): Update.
1991 2011-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
1993 tests: check some remake features with non-GNU make too
1994 * tests/acloca14.test ($required): Drop "GNUmake". This test
1995 works as-is with non-GNU make implementations.
1996 * tests/remake1a.test: Likewise.
1997 * tests/aclocal4.test ($required): Drop "GNUmake".
1998 Modify the test to have it work also with non-GNU make.
1999 * tests/remake5.test: Likewise.
2000 * tests/remake8a.test: Likewise.
2001 * tests/remake8b.test: Likewise.
2002 * tests/remake9a.test: Likewise.
2003 * tests/remake9b.test: Likewise.
2004 * tests/remake9c.test: Likewise.
2005 * tests/remake9d.test: Likewise.
2006 * tests/remake10a.test: Likewise.
2007 * tests/remake10b.test: Likewise.
2008 * tests/remake10c.test: Likewise.
2009 * tests/remake12.test: ($required): Drop "GNUmake".
2010 Adapt the test to make it work also with non-GNU make (if
2011 it supports an "include" directive).
2013 2011-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2015 tests: extend tests on dependency tracking with VPATH
2016 * tests/depmod-tests.sh: New script, fulfilling a threefold role:
2017 1. it is called to generate a Makefile.am snippet, containing the
2018 definition of proper lists of tests;
2019 2. it is called to set up a directory containing some common data
2020 files and autotools-generated files used by the aforementioned
2021 tests (this is done for speed reasons only); and
2022 3. it is called to properly run those tests, one at a time.
2023 * tests/depcomp9.test: Delete, it's obsolete now.
2024 * tests/depcomp10.test: Likewise.
2025 * tests/Makefile.am ($(srcdir)/depmod-tests.am): Include this
2026 snippet, which defines ...
2027 (depmode_tests): ... this new macro, containing the list of the
2028 newly generated `*.depmod' tests.
2029 (TESTS_EXTENSIONS): Add `.depmod'.
2030 (DEPMOD_LOG_COMPILER): Define. It calls `depmod-tests.sh', so that
2031 the "depmode tests" will be executed by passing that driver script
2033 ($(depmod_tests)): New dependency declaration (dummy, but required
2034 in order to have make actually produce expected log files from the
2035 `.depmod.log' suffix rule).
2036 (TESTS): Add $(depmod_tests).
2037 (EXTRA_DIST): Distribute depmod-tests.sh.
2038 Other minor cosmetic changes and reorderings.
2039 * bootstrap: Generate depmod-tests.am.
2040 * tests/.gitignore: Updated.
2042 2011-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2044 tests: avoid extra test generation (for `instspc' tests)
2045 We don't really need to generate tons and tons of wrapper test
2046 scripts (presently, ~ 90) just to run what is basically a single
2047 test (specifically, `instspc-tests.sh') with different parameters.
2048 In fact, the possibility of running a single driver script with
2049 multiple files/configurations/parameters is one of the major
2050 selling points of the 'parallel-tests' testsuite driver of
2051 automake. So why not use ourselves more extensively the best
2052 features we provide?
2053 * tests/instspc-tests.sh: Update heading comments. Expect
2054 to be executed, not sourced. Update handling of command-line
2055 arguments. Adjust to reflect the renaming of "instspc tests"
2056 from `instspc-*.test' to `*.instspc'.
2057 * tests/instspc-data.test: Update heading comments. Execute
2058 driver script `instspc-tests.sh', instead of sourcing it.
2059 Give more informative messages in case of internal errors.
2060 * tests/Makefile.am (TESTS_EXTENSIONS): Define explicitly (to
2061 `.test' and `.instspc').
2062 (TESTS): Add `$(instspc_tests)'.
2063 (generated_tests): Remove `$(instspc_tests)'.
2064 (INSTSPC_LOG_COMPILER): Define. Calls `instspc-tests.sh', so
2065 that the "instspc tests" will be now executed by passing that
2066 driver script a proper parameter.
2067 ($(instspc_tests)): Remove, we don't need anymore to generate
2069 ($(instspc_tests:.test=.log)): Remove, substituted by ...
2070 ($(instspc_tests:.instspc=.log)): ... this.
2071 ($(instspc_tests)): New dependency declaration (dummy, but
2072 required in order to have make actually produce expected log
2073 files from the `.instspc.log' suffix rule).
2074 (MAINTAINERCLEANFILES, generated_tests): Don't extend with
2075 $(instspc_tests) anymore.
2078 2011-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2080 build: improve the definition of the list of testcases
2081 * tests/Makefile.am (handwritten_tests): New variable.
2082 (generated_tests): Likewise.
2083 (TESTS): Redefine as the union of the above.
2084 (EXTRA_DIST): Extend using $(handwritten_tests) and
2085 $(generated_tests) rather than $(TESTS).
2086 * tests/gen-parallel-tests: Update accordingly, and
2089 2011-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2091 tests skips: shorter and clearer messages
2092 * tests/defs: Use shorter messages when giving reasons for test
2093 skipping; it turns out these shorter messages are also clearer.
2094 If more info might be useful, send them to the log file only.
2096 2011-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2098 tests: fix self check spurious failure with older bash versions
2099 * tests/self-check-cleanup.test: Add trailing `:' to the test code
2100 passed to $SHELL, otherwise older versions of bash (at least 2.05
2101 and 3.2.39) fail to correctly remove the temporary directory in
2104 2011-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2106 tests: add sanity check to 'self-check-cleanup.test'
2107 * tests/self-check-cleanup.test: Check that the "hacked" file
2108 `defs-static' used by the test differs from the "vanilla" one
2109 in builddir. This also offers a little more debugging output.
2111 2011-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2113 testsuite: display reasons for skips to the console
2114 * tests/Makefile.am (AM_TESTS_ENVIRONMENT): Open file descriptor
2115 `9' to the original stderr; define `stderr_fileno_' to `9', and
2117 * tests/self-check-report.test: Prevent new spurious failures by
2118 removing from the environment any definition of `stderr_fileno_'.
2120 2011-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2122 testsuite: use `skip_' for skipping of tests
2123 * tests/defs: Use the `skip_' subroutine for test skipping. Also
2124 give sometimes more detailed messages about the reasons for the
2126 * tests/canon7.test: Likewise.
2127 * tests/color.test: Likewise.
2128 * tests/color2.test: Likewise.
2129 * tests/compile2.test: Likewise.
2130 * tests/dejagnu7.test: Likewise.
2131 * tests/depcomp6.test: Likewise.
2132 * tests/depcomp9.test: Likewise.
2133 * tests/depcomp10.test: Likewise.
2134 * tests/distlinks.test: Likewise.
2135 * tests/distlinksbrk.test: Likewise.
2136 * tests/fn99.test: Likewise.
2137 * tests/fn99subdir.test: Likewise.
2138 * tests/forcemiss2.test: Likewise.
2139 * tests/fort5.test: Likewise.
2140 * tests/gettext3.test: Likewise.
2141 * tests/install2.test: Likewise.
2142 * tests/instfail-info.test: Likewise.
2143 * tests/instfail-java.test: Likewise.
2144 * tests/instfail-libtool.test: Likewise.
2145 * tests/instfail.test: Likewise.
2146 * tests/instmany-mans.test: Likewise.
2147 * tests/instmany-python.test: Likewise.
2148 * tests/instmany.test: Likewise.
2149 * tests/instsh3.test: Likewise.
2150 * tests/ltinit.test: Likewise.
2151 * tests/makej2.test: Likewise.
2152 * tests/mdate6.test: Likewise.
2153 * tests/mkinst3.test: Likewise.
2154 * tests/parallel-tests3.test: Likewise.
2155 * tests/parallel-tests-reset-term.test: Likewise.
2156 * tests/parallel-tests-unreadable-log.test: Likewise,
2157 * tests/python-virtualenv.test: Likewise.
2158 * tests/remake-gnulib-remove-header.test: Likewise.
2159 * tests/subobj9.test: Likewise.
2160 * tests/symlink2.test: Likewise.
2161 * tests/tar.test: Likewise.
2162 * tests/tar2.test: Likewise.
2163 * tests/txinfo26.test: Likewise.
2164 * tests/vala2.test: Likewise.
2165 * tests/vala3.test: Likewise.
2166 * tests/vala5.test: Likewise.
2167 * tests/vtexi4.test: Likewise.
2168 * tests/instdir-texi.test: Likewise.
2169 * tests/txinfo21.test: Likewise.
2171 2011-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
2173 testsuite: more environment sanitization
2174 * tests/defs: Move the checks verifying that the variables `me',
2175 `parallel_tests' and `required' aren't set in the environment ...
2176 * tests/defs-static.in: ... in here, with some optimizations to
2177 avoid useless forks. Also, do the same checks for the variables
2178 `original_AUTOMAKE' and `original_ACLOCAL' too.
2179 * tests/self-check-env-sanitize.test: Update.
2180 * tests/Makefile.am (TESTS_ENVIRONMENT): Unset also variables
2181 `original_AUTOMAKE' and `original_ACLOCAL'.
2183 2011-04-24 Stefano Lattarini <stefano.lattarini@gmail.com>
2185 tests: fix spurious failure (non-renamed AM_TESTS_SETUP usage)
2186 * tests/parallel-tests-reset-term.test: Use AM_TESTS_ENVIRONMENT
2187 instead of AM_TESTS_SETUP (which has been removed in commit
2188 v1.11-349-g12f48fa).
2189 Fix spurious failure introduced by merge `v1.11-781-gfeed175'.
2191 2011-04-24 Stefano Lattarini <stefano.lattarini@gmail.com>
2193 tests: fix spurious failure in a test on TESTS (VPATH-related)
2194 * tests/check-tests-in-builddir.test: When not using the
2195 parallel-tests option, do not check that VPATH components are
2196 not present in the displayed test name, since the simple-tests
2197 driver do not try to strip them.
2199 2011-04-24 Stefano Lattarini <stefano.lattarini@gmail.com>
2201 tests: fix spurious failure in self-check-env-sanitize.test
2202 * tests/self-check-env-sanitize.test: Open file descriptor `5'
2204 Fix spurious failure introduced by merge `v1.11-788-g3b0c8d5'.
2206 2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
2208 test: self check subroutines for skipping/failing of tests
2209 * tests/self-check-report.test: New test.
2210 * tests/Makefile.am (TESTS): Update.
2212 2011-04-23 Jim Meyering <meyering@redhat.com>
2213 Stefano Lattarini <stefano.lattarini@gmail.com>
2215 test defs: new subroutines for test skipping/failing
2216 * tests/defs.in (Exit): Move definition of this function earlier.
2217 (warn_, skip_, fail_, framework_failure_): New functions, inspired
2218 to the homonyms in gnulib's tests/init.sh.
2219 ($stderr_fileno_): New global variable, used by the new functions
2221 * tests/README: Updated.
2222 From a suggestion by Ralf Wildenhues.
2224 2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
2226 tests: fix typo (copy & paste blunder) in heading comment
2227 * tests/maintclean-vpath.test: Correctly refer to the sister test
2228 as `maintclean.test', not as `maintclean-vpath.test'.
2230 2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
2232 tests: remove redundant test `mclean.test'
2233 * tests/mclean.test: Remove, it's a weak grepping test completely
2234 superseded by the much more complete `maintclean.test'.
2235 * tests/Makefile.am (TESTS): Update.
2237 2011-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
2239 testsuite: more environment sanitization
2240 * tests/defs.in: Sanity check: abort if any of `parallel_tests'
2241 or `required' is in the environment.
2242 ($sed_unindent_prog): Initialize to empty, to avoid interferences
2243 from the environment.
2244 * tests/self-check-me-in-env.test: Renamed to ...
2245 * tests/self-check-env-sanitize.test: ... this, and extended.
2246 * tests/Makefile.am (TESTS): Update.
2247 (TESTS_ENVIRONMENT): Unset variables `parallel_tests' and
2248 `required'. Adjust comments.
2250 2011-04-19 Stefano Lattarini <stefano.lattarini@gmail.com>
2252 tests: in self-checks, use $SHELL, not /bin/sh
2253 * tests/self-check-me-in-env.test: Include `./defs-static' to get
2254 the definition of `$SHELL'. Use `$SHELL' instead of `/bin/sh' to
2257 2011-04-19 Stefano Lattarini <stefano.lattarini@gmail.com>
2259 tests: prefer AM_TESTS_ENVIRONMENT to TESTS_ENVIRONMENT
2260 * tests/Makefile.am (TESTS_ENVIRONMENT): Renamed to ...
2261 (AM_TESTS_ENVIRONMENT): ... this.
2263 2011-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
2265 tests: don't allow `$me' to be overridden from the environment
2266 * tests/defs.in: Sanity check: abort if $me is in the environment.
2267 * tests/self-check-me-in-env.test: New test.
2268 * tests/Makefile.am (TESTS_ENVIRONMENT): Unset variable `me'.
2270 Suggestion by Ralf Wildenhues.
2272 2011-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
2274 check: rename AM_TESTS_SETUP -> AM_TESTS_ENVIRONMENT
2275 The AM_TESTS_SETUP naming was not a good one after all. It may
2276 be technically more correct than AM_TESTS_ENVIRONMENT, but the
2277 latter is a better one simply because it is easier to remember,
2278 and even if you've never heard of it and only know the semantics
2279 of TESTS_ENVIRONMENT, you can have a straightforward way to
2280 figure out how AM_TESTS_ENVIRONMENT would work.
2281 * tests/check.am (am__check_pre): Update.
2282 * doc/automake.in (Simple Tests using parallel-tests): Update.
2283 * tests/parallel-tests-am_tests_setup.test: Renamed ...
2284 * tests/parallel-tests-am_tests_environment.test: ... to this,
2286 * tests/Makefile.am (TESTS): Update.
2287 Suggestion and motivation by Ralf Wildenhues.
2289 2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2291 test defs: allow overriding of `$me'
2292 * tests/defs.in ($me): Allow overriding by the including test
2293 script. Add some explicative comments.
2295 2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2297 coverage: more tests on the parallel-tests driver
2298 * tests/parallel-tests-interrupt.test: New test.
2299 * tests/parallel-tests-reset-term.test: Likewise.
2300 * tests/Makefile.am (TESTS): Update.
2302 2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2304 check: new developer-reserved AM_TESTS_SETUP variable
2305 For reference, see the discussion at:
2306 <http://lists.gnu.org/archive/html/automake-patches/2011-01/msg00213.html>
2307 * lib/am/check.am [%?PARALLEL_TESTS%] (am__check_pre): Pass also
2308 $(AM_TESTS_SETUP). Comments updated, and some typos fixed.
2309 * doc/automake.texi (Simple Tests using parallel-tests): Document
2310 AM_TESTS_SETUP. Reorder some of the existing documentation a bit.
2311 * tests/parallel-tests-am_tests_setup.test: New test.
2312 From a suggestion by Ralf Wildenhues.
2314 2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2316 depcomp tests: don't reject slower dependency extractors
2317 * tests/depcomp8b.test: Add the `--enable-dependency-tracking'
2318 option to `configure' invocations, so that slower dependency
2319 extractors are not rejected.
2320 * tests/depcomp8a.test: Likewise. Also ...
2321 (foo.c): ... since we are at it, fix spacing to be consistent
2322 with GNU coding standards.
2324 2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2326 m4: add missing serial numbers to a few files
2327 Fixes automake bug#8483.
2328 * m4/amversion.in: Add serial number.
2329 * m4/auxdir.m4: Likewise.
2330 * m4/gcj.m4: Likewise.
2331 * m4/install-sh.m4: Likewise.
2332 * m4/mkdirp.m4: Likewise.
2333 * m4/python.m4: Likewise.
2334 * m4/runlog.m4: Likewise.
2335 * m4/strip.m4: Likewise.
2336 * m4/upc.m4: Likewise.
2338 2011-04-16 Stefano Lattarini <stefano.lattarini@gmail.com>
2340 tests: fix few bugs in self checks
2341 Related to automake bug#8508.
2342 * tests/self-check-cleanup.test: Be laxer when grepping output
2343 from `ls -l', to account for ACLs and SELinux-only files.
2344 * tests/self-check-dir.test: Source `defs-static' to read in the
2345 correct definition for $SHELL.
2346 * tests/self-check-me.test: Likewise, and extend a bit.
2347 Report from Jim Meyering.
2349 2011-04-16 Jim Meyering <meyering@redhat.com>
2351 depcomp: correct invalid sed invocation
2352 * lib/depcomp: Insert missing -e before '/:$/d'.
2353 Otherwise, that use of sed would treat '/:$/d' as a file name.
2355 2011-04-14 Stefano Lattarini <stefano.lattarini@gmail.com>
2357 maintainer check: quote literal `$' in Makefile rule
2358 * Makefile.am (sc_tests_PATH_SEPARATOR): Escape literal `$'
2359 character in double-quoted string. Fix a bug in which the rule
2360 emitted an erroneously empty substring in its error message.
2362 2011-04-14 Stefano Lattarini <stefano.lattarini@gmail.com>
2364 tests: fix typo in python5b.test
2365 * tests/python5b.test: Remove extra `:' from $PATH redefinition.
2367 2011-04-14 Stefano Lattarini <stefano.lattarini@gmail.com>
2369 tests: remove redundant settings of `errexit' shell flag
2370 * tests/autodist-acconfig.test: Do not set the `errexit'
2371 shell flag, as it is already set by `tests/defs'.
2372 * tests/autodist-acconfig-no-subdir.test: Likewise.
2373 * tests/autodist-aclocal-m4.test: Likewise.
2374 * tests/autodist-config-headers.test: Likewise.
2375 * tests/autodist-configure-no-subdir.test: Likewise.
2376 * tests/autodist-stamp-vti.test: Likewise.
2377 * tests/autodist-subdir.test: Likewise.
2378 * tests/autodist.test: Likewise.
2379 * tests/check-exported-srcdir.test: Likewise.
2380 * tests/check-tests-in-builddir.test: Likewise.
2381 * tests/check-tests_environment.test: Likewise.
2382 * tests/help-python.test: Likewise.
2383 * tests/java-check.test: Likewise.
2384 * tests/java-extra.test: Likewise.
2385 * tests/java-noinst.test: Likewise.
2386 * tests/lex-subobj-nodep.test: Likewise.
2387 * tests/ltinit.test: Likewise.
2388 * tests/m4-inclusion.test: Likewise.
2389 * tests/maintclean-vpath.test: Likewise.
2390 * tests/parallel-tests-subdir.test: Likewise.
2391 * tests/pr8365-remake-timing.test: Likewise.
2392 * tests/python-dist.test: Likewise.
2393 * tests/python-vars.test: Likewise.
2394 * tests/python-virtualenv.test: Likewise.
2395 * tests/python5b.test: Likewise.
2396 * tests/specflg-dummy.test: Likewise.
2397 * tests/yacc-dist-nobuild-subdir.test: Likewise.
2399 2011-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
2401 coverage: test for automake bug#8485 (known regression)
2402 * tests/yacc-dist-nobuild-subdir.test: New test.
2403 * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
2405 2011-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
2407 test defs: define default $distdir (help reducing duplication)
2408 * tests/defs ($distdir): New variable, might be used in
2409 testcases checking distribution-related features.
2410 * tests/pr9.test: Use it.
2411 * tests/subdir9.test: Likewise.
2412 * tests/lex3.test: Likewise.
2413 * tests/lexvpath.test: Likewise.
2414 * tests/remake-moved-m4-file.test: Likewise.
2415 * tests/remake-renamed-m4-file.test: Likewise.
2416 * tests/remake-renamed-m4-macro-and-file.test: Likewise.
2417 * tests/yacc-basic.test: Likewise.
2418 * tests/yacc-d-basic.test: Likewise.
2419 * tests/yacc-d-vpath.test: Likewise.
2420 * tests/yacc-dist-nobuild.test: Likewise.
2421 * tests/vtexi3.test: Add comment explaining why we redefine
2422 $distdir in this test.
2424 2011-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
2426 depcomp: fix bugs in tests and in the depcomp script
2427 * lib/depcomp (gcc): Remove duplicated `-e' from sed invocation.
2428 * tests/depcomp10.test: Make it executable. Fix a blunder that
2429 has left part of an intended comment not prefixed by `#', thus
2430 causing shell syntax errors. In this same comment, break a
2431 too-long reported error message on multiple lines, for clarity.
2432 Add reference to the relevant bug report. Add a comment which
2433 explains why the test result 'skipped' if the first "make" call
2434 fails. Add other useful comments.
2435 * tests/depcomp9.test: Slightly improve comments.
2437 2011-04-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2439 Fix hp depmode for VPATH builds with GNU make.
2440 * lib/depcomp: Be sure to remove VPATH-prefixed object from
2441 dependency output when creating stub rule.
2442 * tests/depcomp10.test: New test.
2443 * tests/Makefile.am (TESTS): Update.
2445 Report by Bruno Haible.
2447 2011-04-10 Stefano Lattarini <stefano.lattarini@gmail.com>
2449 test defs: fix 'javac' requirement for older JDK versions
2450 The Java compiler from JDK 1.5 (and presumably earlier versions)
2451 cannot handle the `-version' option by itself; and while it does
2452 print the version number, it then errors out with an usage error:
2455 javac: no source files
2456 Usage: javac <options> <source files>
2458 Luckily, adding the `-help' option to the `javac' invocation
2459 seems to fix this problem.
2460 * tests/defs.in (javac): Pass also the `-help' option to the
2461 `javac' program. Add a comment explaining why it is needed.
2462 Report from Ralf Wildenhues.
2464 2011-04-10 Stefano Lattarini <stefano.lattarini@gmail.com>
2466 test defs: new requirement for the default java compiler
2467 * tests/defs.in (for tool in $required): New requirement 'javac'.
2468 * tests/java.test: Use it instead of ad-hoc configure check.
2469 * tests/java-check.test: Likewise.
2470 * tests/java-extra.test: Likewise.
2471 * tests/java-noinst.test: Likewise.
2472 * tests/instfail-java.test: Likewise.
2473 * tests/instdir-java.test: Likewise.
2475 2011-04-09 Stefano Lattarini <stefano.lattarini@gmail.com>
2477 java: check_JAVA does not cause compilation by "make all" anymore
2478 Fixes automake bug#8234.
2479 * automake.in (handle_java): Make stamp of class files built from
2480 java sources in $(check_JAVA) a dependency of `check' target, not
2482 * tests/java-check.test: New test.
2483 * tests/Makefile.am (TESTS): Update.
2486 Report from Petteri Räty.
2488 2011-04-09 Stefano Lattarini <stefano.lattarini@gmail.com>
2489 Bruno Haible <bruno@clisp.org>
2491 coverage: add tests on remake rules in more complex situations
2492 * tests/defs (using_gmake): New function.
2493 (for tool in $required): Use it when $tool is 'GNUmake'.
2494 * tests/remake-moved-m4-file.test: New test.
2495 * tests/remake-deleted-m4-file.test: Likewise.
2496 * tests/remake-renamed-m4-file.test: Likewise.
2497 * tests/remake-renamed-m4-macro-and-file.test: Likewise.
2498 * tests/remake-renamed-m4-macro.test: Likewise.
2499 * tests/remake-add-acsubst-gnulib.test: Likewise.
2500 * tests/remake-add-header-gnulib.test: Likewise.
2501 * tests/remake-remove-header-gnulib.test: Likewise.
2502 * tests/Makefile.am (TESTS): Update.
2504 2011-04-09 Stefano Lattarini <stefano.lattarini@gmail.com>
2506 typofix in 'tests/defs'
2507 * tests/defs: Fix typo (`itslef' instead of `itself') in
2510 2011-04-06 Stefano Lattarini <stefano.lattarini@gmail.com>
2512 coverage: more on java support EXTRA_ and noinst_ prefixes
2513 * tests/java-extra.test: New test, checking support for the
2514 prefix `EXTRA_' with the JAVA primary.
2515 * tests/java-noinst.test: New test, checking support for the
2516 prefix `noinst_' with the JAVA primary.
2517 * tests/Makefile.am (TESTS): Update.
2519 2011-04-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2521 Clarify regex code in depcomp.
2522 * lib/depcomp: Add comment why we don't need regex-escaping here.
2523 Suggested by Stefano Lattarini.
2525 2011-04-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2527 Fix makedepend depmode for VPATH builds.
2528 * lib/depcomp [makedepend]: Remove any VPATH prefix from the
2529 object file name, so a rebuild doesn't attempt to update the
2530 .Po files in the source tree.
2531 * tests/depcomp9.test: New test.
2532 * tests/Makefile.am (TESTS): Update.
2535 2011-04-02 Stefano Lattarini <stefano.lattarini@gmail.com>
2537 tests: fix timestamp-related failures
2538 Fixes automake bug#8365.
2539 * tests/aclocal6.test: Sleep before modifying m4 files that should
2540 trigger remake rules. Remove incorrect/obsoleted comments.
2541 * tests/subdir5.test: Likewise, and extend a bit.
2542 * tests/subdir8.test: Likewise.
2543 * tests/pr8365-remake-timing.test: New xfailing test.
2544 * tests/Makefile.am (TESTS): Update.
2545 Report from Sam Steingold.
2547 2011-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2549 Create subdirs for generated sources even when not dep tracking.
2550 * automake.in (handle_single_transform): If $object is derived
2551 and lands in subdir, be sure to output a dirstamp dependency.
2552 * tests/yacc5.test: Avoid falsely matching the dirstamp
2553 dependency when grepping for a rule.
2554 * tests/lex-subobj-nodep.test: New test.
2555 * tests/Makefile.am (TESTS): Update.
2557 Report by Ignacy Gawedzki.
2559 Fix locale issue in check-exported-srcdir.test.
2560 * tests/check-exported-srcdir.test: Reformulate glob to not fail
2561 in a locale that ignores or interleaves character case.
2563 2011-04-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2565 docs: better visibility for aclocal in the index
2566 * doc/automake.texi (@menu): Rename title for entry 'configure'
2567 from "Scanning configure.ac or configure.in" to the more precise
2568 "Scanning configure.ac, using aclocal".
2569 (@detailmenu): Adjust.
2570 (@node configure): Adjust, and extend @cindex calls accordingly.
2572 From a report by Maynard Johnson.
2574 2011-03-30 Stefano Lattarini <stefano.lattarini@gmail.com>
2576 tests: improve tests on "maintainer-clean" target
2577 * tests/aclocal6.test: Move checks related to "maintainer-clean"
2578 functionalities into ...
2579 * tests/maintclean-vpath.test: ... this new test.
2580 * tests/maintclean.test: Update heading comments. Extend to also
2581 test subdirs. Remove useless disabling of YACC. Fix m4 quoting
2582 in configure.in. Add a trailing `:' command. Remove extra blank
2584 * tests/Makefile.am (TESTS): Update.
2586 2011-03-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2588 tests: fix unindent to use printf not echo for script.
2589 * tests/defs.in: Use printf rather than echo, as the latter may
2590 interpret the backslashes in the sed script. Fixes test
2591 failures with dash as /bin/sh.
2593 2011-03-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2594 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2596 maintcheck: look for problematic names of testcases
2597 The configure.in stub created by default by `tests/defs' obtains
2598 the first argument of AC_INIT from the test name, and this can
2599 cause some supported autoconf versions to fail with a spurious
2600 error if that test name contains the name of an m4 or m4sugar
2601 builtin or macro (e.g., `defn' or `m4_undefine').
2602 See for example the bug fixed by commit v1.11-287-g1325a8a.
2603 This change add a maintainer check that warns about test names
2604 which are possibly problematic in this regard.
2605 * Makefile.am (sc_test_names): New maintainer-check target.
2606 (syntax_check_rules): Add it.
2607 (m4_builtins): New helper variable.
2608 (TESTS): Updated according to the following renamings.
2609 * tests/include.test: Renamed ...
2610 * tests/hdr-vars-defined-once.test: ... to this.
2611 * tests/sinclude.test: Renamed ...
2612 * tests/m4-inclusion.test: ... to this, and simplified
2614 * tests/include2.test: Renamed ...
2615 * tests/dist-included-parent-dir.test: ... to this, for
2618 2011-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
2620 tests: fix bug in alloca*.test
2621 * tests/alloca.test: Make grepping of automake stderr stricter,
2622 add a trailing `:' command; also, add AC_PROG_CC to configure.in,
2623 and create a dummy alloca.c file, to ensure that we fail for the
2625 * tests/alloca2.test: Likewise. Also, look for LT_INIT, not
2626 AC_PROG_LIBTOOL, in the error message (bug introduced with commit
2627 v1.11-315-gd51e7b7 "libtool: suggest LT_INIT if LTLIBRARIES
2629 From a report by Patrick Welche.
2631 2011-03-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2633 cosmetics: better use of m4 quoting and m4sugar macros
2634 * m4/dmalloc.m4: Better use of m4 quoting. Bump serial number.
2635 * m4/gcj.m4: Likewise.
2636 * m4/init.m4: Likewise.
2637 * m4/install-sh.m4: Likewise.
2638 * m4/lex.m4: Likewise.
2639 * m4/multi.m4: Likewise.
2640 * m4/option.m4: Likewise.
2641 * m4/python.m4: Likewise.
2642 * m4/sanity.m4: Likewise.
2643 * m4/cond.m4: Likewise. Also, prefer the m4sugar macro 'm4_if'
2644 over the plain m4 macro 'ifelse'.
2645 * m4/depend.m4: Likewise.
2647 2011-03-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2649 tests: add test about deprecated use of AC_INIT
2650 * tests/deprecated-acinit.test: New test, check that automake
2651 and autoconf complain about an old-style AC_INIT call used with
2652 a new-style AM_AUTOMAKE_INIT call.
2653 * tests/Makefile.am (TESTS): Update.
2655 2011-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
2657 tests: fix bug (comments-in-var-defn.test + autoconf 2.62)
2658 * tests/comments-in-var-defn.test: The configure.in stub created
2659 by default, which has the AC_INIT first argument obtained by the
2660 test name, causes autoconf 2.62 to fail with a spurious error
2661 message like: "configure.in:1: error: defn: undefined macro:".
2662 Thus, to prevent this, the test is renamed to ...
2663 * tests/comments-in-var-def.test: ... this.
2664 * tests/Makefile.am (TESTS): Updated.
2666 2011-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
2668 cosmetics: convert encoding from ISO-8859 to UTF-8
2669 * ChangeLog.03: Convert encoding to UTF-8.
2670 * ChangeLog.96: Likewise.
2671 * ChangeLog.98: Likewise.
2675 2011-03-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2677 tests: extend checks on the 'unindent' shell function
2678 * tests/self-check-unindent.test: Also check that multiple
2679 instances of 'unindent' can run in parallel (this was not
2680 the case when that function used temporary files).
2682 2011-03-01 Peter Rosin <peda@lysator.liu.se>
2684 test defs: unindent without temporary file
2685 * tests/defs.in (commented_sed_unindent_prog): Commented Sed program
2686 that strips the "proper" amount of leading whitespace.
2687 (unindent): Lazily strip comments from the above program and use it
2688 to unindent without using a temporary file.
2690 2011-02-26 Stefano Lattarini <stefano.lattarini@gmail.com>
2692 libtool: suggest LT_INIT if LTLIBRARIES primary is used
2693 When the LTLIBRARIES primary was used, but $(LIBTOOL) wasn't
2694 defined, automake suggested to add a call to AC_PROG_LIBTOOL
2695 in configure.ac. But that macro is deprecated since Libtool
2696 version 1.9b (2004-08-29), in favor of the newer LT_INIT. So
2697 suggest the use of this latter macro instead.
2698 * lib/Automake/Variable.pm (%_am_macro_for_var): Pair 'LIBTOOL'
2699 with 'LT_INIT', not with 'AC_PROG_LIBTOOL'.
2700 * tests/libtool4.test: Adjust and extend. Also, add a call to
2701 macro AC_PROG_CC in configure.in, to help ensuring that automake
2702 does not fail for the wrong reasons.
2703 * tests/ltinit.test: New test, ensure that automake's libtool
2704 support works with LT_INIT-based interface.
2705 Thanks to Jack Kelly for the suggestion.
2707 2011-02-25 Stefano Lattarini <stefano.lattarini@gmail.com>
2709 tests: add testcases sanity-checking the testsuite
2710 Helper subroutines, variables and other pieces of code defined
2711 in the `tests/defs' and used by many testcases are non-obvious,
2712 and tricky to get to work portably; but until now, they weren't
2713 tested at all in a clear and self-contained way.
2714 This change should remedy to the situation.
2715 * tests/self-check-cleanup.test: New test, check removal of
2716 temporary test working directory by `./defs'.
2717 * tests/self-check-dir.test: New test, check that tests using
2718 `./defs' create a proper temporary directory, and run in it.
2719 * tests/self-check-exit.test: New test, check that, in case of
2720 failing commands, the correct exit status is passed to the exit
2721 trap installed by the `./defs' script.
2722 * tests/self-check-is_newest.test: New test, checking the
2723 `is_newest' subroutine.
2724 * tests/self-check-me.test: New test, checking that $me gets
2725 defined automatically by `tests/defs' if not set, and that it
2726 can be overridden from either the shell or the environment.
2727 * tests/self-check-sanity.test: New test, check that the sanity
2728 checks performed by the `tests/defs' script works correctly.
2729 * tests/self-check-unindent.test: New test, checking the
2730 `unindent' subroutine.
2731 * tests/Makefile.am (TESTS): Update.
2733 2011-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
2735 tests: tempdirs with restrictive permissions are cleaned correctly
2736 Before this change, the removal of a temporary test directory
2737 containing subdirectories with restrictive permissions (such as
2738 'r--r--r--') could fail.
2739 * tests/defs: Ensure that all the subdirectories of a temporary
2740 test directory have the 'read', 'write' and 'execute' bits set,
2741 before trying to remove it with `rm -rf'.
2742 * tests/Makefile.am (clean-local-check): Likewise.
2744 2011-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
2745 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2747 test defs: add subroutine for input unindenting
2748 * tests/defs.in (unindent): New subroutine.
2749 * tests/instspc-tests.sh: Use it.
2751 2011-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
2753 python: report the 'PYTHON' influential environment variable
2754 * m4/python.m4 (AM_PATH_PYTHON): Call AC_ARG_VAR on PYTHON.
2755 * doc/automake.texi (Python): Update and extend.
2756 * tests/help-python.test: New test.
2757 * tests/Makefile.am (TESTS): Update.
2758 * THANKS (Jack Kelly): Update e-mail address.
2759 Suggestion by Jack Kelly.
2761 2011-02-10 Stefano Lattarini <stefano.lattarini@gmail.com>
2763 tests defs: clear TESTS_ENVIRONMENT variable
2764 * tests/defs.in (TESTS_ENVIRONMENT): Unset it, so that values
2765 from environment won't interfere with the testcases.
2766 Suggestion by Ralf Wildenhues.
2768 2011-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
2770 tests: `instspc-*.test': do not create useless source file
2771 * tests/instspc-tests.sh (create_input_data): Do not create
2772 unused source file `source2.c'.
2774 2011-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
2776 tests: optimize `instspc-*.test' for speed
2777 After the split of `instspc.test' into various generated tests,
2778 the running time of the testsuite has noticeably increased, since
2779 all these new generated tests must run aclocal, autoconf and
2780 automake, whereas previously they were run only once (at the
2781 beginning of `instspc.test'). But luckily, since the new tests
2782 share the same input files for the autotools, this situation can
2783 be easily worked around (at the expenses of a slight increase of
2784 complexity for the testsuite scaffolding).
2785 * tests/instspc-data.test: New helper test, properly calling
2786 the `instspc-tests.sh' script to generate input data for the
2787 others `instspc-*.test' tests.
2788 * tests/Makefile.am (TESTS): Add `instspc-data.test'.
2789 ($(instspc_tests:.test=.log)): Depend on its log file.
2790 (instspc-data.log): Depend on `instspc-tests.sh'.
2791 * tests/instspc-tests.sh: Recognize new action `generate-data',
2792 and use it to create hand-written and autotools-generated static
2793 files shared by all the `instspc-*.test' tests.
2794 When sourced by the `instspc-*.test' tests, use those previously
2795 created files instead of recreating them from scratch.
2796 (unindent, create_input_data): New subroutines.
2797 Some other related changes and refactorings.
2798 From a suggestion by Ralf Wildenhues.
2800 2011-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
2802 python: fix spurious failure in tests
2803 * tests/python-vars.test: Ignore cached values from config.site
2804 by exporting CONFIG_SITE=/dev/null. Be laxer in matching the
2805 expected values of output variables `pythondir' and `pyexecdir',
2806 since they can change quite unpredictably among different python
2807 installations. Also, avoid "hyping" debugging output, thus
2808 offering smaller trace output and more informative diff.
2809 Report and suggestions by Ralf Wildenhues.
2810 * tests/python-virtualenv.test: Require python, since we call it
2811 even after the virtualenv has been deactivated. Ignore cached
2812 values from config.site by exporting CONFIG_SITE=/dev/null.
2814 2011-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
2816 tests: tweak few tests on simple and parallel test drivers
2817 * tests/check-exported-srcdir.test: Improve heading comments.
2818 * tests/check-tests-in-builddir.test: Likewise. Also, unset the
2819 `FOO_EXIT_STATUS' variable, so that any pre-existing value in the
2820 environment won't risk to interfere with the test.
2821 Suggestions by Ralf Wildenhues.
2823 2011-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
2825 python: extend and improve tests, fix minor glitches
2826 * m4/python.m4 (AM_PATH_PYTHON): Ensure the "checking ..." messages
2827 from configure are always complete, even in case of failure. Tiny
2828 cosmetic improvement in info/error messages.
2829 * tests/python.test: Also check that automake complains if the
2830 PYTHON primary is used but the `py-compile' script is not present.
2831 Make grepping of generated Makefile.in laxer w.r.t. whitespace.
2832 Add trailing `:' command.
2833 * tests/python2.test: Remove repeated calls aclocal: they are
2834 useless because configure.in is never modified. Make grepping
2835 of automake stderr more comprehensive. Remove the pre-existing
2836 `py-compile' file before trying to install it with `--add-missing'.
2837 Add trailing `:' command.
2838 * tests/python3.test: Add trailing `:' command.
2839 * tests/python11.test: Likewise.
2840 * tests/python4.test: Likewise. Also, try to pass PYTHON config
2841 variable to configure from the environment, rather than only from
2843 * tests/python5.test: Ensure that the "checking ..." messages from
2844 configure are always complete. Use proper m4 quoting. Add a
2845 trailing `:' command.
2846 * tests/python6.test: Simplify test logic, by checking for files
2847 created by configure rather then grepping its output.
2848 * tests/python7.test: Likewise.
2849 * tests/python8.test: Also check that `$PYTHON' is meaningfully
2850 set in the ACTION-IF-TRUE argument of AM_PATH_PYTHON.
2851 * tests/python9.test: Likewise.
2852 * tests/python10.test: Add trailing `:' command.
2853 (Makefile.am): Declare `disttest' target as `.PHONY', and add
2854 an `ls -l' to its recipe, for debugging.
2855 * tests/nobase-python.test: In testing "make uninstall" and
2856 "make install" results, prefer idioms that make verbose logs
2857 more helpful. Remove a couple of lines of dead code. Add a
2858 trailing `:' command.
2859 * tests/python5b.test: New test, checking that configure performs
2860 the check on the python version even when the choice of the python
2861 interpreter is forced by the user.
2862 * tests/python-dist.test: New test, checking the distribution of
2864 * tests/python-vars.test: New test, checking that AM_PATH_PYTHON
2865 correctly set all the output variables advertised in the manual.
2866 * tests/python-virtualenv.test: New test, checking that python
2867 support offered by automake works well with "virtual python
2868 environments" created by the `virtualenv' program.
2869 * tests/instdir-prog.test: Also check `$(pyexecdir)'. Existing
2870 checks made slightly stricter.
2871 * tests/instdir-prog.test: Also check `$(pyexecdir)'. Existing
2872 * tests/instdir-ltlib.test: Likewise.
2873 * tests/Makefile.am (TESTS): Update.
2875 2011-02-01 Stefano Lattarini <stefano.lattarini@gmail.com>
2877 coverage: more tests on simple and parallel test drivers
2878 * tests/parallel-tests-subdir.test: New test.
2879 * tests/check-exported-srcdir.test: Likewise.
2880 * tests/check-tests-in-builddir.test: Likewise.
2881 * tests/check-tests_environment.test: Likewise.
2882 * tests/Makefile.am (TESTS): Update.
2884 2011-01-29 Stefano Lattarini <stefano.lattarini@gmail.com>
2886 tests: fix spurious failures in lflags*.test
2887 * tests/lflags.test: Remove 'LEX' from the environment, so
2888 that it won't be erroneously picked up by `make -e'.
2889 * tests/lflags2.test: Likewise.
2891 2011-01-24 Stefano Lattarini <stefano.lattarini@gmail.com>
2893 docs: color-tests issues with parallel make
2894 * doc/automake.texi (Simple Tests): Document that automatic
2895 recognition of a capable terminal attached to stdout can fail
2896 with some make implementation when running in parallel mode,
2897 thus causing colored test output not to be automatically
2898 activated when it should.
2900 2011-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
2902 coverage: test semantics of "dummy" per-target flags
2903 * tests/specflg-dummy.test: New test, ensuring that even "dummy"
2904 per-target flags triggers the use of renamed objects.
2905 * tests/Makefile.am (TESTS): Update.
2906 Suggestion by Ralf Wildenhues.
2908 2011-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
2910 tests defs: sanitize IFS
2911 * tests/defs ($IFS): Define to <space>, <tab>, <newline>.
2912 ($sp): New variable, holding a single whitespace character.
2913 ($tab): New variable, holding a tabulation character.
2914 ($nl): New variable, holding a newline character.
2916 2011-01-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2918 tests: avoid instspc* failures due to make's whitespace trimming
2919 * tests/instspc-tests.sh: Prepend './' when passing the test
2920 characters, to avoid leading whitespace characters to be trimmed
2921 from macros set from environment variables. Fixes testsuite
2922 failures with HP-UX and Tru64/OSF make.
2924 2011-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2926 tests: fix VPATH auto-expansion workarounds.
2927 * tests/suffix10.test, tests/suffix11.test, tests/suffix12.test,
2928 tests/suffix3.test, tests/suffix5.test, tests/suffix8.test:
2929 Ensure $< is not surrounded by white space, to prevent Solaris
2930 make from applying automatic VPATH text expansion.
2932 tests: fix VPATH auto-expansion workarounds.
2933 * tests/parallel-tests8.test, tests/suffix13.test:
2934 Ensure $< is not surrounded by white space, to prevent Solaris
2935 make from applying automatic VPATH text expansion.
2937 2011-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
2939 tests: fix spurious failures in yflags*.test
2940 * tests/yflags.test: Remove 'YACC' from the environment, so
2941 that it won't be erroneously picked up by `make -e'.
2942 * tests/yflags2.test: Likewise.
2944 2011-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2946 tests: avoid fn99*.test failures due to buggy AIX 5.3 cp -R.
2947 * tests/fn99.test, tests/fn99subdir.test: Skip if an initial
2948 `cp -R' of the subdir tree already fails; AIX 5.3 cp messes
2949 up its internal memory when copying this tree.
2951 2011-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2952 Stefano Lattarini <stefano.lattarini@gmail.com>
2954 Add comment to check-TESTS rule working around make 3.80 bug.
2955 * lib/am/check.am (check-TESTS): Update comment.
2957 2011-01-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2959 tests: less strict double-colon spy.test again.
2960 * tests/spy.test: We know BSD make doesn't invoke more than one
2961 double-colon rule, so no need to expose that failure.
2963 2011-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2965 install-sh: avoid Tru64 sh `test' operator precedence issues.
2966 * lib/install-sh: Protect file names and directory components
2967 that consist of `=', `(', `)', or `!'. Move protection as early
2968 as possible, to avoid errors such as with Tru64 sh `test -z ='.
2969 * tests/instsh2.test: Extend test to cover more possibilities.
2970 Fixes 1.12 instspc-equal-install.test failure on Tru64/OSF 5.1.
2972 2011-01-19 Stefano Lattarini <stefano.lattarini@gmail.com>
2973 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2975 docs: automake testsuite doesn't use TESTS_ENVIRONMENT anymore
2976 * doc/automake.texi (Simple Tests): Do not claim Automake uses
2977 TESTS_ENVIRONMENT for the perl driver. Instead, point to the
2978 parallel-tests driver.
2980 2011-01-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2982 tests: check for presence of cscope with redirected input.
2983 * tests/defs: Add required test for cscope.
2984 Fixes cscope3.test hang with Sun C 5.9 cscope.
2986 tests: avoid false failure in cygnus-dependency-tracking.test.
2987 * tests/cygnus-dependency-tracking.test: Be less restrictive
2988 when grepping the compiler error message, GCC 3.4.6 on FreeBSD
2989 does not mention an undefined symbol.
2991 2011-01-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2993 tests: revert not turning off errexit in instspc-test.sh
2994 * tests/instspc-tests.sh: Turn off errexit while sourcing defs,
2995 the scripts might still not be clean.
2997 2011-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2999 tests: work around Tru64 sh -e issues for instspc*.test.
3000 Apparently, Tru64 sh does not like turning off errexit mode,
3002 * tests/defs: Document 'errexit' cleanliness requirement.
3003 * tests/defs-static.in: Likewise. Avoid error from command
3004 substitution to abort instspc*.test with Tru64/OSF 5.1 sh.
3005 * tests/instspc-tests.sh: Drop now-unneeded temporary errexit
3006 dropping. Add strategic '|| Exit' to let tests work on Tru64.
3008 2011-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3010 Allow _AM_DEPENDENCIES to be used later in configure.
3011 * m4/depend.m4 (_AM_DEPENDENCIES): Remove a previously existing
3012 conftest.dir before recreating it.
3014 Report by Eric Blake, from report by Scott McCreary against M4.
3016 2011-01-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3018 tests: avoid failure on w32 file systems.
3019 * tests/parallel-tests-unreadable-log.test: SKIP if file cannot
3020 be turned unreadable.
3022 2011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3024 tests: allow double-colon spy.test to work with HP-UX make.
3025 * tests/spy.test: Fix comment typos. Ensure prerequisites we
3026 do not want to depend on are strictly older than the target.
3027 Also test with a target out of date wrt. more than one rule.
3029 2011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3031 Avoid local $_ perl variable, for Perl before 5.9.1.
3032 * lib/Automake/Options.pm (_process_option_list): Do not
3033 lexically localize $_. Fixes bootstrap on AIX 5.1.
3034 Bug introduced in commit `v1.11-622-gf90a06c'.
3036 2011-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
3038 tests: remove useless requirements from cond36.test
3039 * tests/cond36.test ($required): Remove.
3040 Since we are at it, add a trailing `:' command.
3042 2011-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3044 tests: avoid failing command substitution in errexit mode.
3045 * tests/vartypo2.test, tests/vartypos.test: Rewrite to not use
3046 a command substitution with a nonzero exit status, that causes
3047 IRIX and Tru64/OSF sh to fail the whole test.
3049 2011-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3050 Stefano Lattarini <stefano.lattarini@gmail.com>
3052 parallel-tests: work around Tru64/OSF 5.1 sh read bugs.
3053 * lib/am/check.am ($(TEST_SUITE_LOG), recheck, recheck-html):
3054 Test file readability before redirecting input from it, to avoid
3055 exiting Tru64/OSF 5.1 sh which treats read as special builtin.
3056 * tests/parallel-tests-unreadable-log.test: New test.
3057 * tests/Makefile.am (TESTS): Update.
3060 2011-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3062 * NEWS, README: Update copyright years.
3064 2011-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
3066 tests: hard error in case of internal failures or signal caught
3067 * tests/defs: Exit with status 99 (hard error) rather than
3068 1 (failure) on unexpected/internal errors, or when a signal
3069 is caught by the client script.
3071 Tests defs: don't let useless variables leak in test scripts.
3072 * tests/defs ($priv_check_temp, $overwrite_status, $ro_dir_temp,
3073 $create_status, $r2h, $libtool_found, $gettext_found, $aclocaldir,
3074 $extra_includes): Unset once they've served their purpose.
3076 2011-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3078 Fix parallel-tests.test failure with HP-UX make.
3079 * tests/parallel-tests.test: Sleep inside inner tests, so logs
3080 are newer than logs of tests they depend on, for HP-UX make.
3082 2011-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3084 docs: ensure example are separated with empty lines in the input
3085 * doc/automake.texi (Extending aclocal, Emacs Lisp, Rebuilding)
3086 (API Versioning, Renamed Objects, Multiple Outputs): Add empty
3087 lines before `@example' and after `@end example' lines, so info
3088 output is rendered correctly, and a following @noindent honored.
3089 Report by Stefano Lattarini.
3091 2011-01-15 Jim Meyering <meyering@redhat.com>
3093 tests: fix comment typo
3094 * tests/substref.test: Fix grammar in a comment.
3096 2011-01-13 Stefano Lattarini <stefano.lattarini@gmail.com>
3098 tests: fix spurious failures in two texinfo tests
3099 * tests/txinfo.test ($required): Add 'makeinfo'.
3100 * tests/txinfo8.test: Create a dummy 'textutils.info' file, so
3101 that make won't try to run makeinfo (which could be unavailable)
3103 Found by NixOS Hydra, reported by Ralf Wildenhues.
3105 2011-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
3107 Update docs w.r.t. warning and strictness options.
3108 * doc/automake.texi (Strictness): Document that some warnings are
3109 turned off by default in `foreign' strictness.
3110 (Options): Divide into new sections "Options generalities" and
3111 "List of Automake options". Fix typo (colon instead of full
3112 stop). Document option precedence (AUTOMAKE_OPTIONS wins over
3113 AM_INIT_AUTOMAKE which wins over command line). Also document
3114 interactions between options specifying strictness and those
3115 specifying warnings.
3117 More tests on warnings/strictness precedence.
3118 * tests/warning-groups-win-over-strictness.test: New test, similar
3119 to `warnings-win-over-strictness.test', but checking the explicit
3120 catch-all warning flags (like `-Wall' and `-Wnone').
3121 * tests/Makefile.am (TESTS): Update.
3123 Update NEWS about the warnings-over-strictness precedence.
3124 * NEWS: Automake explicit warning levels always take precedence
3125 over the implicit warning levels implied by Automake strictness.
3127 For PR automake/547:
3128 Warnings win over strictness in AUTOMAKE_OPTIONS.
3129 Ensure that, for what concerns the options specified in
3130 AUTOMAKE_OPTIONS, explicitly-defined warnings always take
3131 precedence over implicit strictness-implied warnings.
3132 This finally fixes Automake bug#7669 a.k.a. PR/547.
3133 * automake.in (handle_options): Call 'process_option_list'
3134 only once per set of options.
3135 * lib/Automake/Options.pm (process_global_option_list,
3136 process_option_list): Add sanity checks.
3137 ($_options_processed, $_global_options_processed): New
3138 internal variables, used by the sanity checks above.
3139 * tests/warnings-win-over-strictness.test: Extend.
3141 For PR automake/547:
3142 Change signature of 'Automake::Options::_process_option_list()'.
3143 This only modifies internal details in the automake implementation,
3144 bearing no externally visible effect, but preparing the way for the
3145 final fix of Automake bug#7669 a.k.a. PR/547.
3146 * lib/Automake/Options.pm (_process_option_list): Accept as
3147 arguments a list of hash references with keys 'option' and 'where',
3148 where 'option' is an option as might occur in AUTOMAKE_OPTIONS or
3149 AM_INIT_AUTOMAKE, and 'where' is the location where it occurred.
3150 (process_option_list, process_global_option_list): Updated.
3151 * automake.in (handle_options, scan_autoconf_traces): Update.
3153 Add more tests about AUTOMAKE_OPTIONS.
3154 In view of soon-to-follow refactorings (still in the pursuit of a
3155 fix for Automake bug#7669 a.k.a. PR/547), add some more tests on
3156 AUTOMAKE_OPTIONS support, to prevent obvious regressions.
3157 * tests/amopts-variable-expansion.test: New test.
3158 * tests/amopts-location.test: Likewise.
3159 * tests/Makefile.am (TESTS): Update.
3161 For PR automake/547:
3162 Warnings win over strictness in AM_INIT_AUTOMAKE.
3163 This change ensures that, for what concerns the options specified
3164 in AM_INIT_AUTOMAKE, explicitly-defined warnings always take
3165 precedence over implicit strictness-implied warnings. Related to
3166 Automake bug#7669 a.k.a. PR/547.
3167 * lib/Automake/Options.pm (_process_option_list): Parse explicit
3168 warnings only after the strictness level has been set. Fix POD
3170 * tests/warnings-win-over-strictness.test: Extend.
3172 For PR automake/547:
3173 Warnings win over strictness on command line.
3174 Ensure that, on the command line at least, explicitly defined
3175 warnings always take precedence over implicit strictness-implied
3176 warnings. Related to Automake bug#7669 a.k.a. PR/547.
3177 * automake.in (parse_arguments): Parse warnings only after the
3178 strictness level has been processed.
3179 * tests/gnuwarn.test: Update, plus miscellaneous improvements.
3180 * tests/warnings-win-over-strictness.test: New test.
3181 * tests/Makefile.am (TESTS): Update.
3183 More tests on warnings and strictness.
3184 * tests/warnings-strictness-interactions.test: New test.
3185 * tests/warnings-unknown.test: Likewise.
3186 * tests/Makefile.am (TESTS): Update.
3188 New test on silent-rules mode and portability warnings.
3189 * tests/silent-nowarn.test: New test.
3190 * tests/Makefile.am (TESTS): Update.
3192 Add new tests on strictness and warnings precedence and overriding.
3193 * tests/strictness-override.test: New test.
3194 * tests/strictness-precedence.test: New test.
3195 * tests/warnings-override.test: New test.
3196 * tests/warnings-precedence.test: New test.
3197 * tests/Makefile.am (TESTS): Update.
3199 2011-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3201 Fix remake rule-induced test failures with HP-UX make.
3202 * tests/remake1a.test: Require GNU make.
3204 2011-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3206 Fix remake rule-induced test failures with HP-UX make.
3207 * tests/colon6.test: Update timestamp of subdir Makefile, so we
3208 do not spuriously invoke the nonexistent toplevel am--refresh
3211 tests: fix typos in colon6.test
3212 * tests/colon6.test: Fix typos.
3214 2011-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3215 Stefano Lattarini <stefano.lattarini@gmail.com>
3217 tests: explain MSYS setup failure issue, improve test.
3218 * tests/defs: Add comment and failure message, improve fail
3221 2011-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3223 Fix libobj2.test failure with non-GNU make: define $(AR).
3224 * tests/libobj2.test: Ensure $(AR) is suitably defined.
3226 2011-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3228 tests: avoid spurious failures due to fork failure in test setup
3229 * tests/defs: Ensure $me is always nonempty, to avoid spurious
3230 failures on MinGW/MSYS in case the preceding sed command could
3233 Avoid configure warnings from wait about reused PIDs.
3234 * m4/sanity.m4 (AM_SANITY_CHECK): Hide wait stderr output.
3235 Fixes spurious failure of depcomp2.test.
3237 2011-01-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3239 Avoid testsuite failures due to Autoconf Fortran change.
3240 Autoconf v2.68-21-g727ce95 causes AC_F77_LIBRARY_LDFLAGS to
3241 require computing the canonical host name. Ensure config.guess
3242 and config.sub files are present for respective checks.
3243 * tests/compile_f_c_cxx.test: Add stub files.
3244 * tests/flibs.test: Likewise.
3245 * tests/fort4.test: Use $AUTOMAKE -a for installing files.
3247 2011-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
3249 docs: clustered '-d' not recognized in YFLAGS
3250 This change fixes automake bug#7828.
3251 * doc/automake.texi (Yacc and Lex): Document that automake
3252 recognizes '-d' in AM_YFLAGS only if it's not clustered with
3254 From a report by Юрий Пухальский.
3256 2011-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
3258 tests: add checks on automatically-distributed files
3259 Related to automake bug#7819.
3260 * tests/autodist.test: New test.
3261 * tests/autodist-subdir.test: Likewise.
3262 * tests/autodist-acconfig.test: Likewise.
3263 * tests/autodist-acconfig-no-subdir.test: Likewise.
3264 * tests/autodist-aclocal-m4.test: Likewise.
3265 * tests/autodist-config-headers.test: Likewise.
3266 * tests/autodist-configure-no-subdir.test: Likewise.
3267 * tests/autodist-stamp-vti.test: Likewise.
3268 * tests/Makefile.am (TESTS): Update.
3270 2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
3272 tests: do not force yacc-requiring tests to use bison
3273 * tests/defs.in: New required entry 'yacc'. Remove old
3274 required entry 'bison'.
3275 * tests/cond35.test ($required): Require yacc, not bison.
3276 * tests/cond36.test: Likewise.
3277 * tests/pr204.test: Likewise.
3278 * tests/silent-many-gcc.test: Likewise.
3279 * tests/silent-many-generic.test: Likewise.
3280 * tests/silent-yacc-gcc.test: Likewise.
3281 * tests/silent-yacc-generic.test: Likewise.
3282 * tests/subpkg.test: Likewise.
3283 * tests/suffix10.test: Likewise.
3284 * tests/yacc-basic.test: Likewise.
3285 * tests/yacc-clean.test: Likewise.
3286 * tests/yacc-d-basic.test: Likewise.
3287 * tests/yacc-d-vpath.test: Likewise.
3288 * tests/yacc-dist-nobuild.test: Likewise.
3289 * tests/yacc-nodist.test: Likewise.
3290 * tests/yacc4.test: Likewise.
3291 * tests/yacc6.test: Likewise.
3292 * tests/yacc7.test: Likewise.
3293 * tests/yacc8.test: Likewise.
3294 * tests/yaccdry.test: Likewise.
3295 * tests/yaccvpath.test: Likewise.
3297 2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
3299 tests: more consistent checks about invalid options
3300 * tests/aclocal.test: Grepping of automake stderr for messages
3301 reporting invalid options made stricter.
3302 * tests/no-outdir-option.test: Likewise. Also, create a dummy
3303 `Makefile.am', to ensure that the automake failures are really
3304 caused only by unrecognized options.
3305 * tests/automake.test: Added trailing `:' command. Removed
3306 redundant checks on `--help' and `--version' option (already
3307 performed in the test `help*.test').
3309 2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
3311 tests: enable 'errexit' shell flag by default.
3312 * tests/defs: Enable `errexit' shell flag (near the end).
3313 Removed redundant comment about the enabling of shell traces.
3314 * tests/README (Writing test cases): Update, and use nicer
3315 formatting in a couple of places.
3316 * All tests: Adjusted by removing now-redundant calls to
3319 2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
3321 tests: work around a texi+cygnus bug causing a spurious XFAIL
3322 * tests/txinfo5b.test: New test, like txinfo5.test but calling
3323 automake with the `-Wno-override' option to work around a bug
3324 in the texinfo + cygnus interaction.
3325 * tests/txinfo5.test: Update heading comments.
3326 * tests/Makefile.am (TEST): Updated.
3328 2011-01-09 Dave Hart <davehart@gmail.com> (tiny change)
3330 Fix another typo in Rule.pm comment.
3331 * lib/Automake/Rule.pm: Fix typo.
3333 2011-01-09 Peter Rosin <peda@lysator.liu.se>
3335 Fix another typo in Rule.pm comment.
3336 * lib/Automake/Rule.pm: Fix typo.
3338 2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
3340 tests: texinfo unrecognized extensions
3341 * tests/txinfo-unrecognized-extension.test: New test.
3342 * tests/Makefile.am (TESTS): Update.
3344 Improve, extend and tweak tests on Texinfo support.
3345 * tests/instdir-texi.test: Add a call to `ls -l' after that to
3346 `make', for debugging. When looking for required tools, do not
3347 redirect the output of "$tool --help" to /dev/null, and do not
3348 uselessly run it in a subshell.
3349 * tests/txinfo.test: Rewritten to run autoconf, ./configure and
3350 make. All checks moved into Makefile.am.
3351 * tests/txinfo8.test: Likewise, and modernize the generated
3353 * tests/txinfo2.test: Moved checks into Makefile.am, and other
3355 * tests/txinfo5.test: Enable `errexit' shell flag, and related
3356 changes. Add trailing `:' command.
3357 * tests/txinfo6.test: Likewise, and make grepping of generated
3358 Makefile.in stricter.
3359 * tests/txinfo7.test: Enable `errexit' shell flag, and related
3360 changes. Add trailing `:' command. Do not add unnecessary stuff
3362 * tests/txinfo9.test: Verify that more targets which are expected
3363 to be generated only once really are. Make grepping less strict,
3364 to avoid exposing too much internal details. More minor changes.
3365 * tests/txinfo16.test: Add trailing `:'. Prefer cat over echo
3366 for appending to configure.in. Updated/fixed heading comments.
3367 * tests/txinfo23.test: Likewise, and extended a little by making
3368 it check that no info file is created in the $(srcdir).
3369 * tests/txinfo24.test: Likewise.
3370 * tests/txinfo25.test: Likewise.
3371 * tests/txinfo18.test: Add trailing `:'. Prefer cat over echo
3372 for appending to configure.in. Also, check that index files are
3373 cleaned also by "make clean", not only by "make distclean".
3374 * tests/txinfo22.test: Prefer `$me' over hard-coded test name,
3375 and added trailing `:' command. This testcase also used to check
3376 that automake ignores in-line comments when using variables, but
3377 preserves them in the output; these checks (added in commit
3378 "Release-1-7f-4-g9177ef8") do not really pertain to this test,
3379 so they have been moved ...
3380 * tests/comments-in-var-defn.test: ... into this new test.
3381 * tests/txinfo4.test: Escape literal dots in grep regexps. Add
3382 trailing `:' command.
3383 * tests/txinfo29.test: Likewise. Relax grepping of generated
3384 Makefile.in w.r.t. whitespaces. Prefer `cat' over `echo' to
3385 append to configure.in.
3386 * tests/txinfo3.test: Likewise.
3387 * tests/vtexi.test: Improve grepping of Makefile.in (sometimes
3388 make it stricter, sometimes laxer). Move `set -e' setting just
3389 after the inclusion of ./defs. De-uglify a sed command. Other
3390 minor cosmetic improvements.
3391 * tests/vtexi2.test: Make grepping of Makefile.in stricter. Add
3392 trailing `:' command.
3393 * tests/vtexi3.test: New test on version.texi support.
3394 * tests/vtexi4.test: Likewise.
3395 * tests/Makefile.am (TESTS): Updated.
3397 2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
3399 tests: fix spurious failure in 'tests/yflags-conditional.test'
3400 * tests/yflags-conditional.test: Filter out message "warnings are
3401 treated as errors" from automake stderr, to avoid a false positive
3402 when grepping for extraneous warning messages.
3404 2011-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
3406 yacc: warn about conditional content in *YFLAGS variables
3407 This change fixes automake bug#7804.
3408 * automake.in (lang_yacc_target_hook): Warn if any of the relevant
3409 *YFLAGS variables has conditional contents (not only a conditional
3410 definition). Related refactoring.
3412 * tests/yflags-conditional.test: Updated and extended.
3413 * tests/yflags-conditional-force.test: New test.
3414 * tests/Makefile.am (TESTS): Updated.
3416 2011-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
3418 yacc: support variable expansions in *YFLAGS definition.
3419 This change fixes automake bug#7800.
3420 * automake.in (lang_yacc_target_hook): Use 'value_as_list_recursive'
3421 instead of 'variable_value' to get the value of *YFLAGS variables.
3423 ($DASH_D_PATTERN): Removed.
3424 * tests/Makefile.am (XFAIL_TESTS): Remove yflags-var-expand.test.
3425 * tests/yacc-clean.test: Remove workaround for now-fixed bug.
3428 2011-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
3430 yacc: more tests on *YFLAGS support
3431 * tests/yflags-var-expand.test: New test, still xfailing. It
3432 exposes automake bug#7800 -- "automake fails to honor `-d' in
3433 AM_YFLAGS when variable expansions are involved".
3434 * tests/yflags-d-false-positive.test: New test, checking that
3435 automake do not spuriously see `-d' in *YFLAGS when that isn't
3437 * tests/yflags-force-override.test: New test, checking that
3438 automake can cope with definition of the YFLAGS variable in
3439 Makefile.am (even if that is an extremely bad practice, as that
3440 variable is user-reserved).
3441 * tests/yflags-cmdline-override.test: New test, checking that
3442 automake can cope with user-redefinition of YFLAGS at configure
3443 time and/or at make time.
3444 * tests/yflags-conditional.test: New test, checks that automake
3445 warns on conditionally-defined *YFLAGS variables.
3446 * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
3448 2011-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
3450 yacc: extend and improve tests
3451 * tests/yacc-basic.test: Also check that the intermediate C file
3452 is mentioned in the generated Makefile.in, and that it is created
3453 by the first make invocation.
3454 * tests/yacc3.test: Test removed, superseded by ...
3455 * tests/yacc-d-basic.test: ... this new test.
3456 * tests/yacc2.test: Add reference to that new test in the heading
3458 * tests/yacc-d-vpath.test: New test.
3459 * tests/yaccvpath.test: Updated heading comments. Do not require
3460 gcc anymore, as any working C compiler should be enough. Remove
3462 * tests/yacc-nodist.test: New test.
3463 * tests/yacc-dist-nobuild.test: New test.
3464 * tests/Makefile.am (TESTS): Update.
3466 2010-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
3468 Extend, fix and improve tests on Lex and Yacc support.
3469 * tests/lexcpp.test: New test script, on support for Lex + C++.
3470 * tests/lexvpath.test: New test script, test build and rebuild
3471 rules for lexers in VPATH setup.
3472 * tests/yacc-basic.test: New test script, run simple "semantic"
3473 checks on basic Yacc support (similarly to what lex3.test does
3475 * tests/lex.test: Don't create useless dummy source file joe.l.
3476 Remove extra blank lines.
3477 * tests/lex4.test: Add trailing `:' command. Do not create dummy
3478 useless lex source file.
3479 * tests/lex2.test: Likewise. Call automake with the `-a' option,
3480 so that it doesn't fail for the absence of `ylwrap' script. Make
3481 grepping of automake stderr stricter.
3482 * tests/yacc7.test: Add trailing `:' command. Enable `errexit'
3483 shell flag earlier (just after having sourced ./defs).
3484 * tests/yacc4.test: Likewise. Also ...
3485 (configure.in): Use pre-populated skeleton set up by ./defs,
3486 instead of writing one from scratch.
3487 Other minor cosmetic changes.
3488 * tests/yacc5.test: Likewise.
3489 * tests/yaccvpath.test: Likewise. Also ...
3490 ($distdir): New variable.
3492 * tests/lex5.test: Likewise.
3493 * tests/lex3.test: Likewise. Check the distdir, rather than
3494 grepping the distribution tarball. Extend the test on the
3495 created binary, and be sure to avoid hangs. Add some comments.
3496 * tests/yacc.test: Use stricter grepping. Add trailing `:'.
3497 * tests/yacc6.test: Likewise.
3498 * tests/yacc3.test: Likewise. Do not create the unused file
3499 `Makefile.sed'. Remove useless rules from Makefile.am. Other
3500 minor cosmetic changes.
3501 * tests/yacc2.test: Make grepping of generated `Makefile.in' and
3502 of automake error messages stricter. Do not redirect output of
3503 grep to /dev/null. Move call to aclocal earlier. Reduce the
3504 number of empty blank lines. Fix a typo in comments.
3505 * tests/yacc8.test: Fixed bugs that reduced the completeness of
3506 the tests. Added trailing `:' command.
3507 (configure.in): Use pre-populated skeleton set up by ./defs,
3508 instead of writing one from scratch.
3509 * tests/yaccpp.test: Test also extensions `.y++', `.ypp', and
3510 `.yxx', rather than only `.yy'.
3511 * tests/Makefile.am (TESTS): Update.
3513 2011-01-09 Stefano Lattarini <stefano.lattarini@gmail.com>
3515 cosmetics: remove trailing whitespaces
3516 * doc/automake.texi: Remove trailing whitespaces.
3517 * tests/cond13.test: Likewise.
3518 * tests/cond14.test: Likewise.
3519 * tests/fort4.test: Likewise.
3520 * tests/fort5.test: Likewise.
3521 * tests/libobj17.test: Likewise.
3522 * tests/suffix7.test: Likewise.
3523 * tests/vtexi2.test: Likewise.
3525 automake: minor fixes in comments
3526 * automake.in: Some minor fixes and enhancements in comments.
3528 2011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3530 Add test coverage for deleted header files.
3531 * tests/depcomp6.test, tests/depcomp7.test: Update tests to
3532 also check for the deleted header bug. If no dependency
3533 tracking mechanism could be found, SKIP rather than exit
3534 successfully. Use GNU style spacing and ANSI C prototypes.
3536 Fix typos in Rule.pm comments.
3537 * lib/Automake/Rule.pm: Fix typos in comments.
3539 docs: split 'amhello Explained' node.
3540 * doc/automake.texi (amhello Explained): Split node ...
3541 (amhello's configure.ac Setup Explained)
3542 (amhello's Makefile.am Setup Explained) : ... into these two.
3543 (Top, Hello World): Adjust, and add @anchor for stable URL links.
3544 Suggestion by Karl Berry in automake bug#7766.
3546 2011-01-08 Karl Berry <karl@freefriends.org>
3547 Eric Blake <eblake@redhat.com>
3549 docs: reference defining directories in amhello node.
3550 * doc/automake.texi (amhello Explained): Point to Autoconf
3551 manual for how to convert directory values into macros.
3552 (Optional): Fix grammar nit.
3554 2011-01-07 Stefano Lattarini <stefano.lattarini@gmail.com>
3556 yacc: "make clean" removes .c and .h files from non-distributed .y
3557 Previously, while automake did *not* distribute C source and header
3558 files derived from non-distributed Yacc sources, it still caused
3559 them to be removed only by "make maintainer-clean" only, and not by
3560 simply "make clean" or "make distclean".
3561 This caused "make distcheck" to fail, unless the developer put
3562 those generated .c and .h files in CLEANFILES or in DISTCLEANFILES
3564 This change fixes this issue, by making non-distributed `.c' and
3565 `.h' files generated by non-distributed Yacc sources cleaned by
3567 * tests/automake.in (lang_yacc_target_hook): Make C source and
3568 header files derived from non-distributed Yacc files cleaned by
3569 "make clean", not only by "make maintainer-clean".
3570 * tests/yacc-clean.test: New test.
3571 * tests/Makefile.am (TESTS): Update.
3574 2011-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
3576 * NEWS: Fix typo (forgotten word).
3578 2011-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
3579 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3581 docs: how to work around checks on invalid primary/directory couples
3582 * doc/automake.texi (Uniform): Document the blessed idiom which can
3583 be used to work around automake checks on invalid primary/directory
3584 couples (such as `lib_PROGRAMS' or `doc_LIBRARIES').
3586 2010-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
3588 Tests: normalize use of the 'errexit' shell flag.
3589 * tests/maken3.test (check_targets): Remove redundant call to
3591 * tests/maken4.test: Likewise.
3592 * tests/ansi5.test: Call 'set -e' just after './defs' has been
3594 * tests/ansi6.test: Likewise.
3595 * tests/ansi7.test: Likewise.
3596 * tests/cond16.test: Likewise.
3597 * tests/cond17.test: Likewise.
3598 * tests/cond18.test: Likewise.
3599 * tests/cond19.test: Likewise.
3600 * tests/cond20.test: Likewise.
3601 * tests/cond21.test: Likewise.
3602 * tests/instdat2.test: Likewise.
3603 * tests/instdir-texi.test: Likewise.
3604 * tests/parallel-tests3.test: Likewise.
3605 * tests/remake1a.test: Likewise.
3606 * tests/ccnoco.test: Likewise, and add trailing `:' command.
3607 * tests/comment4.test: Likewise.
3608 * tests/gcj4.test: Likewise.
3609 * tests/nodist2.test: Likewise.
3610 * tests/nodist3.test: Enable 'errexit' shell flag (this should
3611 have been done in commit v1.11-248-g317e17b, but the relevant
3612 hunk has been forgotten somehow).
3613 * tests/output.test: Likewise.
3614 * tests/gnits2.test: Likewise, and display captured stderr to
3615 script's stderr, not to script's stdout.
3616 * tests/gnits3.test: Likewise. Also, prefer 'cat' over 'echo'
3617 to append to Makefile.am, and really check that the exit status
3618 of "make installcheck" indicates failure.
3620 2011-01-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3622 Sync auxiliary files from upstream.
3623 * lib/config.guess, lib/config.sub, lib/texinfo.tex:
3626 Avoid caching bug in cygnus mode test.
3627 * tests/cygnus-requires-maintainer-mode.test: Remove
3628 autom4te.cache directory before rerunning aclocal, to
3629 remove trace caches.
3631 Fix maintainer-check regression.
3632 * tests/subobj11a.test: Pass DISTCHECK_CONFIGURE_FLAGS in the
3635 Bump copyright years.
3636 * aclocal.in (write_aclocal, version): Bump copyright years.
3637 * automake.in (gen_copyright, version): Likewise.
3638 * doc/automake.texi: Likewise.
3640 2010-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
3642 * NEWS: Add missing blank line between two entries.
3644 2010-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
3646 Improve and extend tests `suffix*.test'.
3647 * tests/suffix.test: Check that suffix rules for C compilation are
3648 only included once. Try also with a static library.
3649 * tests/suffix2.test: Add a new grep to help potential debugging.
3650 Do not run automake with the `--add-missing' options, since we
3651 already create all the needed auxiliary files. Try also *without*
3652 the `no-dependencies' automake option.
3653 * tests/suffix4.test: Make grepping of Makefile.in stricter.
3654 * tests/suffix3.test: Rewritten to run also autoconf, ./configure
3656 * tests/suffix5.test: Likewise.
3657 * tests/suffix6.test: Fix botched recipe indentation (eight spaces
3658 were used instead of a tabulation character). Extend to check
3659 that `.obj' is handled like `.$(OBJEXT)' (as is done for `.o').
3660 Improved parsing & grepping of generated Makefile.in. Other minor
3661 fixes and improvements.
3662 * tests/suffix10.test: Move some checks in Makefile.am. Also run
3664 * tests/suffix12.test: Likewise, and account for VPATH issues in
3665 weaker make implementations.
3666 * tests/suffix11.test: Likewise. Also, run "make distcheck", for
3667 completeness, and related changes.
3668 * tests/suffix8.test: Likewise. Also, do not put `gcc' anymore
3670 * tests/suffix13.test: Do not use the `--force-missing' automake
3671 option unnecessarily.
3672 * tests/suffix6b.test: New test, semantic sister of `suffix6.test'.
3673 * tests/suffix6c.test: Likewise.
3674 * tests/Makefile.am (TESTS): Updated.
3676 2010-12-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3677 Stefano Lattarini <stefano.lattarini@gmail.com>
3679 Work around a bug in file-inclusion mechanism of Solaris make.
3680 * automake.in (handle_single_transform): In the name of the
3681 dependency file: collapse multiple slash characters into a single
3683 * tests/subobj11a.test: New test.
3684 * tests/subobj11b.test: Likewise.
3685 * tests/subobj11c.test: Likewise.
3686 * tests/depcomp8a.test: Likewise.
3687 * tests/depcomp8b.test: Likewise.
3688 * tests/Makefile.am (TESTS): Updated.
3690 Report by Stefano Lattarini, quick fix by Ralf Wildenhues, final
3691 patch and tests by Stefano Lattarini.
3693 2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
3695 Fix two spurious testsuite failures on IRIX 6.5.
3696 * tests/suffix13.test (Makefile.am): Account for VPATH issues on
3697 weaker make implementations (e.g. IRIX 6.5).
3698 * tests/parallel-tests8.test: Likewise, plus a required related
3700 Reported by Ralf Wildenhues. The bugs have been there from the
3701 first versions of the affected test scripts.
3703 2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
3705 docs: cygnus mode doesn't require AM_CYGWIN32 macro.
3706 * doc/automake.texi (Cygnus): Mode 'cygnus' does not require
3707 the AM_CYGWIN32 macro (and indeed hasn't required it since at
3708 least commit Release-1-2-31-g3038064 "merged changes from
3709 Cygnus" of 1997-08-25).
3711 2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
3713 Add some tests on 'cygnus' mode.
3714 * tests/clean2.test: Extend.
3715 * tests/cygnus-check-without-all.test: New test.
3716 * tests/cygnus-dependency-tracking.test: Likewise.
3717 * tests/cygnus-distclean.test: Likewise.
3718 * tests/cygnus-imply-foreign.test: Likewise.
3719 * tests/cygnus-no-dist.test: Likewise.
3720 * tests/cygnus-no-installinfo.test: Likewise.
3721 * tests/cygnus-requires-maintainer-mode.test: Likewise.
3722 * tests/Makefile.am (TESTS): Update.
3724 2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
3726 Fix parallel testsuite run with Zsh.
3727 This change deals with a Zsh incompatibility in the handling
3728 of the special shell variable `$0' in sourced files; this
3729 incompatibility used to cause utter breakage when the
3730 Automake testsuite was run in parallel mode with Zsh as
3731 the $(TEST_LOG_COMPILER).
3732 For more information, please refer to the thread "Fix parallel
3733 testsuite run with zsh" on automake-patches, dated 2010-12-22:
3734 <http://lists.gnu.org/archive/html/automake-patches/2010-12/msg00135.html>
3735 This change works around the problems described above for Zsh 4.3
3736 or later, and offers better error messages (instead of random
3737 failures) for earlier Zsh version.
3738 * tests/README (Supported shells): When describing the manual
3739 workaround about the Zsh incompatibility in the handling of `$0',
3740 tell that it is now needed only with Zsh versions preceding 4.3.
3741 Done also some minor rewordings.
3742 * tests/defs-static.in ($argv0): New variable, offers a workaround
3743 for the Zsh incompatibility in the handling of `$0'.
3744 Abort if that variable cannot be correctly set (can happen only
3745 in older Zsh version).
3746 * tests/defs ($me): Define using `$argv0', not `$0'.
3748 2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
3750 Tests defs: keep track of original $AUTOMAKE and $ACLOCAL values.
3751 This is especially useful for tests which might want to run
3752 automake and aclocal without additional flags and warnings.
3753 * tests/defs-static.in ($original_ACLOCAL): New variable.
3754 ($original_AUTOMAKE): Likewise.
3755 * tests/help.test: Use them.
3756 * tests/help2.test: Likewise.
3757 * tests/help3.test: Likewise.
3758 * tests/help4.test: Likewise.
3759 From a suggestion by Ralf Wildenhues.
3761 2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
3763 distlinksbrk.test: Work around botched "make -k".
3764 * tests/distlinksbrk.test: Run "make" multiple times and grep
3765 its output each time for a single error message, rather than
3766 running "make -k" one single time and grepping its output for
3767 all the expected error messages. This should work around make
3768 implementations with limited (broken?) `-k' support; for more
3769 information, see these subthreads on the automake-patches list:
3770 - 2010-11-15, "Testsuite failures on HP-UX 11.23",
3771 <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00162.html>
3772 - 2010-11-15, "Testsuite failures on IRIX 6.5",
3773 <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00166.html>
3775 2010-12-21 Stefano Lattarini <stefano.lattarini@gmail.com>
3777 Minor improvements to test 'amopts.test'.
3778 * tests/amopts.test: Remove botched comment. Make grepping of
3779 automake stderr slighty stricter. Add trailing `:' command.
3781 2010-12-21 Stefano Lattarini <stefano.lattarini@gmail.com>
3783 backcompat6.test: avoid comments inside recipe commands.
3784 * tests/backcompat6.test: Remove shell comments from makefile rule
3785 commands, as they are not portable to (at least) Tru64 make.
3787 2010-12-21 Stefano Lattarini <stefano.lattarini@gmail.com>
3789 man8.test: avoid comments inside recipe commands.
3790 * tests/man8.test: Remove shell comments from makefile rule
3791 commands, as they are not portable to (at least) Tru64 make.
3793 2010-12-21 Stefano Lattarini <stefano.lattarini@gmail.com>
3795 Fix sed-related buglet in test "subdir5.test"
3796 * tests/subdir5.test: Always terminate text passed to the
3797 `i' sed command with a newline, to work around limitations
3798 in e.g. older OpenBSD sed.
3800 2010-12-21 Stefano Lattarini <stefano.lattarini@gmail.com>
3802 Fix spurious failures in tests on AC_CONFIG_AUX_DIR.
3803 * tests/auxdir7.test: Do not try to needlessly overwrite the files
3804 `install-sh' and `missing'. This avoid spurious failures in "make
3805 distcheck", when those files might be copied as read-only from the
3807 * tests/auxdir8.test: Likewise.
3809 2010-12-18 Stefano Lattarini <stefano.lattarini@gmail.com>
3811 Make test 'posixsubst-script' portable to MinGW/MSYS.
3812 * tests/posixsubst-script.test: Ensure that the generated dummy
3813 scripts really start with a shebang line, to work around a
3814 limitation of 'test -x' on MinGW/MSYS.
3815 Reported by Ralf Wildenhues.
3817 Improve comments in tests `posixsubst*.test'.
3818 * tests/posixsubst-data.test: Improve comment explaining why we
3819 try also empty match suffix.
3820 * tests/posixsubst-extradist.test: Likewise.
3821 * tests/posixsubst-ldadd.test: Likewise.
3822 * tests/posixsubst-libraries.test: Likewise.
3823 * tests/posixsubst-ltlibraries.test: Likewise.
3824 * tests/posixsubst-programs.test: Likewise.
3825 * tests/posixsubst-scripts.test: Likewise.
3826 * tests/posixsubst-sources.test: Likewise.
3827 * tests/posixsubst-tests.test: Likewise.
3828 Suggested by Ralf Wildenhues.
3830 2010-12-18 Stefano Lattarini <stefano.lattarini@gmail.com>
3832 docs: fix blunder in example about python extension modules
3833 * doc/automake.texi (Python): Use `quaternion_la_SOURCES',
3834 not `quaternion_SOURCES', to declare the sources of python
3835 extension module `quaternion.la'.
3837 2010-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
3839 docs: list LTLIBRARIES among Automake primaries
3840 * doc/automake.texi (Uniform): List `LTLIBRARIES' among
3841 the Automake primaries.
3843 2010-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
3844 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3846 Tests defs: requirement 'xsi-shell' must be synced with libtool.
3847 * tests/defs (xsi-shell): Add comment telling to keep the
3848 XSI-conformance checks in sync with libtool.
3850 2010-12-17 Stefano Lattarini <stefano.lattarini@gmail.com>
3852 Minor cleanups in canon7.test.
3853 * tests/canon7.test (_foo_bar_SOURCES): Remove libs.c.
3854 (configure.in): Remove AC_PROG_CXX.
3856 2010-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3858 Avoid false positive in sc_tests_plain_make maintainer-check.
3859 * Makefile.am (sc_tests_plain_make): Ensure to only match full
3860 `make' words. Avoid false positive with remake11.test.
3862 2010-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3864 Fix canon7.test failure.
3865 * tests/canon7.test (_foo_bar_SOURCES): Add foobar.c.
3866 (lib.h, libd.c, libs.c): Use const for constant strings.
3868 2010-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3870 Fix typos in test comments.
3871 * tests/posixsubst-data.test, tests/posixsubst-extradist.test,
3872 tests/posixsubst-ldadd.test, tests/posixsubst-libraries.test,
3873 tests/posixsubst-ltlibraries.test, tests/posixsubst-programs.test,
3874 tests/posixsubst-scripts.test, tests/posixsubst-sources.test,
3875 tests/posixsubst-tests.test: Fix typos.
3877 2010-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
3879 More uses of AS_HELP_STRING in automake macros.
3880 * m4/depend.m4 (AM_DEP_TRACK): Use `AS_HELP_STRING' to format
3881 the help message added to the generated configure.
3882 * m4/dmalloc.m4 (AM_WITH_DMALLOC): Likewise.
3883 * m4/lispdir.m4 (AM_PATH_LISPDIR): Likewise.
3884 * m4/maintainer.m4 (AM_MAINTAINER_MODE): Likewise.
3885 * m4/multi.m4 (AM_ENABLE_MULTILIB): Likewise.
3886 Also, bumped all serial numbers of the modified m4 files.
3888 2010-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
3890 Improve tests on generated portions of configure help screen.
3891 * tests/help-depend.test: Grepping of configure help screen
3892 relaxed to cater for possible line wrapping, and tightened in
3894 * tests/help-depend2.test: Likewise.
3895 * tests/help-dmalloc.test: Likewise.
3896 * tests/help-lispdir.test: Likewise.
3897 * tests/help-maintainer.test: Likewise.
3898 * tests/help-multilib.test: Likewise.
3899 * tests/help-silent.test: Likewise.
3900 * tests/help-upc.test: Likewise.
3901 * tests/help-init.test: Grepping of configure help screen
3904 2010-12-15 Stefano Lattarini <stefano.lattarini@gmail.com>
3906 Extended tests on AC_CONFIG_AUX_DIR.
3907 * tests/auxdir.test: Enable `errexit' shell flag. Prefer `$me'
3908 over hard-coded test name. Use proper m4 quoting. Add trailing
3910 * tests/auxdir2.test: Likewise. Try to call automake also with
3911 the `-a' option, so that it will not fail for spurious reasons.
3912 * tests/auxdir3.test: Add an explanatory comment and a trailing
3914 * tests/auxdir4.test: Prefer `$me' over hard-coded test name.
3915 Make grepping of automake stderr slightly stricter. Also, now
3916 this test just checks about Automake's reaction to unportable
3917 auxiliary directory names (and it has been extended in this
3918 respect). Moved the checks about non-existent auxiliary
3920 * tests/auxdir5.test: ... this new test.
3921 * tests/auxdir6.test: New test.
3922 * tests/auxdir7.test: Likewise.
3923 * tests/auxdir8.test: Likewise.
3924 * tests/auxdir9.test: Likewise.
3925 * tests/Makefile.am (TESTS): Updated.
3927 2010-12-06 Stefano Lattarini <stefano.lattarini@gmail.com>
3929 Tests: extend checks on remake rules.
3930 This adds proper semantical tests (i.e. run make to check the
3931 rebuild rules are correctly triggered) in addition to tentative
3932 grepping of the generated Makefile.in(s).
3933 * tests/remake.test: Enable `errexit' shell flag, and related
3934 changes. Modernize `configure.in'. Add trailing `:' command.
3935 Improve heading comments, and add a reference to new sister test
3937 * tests/remake3.test: Likewise (but with sister test being
3939 * tests/remake2.test: Improve heading comments. Enable `errexit'
3940 shell flag, and related changes. Modernize `configure.in'. Make
3941 grepping of `Makefile.in' slightly stricter. Add trailing `:'
3943 * tests/remake5.test: Also run the `distcheck' target. Add
3944 trailing `:' command. Use proper m4 quoting in configure.in.
3945 * tests/remake4.test: Prefer `$me' over hard-coded test name.
3946 * tests/remake7.test: Use the `configure.in' stub created by
3947 ./defs, rather than writing it from scratch.
3948 * tests/remake6.test: Likewise. Also, add trailing `:' command,
3949 and ensure verbose printing of captured make output.
3950 * tests/remake1a.test: New test, sister of remake.test.
3951 * tests/remake3a.test: New test, sister of remake3.test.
3952 * tests/remake8a.test: New test.
3953 * tests/remake8b.test: Likewise.
3954 * tests/remake9a.test: Likewise.
3955 * tests/remake9b.test: Likewise.
3956 * tests/remake9c.test: Likewise.
3957 * tests/remake9d.test: Likewise.
3958 * tests/remake10a.test: Likewise.
3959 * tests/remake10b.test: Likewise.
3960 * tests/remake10c.test: Likewise.
3961 * tests/remake11.test: Likewise.
3962 * tests/remake12.test: Likewise.
3963 * tests/Makefile.am (TESTS): Updated.
3965 2010-12-11 Stefano Lattarini <stefano.lattarini@gmail.com>
3967 Improve and extend tests on canonicalization.
3968 * tests/canon-name.test: Add trailing `:' command. When writing
3969 configure.in, prefer to use $me instead of hard-coding the test
3971 * tests/canon3.test: Prefer trailing `:' over trailing `Exit 0'.
3972 * tests/canon4.test: Likewise. Make grepping of Makefile.in
3973 stricter. Improve heading comment, and add reference to ...
3974 * tests/canon6.test: ... this new test (sister test of the
3976 * tests/canon.test: Prefer cat + here-doc over echo to append
3977 text to configure.in. Extend grepping of Automake stderr. Add
3978 trailing `:' command.
3979 * tests/canon5.test: Likewise.
3980 * tests/canon7.test: New file, stress test on canonicalization.
3981 * tests/canon8.test: New test, for better coverage (check that
3982 the `@' character is not transliterated in canonicalizations).
3983 * tests/Makefile.am: Updated.
3985 2010-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
3987 Libobj tests: refer to automake bug tracker for limitations.
3988 * tests/libobj15b.test (configure.in): In the comment explaining
3989 why an apparently redundant AC_OUTPUT is indeed needed, refer
3990 to the relevant entry in the Automake bug tracker rather than
3991 describing the bug in detail with a FIXME-style comment.
3992 * tests/libobj15c.test: Likewise.
3993 * tests/libobj20b.test: Likewise.
3995 Libobj tests: do not use `##' automake comments in-line.
3996 * tests/libobj19.test (Makefile.am): Do not use inline `##'
3997 comments in the definition of AUTOMAKE_OPTIONS.
3998 * tests/libobj20c.test: Likewise.
3999 Report by Ralf Wildenhues.
4001 2010-12-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4003 Fix testsuite failure of check12.test without DejaGNU.
4004 * tests/check12.test: Require runtest.
4006 2010-12-12 Stefano Lattarini <stefano.lattarini@gmail.com>
4008 Tests defs: more uses of $top_testsrcdir.
4009 * tests/compile6.test: Use `$top_testsrcdir' instead of
4012 2010-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
4014 Tests required tools: also try `-v' option for GNU compilers.
4015 * tests/defs.in: In the loop on "$required" tools, for gcc
4016 and g++, also run "gcc -v" (resp. "g++ -v"), to get more
4017 information, and for consistency with gcj.
4019 2010-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
4020 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4022 Tests defs: avoid some useless subshells.
4023 * tests/defs: In the loop on "$required" tools: avoid subshells
4026 2010-12-09 Stefano Lattarini <stefano.lattarini@gmail.com>
4028 Extend tests on AC_LIBOBJ and friends.
4029 * tests/aclibobj.test: Removed, superseded by ...
4030 * tests/libobj-basic.test: ... this new test, which runs autoconf,
4031 ./configure and make, to ensure everything really works.
4032 * tests/libobj3.test: Add trailing `:' command. Escape literal
4034 * tests/libobj4.test: Enable `errexit' shell flag, and related
4035 changes. Add trailing `:' command. Use proper m4 quoting.
4036 * tests/ltlibobjs.test: Likewise.
4037 * tests/libobj5.test: Enable `errexit' shell flag, and related
4038 changes. Add trailing `:' command. Make more robust by using
4039 longer filenames to be grepped.
4040 * tests/libobj8.test: Enable `errexit' shell flag, and related
4041 changes. Add trailing `:' command. Use the configure.in
4042 stub provided by ./defs, rather than writing it from scratch.
4043 * tests/libobj2.test: Likewise. Also, add calls to autoconf,
4044 ./configure and make, to ensure everything really works.
4045 * tests/libobj7.test: Likewise, and ensure that at least one
4046 function listed in AC_REPLACE_FUNCTIONS is truly replaced.
4047 * tests/libobj13.test: Make grepping of Automake stderr slightly
4048 stricter. Add trailing `:' command.
4049 * tests/libobj12.test: Likewise. Also, prefer "cat + here-doc"
4050 over "echo" to append to Makefile.am, and some cosmetic changes
4052 * tests/libobj14.test: Call `Exit 1' if sourcing of ./defs fails.
4053 Slighty improve m4 quoting. Add trailing `:' command.
4054 * tests/libobj10.test: Add calls to autoconf, ./configure and
4055 make, to ensure everything really works. Also, remove tests that
4056 nonexistent source for AC_LIBOBJ cause an Automake failure: this
4057 is already checked by ...
4058 * tests/libobj15a.test: ... this new test.
4059 * tests/libobj15b.test: New test, sister test of libobj15a.test,
4060 checks AC_LIBSOURCE instead of AC_LIBOBJ.
4061 * tests/libobj15c.test: New test, sister test of libobj15a.test,
4062 checks AC_LIBSOURCES instead of AC_LIBOBJ.
4063 * tests/libobj11.test: Removed, superseded by ...
4064 * tests/libobj16a.test: ... this new test.
4065 * tests/libobj16b.test: New test, sister test of libobj16a.test,
4066 but using oldish/deprecated idioms.
4067 * tests/libobj17.test: New test.
4068 * tests/libobj18.test: Likewise.
4069 * tests/libobj19.test: Likewise.
4070 * tests/libobj20a.test: Likewise.
4071 * tests/libobj20b.test: Likewise.
4072 * tests/libobj20c.test: Likewise.
4073 * tests/Makefile.am (TESTS): Updated.
4075 2010-12-08 Stefano Lattarini <stefano.lattarini@gmail.com>
4077 Test `$(var:suf=rpl)' expansion in special automake variables.
4078 * tests/posixsubst-data.test: New test.
4079 * tests/posixsubst-extradist.test: Likewise.
4080 * tests/posixsubst-ldadd.test: Likewise.
4081 * tests/posixsubst-libraries.test: Likewise.
4082 * tests/posixsubst-ltlibraries.test: Likewise.
4083 * tests/posixsubst-programs.test: Likewise.
4084 * tests/posixsubst-scripts.test: Likewise.
4085 * tests/posixsubst-sources.test: Likewise.
4086 * tests/posixsubst-tests.test: Likewise.
4087 * tests/Makefile.am (TESTS): Update.
4089 2010-12-07 Stefano Lattarini <stefano.lattarini@gmail.com>
4091 Make tests `colon*.test' more "semantic".
4092 Prefer running configure and make over grepping the generated
4093 files; this is both more correct and less fragile.
4094 * tests/colon.test: Made more "semantic", as described above.
4095 * tests/colon5.test: Likewise.
4096 * tests/colon6.test: Likewise.
4097 * tests/colon7.test: Likewise.
4098 * tests/colon2.test: Likewise, and improve syncing with sister
4100 * tests/colon3.test: Likewise (but with the sister test being
4101 `colon2.test' here).
4103 2010-12-10 Stefano Lattarini <stefano.lattarini@gmail.com>
4105 Extend and improve tests on DejaGnu support.
4106 * tests/dejagnu.test: Do not create useless dummy test script.
4107 Add trailing `:' command. In heading comments, add reference
4109 * tests/check12.test: ... this new "semantic" test, covering
4110 concurrent use of dejagnu tests, simple tests and `check-local'
4112 * tests/dejagnu2.test: Make test more reliable, by avoid weak
4113 grepping of make output. Prefer `cat' over `echo' to append
4114 to configure.in. Quote literal dots in grep regexps. Prefer
4115 `grep -c ...' over `grep ... | wc -l'. Make grepping of
4116 automake stderr slightly stricter. Add trailing `:' command.
4117 * tests/dejagnu3.test: Prefer `cat' over `echo' to append to
4118 configure.in. Check stderr of expected-to-fail "make" call.
4119 Remove extra blank lines from Makefile.am.
4120 * tests/dejagnu4.test: Prefer `cat' over `echo' to append to
4121 configure.in. Prefer `mv -f' over plain `mv' when the target
4122 file already exists. Avoid extra mkdir calls by creating more
4123 directories at once. Better use of blank lines. Check that
4124 the `*.log' and `*.sum' files are created by runtest also when
4126 * tests/dejagnu7.test: Prefer `cat' over `echo' to append to
4127 configure.in. Better use of blank lines. Add a trailing `:'
4129 * tests/dejagnu6.test: Likewise, and give the dejagnu test a
4130 more descriptive name.
4131 * tests/dejagnu5.test: Likewise. Also, simply define package
4132 name to `$me' rather than using a non-obvious sed script to
4133 extract it from `AC_INIT', and write the Makefile.am with only
4135 * tests/Makefile.am (TESTS): Updated.
4137 2010-12-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4139 Avoid running installed automake from 'libtool --help'.
4140 * tests/subobj9.test: Export AUTOCONF and AUTOMAKE.
4141 Together with fixed Libtool, this fixes check-coverage to not
4142 invoke installed automake.
4144 2010-12-06 Stefano Lattarini <stefano.lattarini@gmail.com>
4146 Separate checks on target overriding into multiple test scripts.
4147 * tests/overrid.test: Deleted, its contents separated into ...
4148 * tests/override-suggest-local.test: ... this new test ...
4149 * tests/override-html.test: ... and this new test ...
4150 * tests/override-conditional-1.test: ... and this new test ...
4151 * tests/override-conditional-2.test: ... and this new test (still
4153 * tests/Makefile.am (TESTS, XFAIL_TESTS): Updated.
4155 Enable `set -e' in more tests (plus some tweakings).
4156 * tests/implicit.test: Enable `errexit' shell flag, and related
4157 changes. Add trailing `:' command.
4158 * tests/insh2.test: Likewise.
4159 * tests/instman2.test: Likewise.
4160 * tests/interp.test: Likewise.
4161 * tests/interp2.test: Likewise.
4162 * tests/library.test: Likewise.
4163 * tests/mclean.test: Likewise.
4164 * tests/info.test: Enable `errexit' shell flag, and related
4165 changes. Add trailing `:' command. Remove useless chaff from
4166 generated Makefile.am. Add a "FIXME" comment.
4167 * tests/include.test: Enable `errexit' shell flag, and related
4168 changes. Add trailing `:' command. Prefer cat + here-doc over
4169 echo to append to configure.in. Make tests more robust by using
4170 longer and less common names to grep. Remove an useless call to
4171 echo. Remove an useless subshell.
4172 * tests/header.test: Enable `errexit' shell flag, and related
4173 changes. Use proper m4 quoting. Add excerpts from the original
4174 report of the bug tested for by this script.
4175 * tests/gcj.test: Enable `errexit' shell flag, and related
4176 changes. Use proper m4 quoting. Add trailing `:' command.
4177 * tests/gcj3.test: Likewise.
4178 * tests/ldflags.test: Likewise.
4179 * tests/libtool.test: Likewise.
4180 * tests/listval.test: Likewise.
4181 * tests/javaprim.test: Likewise, and prefer cat + here-doc over
4182 echo to append to configure.in.
4183 * tests/javasubst.test: Likewise.
4184 * tests/discorver.test: Enable `errexit' shell flag. Prefer
4185 trailing `:' over trailing `Exit 0'.
4186 * tests/instdat.test: Enable `errexit' shell flag, and related
4187 changes. Use proper m4 quoting. Avoid useless subshell. Prefer
4188 cat + here-doc over echo to append to configure.in.
4189 * tests/libtool2.test: Enable `errexit' shell flag, and related
4190 changes. Add trailing `:' command. Use the configure.in
4191 stub provided by ./defs, rather than writing it from scratch.
4193 Modernize, improve and/or tweak some test scripts.
4194 * tests/maintclean.test: Use proper m4 quoting. Add trailing `:'
4196 * tests/sinclude.test: Likewise, and add a couple of blank lines,
4198 * tests/make.test: Move setting of `errexit' shell flag earlier in
4199 the script (just after inclusion of ./defs). Use the configure.in
4200 stub created by ./defs, rather than writing it from scratch. Some
4201 cosmetic changes in spacing. Ensure we wait enough time before
4202 touching configure.in to trigger the rebuild rules.
4203 * tests/makej.test: Use `$me' instead of hard-coding the test
4204 name. Add trailing `:' command.
4205 * tests/version7.test: Likewise.
4206 * tests/space.test: Enable `errexit' shell flag, and related
4208 * tests/makevars.test: Likewise. Also, prefer trailing `:' over
4209 trailing `Exit 0', and be more tolerant of white spaces when
4210 grepping Makefile.in.
4212 2010-12-02 Stefano Lattarini <stefano.lattarini@gmail.com>
4214 * tests/silent8.test: Use "|| Exit 1" after ". ./defs".
4216 Enable `set -e' in more tests (plus some tweakings).
4217 * tests/mkinstall.test: Enable `errexit' shell flag, and related
4218 changes. Add a trailing `:' command, if needed.
4219 * tests/mdate2.test: Likewise.
4220 * tests/objc.test: Likewise.
4221 * tests/noinst.test: Likewise.
4222 * tests/outdir.test: Likewise.
4223 * tests/number.test: Likewise.
4224 * tests/pluseq.test: Likewise.
4225 * tests/req.test: Likewise.
4226 * tests/rulepat.test: Likewise.
4227 * tests/specflg6.test: Likewise.
4228 * tests/spell3.test: Likewise.
4229 * tests/parse.test: Likewise, and ...
4230 (configure.in): Use the stub created by ./defs, rather than
4231 writing it from scratch. Remove useless calls to AC_PROG_RANLIB
4233 * tests/mdate4.test: Likewise.
4234 * tests/mkinstall.test: Likewise, and ...
4235 (configure.in): ... drop useless call to `AC_OUTPUT'.
4236 * tests/output.test: Enable `errexit' shell flag, and related
4237 changes. Add a trailing `:' command.
4238 (configure.in): Modernize.
4239 * tests/output2.test: Likewise.
4240 * tests/output3.test: Likewise.
4241 * tests/output4.test: Likewise.
4242 * tests/mdate3.test: Enable `errexit' shell flag, and related
4243 changes. Prefer `$me' over hard-coded test name. Do not move
4244 non-existent or useless files in the build auxiliary directory.
4245 * tests/nodistdir.test: Enable `errexit' shell flag, and related
4246 changes. Prefer trailing `:' over trailing `Exit 0'.
4247 * tests/nodist.test: Likewise. Also, prefer cat + here-doc over
4248 echo to create input test files, and do not create useless dummy
4250 * tests/nodist2.test: Likewise.
4251 * tests/ppf77.test: Enable `errexit' shell flag, with related
4252 changes. Add a trailing `:' command. Do not create useless
4254 * tests/spelling.test: Enable `errexit' shell flag, with related
4255 changes. Add a trailing `:' command. Also, grep Automake error
4257 * tests/specflg3.test: Enable `errexit' shell flag, with related
4258 changes. Avoid unportable use of `-e' option of fgrep. Prefer
4259 trailing `:' over trailing `Exit 0'. Remove extra empty lines,
4260 and cosmetic changes to whitespaces.
4261 * tests/obsolete.test: Enable `errexit' shell flag, with related
4262 changes. Improve verbosity. Other miscellaneous changes.
4264 2010-11-30 Stefano Lattarini <stefano.lattarini@gmail.com>
4266 Improve and extend tests on `:=' variable assignments.
4267 * tests/colneq.test: Avoid redundant use of variable assignments
4268 in Makefile.am. Use command-line automake options instead of
4269 editing AUTOMAKE_OPTIONS in Makefile.am. Make grepping of the
4270 generated Makefile.in slightly stricter. Add a trailing `:'
4272 * tests/colneq2.test: Do not create unneeded dummy files. Run
4273 also autoconf, ./configure and make. Add trailing `:' command.
4274 * tests/colneq3.test: New test, similar to colneq.test, but
4275 running also autoconf, ./configure and make.
4276 * tests/Makefile.am (TESTS): Update.
4278 2010-11-26 Stefano Lattarini <stefano.lattarini@gmail.com>
4280 Remove long-deprecated options --Werror and --Wno-error.
4281 These options has been deprecated at least since commit
4282 "Release-1-6-1b-35-gc037f20", dated 2002-07-06.
4283 * automake.in (parse_arguments): Do not recognize anymore options
4284 `--Werror' and `--Wno-error' as synonyms of respectively `-Werror'
4286 * tests/werror.test: Update: use `-Werror' instead of `--Werror'.
4289 2010-11-25 Stefano Lattarini <stefano.lattarini@gmail.com>
4291 Fix spurious failures in `silent*.test' for $CC != gcc
4292 In some tests on automake-produced silent rules, we forced the
4293 use of gcc depmode to improve testsuite coverage; but this has
4294 unsurprisingly led to spurious failures when some non-GNU C
4295 compilers were used. So we are now careful to require GCC in
4296 tests that force gcc depmode.
4297 From reports by Ralf Wildenhues.
4298 * tests/silent5.test: Test removed, its content split into ...
4299 * tests/silent-many-generic.test, tests/silent-many-gcc.test: ...
4300 these new sister tests, the latter of which forces gcc depmode
4301 and lists "gcc" in $required.
4302 * tests/silentlex.test: Test removed, its content split into ...
4303 * tests/silent-lex-generic.test, tests/silent-lex-gcc.test: ...
4304 these new sister tests, the latter of which forces gcc depmode
4305 and lists "gcc" in $required.
4306 * tests/silentyacc.test: Test removed, its content split into ...
4307 * tests/silent-yacc-generic.test, tests/silent-yacc-gcc.test: ...
4308 these new sister tests, the latter of which forces gcc depmode and
4309 lists "gcc" in $required.
4310 * tests/Makefile.am (TESTS): Updated.
4312 2010-11-21 Stefano Lattarini <stefano.lattarini@gmail.com>
4314 Tests: consistently use "|| Exit 1" after ". ./defs".
4315 * tests/autohdr.test: Use `. ./defs || Exit 1', not bare
4316 `. ./defs', for consistency with other tests.
4317 * tests/autohdr2.test: Likewise.
4318 * tests/autohdr3.test: Likewise.
4319 * tests/autohdr4.test: Likewise.
4320 * tests/cond23.test: Likewise.
4321 * tests/cond24.test: Likewise.
4322 * tests/cond25.test: Likewise.
4323 * tests/cond26.test: Likewise.
4324 * tests/cond27.test: Likewise.
4325 * tests/cond28.test: Likewise.
4326 * tests/cond29.test: Likewise.
4327 * tests/cond30.test: Likewise.
4328 * tests/cond31.test: Likewise.
4329 * tests/cond32.test: Likewise.
4330 * tests/cond33.test: Likewise.
4331 * tests/cond34.test: Likewise.
4332 * tests/cond35.test: Likewise.
4333 * tests/cond36.test: Likewise.
4334 * tests/cond37.test: Likewise.
4335 * tests/cond38.test: Likewise.
4336 * tests/cond39.test: Likewise.
4337 * tests/cond40.test: Likewise.
4338 * tests/cond41.test: Likewise.
4339 * tests/cond42.test: Likewise.
4340 * tests/cond43.test: Likewise.
4341 * tests/cond44.test: Likewise.
4342 * tests/cond45.test: Likewise.
4343 * tests/dollarvar.test: Likewise.
4344 * tests/dollarvar2.test: Likewise.
4345 * tests/hfs.test: Likewise.
4346 * tests/libobj14.test: Likewise.
4347 * tests/percent.test: Likewise.
4348 * tests/percent2.test: Likewise.
4349 * tests/phony.test: Likewise.
4350 * tests/silent.test: Likewise.
4351 * tests/silent2.test: Likewise.
4352 * tests/silent3.test: Likewise.
4353 * tests/silent4.test: Likewise.
4354 * tests/silent5.test: Likewise.
4355 * tests/silent6.test: Likewise.
4356 * tests/silent7.test: Likewise.
4357 * tests/silent9.test: Likewise.
4358 * tests/silentcxx.test: Likewise.
4359 * tests/silentf77.test: Likewise.
4360 * tests/silentf90.test: Likewise.
4361 * tests/silentlex.test: Likewise.
4362 * tests/silentyacc.test: Likewise.
4364 Avoid useless cleaning in some `silent*.test' tests.
4365 * tests/silentf77.test: Removed useless calls to "make clean"
4366 and "make maintainer-clean".
4367 * tests/silentf90.test: Likewise.
4368 * tests/silent3.test: Removed useless call to "make distclean".
4369 * tests/silent4.test: Likewise.
4370 * tests/silent9.test: Likewise.
4372 2010-11-19 Ian Lance Taylor <iant@google.com>
4374 Sync config-ml.in from GCC.
4375 * config-ml.in: Add Go support: treat GOC and GOCFLAGS like other
4376 compiler/flag environment variables.
4378 2010-11-20 Stefano Lattarini <stefano.lattarini@gmail.com>
4380 release-stats: account for more generated tests.
4381 * Makefile.am (release-stats): Be sure to take into account all
4382 the generated tests, by grepping the test scripts to decide which
4383 ones of them are automatically generated.
4385 2010-11-20 Stefano Lattarini <stefano.lattarini@gmail.com>
4387 Code cleanup after removal of option `--output-directory'.
4388 * automake.in ($output_directory): Remove, it's unconditionally
4389 defined to `.' and used only ...
4390 (generate_makefile): ... in this subroutine, which now has been
4391 edited and simplified accordingly.
4393 Remove obsolete automake option `--output-directory'.
4394 This option has been deprecated since version 1.7 (2002/2003).
4395 * automake.in ($output_directory): Define to `.' unconditionally.
4396 (parse_arguments): Remove handling of equivalent options `-o' and
4397 `--output-directory'.
4398 * tests/outdir.test: Removed.
4399 * tests/no-outdir-option.test: New test.
4400 * tests/Makefile.am (TESTS): Updated.
4403 2010-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
4405 Automake::Config: remove extra trailing semicolon.
4406 * lib/Automake/Config.in: Remove extra trailing semicolon.
4408 help4.test: fix botched heading comment.
4409 * tests/help4.test: Fixed the heading comment, since it
4410 didn't correctly describe what checks the testcase was
4411 supposed to perform.
4413 help2.test: add checks on aclocal too.
4414 * tests/help2.test: Check that also `aclocal --version' and
4415 `aclocal --help' work with configure.in and acinclude.m4 both
4418 2010-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
4420 New test on repeated automake options.
4421 * tests/repeated-options.test: New test, check that automake
4422 does not complain on repeated options, nor generate broken or
4423 incorrect makefiles.
4424 * tests/Makefile.am (TESTS): Updated.
4426 2010-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
4428 Fix spurious failures of silent-rules tests with Sun Fortran.
4429 * tests/silentf77.test: Strip from the make output some verbose
4430 messages possibly printed by the SunStudio fortran compilers, to
4431 avoid spurious failures. Add a trailing `:' command.
4432 * tests/silentf90.test: Likewise.
4434 2010-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
4436 Fix spurious failures of silent5.test with Sun Fortran.
4437 * tests/silent5.test: Strip from the make output some verbose
4438 messages possibly printed by the SunStudio fortran compilers,
4439 to avoid spurious failures. This bug has been there from the
4440 very first version of this test script.
4442 2010-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
4444 Fix regression in colon{5,6}.test (failures on AIX 5.3).
4445 * tests/colon5.test: Also substitute `@SHELL@' with `$SHELL' when
4446 post-processing the generated Makefile.in, to work around a bug
4447 of AIX 5.3 make which doesn't allow setting the `$(SHELL)' macro
4448 on the commend line. Calls to `$MAKE' adjusted accordingly.
4449 * tests/colon6.test: Likewise.
4450 Regression introduced in commit v1.11-175-gf9fe878 "Modernize,
4451 improve and/or extend tests `colon*.test", and reported by Ralf
4454 2010-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
4456 Fix regression in ansi.test (failure on AIX 5.3).
4457 * tests/ansi.test: Remove redundant hackish check done using a
4458 hand-postprocessed Makefile.in. This check worked by setting
4459 the `$(SHELL)' macro on the command line of make, but this is
4460 not supported by the AIX 5.3 make implementation.
4461 This bug has been lurking for a long time, and was activated by
4462 commit v1.11-125-gc1f6cdb "Enable `errexit' shell flag in various
4463 tests". Report by Ralf Wildenhues.
4465 2010-11-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4467 backcompat5.test: avoid '##'-style comments inside recipe commands.
4468 * tests/backcompat5.test: Remove double-hash comments
4469 from makefile rule commands, they are not part of the
4470 Automake API. Fixes testsuite failure with Tru64 make.
4472 tests: avoid '##'-style comments inside recipe commands.
4473 * tests/confh.test, tests/confh8.test: Remove
4474 double-hash comments from makefile rule commands, they
4475 are not part of the Automake API.
4477 2010-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4479 tests: work around dash quoting issue in case statements.
4480 * tests/color.test, tests/color2.test: Quote variable in case
4481 pattern, to avoid skipping tests with dash 0.5.5.1.
4483 2010-11-16 Peter Rosin <peda@lysator.liu.se>
4485 Skip MSVC oriented tests if the shell is not capable.
4486 * tests/defs: New required entry 'xsi-shell'.
4487 * tests/ar-lib.test, tests/compile3.test, tests/compile6.test:
4488 Require a XSI capable shell.
4489 Reported by Ralf Wildenhues.
4491 2010-11-15 Peter Rosin <peda@lysator.liu.se>
4493 compile: clear the `eat' variable earlier.
4494 * lib/compile: Clear the `eat' variable earlier.
4495 ($scriptversion): Update.
4496 * tests/compile3.test: Prevent regressions.
4498 2010-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4500 More stable configure output from sanity check.
4501 * m4/sanity.m4 (AM_SANITY_CHECK): Always print check line
4502 about ensuring newer files, even if we don't actually need
4505 2010-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4507 Rebuild menus in the manual.
4508 * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
4509 Thanks to Ian Lance Taylor for the suggestion.
4511 Fix install-strip when $(STRIP) contains several words.
4512 * lib/am/install.am (install-strip): Update comment. Use
4513 separate sub-make invocations for empty and nonempty $(STRIP),
4514 to fix quoting issues.
4515 * tests/strip2.test, tests/strip3.test: New tests.
4516 * tests/Makefile.am (TESTS): Adjust.
4518 2010-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4520 Fix yaccdry.test failure: require bison.
4521 * tests/yaccdry.test: Require bison.
4522 Found by NixOS Hydra.
4524 2010-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
4526 Fix bug in test `backcompat6.test' (MSYS portability).
4527 * tests/backcompat6.test (Makefile.am): Grep the output from the
4528 test program, rather than diffing it, to avoid spurious failures
4529 on MinGW/MSYS due to LF vs. CRLF line endings.
4530 Reported by Ralf Wildenhues.
4532 2010-11-13 Stefano Lattarini <stefano.lattarini@gmail.com>
4534 Deprecate obsolete macro AM_WITH_REGEX.
4535 * m4/regex.m4: Document the `AM_WITH_REGEX' macro as obsolete,
4536 and state that it should be removed two years from now.
4537 (AM_WITH_REGEX): Raise an m4-time warning of the "obsolete"
4538 category when this macro is used.
4539 * doc/automake.texi (Public Macros): Move description of
4540 `AM_WITH_REGEX' from here ...
4541 (Obsolete Macros): ... to here, and declare it as obsolete
4542 and "to be removed in a future version".
4543 * tests/regex-obsolete.test: New test.
4544 * tests/Makefile.am (TESTS): Update.
4546 2010-11-08 Stefano Lattarini <stefano.lattarini@gmail.com>
4548 Improve and extend tests on man pages support.
4549 * tests/man.test: Enable `errexit' shell flag, and related changes.
4550 Make grepping of generated Makefile.in slightly stricter.
4551 * tests/man3.test: Add trailing `:' command.
4552 * tests/man5.test: Prefer cat + here-doc over echo to append to
4554 * tests/man2.test: Likewise, and add trailing `:' command.
4555 * tests/man4.test: More thorough and consistent checking of make
4556 error messages. Place fake `help2man' program in a new `bin'
4557 directory rather than in `.'. Move the checks using the real
4558 `help2man' program to ...
4559 * tests/man6.test: ... this new test, and extend them. This test
4560 passes with GNU make and Solaris make, still fails with BSD make.
4561 * tests/man7.test: New test, extracted from old man4.test, which
4562 checks for a bug in maintainer-clean w.r.t. generated manpages.
4563 * tests/man8.test: New test, extracted from old man4.test, which
4564 checks for a bug in distcheck w.r.t. generated manpages. Passes
4565 with GNU make and Solaris make, still fails with BSD make.
4567 2010-11-08 Stefano Lattarini <stefano.lattarini@gmail.com>
4569 Minor improvements and extensions to various tests.
4570 * tests/defun.test: Also run autoconf and grep the generated
4571 configure to make sure that aclocal truly picks up all the
4573 * tests/compile_f_c_cxx.test: Prefer trailing `:' over trailing
4574 `Exit 0'. Do not create useless dummy source files. Do not set
4575 useless `$(foo_LDADD)' variable in `Makefile.am'. Do not call
4576 useless macro `AC_F77_LIBRARY_LDFLAGS' in `configure.in'.
4577 * tests/compile_f90_c_cxx.test: Likewise.
4578 * tests/suffix10.test: Slightly stricter grepping of make output.
4579 * tests/compile.test: Add trailing `:' command.
4580 * tests/defun2.test: Likewise.
4581 * tests/vars3.test: Likewise.
4582 * tests/vartar.test: Likewise.
4583 * tests/vars.test: Likewise. Also, extend test by checking
4584 that the definition of `MY_FLAGS*' variables is preserved in
4585 the generated `Makefile.in'.
4586 * tests/stamph2.test: Prefer trailing `:' over trailing `Exit 0'.
4587 Use proper m4 quoting in `configure.in'.
4589 2010-11-11 Stefano Lattarini <stefano.lattarini@gmail.com>
4591 Tests defs: improve messages for skipped tests.
4592 * tests/defs: Give meaningful messages about the reasons of a
4593 test skip; this is especially useful as this file is run without
4594 verbose xtraces on. Related reorderings in the code and new
4597 2010-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
4599 Tests defs: move static definitions in a new file `defs-static'.
4600 The new file is meant to be idempotent w.r.t. multiple inclusions.
4601 * tests/defs.in: Removed, its contents split among ...
4602 * tests/defs-static.in: ... this new file ...
4603 * tests/defs: ... and this new file, including the former.
4604 * configure.ac (AC_CONFIG_FILES): Remove `tests/defs', add
4605 `tests/defs-static'.
4606 (AC_CONFIG_LINKS): Add `tests/defs'.
4607 * tests/Makefile.am ($(parallel_tests)): Update.
4608 ($(instspc_tests)): Likewise.
4609 * tests/.gitignore: Update.
4611 Tests defs: $testsbuilddir is now AC_SUBST'ed.
4612 * tests/defs.in ($testsbuilddir): Substitute from @abs_builddir@.
4613 Add sanity check on $testsbuilddir, similar to those on
4614 $testsrcdir and $top_testsrcdir.
4616 Tests defs: do not print message "Running test $0" anymore.
4617 * tests/defs.in: Printing the message "=== Running test $0" at
4618 the beginning of each tests made sense when Automake used the old
4619 test-driver, which sent all the output directly to stdout/stderr.
4620 Now that the parallel test-driver is used, which saves output of
4621 each test in its corresponding log file, that old message is just
4624 Tests defs: rename $curdir -> $testbuilddir
4625 * tests/defs.in: Rename $curdir to $testbuildir, for clarity and
4626 consistency with $testsrcdir and $top_testsrcdir.
4628 Tests defs: prefer "$curdir" over "`pwd`".
4629 * tests/defs.in: We already save the value of `pwd` in $curdir
4630 early in the file, so there no need to recalculate it later, when
4631 the current working directory is not changed.
4633 Tests defs: use `$me' in more error messages.
4634 * tests/defs.in: Also use `$me' in error messages referring to
4635 missing `defs' or `defs.in', since that variable is now defined
4636 before those checks.
4638 Tests defs: do not use `Exit' where plain `exit' suffices.
4639 * tests/defs.in: Use "exit 77" rather than "Exit 77" to skip the
4640 test when required libtool/gettext macros are not found, since
4641 such skips would take place before the exit trap is installed.
4643 Tests defs: improve and extends comments.
4644 * tests/defs.in: Improve and extends some comments, especially in
4645 relation with the changes introduced by the previous reordering.
4647 Tests defs: various reorderings.
4648 * tests/defs.in: Reordered various snippets of code in a
4651 2010-11-09 Stefano Lattarini <stefano.lattarini@gmail.com>
4653 Fix bug in test `backcompat4.test' (stale autom4te cache).
4654 * tests/backcompat4.test: Remove stale autom4te cache directory
4655 before re-running aclocal and automake. Also, since we are at
4656 it, be more verbose in displaying contents of generated files,
4657 to ease debuggability.
4658 Reported by Ralf Wildenhues.
4660 2010-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
4662 Fix a bug in variable concatenation with `+='.
4663 * lib/Automake/VarDef.pm (append): Since the content of the
4664 "appended-to" variable is going to be unconditionally normalized
4665 later, simply separate the appended value with a single whitespace
4666 character, instead of trying to be uselessly smarter by using
4667 escaped newlines. This fixes a bug in which extra backslashes
4668 where erroneously inserted in the variable's final value.
4669 * tests/pluseq11.test: New test, exposing the bug.
4670 * tests/Makefile.am (TESTS): Update.
4671 Reported by Andy Wingo.
4673 2010-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
4675 Modernize, improve and/or tweak various test scripts.
4676 * tests/stamph2.test: Improve m4 quoting in `configure.in', and
4677 prefer trailing `:' over trailing `Exit 0'.
4678 * tests/syntax.test: Escape literal dots in grep regexps.
4679 * tests/copy.test: Enable `errexit' shell flag. Extend test by
4680 checking with `test' utility that the script `install-sh' is
4681 copied, but not symlinked.
4682 * tests/depdist.test: Move setting of `errexit' shell flag earlier
4683 in the script (just after inclusion of ./defs). Avoid obsoleted
4684 constructs in generated `configure.in'. Prefer to do our checks
4685 by running configure and make over grepping Makefile.in.
4686 * tests/target-cflags: Move setting of `errexit' shell flag
4687 earlier in the script (just after inclusion of ./defs). Use the
4688 `configure.in' stub created by `./defs', rather than writing it
4690 * tests/target-clash: Do not uselessly run autoconf.
4691 * tests/ctarget1.test: Renamed ...
4692 * tests/cond-basic.test: ... to this. Use the `configure.in' stub
4693 created by `./defs', rather than writing it from scratch.
4694 Move setting of `errexit' shell flag earlier in the script (just
4695 after inclusion of ./defs). Other minor cosmetic changes.
4696 * tests/Makefile.am (TESTS): Updated.
4698 2010-11-06 Stefano Lattarini <stefano.lattarini@gmail.com>
4700 New tests on obsoleted usages of automake/autoconf macros (such
4701 as AC_INIT, AM_INIT_AUTOMAKE and AC_OUTPUT).
4702 * tests/backcompat.test: New test script.
4703 * tests/backcompat2.test: Likewise.
4704 * tests/backcompat3.test: Likewise.
4705 * tests/backcompat4.test: Likewise.
4706 * tests/backcompat5.test: Likewise.
4707 * tests/backcompat6.test: Likewise.
4708 * tests/init.test: Extended and improved, esp. by trying more
4709 combinations of calls to AC_INIT and AM_INIT_AUTOMAKE with few
4711 * tests/Makefile.am (TESTS): Updated.
4713 2010-11-06 Stefano Lattarini <stefano.lattarini@gmail.com>
4715 Fix bug in rules for creating vala vapi/header files.
4716 * automake.in (lang_vala_finish_target): Add forgotten "fi" in an
4717 if control structure in a generated make rules. Bug introduced
4718 by previous commit `v1.11-221-gd7c1679', and revealed by failure
4719 of test `vala2.test'.
4721 2010-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4723 Fix and document rules to not touch the tree with `make -n'.
4724 * doc/automake.texi (Multiple Outputs): Document the problem of
4725 modifications during dry-run execution, propose solution.
4727 * automake.in (lang_vala_finish_target): Split recipe so the
4728 stamp file is not removed with GNU `make -n'.
4729 (lang_yacc_target_hook): Separate removal of parser output file
4730 and header remaking.
4731 * lib/am/lisp.am ($(am__ELCFILES)): Determine whether -n was
4732 passed to make, take care not to remove any files in that case.
4733 * lib/am/remake-hdr.am (%CONFIG_H%): Separate removal of
4734 %STAMP% file from induced remaking of config header.
4735 * tests/autohdrdry.test, tests/lispdry.test, tests/yaccdry.test:
4737 * tests/Makefile.am (TESTS): Update.
4739 2010-11-05 Stefano Lattarini <stefano.lattarini@gmail.com>
4741 Fix potential bug in generated tests `instpc-*.test'.
4742 This bug is due to the changes introduced by the recently-merged
4743 "tests-init" branch. In that branch, `tests/defs' didn't define
4744 anymore `$srcdir', instead defining directly `$testsrcdir'; but
4745 the generated tests were using `$srcdir', hence the bug.
4746 Luckily, since the Automake parallel test driver automatically
4747 exports `srcdir' to a proper value, that prevented the bug from
4749 * tests/Makefile.am ($(instspc_tests)): In the generated test
4750 scripts, use `$testsrcdir', not `$srcdir'.
4752 2010-11-03 Stefano Lattarini <stefano.lattarini@gmail.com>
4754 Overhauled and modularized tests in `instspc.test'.
4755 The test `instspc.test' was way too big and fragile. Its running
4756 time was very long. It also produced a log that was nearly
4757 unreadable due to its length, making it very difficult to find
4758 out the reason for failures.
4759 Also, it was too much monolithic, with a single (maybe spurious)
4760 failure in a corner case causing the whole test to fail (even if
4761 everything worked as expected in the other 99% of cases).
4762 The present change should solve these problems, by separating
4763 `instspc.test' into many smaller, self-contained, auto-generated
4765 * tests/instspc.test: Removed.
4766 * tests/instspc-tests.sh: New script, fulfilling a double role:
4767 1. it generates a Makefile.am snippet `tests/instspc-tests.am',
4768 containing the definition of a list of new tests which will take
4769 over the older `instspc.test', and
4770 2. it is sourced by said generated tests with proper parameters
4771 pre-set, to run the "meat" of the checks.
4772 This apparent abuse is indeed required because the test generation
4773 code and test execution code are inevitably intertwined.
4774 * tests/Makefile.am ($(srcdir)/instspc-tests.am): Include this
4775 snippet, which (among the other things) defines ...
4776 (instspc_tests): ... this new macro, containing the list of the
4777 newly generated `instspc*.test' tests, and ...
4778 (instspc_xfail_tests): ... this new macro, containing the list
4779 of the `instspc*.test' tests expected to fail.
4780 ($(instspc_tests)): New rule, generates the `instspc*.test' tests.
4781 ($(instspc_tests:.test=.log)): New rule, registers the dependency
4782 of all `instspc*.test' tests on the `instspc-tests.sh' script.
4783 (TESTS): Add `$(instspc_tests)', remove `instspc.test'.
4784 (XFAIL_TESTS): Add `$(xfail_instspc_tests)'.
4785 (EXTRA_DIST): Distribute instspc-tests.sh.
4786 (MAINTAINERCLEANFILES): Added $(instspc_tests).
4787 Other minor cosmetic changes.
4788 * bootstrap: Generate instspc-tests.am.
4789 * tests/.gitignore: Updated.
4791 2010-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4793 Add FAQ entry for bug reporting instructions.
4794 * doc/automake.texi (Reporting Bugs): New section.
4795 (Introduction): Refer to it.
4797 2010-10-07 Peter Rosin <peda@lysator.liu.se>
4799 depcomp: add new one-pass depmode for MSVC 7 and later.
4800 * lib/depcomp: Add new depmodes 'msvc7' and 'msvc7msys' which
4801 make use of the -showIncludes option added in MSVC 7.
4802 * m4/depend.m4 (_AM_DEPENDENCIES): Handle the new depmodes
4803 similarly to 'msvisualcpp' and 'msvcmsys' as MSVC does not
4804 support the -o option.
4806 2010-10-05 Jim Meyering <meyering@redhat.com>
4808 dist-xz, dist-bzip2: don't hard-code -9: honor envvar settings
4809 * lib/am/distdir.am (dist-xz): Do not hard-code xz's -9: that
4810 made it impossible to override. Instead, use its XZ_OPT envvar,
4811 defaulting to -9 if not defined. Thus no change in behavior
4812 when XZ_OPT is not set, and now, this rule honors the setting
4813 of that envvar when it is set. Suggested by Lasse Collin.
4814 (dist-bzip2): Likewise for it's corresponding envvar: BZIP2.
4815 * NEWS (Miscellaneous changes): Mention it.
4816 * doc/automake.texi (The Types of Distributions): Describe the
4817 newly enabled environment variables.
4819 2010-10-04 Stefano Lattarini <stefano.lattarini@gmail.com>
4821 Add support for newer python versions.
4822 * m4/python.m4 (AM_PATH_PYTHON): Add python2.7 and python3.2 to
4823 _AM_PYTHON_INTERPRETER_LIST. Since we are at it, break a long
4824 line and fix indentation.
4826 From a report by Thomas Klausner.
4828 Add test for `AM_WITH_DMALLOC' macro.
4829 * tests/dmalloc.test: New test.
4830 * tests/Makefile.am (TESTS): Update.
4832 Fix nits and bugs in tests `help*.test'.
4833 * tests/help4.test: Fix broken sed commands used to strip `-W...'
4834 flags away from "$AUTOMAKE" and "$ACLOCAL".
4835 * tests/help3.test: Likewise, and fix a botched comment.
4836 * tests/help.test: Likewise. Also, use "AUTOMAKE_fails ..."
4837 instead of "$AUTOMAKE ... && Exit 1", for consistency and to
4838 please maintainer-check.
4839 * tests/help2.test: Likewise.
4841 2010-10-03 Stefano Lattarini <stefano.lattarini@gmail.com>
4842 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4844 Improve tests `help*.test' (also fixes maintcheck failures).
4845 * tests/help.test: To run automake, use `$AUTOMAKE' with all `-W'
4846 flags stripped away rather than hard-coded `automake-$APIVERSION',
4847 to better honour user-overrides. Similarly for aclocal.
4848 * tests/help2.test: Likewise.
4849 * tests/help3.test: Likewise.
4850 * tests/help4.test: Likewise.
4852 2010-10-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4854 tests: fix ar-lib.test for echo that interprets backslashes.
4855 * tests/ar-lib.test: Use printf instead of echo. Avoid test -a.
4856 More robust quoting.
4858 2010-10-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4860 maintainer-check coverage for variables before rules.
4861 * Makefile.am (sc_ensure_testsuite_has_run): Suggest keeping
4862 around the test directories.
4863 (sc_tests_makefile_variable_order): New rule with a heuristic to
4864 catch ordering violations.
4866 Document and fix expansion of variables before rules.
4867 * doc/automake.texi (General Operation): Document that variables
4868 are expanded before rules.
4869 * lib/am/check.am (am__check_post): Reword a bit so it does not
4870 get matched as a rule.
4871 Suggestion by Ben Pfaff.
4873 2010-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4875 Coverage and minor fixes for variable typo detection.
4876 * automake.in (check_typos): Remove `EXTRA_' prefix when
4877 computing canonical name.
4878 * tests/vartypo2.test, tests/vartypos.test: New tests.
4879 * tests/Makefile.am (TESTS): Update.
4881 Implement EXTRA_maude_DEPENDENCIES for programs and libraries.
4882 * automake.in (handle_programs, handle_libraries)
4883 (handle_ltlibraries): Mark EXTRA_*_DEPENDENCIES as recognized.
4884 * doc/automake.texi (Linking, Program and Library Variables)
4885 (LIBOBJS): Document EXTRA_*_DEPENDENCIES.
4886 * lib/am/library.am (%LIBRARY%): Also depend on
4887 $(EXTRA_%XLIBRARY%_DEPENDENCIES).
4888 * lib/am/ltlibrary.am (%LTLIBRARY%): Also depend on
4889 (%XLTLIBRARY%_DEPENDENCIES).
4890 * lib/am/program.am (%PROGRAM%%EXEEXT%): Also depend on
4891 $(EXTRA_%XPROGRAM%_DEPENDENCIES).
4892 * tests/extradep.test, tests/extradep2.test: New tests.
4893 * tests/Makefile.am (TESTS): Update.
4895 Suggested by Eric Blake.
4897 tests: avoid running into timing issues due to sanity change.
4898 * tests/acloca10.test, tests/acloca18.test, tests/aclocal9.test:
4899 Insert strategic sleep before aclocal reruns, to ensure files
4901 * tests/python11.test: Use --force for repeated autotools runs.
4902 Reports from the NixOS Hydra build daemon via Ludovic Courtès.
4904 Fix timestamp issues by ensuring configure takes at least a second.
4905 * m4/sanity.m4 (AM_SANITY_CHECK): If we didn't sleep here,
4906 start a sleep in the background and wait for it to finish
4907 before creating config.status, hopefully fixing all spurious
4908 testsuite failures involving botched time stamps.
4910 Reports by Ludovic Courtès, Peter Breitenlohner, and others.
4912 2010-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4914 Revert "parallel-tests: avoid command-line length limit issue."
4915 This reverts commit 24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835,
4916 because it re-opened the bug fixed by v1.11-10-g218e678.
4918 2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4920 parallel-tests: avoid command-line length limit issue.
4921 * automake.in (handle_tests): New argument $makefile, new
4922 substitution %MAKEFILE%.
4923 (generate_makefile): Adjust.
4924 * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
4925 sanitized TEST_LOGS value as makefile snippet on standard
4926 input to $(MAKE), to avoid exceeding the command line limit on
4929 Report by Bob Friesenhahn.
4931 2010-09-26 Stefano Lattarini <stefano.lattarini@gmail.com>
4933 Extend tests on `--help' and `--version' options.
4934 * tests/help.test: Create a new empty directory and chdir into
4935 it, rather than removing already present files. Run the aclocal
4936 and automake wrapper scripts directly, instead of relying on
4937 $AUTOMAKE and $ACLOCAL. Be sure to correctly match literal dots
4938 in aclocal's and automake's stderr. Add a trailing `:' command.
4939 * tests/help2.test: New test, checking that options `--help' and
4940 `--version' works in directories with broken `configure.in'.
4941 * tests/help3.test: New test, checking that options `--help' and
4942 `--version' take precedence on the other options.
4943 * tests/help4.test: New test, checking that the first among the
4944 `--help' and `--version' options to be specified on the command
4946 * tests/Makefile.am (TESTS): Updated.
4948 2010-09-25 Stefano Lattarini <stefano.lattarini@gmail.com>
4950 Testsuite: Use `$PATH_SEPARATOR', not `:', when extending PATH.
4951 * tests/compile2.test: Do no uselessly (implicitly) repeat the
4952 computation of PATH_SEPARATOR again.
4953 * tests/instmany-mans.test: Use `$PATH_SEPARATOR', not `:', when
4954 extending/redefining PATH.
4955 * tests/instmany-python.test: Likewise.
4956 * tests/instmany.test: Likewise.
4957 * tests/man4.test: Likewise.
4958 * tests/mkinst3.test: Likewise.
4959 * tests/mmodely.test: Likewise.
4960 * tests/multlib.test: Likewise.
4961 * tests/txinfo30.test: Likewise.
4962 * tests/README (Section "Writing test cases" subsection "Do"):
4964 * Makefile.am (sc_tests_PATH_SEPARATOR): New maintainer check.
4965 (syntax_check_rules): Updated.
4967 Testsuite: new variables `$PATH_SEPARATOR' and `$APIVERSION'.
4968 * tests/defs.in ($APIVERSION): New AC_SUBST'd variable.
4969 ($ACLOCAL, $AUTOMAKE): Use it.
4970 ($PATH_SEPARATOR): New AC_SUBST'd variables.
4973 2010-09-22 Stefano Lattarini <stefano.lattarini@gmail.com>
4975 Manual: be more agnostic w.r.t. version control system used.
4976 * doc/automake.texi (Basics of Distribution): Also refer to `.svn'
4977 directories as a type of probably-unwanted files that are copied
4978 regardless when adding directories to EXTRA_DIST.
4979 (The dist Hook): Show a dist-hook example which removes Subversion
4980 `.svn' private directories from distdir, rather than CVS private
4982 (missing and AM_MAINTAINER_MODE): Try to be more agnostic w.r.t.
4983 the version control system used.
4985 Manual: index refer to target "git-dist", not "cvs-dist".
4986 * doc/automake.texi (General Operation): Index the non-standard
4987 example about "git-dist" under the "git-dist" label, not under
4990 Perl modules: remove references to "Automake CVS repository".
4991 * lib/Automake/Channels.pm: Update comments to refer to "Automke's
4992 git repository" rather than to "Automake's CVS repository".
4993 * lib/Automake/Configure_ac.pm: Likewise.
4994 * lib/Automake/FileUtils.pm: Likewise.
4995 * lib/Automake/Struct.pm: Likewise.
4996 * lib/Automake/XFile.pm: Likewise.
4997 * lib/Automake/Version.pm (=head1 DESCRIPTION): Refer to "git
4998 branches" rather than "CVS branches".
5000 Remove obsolete .cvsignore files.
5001 * .cvsignore, doc/.cvsignore, lib/.cvsignore, lib/am/.cvsignore,
5002 lib/Automake/.cvsignore, lib/Automake/tests/.cvsignore,
5003 m4/.cvsignore, tests/.cvsignore: Files deleted. Even when using
5004 savannah's CVS readonly mirror there's no way to commit back to
5005 the real repository, so this files are not worth maintaining or
5008 2010-09-21 Stefano Lattarini <stefano.lattarini@gmail.com>
5010 * m4/dmalloc.m4: Bump serial number and copyright years.
5012 2010-09-20 Stefano Lattarini <stefano.lattarini@gmail.com>
5014 Fix broken link in `AM_WITH_DMALLOC' help screen.
5015 * m4/dmalloc.m4 (AM_WITH_DMALLOC): Refer only to the dmalloc site
5016 `http://www.dmalloc.com', not to the dmalloc tarball there (which
5017 seems to have been removed, substituted by multiple release
5020 2010-09-21 Peter Rosin <peda@lysator.liu.se>
5022 compile: implement library search to support MSVC static linking
5023 * lib/compile (func_cl_wrapper): Implement library search and
5024 -static option so that the user can select whether to prefer
5025 dll import libraries or static libraries. This enables MSVC to
5026 link against dlls generated by libtool without requiring libtool
5027 or workarounds such as -lfoo.dll etc. Makes the tests/static.at
5028 test case in libtool pass.
5029 * tests/compile3.test: Don't trip up if there happens to exist
5030 a "foo" library in the library search path.
5031 * tests/compile6.test: New test, verifying the library search.
5032 * tests/Makefile.am (TESTS): Update.
5034 2010-09-17 Eric Blake <eblake@redhat.com>
5036 Avoid triple-space after period.
5037 * automake.in (handle_single_transform): Avoid 3 spaces at
5039 * ChangeLog.03: Likewise.
5040 * lib/Automake/ChannelDefs.pm: Likewise.
5041 * lib/Automake/Channels.pm (_print_message): Likewise.
5042 * lib/Automake/Rule.pm (rule): Likewise.
5043 * lib/Automake/Variable.pm (var): Likewise.
5044 * lib/am/distdir.am: Likewise.
5045 * tests/insthook.test: Likewise.
5047 2010-09-15 Stefano Lattarini <stefano.lattarini@gmail.com>
5049 Test automake-generated portions of configure help screen.
5050 * tests/help-depend.test: New test.
5051 * tests/help-depend2.test: Likewise.
5052 * tests/help-dmalloc.test: Likewise.
5053 * tests/help-init.test: Likewise.
5054 * tests/help-lispdir.test: Likewise.
5055 * tests/help-maintainer.test: Likewise.
5056 * tests/help-multilib.test: Likewise.
5057 * tests/help-regex.test: Likewise.
5058 * tests/help-silent.test: Likewise.
5059 * tests/help-upc.test: Likewise.
5060 * tests/mmode.test: Remove tests on `configure --help' output,
5061 they are superseded by tests in `help-maintainer.test'.
5062 * tests/Makefile.am (TESTS): Update.
5064 2010-09-14 Stefano Lattarini <stefano.lattarini@gmail.com>
5066 * tests/README: Don't put GCS mandated tools in $required.
5068 2010-09-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5070 * HACKING: Hint at old commits with `git describe' output.
5072 2010-09-14 Stefano Lattarini <stefano.lattarini@gmail.com>
5074 Prefer `$(am__cd)' to plain `cd' in our Makefiles.
5075 * Makefile.am (recheck, dist-hook, git-dist, path-check, fetch)
5076 (release-stats): Use `$(am__cd)' rather than plain `cd'.
5077 * tests/Makefile.am ($(srcdir)/parallel-tests.am): Likewise.
5079 2010-09-12 Stefano Lattarini <stefano.lattarini@gmail.com>
5081 Fix regression in test `colon4.test'.
5082 * tests/colon4.test: Fix botched editing to `configure.in'
5083 that made the test useless. Since we are at it, improve
5084 comments and make grepping of generated Makefile.in slightly
5086 Regression introduced by change "Modernize, improve and/or
5087 extend tests `colon*.test" (Stefano Lattarini, 2010-08-08).
5089 2010-09-08 Stefano Lattarini <stefano.lattarini@gmail.com>
5091 Do not require "gzip" explicitly in tests.
5092 The gzip utility is simply expected to be present on any decent
5093 target system for Automake. So it's pointless to put it in
5095 * tests/install2.test ($required): Do not require "gzip".
5096 * tests/lex3.test: Likewise.
5097 * tests/pr9.test: Likewise.
5098 From a suggestion by Ralf Wildenhues.
5100 2010-09-09 Stefano Lattarini <stefano.lattarini@gmail.com>
5102 Use AS_HELP_STRING in AM_SILENT_RULES.
5103 * m4/silent.m4 (AM_SILENT_RULES): Use `AS_HELP_STRING' to format
5104 help message regarding configure options `--enable-silent-rules'
5105 and `--disable-silent-rules'. Also throw in a couple of cosmetic
5106 changes in the related `case' statement (indentation, balancing
5109 From a report by Jeff A. Daily.
5111 2010-09-08 Stefano Lattarini <stefano.lattarini@gmail.com>
5113 Make some `confh*.test' tests more "semantic" (plus tweakings).
5114 * tests/confh.test: Run "autoconf", "configure" and "make check",
5115 instead of munging/grepping the generated `Makefile.in'.
5116 * tests/confh4.test: Relax the grepping of Makefile.in w.r.t.
5117 white spaces. Do not create useless dummy source file `foo.c'
5118 and useless dummy header file `acconfig.h'.
5119 (configure.in): Remove superfluous call to `AC_OUTPUT'.
5120 * tests/confh6.test: Add trailing `:' command.
5121 * tests/confh7.test: In comments, add reference to ...
5122 * tests/confh8.test: ... this new test, "semantic" sister
5124 * tests/Makefile.am (TESTS): Updated.
5125 Prompted by a report from Ralf Wildenhues.
5127 2010-09-08 Stefano Lattarini <stefano.lattarini@gmail.com>
5129 Remove useless whitespace padding in XFAIL_TESTS definition.
5130 * tests/Makefile.am (XFAIL_TESTS): Remove whitespace padding.
5132 2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5134 parallel-tests: avoid command-line length limit issue.
5135 * automake.in (handle_tests): New argument $makefile, new
5136 substitution %MAKEFILE%.
5137 (generate_makefile): Adjust.
5138 * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
5139 sanitized TEST_LOGS value as makefile snippet on standard
5140 input to $(MAKE), to avoid exceeding the command line limit on
5143 Report by Bob Friesenhahn.
5145 Posix 2008 requires make to set errexit.
5146 * lib/am/check.am: Update comment.
5148 2010-09-06 Stefano Lattarini <stefano.lattarini@gmail.com>
5150 Tests defs: remove variable $testaclocaldir.
5151 * tests/defs.in ($testaclocaldir): Removed.
5152 * tests/aclocal.test: Use `$top_testsrcdir/m4' directly, not
5155 Tests defs: $srcdir and $top_srcdir renaming.
5156 * tests/defs.in ($srcdir): Remove, define $testsrcdir directly.
5157 * tests/Makefile.am ($(parallel_tests)): Generation of derived
5160 Tests defs: new variable $top_testsrcdir.
5161 * tests/defs.in ($top_testsrcdir): Define unconditionally
5162 to @abs_top_srcdir@. Use it throughout.
5163 * tests/ar-lib.test: Use `$top_testsrcdir' instead of
5165 * tests/auxdir.test: Likewise.
5166 * tests/compile.test: Likewise.
5167 * tests/compile2.test: Likewise.
5168 * tests/compile3.test: Likewise.
5169 * tests/compile5.test: Likewise.
5170 * tests/mdate6.test: Likewise.
5171 * tests/mkinst3.test: Likewise.
5172 * tests/multlib.test: Likewise.
5173 * tests/txinfo22.test: Likewise.
5175 Tests defs: $srcdir is unconditionally substituted.
5176 * tests/defs.in ($srcdir): Define unconditionally to @abs_srcdir@.
5177 Remove code for $srcdir normalization, which is now useless.
5179 2010-09-02 Stefano Lattarini <stefano.lattarini@gmail.com>
5181 Tests defs: make spacing more consistent.
5182 * tests/defs.in: Make spacing more consistent in indentation.
5183 Especially, indent using only spaces, not tabs. Also, move
5184 a comment to a better position.
5186 Improve code for requiring libtool and gettext in tests.
5187 * tests/defs.in: Stricter (and more correct) detection of wheter
5188 libtool, libtoolize and/or gettext are in $required.
5191 2010-08-27 Stefano Lattarini <stefano.lattarini@gmail.com>
5193 Fix bug in test missing6.test.
5194 * tests/missing6.test: Fix the hack used to edit `configure.in',
5195 to avoid producing a configure script that breaks with shells
5196 that do not support $LINENO. Also throw in a couple of cosmetic
5199 2010-09-02 Peter Rosin <peda@lysator.liu.se>
5201 Make ar-lib support backslashed files in archives.
5202 * lib/ar-lib: If an archive member contains a backslash, make sure
5203 it is escaped when the archive member is extracted.
5204 * tests/ar-lib.test: Test the above.
5206 2010-08-31 Peter Rosin <peda@lysator.liu.se>
5208 Do file name conversion for object files in the compile wrapper.
5209 * lib/compile (func_cl_wrapper): Do file name conversion for object
5210 files (i.e. extensions .obj, .OBJ, .o and .O) if needed.
5211 * tests/compile4.test: Test the above.
5213 2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5215 Speed up removal of auxiliary linker output files for ltlibraries.
5216 * lib/am/ltlib.am (clean-%DIR%LTLIBRARIES): Rewrite using just
5217 one `rm' invocation.
5218 Report by Bob Friesenhahn.
5220 Improve robustness of mdate-sh script.
5221 * lib/mdate-sh: Sanitize zsh behavior on startup, to ensure
5222 $ls_command is word-split properly upon invocation.
5223 (error): New function.
5224 (main): Use it. Improve error checking to avoid endless loop
5225 in case $ls_command gave bogus output. Fix eval quotation.
5226 * tests/mdate6.test: New test, to expose eval quotation error.
5227 * tests/Makefile.am: Update.
5229 2010-08-18 Stefano Lattarini <stefano.lattarini@gmail.com>
5231 Fix potential regressions in depcomp{3,5}.test.
5232 * tests/depcomp3.test: Do not uselessly escape the character `$'
5233 in makefile rules, when it's used to expand a make macro.
5234 * tests/depcomp5.test: Likewise.
5236 2010-08-17 Stefano Lattarini <stefano.lattarini@gmail.com>
5237 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5239 Docs: clarify how to avoid automatic dependencies tracking.
5240 * doc/automake.texi (Automatic dependency tracking): Mention that
5241 automatic dependencies tracking is enabled by default, but that
5242 the package developer can disable it altogether. Add a reference
5243 to the proper section for a more in-depth explanation.
5245 Fix typo in manual (`Makefile.in' instead of `Makefile.am').
5246 * doc/automake.texi (Automatic dependency tracking): Fix typo.
5248 2010-08-16 Bruno Haible <bruno@clisp.org>
5250 Don't hide the table of contents.
5251 * doc/automake.texi: Move the table of contents to the beginning.
5253 2010-08-16 Peter Rosin <peda@lysator.liu.se>
5255 Optimize compile script on MSYS.
5256 * lib/compile (func_file_conv): Add new argument 'lazy' which
5257 takes an optional list of conversion types where the requested
5258 conversion isn't needed.
5259 (func_cl_wrapper): Take advantage of the above for cases where
5260 MSYS is doing the conversion for us.
5261 Suggested by Ralf Wildenhues.
5263 2010-08-16 Peter Rosin <peda@lysator.liu.se>
5265 Support more C++ file extensions for MSVC in the compile script.
5266 * lib/compile (func_cl_wrapper): MSVC only recognizes the .cpp
5267 file extension as C++, unless it's given a hint. So hint about
5268 .cc, .CC, .cxx, .CXX, c++ and C++. Also do path conversion on
5269 .c, .cpp, .CPP, .lib, .LIB and .Lib files.
5270 * tests/compile3.test: Test the C++ hinting.
5272 2010-08-12 Peter Rosin <peda@lysator.liu.se>
5274 Enable the use of "link -lib" as the wrapped archiver.
5275 * lib/ar-lib: Enable the use of "link -lib" as the wrapped
5276 archiver, as well as allowing some other options to be passed
5277 through to the wrapped archiver.
5278 * tests/ar-lib.test: Test the above.
5280 2010-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
5282 Tweak and/or extend some `acloca*.test' tests.
5283 * tests/aclocal8.test: Ensure verbose printing of captured
5285 * tests/aclocal.test: Likewise. Also, add trailing `:'
5287 * tests/acloca19.test: Likewise.
5288 * tests/aclocal5.test: Add trailing `:' command, and prefer
5289 `$me' over hard-coded test name.
5290 * tests/aclocal6.test: Likewise.
5291 * tests/aclocal18.test: Add trailing `:' command, and make
5292 some grepping slightly stricter.
5293 * tests/acloca14.test: Likewise. Also, prefer `diff' over
5294 `cmp', and add some "cosmetic" blank lines.
5296 2010-08-09 Stefano Lattarini <stefano.lattarini@gmail.com>
5298 Tweak and extend tests `pr[!0-9]*.test'.
5299 * tests/primary3.test: Add trailing `:' command.
5300 * tests/primary.test: Make grepping of Automake's stderr stricter.
5301 Also, add trailing `:' command, and cosmetic changes in spacing.
5302 * tests/primary2.test: Likewise.
5303 * tests/prefix.test: Enable `errexit' shell flags, and related
5304 changes. Add a trailing `:' command.
5305 * tests/proginst.test: Likewise.
5307 Modernize, improve and extend tests for PR (`pr[0-9]*.test').
5308 * tests/pr2.test: Add trailing `:' command.
5309 * tests/pr229.test: Likewise.
5310 * tests/pr401.test: Likewise.
5311 * tests/pr401b.test: Likewise.
5312 * tests/pr401c.test: Likewise.
5313 * tests/pr300-prog.test: Likewise, plus cosmetic changes in
5315 * tests/pr300-lib.test: Likewise.
5316 * tests/pr300-ltlib.test: Likewise, and ensure verbose printing
5317 of captured make stdout.
5318 * tests/pr211.test: Add trailing `:' command. Also, use the
5319 `configure.in' stub created by ./defs, rather than writing it
5321 * tests/pr204.test: Likewise, plus cosmetic spacing changes.
5322 * tests/pr287.test: Likewise, and move setting of `errexit' shell
5323 flag earlier in the script (just after inclusion of ./defs).
5324 * tests/pr220.test: Make grepping of Automake's stderr stricter.
5325 Also, add trailing `:' command, and cosmetic changes in spacing.
5326 * tests/pr224.test: Move setting of `errexit' shell flag earlier
5327 in the script (just after inclusion of ./defs). Do not export
5328 `CC=gcc' to configure explicitly (it's already exported globally
5329 in ./defs, since we have "gcc" in $required). Use the stub for
5330 `configure.in' created by ./defs, rather than writing it from
5331 scratch. Do not create dummy files required by "gnu" mode (e.g.
5332 README, NEWS), since we run automake in foreign mode anyway.
5333 * tests/pr72.test: Enable `errexit' shell flags, and related
5334 changes. Extend existing checks a bit.
5335 * tests/pr9.test: Likewise. Also, avoid obsolescent constructs in
5336 the generated `configure.in', and extend existing checks over the
5337 generated tarball a bit.
5338 * tests/pr87.test: Enable `errexit' shell flags, and related
5339 changes. Add a trailing `:' command. Also, do not create dummy
5340 files required by "gnu" mode (e.g. README, NEWS), since we run
5341 automake in foreign mode anyway.
5342 * tests/pr243.test: Avoid obsolescent constructs in the generated
5343 `configure.in'. Enable the `errexit' shell flag, and related
5344 changes. Cosmetic changes to spacing, add trailing `:' command,
5345 and add a "FIXME" comment.
5346 * tests/pr266.test: Likewise, and add explicit command line switch
5347 `--enable-dependency-tracking' to the ./configure call.
5348 * tests/pr279.test: Avoid obsolescent constructs in the generated
5349 `configure.in'; also, use the `configure.in' stub created by
5350 ./defs, rather than writing it from scratch. Enable `errexit'
5351 shell flag, and related changes. Add trailing `:' command.
5352 * tests/pr279-2.test: Likewise, and make grepping of Makefile.in
5354 * tests/pr307.test: Move setting of `errexit' shell flag earlier
5355 in the script (just after inclusion of ./defs). Escape literal
5356 dots in grep regular expressions. Also, add a trailing `:'
5357 command, and cosmetic changes to spacing.
5359 Tests for PR: add excerpts from original bug report, for clarity.
5360 * tests/pr2.test: Ditto.
5361 * tests/pr9.test: Likewise.
5362 * tests/pr72.test: Likewise.
5363 * tests/pr87.test: Likewise.
5364 * tests/pr211.test: Likewise.
5365 * tests/pr220.test: Likewise.
5366 * tests/pr224.test: Likewise.
5367 * tests/pr229.test: Likewise.
5368 * tests/pr243.test: Likewise.
5369 * tests/pr266.test: Likewise.
5370 * tests/pr279.test: Likewise, and tell to keep it in sync
5371 with its sister test.
5372 * tests/pr279-2.test: Likewise.
5374 2010-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
5376 Tweak, extend and improve tests `cond[a-z]*.test'.
5377 * tests/condd.test: Add trailing `:' command. Typofix in
5379 * tests/condhook.test: Make sure target `install-data-hook' is
5380 not called by `make install', but that data files are installed.
5381 Use proper m4 quoting in configure.in. Add trailing `:' command.
5382 * tests/condhook2.test: New test, sister test of condhook, with
5384 * tests/condinc2.test: Use proper m4 quoting in configure.in.
5385 Prefer trailing `:' command over trailing `Exit 0'.
5386 * tests/condman2.test: Enable errexit shell flag, and related
5387 changes. Add trailing `:' command.
5388 * tests/condman.test: Likewise. Also, do not create useless
5389 dummy manpages, and use proper m4 quoting in configure.in.
5390 * tests/condman3.test: New test, similar to condman.test, but
5391 it also runs ./configure and "make install", and check the
5393 * tests/Makefile.am (TESTS): Updated.
5395 Modernize, improve and/or extend tests `colon*.test.
5396 * tests/colon.test: Rely on the `configure.in' stub created by
5397 `./defs', rather than writing one from scratch. Do not create
5398 a useless dummy file. Add trailing `:' command.
5399 * tests/colon4.test: Enable the `errexit' shell flag, and
5400 related changes. Rely on the `configure.in' stub created by
5401 `./defs', rather than writing one from scratch.
5402 * tests/colon7.test: Enable `errexit' shell flag, and related
5403 changes. Improve the generated `configure.in' file. Add
5404 trailing `:' command.
5405 * tests/colon2.test: Likewise. Also, add some new checks.
5406 * tests/colon5.test: Improve the generated `configure.in' file.
5407 Add new, much deeper checks. Add trailing `:' command.
5408 * tests/colon6.test: Likewise.
5409 * tests/colon3.test: Add trailing `:' command. Remove useless
5410 comments and echos. Improve the generated `configure.in' file.
5411 make some grepping tests stricter. Add a "FIXME" comments about
5412 planned improvements.
5414 Improve and extend tests `asm*.test'.
5415 * tests/asm.test: Use configure.in stub generated by ./defs,
5416 and avoid obsoleted autoconf constructs. Make grepping of
5417 Automake stderr stricter. Do not create useless source file.
5418 Improve verbose messages. Minor cosmetic changes. Tell to
5419 keep it in sync with other sister tests asm*.test.
5420 * tests/asm2.test: Likewise.
5421 * tests/asm3.test: Likewise.
5423 Modernize, improve and/or extend test scripts `conf*.test'.
5424 * tests/confh5.test: Cosmetic changes.
5425 * tests/conff.test: Likewise.
5426 * tests/confdeps.test: Likewise.
5427 * tests/conflnk.test: Likewise.
5428 * tests/conflnk2.test: Likewise.
5429 * tests/confsub.test: Likewise.
5430 * tests/confvar.test: Likewise, and make grepping of Makefile.in
5432 * tests/confvar2.test: Likewise.
5433 * tests/conflnk3.test: Cosmetic changes. Re-enable a temporarily
5434 disabled test (which didn't work with autoconf <= 2.59, but now we
5435 are requiring autoconf 2.62, so...)
5436 * tests/conflnk4.test: Cosmetic changes, and extend existing tests
5437 accordingly to "TODO" comments.
5438 * tests/conff2.test: Make grepping of Automake's stderr stricter.
5439 Add some comments explaining why we don't use the `configure.in'
5440 stub preset be ./defs.
5441 * tests/confh.test: Use the `configure.in' stub created by ./defs,
5442 rather than writing one from scratch, and do not call AC_OUTPUT.
5443 Enable `errexit' shell flag, and related changes. Prefer diff over
5444 cmp to compare text files. Prefer perl over sed to fetch the value
5445 of $(DIST_COMMON) from Makefile.in. Make grepping of the contents
5446 of $(DIST_COMMON) stricter.
5447 * tests/confh4.test: Use the `configure.in' stub created by ./defs,
5448 rather than writing one from scratch. Make grepping of Makefile.in
5450 * tests/confh5.test: Make grepping of `config.h' stricter. Add a
5452 * tests/configure.test: Avoid obsolescent constructs in generated
5453 `configure.ac'. Do not write `configure.in' two times. Escape
5454 literal dots in grep regular expressions.
5455 * tests/confincl.test: Enable `errexit' shell flag, and related
5456 changes. Prefer fgrep over grep. Other cosmetic changes.
5457 * tests/config.test: Renamed to ...
5458 * tests/confh6.test: ... this. Fix m4 quoting in `configure.in',
5459 and make grepping of `config.h' and `config.h.in' stricter.
5460 * tests/conf2.test: Renamed ...
5461 * tests/confh7.test: ... to this. Use the `configure.in' stub
5462 created by ./defs, rather than writing one from scratch. Try to
5463 run the checks both with and without AC_PROG_CC and AC_OUTPUT in
5465 * tests/Makefile.am (TESTS): Updated.
5467 Minor improvements and fixes in tests `depcomp*.test'.
5468 * tests/depcomp.test: Do not create useless dummy source files.
5469 Add a trailing `:' command.
5470 * tests/depcomp2.test: Use `unset' on the CFLAGS variable to ensure
5471 it's not in in the environment, rather than exporting it with an
5472 empty value. Do not pass CC=gcc to configure, as that's already
5473 done in ./defs since we have gcc in $required. Ensure verbose
5474 printing of captured stderr, and normalize its checking. Add a
5475 trailing `:' command.
5476 * tests/depcomp3.test: Quote literal dots and dollar characters in
5477 grep regexps. Always use `: >' rather than `touch' to create empty
5478 files. Explicitly declare phony targets as such in the created
5479 Makefile.am. Add a trailing `:' command.
5480 * tests/depcomp4.test: Quote literal dots and dollar characters in
5481 grep regexp. Explicitly declare phony targets as such in the
5482 created Makefile.am. Ensure verbose printing of captured makes'
5483 stoud/stderr. Add a trailing `:' command.
5484 * tests/depcomp5.test: Move setting of `errexit' shell flag earlier
5485 in the script (just after inclusion of ./defs). Quote literal dots
5486 and dollar characters in grep regexps. Explicitly declare phony
5487 targets as such in the created Makefile.am. Add a trailing `:'
5489 * tests/depcomp6.test: Consistently use m4 quoting in the generated
5490 configure.in. Cosmetic fixes to spacing. Make the "dummy" `if'
5491 statement required by OpenBSD's sh `set -e' more robust, and add
5492 explanatory comments to it.
5493 * tests/depcomp7.test: Likewise, and add a trailing `:' command.
5495 Separate failing part of test `all.test'.
5496 * tests/all.test: Keep only (x)failing part of the test. Working
5497 checks moved out to ...
5498 * tests/all2.test: ... this new test.
5499 * tests/Makefile.am (TESTS): Updated.
5501 Modernize, improve and extend tests `subobj*.test'.
5502 * tests/subobjname.test: Add trailing `:' command.
5503 * tests/subobj.test: Make grepping of `Makefile.in' stricter.
5504 Escape literal dots in grep regexps.
5505 * tests/subobj2.test: Add trailing `:' command. Do not use the
5506 unportable fgrep option `-e'.
5507 * tests/subobj3.test: Add trailing `:' command.
5508 (configure.in): Use proper m4 quoting, and avoid obsolescent
5510 * tests/subobj8.test: Likewise. Also, enable `errexit' shell
5511 flag, with related changes
5512 * tests/subobj4.test: Likewise. Also, make grepping of
5513 `Makefile.in' stricter.
5514 * tests/subobj5.test: Add trailing `:' command. Move setting of
5515 `errexit' shell flag earlier in the script (just after inclusion
5517 (configure.in): Use the stub created by `./defs', rather than
5518 writing it from scratch, and avoid obsolescent constructs.
5519 * tests/subobj6.test: Add trailing `:' command. Move setting of
5520 `errexit' shell flag earlier in the script (just after inclusion
5521 of ./defs). Do not create useless dummy ac-init file `f'.
5522 * tests/subobj7.test: Do not create useless dummy ac-init file
5524 (configure.in): Use the stub created by `./defs', rather than
5525 writing it from scratch, and avoid obsolescent constructs.
5526 * tests/subobj9.test: Move setting of `errexit' shell flag earlier
5527 in the script (just after inclusion of ./defs). Fail the test if
5528 `make distcheck' fails. Ensure verbose printing of captured make
5529 stdout. Avoid useless fork by doing simple grep instead of using
5530 test -n "`COMMAND | grep ...`".
5531 (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
5532 (Makefile.am): Explicitly mark target "print" as phony.
5533 * tests/subobj10.test: Removed duplicated call to `set -e'. Add
5534 trailing `:' command.
5535 (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
5537 Remove a couple of obsoleted tests.
5538 * tests/fpinstall.test: Removed.
5539 * tests/fpinst2.test: Likewise.
5540 * tests/Makefile.am (TESTS): Updated.
5542 Bootstrap: updated HACKING entry.
5543 * HACKING ("Working with git"): Explain how to override the
5544 autoconf and autom4te programs used by the bootstrap process.
5547 * bootstrap: Do not remove `lib/Automake/Config.pm' anymore,
5548 since we don't generate it. Correctly quote arguments of
5549 `eval' builtin. Fixed a botched error message. Removed an
5552 Bootstrap: don't search perl in $PATH.
5553 * bootstrap: Do not explicitly search perl in $PATH anymore.
5554 ($PATH_SEPARATOR): Removed, it's no more needed.
5556 Bootstrap: let the user choose which autoconf to use.
5557 * bootstrap ($AUTOCONF): New variable, from the environment.
5558 ($AUTOM4TE): Likewise, for clarity.
5559 Use "$AUTOCONF" instead of calling "autoconf" directly.
5561 Minor improvements to tests ar*.test.
5562 * tests/ar.test: Add trailing `:' command.
5563 * tests/ar2.test: Likewise, and make grepping of generated
5564 Makefile.in stricter.
5566 2010-08-06 Peter Rosin <peda@lysator.liu.se>
5568 Add new auxiliary 'ar-lib' script, wrapping Microsoft lib.
5569 * lib/ar-lib: New auxiliary script.
5570 * lib/Makefile.am: Add above.
5571 * tests/ar-lib.test: New test.
5572 * tests/Makefile.am: Add above.
5573 * automake.in (@common_files): Distribute the 'ar-lib' script.
5574 * doc/automake.texi (Auxiliary Programs): Mention the new
5576 (Optional): Mention 'ar-lib' in AC_CONFIG_AUX_DIR.
5579 2010-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5581 Fix shell pattern negation in compile script.
5582 * lib/compile (func_file_conv): Use `!' not `^' for pattern
5585 2010-08-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5587 Fix maintainer-check failure.
5588 * tests/cond5.test: Quote sleep argument, this isn't about
5589 time stamp differences.
5591 Sync auxiliary files from upstream.
5592 * lib/config.guess, lib/config.sub, lib/texinfo.tex:
5595 2010-08-06 Stefano Lattarini <stefano.lattarini@gmail.com>
5597 Work around a nasty bug (segfault) of Solaris make.
5598 * lib/am/check.am (recheck, recheck-html): Trim trailing spaces
5599 from $list, to avoid triggering a nasty bug (potential segfault)
5602 2010-08-06 Peter Rosin <peda@lysator.liu.se>
5604 Make cond5.test more robust on MSYS.
5605 * tests/cond5.test: Add delay before the first kill attempt to
5606 cater for problems with MSYS bash.
5608 2010-08-01 Peter Rosin <peda@lysator.liu.se>
5610 Wrap some MSVC options in the compile script.
5611 * lib/compile: MSVC supports naming the output file, the option
5612 is just not called -o, so transform -o into the appropriate form
5613 for MSVC. Also wrap some other options while at it (-L, -l, -Wl,
5614 -Xlinker and -I) and convert file names to windows form where
5615 needed for those options to make MSVC more usable in an
5616 autotooled environment.
5617 * doc/automake.texi (Auxiliary Programs): Document the above
5618 extension of the compile script.
5620 * tests/defs.in: New required entry 'cl'.
5621 * tests/compile3.test: New test.
5622 * tests/compile4.test: New test.
5623 * tests/compile5.test: New test.
5624 * tests/Makefile.am: Update.
5626 2010-07-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5628 Add example git work flow; discuss merge --log in HACKING.
5630 Suggestion by Stefano Lattarini.
5632 Add more hints for debugging make rules.
5633 * doc/automake.texi (Debugging Make Rules): Show command to find
5634 out expanded values of variables; point to makefile debugger.
5636 Prompted by suggestion from Ludovic Courtès and Andy Wingo.
5638 2010-07-27 Patrick Welche <prlw1@cam.ac.uk> (tiny change)
5640 Fix typo in the manual.
5641 * doc/automake.texi (Scripts): Fix typo.
5643 2010-07-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5645 Document current policy for development with git.
5646 * HACKING (Working with git): Overhaul.
5647 Prompted by suggestion from Stefano Lattarini.
5649 Fix AM_COND_IF for gone-invalid condition shell expression.
5650 * m4/cond-if.m4 (AM_COND_IF): test contents of $COND_TRUE
5651 variable, rather than re-evaluating the shell expression for
5653 * tests/cond40.test: Extend test.
5656 Avoid syntax error if IF-TRUE part of AM_COND_IF expands empty.
5657 * m4/cond-if.m4 (AM_COND_IF): Ensure IF-TRUE part is never empty
5658 to avoid shell syntax error if the m4 expansion is empty.
5659 * tests/cond40.test: Enhance test.
5661 Coverage: bogus option to AM_INIT_AUTOMAKE.
5662 * tests/init2.test: New test.
5663 * tests/Makefile.am: Update.
5665 2010-07-21 Stefano Lattarini <stefano.lattarini@gmail.com>
5667 Modernize and improve test scripts `subdir*.test'.
5668 * tests/subdir.test: Enable `errexit' shell flag, and related
5669 changes. Use the `configure.in' stub created by `./defs',
5670 rather than writing one from scratch.
5671 * tests/subdir2.test: Likewise.
5672 * tests/subdir4.test: Likewise.
5673 * tests/subdir3.test: Enable `errexit' shell flag, and related
5674 changes. Do not create useless dummy source files.
5675 * tests/subdir5.test: Make grepping of Makefile.in (in topdir
5676 and in subdirs) stricter. Some minor changes to keep it more
5677 in sync with the related test `subdir8.test'.
5678 * tests/subdir8.test: Likewise (but with the related test being
5679 `subdir5.test' here).
5680 * tests/subdir6.test: Cosmetic change in spacing.
5681 * tests/subdir9.test: Define and use new variable `$distdir'. Add
5682 trailing `:' command.
5683 * tests/subdir10.test: Cosmetic consistency-related change.
5684 * tests/subdirbuiltsources.test: Cosmetic changes in spacings.
5685 (configure.in): Use stub created by `./defs', rather than writing
5686 it from scratch. Do not use obsoleted and/or deprecated forms of
5687 autoconf/automake macros.
5689 Modernize and improve test scripts `dist*.test'.
5690 * tests/distcleancheck.test: Do not add useless `-e' option to
5691 a $MAKE call. Extend test by grepping stderr of make.
5692 * tests/distcom2.test: Do not run the same test script on the
5693 Makefile.in twice, but save its output in an intermediate file
5694 instead. Make grepping of DIST_COMMON definition stricter.
5695 Display the content of more files, to ease debugging. Add a
5696 trailing `:' command. Improved heading comments w.r.t. sister
5698 * tests/distcom6.test: Likewise, and avoid to uselessly run
5700 * tests/distcom3.test: Ensure verbose printing of captured stdout
5701 and stderr. Make grepping of captured stderr stricter. Also,
5702 add trailing `:' command.
5703 * tests/distcom4.test: Declare the target `test' in the generated
5704 Makefile.am as `.PHONY'. Display content of more files, to ease
5705 debugging. Add trailing `:' command.
5706 * tests/distcom5.test: Likewise. Also, factor out common sed
5707 script in subroutine `extract_distcommon'.
5708 * tests/distcom7.test: Prefer cat + here-doc over echo to write
5709 test Makefile.am files. Add a trailing `:' command.
5710 * tests/distname.test: Prefer `gzip -d' over `gunzip'. Move the
5711 call to `set -e' earlier. Be stricter and more verbose in the
5712 checking of the generated tarball.
5713 (configure.in): Use the stub provided by ./defs, instead of
5714 writing it from scratch. Avoid obsoleted constructs. Remove
5715 useless call to `AM_PROG_CC_C_O'.
5716 * tests/distdir.test: Various minor improvements/normalizations.
5717 * tests/distlinks.test: Likewise.
5719 2010-07-18 Stefano Lattarini <stefano.lattarini@gmail.com>
5721 Improve and extend test cond5.test.
5722 * tests/cond5.test: Do not blindly sleep 60 seconds before polling
5723 the background automake process, but poll it every 10 seconds for
5724 at most 30 times (this makes the test both faster on good machines,
5725 and more resilient to spurious timeout-due failures when in low
5726 priority or on heavily-loaded systems).
5727 Check also that automake writes the expected error messages on the
5729 Enable `errexit' flag, and related changes.
5730 Rely on the `configure.in' stub created by `./defs', rather than
5731 writing one from scratch.
5733 2010-06-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5735 Update program --help output to match current GCS.
5736 * configure.ac: Set and substitute PACKAGE_URL if AC_PACKAGE_URL
5737 is not defined, for compatibility to Autoconf < 2.64.
5738 * Makefile.am (do_subst): Substitute PACKAGE_BUGREPORT and
5740 (sc_diff_automake_in_automake): Update number of diff lines for
5741 additional substitutions.
5742 * aclocal.in (usage): Use PACKAGE_BUGREPORT. Point to Automake
5743 home page and GNU general help page.
5744 * automake.in (usage): Likewise.
5745 * doc/automake.texi: New flag PACKAGE_BUGREPORT, to factor email
5747 (Introduction, Creating amhello, amhello Explained, Options):
5749 * lib/Automake/Makefile.am (do_subst): Substitute
5751 * lib/Automake/Config.in ($PACKAGE_BUGREPORT): New global.
5752 * lib/Automake/ChannelDefs.pm: Use it for footer of fatal
5755 Clean up @var handling in the manual.
5756 * doc/automake.texi: Throughout the manual, lower-case @var
5757 names, replace a few one-character names.
5759 2010-06-26 Stefano Lattarini <stefano.lattarini@gmail.com>
5761 Fix typo-related bug in test script silent5.test.
5762 * tests/silent5.test: Use $EGREP, not $GREP (which is not even
5765 Tests: remove useless repetitions of `foreign' automake option.
5766 * tests/multlib.test (configure.in): Remove useless use of
5767 `foreign' option in AM_INIT_AUTOMAKE (the `--foreign' option is
5768 already in $AUTOMAKE by default, so no point in repeating it).
5769 * tests/subobj10.test: Likewise.
5770 * tests/subobj9.test: Likewise.
5771 * tests/lex3.test (Makefile.am): Similarly, remove useless use
5772 of `foreign' option in AUTOMAKE_OPTIONS.
5773 * tests/lex5.test: Likewise.
5774 * tests/pr279.test: Likewise.
5775 * tests/pr279-2.test: Likewise.
5776 * tests/specflg3.test: Likewise.
5777 * tests/target-cflags.test: Likewise.
5779 Drop useless requirement "gzip" in lex5.test.
5780 * tests/lex5.test ($required): Do not list "gzip", as it's
5783 2010-06-24 Stefano Lattarini <stefano.lattarini@gmail.com>
5785 Fix bugs in test script silent5.test.
5786 * tests/silent5.test: Fixed a nasty bug (due to the use of grep
5787 instead of egrep) that could have led to false negatives.
5789 2010-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
5791 Add a test checking that distributed broken symlinks cause
5792 `make dist' to fail.
5793 * tests/distlinksbrk.test: New test.
5794 * tests/Makefile.am (TESTS): Updated.
5796 2010-06-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5798 Fix minor testsuite issues, update docs, for Yacc/Lex changes.
5799 * doc/automake.texi (Yacc and Lex): Mention AM_YFLAGS, YFLAGS
5800 and AM_LFLAGS, LFLAGS in the order in which they now appear in
5803 * tests/lflags.test, tests/lflags2.test, tests/yflags.test,
5804 tests/yflags2.test: Prefer `make -e' over `make VAR=VAL', to
5805 please maintainer-check. Ensure generated C files contain a
5806 declaration, to please compilers.
5808 2010-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
5810 Fix bugs in Automake Yacc/Lex support w.r.t. $(AM_FLAGS) and
5811 $(FLAGS) precedence.
5812 * automake.in: Fix registration of languages "Lex", "Lex (C++)",
5813 "Yacc" and "Yacc (C++)", so that $(LFLAGS) has precedence over
5814 $(AM_LFLAGS) and $(YFLAGS) has precedence over $(AM_YFLAGS).
5815 * tests/Makefile.am (XFAIL_TESTS): Updated accordingly.
5818 New tests, exposing bugs in Automake Yacc/Lex support w.r.t.
5819 $(AM_FLAGS) and $(FLAGS) precedence.
5820 * tests/lflags.test: New test, check that user $(LFLAGS) takes
5821 precedence over automake (AM_LFLAGS) and (foo_LFLAGS). Still
5823 * tests/lflags2.test: Likewise.
5824 * tests/yflags.test: New test, check that user $(YFLAGS) takes
5825 precedence over automake (AM_YFLAGS) and (foo_YFLAGS). Still
5827 * tests/yflags2.test: Likewise.
5828 * tests/Makefile.am (TESTS, XFAIL_TESTS): Extended accordingly.
5830 2010-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
5832 Modernize, improve and extend tests `suffix*.test'.
5833 * tests/suffix3.test: Enable `errexit' shell flag, and related
5835 * tests/suffix4.test: Likewise.
5836 * tests/suffix6.test: Likewise, and do not create a useless dummy
5838 * tests/suffix7.test: Likewise.
5839 * tests/suffix5.test: Enable `errexit' shell flag, and related
5840 changes. Make grepping of Makefile.in slightly stricter.
5841 * tests/suffix.test: Enable `errexit' shell flag, and related
5842 changes. Also, do not redirect grep output to /dev/null, as this
5843 might unmotivatedly hide useful information.
5844 * tests/suffix2.test: Move setting of `errexit' shell flag earlier
5845 in the script (just after inclusion of ./defs). Use a more
5846 idiomatic way to count text occurrences in Makefile.in with
5847 grep. Do not create useless dummy source files.
5848 * tests/suffix10.test: Ensure verbose printing of captured make
5849 stdout. Minor cosmetic changes.
5850 * tests/suffix8.test: Likewise. Also, drop useless call to the
5851 env(1) utility, and make grepping of make output stricter by using
5852 $FGREP rather than plain grep.
5853 * tests/suffix11.test: Likewise.
5854 * tests/suffix12.test: Likewise.
5855 * tests/suffix9.test: Prefer cat + here-doc over echo to append to
5856 the `configure.in' stub. Cosmetic changes.
5857 * tests/suffix13.test: Cosmetic spacing change.
5859 2010-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
5861 Add useful comment in test script ext.test.
5862 * tests/ext.test: Add a comment explaining why an apparently
5863 useless `if' statement is indeed required.
5865 2010-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
5867 Add useful comment in test script obsolete.test.
5868 * tests/obsolete.test: Add a comment explaining why we need
5869 an indirection in adding $AUTOUPDATE to $required.
5871 Normalize whitespaces in 'tests/Makefile.am'.
5872 * tests/Makefile.am (TESTS): Use only spaces, not tabs, in the
5873 definition of this variable.
5875 Parallel tests generation: improve comments (tiny change).
5876 * tests/Makefile.am ($(parallel_tests)): Added useful comment to
5879 Tests defs: truly get rid of `$am_defs_included' (unused variable)
5880 * tests/defs.in ($am_defs_included): Remove, its now unused. It
5881 should have been removed in a previous changeset, but the removal
5882 was done only partially (oversight).
5884 2010-06-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5886 Remove a couple of unneeded conditionals from tests.
5887 * tests/pr243.test, tests/pr266.test, tests/strip.test: No need
5888 for the FOOTEST conditional.
5890 2010-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
5892 Modernize, improve and/or fix various test scripts.
5893 * tests/symlink3.test: Deleted, separated into two new, more
5895 * tests/forcemiss.test: ... this one ...
5896 * tests/forcemiss2.test: ... and this one.
5897 * tests/symlink2.test: Enable `errexit' shell flag, make test
5898 stricter, and skip it if symlink creation is not supported.
5899 * tests/postproc.test: Enable `errexit' shell flag, related
5900 changes, and a couple of unrelated cosmetic changes.
5901 * tests/recurs.test: Use the `configure.in' stub created by
5902 `./defs', rather than writing one from scratch. Make grepping
5903 of Automake stderr slightly stricter.
5904 * tests/substtarg.test: Likewise.
5905 * tests/strip.test: Likewise, and move the call to `set -e'
5906 earlier (just after the inclusion of `./defs'). Also, make sure
5907 that the script installed by `make install-script' is equal to
5909 * tests/substref.test: Use the `configure.in' stub created by
5910 `./defs', rather than writing one from scratch. Move the call
5911 to `set -e' earlier (just after the inclusion of `./defs').
5912 Avoid to explicitly export CC for configure (that's already done
5913 in ./defs). Avoid potential problems with unpredictable make
5914 output. Finally, make grepping of Makefile.in stricter.
5915 * tests/substre2.test: Ensure verbose printing of the captured
5916 make's output, and make its grepping slightly stricter.
5917 * tests/cygwin32.test: Enable `errexit' shell flag, and related
5918 changes. Also, do not create useless dummy source/data files.
5919 * tests/scripts.test: Likewise.
5920 * tests/recurs2.test: Likewise. Also, use the `configure.in'
5921 stub created by `./defs'.
5922 * tests/Makefile.am (TESTS): Updated.
5924 Modernize, improve and/or fix tests `pluseq*.test.
5925 * tests/pluseq5.test: Append to configure.in using cat with an
5926 here-doc, not using echo.
5927 * tests/pluseq10.test: Make sure that the captured output of
5928 `make' command is always displayed. Where possible, use $FGREP
5929 instead of grep (this change makes some checks slightly stricter).
5930 * tests/pluseq8.test: Enable `errexit' shell flag, with related
5932 * tests/pluseq.test: Likewise. Also, do not create useless dummy
5933 data files, and use better m4 quoting in generated configure.in.
5934 * tests/pluseq2.test: Likewise. Also, append to configure.in
5935 using cat with an here-doc, not using echo.
5936 * tests/pluseq3.test: Likewise.
5937 * tests/pluseq4.test: Likewise.
5938 * tests/pluseq6.test: Likewise.
5939 * tests/pluseq7.test: Do not create useless dummy source file.
5940 * tests/pluseq9.test: Slightly extended w.r.t. the grepping of
5941 Automake stderr. Some unrelated cosmetic changes.
5943 2010-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
5945 cscope.test: ensure verbose printing of captured stderr.
5946 * tests/cscope.test: Print captured stderr before failing.
5948 2010-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
5950 Testsuite: ensure verbose printing of captured stderr.
5951 * tests/acloca18.test: Print captured stderr before either failing
5952 or grepping it. Be sure to send captured stderr to stderr, not to
5954 * tests/ansi3b.test: Likewise.
5955 * tests/cond39.test: Likewise.
5956 * tests/configure.test: Likewise.
5957 * tests/missing3.test: Likewise.
5958 * tests/missing6.test: Likewise.
5959 * tests/output-order.test: Likewise.
5960 * tests/pr300-ltlib.test: Likewise.
5961 * tests/python6.test: Likewise.
5962 * tests/python7.test: Likewise.
5963 * tests/python8.test: Likewise.
5964 * tests/python9.test: Likewise.
5965 * tests/subobj.test: Likewise.
5966 * tests/vars3.test: Likewise.
5967 * tests/missing4.test: Likewise, and fix a call to grep not to use
5969 * tests/ansi3.test: Likewise, and rely on the `configure.in' stub
5970 created by `./defs', rather than writing one from scratch.
5972 Enable `errexit' shell flag in various tests.
5973 * tests/backsl.test: Enable the `errexit' shell flag, and
5975 * tests/backsl2.test: Likewise.
5976 * tests/block.test: Likewise.
5977 * tests/canon2.test: Likewise.
5978 * tests/canon4.test: Likewise.
5979 * tests/comment2.test: Likewise.
5980 * tests/condlib.test: Likewise.
5981 * tests/cond15.test: Likewise, and prefer $FGREP over grep.
5982 * tests/canon3.test: Likewise. Also, avoid to create an useless
5984 * tests/acoutpt2.test: Enable the `errexit' shell flag, and some
5985 related changes. Do some cosmetic improvements in the generated
5986 `configure.in' file.
5987 * tests/cond4.test: Likewise.
5988 * tests/cond14.test: Likewise.
5989 * tests/condinc.test: Likewise.
5990 * tests/cond7.test: Likewise. Also, remove useless setting of
5991 AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am.
5992 * tests/ansi.test: Enable the `errexit' shell flag, and related
5993 changes. Extended, esp. by running autoconf, ./configure and
5994 make, and by looking into the distdir.
5996 2010-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
5997 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5999 Extend tests/README w.r.t. trailing `:' in test scripts.
6000 * tests/README (section "Writing test cases" subsection "Do"):
6001 Explain why apparently redundant trailing `:' and `Exit 0' in
6002 test scripts can indeed be useful.
6004 2010-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
6006 Improve determination of PATH separator in bootstrap script.
6007 * bootstrap: Determine what the PATH separator is the same way
6010 Minor improvements in bootstrap script.
6011 * bootstrap: Consistently use two-spaces indentation. Cosmetic
6012 improvement to comments.
6013 ($me): New variable, containing program basename.
6014 Prepend it to all error messages.
6016 Testsuite now works with BSD make in parallel mode.
6017 * tests/defs.in: Unset variables __MKLVL__ and MAKE_JOBS_FIFO,
6018 which are exported by BSD make when run in parallel mode, and
6019 which can confuse make processes spawned by our testsuite.
6020 This change fixes a lot of spurious failure when the testsuite
6021 is run with BSD make in parallel mode.
6023 2010-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
6025 Modernize, improve and/or fix various test scripts.
6026 * tests/sanity.test: Rely on the `configure.in' stub created by
6027 `./defs', rather than writing one from scratch.
6028 * tests/depend2.test: Likewise. Also, call `set -e' just after
6029 the inclusion of `./defs', instead that later in the script.
6030 * tests/canon5.test: Avoid a useless `|| Exit 1' after a call to
6031 $AUTOMAKE, and improve the positioning of an $ACLOCAL call.
6032 * tests/exeext4.test: Use $FGREP instead of grep, where possible.
6033 Make auxiliary rules in the generated Makefile more silent.
6034 These changes make some checks slightly stricter.
6035 * tests/ext2.test: Call `Exit 1' if inclusion of `./defs' fails.
6036 * tests/gettext2.test: Place final `:' at the end of the script,
6037 rather than in the middle.
6038 * tests/exeext.test: Call `set -e' just after the inclusion of
6039 `./defs', instead that later in the script.
6040 * tests/extra5.test: Likewise.
6041 * tests/confdeps.test: Likewise. Also, prefer `mv -f' over
6042 plain `mv', just to be sure.
6043 * tests/depcomp.test: Enable `errexit' shell flag, with related
6044 changes. Also, modernize the generated configure.in.
6045 * tests/cond9.test: Likewise. Also, rely on the `configure.in'
6046 stub created by `./defs', rather than writing one from scratch.
6047 * tests/cond10.test: Likewise.
6048 * tests/depcomp2.test: Likewise.
6049 * tests/depend3.test: Likewise.
6050 * tests/distcom7.test: Likewise.
6051 * tests/fortdep.test: Likewise. Also, remove definition of
6052 AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am,
6053 since that flag is already provided by $AUTOMAKE.
6054 * tests/mdate.test: Made stricter, by checking that Automake
6055 actually failed, and by making a stricter grep on the error
6056 message. Also, set shell `errexit flag'.
6057 * tests/python2.test: Improved verbose messages.
6059 Make test `ammissing.test' stricter.
6060 * tests/ammissing.test: Fail if $ACLOCAL succeeds unexpectedly.
6061 Enable `errexit' shell flag.
6063 2010-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
6064 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6066 Fix error in generation of parallel tests.
6067 * tests/defs.in ($am_skip_defs): New variable, to be used when
6068 ./defs must be sourced multiple times. If set, unset it and
6069 only define $srcdir; otherwise, also go through the rest of
6071 ($am_defs_included): Remove, no more needed.
6072 * tests/Makefile.am ($(parallel_tests)): Update accordingly,
6073 using only $srcdir from defs.
6074 Fixes potential test failures of tests that use $required.
6076 2010-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
6078 Enable `errexit' shell flag in some test scripts.
6079 * tests/subcond.test: Enabled `errexit' shell flag, and related
6081 * tests/subst.test: Likewise.
6082 * tests/vars.test: Likewise.
6083 * tests/version4.test: Likewise.
6084 * tests/vpath.test: Likewise.
6085 * tests/vtexi2.test: Likewise.
6086 * tests/werror.test: Likewise.
6087 * tests/whoami.test: Likewise.
6088 * tests/tags.test: Likewise, and avoid to crate an useless dummy
6090 * tests/acsilent.test: Likewise, and don't use an easily-avoided
6091 command substitution.
6092 * tests/unused.test: Likewise, and don't use an easily-avoided
6093 command substitution.
6094 * tests/version.test: Likewise, and avoid deprecated constructs
6095 in the generated `configure.in'.
6096 * tests/version2.test: Likewise, and avoid deprecated constructs
6097 in the generated `configure.in'.
6099 2010-06-07 Stefano Lattarini <stefano.lattarini@gmail.com>
6100 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6102 Improve declaration of dependencies in the testsuite.
6103 * tests/Makefile.am (check_SCRIPTS): Remove. Instead, let ...
6104 ($(TEST_LOGS)): ... all test logs depend on the scripts.
6105 * test/gen-parallel-tests: For each parallel test foo-p.test,
6106 let `foo-p.log' also depend on `foo.test', since it is sourced.
6108 2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6110 Coverage for TAGS_DEPENDENCIES warning.
6111 * tests/tags2.test: New test.
6112 * tests/Makefile.am: Update.
6114 Coverage for use of anachronistic variables.
6115 * tests/oldvars.test: New test.
6116 * tests/Makefile.am: Update.
6118 Testsuite coverage for bogus macro file serial numbers.
6119 * tests/acloca18.test: Also test ill-formed serial numbers
6120 and serial numbers after macro definitions.
6122 Coverage for aclocal diagnosing underquoted macros.
6123 * tests/acloca23.test: New test.
6124 * tests/Makefile.am: Update.
6126 2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6128 Prefer AUTOMAKE_fails over `$AUTOMAKE | grep' in tests.
6129 * tests/ldadd.test: Enable errexit. Use AUTOMAKE_fails so
6130 the verbose log contains all output.
6131 * tests/mdate.test: Likewise.
6132 Prompted by Stefano Lattarini's change to discover.test.
6134 2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6136 More minor message fixes.
6137 * aclocal.in (scan_file): Fix recommended info command line.
6138 * automake.in (handle_lib_objects): No need to prepend function
6139 name to prog_error message.
6140 (handle_tags): Add missing word and missing space in error
6142 (handle_dist): Add missing closing single quote in message.
6143 Line-wrap one long message for readability.
6145 2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
6146 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6148 Fix distcheck failure with distributed generated parallel tests.
6149 * tests/Makefile.am ($(parallel_tests)): Cope with $(srcdir)
6150 being different from the value at developer `make dist' time.
6151 * tests/defs.in: Protect against multiple inclusion, by using ...
6152 ($am_defs_included): ... this new variable.
6153 ($srcdir): Do not compute, but simply define to `@abs_srcdir@'
6154 as substituted by configure.
6155 Report, suggestions and first fix by Ralf Wildenhues, final
6156 patch by Stefano Lattarini.
6158 2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
6160 Improve tests link*.test (enable `errexit' shell flag).
6161 * tests/link_c_cxx.test: Enable `errexit shell flag, and related
6162 changes. Also, do not create useless source files.
6163 * tests/link_dist.test: Likewise.
6164 * tests/link_f90_only.test: Likewise.
6165 * tests/link_f_only.test: Likewise.
6166 * tests/link_fc.test: Likewise.
6167 * tests/link_fccxx.test: Likewise.
6168 * tests/link_fcxx.test: Likewise.
6170 2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6172 Improve ext.test semantics, avoid OpenBSD sh errexit issue.
6173 * tests/ext.test: Inside shell compound command, use
6174 `if $cmd; then Exit 1; fi' rather than `$cmd && Exit 1', to
6175 fix failure with OpenBSD sh introduced with last patch.
6176 Actually ensure that a rule for .EXT.o is created for each
6177 known extension EXT.
6179 2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
6181 Enable `errexit' shell flag in some test scripts.
6182 * tests/dash.test: Enable `errexit' shell flag, and related
6184 * tests/defun.test: Likewise.
6185 * tests/defun2.test: Likewise.
6186 * tests/dejagnu.test: Likewise.
6187 * tests/double.test: Likewise.
6188 * tests/distcom2.test: Likewise.
6189 * tests/empty2.test: Likewise.
6190 * tests/empty3.test: Likewise.
6191 * tests/empty4.test: Likewise.
6192 * tests/exdir.test: Likewise.
6193 * tests/ext.test: Likewise.
6194 * tests/extra.test: Likewise.
6195 * tests/extra2.test: Likewise.
6196 * tests/extra3.test: Likewise.
6197 * tests/extra4.test: Likewise.
6198 * tests/flibs.test: Likewise.
6199 * tests/fnoc.test: Likewise.
6200 * tests/fo.test: Likewise.
6201 * tests/instexec.test: Likewise.
6202 * tests/ltdeps.test: Likewise.
6203 * tests/nodep.test: Likewise.
6204 * tests/nodepcomp.test: Likewise.
6205 * tests/f90only.test: Likewise, and remove botched/obsoleted
6206 comments and unnecessary commands.
6207 * tests/fonly.test: Likewise, and remove botched/obsoleted
6208 comments and unnecessary commands.
6209 * tests/discover.test: Likewise, and made stricter.
6211 Enable `errexit' shell flag in all tests cxx*.test.
6212 * tests/cxx.test: Enabled `errexit' shell flag, and related
6214 * tests/cxxansi.test: Likewise.
6215 * tests/cxxcpp.test: Likewise.
6216 * tests/cxxlibobj.test: Likewise.
6217 * tests/cxxlink.test: Likewise.
6218 * tests/cxxo.test: Likewise.
6220 Enable `errexit' shell flag in various tests.
6221 * tests/acoutnoq.test: Enabled `errexit' shell flag, and related
6223 * tests/acoutpt.test: Likewise.
6224 * tests/acoutqnl.test: Likewise.
6225 * tests/amassign.test: Likewise.
6226 * tests/ansi2.test: Likewise.
6227 * tests/ansi4.test: Likewise.
6228 * tests/badprog.test: Likewise.
6229 * tests/checkall.test: Likewise.
6230 * tests/clean.test: Likewise.
6231 * tests/colneq2.test: Likewise.
6232 * tests/colon.test: Likewise.
6233 * tests/colon5.test: Likewise.
6234 * tests/colon6.test: Likewise.
6235 * tests/comment.test: Likewise.
6236 * tests/compile_f90_c_cxx.test: Likewise.
6237 * tests/compile_f_c_cxx.test: Likewise.
6238 * tests/cond3.test: Likewise.
6239 * tests/cond6.test: Likewise.
6240 * tests/cond13.test: Likewise.
6241 * tests/conf2.test: Likewise.
6242 * tests/confvar.test: Likewise.
6243 * tests/confvar2.test: Likewise.
6244 * tests/cond8.test: Likewise, plus a cosmetic change.
6245 * tests/confh4.test: Likewise. Also, add in the heading comments
6246 an excerpt from the original bug report which motivated the
6247 creation of this test, to make its purpose clearer.
6249 2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6251 Rewrite manual to be gender-neutral.
6252 * doc/automake.texi (GNU Build System)
6253 (Standard Directory Variables, General Operation, CVS)
6254 (Hard-Coded Install Paths, Dependencies As Side Effects):
6255 Rewrite text to not contain gender-specific pronouns when
6256 speaking about developers or users, either by avoiding pronouns
6257 or by addressing them as `you' instead.
6259 Report by Christina Gratorp.
6263 2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
6265 Tiny fix in silent8.test (display output of `make' command).
6266 * tests/silent8.test: Make sure that the captured output of `make'
6267 command is always displayed.
6269 Make tests on user extensibility of silent-rules mode stricter.
6270 * tests/silent6.test: Made stricter w.r.t. the grepping of the
6271 output produced by `make'.
6272 * tests/silent7.test: Likewise.
6274 Tests on silent-mode for C/Libtool made stricter.
6275 * tests/silent.test: Made stricter w.r.t. the grepping of the
6276 output produced by `make'.
6277 * tests/silent2.test: Likewise.
6278 * tests/silent4.test: Likewise.
6279 * tests/silent9.test: Likewise.
6280 * tests/silent3.test: Likewise, and add a final `make distclean'
6281 command to keep it better in sync with tests/silent{4,9}.test.
6283 Improved test silent5.test.
6284 * tests/silent5.test: Remove by hand all generated C files after
6285 non-verbose builds, to ensure the following builds are clean.
6286 Try to clean and rebuild with the same verbosity and without
6287 removing generated sources in between, to check that this does
6288 not trigger a different set of rules. Make grepping of make's
6289 output stricter. Improved/added some comments.
6291 New tests for Automake silent-mode with Fortran.
6292 * tests/silentf77.test: New test.
6293 * tests/silentf90.test: Likewise.
6294 * tests/Makefile.am (TESTS): Updated accordingly.
6296 New test `silentcxx.test' (Automake silent-mode with C++).
6297 * tests/silentcxx.test: New test.
6298 * tests/Makefile.am (TESTS): Updated accordingly.
6300 New test `silentyacc.test' (Automake silent-mode with Yacc).
6301 * tests/silentyacc.test: New test.
6302 * tests/Makefile.am (TESTS): Updated accordingly.
6304 New test `silentlex.test' (Automake silent-mode with Lex).
6305 * tests/silentlex.test: New test.
6306 * tests/Makefile.am (TESTS): Updated accordingly.
6308 Relax tests on silent-rules to cater to overly verbose makes.
6309 * tests/silent.test: When testing silent builds, don't fail if
6310 make's output simply contains the `mv' substring, but only if
6311 it contains the `mv ' substring (note the trailing space).
6312 * tests/silent2.test: Likewise.
6313 * tests/silent3.test: Likewise.
6314 * tests/silent4.test: Likewise.
6315 * tests/silent5.test: Likewise.
6316 * tests/silent9.test: Likewise.
6318 2010-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
6320 Extend test on `nostdinc' automake option.
6321 * tests/nostdinc.test: Enable `errexit' shell flag. Related and
6322 unrelated minor changes. Make the grepping of the generated
6323 Makefile.in slightly stricter. Generate and run configure, so that
6324 the generated Makefile can be grepped too.
6326 2010-05-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6328 Make gnupload portable to EBCDIC hosts.
6329 * lib/gnupload: Use literal newline as argument for 'tr' rather
6330 than \015, for EBCDIC hosts. Also, avoid unportable nested
6331 double-quotes and backquotes.
6333 Report from Eric Blake and Steve Goetze via gnulib.
6335 2010-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
6337 Fix Autoconf version required by Automake's configure.
6338 Automake configure script used to tell that automake required
6339 autoconf 2.60 or later, but then it checked for autoconf >= 2.62,
6340 and if that was not found, it gave an error saying that Automake
6341 required configure 2.61a-341 or later. This change should
6342 eliminate such inconsistencies.
6343 * configure.ac ($required_autoconf_version): New variable.
6346 2010-05-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6348 Fix truncated comment in Makefile.am.
6349 * Makefile.am (sc_tests_logs_duplicate_prefixes): Fix unfinished
6350 sentence in comment.
6351 Report by Stefano Lattarini.
6353 Relax silent8.test for NetBSD make.
6354 * tests/silent8.test: Accept ./foo.info in output as well.
6356 Fix unportable sed script in maintainer-check test.
6357 * Makefile.am (sc_tests_Exit_not_exit): Rewrite sed script to
6358 not contain semicolon after 'b' or brace commands, for NetBSD.
6360 Wildcards are not portable to NetBSD make.
6361 * doc/automake.texi (Wildcards): Document portability issue.
6362 * tests/extra10.test, tests/extra11.test, tests/extra12.test:
6365 2010-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
6367 Make test for configure.in vs. configure.ac stricter.
6368 * tests/configure.test: Use a configure.in file that provokes
6369 an automake error, to ensure configure.ac is preferred.
6371 Avoid possible false negatives in dejagnu7.test.
6372 * tests/dejagnu7.test: Enable shell `errexit' flag. Also, avoid
6373 unportable use of fgrep option `-e'.
6375 Fix conflnk3.test to work with Solaris/Heirloom Sh.
6376 * tests/conflnk3.test: Use `test -r FILE' and `test ! -r FILE'
6377 instead of respectively `test -e FILE' and `test ! -e FILE',
6378 since Solaris Sh doesn't grok the latter. Do not SKIP the test
6379 if the shell doesn't support `test -e'.
6381 2010-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6383 Warning and error message formatting cleanups.
6384 * aclocal.in (parse_arguments, main): Remove trailing period or
6385 newline in error or warning messages, avoid capitalization of
6386 the first word of a message.
6387 * automake.in (check_user_variables, handle_languages)
6388 (handle_ltlibraries, scan_aclocal_m4, scan_autoconf_config_files)
6389 (scan_autoconf_files, cond_stack_if, require_file_internal)
6390 (usage, generate_makefile, parse_arguments): Likewise.
6391 * lib/Automake/ChannelDefs.pm (set_strictness): Likewise.
6392 * lib/Automake/Configure_ac.pm (find_configure_ac): Likewise.
6393 * lib/Automake/Options.pm (set_strictness): Likewise.
6394 * lib/Automake/Rule.pm (define): Likewise.
6395 * lib/Automake/Variable.pm (define, variables_dump): Likewise.
6396 * tests/ltinstloc.test, tests/suffix11.test: Adjust expected
6398 * lib/Automake/Channels.pm (setup_channel): Reword error message
6399 to be the same as in msg.
6401 Fix placing of ellipses in English text and synopses.
6402 * Makefile.am: Be sure to add a space before `...' in natural
6404 * automake.in (scan_autoconf_traces): Likewise.
6405 * lib/Automake/Rule.pm (define): Likewise.
6406 * lib/Automake/Variable.pm (define): Likewise.
6407 * lib/am/dejagnu.am: Likewise.
6408 * lib/am/progs.am: Likewise.
6409 * lib/gnupload (dprint, upload): Likewise.
6410 * tests/confdeps.test: Likewise.
6411 * tests/location.test: Adjust expected output.
6412 * automake.in (usage): In synopsis, use singular for OPTION,
6413 * remove space before ellipsis.
6414 * aclocal.in (usage): Likewise. Also, fix indentation.
6416 Fix more duplicate message prefixes.
6417 * lib/Automake/XFile.pm (seek): Do not prepend $me.
6418 ($me): Remove now-unused package-global.
6419 * aclocal.in (check_acinclude): Remove duplicate 'warning: '
6423 * doc/automake.texi (Simple Tests using parallel-tests): Add
6424 missing closing parenthesis.
6426 Fix leftover call to removed function macros_dump.
6427 * automake.in (read_main_am_file): Call variables_dump, not
6428 macros_dump. Print actual error before list of variables.
6430 2010-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
6432 Minor improvements in comments of test `silent3.test'.
6433 * tests/silent3.test: Tell to keep it in sync with `silent9.test'
6436 2010-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6438 testsuite: ensure verbose printing of captured output.
6439 * tests/acloca14.test, tests/acloca18.test, tests/aclocal.test,
6440 tests/fort2.test, tests/help.test, tests/missing3.test,
6441 tests/missing6.test: Print captured stdout or stderr before
6444 2010-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
6446 Make test badopt.test stricter (by enabling `set -e').
6447 * tests/badopt.test: Add call to `set -e'. Due to this change,
6448 an unexpected failure in the call to `$ACLOCAL' (whose outcome
6449 was previously unchecked) would cause the whole test to fail.
6450 Also, bumped the copyright years.
6452 Make test for configure.in vs. configure.ac stricter.
6453 * tests/configure.test: Use a configure.in file that provokes
6454 an automake error, to ensure configure.ac is preferred.
6456 Use `set -e' in confsub.test (avoids possible false negatives).
6457 * tests/confsub.test: Enable shell `errexit' flag, and related
6458 changes (this helps avoiding some possible minor false negatives).
6459 Also, bumped copyright years.
6461 2010-04-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6463 Fix -Werror handling for presence of configure.in and configure.ac.
6464 * lib/Automake/Variable.pm (Automake::Variable): Do not initialize
6465 $configure_ac at the global level, before command-line arguments
6467 (require_variables): Initialize it here.
6468 * tests/configure.test: New test.
6469 * tests/Makefile.am: Update.
6470 Report by Stefano Lattarini.
6472 2010-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
6474 Avoid possible false negatives in confh5.test.
6475 * tests/confh5.test: Enable shell `errexit' flag, and bumped
6476 copyright years. Due to this change, any unexpected failure
6477 in calls to $ACLOCAL, $AUTOMAKE, $AUTOCONF or $AUTOHEADER, or
6478 a failure in grepping expected text in output files should now
6479 cause the whole test to fail.
6481 2010-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
6483 Fixed typo in POD documentation of Automake::Channels.
6484 * lib/Automake/Channels.pm: Fixed typo in POD documentation:
6485 @<...> was used instead of C<...>.
6487 2010-04-14 Stefano Lattarini <stefano.lattarini@gmail.com>
6489 Refactor tests on Automake TESTS color output.
6490 * tests/color.test: Tests using the expect program moved out to...
6491 * tests/color2.test: ... this new file.
6492 * tests/Makefile.am (TESTS): Extended accordingly.
6494 2010-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
6496 Fix typos in comments in test confh5.test
6497 * tests/confh5.test: Fix a couple of typos in comments.
6499 Avoid possible false negatives in canon-name.test.
6500 * tests/canon-name.test: Enable shell `errexit' flag. Improve
6503 2010-04-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6505 Print 'warnings are treated as errors' note if needed.
6506 * lib/Automake/Channels.pm: Fix typo in comment.
6507 (_print_message): If -Werror is enabled, print a 'warnings are
6508 treated as errors' note before the first such warning.
6509 * tests/warnopts.test: Adjust comment to mention expected warning.
6510 Adjust code to ignore 'warnings are treated as errors' note.
6511 * tests/location.test: Adjust expected output with -Werror.
6512 * tests/werror4.test: New test.
6513 * tests/Makefile.am: Update.
6516 Ensure we don't print 'warning:' or 'error:' twice.
6517 * Makefile.am (sc_ensure_testsuite_has_run): New helper rule.
6518 (sc_tests_logs_duplicate_prefixes): New rule, to check for
6519 wrong-looking warning and error messages in the test suite logs.
6520 * aclocal.in (scan_configure_dep, scan_file): Remove duplicate
6522 * tests/vars3.test: Rename variable to avoid false positive.
6524 Prepend type to warning, error, and fatal messages.
6525 For the first part of messages of types `error' or `fatal',
6526 prepend `error: ' to the message. Prepend `warning: ' to
6527 warning messages, whatever the setting of -Werror.
6528 * lib/Automake/Channels.pm (partial): Move up definition.
6529 (_format_message): Emit `header' and `footer' strings only with
6530 the first resp. last part of a set of partial messages.
6531 * lib/Automake/ChannelDefs.pm: Add missing '1;' statement at the
6533 (Automake::ChannelDefs): Setup warning channels with header
6534 `warning: ', error and fatal messages with header `error: '.
6535 * tests/condinc2.test, tests/ltinstloc.test: Adjust expected
6537 * tests/comment5.test: Likewise. Also, include stack notes
6538 should not start with `error:'.
6539 * tests/location.test: Likewise. Also, try both -Werror and
6542 Report by Bruno Haible.
6544 Fix capitalization of error messages, reword one message.
6545 * lib/Automake/Variable.pm (define): Do not capitalize the first
6546 word in the error message.
6547 * automake.in (require_file_internal): Likewise. Also, reword
6548 and line-wrap for better readability.
6549 * tests/distcom7.test, tests/pluseq5.test, tests/pluseq9.test:
6552 Fix connected warnings about obsolete exeext override.
6553 * lib/Automake/Rule.pm (define): Merge two warnings that belong
6554 together, by setting the 'partial' flag for the first one.
6556 Fix per-Makefile.am setting of -Werror.
6557 Before this patch, 'AUTOMAKE_OPTIONS = -Werror' in one
6558 Makefile.am would carry over to other Makefile.am files
6559 treated afterwards by the same thread, causing inconsistent
6560 and unstable exit status values.
6561 * lib/Automake/Channels.pm (dup_channel_setup)
6562 (drop_channel_setup): Save and restore the setting of
6563 $warnings_are_errors.
6564 * tests/werror3.test: New test.
6565 * tests/Makefile.am: Adjust.
6568 2010-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
6570 Bugfix in confh5.test w.r.t. Solaris/Heirloom Sh.
6571 * tests/confh5.test: In the generated Makefile.am: do not use
6572 `test ! -e FILE' to check for the non-existence of a file, since
6573 that is not supported by Solaris/Heirloom Sh.
6575 Make test `aclocal3.test' stricter.
6576 * tests/aclocal3.test: Add call to `set -e'. Fail if $ACLOCAL
6577 succeds unexpectedly.
6579 Add tests checking that symlinks are resolved by `make dist'.
6580 * tests/distlinks.test: New test.
6581 * tests/Makefile.am (TESTS): Updated accordingly.
6582 Suggested by observations from Ralf Wildenhues.
6584 2010-04-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6586 Use -9 for maximum xz compression with dist-xz.
6587 * lib/am/distdir.am (dist-xz, dist, dist-all): Pass -9 to xz.
6588 * NEWS, THANKS: Update.
6589 Report by Pavel Sanda.
6591 2010-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
6593 Avoid possible false negatives in cond46.test.
6594 * tests/cond46.test: Enable shell `errexit' flag (and bumped
6595 copyright years). Due to this change, the testcase should now
6596 fail on unexpected failures in calls to $ACLOCAL/$AUTOMAKE (whose
6597 outcomes were previously unchecked), and on failures in grepping
6598 the expected diagnostic in Automake stderr.
6600 2010-04-04 Stefano Lattarini <stefano.lattarini@gmail.com>
6602 Generated tests are now just a thin layer around other tests.
6603 * tests/Makefile.am: Rewrite the rule to generate the `*-p.test'
6604 test scripts so that any of them simply includes the corresponding
6605 `*.test' script (after setting `$parallel_tests' to `yes').
6606 * tests/.gitignore: Add wildcard for temporary files used in the
6607 generation of `*-p.test' tests.
6609 2010-03-30 Stefano Lattarini <stefano.lattarini@gmail.com>
6611 Avoid an unportable use of `$status' shell variable.
6612 * Makefile.am (path-check): Don't use the `$status' shell variable
6613 in the target's rules, as it's special in Zsh (equivalent to `$?',
6616 Avoid another use of `chmod -R'.
6617 * Makefile.am (path-check): To be safe, do not use `chmod -R' on
6618 $(distdir) before removing it (as Solaris `chmod -R' touches
6619 symlink targets). Instead, use the cleanup strategy used in
6622 2010-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6624 Remove uses of @acronym and @sc.
6625 * doc/automake.texi (Public Macros, Limitations on File Names):
6626 Remove all usage of @acronym and @sc in the manual.
6627 Suggested by Karl Berry.
6629 2010-03-13 Karl Berry <karl@freefriends.org>
6631 GNU hello uses fdl.texi, not gpl.texi.
6632 * doc/automake.texi (Texinfo): Adjust example to upstream
6635 2010-03-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6637 Formatting cleanups in macro comments.
6638 * automake.in, lib/Automake/Channels.pm,
6639 lib/Automake/FileUtils.pm, lib/Automake/Options.pm,
6640 lib/Automake/Variable.pm, lib/Automake/XFile.pm,
6641 m4/options.m4, m4/substnot.m4: Fix macro comment format.
6643 2010-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
6644 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6646 Avoid generation of `tests/defs-p' file.
6647 * tests/defs.in: In the generated `configure.in' snippet: call
6648 `AM_INIT_AUTOMAKE' with the `parallel-tests' option if the shell
6649 variable `parallel_tests' is set to `yes'.
6650 * tests/Makefile.am (defs-p): Target removed.
6651 (check_SCRIPTS): Removed `defs-p'.
6652 (clean-local-check): Do not unlink `defs-p' anymore.
6653 ($(parallel_tests)): Transformation rules for the test scripts
6655 * tests/gen-parallel-tests: Selection rules for the test
6657 * tests/parallel-tests.test: Set `$parallel_tests' to `yes'
6658 then include `./defs' (rather than simply including `./defs-p').
6659 * tests/parallel-tests2.test: Likewise.
6660 * tests/parallel-tests3.test: Likewise.
6661 * tests/parallel-tests4.test: Likewise.
6662 * tests/parallel-tests5.test: Likewise.
6663 * tests/parallel-tests6.test: Likewise.
6664 * tests/parallel-tests7.test: Likewise.
6665 * tests/parallel-tests8.test: Likewise.
6666 * tests/parallel-tests9.test: Likewise.
6667 * tests/parallel-tests10.test: Likewise.
6668 * tests/README (Section "Writing Test Cases" subsection "Do"):
6669 Adjusted the parts referring to tests checking `parallel-tests'
6670 behaviour. Some other minor related improvements.
6671 * tests/.gitignore (defs-p): Removed.
6673 2010-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
6675 Remove redundant unset of variable TESTS from some test scripts.
6676 * tests/color.test: Do not unset the `TESTS' variable, as it's
6677 already unset in the `defs' file.
6678 * tests/check5.test: Likewise.
6679 * tests/check8.test: Likewise.
6680 * tests/check9.test: Likewise.
6681 * tests/check10.test: Likewise.
6682 * tests/check11.test: Likewise.
6683 * tests/parallel-tests.test: Likewise.
6684 * tests/parallel-tests3.test: Likewise.
6685 * tests/parallel-tests4.test: Likewise.
6686 * tests/parallel-tests5.test: Likewise.
6687 * tests/parallel-tests6.test: Likewise.
6688 * tests/parallel-tests7.test: Likewise.
6690 2010-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6692 Fix cscope test on systems without working Fortran compiler.
6693 * tests/cscope.test: Skip remainder of test if `$MAKE all' fails.
6695 Report by Peter Johansson.
6697 2010-02-24 Antonio Diaz Diaz <ant_diaz@teleline.es> (tiny change)
6698 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6700 Add lzip compression support.
6701 * automake.in (handle_dist): Recognize dist-lzip.
6702 (make_paragraphs): Map LZIP to dist-lzip.
6703 * doc/automake.texi (Dist): Add dist-lzip.
6704 (Options): Likewise.
6705 * lib/Automake/Options.pm (_process_option_list): Add dist-lzip.
6707 (dist dist-all): Add command to create an lzip-compressed tarball.
6708 (distcheck): Handle lzip-compressed tarballs just like the others.
6709 * tests/defs.in: Test for lzip, too.
6710 * tests/lzip.test: New file, based on nogzip.test.
6711 * tests/Makefile.am (TESTS): Add lzip.test.
6714 2010-02-22 Karl Berry <karl@gnu.org>
6716 Improve help message of mdate-sh.
6717 * mdate-sh: mention actual output format in help message.
6719 2010-02-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6721 Deprecate dist-lzma in favor of dist-xz.
6722 * doc/automake.texi (The Types of Distributions, Options):
6723 Adjust text to reflect renaming of lzma to xz.
6725 Missing deprecation noted by Antonio Diaz Diaz.
6727 2010-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
6729 Add tests about support of wildcards in EXTRA_DIST.
6730 * tests/extra10.test: New test, check basic support of wildcards
6732 * tests/extra11.test: New test, check more complex usage of
6733 wildcards in EXTRA_DIST.
6734 * tests/extra12.test: New test, check usage of wildcards in
6735 EXTRA_DIST when $builddir != $srcdir.
6736 * tests/Makefile.am (TESTS): Updated accordingly.
6737 Necessity of these new tests suggested by Braden McDaniel
6738 and Ralf Wildenhues.
6740 2010-02-08 Simon Josefsson <simon@josefsson.org>
6742 Fix copyright statement in gnupload script.
6743 * lib/gnupload: Fix copyright statement.
6745 2010-02-06 Dmitry V. Levin <ldv@altlinux.org> (tiny change)
6746 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6748 Fix exit status of signal handlers in shell scripts.
6749 The value of `$?' on entrance to signal handlers in shell scripts
6750 cannot be relied upon, so set the exit code explicitly to
6752 * lib/am/check.am (am__check_pre): Use `exit 143' in signal handler.
6753 * lib/elisp-comp: Likewise.
6754 * lib/install-sh: Likewise.
6755 * lib/ylwrap: Likewise. Also, fix script to trap signal 13, not 3.
6756 * NEWS, THANKS: Update.
6757 Bug report, analysis, and initial patch by Dmitry V. Levin.
6759 2010-02-06 Karl Berry <karl@gnu.org>
6761 Improve gnupload usage text.
6762 * gnupload (usage): Shorten to make more likely to fit on a tty
6763 line. Mention CMD in the synopsis. With ..., plural is implied.
6765 2010-01-28 Christos Kontas <xakon@yahoo.com> (tiny change)
6767 Fix some typos in the manual
6768 * doc/automake.texi (Nested Packages, Rebuilding): Fix typos.
6770 2010-01-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6772 Fix silent-rules output for disabled dependency tracking.
6773 * lib/am/depend2.am [!%FASTDEP%]: Rework silent-rules variable
6774 expansion code to also work in the case where %AMDEP% expands
6775 to FALSE at config.status time, using new substitution string
6777 * automake.in (verbose_nodep_flag): New function, appending
6778 `@am__nodep@' to the verbose-variable name.
6779 (handle_languages): If dependencies are not disabled, use it to
6780 set %VERBOSE-NODEP%.
6781 * m4/depend.m4: Substitute am__nodep as '_no', so the second
6782 verbose-variable will always expand to an empty string, if
6783 dependencies are enabled.
6784 * tests/silent5.test: Also test --disable-dependency-tracking;
6785 also test per-target flags for non-C language files.
6786 * tests/silent9.test: New test, like silent4.test but disable
6787 dependency tracking.
6788 * tests/Makefile.am: Adjust.
6789 * NEWS, THANKS: Update.
6790 Report by Dmitry V. Levin <ldv@altlinux.org>.
6792 2010-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
6794 Slighty improve tests acoutbs.test and acoutbs2.test.
6795 * tests/acoutbs2.test: Enable `errexit' shell flag. Check that
6796 autoconf and configure work, that the file `zot' is created by
6797 configure, and that no file containing a backslash in its name is
6799 * tests/acoutbs.test: Likewise, plus updated copyright years.
6801 Fix test acoutbs2.test.
6802 * tests/acoutbs2: In the generated configure.in: add proper calls
6803 to AC_INIT and AM_INIT_AUTOMAKE, and remove explicit definition of
6804 PACKAGE and VERSION. Add a call to aclocal before calling automake.
6805 Updated copyright years.
6806 * tests/Makefile.am (XFAIL_TESTS): Removed acoutbs2.test.
6808 Add forgotten test scripts to $(TESTS).
6809 * tests/Makefile.am (TESTS): Added test scripts present on the
6810 filesystem, which were erroneously left out from $(TESTS):
6811 acoutbs2.test, badopt.test, extra2.test.
6812 (XFAIL_TESTS): Added acoutbs2.test.
6814 2010-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6816 Sync auxiliary files from upstream.
6817 * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub:
6820 Bump copyright years.
6821 * aclocal.in (write_aclocal, version): Bump copyright years.
6822 * automake.in (gen_copyright, version): Likewise.
6823 * doc/automake.texi: Likewise.
6826 * ChangeLog.09: New file, rotated from ...
6827 * ChangeLog: ... here.
6828 * Makefile.am (EXTRA_DIST): Distribute ChangeLog.09.
6832 Copyright (C) 2010, 2011 Free Software Foundation, Inc.
6834 Copying and distribution of this file, with or without modification, are
6835 permitted provided the copyright notice and this notice are preserved.