1 2011-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
3 test defs: hack to support autoconf-wrapper programs
4 * tests/defs.in ($AUTOCONF): Add a dummy `-B' option to the
5 autoconf invocation, so that, when the Debian autoconf wrapper
6 is involved, it will correctly dispatch an autoconf >= 2.50
7 instead of defaulting to autoconf 2.13.
8 ($AUTOHEADER, $AUTORECONF): Likewise, but for autoheader and
9 autoreconf respectively.
10 Reported by Bruno Haible:
11 <http://lists.gnu.org/archive/html/automake/2011-12/msg00039.html>
13 2011-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
15 tests: fix a minor spurious failure with FreeBSD make
16 * tests/remake-am-pr10111.test: Avoid using `#' comments in
17 makefile recipes, as these have been confusing FreeBSD make.
18 The failure was masked by the fact that this test is currently
20 Suggested by a report from Bruno Haible.
22 2011-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
24 tests: make two test scripts executable
25 * tests/remake-am-pr10111.test: Make executable.
26 * tests/remake-m4-pr10111.test: Likewise.
28 2011-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
30 readme: reference webpages for automake mailing lists
31 * README: Rationalize and reorganize the (brief) description of
32 the automake mailing lists. In particular, instead of suggesting
33 the reader to write to the `-request' addresses to subscribe to
34 mailing lists, point him to the relevant webpages, where he can
35 also subscribe via a web form.
37 2011-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
39 readme: update advice about testsuite execution
40 * README: Now that the automake testsuite uses the parallel-tests
41 driver, there is no need for the user to capture the stdout of
42 "make check" to determine which tests have failed: a detailed log
43 is automatically saved into the `tests/test-suite.log' file.
44 Since we are at it, improve the wording by dropping an extra
47 2011-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
49 readme: don't reference the old homepage at sources.redhat.com
50 * README: Don't reference the old homepage at sources.redhat.com,
51 which is no longer active; reference the homepage on www.gnu.org
52 instead. See also automake bug#10157 and bug#10248.
53 * tests/README: Likewise, and remove related extra-pedantic advice
54 about copyright papers for test cases (we'll ask for those papers
55 explicitly when we think they are warranted).
57 2011-12-12 Stefano Lattarini <stefano.lattarini@gmail.com>
59 hacking: some more fixlets
60 * HACKING (Release Procedure): Place the list of pre-release
61 bootstrap-and-test commands on a line of its own, so it's easy to
62 select and then paste it into a terminal window.
63 Fix the explanation of "make git-release", as, since the previous
64 change, "make git-release" would simply run "make dist" rather
65 than "make distcheck".
66 Suggestion from Jim Meyering.
68 2011-12-12 Peter Rosin <peda@lysator.liu.se>
70 * NEWS: Fix typo in 'make dist-bzip2' description.
72 2011-12-10 Stefano Lattarini <stefano.lattarini@gmail.com>
74 release: don't run "make distcheck" automatically
75 * Makefile.am (git-dist): The developers should test extensively
76 before finally creating the release tarball; so don't run "make
77 distcheck" on their behalf here; instead ...
78 * HACKING (Release procedure): ... state here that "make check"
79 and "make distcheck" should be run before calling "make git-dist".
81 2011-12-09 Jim Meyering <meyering@redhat.com>
82 Stefano Lattarini <stefano.lattarini@gmail.com>
84 dist-xz, dist-bzip2: don't hard-code -9, honor envvar settings
85 Before the present change, automake-generated `dist-xz' rule used
86 a hard-coded `xz -9'. That was a problem because on this front,
87 xz differs from gzip and bzip2. While the latter two don't incur
88 any run-time decompression penalty for using a higher compression
89 level, specifying -9 with xz imposes a potentially fatal virtual
90 memory requirement on any client that wants to decompress your
92 People have complained that a tarball compressed with -9 cannot
93 be uncompressed in a low-memory environment (wrt-based embedded).
94 Hence, instead of defaulting to -9, which is useful only for very
95 large tarballs, it defaults to -e (equivalent to -6e). This
96 limits the default memory requirements imposed on decompressors,
97 yet still gives very good compression ratios.
98 * lib/am/distdir.am (dist-xz): Do not hard-code xz's -9: that made
99 it impossible to override. Actually don't default to -9, either,
100 since that induced inordinately large virtual memory usage when
101 merely decompressing. Instead, use its XZ_OPT envvar, defaulting
102 to -e if not defined. Suggested by Lasse Collin.
103 (dist, dist-all) [?XZ?]: Likewise
104 (dist-bzip2): Similarly, do not hard-code -9, but do continue to
105 use -9 by default. Honor the BZIP2 envvar.
106 (dist, dist-all) [?BZIP2?]: Likewise
108 * doc/automake.texi (The Types of Distributions): Describe the
109 newly enabled environment variables.
111 2011-12-09 Stefano Lattarini <stefano.lattarini@gmail.com>
113 * NEWS: Fix typos, grammaros and suboptimal wording.
114 Reported by Jim Meyering.
116 2011-12-07 Stefano Lattarini <stefano.lattarini@gmail.com>
118 maint: sync auxiliary files from upstream
119 * lib/texinfo.tex: Synced from upstream, by "make fetch".
120 * lib/config.guess: Likewise.
121 * lib/config.sub: Likewise.
123 2011-12-04 Stefano Lattarini <stefano.lattarini@gmail.com>
125 tests: fix spurious failures due to missing 'yywrap()' function
127 The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
128 the "lex library" expected to provide a `yywrap' function (function
129 which is required to link most lex-generated programs). On the
130 contrary, when all the link attempts (i.e., with `-ll' and `-lfl')
131 fail, configure declares that no lex library is needed, and simply
132 proceeds with the configuration process -- only for the build to
133 possibly fail later, at make time.
135 This behaviour is intended; the Autoconf manual reads:
136 ``You are encouraged to use Flex in your sources, since it is
137 both more pleasant to use than plain Lex and the C source it
138 produces is portable. In order to ensure portability, however,
139 you must either provide a function `yywrap' or, if you don't use
140 it (e.g., your scanner has no `#include'-like feature), simply
141 include a `%noyywrap' statement in the scanner's source.''
143 This AC_PROG_LEX behaviour is causing some spurious failures of
144 the Automake testsuite in environments which lack a proper library
145 providing `yywrap' (this happens for example on Fedora-based
146 systems). The proper workaround is to simply provide a fall-back
147 implementation of `yywrap' in our lexers.
149 See also partially-overlapping commit `v1.11-871-geb147a1' (from
150 the 'testsuite-work' branch), which was motivated by similar
151 spurious failures experienced when cross-compiling.
153 From a report by Jim Meyering:
154 <http://lists.gnu.org/archive/html/automake-patches/2011-10/msg00092.html>
156 * tests/cond35.test: Provide a dummy `yywrap' function.
157 * tests/lex3.test: Likewise.
158 * tests/silent-lex-generic.test: Likewise.
159 * tests/silent-lex-gcc.test: Likewise.
160 * tests/silent-many-generic.test: Likewise.
161 * tests/silent-many-gcc.test: Likewise.
163 2011-12-04 Paul Eggert <eggert@cs.ucla.edu>
165 depcomp: spelling fix
166 * lib/depcomp (-h): Fix misspelling in usage diagnostic.
168 2011-11-28 Peter Rosin <peda@lysator.liu.se>
170 tests: fix 'distcheck-override-infodir.test' on Cygwin
171 * tests/distcheck-override-infodir.test (Makefile.am): Do not add
172 any `/' between $(DESTDIR) and the following paths. Otherwise,
173 when $(DESTDIR) is empty, the recipes will try to access files
174 with a leading double slash, which have an implementation-defined
175 interpretation (e.g., for Cygwin, they mean UNC paths).
177 2011-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
179 cosmetics: typofix in comments
180 * tests/remake-am-pr10111.test (Makefile.am): Fix typo in comments.
182 Reported by Krzysztof Żelechowski.
184 2011-11-22 Stefano Lattarini <stefano.lattarini@gmail.com>
186 coverage: undistributed '.am' and '.m4' files are diagnosed
187 The stub rules emitted to work around the "deleted header problem"
188 for `.m4' files (included by autoconf in e.g., configure.ac) and
189 for `.am' files (included by automake in e.g., Makefile.am) should
190 not prevent "make" from correctly complaining when such a required
191 file is missing from a distribution tarball.
192 * tests/dist-missing-am.test: New test.
193 * tests/dist-missing-m4.test: Likewise.
194 * tests/dist-missing-included-m4.test: Likewise.
195 * tests/Makefile.am (TESTS): Add them.
196 Suggestion by Ralf Wildenhues.
198 2011-11-22 Stefano Lattarini <stefano.lattarini@gmail.com>
200 coverage: required but missing '.am' and '.m4' files are diagnosed
201 The stub rules emitted to work around the "deleted header problem"
202 for `.m4' files (included by autoconf in e.g., configure.ac) and
203 for `.am' files (included by automake in e.g., Makefile.am) should
204 not prevent the remake rules from correctly erroring out when a
205 still-required file is missing.
206 * tests/deleted-am.test: New test.
207 * tests/deleted-m4.test: Likewise.
208 * tests/Makefile.am (TESTS): Add them.
210 2011-11-22 Stefano Lattarini <stefano.lattarini@gmail.com>
212 coverage: expose automake bug#10111 in the testsuite
213 * tests/remake-am-pr10111.test: New test, xfailing.
214 * tests/remake-m4-pr10111.test: Likewise.
215 * tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.
217 2011-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
219 texinfo: work around Solaris 10 xpg4 shell bug in install rules
220 * lib/am/texinfos.am (install-html-am): Use an extra variable
221 indirection to work around a bug in Solaris 10 /usr/xpg4/bin/sh.
222 Bug revealed by a failure of `txinfo21.test'. See also:
223 <http://lists.gnu.org/archive/html/bug-autoconf/2011-11/msg00005.html>
224 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10026#23>
226 2011-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
228 configure: report perl version in config.log
229 * configure.ac: Report the version of the selected perl interpreter
230 in config.log; this should render the logs more informative.
232 2011-11-13 Stefano Lattarini <stefano.lattarini@gmail.com>
234 tests: fix spurious failure with older install-info
235 * tests/install-info-dir.test (foo.texi): Also add proper
236 `@settitle', `@dircategory' and `@direntry' directive, otherwise
237 older versions of `install-info' (e.g., 4.8) will fail to create
238 the `dir' index file in ${infodir}.
239 Problem revealed by a failure on NetBSD 5.1.
241 2011-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
243 maintcheck: fix spurious failure in 'color2.test'
244 * tests/color2.test: Avoid creative quoting to avoid a spurious
245 failure of the `sc_tests_Exit_not_exit' maintainer check.
247 2011-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
249 tests: fix spurious error in 'uninstall-fail.test' on Solaris
250 * tests/uninstall-fail.test: Solaris 10 /usr/xpg4/bin/sh can add
251 a line number before the `:' in the error messages issued by shell
252 builtins. Account for that in our grepping of make output.
254 2011-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
256 tests: fix typo in 'uninstall-fail.test'
257 * tests/uninstall-fail.test: Always use `$rm_f_is_silent_on_error'
258 instead of the bogus `$rm_f_is_silent_on_failure'.
260 2011-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
262 tests: avoid a spurious failure of 'ltinit.test' MinGW
263 * tests/ltinit.test: Be laxer in grepping configure output, to
264 avoid spurious failures on systems which lack POSIX dynamic
265 linking (e.g., MinGW), or when cross-compiling for such systems.
266 See also commit `v1.11-855-ge9e5d4a'.
267 Report and suggestion from Peter Rosin.
269 2011-11-08 Stefano Lattarini <stefano.lattarini@gmail.com>
271 tests: testsuite is now safe to run with dmake in parallel mode
272 * tests/defs.in: Unset variables DMAKE_CHILD, DMAKE_DEF_PRINTED
273 and DMAKE_MAX_JOBS, which are exported by Solaris dmake when run
274 in parallel mode, and which might confuse make processes spawned
277 2011-11-08 Stefano Lattarini <stefano.lattarini@gmail.com>
279 tests: fix spurious failures w.r.t. parallel make and colorization
280 * tests/color2.test: Skip the test if the $MAKE program fails to
281 consider the standard output as a tty when spawned by `expect'.
282 This is required for make implementations, like FreeBSD make and
283 Solaris dmake, that redirect the output of recipes to temporary
284 files or pipes when run in parallel mode. Since we are at it,
285 simplify the detection of a working `expect' program, and throw
286 in other minor simplifications.
288 2011-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
290 tests: fix spurious failure in 'distcheck-override-infodir.test'
291 * tests/distcheck-override-infodir.test ($required): Add
294 2011-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
296 tests: avoid another failure of 'uninstall-fail.test' on Solaris
297 * tests/uninstall-fail.test: On Solaris 10, if `/bin/rm' is run
298 with the `-f' option, it doesn't print any error message when
299 failing to remove a file (due to e.g., "Permission denied").
300 Yikes. Cater to this incompatibility, by relaxing the test when
301 a faulty `rm' is detected.
303 2011-11-03 Zack Weinberg <zackw@panix.com> (tiny change)
304 Stefano Lattarini <stefano.lattarini@gmail.com>
306 maint-mode: fix botched configure messages
307 This change fixes automake bug#9890.
308 * m4/maintainer.m4 (AM_MAINTAINER_MODE): Fix the "checking ..."
309 configure message related to the enabling/disabling of maintainer
311 * tests/help-maintainer.test: Renamed ...
312 * tests/maintmode-configure-msg.test: ... to this, and extended
313 to cover the fixed bug. Also, since we are at it, make grepping
314 of configure help screens stricter, and throw in some few other
315 changes to reduce code duplication and enhance readability.
316 * tests/Makefile.am (TESTS): Update.
317 * THANKS: Update with Zack's new e-mail address.
318 Report and initial patch by Zack Weinberg, test cases added by
321 2011-10-23 Stefano Lattarini <stefano.lattarini@gmail.com>
323 info: allow user to inhibit creation/update of '${infodir}/dir'
324 With this change, we allow the user to request the install-info
325 rules not to update the `${infodir}/dir' file, by setting the
326 environment variable `AM_UPDATE_INFO_DIR' to the value "no".
327 This is especially useful to distro packagers, and is a definite
328 improvement over our previous hack of looking whether the
329 `install-info' program was the Debian or GNU version -- hack
330 which had been silently broken with recent versions of debian
331 install-info BTW (probably since dpkg 1.15.4, 2009-09-06).
332 This change fixes automake bug#9773. See also Debian Bug#543992.
333 * lib/am/texinfos.am: Don't look anymore at the output of
334 `install-info --version' to decide whether to use it to update
335 the `${infodir}/dir' or not; instead, honour the environment
336 variable `AM_UPDATE_INFO_DIR'.
337 * tests/install-info-dir.test: New test.
338 * tests/Makefile.am (TESTS): Add it.
339 * tests/defs: Also unset `AM_UPDATE_INFO_DIR', to avoid unwanted
340 interferences from the environment.
341 * doc/automake.texi (Texinfo): Update.
344 Report by Jonathan Nieder.
346 2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
348 deps: partially revert commit `v1.11-512-geeee551'
349 This change partly reverts commit "Create subdirs for generated
350 sources even when not dep tracking", of 2011-04-02.
351 That commit had caused the bugs #8485 and #8526. Since we are
352 nearing the bug-fixing automake release 1.11.2, the safest policy
353 at the moment is to just revert the problematic hunks: an older,
354 known bug is better than a regression.
355 * automake.in (handle_single_transform): Don't add a dirstamp
356 dependency, even when $object is derived and lands in a subdir.
357 * tests/Makefile.am (XFAIL_TESTS): Add lex-subobj-nodep.test,
358 remove yacc-dist-nobuild-subdir.test.
360 2011-10-19 Stefano Lattarini <stefano.lattarini@gmail.com>
362 dejagnu: allow the package developer to extend site.exp
363 Fixes automake bug#7873.
364 * lib/am/dejagnu.am (site.exp): Depend from the files listed in
365 $(EXTRA_DEJAGNU_SITE_CONFIG), if any. Append their contents to
366 the generated site.exp (still preserving user edits).
367 * doc/automake.texi (Dejagnu Tests): Update.
368 * tests/dejagnu-siteexp-append.test: New test.
369 * tests/dejagnu-siteexp-extend.test: Likewise.
370 * tests/dejagnu-siteexp-useredit.test: Likewise.
371 * tests/Makefile.am (TESTS): Update.
373 Suggestion by Rainer Orth.
375 2011-10-19 Stefano Lattarini <stefano.lattarini@gmail.com>
377 dejagnu: ensure 'srcdir' is defined as a relative directory
378 This change fixes automake bug#7833.
379 * lib/am/dejagnu.am (check-DEJAGNU): Prefer using plain $(srcdir)
380 over calculating and using the absolute path of $(srcdir).
381 * tests/dejagnu-relative-srcdir.test: New test.
382 * tests/dejagnu-absolute-builddir.test: Likewise.
383 * tests/Makefile.am (TESTS): Update.
384 Report by Ian Lance Taylor. Suggestions by Ralf Wildenhues.
386 2010-12-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
388 Fix testsuite failure of check12.test without DejaGNU.
389 * tests/check12.test: Require runtest.
391 2010-12-10 Stefano Lattarini <stefano.lattarini@gmail.com>
393 Extend and improve tests on DejaGnu support.
394 * tests/dejagnu.test: Do not create useless dummy test script.
395 Add trailing `:' command. In heading comments, add reference
397 * tests/check12.test: ... this new "semantic" test, covering
398 concurrent use of dejagnu tests, simple tests and `check-local'
400 * tests/dejagnu2.test: Make test more reliable, by avoid weak
401 grepping of make output. Prefer `cat' over `echo' to append
402 to configure.in. Quote literal dots in grep regexps. Prefer
403 `grep -c ...' over `grep ... | wc -l'. Make grepping of
404 automake stderr slightly stricter. Add trailing `:' command.
405 * tests/dejagnu3.test: Prefer `cat' over `echo' to append to
406 configure.in. Check stderr of expected-to-fail "make" call.
407 Remove extra blank lines from Makefile.am.
408 * tests/dejagnu4.test: Prefer `cat' over `echo' to append to
409 configure.in. Prefer `mv -f' over plain `mv' when the target
410 file already exists. Avoid extra mkdir calls by creating more
411 directories at once. Better use of blank lines. Check that
412 the `*.log' and `*.sum' files are created by runtest also when
414 * tests/dejagnu7.test: Prefer `cat' over `echo' to append to
415 configure.in. Better use of blank lines. Add a trailing `:'
417 * tests/dejagnu6.test: Likewise, and give the dejagnu test a
418 more descriptive name.
419 * tests/dejagnu5.test: Likewise. Also, simply define package
420 name to `$me' rather than using a non-obvious sed script to
421 extract it from `AC_INIT', and write the Makefile.am with only
423 * tests/Makefile.am (TESTS): Updated.
425 2011-10-21 Peter Rosin <peda@lysator.liu.se>
427 * THANKS: Fix whitespace issue.
429 2011-10-18 Stefano Lattarini <stefano.lattarini@gmail.com>
431 tests: fix spurious failure with FreeBSD make and Yacc in VPATH
432 * tests/subpkg.test: Some cosmetic adjustments. Move the tests
433 checking that $(YLWRAP) is defined and installed properly when
434 ylwrap is in a default auxdir found in a parent package ...
435 * tests/subpkg-yacc.test: ... into this new test, which carefully
436 avoids to trigger the known bug#7884 (combo FreeBSD make plus Yacc
438 * tests/Makefile.am (TESTS): Update.
440 2011-10-18 Stefano Lattarini <stefano.lattarini@gmail.com>
442 tests: avoid spurious failure in 'parallel-tests3.test'
443 This fixes automake bug#8788.
444 * tests/parallel-tests3.test: To ensure that the serial run of
445 the dummy testsuite is still ongoing when the parallel run has
446 terminated, use `kill -0', not a bare `kill'. This will prevent
447 a testsuite crash on NetBSD 5.1, and a testsuite hang on FreeBSD
448 8.2. Also, since we are at it, try harder to avoid possible
449 hangs of the script in other unusual situations.
451 2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
453 tests: fix spurious failures with "chatty" make implementations
454 * tests/distcheck-missing-m4.test: On failure, some make
455 implementations (such as Solaris make) print the whole failed
456 recipe on standard output. This was causing a spurious failure
457 in the checks grepping the output from make. Work around this.
458 * tests/distcheck-outdated-m4.test: Likewise.
460 2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
462 tests: fix spurious failure on fast machines
463 * tests/aclocal-path-precedence.test: Also remove the `configure'
464 script between different test runs, to ensure it is always remade
465 by autoconf. Add proper explicative comments.
467 2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
469 tests: avoid spurious failure of 'uninstall-fail.test' on Solaris
470 * tests/uninstall-fail.test: All the Solaris 10 shells (/bin/sh,
471 /bin/ksh, and /usr/xpg4/bin/sh), upon failing to chdir to a
472 directory with the `cd' builtin, print a message like:
473 "sh: /root: permission denied"
474 which doesn't report the `cd' builtin anywhere. Relax the grepping
475 of the error message accordingly.
477 2011-10-19 Stefano Lattarini <stefano.lattarini@gmail.com>
479 tests: avoid spurious failure of 'uninstall-fail.test' on Cygwin
480 * tests/uninstall-fail.test: Be sure to really skip this test
481 on systems that allows files to be removed from unwritable
482 directories. Motivated by a spurious failure on Cygwin 1.5.
484 2011-10-17 Stefano Lattarini <stefano.lattarini@gmail.com>
486 tests: fix spurious failure with autoconf 2.62
487 * tests/aclocal-path-precedence.test: Rewrite configure.in,
488 rather than appending to it, to avoid spurious failures (at
489 least with autoconf 2.62) due to repeated calls to AC_INIT.
490 Also, add package name and version arguments to AC_INIT, to
491 avoid spurious errors from automake.
493 2011-10-16 Stefano Lattarini <stefano.lattarini@gmail.com>
495 docs: avoid using colon character inside arguments of @pxref
496 Fixes automake bug#9753
497 * doc/automake.texi (VPATH Builds): Avoid using colon character
498 `:' inside arguments of @pxref, as this can cause problems in
499 the generated `.info' files, and such an usage will be explicitly
500 forbidden by future texinfo documentation.
502 Reported by Дилян Палаузов.
504 2011-10-07 Stefano Lattarini <stefano.lattarini@gmail.com>
506 parallel-tests: warn on conditional TEST_EXTENSIONS definition
507 Before this change, automake would have still bailed out, but
508 with a confusing error message (about an invalid redefinition
510 * automake.in (handle_tests): Warn explicitly if TEST_EXTENSIONS
511 has conditional contents.
512 * tests/test-extensions-con.test: New test.
513 * tests/Makefile.am (TESTS): Add it.
516 2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
518 parallel-tests: don't allow @substitutions@ in TEST_EXTENSIONS
519 Even after the last commit `v1.11-476-g90bea64', the checks
520 performed by automake on entries in $(TEST_EXTENSIONS) tried to
521 allow for @substitited@ stuff. This however ends up allowing
522 quite brittle setups, which, most importantly, are of no real
523 practical usefulness anyway. So it's better to just disallow
524 @substitutions@ in TEST_EXTENSIONS altogether, offering a clear
525 error message, instead of risking weird bugs and unexpected
526 behaviors in the generated Makefile.in.
527 * automake.in ($TEST_EXTENSION_PATTERN): Turned from a regular
529 (is_valid_test_extension): ... into this subroutine. Don't allow
530 generic @substitutions@ anymore (possibly making an exception for
531 `@EXEEXT@' under the proper circumstances).
532 * tests/test-extensions.test: Adjust and extend.
534 2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
536 tests: fix spurious failure in 'insthook.test'
537 * tests/insthook.test (Makefile.am): Add a proper `uninstall-hook'
538 target to remove the symlink created by the `install-exec-hook'
539 target; this prevents "make distcheck" from failing spuriously.
540 Since we are at it, delete an extra blank line, and add a trailing
543 2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
545 maintcheck: fix spurious failure
546 * lib/am/distdir.am: Use `$(infodir)', not `${infodir}', to avoid
547 complaints from the `sc_no_brace_variable_expansions' maintainer
550 2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
552 fix: make a test script executable
553 * tests/nobase-nodist.test: Make executable.
555 2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
557 coverage: expose automake bug#9651
558 * tests/dist-auxfile.test: New test, xfailing.
559 * tests/dist-auxfile-2.test: Likewise.
560 * tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.
562 2011-10-01 Stefano Lattarini <stefano.lattarini@gmail.com>
564 parallel-tests: automake error our on invalid TEST_EXTENSIONS
565 This change fixes automake bug#9400.
566 * automake.in (handle_tests): Bail out if a suffix specified in
567 TEST_EXTENSIONS would produce an invalid `xxx_LOG_COMPILER'
568 variable or an invalid suffix rule. Before this change, automake
569 would have issued a confusing error messages (about invalid or
570 non-POSIX variables being defined), and in some situations would
571 have even produced a broken `Makefile.in' file.
572 ($TEST_EXTENSION_PATTERN): New helper variable.
573 * doc/automake.texi (Simple Tests using parallel-tests): Document
574 the limitations on TEST_EXTENSIONS explicitly.
576 * tests/test-extensions.test: New test.
577 * tests/Makefile.am (TESTS): Update.
579 2011-09-28 Stefano Lattarini <stefano.lattarini@gmail.com>
581 docs: don't suggest installing `.m4' files in hard-coded location
582 This change fixes automake bug#7988.
583 * doc/automake.texi (aclocal Options): State that the use of
584 the `--print-ac-dir' option to determine the directory where
585 third-party packages can install their `.m4' files is discouraged
587 (Extending aclocal): Suggest telling the user about ACLOCAL_PATH.
589 Report by Peter Johansson.
591 2011-09-26 Stefano Lattarini <stefano.lattarini@gmail.com>
593 distuninstallcheck: fail also when only one file is left installed
594 This change fixes automake bug#9579.
595 * lib/am/distdir.am (distuninstallcheck): Be stricter in ignoring
596 a potential `dir' file created by install-info and left installed.
597 Also, be more careful about "this can't happen" kind of errors.
598 (am__distuninstallcheck_listfiles): New internal helper macro.
599 * tests/distcheck-pr9579.test: New test.
600 * tests/distcheck-override-infodir.test: Likewise.
601 * tests/Makefile.am (TESTS): Add them.
602 * NEWS, THANKS: Update.
603 Report by Nick Bowler.
605 2011-09-28 Stefano Lattarini <stefano.lattarini@gmail.com>
607 maintcheck: fix usage of `cd' instead of `$(am__cd)'
608 * lib/am/inst-vars.am (am__uninstall_files_from_dir): Use
609 `$(am__cd)', not plain `cd'.
611 2011-09-24 Stefano Lattarini <stefano.lattarini@gmail.com>
613 uninstall: "make uninstall" before "make install" works
614 This change fixes automake bug#9578.
615 * lib/am/inst-vars.am (am__uninstall_files_from_dir): New internal
616 macro, that defines a shell code fragment to uninstall files from
618 * lib/am/data.am (uninstall-%DIR%%PRIMARY%): Use it, to reduce code
619 duplication and improve consistency and correctness.
620 * lib/am/libs.am (uninstall-%DIR%LIBRARIES): Likewise.
621 * lib/am/lisp.am (uninstall-%DIR%LISP): Likewise.
622 * lib/am/mans.am (uninstall-man%SECTION%): Likewise.
623 * lib/am/python.am (uninstall-%DIR%LIBRARIES): Likewise.
624 * lib/am/scripts.am (uninstall-%DIR%SCRIPTS): Likewise.
625 * tests/uninstall-pr9578.test: New test.
626 * tests/uninstall-fail.test: New test.
627 * tests/Makefile.am (TESTS): Add them.
628 * NEWS, THANKS: Update.
629 Report by Nick Bowler.
631 2011-09-22 Stefano Lattarini <stefano.lattarini@gmail.com>
633 tests: fix tests on aclocal search path precedences
634 * tests/aclocal-path-precedence.test: Call `$ACLOCAL' with the
635 proper overridden system acdir.
637 2011-09-20 Stefano Lattarini <stefano.lattarini@gmail.com>
641 2011-09-20 Stefano Lattarini <stefano.lattarini@gmail.com>
643 docs: document planned precedence changes in aclocal search path
644 * doc/automake.texi (Macro Search Path): Explicitly state that the
645 lookup order for extra directories of `.m4' files will be changed
646 in the next major release.
649 2011-09-19 Paolo Bonzini <bonzini@gnu.org>
650 Stefano Lattarini <stefano.lattarini@gmail.com>
652 aclocal: handle ACLOCAL_PATH environment variable
653 * aclocal.in (parse_ACLOCAL_PATH): New function, parse ACLOCAL_PATH
654 as a colon-separated list of directories to be included in the
656 * doc/automake.texi (Macro Search Path): Document new behavior and
657 the precedence rules for various elements of the search path.
658 * tests/aclocal-path.test: New test.
659 * tests/aclocal-path-install.test: Likewise.
660 * tests/aclocal-path-install-serial.test: Likewise.
661 * tests/aclocal-path-precedence.test: Likewise.
662 * tests/aclocal-path-nonexistent.test: Likewise.
663 * tests/Makefile.am (TESTS): Add them.
665 * tests/distcheck-missing-m4.test: Extend by also checking
666 interactions with ACLOCAL_PATH.
667 * tests/distcheck-outdated-m4.test: Likewise, and fix a couple
668 of botched comments since we are at it.
670 2011-09-19 Stefano Lattarini <stefano.lattarini@gmail.com>
672 tests: fix spurious failure in 'primary-prefix-valid-couples.test'
673 * tests/primary-prefix-valid-couples.test: After commit
674 v1.11-464-gc9dfc36, `java_JAVA' is not a valid prefix/primary
675 combination by default anymore: one has to explicitly define
676 $(javadir) to make it so. So just drop `java_JAVA' from our
677 Makefile.am Also, since we are at it, ...
678 (configure.in): ... remove AM_PROG_GCJ from here, as it's not
681 2011-09-19 Stefano Lattarini <stefano.lattarini@gmail.com>
683 docs: deprecate JAVA primary
684 * doc/automake.texi (Java): Deprecate the JAVA primary, stating
685 that it will become obsolete in automake 1.12 and probably removed
686 altogether in automake 1.13. Reflect this in the section title,
687 by appending the string "(deprecated feature)".
688 (@menu, @detailmenu): Update.
689 (Java Support with gcj): The cross-referenced support for bytecode
690 compilation with the JAVA primary is rudimentary and deprecated.
691 State that explicitly.
693 2011-09-19 Stefano Lattarini <stefano.lattarini@gmail.com>
695 docs: clearer distinction between `.java' with javac and with gcj
696 * doc/automake.texi (Java support): Rename this node ...
697 (Java support with gcj): ... to this, and change its title from
698 "Compiling Java sources" to "Compiling Java sources using gcj".
699 (@detailmenu, @menu, @cindex): Update and make more precise.
700 (Java): Change the title of this node from simply "Java" to
701 "Java bytecode compilation".
702 (@detailmenu, @menu, @cindex): Update and make more precise.
704 2011-09-18 Stefano Lattarini <stefano.lattarini@gmail.com>
706 java: complain if java_JAVA is used but $(javadir) is undefined
707 Fixes automake bug#8461.
708 * automake.in (handle_java): Remove inappropriate "java" argument
709 from the calls to `&am_install_var' and `&am_primary_prefixes'.
710 * tests/instdir-java.test (Makefile.am): Define `$(javadir)'.
711 * tests/javadir-undefined.test: New test.
712 * tests/Makefile.am (TESTS): Add it.
715 2011-09-12 Stefano Lattarini <stefano.lattarini@gmail.com>
717 cosmetics: fix various typos and grammaros
719 * tests/py-compile-basic.test: Likewise.
720 * tests/py-compile-basedir.test: Fix botched wording in comments.
721 * tests/py-compile-option-terminate.test: Fix typo and incomplete
723 Suggestions by Peter Rosin.
725 2011-09-18 Stefano Lattarini <stefano.lattarini@gmail.com>
727 coverage: test interactions of `nobase_' and `nodist_'
728 * tests/nobase-nodist.test: New test.
729 * tests/Makefile.am (TESTS): Add it.
731 2011-09-18 Stefano Lattarini <stefano.lattarini@gmail.com>
733 java: fix various blunders in test 'java-mix.test'
734 * tests/java-mix.test: Add missing call to `set -e'. Fix inverted
735 semantics (`.java' files are expected *not* to be distributed by
736 default, not the other way round). Fix various typos in the name
737 of the `.java' files. Correct other minor blunders. Improve some
740 2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
742 java: allow both JAVA and nobase_JAVA in the same Makefile.am
743 * automake.in (handle_java): Also strip `nobase_' from the given
745 * tests/java-clean.test: Update and extend.
746 * tests/java-compile-install.test: Likewise.
747 * tests/java-no-duplicate.test: Likewise.
748 * tests/java-sources.test: Likewise.
749 * tests/java-noinst.test: Likewise.
750 * tests/java-mix-dist-nodist.test: Renamed to ...
751 * tests/java-mix.test: ... this, and extended.
752 * tests/java-nobase.test: New test, still xfailing due to
754 * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
756 2011-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
758 java: allow both dist_JAVA and nodist_JAVA in the same Makefile.am
759 Fixes automake bug#8434.
760 * automake.in (handle_java): Strip `dist_' and `nodist_' from
761 the given prefix. Define a new internal Makefile variable
762 `am__java_sources'. Related adjustments.
763 * lib/am/java.am (JAVAC, JAVAROOT, CLASSPATH_ENV): Define only the
764 first time this am file is processed.
765 (class%DIR%.stamp): Stamp file renamed ...
766 (class%NDIR%.stamp): ... to this, so that the `dist_' and `nodist_'
767 prefixes are stripped from the name of the stampfile. Adjust
768 declaration of dependencies by using the new automake-generated
769 internal variable `$(am__java_sources)'. In the rule, use `$@'
770 as the name of the target, rather than hard-coding it.
771 * tests/java.test: Update and extend.
772 * tests/java-no-duplicate.test: New test.
773 * tests/java-mix-dist-nodist.test: Likewise.
774 * tests/java-compile-and-install.test: Likewise.
775 * tests/java-clean.test: Likewise.
776 * tests/java-sources.test: Likewise.
777 * tests/Makefile.am (TESTS): Update.
779 2011-09-11 Stefano Lattarini <stefano.lattarini@gmail.com>
781 tests: fix spurious failure on fast machines
782 * tests/aclocal-acdir.test: Avoid spurious failures due to caching
783 issues, by cleaning the autom4te cache between all the aclocal
784 invocations, and by always calling autoconf with the `--force'
787 2011-09-09 Stefano Lattarini <stefano.lattarini@gmail.com>
789 aclocal: better URL reference in error message
790 * aclocal.in (scan_file): In the error message about underquoted
791 definitions, reference the automake page at `www.gnu.org', not
792 at `sources.redhat.com'.
794 2011-09-09 Stefano Lattarini <stefano.lattarini@gmail.com>
796 coverage: distcheck-hook to catch missing/outdated *.m4 files
797 Related to automake bug#9037.
798 * tests/distcheck-missing-m4.test: New test.
799 * tests/distcheck-outdated-m4.test: Likewise.
800 * tests/distcheck-hook-m4.am: New data file, used by the new
802 * tests/Makefile.am (distcheck-m4-missing.log,
803 distcheck-m4-outdated.log): Depend on it.
804 (EXTRA_DIST): Distribute it.
805 (TESTS): Add the new tests.
807 2011-09-06 Stefano Lattarini <stefano.lattarini@gmail.com>
809 aclocal: more granularity in acdir overriding
810 Before this change, using the `--acdir' option caused aclocal to
811 redefine both the directory of automake-provided m4 macros and the
812 directory of third-party system-wide m4 macros. With this change,
813 we deprecate the `--acdir' aclocal option, and introduce two new
814 options `--automake-acdir' and `--system-acdir', to allow for more
816 * aclocal.in (@automake_includes, @system_includes,
817 @user_includes): Fix and extend comments.
819 (handle_acdir_option): New function.
820 (parse_arguments): Recognize new options `--system-acdir' and
821 `automake-acdir', and handle `--acdir' using the new function
822 above. Simplify logic by assuming that the directory of
823 third-party system-wide m4 files always exists.
824 * tests/aclocal.in: Update to use the new options, instead of
825 the deprecated. `--acdir'.
826 * m4/dirlist: Move ...
827 * m4/acdir/dirlist: ... here.
828 * m4/Makefile.am (EXTRA_DIST): Update.
829 (m4datadir): Rename ...
830 (automake_acdir): ... to this. Accordingly, ...
831 (dist_m4data_DATA): ... rename this ...
832 (dist_automake_ac_DATA): ... to this.
833 (system_acdir): New, directory.
834 (dist_system_ac_DATA): New, defined to an empty value; this will
835 ensure that the $(system_acdir) directory will be created by
837 * tests/aclocal.test: Remove check about the `--print-ac-dir'
838 option of aclocal, it has been moved into ...
839 * tests/aclocal-print-acdir.test: ... this new test, and quite
841 * tests/aclocal-acdir.test: New test.
842 * tests/Makefile.am (TESTS): Add the new tests.
843 * NEWS, bootstrap: Update.
844 * doc/automake.texi (aclocal Options, Macro Search Path): Update.
846 2011-09-05 Peter Rosin <peda@lysator.liu.se>
848 * tests/amhello-binpkg.test: Add missing $EXEEXT usage.
850 2011-09-04 Stefano Lattarini <stefano.lattarini@gmail.com>
852 fix: list test 'vala-vpath.test' in XFAIL_TESTS
853 * tests/Makefile.am (XFAIL_TESTS): Update.
855 2011-09-02 Stefano Lattarini <stefano.lattarini@gmail.com>
857 tests: simplify wrapper for aclocal
858 * tests/aclocal.in: Remove use of $ACLOCAL_TESTSUITE_FLAGS and
859 extra `-I' flags; they are not really required, since the file
860 `m4/amversion.m4' is generated in the srcdir anyway.
861 * tests/acloca10.test: Remove use of $ACLOCAL_TESTSUITE_FLAGS.
862 * tests/acloca18.test: Likewise.
863 * tests/defs.in: Don't nullify $ACLOCAL_TESTSUITE_FLAGS, and do
866 2011-09-02 Stefano Lattarini <stefano.lattarini@gmail.com>
868 coverage: vala support failing for VPATH from-scratch builds
869 * tests/vala-vpath.test: New test, xfailing.
870 * tests/Makefile.am (TESTS): Update.
872 From a report by Zbigniew Jędrzejewski-Szmek.
873 Related to automake bug#8753.
875 2011-09-01 Stefano Lattarini <stefano.lattarini@gmail.com>
877 docs: report few more automake parsing limitations
878 Partly motivated by automake bug#8360.
879 * doc/automake.texi (General Operation): Report few more automake
880 limitations w.r.t. parsing of unusual makefile constructs. Related
882 * tests/doc-parsing-buglets-colneq-subst.test: New test.
883 * tests/doc-parsing-buglets-tabs.test: Likewise.
884 * tests/Makefile.am (TESTS): Update.
886 2011-08-25 Stefano Lattarini <stefano.lattarini@gmail.com>
888 tests: list "forgotten" test script in TESTS
889 * tests/Makefile.am (TESTS): Also list ...
890 * tests/java-empty-classpath.test: ... this test. Since we are
891 at it, remove trailing whitespace from a couple of lines.
893 2011-08-25 Eric Blake <eblake@redhat.com>
895 ylwrap: fix unusual indentation whitespace
896 * lib/ylwrap: Convert tabs to spaces.
897 Reported by Karl Berry.
899 2011-08-17 Stefano Lattarini <stefano.lattarini@gmail.com>
901 * THANKS (Daniel Richard G.): Update e-mail address.
903 2011-08-16 Daniel Richard G. <skunk@iskunk.org> (tiny change)
904 Stefano Lattarini <stefano.lattarini@gmail.com>
906 java: avoid compilation errors when CLASSPATH is empty
907 * lib/am/java.am (CLASSPATH_ENV): When redefining `$CLASSPATH',
908 do not append an empty component in case the previous value of
909 CLASSPATH is empty or unset.
910 * tests/java-empty-classpath.test: New test.
911 * tests/Makefile.am (TESTS): Update.
912 Fixes automake bug#9306.
914 2011-08-16 Stefano Lattarini <stefano.lattarini@gmail.com>
916 parallel-tests: no more spurious successes for FreeBSD make
917 Work around a bug of FreeBSD make bug that was causing the
918 automake-generated "check" target to complete with success
919 even if some tests failed; this happened only when FreeBSD
920 make was run in concurrent mode (as in, e.g., "make -j2
921 check"). The bug is not present in NetBSD make.
922 This change fixes automake bug#9245:
923 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9245>
924 See also FreeBSD PR bin/159730:
925 <http://www.freebsd.org/cgi/query-pr.cgi?pr=159730>
926 * lib/am/check.am [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Use a
927 more "safe" (and apparently redundant) idiom to exit with error,
928 so that the non-zero exit status is picked up also by FreeBSD
929 make when it's running in concurrent mode.
931 * tests/check-concurrency-bug9245.test: New test.
932 * tests/Makefile.am (TESTS): Update.
934 2011-08-11 Stefano Lattarini <stefano.lattarini@gmail.com>
936 hacking: we now require autoconf 2.68
937 * HACKING ("Working in git"): Use autoconf and autom4te 2.68,
938 not 2.67, in the examples.
940 2011-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
942 test defs: more environment cleanup
943 * tests/defs.in: Also unset variables AM_COLOR_TESTS and
944 AM_TESTS_ENVIRONMENT.
946 2011-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
948 tests: fix spurious failure with Solaris make
949 * tests/distcheck-configure-flags-am.test: Avoid using `+=' too
950 liberally with AM_DISTCHECK_CONFIGURE_FLAGS, since the line breaks
951 so introduced, in conjunction with single quotes, might confuse
954 2011-08-03 Stefano Lattarini <stefano.lattarini@gmail.com>
956 maintcheck: fix maintainer-check failures, both real and spurious
957 * tests/amhello-binpkg.test: Use "$MAKE", not bare "make".
958 * Makefile.am (sc_perl_local): Also allow perl special variable
959 `$~' to be localized. And be slightly laxer in the regexp, to
960 allow for usages like "local $_ = $foo;".
961 (sc_tests_overriding_macros_on_cmdline): Also allow for command
962 line overriding of the `DISABLE_HARD_ERRORS' make variable. Try
963 to avoid false positives for usages like "$MAKE || st=$?".
965 2011-08-03 Bruno Haible <bruno@clisp.org>
967 docs: how to use '-I' option in AM_CPPFLAGS for best VPATH support
968 * doc/automake.texi (Program Variables): Recommend -I options to
969 both the build directory and the source directory when needed.
971 2011-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
973 tests: relax a test on amhello examples to cater to Solaris tar
974 * tests/amhello-binpkg.test: When the tar implementation in use
975 is not GNU tar, relax the tests on tar output, to avoid spurious
976 failures. For example, "tar cvf ..." with GNU tar can output
977 lines like "./usr/bin/hello" on the standard output, while with
978 Solaris tar it can output lines like "a ./usr/bin/hello 8K" on
979 standard output, and with Heirloom tar it can output lines like
980 "a ./usr/bin/hello 15 tape blocks" on standard error.
982 2011-07-15 Benoit Sigoure <tsunanet@gmail.com>
984 docs: add references between the 2 sections on java support
985 * doc/automake.texi (Java Support, Java): Add cross-references.
987 2011-07-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
989 Sync auxiliary files from upstream.
990 * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub,
991 lib/texinfo.tex: Sync from upstream.
993 2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
995 tests: fix weakness in 'tests-environment-backcompat.test'
996 * tests/tests-environment-backcompat.test: Do not override the
997 content of xfailing test `baz.test' with a "weaker" version that
998 fails unconditionally: the test must fail only when the 'strict'
999 pragma is in use, in order not to reduce coverage.
1001 2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
1003 docs, tests: synchronize examples on silent-rules from config.site
1004 * doc/automake.texi (Automake silent-rules Option): Reference test
1005 'silent-configsite.test' in comments.
1007 2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
1009 tests: portability fixes in tests on amhello examples
1010 * tests/amhello-binpkg.test: Don't use "tar xzf too.tag.gz" to
1011 extract a gzip-compressed tarball, that's unportable to some
1012 tar implementations; use the "gzip -dc fo.tar.gz | tar xf -"
1014 * tests/amhello-cflags.test: Likewise.
1015 * tests/amhello-cross-compile.test: Likewise.
1016 Suggestion from Ralf Wildenhues.
1018 2011-07-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1020 remake: add test ensuring that slower remakes don't hang
1021 * tests/remake-subdir-long-time.test: New test.
1022 * tests/Makefile.am (TESTS): Update.
1023 Suggestion by Ralf Wildenhues.
1025 2011-07-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1027 remake: fix outdated comment in configure.am
1028 * lib/am/configure.am: Fix comment falsified by changes in
1029 commit `v1.11-366-gbee9871'.
1030 Suggestion by Ralf Wildenhues.
1032 2011-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
1034 docs, tests: synchronize examples from docs to tests
1035 * tests/README (Writing test cases): Give suggestions on how to
1036 keep test cases and examples in the documentation synchronized.
1037 * doc/automake.texi: Improve or fix existing testcase-referencing
1038 comments, and add many new ones.
1039 * HACKING (Administrivia): Suggest to test complex examples and
1040 idioms from the manual.
1041 * tests/specflg8.test: Improve synchronization with the example
1043 * tests/output11.test:Likewise.
1044 * tests/txinfo21.test:Likewise.
1045 * tests/interp.test: Likewise. Since we are at it, and enable
1046 the `errexit' shell flag, do related changes, and add trailing
1048 * tests/amhello-cflags.test: New test.
1049 * tests/amhello-cross-compile.test: Likewise.
1050 * tests/amhello-binpkg.test: Likewise.
1051 * tests/tests-environment-backcompat.test: Likewise.
1052 * tests/parallel-tests-log-compiler-example.test: Likewise.
1053 * tests/Makefile.am (TESTS): Update.
1055 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1057 docs: avoid a footnote, some related rewordings and improvements
1058 * doc/automake.texi (Dist): Reword the part about automatically
1059 distributed files to avoid a footnote. Since we are at it, extend
1060 a bit, and add an example and a reference to a relevant test case.
1062 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1064 docs: minor cosmetic fixes
1065 * doc/automake.texi: Break few overly long lines, throughout the
1067 ("Simple Tests"): Move @vindex for XFAIL_TESTS to the correct
1068 position, i.e., before and not after the paragraph where it is
1070 ("Options" @item ansi2knr): Use @pxref instead of @xref. This
1071 fixes a texinfo warning.
1072 ("Other things Automake recognizes" @item AM_C_PROTOTYPES): Use
1073 @pxref instead of @ref.
1075 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1077 help: improve text about automatically-distributed files
1078 This change fixes automake bug#7819.
1079 * automake.in (usage): Distinguish between files that are always
1080 automatically distributed when found, and those which are only
1081 "under certain conditions".
1082 * doc/automake.texi (Basics of Distribution): Update accordingly.
1083 * tests/autodist-subdir.test: Update.
1084 * tests/autodist-no-duplicate.test: Likewise.
1085 * tests/autodist.test: Likewise.
1086 (configure.in): Remove useless call to AM_MAINTAINER_MODE.
1088 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1090 refactor: split 'usage' subroutine in automake
1091 This change is related to automake bug#7819.
1092 * automake.in (print_autodist_files): New subroutine,
1094 (usage): ... this, which now uses it.
1095 * tests/autodist-no-duplicate.test: New test.
1096 * tests/Makefile.am (TESTS): Update.
1098 2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1100 tests: fix bug in 'autodist.test'
1101 * tests/autodist.test: Avoid spurious failure due to no
1102 `defs-static' file being found in the parent directory.
1104 2011-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
1106 maintcheck: extend 'sc_tests_plain_*' checks
1107 * Makefile.am (sc_tests_plain_autom4te): New check.
1108 (sc_tests_plain_autoreconf): Likewise.
1109 (sc_tests_plain_autoheader): Likewise.
1110 (syntax_check_rules): Update.
1112 2011-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
1114 maintcheck: avoid few spurious failures
1115 * Makefile.am (sc_tests_plain_aclocal, sc_tests_plain_perl,
1116 sc_tests_plain_autoconf, sc_tests_plain_automake,
1117 sc_tests_plain_autoupate): Be stricter in matching an erroneous
1118 literal command, i.e., `aclocal', `automake', `perl', etc.
1120 2011-06-20 Bert Wesarg <bert.wesarg@googlemail.com> (tiny change)
1122 check: don't use multi-line coloring for the report
1123 "less -R" can't handle multi-line coloring as it is done for the
1124 check reports of the serial and parallel testsuite, because of
1125 performance reasons. Thus, color each line of the check report
1127 * lib/am/check.am (am__text_box): Accept colors for lines, and
1128 color each line by its own.
1129 [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Let am__text_box handle
1131 [!%?PARALLEL_TESTS%] $(check-TESTS): Color each report line by
1135 2011-06-18 Stefano Lattarini <stefano.lattarini@gmail.com>
1137 docs: AM_DISTCHECK_CONFIGURE_FLAGS is for corner cases
1138 * doc/automake.texi (Checking the Distribution): Explain that the
1139 developers should take care of making their code buildable without
1140 requiring any special configure options, so that in general
1141 AM_DISTCHECK_CONFIGURE_FLAGS shouldn't be used. Give an example
1142 of where its use is legitimate.
1143 Suggestions from Ralf Wildenhues and Eric Blake.
1145 2011-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
1147 ansi2knr: deprecate, it will go away in the next major release
1148 * doc/automake.texi: Loudly and repeatedly state that the old
1149 de-ANSI-fication features are now deprecated and will be removed
1150 in the next major Automake release. Other related adjustments.
1151 * lib/Automake/Options.pm (_process_option_list ): Give a warning
1152 in the `obsolete' category when the `ansi2knr' option is used.
1153 * m4/protos.m4 (AM_C_PROTOTYPES): Deprecate this macro: a warning
1154 in the `obsolete' category will be emitted it if is used.
1155 * tests/ansi2knr-deprecation.test: New test.
1156 * tests/Makefile.am (TESTS): Update.
1157 * tests/ansi.test: Adjust, by calling autoconf and/or automake
1158 with the `-Wno-obsolete' flag.
1159 * tests/ansi10.test: Likewise.
1160 * tests/ansi2.test: Likewise.
1161 * tests/ansi3.test: Likewise.
1162 * tests/ansi3b.test: Likewise.
1163 * tests/ansi4.test: Likewise.
1164 * tests/ansi5.test: Likewise.
1165 * tests/ansi6.test: Likewise.
1166 * tests/ansi7.test: Likewise.
1167 * tests/ansi8.test: Likewise.
1168 * tests/ansi9.test: Likewise.
1169 * tests/cxxansi.test: Likewise.
1170 * tests/libobj8.test: Likewise.
1171 * NEWS: Update about the future planned backward-incompatibility
1172 due to the removal of de-ANSI-fication feature.
1174 2011-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
1176 docs: primary/prefix combination "pkglib_PROGRAMS" is now invalid
1177 * doc/automake.texi (Program Sources): pkglib_PROGRAMS is not a
1178 valid combination anymore, so don't document it. Inconsistency
1179 introduced in commit `v1.11-373-g9ca6326'.
1181 2011-06-19 Jim Meyering <meyering@redhat.com>
1183 docs: replace obsolete @vindex entry with a useful one
1184 * doc/automake.texi (Program Sources): Do not index obsolete
1185 pkglib_PROGRAMS here. Do index pkglibexec_PROGRAMS.
1187 2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
1189 tests: optimize tests on primary/prefix mismatch for speed
1190 * tests/primary-prefix-invalid-couples.test: Partial rewrite, in
1191 order to use just a single automake invocation rather than one
1192 invocation for each invalid primary/prefix couple. This improves
1193 the test script execution time by an order of magnitude.
1194 Since we are at it, throw in some other improvements to avoid
1195 unrelated automake warnings and failures that could potentially
1196 cause false positives w.r.t. the automake exit status.
1198 2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
1200 news: update w.r.t. introduction of AM_DISTCHECK_CONFIGURE_FLAGS
1201 * NEWS (Miscellaneous changes): Update.
1203 2011-06-10 Stefano Lattarini <stefano.lattarini@gmail.com>
1205 maintcheck: DISTCHECK_CONFIGURE_FLAGS can be defined on make cmdline
1206 * Makefile.am (sc_tests_overriding_macros_on_cmdline): It's now
1207 acceptable that the test scripts override DISTCHECK_CONFIGURE_FLAGS
1208 on the make command line. Update comments accordingly. Since we
1209 are at it, make the relevant grepping rules slightly tighter.
1211 2011-06-10 Stefano Lattarini <stefano.lattarini@gmail.com>
1213 distcheck: add support for AM_DISTCHECK_CONFIGURE_FLAGS
1214 * doc/automake.texi (Checking the Distribution): Suggest to use
1215 AM_DISTCHECK_CONFIGURE_FLAGS, not DISTCHECK_CONFIGURE_FLAGS, to
1216 define (in the top-level Makefile.am) extra flags to be passed
1217 to configure at "make distcheck" time; DISTCHECK_CONFIGURE_FLAGS
1218 should be reserved for the user. Add proper `@vindex' directive.
1219 Document that AM_DISTCHECK_CONFIGURE_FLAGS is not honoured in a
1220 subpackage Makefile.am, but the flags in it are passed down to
1221 the configure script of the subpackage.
1222 * lib/am/distdir.am (distcheck): Also pass the flags in
1223 $(AM_DISTCHECK_CONFIGURE_FLAGS) to the configure invocation.
1225 * tests/defs.in.test (AM_DISTCHECK_CONFIGURE_FLAGS,
1226 DISTCHECK_CONFIGURE_FLAGS): Unset in case they are exported in
1227 the environment, they might improperly influence our testsuite.
1228 * tests/distcheck-configure-flags.test: New test.
1229 * tests/distcheck-configure-flags-am.test: Likewise.
1230 * tests/distcheck-configure-flags-subpkg.test: Likewise.
1231 * distcheck-hook.test: Likewise.
1232 * distcheck-hook2.test: Likewise.
1233 * tests/Makefile.am (TESTS): Update.
1234 Closes automake bug#8784.
1236 2010-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
1238 docs: better documentation for silent make rules
1239 * doc/automake.texi (Options): Detailed description of the
1240 automake option `silent-rules' moved from here ...
1241 (Silent Make): ... into this new chapter, expanded, improved,
1242 and subdivided into ...
1243 (Make verbosity, Tricks For Silencing Make,
1244 Automake silent-rules Option): ... these new sections.
1245 (@menu, @detailmenu): Update.
1246 * tests/silent-configsite.test: New test, checking that the
1247 user can control default mode of silent-rules from config.site,
1248 as is documented in the manual.
1249 * tests/Makefile.am (TESTS): Updated.
1251 2011-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
1253 Warnings about primary/prefix mismatch fixed and extended.
1254 * automake.in (%standard_prefix): Add `doc' and `locale'.
1255 Rename `pkgdatadir' to `pkgdata'. Similarly for`pkglibdir',
1256 `pkgincludedir' and `pkglibexecdir'.
1257 (handle_programs): List `pkglibexec', not `pkglib', among the
1258 prefixes valid for the `PROGRAMS' primary.
1259 (handle_data): List also `doc' among the prefixes valid for
1260 the `DATA' primary. This is required by automake's own build
1262 * tests/dirforbid.test: Test removed, superseded by ...
1263 * tests/primary-prefix-invalid-couples.test: ... this new test.
1264 * tests/primary-prefix-valid-couples.test: New test.
1265 * tests/primary-prefix-couples-documented-valid.test: Likewise.
1266 * tests/primary-prefix-couples-force-valid.test: Likewise.
1267 * tests/java3.test: Adjusted, and extended a bit.
1268 * tests/Makefile.am (TESTS): Updated.
1270 From a report by Eric Blake.
1272 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
1274 test defs: new function 'fatal_', for hard errors
1275 Before this patch, the only way offered by tests/defs to
1276 properly signal a hard error was the `framework_failure_'
1277 function. But the error message issued by that function,
1278 as its name would suggest, refers to a set-up failure in the
1279 testsuite, while hard errors can obviously also be due to
1280 other reasons. The best way to fix this inconsistency is to
1281 introduce a new function with a more general error message.
1282 Inspired by a recent similar change to Gnulib's tests/init.sh.
1283 * tests/defs.in (fatal_): New function.
1284 * tests/README (Section "Writing test cases" subsection "Do"):
1285 Suggest the use of `fatal_', not of `framework_failure_', for
1286 generic hard errors. The latter should be reserved for "real"
1289 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
1291 py-compile: '--' and non-option arguments terminate the option list
1292 * lib/py-compile: Any non-option argument, or the special `--'
1293 argument, now explicitly terminates the list of options.
1294 * tests/py-compile-option-terminate.test: New test.
1295 * tests/Makefile.am (TESTS): Update.
1298 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
1300 py-compile: complain on unrecognized options
1301 * lib/py-compile: Complain on unrecognized options. Don't be too
1302 lax in matching `--help' and `--version' options.
1303 * tests/py-compile-usage.test: Extend accordingly.
1306 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
1308 py-compile: normalize error and help messages
1309 * lib/py-compile: Now error messages do not begin with a capital
1310 letter, nor end with a period, as per GNU standards. Prepend the
1311 error messages with the name of the script, not with its path.
1312 When an invalid usage is recognized, always display the customary
1313 message "Try `py-compile --help' ..." on a line of its own.
1314 ($me): New variable, containing the name of the
1315 program, i.e., `py-compile'. Use it throughout.
1316 (usage_error): New function, used to display error messages about
1318 * tests/py-compile-usage.test: Extend and tighten accordingly.
1320 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
1322 python tests: add "unit tests" on py-compile
1323 * tests/py-compile-basic.test: New test.
1324 * tests/py-compile-basic2.test: New test.
1325 * tests/py-compile-basedir.test: Likewise.
1326 * tests/py-compile-destdir.test: Likewise.
1327 * tests/py-compile-env.test: Likewise.
1328 * tests/py-compile-usage.test: Likewise.
1329 * tests/Makefile.am (TESTS): Update.
1330 Tested with python 2.0.1, 2.4.6, 2.6.6, 2.7.1, and 3.1.3.
1332 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
1334 py-compile: the '--destdir' option now accepts a blank argument
1335 * lib/py-compile (Option parsing): Do not count an empty argument
1336 to `--destdir' or `--basedir' as a missing argument.
1337 * lib/python.am: Simplify accordingly, passing the `--destdir'
1338 option to py-compile unconditionally, even if `$(DESTDIR)' is
1342 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
1344 python: run the 'py-compile' script with $(SHELL)
1345 * lib/python.am (install-%DIR%PYTHON): Run each instance of
1346 py-compile using $(SHELL). Since we are at it, break overly
1348 (am__py_compile): New variable, to reduce code duplication.
1350 2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
1352 maintcheck: fix some failures, extend some checks
1353 * Makefile.am (sc_diff_automake_in_automake): Update, as we
1354 now expect 9 lines, not 8, to be changed from `automake.in'
1356 (sc_diff_aclocal_in_aclocal): New maintainer check, similar to
1357 the above, and checking that only 10 lines are changed from
1358 `aclocal.in' to `aclocal'.
1359 (syntax_check_rules): Update.
1360 (sc_tests_Exit_not_exit): Exempt self tests `self-check-*.test'
1361 from this check, as they can legitimately use the bare `exit'
1362 builtin in various places.
1363 * doc/automake.texi (Python): Remove stray `@' from the end of
1364 a line. Typo introduced in commit `v1.11-312-g5bf7af6'.
1365 * tests/depcomp8a.test: Pass DISTCHECK_CONFIGURE_FLAGS to make
1366 from the environment rather than from the command line, to
1367 pacify the `sc_tests_overriding_macros_on_cmdline' maintainer
1369 * tests/depcomp8b.test: Likewise.
1371 2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
1373 remake: behave better with non-GNU make in subdirectories
1374 Currently, with every decent make program, it is possible to
1375 rebuild out-of-date autotools-generated files with a simple
1376 "make Makefile" -- but for this to work reliably with non-GNU
1377 make implementations, the command must be issued from the
1378 top-level directory. This patch removes such limitation.
1379 * lib/am/configure.am (am--refresh): Depend on `%MAKEFILE%'.
1380 * tests/defs.in (using_gmake): New function, backported from the
1381 `master' branch (and simplified).
1382 * tests/remake-subdir.test: New test.
1383 * tests/remake-subdir2.test: Likewise.
1384 * tests/remake-subdir-gnu.test: Likewise.
1385 * tests/remake-subdir-from-subdir.test: Likewise.
1386 * tests/Makefile.am (TESTS): Update.
1388 2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
1390 automake, aclocal: honour configure-time AUTOCONF and AUTOM4TE
1391 Currently, the Automake's own configure script allow definition
1392 of AUTOCONF and AUTOM4TE, expected to point respectively to an
1393 autoconf and autom4te programs. But while these definitions are
1394 honoured in the Automake's build systems and test suite, they
1395 were *not* honoured in the generated `automake' and `aclocal'
1396 scripts. This behaviour, apart from being wrong in that it does
1397 not allow the user enough freedom in choosing his tools, also
1398 caused inconsistencies in the test suite, brining to spurious
1400 Problem reported by Graham Reitz on the automake list; see thread:
1401 <http://lists.gnu.org/archive/html/automake/2011-05/msg00022.html>
1402 * automake.in ($traces): Use `@am_AUTOCONF', not simply `autoconf'.
1403 * aclocal.in ($traces): Use `@am_AUTOM4TE', not simply `autom4te'.
1404 * Makefile.am (do_subst): Substitute also `@am_AUTOCONF' and
1409 2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
1411 build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too
1412 Our build system allows the user to override AUTOCONF and AUTOHEADER
1413 at configure time, and honours these overrides in our testsuite.
1414 But it didn't do the same with AUTOM4TE, AUTORECONF and AUTOUPDATE.
1415 This change fixes that inconsistency.
1416 * configure.ac (am_AUTOM4TE, am_AUTOUPDATE, am_AUTORECONF): New
1417 AC_SUBSTitutions. Update comments.
1418 * tests/defs.in ($AUTOUPDATE): Default to `@am_AUTOUPDATE@' now.
1419 ($AUTOM4TE): New variable, defaulting to `@am_AUTOM4TE@'.
1420 ($AUTORECONF): New variable, defaulting to `@am_AUTORECONF@'.
1421 * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Update.
1423 2011-05-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1424 Stefano Lattarini <stefano.lattarini@gmail.com>
1426 tests/README: fix example about `make -e' usage
1427 * tests/README (Section "Writing test cases" subsection "Do"): When
1428 some variable is never initialized in the Makefile, `-e' is not
1429 necessary in order to override it. DESTDIR is such a variable: we
1430 ensure that we do not ever initialize it. And as such, it is quite
1432 $ make DESTDIR=/foo/bar install
1433 and in fact, quite widely used.
1434 So our example about when `make -e' is required, which references
1435 the `DESTDIR' variable, is poorly chosen, if not downright wrong.
1436 Rewrite it to use `prefix' as the overridden variable instead.
1438 2011-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
1440 parallel-tests: stricter checks on DISABLE_HARD_ERRORS support
1441 * tests/parallel-tests-harderror.test: New test, doing more
1442 in-depth checks on DISABLE_HARD_ERRORS.
1443 * tests/parallel-tests.test: Remove tests on DISABLE_HARD_ERRORS,
1445 * tests/Makefile.am (TESTS): Update.
1447 2011-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
1449 testsuite: avoid re-running few tests with 'parallel-tests' option
1450 Some tests in our testsuite use the 'simple-tests' driver only
1451 marginally, or simply as a mean to conveniently check unrelated
1452 invariants. It makes little sense to force these tests to also
1453 run with the 'parallel-tests' Automake option active, as doing so
1454 offers no real gain in coverage, while often causing a measurable
1455 overhead in execution time (for an already too-slow testsuite).
1456 * tests/pr401.test (parallel_tests): Define to "no", to prevent
1457 the generation of a sibling test script using the 'parallel-tests'
1459 * tests/pr401b.test: Likewise.
1460 * tests/pr401c.test: Likewise.
1462 2011-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
1464 testsuite: allow tests to avoid the use of 'parallel-tests' option
1465 * tests/gen-parallel-tests: Do not generate "siblings" for tests
1466 that explicitly define the `parallel_tests', whether to "yes" or
1467 to any other value. Extend heading comments to give a rationale
1469 * tests/README: Update.
1471 2011-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
1473 tests/README: update obsoleted advice
1474 * tests/README (Section "Writing test cases" subsection "Do"):
1475 Do not suggest to use the `*-p.test' pattern for the names of
1476 hand-written tests which use the `parallel-tests' Automake option.
1477 Not only is this not respected by the existing tests, but it is
1478 more likely to cause conflicts with auto-generated tests.
1479 So, suggest to *avoid* using the `*-p.test' pattern in names
1480 of hand-written tests instead.
1481 (Section "Writing test cases" subsection "Do not"): When
1482 suggesting not to override Makefile variables using command
1483 line arguments, do not use the badly outdated variables `U'
1484 and 'ANSI2KNR' in the example; instead, use the more common
1485 and typical `DESTDIR'.
1487 2011-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
1489 test defs: rename requirement 'non-cross' -> 'native'
1490 * tests/defs.in (non-cross): Rename requirement ...
1491 (native): ... to this, which is clearer and fits the
1492 existing lingo better.
1493 Suggestion by Ralf Wildenhues.
1495 2011-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
1497 testsuite: be more cross-compile friendly
1498 * tests/defs.in (cross_compiling): New subroutine.
1499 (am__tool_prefix): New internal variable.
1500 (gcc, g++, gcj): Force the use of the correct "tool prefix"
1501 when cross compiling.
1502 (gfortran, g77, non-cross): New requirements.
1504 2011-05-11 Stefano Lattarini <stefano.lattarini@gmail.com>
1506 check: document and test $(TEST_SUITE_LOG) overriding
1507 * doc/automake.texi (Simple Tests using parallel-tests): Explain
1508 how and why TEST_SUITE_LOG can be overridden at runtime.
1509 * tests/parallel-tests-log-override-1.test: New test, check that
1510 the newly documented idiom and similar usages are truly supported.
1511 * tests/parallel-tests-log-override-2.test: Likewise.
1512 * tests/parallel-tests-log-override-recheck.test: Likewise.
1513 * tests/Makefile.am (TESTS): Update.
1515 2011-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
1517 tests: fix spurious failure of txinfo21.test on FreeBSD
1518 * tests/txinfo21.test: Use the `is_newest' subroutine instead of
1519 the `ls -t' hack to to determine whether a file has been updated.
1520 This is required because at least FreeBSD `ls' do not sort files
1521 with the same timestamp in alphabetical order when using the `-t'
1524 2011-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1526 tests defs: allow requirements for compilers (mostly dummy)
1527 Most of the new requirements that are now accepted in `$required'
1528 as consequence of this patch are still dummy. They are planned
1529 to be implemented only in master (or in some derived branch), but
1530 having them here (even just as no-op) will allow for an easier
1531 integration/backporting of potential new testcases.
1532 * tests/defs.in (cc, c++, fortran, fortran77): New requirements,
1534 (flex): New requirement, picking LEX for configure.
1535 (lex): New requirement, alias for `flex'. A more appropriate
1536 implementation, looking for a generic `lex' program, will follow
1538 (yacc): New requirement, alias for `bison'. A more appropriate
1539 implementation, looking for a generic `yacc' program, will follow
1542 2011-04-24 Stefano Lattarini <stefano.lattarini@gmail.com>
1544 tests: fix spurious failure in a test on TESTS (VPATH-related)
1545 * tests/check-tests-in-builddir.test: When not using the
1546 parallel-tests option, do not check that VPATH components are
1547 not present in the displayed test name, since the simple-tests
1548 driver do not try to strip them.
1550 2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1552 test: self check subroutines for skipping/failing of tests
1553 * tests/self-check-report.test: New test.
1554 * tests/Makefile.am (TESTS): Update.
1556 2011-04-23 Jim Meyering <meyering@redhat.com>
1557 Stefano Lattarini <stefano.lattarini@gmail.com>
1559 test defs: new subroutines for test skipping/failing
1560 * tests/defs.in (Exit): Move definition of this function earlier.
1561 (warn_, skip_, fail_, framework_failure_): New functions, inspired
1562 to the homonyms in gnulib's tests/init.sh.
1563 ($stderr_fileno_): New global variable, used by the new functions
1565 * tests/README: Updated.
1566 From a suggestion by Ralf Wildenhues.
1568 2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1570 tests: fix typo (copy & paste blunder) in heading comment
1571 * tests/maintclean-vpath.test: Correctly refer to the sister test
1572 as `maintclean.test', not as `maintclean-vpath.test'.
1574 2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1576 tests: remove redundant test `mclean.test'
1577 * tests/mclean.test: Remove, it's a weak grepping test completely
1578 superseded by the much more complete `maintclean.test'.
1579 * tests/Makefile.am (TESTS): Update.
1581 2011-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
1583 testsuite: more environment sanitization
1584 * tests/defs.in: Sanity check: abort if any of `parallel_tests'
1585 or `required' is in the environment.
1586 ($sed_unindent_prog): Initialize to empty, to avoid interferences
1587 from the environment.
1588 * tests/self-check-me-in-env.test: Renamed to ...
1589 * tests/self-check-env-sanitize.test: ... this, and extended.
1590 * tests/Makefile.am (TESTS): Update.
1591 (TESTS_ENVIRONMENT): Unset variables `parallel_tests' and
1592 `required'. Adjust comments.
1594 2011-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
1596 tests: don't allow `$me' to be overridden from the environment
1597 * tests/defs.in: Sanity check: abort if $me is in the environment.
1598 * tests/self-check-me-in-env.test: New test.
1599 * tests/Makefile.am (TESTS_ENVIRONMENT): Unset variable `me'.
1601 Suggestion by Ralf Wildenhues.
1603 2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
1605 test defs: allow overriding of `$me'
1606 * tests/defs.in ($me): Allow overriding by the including test
1607 script. Add some explicative comments.
1609 2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
1611 depcomp tests: don't reject slower dependency extractors
1612 * tests/depcomp8b.test: Add the `--enable-dependency-tracking'
1613 option to `configure' invocations, so that slower dependency
1614 extractors are not rejected.
1615 * tests/depcomp8a.test: Likewise. Also ...
1616 (foo.c): ... since we are at it, fix spacing to be consistent
1617 with GNU coding standards.
1619 2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
1621 m4: add missing serial numbers to a few files
1622 Related to automake bug#8483.
1623 * m4/amversion.in: Add serial number.
1624 * m4/auxdir.m4: Likewise.
1625 * m4/gcj.m4: Likewise.
1626 * m4/install-sh.m4: Likewise.
1627 * m4/mkdirp.m4: Likewise.
1628 * m4/python.m4: Likewise.
1629 * m4/runlog.m4: Likewise.
1630 * m4/strip.m4: Likewise.
1631 * m4/upc.m4: Likewise.
1633 2011-04-16 Jim Meyering <meyering@redhat.com>
1635 depcomp: correct invalid sed invocation
1636 * lib/depcomp: Insert missing -e before '/:$/d'.
1637 Otherwise, that use of sed would treat '/:$/d' as a file name.
1639 2011-04-14 Stefano Lattarini <stefano.lattarini@gmail.com>
1641 maintainer check: quote literal `$' in Makefile rule
1642 * Makefile.am (sc_tests_PATH_SEPARATOR): Escape literal `$'
1643 character in double-quoted string. Fix a bug in which the rule
1644 emitted an erroneously empty substring in its error message.
1646 2011-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
1648 coverage: test for automake bug#8485 (known regression)
1649 * tests/yacc-dist-nobuild-subdir.test: New test.
1650 * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
1652 2011-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
1654 test defs: define default $distdir (help reducing duplication)
1655 * tests/defs.in ($distdir): New variable, might be used in
1656 testcases checking distribution-related features.
1657 * tests/pr9.test: Use it.
1658 * tests/subdir9.test: Likewise.
1659 * tests/vtexi3.test: Add comment explaining why we redefine
1660 $distdir in this test.
1662 2011-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
1664 depcomp: fix bugs in tests and in the depcomp script
1665 * lib/depcomp (gcc): Remove duplicated `-e' from sed invocation.
1666 * tests/depcomp10.test: Make it executable. Fix a blunder that
1667 has left part of an intended comment not prefixed by `#', thus
1668 causing shell syntax errors. In this same comment, break a
1669 too-long reported error message on multiple lines, for clarity.
1670 Add reference to the relevant bug report. Add a comment which
1671 explains why the test result 'skipped' if the first "make" call
1672 fails. Add other useful comments.
1673 * tests/depcomp9.test: Slightly improve comments.
1675 2011-04-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1677 Fix hp depmode for VPATH builds with GNU make.
1678 * lib/depcomp: Be sure to remove VPATH-prefixed object from
1679 dependency output when creating stub rule.
1680 * tests/depcomp10.test: New test.
1681 * tests/Makefile.am (TESTS): Update.
1683 Report by Bruno Haible.
1685 2011-04-10 Stefano Lattarini <stefano.lattarini@gmail.com>
1687 test defs: fix 'javac' requirement for older JDK versions
1688 The Java compiler from JDK 1.5 (and presumably earlier versions)
1689 cannot handle the `-version' option by itself; and while it does
1690 print the version number, it then errors out with an usage error:
1693 javac: no source files
1694 Usage: javac <options> <source files>
1696 Luckily, adding the `-help' option to the `javac' invocation
1697 seems to fix this problem.
1698 * tests/defs.in (javac): Pass also the `-help' option to the
1699 `javac' program. Add a comment explaining why it is needed.
1700 Report from Ralf Wildenhues.
1702 2011-04-10 Stefano Lattarini <stefano.lattarini@gmail.com>
1704 test defs: new requirement for the default java compiler
1705 * tests/defs.in (for tool in $required): New requirement 'javac'.
1706 * tests/java.test: Use it instead of ad-hoc configure check.
1707 * tests/java-check.test: Likewise.
1708 * tests/instfail-java.test: Likewise.
1709 * tests/instdir-java.test: Likewise.
1711 2011-04-09 Stefano Lattarini <stefano.lattarini@gmail.com>
1713 java: check_JAVA does not cause compilation by "make all" anymore
1714 Fixes automake bug#8234.
1715 * automake.in (handle_java): Make stamp of class files built from
1716 java sources in $(check_JAVA) a dependency of `check' target, not
1718 * tests/java-check.test: New test.
1719 * tests/Makefile.am (TESTS): Update.
1722 Report from Petteri Räty.
1724 2011-04-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1726 Clarify regex code in depcomp.
1727 * lib/depcomp: Add comment why we don't need regex-escaping here.
1728 Suggested by Stefano Lattarini.
1730 2011-04-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1732 Fix makedepend depmode for VPATH builds.
1733 * lib/depcomp [makedepend]: Remove any VPATH prefix from the
1734 object file name, so a rebuild doesn't attempt to update the
1735 .Po files in the source tree.
1736 * tests/depcomp9.test: New test.
1737 * tests/Makefile.am (TESTS): Update.
1740 2011-04-02 Stefano Lattarini <stefano.lattarini@gmail.com>
1742 tests: fix timestamp-related failures
1743 Fixes automake bug#8365.
1744 * tests/aclocal6.test: Sleep before modifying m4 files that should
1745 trigger remake rules. Remove incorrect/obsoleted comments.
1746 * tests/subdir5.test: Likewise, and extend a bit.
1747 * tests/subdir8.test: Likewise.
1748 * tests/pr8365-remake-timing.test: New xfailing test.
1749 * tests/Makefile.am (TESTS): Update.
1750 Report from Sam Steingold.
1752 2011-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1754 Create subdirs for generated sources even when not dep tracking.
1755 * automake.in (handle_single_transform): If $object is derived
1756 and lands in subdir, be sure to output a dirstamp dependency.
1757 * tests/yacc5.test: Avoid falsely matching the dirstamp
1758 dependency when grepping for a rule.
1759 * tests/lex-subobj-nodep.test: New test.
1760 * tests/Makefile.am (TESTS): Update.
1762 Report by Ignacy Gawedzki.
1764 Fix locale issue in check-exported-srcdir.test.
1765 * tests/check-exported-srcdir.test: Reformulate glob to not fail
1766 in a locale that ignores or interleaves character case.
1768 2011-04-01 Stefano Lattarini <stefano.lattarini@gmail.com>
1770 docs: better visibility for aclocal in the index
1771 * doc/automake.texi (@menu): Rename title for entry 'configure'
1772 from "Scanning configure.ac or configure.in" to the more precise
1773 "Scanning configure.ac, using aclocal".
1774 (@detailmenu): Adjust.
1775 (@node configure): Adjust, and extend @cindex calls accordingly.
1777 From a report by Maynard Johnson.
1779 2011-03-30 Stefano Lattarini <stefano.lattarini@gmail.com>
1781 tests: improve tests on "maintainer-clean" target
1782 * tests/aclocal6.test: Move checks related to "maintainer-clean"
1783 functionalities into ...
1784 * tests/maintclean-vpath.test: ... this new test.
1785 * tests/maintclean.test: Update heading comments. Extend to also
1786 test subdirs. Remove useless disabling of YACC. Fix m4 quoting
1787 in configure.in. Add a trailing `:' command. Remove extra blank
1789 * tests/Makefile.am (TESTS): Update.
1791 2011-03-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1793 tests: fix unindent to use printf not echo for script.
1794 * tests/defs.in: Use printf rather than echo, as the latter may
1795 interpret the backslashes in the sed script. Fixes test
1796 failures with dash as /bin/sh.
1798 2011-03-17 Stefano Lattarini <stefano.lattarini@gmail.com>
1799 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1801 maintcheck: look for problematic names of testcases
1802 The configure.in stub created by default by `tests/defs' obtains
1803 the first argument of AC_INIT from the test name, and this can
1804 cause some supported autoconf versions to fail with a spurious
1805 error if that test name contains the name of an m4 or m4sugar
1806 builtin or macro (e.g., `defn' or `m4_undefine').
1807 See for example the bug fixed by commit v1.11-287-g1325a8a.
1808 This change add a maintainer check that warns about test names
1809 which are possibly problematic in this regard.
1810 * Makefile.am (sc_test_names): New maintainer-check target.
1811 (syntax_check_rules): Add it.
1812 (m4_builtins): New helper variable.
1813 (TESTS): Updated according to the following renamings.
1814 * tests/include.test: Renamed ...
1815 * tests/hdr-vars-defined-once.test: ... to this.
1816 * tests/sinclude.test: Renamed ...
1817 * tests/m4-inclusion.test: ... to this, and simplified
1819 * tests/include2.test: Renamed ...
1820 * tests/dist-included-parent-dir.test: ... to this, for
1823 2011-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1825 tests: fix bug in alloca*.test
1826 * tests/alloca.test: Make grepping of automake stderr stricter,
1827 add a trailing `:' command; also, add AC_PROG_CC to configure.in,
1828 and create a dummy alloca.c file, to ensure that we fail for the
1830 * tests/alloca2.test: Likewise. Also, look for LT_INIT, not
1831 AC_PROG_LIBTOOL, in the error message (bug introduced with commit
1832 v1.11-315-gd51e7b7 "libtool: suggest LT_INIT if LTLIBRARIES
1834 From a report by Patrick Welche.
1836 2011-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1838 tests: fix bug (comments-in-var-defn.test + autoconf 2.62)
1839 * tests/comments-in-var-defn.test: The configure.in stub created
1840 by default, which has the AC_INIT first argument obtained by the
1841 test name, causes autoconf 2.62 to fail with a spurious error
1842 message like: "configure.in:1: error: defn: undefined macro:".
1843 Thus, to prevent this, the test is renamed to ...
1844 * tests/comments-in-var-def.test: ... this.
1845 * tests/Makefile.am (TESTS): Updated.
1847 2011-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
1849 cosmetics: convert encoding from ISO-8859 to UTF-8
1850 * ChangeLog.03: Convert encoding to UTF-8.
1851 * ChangeLog.96: Likewise.
1852 * ChangeLog.98: Likewise.
1856 2011-03-01 Peter Rosin <peda@lysator.liu.se>
1858 test defs: unindent without temporary file
1859 * tests/defs.in (commented_sed_unindent_prog): Commented Sed program
1860 that strips the "proper" amount of leading whitespace.
1861 (unindent): Lazily strip comments from the above program and use it
1862 to unindent without using a temporary file.
1864 2011-02-26 Stefano Lattarini <stefano.lattarini@gmail.com>
1866 libtool: suggest LT_INIT if LTLIBRARIES primary is used
1867 When the LTLIBRARIES primary was used, but $(LIBTOOL) wasn't
1868 defined, automake suggested to add a call to AC_PROG_LIBTOOL
1869 in configure.ac. But that macro is deprecated since Libtool
1870 version 1.9b (2004-08-29), in favor of the newer LT_INIT. So
1871 suggest the use of this latter macro instead.
1872 * lib/Automake/Variable.pm (%_am_macro_for_var): Pair 'LIBTOOL'
1873 with 'LT_INIT', not with 'AC_PROG_LIBTOOL'.
1874 * tests/libtool4.test: Adjust and extend. Also, add a call to
1875 macro AC_PROG_CC in configure.in, to help ensuring that automake
1876 does not fail for the wrong reasons.
1877 * tests/ltinit.test: New test, ensure that automake's libtool
1878 support works with LT_INIT-based interface.
1879 Thanks to Jack Kelly for the suggestion.
1881 2011-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
1883 tests: tempdirs with restrictive permissions are cleaned correctly
1884 Before this change, the removal of a temporary test directory
1885 containing subdirectories with restrictive permissions (such as
1886 'r--r--r--') could fail.
1887 * tests/defs: Ensure that all the subdirectories of a temporary
1888 test directory have the 'read', 'write' and 'execute' bits set,
1889 before trying to remove it with `rm -rf'.
1890 * tests/Makefile.am (clean-local-check): Likewise.
1892 2011-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
1893 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1895 test defs: add subroutine for input unindenting
1896 * tests/defs.in (unindent): New subroutine.
1898 2011-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
1900 python: report the 'PYTHON' influential environment variable
1901 * m4/python.m4 (AM_PATH_PYTHON): Call AC_ARG_VAR on PYTHON.
1902 * doc/automake.texi (Python): Update and extend.
1903 * tests/help-python.test: New test.
1904 * tests/Makefile.am (TESTS): Update.
1905 * THANKS (Jack Kelly): Update e-mail address.
1906 Suggestion by Jack Kelly.
1908 2011-02-10 Stefano Lattarini <stefano.lattarini@gmail.com>
1910 tests defs: clear TESTS_ENVIRONMENT variable
1911 * tests/defs.in (TESTS_ENVIRONMENT): Unset it, so that values
1912 from environment won't interfere with the testcases.
1913 Suggestion by Ralf Wildenhues.
1915 2011-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
1917 tests: tweak few tests on simple and parallel test drivers
1918 * tests/check-exported-srcdir.test: Improve heading comments.
1919 * tests/check-tests-in-builddir.test: Likewise. Also, unset the
1920 `FOO_EXIT_STATUS' variable, so that any pre-existing value in the
1921 environment won't risk to interfere with the test.
1922 Suggestions by Ralf Wildenhues.
1924 2011-02-01 Stefano Lattarini <stefano.lattarini@gmail.com>
1926 coverage: more tests on simple and parallel test drivers
1927 * tests/parallel-tests-subdir.test: New test.
1928 * tests/check-exported-srcdir.test: Likewise.
1929 * tests/check-tests-in-builddir.test: Likewise.
1930 * tests/check-tests_environment.test: Likewise.
1931 * tests/Makefile.am (TESTS): Update.
1933 2011-01-29 Stefano Lattarini <stefano.lattarini@gmail.com>
1935 tests: fix spurious failures in lflags*.test
1936 * tests/lflags.test: Remove 'LEX' from the environment, so
1937 that it won't be erroneously picked up by `make -e'.
1938 * tests/lflags2.test: Likewise.
1940 2011-01-24 Stefano Lattarini <stefano.lattarini@gmail.com>
1942 docs: color-tests issues with parallel make
1943 * doc/automake.texi (Simple Tests): Document that automatic
1944 recognition of a capable terminal attached to stdout can fail
1945 with some make implementation when running in parallel mode,
1946 thus causing colored test output not to be automatically
1947 activated when it should.
1949 2011-01-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1951 tests: avoid instspc.test failures due to make's whitespace trimming
1952 * tests/instspc.test: Prepend './' when passing the test
1953 characters, to avoid leading whitespace characters to be trimmed
1954 from macros set from environment variables. Fixes testsuite
1955 failures with HP-UX, IRIX, and Tru64/OSF make.
1957 2011-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1959 coverage: test semantics of "dummy" per-target flags
1960 * tests/specflg-dummy.test: New test, ensuring that even "dummy"
1961 per-target flags triggers the use of renamed objects.
1962 * tests/Makefile.am (TESTS): Update.
1963 Suggestion by Ralf Wildenhues.
1965 2011-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
1967 tests defs: sanitize IFS
1968 * tests/defs.in ($IFS): Define to <space>, <tab>, <newline>.
1969 ($sp): New variable, holding a single whitespace character.
1970 ($tab): New variable, holding a tabulation character.
1971 ($nl): New variable, holding a newline character.
1973 2011-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1975 tests: fix VPATH auto-expansion workarounds.
1976 * tests/parallel-tests8.test, tests/suffix13.test:
1977 Ensure $< is not surrounded by white space, to prevent Solaris
1978 make from applying automatic VPATH text expansion.
1980 2011-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
1982 tests: fix spurious failures in yflags*.test
1983 * tests/yflags.test: Remove 'YACC' from the environment, so
1984 that it won't be erroneously picked up by `make -e'.
1985 * tests/yflags2.test: Likewise.
1987 2011-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1989 tests: avoid fn99*.test failures due to buggy AIX 5.3 cp -R.
1990 * tests/fn99.test, tests/fn99subdir.test: Skip if an initial
1991 `cp -R' of the subdir tree already fails; AIX 5.3 cp messes
1992 up its internal memory when copying this tree.
1994 2011-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1995 Stefano Lattarini <stefano.lattarini@gmail.com>
1997 Add comment to check-TESTS rule working around make 3.80 bug.
1998 * lib/am/check.am (check-TESTS): Update comment.
2000 2011-01-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2002 tests: less strict double-colon spy.test again.
2003 * tests/spy.test: We know BSD make doesn't invoke more than one
2004 double-colon rule, so no need to expose that failure.
2006 2011-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008 install-sh: avoid Tru64 sh `test' operator precedence issues.
2009 * lib/install-sh: Protect file names and directory components
2010 that consist of `=', `(', `)', or `!'. Move protection as early
2011 as possible, to avoid errors such as with Tru64 sh `test -z ='.
2012 * tests/instsh2.test: Extend test to cover more possibilities.
2013 Fixes 1.12 instspc-equal-install.test failure on Tru64/OSF 5.1.
2015 2011-01-19 Stefano Lattarini <stefano.lattarini@gmail.com>
2016 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2018 docs: automake testsuite doesn't use TESTS_ENVIRONMENT anymore
2019 * doc/automake.texi (Simple Tests): Do not claim Automake uses
2020 TESTS_ENVIRONMENT for the perl driver. Instead, point to the
2021 parallel-tests driver.
2023 2011-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2025 Allow _AM_DEPENDENCIES to be used later in configure.
2026 * m4/depend.m4 (_AM_DEPENDENCIES): Remove a previously existing
2027 conftest.dir before recreating it.
2029 Report by Eric Blake, from report by Scott McCreary against M4.
2031 2011-01-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2033 tests: avoid failure on w32 file systems.
2034 * tests/parallel-tests-unreadable-log.test: SKIP if file cannot
2035 be turned unreadable.
2037 2011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2039 tests: allow double-colon spy.test to work with HP-UX make.
2040 * tests/spy.test: Fix comment typos. Ensure prerequisites we
2041 do not want to depend on are strictly older than the target.
2042 Also test with a target out of date wrt. more than one rule.
2044 2011-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
2046 tests: remove useless requirements from cond36.test
2047 * tests/cond36.test ($required): Remove.
2048 Since we are at it, add a trailing `:' command.
2050 2011-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2051 Stefano Lattarini <stefano.lattarini@gmail.com>
2053 parallel-tests: work around Tru64/OSF 5.1 sh read bugs.
2054 * lib/am/check.am ($(TEST_SUITE_LOG), recheck, recheck-html):
2055 Test file readability before redirecting input from it, to avoid
2056 exiting Tru64/OSF 5.1 sh which treats read as special builtin.
2057 * tests/parallel-tests-unreadable-log.test: New test.
2058 * tests/Makefile.am (TESTS): Update.
2061 2011-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2063 * NEWS, README: Update copyright years.
2065 Fix parallel-tests.test failure with HP-UX make.
2066 * tests/parallel-tests.test: Sleep inside inner tests, so logs
2067 are newer than logs of tests they depend on, for HP-UX make.
2069 2011-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2071 docs: ensure example are separated with empty lines in the input
2072 * doc/automake.texi (Extending aclocal, Emacs Lisp, Rebuilding)
2073 (API Versioning, Renamed Objects, Multiple Outputs): Add empty
2074 lines before `@example' and after `@end example' lines, so info
2075 output is rendered correctly, and a following @noindent honored.
2076 Report by Stefano Lattarini.
2078 2011-01-15 Jim Meyering <meyering@redhat.com>
2080 tests: fix comment typo
2081 * tests/substref.test: Fix grammar in a comment.
2083 2011-01-13 Stefano Lattarini <stefano.lattarini@gmail.com>
2085 tests: fix spurious failures in two texinfo tests
2086 * tests/txinfo.test ($required): Add 'makeinfo'.
2087 * tests/txinfo8.test: Create a dummy 'textutils.info' file, so
2088 that make won't try to run makeinfo (which could be unavailable)
2090 Found by NixOS Hydra, reported by Ralf Wildenhues.
2092 2011-01-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2094 Avoid testsuite failures due to Autoconf Fortran change.
2095 Autoconf v2.68-21-g727ce95 causes AC_F77_LIBRARY_LDFLAGS to
2096 require computing the canonical host name. Ensure config.guess
2097 and config.sub files are present for respective checks.
2098 * tests/compile_f_c_cxx.test: Add stub files.
2099 * tests/flibs.test: Likewise.
2100 * tests/fort4.test: Use $AUTOMAKE -a for installing files.
2102 2011-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
2104 docs: clustered '-d' not recognized in YFLAGS
2105 This change fixes automake bug#7828.
2106 * doc/automake.texi (Yacc and Lex): Document that automake
2107 recognizes '-d' in AM_YFLAGS only if it's not clustered with
2109 From a report by Юрий Пухальский.
2111 2011-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
2113 tests: add checks on automatically-distributed files
2114 Related to automake bug#7819.
2115 * tests/autodist.test: New test.
2116 * tests/autodist-subdir.test: Likewise.
2117 * tests/autodist-acconfig.test: Likewise.
2118 * tests/autodist-acconfig-no-subdir.test: Likewise.
2119 * tests/autodist-aclocal-m4.test: Likewise.
2120 * tests/autodist-config-headers.test: Likewise.
2121 * tests/autodist-configure-no-subdir.test: Likewise.
2122 * tests/autodist-stamp-vti.test: Likewise.
2123 * tests/Makefile.am (TESTS): Update.
2125 2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
2127 tests: work around a texi+cygnus bug causing a spurious XFAIL
2128 * tests/txinfo5b.test: New test, like txinfo5.test but calling
2129 automake with the `-Wno-override' option to work around a bug
2130 in the texinfo + cygnus interaction.
2131 * tests/txinfo5.test: Update heading comments.
2132 * tests/Makefile.am (TEST): Updated.
2134 2011-01-09 Dave Hart <davehart@gmail.com> (tiny change)
2136 Fix another typo in Rule.pm comment.
2137 * lib/Automake/Rule.pm: Fix typo.
2139 2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
2141 Improve, extend and tweak tests on Texinfo support.
2142 * tests/instdir-texi.test: Add a call to `ls -l' after that to
2143 `make', for debugging. When looking for required tools, do not
2144 redirect the output of "$tool --help" to /dev/null, and do not
2145 uselessly run it in a subshell.
2146 * tests/txinfo.test: Rewritten to run autoconf, ./configure and
2147 make. All checks moved into Makefile.am.
2148 * tests/txinfo8.test: Likewise, and modernize the generated
2150 * tests/txinfo2.test: Moved checks into Makefile.am, and other
2152 * tests/txinfo5.test: Enable `errexit' shell flag, and related
2153 changes. Add trailing `:' command.
2154 * tests/txinfo6.test: Likewise, and make grepping of generated
2155 Makefile.in stricter.
2156 * tests/txinfo7.test: Enable `errexit' shell flag, and related
2157 changes. Add trailing `:' command. Do not add unnecessary stuff
2159 * tests/txinfo9.test: Verify that more targets which are expected
2160 to be generated only once really are. Make grepping less strict,
2161 to avoid exposing too much internal details. More minor changes.
2162 * tests/txinfo16.test: Add trailing `:'. Prefer cat over echo
2163 for appending to configure.in. Updated/fixed heading comments.
2164 * tests/txinfo23.test: Likewise, and extended a little by making
2165 it check that no info file is created in the $(srcdir).
2166 * tests/txinfo24.test: Likewise.
2167 * tests/txinfo25.test: Likewise.
2168 * tests/txinfo18.test: Add trailing `:'. Prefer cat over echo
2169 for appending to configure.in. Also, check that index files are
2170 cleaned also by "make clean", not only by "make distclean".
2171 * tests/txinfo22.test: Prefer `$me' over hard-coded test name,
2172 and added trailing `:' command. This testcase also used to check
2173 that automake ignores in-line comments when using variables, but
2174 preserves them in the output; these checks (added in commit
2175 "Release-1-7f-4-g9177ef8") do not really pertain to this test,
2176 so they have been moved ...
2177 * tests/comments-in-var-defn.test: ... into this new test.
2178 * tests/txinfo4.test: Escape literal dots in grep regexps. Add
2179 trailing `:' command.
2180 * tests/txinfo29.test: Likewise. Relax grepping of generated
2181 Makefile.in w.r.t. whitespaces. Prefer `cat' over `echo' to
2182 append to configure.in.
2183 * tests/txinfo3.test: Likewise.
2184 * tests/vtexi.test: Improve grepping of Makefile.in (sometimes
2185 make it stricter, sometimes laxer). Move `set -e' setting just
2186 after the inclusion of ./defs. De-uglify a sed command. Other
2187 minor cosmetic improvements.
2188 * tests/vtexi2.test: Make grepping of Makefile.in stricter. Add
2189 trailing `:' command.
2190 * tests/vtexi3.test: New test on version.texi support.
2191 * tests/vtexi4.test: Likewise.
2192 * tests/Makefile.am (TESTS): Updated.
2194 2011-01-09 Peter Rosin <peda@lysator.liu.se>
2196 Fix another typo in Rule.pm comment.
2197 * lib/Automake/Rule.pm: Fix typo.
2199 2011-01-09 Stefano Lattarini <stefano.lattarini@gmail.com>
2201 cosmetics: remove trailing whitespaces
2202 * doc/automake.texi: Remove trailing whitespaces.
2203 * tests/cond13.test: Likewise.
2204 * tests/cond14.test: Likewise.
2205 * tests/fort4.test: Likewise.
2206 * tests/fort5.test: Likewise.
2207 * tests/suffix7.test: Likewise.
2208 * tests/vtexi2.test: Likewise.
2210 automake: minor fixes in comments
2211 * automake.in: Some minor fixes and enhancements in comments.
2213 2011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2215 Add test coverage for deleted header files.
2216 * tests/depcomp6.test, tests/depcomp7.test: Update tests to
2217 also check for the deleted header bug. If no dependency
2218 tracking mechanism could be found, SKIP rather than exit
2219 successfully. Use GNU style spacing and ANSI C prototypes.
2221 Fix typos in Rule.pm comments.
2222 * lib/Automake/Rule.pm: Fix typos in comments.
2224 docs: split 'amhello Explained' node.
2225 * doc/automake.texi (amhello Explained): Split node ...
2226 (amhello's configure.ac Setup Explained)
2227 (amhello's Makefile.am Setup Explained) : ... into these two.
2228 (Top, Hello World): Adjust, and add @anchor for stable URL links.
2229 Suggestion by Karl Berry in automake bug#7766.
2231 2011-01-08 Karl Berry <karl@freefriends.org>
2232 Eric Blake <eblake@redhat.com>
2234 docs: reference defining directories in amhello node.
2235 * doc/automake.texi (amhello Explained): Point to Autoconf
2236 manual for how to convert directory values into macros.
2237 (Optional): Fix grammar nit.
2239 2011-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
2241 * NEWS: Fix typo (forgotten word).
2243 2011-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
2244 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2246 docs: how to work around checks on invalid primary/directory couples
2247 * doc/automake.texi (Uniform): Document the blessed idiom which can
2248 be used to work around automake checks on invalid primary/directory
2249 couples (such as `lib_PROGRAMS' or `doc_LIBRARIES').
2251 2011-01-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2253 Sync auxiliary files from upstream.
2254 * lib/config.guess, lib/config.sub, lib/texinfo.tex:
2257 Fix maintainer-check regression.
2258 * tests/subobj11a.test: Pass DISTCHECK_CONFIGURE_FLAGS in the
2261 Bump copyright years.
2262 * aclocal.in (write_aclocal, version): Bump copyright years.
2263 * automake.in (gen_copyright, version): Likewise.
2264 * doc/automake.texi: Likewise.
2266 2010-12-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2267 Stefano Lattarini <stefano.lattarini@gmail.com>
2269 Work around a bug in file-inclusion mechanism of Solaris make.
2270 * automake.in (handle_single_transform): In the name of the
2271 dependency file: collapse multiple slash characters into a single
2273 * tests/subobj11a.test: New test.
2274 * tests/subobj11b.test: Likewise.
2275 * tests/subobj11c.test: Likewise.
2276 * tests/depcomp8a.test: Likewise.
2277 * tests/depcomp8b.test: Likewise.
2278 * tests/Makefile.am (TESTS): Updated.
2280 Report by Stefano Lattarini, quick fix by Ralf Wildenhues, final
2281 patch and tests by Stefano Lattarini.
2283 2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
2285 Fix two spurious testsuite failures on IRIX 6.5.
2286 * tests/suffix13.test (Makefile.am): Account for VPATH issues on
2287 weaker make implementations (e.g. IRIX 6.5).
2288 * tests/parallel-tests8.test: Likewise, plus a required related
2290 Reported by Ralf Wildenhues. The bugs have been there from the
2291 first versions of the affected test scripts.
2293 2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
2295 docs: cygnus mode doesn't require AM_CYGWIN32 macro.
2296 * doc/automake.texi (Cygnus): Mode 'cygnus' does not require
2297 the AM_CYGWIN32 macro (and indeed hasn't required it since at
2298 least commit Release-1-2-31-g3038064 "merged changes from
2299 Cygnus" of 1997-08-25).
2301 2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
2303 distlinksbrk.test: Work around botched "make -k".
2304 * tests/distlinksbrk.test: Run "make" multiple times and grep
2305 its output each time for a single error message, rather than
2306 running "make -k" one single time and grepping its output for
2307 all the expected error messages. This should work around make
2308 implementations with limited (broken?) `-k' support; for more
2309 information, see these subthreads on the automake-patches list:
2310 - 2010-11-15, "Testsuite failures on HP-UX 11.23",
2311 <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00162.html>
2312 - 2010-11-15, "Testsuite failures on IRIX 6.5",
2313 <http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00166.html>
2315 2010-12-21 Stefano Lattarini <stefano.lattarini@gmail.com>
2317 Fix sed-related buglet in test "subdir5.test"
2318 * tests/subdir5.test: Always terminate text passed to the
2319 `i' sed command with a newline, to work around limitations
2320 in e.g. older OpenBSD sed.
2322 2010-12-18 Stefano Lattarini <stefano.lattarini@gmail.com>
2324 docs: fix blunder in example about python extension modules
2325 * doc/automake.texi (Python): Use `quaternion_la_SOURCES',
2326 not `quaternion_SOURCES', to declare the sources of python
2327 extension module `quaternion.la'.
2329 2010-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
2331 docs: list LTLIBRARIES among Automake primaries
2332 * doc/automake.texi (Uniform): List `LTLIBRARIES' among
2333 the Automake primaries.
2335 2010-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
2337 Improve tests on generated portions of configure help screen.
2338 * tests/help-depend.test: Grepping of configure help screen
2339 relaxed to cater for possible line wrapping, and tightened in
2341 * tests/help-depend2.test: Likewise.
2342 * tests/help-dmalloc.test: Likewise.
2343 * tests/help-lispdir.test: Likewise.
2344 * tests/help-maintainer.test: Likewise.
2345 * tests/help-multilib.test: Likewise.
2346 * tests/help-silent.test: Likewise.
2347 * tests/help-upc.test: Likewise.
2348 * tests/help-init.test: Grepping of configure help screen
2351 2010-12-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2353 Avoid running installed automake from 'libtool --help'.
2354 * tests/subobj9.test: Export AUTOCONF and AUTOMAKE.
2355 Together with fixed Libtool, this fixes check-coverage to not
2356 invoke installed automake.
2358 2010-11-25 Stefano Lattarini <stefano.lattarini@gmail.com>
2360 Fix spurious failures in `silent*.test' for $CC != gcc
2361 In some tests on automake-produced silent rules, we forced the
2362 use of gcc depmode to improve testsuite coverage; but this has
2363 unsurprisingly led to spurious failures when some non-GNU C
2364 compilers were used. So we are now careful to require GCC in
2365 tests that force gcc depmode.
2366 From reports by Ralf Wildenhues.
2367 * tests/silent5.test: Test removed, its content split into ...
2368 * tests/silent-many-generic.test, tests/silent-many-gcc.test: ...
2369 these new sister tests, the latter of which forces gcc depmode
2370 and lists "gcc" in $required.
2371 * tests/silentlex.test: Test removed, its content split into ...
2372 * tests/silent-lex-generic.test, tests/silent-lex-gcc.test: ...
2373 these new sister tests, the latter of which forces gcc depmode
2374 and lists "gcc" in $required.
2375 * tests/silentyacc.test: Test removed, its content split into ...
2376 * tests/silent-yacc-generic.test, tests/silent-yacc-gcc.test: ...
2377 these new sister tests, the latter of which forces gcc depmode and
2378 lists "gcc" in $required.
2379 * tests/Makefile.am (TESTS): Updated.
2381 2010-11-21 Stefano Lattarini <stefano.lattarini@gmail.com>
2383 Tests: consistently use "|| Exit 1" after ". ./defs".
2384 * tests/autohdr.test: Use `. ./defs || Exit 1', not bare
2385 `. ./defs', for consistency with other tests.
2386 * tests/autohdr2.test: Likewise.
2387 * tests/autohdr3.test: Likewise.
2388 * tests/autohdr4.test: Likewise.
2389 * tests/cond23.test: Likewise.
2390 * tests/cond24.test: Likewise.
2391 * tests/cond25.test: Likewise.
2392 * tests/cond26.test: Likewise.
2393 * tests/cond27.test: Likewise.
2394 * tests/cond28.test: Likewise.
2395 * tests/cond29.test: Likewise.
2396 * tests/cond30.test: Likewise.
2397 * tests/cond31.test: Likewise.
2398 * tests/cond32.test: Likewise.
2399 * tests/cond33.test: Likewise.
2400 * tests/cond34.test: Likewise.
2401 * tests/cond35.test: Likewise.
2402 * tests/cond36.test: Likewise.
2403 * tests/cond37.test: Likewise.
2404 * tests/cond38.test: Likewise.
2405 * tests/cond39.test: Likewise.
2406 * tests/cond40.test: Likewise.
2407 * tests/cond41.test: Likewise.
2408 * tests/cond42.test: Likewise.
2409 * tests/cond43.test: Likewise.
2410 * tests/cond44.test: Likewise.
2411 * tests/cond45.test: Likewise.
2412 * tests/dollarvar.test: Likewise.
2413 * tests/dollarvar2.test: Likewise.
2414 * tests/hfs.test: Likewise.
2415 * tests/libobj14.test: Likewise.
2416 * tests/percent.test: Likewise.
2417 * tests/percent2.test: Likewise.
2418 * tests/phony.test: Likewise.
2419 * tests/silent.test: Likewise.
2420 * tests/silent2.test: Likewise.
2421 * tests/silent3.test: Likewise.
2422 * tests/silent4.test: Likewise.
2423 * tests/silent5.test: Likewise.
2424 * tests/silent6.test: Likewise.
2425 * tests/silent7.test: Likewise.
2426 * tests/silent9.test: Likewise.
2427 * tests/silentcxx.test: Likewise.
2428 * tests/silentf77.test: Likewise.
2429 * tests/silentf90.test: Likewise.
2430 * tests/silentlex.test: Likewise.
2431 * tests/silentyacc.test: Likewise.
2433 Avoid useless cleaning in some `silent*.test' tests.
2434 * tests/silentf77.test: Removed useless calls to "make clean"
2435 and "make maintainer-clean".
2436 * tests/silentf90.test: Likewise.
2437 * tests/silent3.test: Removed useless call to "make distclean".
2438 * tests/silent4.test: Likewise.
2439 * tests/silent9.test: Likewise.
2441 2010-11-19 Ian Lance Taylor <iant@google.com>
2443 Sync config-ml.in from GCC.
2444 * config-ml.in: Add Go support: treat GOC and GOCFLAGS like other
2445 compiler/flag environment variables.
2447 2010-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
2449 Automake::Config: remove extra trailing semicolon.
2450 * lib/Automake/Config.in: Remove extra trailing semicolon.
2452 help4.test: fix botched heading comment.
2453 * tests/help4.test: Fixed the heading comment, since it
2454 didn't correctly describe what checks the testcase was
2455 supposed to perform.
2457 help2.test: add checks on aclocal too.
2458 * tests/help2.test: Check that also `aclocal --version' and
2459 `aclocal --help' work with configure.in and acinclude.m4 both
2462 2010-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2464 Fix spurious failures of silent-rules tests with Sun Fortran.
2465 * tests/silentf77.test: Strip from the make output some verbose
2466 messages possibly printed by the SunStudio fortran compilers, to
2467 avoid spurious failures. Add a trailing `:' command.
2468 * tests/silentf90.test: Likewise.
2470 2010-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2472 Fix spurious failures of silent5.test with Sun Fortran.
2473 * tests/silent5.test: Strip from the make output some verbose
2474 messages possibly printed by the SunStudio fortran compilers,
2475 to avoid spurious failures. This bug has been there from the
2476 very first version of this test script.
2478 2010-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
2480 Fix regression in colon{5,6}.test (failures on AIX 5.3).
2481 * tests/colon5.test: Also substitute `@SHELL@' with `$SHELL' when
2482 post-processing the generated Makefile.in, to work around a bug
2483 of AIX 5.3 make which doesn't allow setting the `$(SHELL)' macro
2484 on the commend line. Calls to `$MAKE' adjusted accordingly.
2485 * tests/colon6.test: Likewise.
2486 Regression introduced in commit v1.11-175-gf9fe878 "Modernize,
2487 improve and/or extend tests `colon*.test", and reported by Ralf
2490 2010-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
2492 Fix regression in ansi.test (failure on AIX 5.3).
2493 * tests/ansi.test: Remove redundant hackish check done using a
2494 hand-postprocessed Makefile.in. This check worked by setting
2495 the `$(SHELL)' macro on the command line of make, but this is
2496 not supported by the AIX 5.3 make implementation.
2497 This bug has been lurking for a long time, and was activated by
2498 commit v1.11-125-gc1f6cdb "Enable `errexit' shell flag in various
2499 tests". Report by Ralf Wildenhues.
2501 2010-11-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2503 tests: avoid '##'-style comments inside recipe commands.
2504 * tests/confh.test, tests/confh8.test: Remove
2505 double-hash comments from makefile rule commands, they
2506 are not part of the Automake API.
2508 2010-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2510 tests: work around dash quoting issue in case statements.
2511 * tests/color.test, tests/color2.test: Quote variable in case
2512 pattern, to avoid skipping tests with dash 0.5.5.1.
2514 2010-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2516 Rebuild menus in the manual.
2517 * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
2518 Thanks to Ian Lance Taylor for the suggestion.
2520 Fix install-strip when $(STRIP) contains several words.
2521 * lib/am/install.am (install-strip): Update comment. Use
2522 separate sub-make invocations for empty and nonempty $(STRIP),
2523 to fix quoting issues.
2524 * tests/strip2.test, tests/strip3.test: New tests.
2525 * tests/Makefile.am (TESTS): Adjust.
2527 2010-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2529 Fix yaccdry.test failure: require bison.
2530 * tests/yaccdry.test: Require bison.
2531 Found by NixOS Hydra.
2533 2010-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
2535 Fix a bug in variable concatenation with `+='.
2536 * lib/Automake/VarDef.pm (append): Since the content of the
2537 "appended-to" variable is going to be unconditionally normalized
2538 later, simply separate the appended value with a single whitespace
2539 character, instead of trying to be uselessly smarter by using
2540 escaped newlines. This fixes a bug in which extra backslashes
2541 where erroneously inserted in the variable's final value.
2542 * tests/pluseq11.test: New test, exposing the bug.
2543 * tests/Makefile.am (TESTS): Update.
2544 Reported by Andy Wingo.
2546 2010-11-06 Stefano Lattarini <stefano.lattarini@gmail.com>
2548 Fix bug in rules for creating vala vapi/header files.
2549 * automake.in (lang_vala_finish_target): Add forgotten "fi" in an
2550 if control structure in a generated make rules. Bug introduced
2551 by previous commit `v1.11-221-gd7c1679', and revealed by failure
2552 of test `vala2.test'.
2554 2010-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2556 Fix and document rules to not touch the tree with `make -n'.
2557 * doc/automake.texi (Multiple Outputs): Document the problem of
2558 modifications during dry-run execution, propose solution.
2560 * automake.in (lang_vala_finish_target): Split recipe so the
2561 stamp file is not removed with GNU `make -n'.
2562 (lang_yacc_target_hook): Separate removal of parser output file
2563 and header remaking.
2564 * lib/am/lisp.am ($(am__ELCFILES)): Determine whether -n was
2565 passed to make, take care not to remove any files in that case.
2566 * lib/am/remake-hdr.am (%CONFIG_H%): Separate removal of
2567 %STAMP% file from induced remaking of config header.
2568 * tests/autohdrdry.test, tests/lispdry.test, tests/yaccdry.test:
2570 * tests/Makefile.am (TESTS): Update.
2572 2010-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2574 Add FAQ entry for bug reporting instructions.
2575 * doc/automake.texi (Reporting Bugs): New section.
2576 (Introduction): Refer to it.
2578 2010-10-04 Stefano Lattarini <stefano.lattarini@gmail.com>
2580 Add support for newer python versions.
2581 * m4/python.m4 (AM_PATH_PYTHON): Add python2.7 and python3.2 to
2582 _AM_PYTHON_INTERPRETER_LIST. Since we are at it, break a long
2583 line and fix indentation.
2585 From a report by Thomas Klausner.
2587 Add test for `AM_WITH_DMALLOC' macro.
2588 * tests/dmalloc.test: New test.
2589 * tests/Makefile.am (TESTS): Update.
2591 Fix nits and bugs in tests `help*.test'.
2592 * tests/help4.test: Fix broken sed commands used to strip `-W...'
2593 flags away from "$AUTOMAKE" and "$ACLOCAL".
2594 * tests/help3.test: Likewise, and fix a botched comment.
2595 * tests/help.test: Likewise. Also, use "AUTOMAKE_fails ..."
2596 instead of "$AUTOMAKE ... && Exit 1", for consistency and to
2597 please maintainer-check.
2598 * tests/help2.test: Likewise.
2600 2010-10-03 Stefano Lattarini <stefano.lattarini@gmail.com>
2601 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2603 Improve tests `help*.test' (also fixes maintcheck failures).
2604 * tests/help.test: To run automake, use `$AUTOMAKE' with all `-W'
2605 flags stripped away rather than hard-coded `automake-$APIVERSION',
2606 to better honour user-overrides. Similarly for aclocal.
2607 * tests/help2.test: Likewise.
2608 * tests/help3.test: Likewise.
2609 * tests/help4.test: Likewise.
2611 2010-10-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2613 Document and fix expansion of variables before rules.
2614 * doc/automake.texi (General Operation): Document that variables
2615 are expanded before rules.
2616 * lib/am/check.am (am__check_post): Reword a bit so it does not
2617 get matched as a rule.
2618 Suggestion by Ben Pfaff.
2620 2010-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2622 Revert "parallel-tests: avoid command-line length limit issue."
2623 This reverts commit 24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835,
2624 because it re-opened the bug fixed by v1.11-10-g218e678.
2626 2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2628 parallel-tests: avoid command-line length limit issue.
2629 * automake.in (handle_tests): New argument $makefile, new
2630 substitution %MAKEFILE%.
2631 (generate_makefile): Adjust.
2632 * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
2633 sanitized TEST_LOGS value as makefile snippet on standard
2634 input to $(MAKE), to avoid exceeding the command line limit on
2637 Report by Bob Friesenhahn.
2639 2010-09-26 Stefano Lattarini <stefano.lattarini@gmail.com>
2641 Extend tests on `--help' and `--version' options.
2642 * tests/help.test: Create a new empty directory and chdir into
2643 it, rather than removing already present files. Run the aclocal
2644 and automake wrapper scripts directly, instead of relying on
2645 $AUTOMAKE and $ACLOCAL. Be sure to correctly match literal dots
2646 in aclocal's and automake's stderr. Add a trailing `:' command.
2647 * tests/help2.test: New test, checking that options `--help' and
2648 `--version' works in directories with broken `configure.in'.
2649 * tests/help3.test: New test, checking that options `--help' and
2650 `--version' take precedence on the other options.
2651 * tests/help4.test: New test, checking that the first among the
2652 `--help' and `--version' options to be specified on the command
2654 * tests/Makefile.am (TESTS): Updated.
2656 2010-09-25 Stefano Lattarini <stefano.lattarini@gmail.com>
2658 Testsuite: Use `$PATH_SEPARATOR', not `:', when extending PATH.
2659 * tests/compile2.test: Do no uselessly (implicitly) repeat the
2660 computation of PATH_SEPARATOR again.
2661 * tests/instmany-mans.test: Use `$PATH_SEPARATOR', not `:', when
2662 extending/redefining PATH.
2663 * tests/instmany-python.test: Likewise.
2664 * tests/instmany.test: Likewise.
2665 * tests/man4.test: Likewise.
2666 * tests/mkinst3.test: Likewise.
2667 * tests/mmodely.test: Likewise.
2668 * tests/multlib.test: Likewise.
2669 * tests/txinfo30.test: Likewise.
2670 * tests/README (Section "Writing test cases" subsection "Do"):
2672 * Makefile.am (sc_tests_PATH_SEPARATOR): New maintainer check.
2673 (syntax_check_rules): Updated.
2675 Testsuite: new variables `$PATH_SEPARATOR' and `$APIVERSION'.
2676 * tests/defs.in ($APIVERSION): New AC_SUBST'd variable.
2677 ($ACLOCAL, $AUTOMAKE): Use it.
2678 ($PATH_SEPARATOR): New AC_SUBST'd variables.
2681 2010-09-22 Stefano Lattarini <stefano.lattarini@gmail.com>
2683 Manual: be more agnostic w.r.t. version control system used.
2684 * doc/automake.texi (Basics of Distribution): Also refer to `.svn'
2685 directories as a type of probably-unwanted files that are copied
2686 regardless when adding directories to EXTRA_DIST.
2687 (The dist Hook): Show a dist-hook example which removes Subversion
2688 `.svn' private directories from distdir, rather than CVS private
2690 (missing and AM_MAINTAINER_MODE): Try to be more agnostic w.r.t.
2691 the version control system used.
2693 Manual: index refer to target "git-dist", not "cvs-dist".
2694 * doc/automake.texi (General Operation): Index the non-standard
2695 example about "git-dist" under the "git-dist" label, not under
2698 Perl modules: remove references to "Automake CVS repository".
2699 * lib/Automake/Channels.pm: Update comments to refer to "Automke's
2700 git repository" rather than to "Automake's CVS repository".
2701 * lib/Automake/Configure_ac.pm: Likewise.
2702 * lib/Automake/FileUtils.pm: Likewise.
2703 * lib/Automake/Struct.pm: Likewise.
2704 * lib/Automake/XFile.pm: Likewise.
2705 * lib/Automake/Version.pm (=head1 DESCRIPTION): Refer to "git
2706 branches" rather than "CVS branches".
2708 Remove obsolete .cvsignore files.
2709 * .cvsignore, doc/.cvsignore, lib/.cvsignore, lib/am/.cvsignore,
2710 lib/Automake/.cvsignore, lib/Automake/tests/.cvsignore,
2711 m4/.cvsignore, tests/.cvsignore: Files deleted. Even when using
2712 savannah's CVS readonly mirror there's no way to commit back to
2713 the real repository, so this files are not worth maintaining or
2716 2010-09-21 Stefano Lattarini <stefano.lattarini@gmail.com>
2718 * m4/dmalloc.m4: Bump serial number and copyright years.
2720 2010-09-20 Stefano Lattarini <stefano.lattarini@gmail.com>
2722 Fix broken link in `AM_WITH_DMALLOC' help screen.
2723 * m4/dmalloc.m4 (AM_WITH_DMALLOC): Refer only to the dmalloc site
2724 `http://www.dmalloc.com', not to the dmalloc tarball there (which
2725 seems to have been removed, substituted by multiple release
2728 2010-09-17 Eric Blake <eblake@redhat.com>
2730 Avoid triple-space after period.
2731 * automake.in (handle_single_transform): Avoid 3 spaces at
2733 * ChangeLog.03: Likewise.
2734 * lib/Automake/ChannelDefs.pm: Likewise.
2735 * lib/Automake/Channels.pm (_print_message): Likewise.
2736 * lib/Automake/Rule.pm (rule): Likewise.
2737 * lib/Automake/Variable.pm (var): Likewise.
2738 * lib/am/distdir.am: Likewise.
2739 * tests/insthook.test: Likewise.
2741 2010-09-15 Stefano Lattarini <stefano.lattarini@gmail.com>
2743 Test automake-generated portions of configure help screen.
2744 * tests/help-depend.test: New test.
2745 * tests/help-depend2.test: Likewise.
2746 * tests/help-dmalloc.test: Likewise.
2747 * tests/help-init.test: Likewise.
2748 * tests/help-lispdir.test: Likewise.
2749 * tests/help-maintainer.test: Likewise.
2750 * tests/help-multilib.test: Likewise.
2751 * tests/help-regex.test: Likewise.
2752 * tests/help-silent.test: Likewise.
2753 * tests/help-upc.test: Likewise.
2754 * tests/mmode.test: Remove tests on `configure --help' output,
2755 they are superseded by tests in `help-maintainer.test'.
2756 * tests/Makefile.am (TESTS): Update.
2758 2010-09-14 Stefano Lattarini <stefano.lattarini@gmail.com>
2760 * tests/README: Don't put GCS mandated tools in $required.
2762 2010-09-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2764 * HACKING: Hint at old commits with `git describe' output.
2766 2010-09-12 Stefano Lattarini <stefano.lattarini@gmail.com>
2768 Fix regression in test `colon4.test'.
2769 * tests/colon4.test: Fix botched editing to `configure.in'
2770 that made the test useless. Since we are at it, improve
2771 comments and make grepping of generated Makefile.in slightly
2773 Regression introduced by change "Modernize, improve and/or
2774 extend tests `colon*.test" (Stefano Lattarini, 2010-08-08).
2776 2010-09-08 Stefano Lattarini <stefano.lattarini@gmail.com>
2778 Do not require "gzip" explicitly in tests.
2779 The gzip utility is simply expected to be present on any decent
2780 target system for Automake. So it's pointless to put it in
2782 * tests/install2.test ($required): Do not require "gzip".
2783 * tests/lex3.test: Likewise.
2784 * tests/pr9.test: Likewise.
2785 From a suggestion by Ralf Wildenhues.
2787 Make some `confh*.test' tests more "semantic" (plus tweakings).
2788 * tests/confh.test: Run "autoconf", "configure" and "make check",
2789 instead of munging/grepping the generated `Makefile.in'.
2790 * tests/confh4.test: Relax the grepping of Makefile.in w.r.t.
2791 white spaces. Do not create useless dummy source file `foo.c'
2792 and useless dummy header file `acconfig.h'.
2793 (configure.in): Remove superfluous call to `AC_OUTPUT'.
2794 * tests/confh6.test: Add trailing `:' command.
2795 * tests/confh7.test: In comments, add reference to ...
2796 * tests/confh8.test: ... this new test, "semantic" sister
2798 * tests/Makefile.am (TESTS): Updated.
2799 Prompted by a report from Ralf Wildenhues.
2801 Remove useless whitespace padding in XFAIL_TESTS definition.
2802 * tests/Makefile.am (XFAIL_TESTS): Remove whitespace padding.
2804 2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2806 parallel-tests: avoid command-line length limit issue.
2807 * automake.in (handle_tests): New argument $makefile, new
2808 substitution %MAKEFILE%.
2809 (generate_makefile): Adjust.
2810 * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
2811 sanitized TEST_LOGS value as makefile snippet on standard
2812 input to $(MAKE), to avoid exceeding the command line limit on
2815 Report by Bob Friesenhahn.
2817 Posix 2008 requires make to set errexit.
2818 * lib/am/check.am: Update comment.
2820 2010-08-27 Stefano Lattarini <stefano.lattarini@gmail.com>
2822 Fix bug in test missing6.test.
2823 * tests/missing6.test: Fix the hack used to edit `configure.in',
2824 to avoid producing a configure script that breaks with shells
2825 that do not support $LINENO. Also throw in a couple of cosmetic
2828 2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2830 Improve robustness of mdate-sh script.
2831 * lib/mdate-sh: Sanitize zsh behavior on startup, to ensure
2832 $ls_command is word-split properly upon invocation.
2833 (error): New function.
2834 (main): Use it. Improve error checking to avoid endless loop
2835 in case $ls_command gave bogus output. Fix eval quotation.
2836 * tests/mdate6.test: New test, to expose eval quotation error.
2837 * tests/Makefile.am: Update.
2839 2010-08-18 Stefano Lattarini <stefano.lattarini@gmail.com>
2841 Fix potential regressions in depcomp{3,5}.test.
2842 * tests/depcomp3.test: Do not uselessly escape the character `$'
2843 in makefile rules, when it's used to expand a make macro.
2844 * tests/depcomp5.test: Likewise.
2846 2010-08-17 Stefano Lattarini <stefano.lattarini@gmail.com>
2847 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2849 Docs: clarify how to avoid automatic dependencies tracking.
2850 * doc/automake.texi (Automatic dependency tracking): Mention that
2851 automatic dependencies tracking is enabled by default, but that
2852 the package developer can disable it altogether. Add a reference
2853 to the proper section for a more in-depth explanation.
2855 Fix typo in manual (`Makefile.in' instead of `Makefile.am').
2856 * doc/automake.texi (Automatic dependency tracking): Fix typo.
2858 2010-08-16 Bruno Haible <bruno@clisp.org>
2860 Don't hide the table of contents.
2861 * doc/automake.texi: Move the table of contents to the beginning.
2863 2010-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
2865 Tweak and/or extend some `acloca*.test' tests.
2866 * tests/aclocal8.test: Ensure verbose printing of captured
2868 * tests/aclocal.test: Likewise. Also, add trailing `:'
2870 * tests/acloca19.test: Likewise.
2871 * tests/aclocal5.test: Add trailing `:' command, and prefer
2872 `$me' over hard-coded test name.
2873 * tests/aclocal6.test: Likewise.
2874 * tests/aclocal18.test: Add trailing `:' command, and make
2875 some grepping slightly stricter.
2876 * tests/acloca14.test: Likewise. Also, prefer `diff' over
2877 `cmp', and add some "cosmetic" blank lines.
2879 2010-08-09 Stefano Lattarini <stefano.lattarini@gmail.com>
2881 Tweak and extend tests `pr[!0-9]*.test'.
2882 * tests/primary3.test: Add trailing `:' command.
2883 * tests/primary.test: Make grepping of Automake's stderr stricter.
2884 Also, add trailing `:' command, and cosmetic changes in spacing.
2885 * tests/primary2.test: Likewise.
2886 * tests/prefix.test: Enable `errexit' shell flags, and related
2887 changes. Add a trailing `:' command.
2888 * tests/proginst.test: Likewise.
2890 Modernize, improve and extend tests for PR (`pr[0-9]*.test').
2891 * tests/pr2.test: Add trailing `:' command.
2892 * tests/pr229.test: Likewise.
2893 * tests/pr401.test: Likewise.
2894 * tests/pr401b.test: Likewise.
2895 * tests/pr401c.test: Likewise.
2896 * tests/pr300-prog.test: Likewise, plus cosmetic changes in
2898 * tests/pr300-lib.test: Likewise.
2899 * tests/pr300-ltlib.test: Likewise, and ensure verbose printing
2900 of captured make stdout.
2901 * tests/pr211.test: Add trailing `:' command. Also, use the
2902 `configure.in' stub created by ./defs, rather than writing it
2904 * tests/pr204.test: Likewise, plus cosmetic spacing changes.
2905 * tests/pr287.test: Likewise, and move setting of `errexit' shell
2906 flag earlier in the script (just after inclusion of ./defs).
2907 * tests/pr220.test: Make grepping of Automake's stderr stricter.
2908 Also, add trailing `:' command, and cosmetic changes in spacing.
2909 * tests/pr224.test: Move setting of `errexit' shell flag earlier
2910 in the script (just after inclusion of ./defs). Do not export
2911 `CC=gcc' to configure explicitly (it's already exported globally
2912 in ./defs, since we have "gcc" in $required). Use the stub for
2913 `configure.in' created by ./defs, rather than writing it from
2914 scratch. Do not create dummy files required by "gnu" mode (e.g.
2915 README, NEWS), since we run automake in foreign mode anyway.
2916 * tests/pr72.test: Enable `errexit' shell flags, and related
2917 changes. Extend existing checks a bit.
2918 * tests/pr9.test: Likewise. Also, avoid obsolescent constructs in
2919 the generated `configure.in', and extend existing checks over the
2920 generated tarball a bit.
2921 * tests/pr87.test: Enable `errexit' shell flags, and related
2922 changes. Add a trailing `:' command. Also, do not create dummy
2923 files required by "gnu" mode (e.g. README, NEWS), since we run
2924 automake in foreign mode anyway.
2925 * tests/pr243.test: Avoid obsolescent constructs in the generated
2926 `configure.in'. Enable the `errexit' shell flag, and related
2927 changes. Cosmetic changes to spacing, add trailing `:' command,
2928 and add a "FIXME" comment.
2929 * tests/pr266.test: Likewise, and add explicit command line switch
2930 `--enable-dependecy-tracking' to the ./configure call.
2931 * tests/pr279.test: Avoid obsolescent constructs in the generated
2932 `configure.in'; also, use the `configure.in' stub created by
2933 ./defs, rather than writing it from scratch. Enable `errexit'
2934 shell flag, and related changes. Add trailing `:' command.
2935 * tests/pr279-2.test: Likewise, and make grepping of Makefile.in
2937 * tests/pr307.test: Move setting of `errexit' shell flag earlier
2938 in the script (just after inclusion of ./defs). Escape literal
2939 dots in grep regular expressions. Also, add a trailing `:'
2940 command, and cosmetic changes to spacing.
2942 Tests for PR: add excerpts from original bug report, for clarity.
2943 * tests/pr2.test: Ditto.
2944 * tests/pr9.test: Likewise.
2945 * tests/pr72.test: Likewise.
2946 * tests/pr87.test: Likewise.
2947 * tests/pr211.test: Likewise.
2948 * tests/pr220.test: Likewise.
2949 * tests/pr224.test: Likewise.
2950 * tests/pr229.test: Likewise.
2951 * tests/pr243.test: Likewise.
2952 * tests/pr266.test: Likewise.
2953 * tests/pr279.test: Likewise, and tell to keep it in sync
2954 with its sister test.
2955 * tests/pr279-2.test: Likewise.
2957 2010-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
2959 Tweak, extend and improve tests `cond[a-z]*.test'.
2960 * tests/condd.test: Add trailing `:' command. Typofix in
2962 * tests/condhook.test: Make sure target `install-data-hook' is
2963 not called by `make install', but that data files are installed.
2964 Use proper m4 quoting in configure.in. Add trailing `:' command.
2965 * tests/condhook2.test: New test, sister test of condhook, with
2967 * tests/condinc2.test: Use proper m4 quoting in configure.in.
2968 Prefer trailing `:' command over trailing `Exit 0'.
2969 * tests/condman2.test: Enable errexit shell flag, and related
2970 changes. Add trailing `:' command.
2971 * tests/condman.test: Likewise. Also, do not create useless
2972 dummy manpages, and use proper m4 quoting in configure.in.
2973 * tests/condman3.test: New test, similar to condman.test, but
2974 it also runs ./configure and "make install", and check the
2976 * tests/Makefile.am (TESTS): Updated.
2978 Modernize, improve and/or extend tests `colon*.test.
2979 * tests/colon.test: Rely on the `configure.in' stub created by
2980 `./defs', rather than writing one from scratch. Do not create
2981 a useless dummy file. Add trailing `:' command.
2982 * tests/colon4.test: Enable the `errexit' shell flag, and
2983 related changes. Rely on the `configure.in' stub created by
2984 `./defs', rather than writing one from scratch.
2985 * tests/colon7.test: Enable `errexit' shell flag, and related
2986 changes. Improve the generated `configure.in' file. Add
2987 trailing `:' command.
2988 * tests/colon2.test: Likewise. Also, add some new checks.
2989 * tests/colon5.test: Improve the generated `configure.in' file.
2990 Add new, much deeper checks. Add trailing `:' command.
2991 * tests/colon6.test: Likewise.
2992 * tests/colon3.test: Add trailing `:' command. Remove useless
2993 comments and echos. Improve the generated `configure.in' file.
2994 make some grepping tests stricter. Add a "FIXME" comments about
2995 planned improvements.
2997 Improve and extend tests `asm*.test'.
2998 * tests/asm.test: Use configure.in stub generated by ./defs,
2999 and avoid obsoleted autoconf constructs. Make grepping of
3000 Automake stderr stricter. Do not create useless source file.
3001 Improve verbose messages. Minor cosmetic changes. Tell to
3002 keep it in sync with other sister tests asm*.test.
3003 * tests/asm2.test: Likewise.
3004 * tests/asm3.test: Likewise.
3006 Modernize, improve and/or extend test scripts `conf*.test'.
3007 * tests/confh5.test: Cosmetic changes.
3008 * tests/conff.test: Likewise.
3009 * tests/confdeps.test: Likewise.
3010 * tests/conflnk.test: Likewise.
3011 * tests/conflnk2.test: Likewise.
3012 * tests/confsub.test: Likewise.
3013 * tests/confvar.test: Likewise, and make grepping of Makefile.in
3015 * tests/confvar2.test: Likewise.
3016 * tests/conflnk3.test: Cosmetic changes. Re-enable a temporarily
3017 disabled test (which didn't work with autoconf <= 2.59, but now we
3018 are requiring autoconf 2.62, so...)
3019 * tests/conflnk4.test: Cosmetic changes, and extend existing tests
3020 accordingly to "TODO" comments.
3021 * tests/conff2.test: Make grepping of Automake's stderr stricter.
3022 Add some comments explaining why we don't use the `configure.in'
3023 stub preset be ./defs.
3024 * tests/confh.test: Use the `configure.in' stub created by ./defs,
3025 rather than writing one from scratch, and do not call AC_OUTPUT.
3026 Enable `errexit' shell flag, and related changes. Prefer diff over
3027 cmp to compare text files. Prefer perl over sed to fetch the value
3028 of $(DIST_COMMON) from Makefile.in. Make grepping of the contents
3029 of $(DIST_COMMON) stricter.
3030 * tests/confh4.test: Use the `configure.in' stub created by ./defs,
3031 rather than writing one from scratch. Make grepping of Makefile.in
3033 * tests/confh5.test: Make grepping of `config.h' stricter. Add a
3035 * tests/configure.test: Avoid obsolescent constructs in generated
3036 `configure.ac'. Do not write `configure.in' two times. Escape
3037 literal dots in grep regular expressions.
3038 * tests/confincl.test: Enable `errexit' shell flag, and related
3039 changes. Prefer fgrep over grep. Other cosmetic changes.
3040 * tests/config.test: Renamed to ...
3041 * tests/confh6.test: ... this. Fix m4 quoting in `configure.in',
3042 and make grepping of `config.h' and `config.h.in' stricter.
3043 * tests/conf2.test: Renamed ...
3044 * tests/confh7.test: ... to this. Use the `configure.in' stub
3045 created by ./defs, rather than writing one from scratch. Try to
3046 run the checks both with and without AC_PROG_CC and AC_OUTPUT in
3048 * tests/Makefile.am (TESTS): Updated.
3050 Minor improvements and fixes in tests `depcomp*.test'.
3051 * tests/depcomp.test: Do not create useless dummy source files.
3052 Add a trailing `:' command.
3053 * tests/depcomp2.test: Use `unset' on the CFLAG variable to ensure
3054 it's not in in the environment, rather than exporting it with an
3055 empty value. Do not pass CC=gcc to configure, as that's already
3056 done in ./defs since we have gcc in $required. Ensure verbose
3057 printing of captured stderr, and normalize its checking. Add a
3058 trailing `:' command.
3059 * tests/depcomp3.test: Quote literal dots and dollar characters in
3060 grep regexps. Always use `: >' rather than `touch' to create empty
3061 files. Explicitly declare phony targets as such in the created
3062 Makefile.am. Add a trailing `:' command.
3063 * tests/depcomp4.test: Quote literal dots and dollar characters in
3064 grep regexp. Explicitly declare phony targets as such in the
3065 created Makefile.am. Ensure verbose printing of captured makes'
3066 stoud/stderr. Add a trailing `:' command.
3067 * tests/depcomp5.test: Move setting of `errexit' shell flag earlier
3068 in the script (just after inclusion of ./defs). Quote literal dots
3069 and dollar characters in grep regexps. Explicitly declare phony
3070 targets as such in the created Makefile.am. Add a trailing `:'
3072 * tests/depcomp6.test: Consistently use m4 quoting in the generated
3073 configure.in. Cosmetic fixes to spacing. Make the "dummy" `if'
3074 statement required by OpenBSD's sh `set -e' more robust, and add
3075 explanatory comments to it.
3076 * tests/depcomp7.test: Likewise, and add a trailing `:' command.
3078 Separate failing part of test `all.test'.
3079 * tests/all.test: Keep only (x)failing part of the test. Working
3080 checks moved out to ...
3081 * tests/all2.test: ... this new test.
3082 * tests/Makefile.am (TESTS): Updated.
3084 Modernize, improve and extend tests `subobj*.test'.
3085 * tests/subobjname.test: Add trailing `:' command.
3086 * tests/subobj.test: Make grepping of `Makefile.in' stricter.
3087 Escape literal dots in grep regexps.
3088 * tests/subobj2.test: Add trailing `:' command. Do not use the
3089 unportable fgrep option `-e'.
3090 * tests/subobj3.test: Add trailing `:' command.
3091 (configure.in): Use proper m4 quoting, and avoid obsolescent
3093 * tests/subobj8.test: Likewise. Also, enable `errexit' shell
3094 flag, with related changes
3095 * tests/subobj4.test: Likewise. Also, make grepping of
3096 `Makefile.in' stricter.
3097 * tests/subobj5.test: Add trailing `:' command. Move setting of
3098 `errexit' shell flag earlier in the script (just after inclusion
3100 (configure.in): Use the stub created by `./defs', rather than
3101 writing it from scratch, and avoid obsolescent constructs.
3102 * tests/subobj6.test: Add trailing `:' command. Move setting of
3103 `errexit' shell flag earlier in the script (just after inclusion
3104 of ./defs). Do not create useless dummy ac-init file `f'.
3105 * tests/subobj7.test: Do not create useless dummy ac-init file
3107 (configure.in): Use the stub created by `./defs', rather than
3108 writing it from scratch, and avoid obsolescent constructs.
3109 * tests/subobj9.test: Move setting of `errexit' shell flag earlier
3110 in the script (just after inclusion of ./defs). Fail the test if
3111 `make distcheck' fails. Ensure verbose printing of captured make
3112 stdout. Avoid useless fork by doing simple grep instead of using
3113 test -n "`COMMAND | grep ...`".
3114 (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
3115 (Makefile.am): Explicitly mark target "print" as phony.
3116 * tests/subobj10.test: Removed duplicated call to `set -e'. Add
3117 trailing `:' command.
3118 (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
3120 Remove a couple of obsoleted tests.
3121 * tests/fpinstall.test: Removed.
3122 * tests/fpinst2.test: Likewise.
3123 * tests/Makefile.am (TESTS): Updated.
3125 Bootstrap: updated HACKING entry.
3126 * HACKING ("Working with git"): Explain how to override the
3127 autoconf and autom4te programs used by the bootstrap process.
3130 * bootstrap: Do not remove `lib/Automake/Config.pm' anymore,
3131 since we don't generate it. Correctly quote arguments of
3132 `eval' builtin. Fixed a botched error message. Removed an
3135 Bootstrap: don't search perl in $PATH.
3136 * bootstrap: Do not explicitly search perl in $PATH anymore.
3137 ($PATH_SEPARATOR): Removed, it's no more needed.
3139 Bootstrap: let the user choose which autoconf to use.
3140 * bootstrap ($AUTOCONF): New variable, from the environment.
3141 ($AUTOM4TE): Likewise, for clarity.
3142 Use "$AUTOCONF" instead of calling "autoconf" directly.
3144 Minor improvements to tests ar*.test.
3145 * tests/ar.test: Add trailing `:' command.
3146 * tests/ar2.test: Likewise, and make grepping of generated
3147 Makefile.in stricter.
3149 2010-08-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3151 Fix maintainer-check failure.
3152 * tests/cond5.test: Quote sleep argument, this isn't about
3153 time stamp differences.
3155 Sync auxiliary files from upstream.
3156 * lib/config.guess, lib/config.sub, lib/texinfo.tex:
3159 2010-08-06 Stefano Lattarini <stefano.lattarini@gmail.com>
3161 Work around a nasty bug (segfault) of Solaris make.
3162 * lib/am/check.am (recheck, recheck-html): Trim trailing spaces
3163 from $list, to avoid triggering a nasty bug (potential segfault)
3166 2010-08-06 Peter Rosin <peda@lysator.liu.se>
3168 Make cond5.test more robust on MSYS.
3169 * tests/cond5.test: Add delay before the first kill attempt to
3170 cater for problems with MSYS bash.
3172 2010-07-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3174 Add example git work flow; discuss merge --log in HACKING.
3176 Suggestion by Stefano Lattarini.
3178 Add more hints for debugging make rules.
3179 * doc/automake.texi (Debugging Make Rules): Show command to find
3180 out expanded values of variables; point to makefile debugger.
3182 Prompted by suggestion from Ludovic Courtès and Andy Wingo.
3184 2010-07-27 Patrick Welche <prlw1@cam.ac.uk> (tiny change)
3186 Fix typo in the manual.
3187 * doc/automake.texi (Scripts): Fix typo.
3189 2010-07-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3191 Document current policy for development with git.
3192 * HACKING (Working with git): Overhaul.
3193 Prompted by suggestion from Stefano Lattarini.
3195 Fix AM_COND_IF for gone-invalid condition shell expression.
3196 * m4/cond-if.m4 (AM_COND_IF): test contents of $COND_TRUE
3197 variable, rather than re-evaluating the shell expression for
3199 * tests/cond40.test: Extend test.
3202 Avoid syntax error if IF-TRUE part of AM_COND_IF expands empty.
3203 * m4/cond-if.m4 (AM_COND_IF): Ensure IF-TRUE part is never empty
3204 to avoid shell syntax error if the m4 expansion is empty.
3205 * tests/cond40.test: Enhance test.
3207 Coverage: bogus option to AM_INIT_AUTOMAKE.
3208 * tests/init2.test: New test.
3209 * tests/Makefile.am: Update.
3211 2010-07-21 Stefano Lattarini <stefano.lattarini@gmail.com>
3213 Modernize and improve test scripts `subdir*.test'.
3214 * tests/subdir.test: Enable `errexit' shell flag, and related
3215 changes. Use the `configure.in' stub created by `./defs',
3216 rather than writing one from scratch.
3217 * tests/subdir2.test: Likewise.
3218 * tests/subdir4.test: Likewise.
3219 * tests/subdir3.test: Enable `errexit' shell flag, and related
3220 changes. Do not create useless dummy source files.
3221 * tests/subdir5.test: Make grepping of Makefile.in (in topdir
3222 and in subdirs) stricter. Some minor changes to keep it more
3223 in sync with the related test `subdir8.test'.
3224 * tests/subdir8.test: Likewise (but with the related test being
3225 `subdir5.test' here).
3226 * tests/subdir6.test: Cosmetic change in spacing.
3227 * tests/subdir9.test: Define and use new variable `$distdir'. Add
3228 trailing `:' command.
3229 * tests/subdir10.test: Cosmetic consistency-related change.
3230 * tests/subdirbuiltsources.test: Cosmetic changes in spacings.
3231 (configure.in): Use stub created by `./defs', rather than writing
3232 it from scratch. Do not use obsoleted and/or deprecated forms of
3233 autoconf/automake macros.
3235 Modernize and improve test scripts `dist*.test'.
3236 * tests/distcleancheck.test: Do not add useless `-e' option to
3237 a $MAKE call. Extend test by grepping stderr of make.
3238 * tests/distcom2.test: Do not run the same test script on the
3239 Makefile.in twice, but save its output in an intermediate file
3240 instead. Make grepping of DIST_COMMON definition stricter.
3241 Display the content of more files, to ease debugging. Add a
3242 trailing `:' command. Improved heading comments w.r.t. sister
3244 * tests/distcom6.test: Likewise, and avoid to uselessly run
3246 * tests/distcom3.test: Ensure verbose printing of captured stdout
3247 and stderr. Make grepping of captured stderr stricter. Also,
3248 add trailing `:' command.
3249 * tests/distcom4.test: Declare the target `test' in the generated
3250 Makefile.am as `.PHONY'. Display content of more files, to ease
3251 debugging. Add trailing `:' command.
3252 * tests/distcom5.test: Likewise. Also, factor out common sed
3253 script in subroutine `extract_distcommon'.
3254 * tests/distcom7.test: Prefer cat + here-doc over echo to write
3255 test Makefile.am files. Add a trailing `:' command.
3256 * tests/distname.test: Prefer `gzip -d' over `gunzip'. Move the
3257 call to `set -e' earlier. Be stricter and more verbose in the
3258 checking of the generated tarball.
3259 (configure.in): Use the stub provided by ./defs, instead of
3260 writing it from scratch. Avoid obsoleted constructs. Remove
3261 useless call to `AM_PROG_CC_C_O'.
3262 * tests/distdir.test: Various minor improvements/normalizations.
3263 * tests/distlinks.test: Likewise.
3265 2010-07-18 Stefano Lattarini <stefano.lattarini@gmail.com>
3267 Improve and extend test cond5.test.
3268 * tests/cond5.test: Do not blindly sleep 60 seconds before polling
3269 the background automake process, but poll it every 10 seconds for
3270 at most 30 times (this makes the test both faster on good machines,
3271 and more resilient to spurious timeout-due failures when in low
3272 priority or on heavily-loaded systems).
3273 Check also that automake writes the expected error messages on the
3275 Enable `errexit' flag, and related changes.
3276 Rely on the `configure.in' stub created by `./defs', rather than
3277 writing one from scratch.
3279 2010-06-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3281 Update program --help output to match current GCS.
3282 * configure.ac: Set and substitute PACKAGE_URL if AC_PACKAGE_URL
3283 is not defined, for compatibility to Autoconf < 2.64.
3284 * Makefile.am (do_subst): Substitute PACKAGE_BUGREPORT and
3286 (sc_diff_automake_in_automake): Update number of diff lines for
3287 additional substitutions.
3288 * aclocal.in (usage): Use PACKAGE_BUGREPORT. Point to Automake
3289 home page and GNU general help page.
3290 * automake.in (usage): Likewise.
3291 * doc/automake.texi: New flag PACKAGE_BUGREPORT, to factor email
3293 (Introduction, Creating amhello, amhello Explained, Options):
3295 * lib/Automake/Makefile.am (do_subst): Substitute
3297 * lib/Automake/Config.in ($PACKAGE_BUGREPORT): New global.
3298 * lib/Automake/ChannelDefs.pm: Use it for footer of fatal
3301 Clean up @var handling in the manual.
3302 * doc/automake.texi: Throughout the manual, lower-case @var
3303 names, replace a few one-character names.
3305 2010-06-26 Stefano Lattarini <stefano.lattarini@gmail.com>
3307 Fix typo-related bug in test script silent5.test.
3308 * tests/silent5.test: Use $EGREP, not $GREP (which is not even
3311 Tests: remove useless repetitions of `foreign' automake option.
3312 * tests/multlib.test (configure.in): Remove useless use of
3313 `foreign' option in AM_INIT_AUTOMAKE (the `--foreign' option is
3314 already in $AUTOMAKE by default, so no point in repeating it).
3315 * tests/subobj10.test: Likewise.
3316 * tests/subobj9.test: Likewise.
3317 * tests/lex3.test (Makefile.am): Similarly, remove useless use
3318 of `foreign' option in AUTOMAKE_OPTIONS.
3319 * tests/lex5.test: Likewise.
3320 * tests/pr279.test: Likewise.
3321 * tests/pr279-2.test: Likewise.
3322 * tests/specflg3.test: Likewise.
3323 * tests/target-cflags.test: Likewise.
3325 Drop useless requirement "gzip" in lex5.test.
3326 * tests/lex5.test ($required): Do not list "gzip", as it's
3329 2010-06-24 Stefano Lattarini <stefano.lattarini@gmail.com>
3331 Fix bugs in test script silent5.test.
3332 * tests/silent5.test: Fixed a nasty bug (due to the use of grep
3333 instead of egrep) that could have led to false negatives.
3335 2010-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
3337 Add a test checking that distributed broken symlinks cause
3338 `make dist' to fail.
3339 * tests/distlinksbrk.test: New test.
3340 * tests/Makefile.am (TESTS): Updated.
3342 2010-06-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3344 Fix minor testsuite issues, update docs, for Yacc/Lex changes.
3345 * doc/automake.texi (Yacc and Lex): Mention AM_YFLAGS, YFLAGS
3346 and AM_LFLAGS, LFLAGS in the order in which they now appear in
3349 * tests/lflags.test, tests/lflags2.test, tests/yflags.test,
3350 tests/yflags2.test: Prefer `make -e' over `make VAR=VAL', to
3351 please maintainer-check. Ensure generated C files contain a
3352 declaration, to please compilers.
3354 2010-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
3356 Fix bugs in Automake Yacc/Lex support w.r.t. $(AM_FLAGS) and
3357 $(FLAGS) precedence.
3358 * automake.in: Fix registration of languages "Lex", "Lex (C++)",
3359 "Yacc" and "Yacc (C++)", so that $(LFLAGS) has precedence over
3360 $(AM_LFLAGS) and $(YFLAGS) has precedence over $(AM_YFLAGS).
3361 * tests/Makefile.am (XFAIL_TESTS): Updated accordingly.
3364 New tests, exposing bugs in Automake Yacc/Lex support w.r.t.
3365 $(AM_FLAGS) and $(FLAGS) precedence.
3366 * tests/lflags.test: New test, check that user $(LFLAGS) takes
3367 precedence over automake (AM_LFLAGS) and (foo_LFLAGS). Still
3369 * tests/lflags2.test: Likewise.
3370 * tests/yflags.test: New test, check that user $(YFLAGS) takes
3371 precedence over automake (AM_YFLAGS) and (foo_YFLAGS). Still
3373 * tests/yflags2.test: Likewise.
3374 * tests/Makefile.am (TESTS, XFAIL_TESTS): Extended accordingly.
3376 2010-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
3378 Modernize, improve and extend tests `suffix*.test'.
3379 * tests/suffix3.test: Enable `errexit' shell flag, and related
3381 * tests/suffix4.test: Likewise.
3382 * tests/suffix6.test: Likewise, and do not create a useless dummy
3384 * tests/suffix7.test: Likewise.
3385 * tests/suffix5.test: Enable `errexit' shell flag, and related
3386 changes. Make grepping of Makefile.in slightly stricter.
3387 * tests/suffix.test: Enable `errexit' shell flag, and related
3388 changes. Also, do not redirect grep output to /dev/null, as this
3389 might unmotivatedly hide useful information.
3390 * tests/suffix2.test: Move setting of `errexit' shell flag earlier
3391 in the script (just after inclusion of ./defs). Use a more
3392 idiomatic way to count text occurrences in Makefile.in with
3393 grep. Do not create useless dummy source files.
3394 * tests/suffix10.test: Ensure verbose printing of captured make
3395 stdout. Minor cosmetic changes.
3396 * tests/suffix8.test: Likewise. Also, drop useless call to the
3397 env(1) utility, and make grepping of make output stricter by using
3398 $FGREP rather than plain grep.
3399 * tests/suffix11.test: Likewise.
3400 * tests/suffix12.test: Likewise.
3401 * tests/suffix9.test: Prefer cat + here-doc over echo to append to
3402 the `configure.in' stub. Cosmetic changes.
3403 * tests/suffix13.test: Cosmetic spacing change.
3405 2010-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
3407 Add useful comment in test script ext.test.
3408 * tests/ext.test: Add a comment explaining why an apparently
3409 useless `if' statement is indeed required.
3411 Add useful comment in test script obsolete.test.
3412 * tests/obsolete.test: Add a comment explaining why we need
3413 an indirection in adding $AUTOUPDATE to $required.
3415 Normalize whitespaces in 'tests/Makefile.am'.
3416 * tests/Makefile.am (TESTS): Use only spaces, not tabs, in the
3417 definition of this variable.
3419 2010-06-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3421 Remove a couple of unneeded conditionals from tests.
3422 * tests/pr243.test, tests/pr266.test, tests/strip.test: No need
3423 for the FOOTEST conditional.
3425 2010-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
3427 Modernize, improve and/or fix various test scripts.
3428 * tests/symlink3.test: Deleted, separated into two new, more
3430 * tests/forcemiss.test: ... this one ...
3431 * tests/forcemiss2.test: ... and this one.
3432 * tests/symlink2.test: Enable `errexit' shell flag, make test
3433 stricter, and skip it if symlink creation is not supported.
3434 * tests/postproc.test: Enable `errexit' shell flag, related
3435 changes, and a couple of unrelated cosmetic changes.
3436 * tests/recurs.test: Use the `configure.in' stub created by
3437 `./defs', rather than writing one from scratch. Make grepping
3438 of Automake stderr slightly stricter.
3439 * tests/substtarg.test: Likewise.
3440 * tests/strip.test: Likewise, and move the call to `set -e'
3441 earlier (just after the inclusion of `./defs'). Also, make sure
3442 that the script installed by `make install-script' is equal to
3444 * tests/substref.test: Use the `configure.in' stub created by
3445 `./defs', rather than writing one from scratch. Move the call
3446 to `set -e' earlier (just after the inclusion of `./defs').
3447 Avoid to explicitly export CC for configure (that's already done
3448 in ./defs). Avoid potential problems with unpredictable make
3449 output. Finally, make grepping of Makefile.in stricter.
3450 * tests/substre2.test: Ensure verbose printing of the captured
3451 make's output, and make its grepping slightly stricter.
3452 * tests/cygwin32.test: Enable `errexit' shell flag, and related
3453 changes. Also, do not create useless dummy source/data files.
3454 * tests/scripts.test: Likewise.
3455 * tests/recurs2.test: Likewise. Also, use the `configure.in'
3456 stub created by `./defs'.
3457 * tests/Makefile.am (TESTS): Updated.
3459 Modernize, improve and/or fix tests `pluseq*.test.
3460 * tests/pluseq5.test: Append to configure.in using cat with an
3461 here-doc, not using echo.
3462 * tests/pluseq10.test: Make sure that the captured output of
3463 `make' command is always displayed. Where possible, use $FGREP
3464 instead of grep (this change makes some checks slightly stricter).
3465 * tests/pluseq8.test: Enable `errexit' shell flag, with related
3467 * tests/pluseq.test: Likewise. Also, do not create useless dummy
3468 data files, and use better m4 quoting in generated configure.in.
3469 * tests/pluseq2.test: Likewise. Also, append to configure.in
3470 using cat with an here-doc, not using echo.
3471 * tests/pluseq3.test: Likewise.
3472 * tests/pluseq4.test: Likewise.
3473 * tests/pluseq6.test: Likewise.
3474 * tests/pluseq7.test: Do not create useless dummy source file.
3475 * tests/pluseq9.test: Slightly extended w.r.t. the grepping of
3476 Automake stderr. Some unrelated cosmetic changes.
3478 Testsuite: ensure verbose printing of captured stderr.
3479 * tests/acloca18.test: Print captured stderr before either failing
3480 or grepping it. Be sure to send captured stderr to stderr, not to
3482 * tests/ansi3b.test: Likewise.
3483 * tests/cond39.test: Likewise.
3484 * tests/configure.test: Likewise.
3485 * tests/missing3.test: Likewise.
3486 * tests/missing6.test: Likewise.
3487 * tests/output-order.test: Likewise.
3488 * tests/pr300-ltlib.test: Likewise.
3489 * tests/python6.test: Likewise.
3490 * tests/python7.test: Likewise.
3491 * tests/python8.test: Likewise.
3492 * tests/python9.test: Likewise.
3493 * tests/subobj.test: Likewise.
3494 * tests/vars3.test: Likewise.
3495 * tests/missing4.test: Likewise, and fix a call to grep not to use
3497 * tests/ansi3.test: Likewise, and rely on the `configure.in' stub
3498 created by `./defs', rather than writing one from scratch.
3500 Enable `errexit' shell flag in various tests.
3501 * tests/backsl.test: Enable the `errexit' shell flag, and
3503 * tests/backsl2.test: Likewise.
3504 * tests/block.test: Likewise.
3505 * tests/canon2.test: Likewise.
3506 * tests/canon4.test: Likewise.
3507 * tests/comment2.test: Likewise.
3508 * tests/condlib.test: Likewise.
3509 * tests/cond15.test: Likewise, and prefer $FGREP over grep.
3510 * tests/canon3.test: Likewise. Also, avoid to create an useless
3512 * tests/acoutpt2.test: Enable the `errexit' shell flag, and some
3513 related changes. Do some cosmetic improvements in the generated
3514 `configure.in' file.
3515 * tests/cond4.test: Likewise.
3516 * tests/cond14.test: Likewise.
3517 * tests/condinc.test: Likewise.
3518 * tests/cond7.test: Likewise. Also, remove useless setting of
3519 AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am.
3520 * tests/ansi.test: Enable the `errexit' shell flag, and related
3521 changes. Extended, esp. by running autoconf, ./configure and
3522 make, and by looking into the distdir.
3524 2010-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
3525 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3527 Extend tests/README w.r.t. trailing `:' in test scripts.
3528 * tests/README (section "Writing test cases" subsection "Do"):
3529 Explain why apparently redundant trailing `:' and `Exit 0' in
3530 test scripts can indeed be useful.
3532 2010-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
3534 Improve determination of PATH separator in bootstrap script.
3535 * bootstrap: Determine what the PATH separator is the same way
3538 Minor improvements in bootstrap script.
3539 * bootstrap: Consistently use two-spaces indentation. Cosmetic
3540 improvement to comments.
3541 ($me): New variable, containing program basename.
3542 Prepend it to all error messages.
3544 Testsuite now works with BSD make in parallel mode.
3545 * tests/defs.in: Unset variables __MKLVL__ and MAKE_JOBS_FIFO,
3546 which are exported by BSD make when run in parallel mode, and
3547 which can confuse make processes spawned by our testsuite.
3548 This change fixes a lot of spurious failure when the testsuite
3549 is run with BSD make in parallel mode.
3551 2010-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
3553 Modernize, improve and/or fix various test scripts.
3554 * tests/sanity.test: Rely on the `configure.in' stub created by
3555 `./defs', rather than writing one from scratch.
3556 * tests/depend2.test: Likewise. Also, call `set -e' just after
3557 the inclusion of `./defs', instead that later in the script.
3558 * tests/canon5.test: Avoid a useless `|| Exit 1' after a call to
3559 $AUTOMAKE, and improve the positioning of an $ACLOCAL call.
3560 * tests/exeext4.test: Use $FGREP instead of grep, where possible.
3561 Make auxiliary rules in the generated Makefile more silent.
3562 These changes make some checks slightly stricter.
3563 * tests/ext2.test: Call `Exit 1' if inclusion of `./defs' fails.
3564 * tests/gettext2.test: Place final `:' at the end of the script,
3565 rather than in the middle.
3566 * tests/exeext.test: Call `set -e' just after the inclusion of
3567 `./defs', instead that later in the script.
3568 * tests/extra5.test: Likewise.
3569 * tests/confdeps.test: Likewise. Also, prefer `mv -f' over
3570 plain `mv', just to be sure.
3571 * tests/depcomp.test: Enable `errexit' shell flag, with related
3572 changes. Also, modernize the generated configure.in.
3573 * tests/cond9.test: Likewise. Also, rely on the `configure.in'
3574 stub created by `./defs', rather than writing one from scratch.
3575 * tests/cond10.test: Likewise.
3576 * tests/depcomp2.test: Likewise.
3577 * tests/depend3.test: Likewise.
3578 * tests/distcom7.test: Likewise.
3579 * tests/fortdep.test: Likewise. Also, remove definition of
3580 AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am,
3581 since that flag is already provided by $AUTOMAKE.
3582 * tests/mdate.test: Made stricter, by checking that Automake
3583 actually failed, and by making a stricter grep on the error
3584 message. Also, set shell `errexit flag'.
3585 * tests/python2.test: Improved verbose messages.
3587 Make test `ammissing.test' stricter.
3588 * tests/ammissing.test: Fail if $ACLOCAL succeeds unexpectedly.
3589 Enable `errexit' shell flag.
3591 2010-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
3593 Enable `errexit' shell flag in some test scripts.
3594 * tests/subcond.test: Enabled `errexit' shell flag, and related
3596 * tests/subst.test: Likewise.
3597 * tests/vars.test: Likewise.
3598 * tests/version4.test: Likewise.
3599 * tests/vpath.test: Likewise.
3600 * tests/vtexi2.test: Likewise.
3601 * tests/werror.test: Likewise.
3602 * tests/whoami.test: Likewise.
3603 * tests/tags.test: Likewise, and avoid to crate an useless dummy
3605 * tests/acsilent.test: Likewise, and don't use an easily-avoided
3606 command substitution.
3607 * tests/unused.test: Likewise, and don't use an easily-avoided
3608 command substitution.
3609 * tests/version.test: Likewise, and avoid deprecated constructs
3610 in the generated `configure.in'.
3611 * tests/version2.test: Likewise, and avoid deprecated constructs
3612 in the generated `configure.in'.
3614 2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3616 Prefer AUTOMAKE_fails over `$AUTOMAKE | grep' in tests.
3617 * tests/ldadd.test: Enable errexit. Use AUTOMAKE_fails so
3618 the verbose log contains all output.
3619 * tests/mdate.test: Likewise.
3620 Prompted by Stefano Lattarini's change to discover.test.
3622 2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
3624 Improve tests link*.test (enable `errexit' shell flag).
3625 * tests/link_c_cxx.test: Enable `errexit shell flag, and related
3626 changes. Also, do not create useless source files.
3627 * tests/link_dist.test: Likewise.
3628 * tests/link_f90_only.test: Likewise.
3629 * tests/link_f_only.test: Likewise.
3630 * tests/link_fc.test: Likewise.
3631 * tests/link_fccxx.test: Likewise.
3632 * tests/link_fcxx.test: Likewise.
3634 2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3636 Improve ext.test semantics, avoid OpenBSD sh errexit issue.
3637 * tests/ext.test: Inside shell compound command, use
3638 `if $cmd; then Exit 1; fi' rather than `$cmd && Exit 1', to
3639 fix failure with OpenBSD sh introduced with last patch.
3640 Actually ensure that a rule for .EXT.o is created for each
3641 known extension EXT.
3643 2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
3645 Enable `errexit' shell flag in some test scripts.
3646 * tests/dash.test: Enable `errexit' shell flag, and related
3648 * tests/defun.test: Likewise.
3649 * tests/defun2.test: Likewise.
3650 * tests/dejagnu.test: Likewise.
3651 * tests/double.test: Likewise.
3652 * tests/distcom2.test: Likewise.
3653 * tests/empty2.test: Likewise.
3654 * tests/empty3.test: Likewise.
3655 * tests/empty4.test: Likewise.
3656 * tests/exdir.test: Likewise.
3657 * tests/ext.test: Likewise.
3658 * tests/extra.test: Likewise.
3659 * tests/extra2.test: Likewise.
3660 * tests/extra3.test: Likewise.
3661 * tests/extra4.test: Likewise.
3662 * tests/flibs.test: Likewise.
3663 * tests/fnoc.test: Likewise.
3664 * tests/fo.test: Likewise.
3665 * tests/instexec.test: Likewise.
3666 * tests/ltdeps.test: Likewise.
3667 * tests/nodep.test: Likewise.
3668 * tests/nodepcomp.test: Likewise.
3669 * tests/f90only.test: Likewise, and remove botched/obsoleted
3670 comments and unnecessary commands.
3671 * tests/fonly.test: Likewise, and remove botched/obsoleted
3672 comments and unnecessary commands.
3673 * tests/discover.test: Likewise, and made stricter.
3675 Enable `errexit' shell flag in all tests cxx*.test.
3676 * tests/cxx.test: Enabled `errexit' shell flag, and related
3678 * tests/cxxansi.test: Likewise.
3679 * tests/cxxcpp.test: Likewise.
3680 * tests/cxxlibobj.test: Likewise.
3681 * tests/cxxlink.test: Likewise.
3682 * tests/cxxo.test: Likewise.
3684 Enable `errexit' shell flag in various tests.
3685 * tests/acoutnoq.test: Enabled `errexit' shell flag, and related
3687 * tests/acoutpt.test: Likewise.
3688 * tests/acoutqnl.test: Likewise.
3689 * tests/amassign.test: Likewise.
3690 * tests/ansi2.test: Likewise.
3691 * tests/ansi4.test: Likewise.
3692 * tests/badprog.test: Likewise.
3693 * tests/checkall.test: Likewise.
3694 * tests/clean.test: Likewise.
3695 * tests/colneq2.test: Likewise.
3696 * tests/colon.test: Likewise.
3697 * tests/colon5.test: Likewise.
3698 * tests/colon6.test: Likewise.
3699 * tests/comment.test: Likewise.
3700 * tests/compile_f90_c_cxx.test: Likewise.
3701 * tests/compile_f_c_cxx.test: Likewise.
3702 * tests/cond3.test: Likewise.
3703 * tests/cond6.test: Likewise.
3704 * tests/cond13.test: Likewise.
3705 * tests/conf2.test: Likewise.
3706 * tests/confvar.test: Likewise.
3707 * tests/confvar2.test: Likewise.
3708 * tests/cond8.test: Likewise, plus a cosmetic change.
3709 * tests/confh4.test: Likewise. Also, add in the heading comments
3710 an excerpt from the original bug report which motivated the
3711 creation of this test, to make its purpose clearer.
3713 2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3715 Rewrite manual to be gender-neutral.
3716 * doc/automake.texi (GNU Build System)
3717 (Standard Directory Variables, General Operation, CVS)
3718 (Hard-Coded Install Paths, Dependencies As Side Effects):
3719 Rewrite text to not contain gender-specific pronouns when
3720 speaking about developers or users, either by avoiding pronouns
3721 or by addressing them as `you' instead.
3723 Report by Christina Gratorp.
3727 2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
3729 Make tests on user extensibility of silent-rules mode stricter.
3730 * tests/silent6.test: Made stricter w.r.t. the grepping of the
3731 output produced by `make'.
3732 * tests/silent7.test: Likewise.
3734 Tests on silent-mode for C/Libtool made stricter.
3735 * tests/silent.test: Made stricter w.r.t. the grepping of the
3736 output produced by `make'.
3737 * tests/silent2.test: Likewise.
3738 * tests/silent4.test: Likewise.
3739 * tests/silent9.test: Likewise.
3740 * tests/silent3.test: Likewise, and add a final `make distclean'
3741 command to keep it better in sync with tests/silent{4,9}.test.
3743 Improved test silent5.test.
3744 * tests/silent5.test: Remove by hand all generated C files after
3745 non-verbose builds, to ensure the following builds are clean.
3746 Try to clean and rebuild with the same verbosity and without
3747 removing generated sources in between, to check that this does
3748 not trigger a different set of rules. Make grepping of make's
3749 output stricter. Improved/added some comments.
3751 New tests for Automake silent-mode with Fortran.
3752 * tests/silentf77.test: New test.
3753 * tests/silentf90.test: Likewise.
3754 * tests/Makefile.am (TESTS): Updated accordingly.
3756 New test `silentcxx.test' (Automake silent-mode with C++).
3757 * tests/silentcxx.test: New test.
3758 * tests/Makefile.am (TESTS): Updated accordingly.
3760 New test `silentyacc.test' (Automake silent-mode with Yacc).
3761 * tests/silentyacc.test: New test.
3762 * tests/Makefile.am (TESTS): Updated accordingly.
3764 New test `silentlex.test' (Automake silent-mode with Lex).
3765 * tests/silentlex.test: New test.
3766 * tests/Makefile.am (TESTS): Updated accordingly.
3768 Relax tests on silent-rules to cater to overly verbose makes.
3769 * tests/silent.test: When testing silent builds, don't fail if
3770 make's output simply contains the `mv' substring, but only if
3771 it contains the `mv ' substring (note the trailing space).
3772 * tests/silent2.test: Likewise.
3773 * tests/silent3.test: Likewise.
3774 * tests/silent4.test: Likewise.
3775 * tests/silent5.test: Likewise.
3776 * tests/silent9.test: Likewise.
3778 2010-01-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3780 Fix silent-rules output for disabled dependency tracking.
3781 * lib/am/depend2.am [!%FASTDEP%]: Rework silent-rules variable
3782 expansion code to also work in the case where %AMDEP% expands
3783 to FALSE at config.status time, using new substitution string
3785 * automake.in (verbose_nodep_flag): New function, appending
3786 `@am__nodep@' to the verbose-variable name.
3787 (handle_languages): If dependencies are not disabled, use it to
3788 set %VERBOSE-NODEP%.
3789 * m4/depend.m4: Substitute am__nodep as '_no', so the second
3790 verbose-variable will always expand to an empty string, if
3791 dependencies are enabled.
3792 * tests/silent5.test: Also test --disable-dependency-tracking;
3793 also test per-target flags for non-C language files.
3794 * tests/silent9.test: New test, like silent4.test but disable
3795 dependency tracking.
3796 * tests/Makefile.am: Adjust.
3797 * NEWS, THANKS: Update.
3798 Report by Dmitry V. Levin <ldv@altlinux.org>.
3800 2010-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
3802 Extend test on `nostdinc' automake option.
3803 * tests/nostdinc.test: Enable `errexit' shell flag. Related and
3804 unrelated minor changes. Make the grepping of the generated
3805 Makefile.in slightly stricter. Generate and run configure, so that
3806 the generated Makefile can be grepped too.
3808 2010-05-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3810 Make gnupload portable to EBCDIC hosts.
3811 * lib/gnupload: Use literal newline as argument for 'tr' rather
3812 than \015, for EBCDIC hosts. Also, avoid unportable nested
3813 double-quotes and backquotes.
3815 Report from Eric Blake and Steve Goetze via gnulib.
3817 2010-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
3819 Fix Autoconf version required by Automake's configure.
3820 Automake configure script used to tell that automake required
3821 autoconf 2.60 or later, but then it checked for autoconf >= 2.62,
3822 and if that was not found, it gave an error saying that Automake
3823 required configure 2.61a-341 or later. This change should
3824 eliminate such inconsistencies.
3825 * configure.ac ($required_autoconf_version): New variable.
3828 2010-05-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3830 Fix unportable sed script in maintainer-check test.
3831 * Makefile.am (sc_tests_Exit_not_exit): Rewrite sed script to
3832 not contain semicolon after 'b' or brace commands, for NetBSD.
3834 Wildcards are not portable to NetBSD make.
3835 * doc/automake.texi (Wildcards): Document portability issue.
3836 * tests/extra10.test, tests/extra11.test, tests/extra12.test:
3839 2010-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
3841 Make test for configure.in vs. configure.ac stricter.
3842 * tests/configure.test: Use a configure.in file that provokes
3843 an automake error, to ensure configure.ac is preferred.
3845 Avoid possible false negatives in dejagnu7.test.
3846 * tests/dejagnu7.test: Enable shell `errexit' flag. Also, avoid
3847 unportable use of fgrep option `-e'.
3849 Fix conflnk3.test to work with Solaris/Heirloom Sh.
3850 * tests/conflnk3.test: Use `test -r FILE' and `test ! -r FILE'
3851 instead of respectively `test -e FILE' and `test ! -e FILE',
3852 since Solaris Sh doesn't grok the latter. Do not SKIP the test
3853 if the shell doesn't support `test -e'.
3855 2010-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3858 * doc/automake.texi (Simple Tests using parallel-tests): Add
3859 missing closing parenthesis.
3861 Fix leftover call to removed function macros_dump.
3862 * automake.in (read_main_am_file): Call variables_dump, not
3863 macros_dump. Print actual error before list of variables.
3865 2010-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
3867 Minor improvements in comments of test `silent3.test'.
3868 * tests/silent3.test: Tell to keep it in sync with `silent9.test'
3871 2010-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3873 testsuite: ensure verbose printing of captured output.
3874 * tests/acloca14.test, tests/acloca18.test, tests/aclocal.test,
3875 tests/fort2.test, tests/help.test, tests/missing3.test,
3876 tests/missing6.test: Print captured stdout or stderr before
3879 2010-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
3881 Make test badopt.test stricter (by enabling `set -e').
3882 * tests/badopt.test: Add call to `set -e'. Due to this change,
3883 an unexpected failure in the call to `$ACLOCAL' (whose outcome
3884 was previously unchecked) would cause the whole test to fail.
3885 Also, bumped the copyright years.
3887 Make test for configure.in vs. configure.ac stricter.
3888 * tests/configure.test: Use a configure.in file that provokes
3889 an automake error, to ensure configure.ac is preferred.
3891 Use `set -e' in confsub.test (avoids possible false negatives).
3892 * tests/confsub.test: Enable shell `errexit' flag, and related
3893 changes (this helps avoiding some possible minor false negatives).
3894 Also, bumped copyright years.
3896 2010-04-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3898 Fix -Werror handling for presence of configure.in and configure.ac.
3899 * lib/Automake/Variable.pm (Automake::Variable): Do not initialize
3900 $configure_ac at the global level, before command-line arguments
3902 (require_variables): Initialize it here.
3903 * tests/configure.test: New test.
3904 * tests/Makefile.am: Update.
3905 Report by Stefano Lattarini.
3907 2010-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
3909 Avoid possible false negatives in confh5.test.
3910 * tests/confh5.test: Enable shell `errexit' flag, and bumped
3911 copyright years. Due to this change, any unexpected failure
3912 in calls to $ACLOCAL, $AUTOMAKE, $AUTOCONF or $AUTOHEADER, or
3913 a failure in grepping expected text in output files should now
3914 cause the whole test to fail.
3916 2010-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
3918 Fixed typo in POD documentation of Automake::Channels.
3919 * lib/Automake/Channels.pm: Fixed typo in POD documentation:
3920 @<...> was used instead of C<...>.
3922 2010-04-14 Stefano Lattarini <stefano.lattarini@gmail.com>
3924 Refactor tests on Automake TESTS color output.
3925 * tests/color.test: Tests using the expect program moved out to...
3926 * tests/color2.test: ... this new file.
3927 * tests/Makefile.am (TESTS): Extended accordingly.
3929 2010-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
3931 Fix typos in comments in test confh5.test
3932 * tests/confh5.test: Fix a couple of typos in comments.
3934 Avoid possible false negatives in canon-name.test.
3935 * tests/canon-name.test: Enable shell `errexit' flag. Improve
3938 2010-04-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3940 Fix per-Makefile.am setting of -Werror.
3941 Before this patch, 'AUTOMAKE_OPTIONS = -Werror' in one
3942 Makefile.am would carry over to other Makefile.am files
3943 treated afterwards by the same thread, causing inconsistent
3944 and unstable exit status values.
3945 * lib/Automake/Channels.pm (dup_channel_setup)
3946 (drop_channel_setup): Save and restore the setting of
3947 $warnings_are_errors.
3948 * tests/werror3.test: New test.
3949 * tests/Makefile.am: Adjust.
3952 2010-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
3954 Bugfix in confh5.test w.r.t. Solaris/Heirloom Sh.
3955 * tests/confh5.test: In the generated Makefile.am: do not use
3956 `test ! -e FILE' to check for the non-existence of a file, since
3957 that is not supported by Solaris/Heirloom Sh.
3959 Make test `aclocal3.test' stricter.
3960 * tests/aclocal3.test: Add call to `set -e'. Fail if $ACLOCAL
3961 succeds unexpectedly.
3963 Add tests checking that symlinks are resolved by `make dist'.
3964 * tests/distlinks.test: New test.
3965 * tests/Makefile.am (TESTS): Updated accordingly.
3966 Suggested by observations from Ralf Wildenhues.
3968 2010-04-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3970 Use -9 for maximum xz compression with dist-xz.
3971 * lib/am/distdir.am (dist-xz, dist, dist-all): Pass -9 to xz.
3972 * NEWS, THANKS: Update.
3973 Report by Pavel Sanda.
3975 2010-03-30 Stefano Lattarini <stefano.lattarini@gmail.com>
3977 Avoid an unportable use of `$status' shell variable.
3978 * Makefile.am (path-check): Don't use the `$status' shell variable
3979 in the target's rules, as it's special in Zsh (equivalent to `$?',
3982 Avoid another use of `chmod -R'.
3983 * Makefile.am (path-check): To be safe, do not use `chmod -R' on
3984 $(distdir) before removing it (as Solaris `chmod -R' touches
3985 symlink targets). Instead, use the cleanup strategy used in
3988 2010-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3990 Remove uses of @acronym and @sc.
3991 * doc/automake.texi (Public Macros, Limitations on File Names):
3992 Remove all usage of @acronym and @sc in the manual.
3993 Suggested by Karl Berry.
3995 2010-03-13 Karl Berry <karl@freefriends.org>
3997 GNU hello uses fdl.texi, not gpl.texi.
3998 * doc/automake.texi (Texinfo): Adjust example to upstream
4001 2010-03-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4003 Formatting cleanups in macro comments.
4004 * automake.in, lib/Automake/Channels.pm,
4005 lib/Automake/FileUtils.pm, lib/Automake/Options.pm,
4006 lib/Automake/Variable.pm, lib/Automake/XFile.pm,
4007 m4/options.m4, m4/substnot.m4: Fix macro comment format.
4009 2010-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
4010 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4012 Avoid generation of `tests/defs-p' file.
4013 * tests/defs.in: In the generated `configure.in' snippet: call
4014 `AM_INIT_AUTOMAKE' with the `parallel-tests' option if the shell
4015 variable `parallel_tests' is set to `yes'.
4016 * tests/Makefile.am (defs-p): Target removed.
4017 (check_SCRIPTS): Removed `defs-p'.
4018 (clean-local-check): Do not unlink `defs-p' anymore.
4019 ($(parallel_tests)): Transformation rules for the test scripts
4021 * tests/gen-parallel-tests: Selection rules for the test
4023 * tests/parallel-tests.test: Set `$parallel_tests' to `yes'
4024 then include `./defs' (rather than simply including `./defs-p').
4025 * tests/parallel-tests2.test: Likewise.
4026 * tests/parallel-tests3.test: Likewise.
4027 * tests/parallel-tests4.test: Likewise.
4028 * tests/parallel-tests5.test: Likewise.
4029 * tests/parallel-tests6.test: Likewise.
4030 * tests/parallel-tests7.test: Likewise.
4031 * tests/parallel-tests8.test: Likewise.
4032 * tests/parallel-tests9.test: Likewise.
4033 * tests/parallel-tests10.test: Likewise.
4034 * tests/README (Section "Writing Test Cases" subsection "Do"):
4035 Adjusted the parts referring to tests checking `parallel-tests'
4036 behaviour. Some other minor related improvements.
4037 * tests/.gitignore (defs-p): Removed.
4039 2010-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
4041 Remove redundant unset of variable TESTS from some test scripts.
4042 * tests/color.test: Do not unset the `TESTS' variable, as it's
4043 already unset in the `defs' file.
4044 * tests/check5.test: Likewise.
4045 * tests/check8.test: Likewise.
4046 * tests/check9.test: Likewise.
4047 * tests/check10.test: Likewise.
4048 * tests/check11.test: Likewise.
4049 * tests/parallel-tests.test: Likewise.
4050 * tests/parallel-tests3.test: Likewise.
4051 * tests/parallel-tests4.test: Likewise.
4052 * tests/parallel-tests5.test: Likewise.
4053 * tests/parallel-tests6.test: Likewise.
4054 * tests/parallel-tests7.test: Likewise.
4056 2010-02-22 Karl Berry <karl@gnu.org>
4058 Improve help message of mdate-sh.
4059 * mdate-sh: mention actual output format in help message.
4061 2010-02-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4063 Deprecate dist-lzma in favor of dist-xz.
4064 * doc/automake.texi (The Types of Distributions, Options):
4065 Adjust text to reflect renaming of lzma to xz.
4067 Missing deprecation noted by Antonio Diaz Diaz.
4069 2010-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
4071 Add tests about support of wildcards in EXTRA_DIST.
4072 * tests/extra10.test: New test, check basic support of wildcards
4074 * tests/extra11.test: New test, check more complex usage of
4075 wildcards in EXTRA_DIST.
4076 * tests/extra12.test: New test, check usage of wildcards in
4077 EXTRA_DIST when $builddir != $srcdir.
4078 * tests/Makefile.am (TESTS): Updated accordingly.
4079 Necessity of these new tests suggested by Braden McDaniel
4080 and Ralf Wildenhues.
4082 2010-02-08 Simon Josefsson <simon@josefsson.org>
4084 Fix copyright statement in gnupload script.
4085 * lib/gnupload: Fix copyright statement.
4087 2010-02-06 Dmitry V. Levin <ldv@altlinux.org> (tiny change)
4088 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4090 Fix exit status of signal handlers in shell scripts.
4091 The value of `$?' on entrance to signal handlers in shell scripts
4092 cannot be relied upon, so set the exit code explicitly to
4094 * lib/am/check.am (am__check_pre): Use `exit 143' in signal handler.
4095 * lib/elisp-comp: Likewise.
4096 * lib/install-sh: Likewise.
4097 * lib/ylwrap: Likewise. Also, fix script to trap signal 13, not 3.
4098 * NEWS, THANKS: Update.
4099 Bug report, analysis, and initial patch by Dmitry V. Levin.
4101 2010-02-06 Karl Berry <karl@gnu.org>
4103 Improve gnupload usage text.
4104 * gnupload (usage): Shorten to make more likely to fit on a tty
4105 line. Mention CMD in the synopsis. With ..., plural is implied.
4107 2010-01-28 Christos Kontas <xakon@yahoo.com> (tiny change)
4109 Fix some typos in the manual
4110 * doc/automake.texi (Nested Packages, Rebuilding): Fix typos.
4112 2010-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
4114 Slighty improve tests acoutbs.test and acoutbs2.test.
4115 * tests/acoutbs2.test: Enable `errexit' shell flag. Check that
4116 autoconf and configure work, that the file `zot' is created by
4117 configure, and that no file containing a backslash in its name is
4119 * tests/acoutbs.test: Likewise, plus updated copyright years.
4121 Fix test acoutbs2.test.
4122 * tests/acoutbs2: In the generated configure.in: add proper calls
4123 to AC_INIT and AM_INIT_AUTOMAKE, and remove explicit definition of
4124 PACKAGE and VERSION. Add a call to aclocal before calling automake.
4125 Updated copyright years.
4126 * tests/Makefile.am (XFAIL_TESTS): Removed acoutbs2.test.
4128 Add forgotten test scripts to $(TESTS).
4129 * tests/Makefile.am (TESTS): Added test scripts present on the
4130 filesystem, which were erroneously left out from $(TESTS):
4131 acoutbs2.test, badopt.test, extra2.test.
4132 (XFAIL_TESTS): Added acoutbs2.test.
4134 2010-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4136 Sync auxiliary files from upstream.
4137 * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub:
4140 Bump copyright years.
4141 * aclocal.in (write_aclocal, version): Bump copyright years.
4142 * automake.in (gen_copyright, version): Likewise.
4143 * doc/automake.texi: Likewise.
4146 * ChangeLog.09: New file, rotated from ...
4147 * ChangeLog: ... here.
4148 * Makefile.am (EXTRA_DIST): Distribute ChangeLog.09.
4152 Copyright (C) 2010, 2011 Free Software Foundation, Inc.
4154 Copying and distribution of this file, with or without modification, are
4155 permitted provided the copyright notice and this notice are preserved.