1 2004-12-31 Alexandre Duret-Lutz <adl@gnu.org>
3 * tests/man2.test, tests/transform.test: Specify --mandir, in order
4 not to fail when Autoconf changes its $mandir default.
6 2004-12-30 Alexandre Duret-Lutz <adl@gnu.org>
8 Support for `install-dvi', `install-html', `install-ps', and
9 `install-pdf', as recently introduced into the GNU Coding
12 * automake.in (handle_factored_dependencies): Reject
13 uninstall-dvi-local, uninstall-html-local, uninstall-info-local,
14 uninstall-ps-local, and uninstall-pdf-local. Allow
15 install-info-local even when no-installinfo is not used.
16 (handle_data): Allow datarootdir, dvidir, htmldir, pdfdir, and psdir.
17 (%standard_prefix): Declare these new standard directory variables.
18 * doc/automake.texi (Texinfo, Third-Party Makefiles): Document
19 install-dvi, install-html, install-pdf, and install-ps.
20 (Extending): Document install-local-dvi, install-local-html,
21 install-local-info, install-local-pdf, and install-local-ps.
22 * lib/Automake/Rule.pm (%dependencies): Add new install rules,
23 and remove uninstall-info.
24 * /cvs/automake/automake/lib/am/texinfos.am (install-dvi,
25 install-dvi-am, install-dvi-recursive, install-html,
26 install-html-am, install-html-recursive, install-pdf,
27 install-pdf-am, install-pdf-recursive, install-ps, install-ps-am,
28 install-ps-recursive, uninstall-dvi-am, uninstall-html-am,
29 uninstall-pdf-am, uninstall-ps-am): New rules.
30 (uninstall-info): Delete.
31 * tests/txinfo21.test: Augment to check for these new rules.
32 * tests/exdir2.test: Do not use `htmldir' as example of
34 * tests/overrid.test: Do not be fooled by install-ps and
36 * tests/txinfo10.test: Do not grep for uninstall-info-recursive.
38 2004-12-27 Alexandre Duret-Lutz <adl@gnu.org>
40 * automake.in (Preprocessed Fortran): Fix the definition of FCLINK.
42 * Makefile.am (maintainer-check): Refine check for @_ in scalar
43 context. Check for correct use of PRE_INSTALL, NORMAL_INSTALL,
44 POST_INSTALL, PRE_UNINSTALL, NORMAL_UNINSTALL, and POST_UNINSTALL.
45 * lib/am/texinfos.am (uninstall-info-am): Hide the invocation of
47 2004-12-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
49 * lib/am/texinfos.am (uninstall-info-am): Show change of
50 directory while uninstalling DJGPP-style info files.
52 2004-12-27 Alexandre Duret-Lutz <adl@gnu.org>
54 Declare recursive install targets as dependencies of `.MAKE', so
55 that `make -n install' works with BSD Make too.
57 * lib/Automake/Rule.pm (reset) <%dependencies>: Add `.MAKE'.
58 * automake.in (target_cmp): Move all `.XYZ' target last, not
60 (handle_factored_dependencies): Add target with hooks to `.MAKE'.
61 Do not let a user definition of .MAKE override ours.
62 * lib/am/install.am (install-am, install-strip): Mark as `.MAKE'.
63 * lib/am/multilib.am (all-multi, install-multi, mostlyclean-multi,
64 clean-multi, distclean-multi, maintainer-clean-multi): Likewise.
65 * lib/am/subdirs.am (mostlyclean-recursive, clean-recursive,
66 distclean-recursive, maintainer-clean-recursive): Likewise.
68 2004-12-18 Alexandre Duret-Lutz <adl@gnu.org>
70 * lib/config-ml.in, lib/config.guess, lib/config.sub,
71 lib/texinfo.tex: New upstream versions.
73 * doc/automake.texi (gettext): Move the paragraph about
75 (Emacs Lisp): ... here.
76 Report from Bruno Haible.
78 * doc/automake.texi: Bump GFDL version to 1.2, since that is
81 * doc/automake.texi: Fix more misuses of @ref, @xref and @pxref,
82 including some of the "corrections" below. Thanks to Karl Berry.
84 * doc/automake.texi: Correct several misuses of @xref and @pxref.
86 2004-12-17 Jim Meyering <jim@meyering.net>
88 * install-sh: Use `(exit N); exit N', not `(exit N); exit'.
89 Otherwise, install-sh could exit with improper exit status when
90 exiting via a trapped interrupt. Thanks to a report from Bob Proulx.
92 2004-12-14 Akim Demaille <akim@epita.fr>
94 * doc/automake.texi (Options): Englishoes.
95 (Options): And another.
97 2004-12-13 Alexandre Duret-Lutz <adl@gnu.org>
99 * ChangeLog.03: New file, extracted from ChangeLog.
100 * Makefile.am (EXTRA_DIST): Add it.
102 2004-12-12 Alexandre Duret-Lutz <adl@gnu.org>
104 * automake.in (check_user_variables): New function, extracted
106 (handle_languages): ... here.
107 (handle_languages, define_compiler_variable, define_link_variable):
109 (handle_single_transform): Check _LIBTOOLFLAGS in
110 addition to other per-target flags for Libtool objects.
111 (handle_libtool): Warn if LIBTOOLFLAGS is defined.
112 * doc/automake.texi (Libtool Flags, Program and Library Variables,
113 Flag Variables Ordering): Document LIBTOOLFLAGS.
114 * tests/libtool7.test: Check basic support for LIBTOOLFLAGS.
115 * tests/libtool8.test: Make sure Automake warns about LIBTOOLFLAGS
117 * tests/subobj9.test: Adjust.
119 2004-12-11 Alexandre Duret-Lutz <adl@gnu.org>
121 * doc/automake.texi (Per-Object Flags): New node.
123 2004-12-09 Alexandre Duret-Lutz <adl@gnu.org>
126 * lib/am/java.am (install-%DIR%JAVA, uninstall-%DIR%JAVA): Do
127 not install *.class if "$(%DIR%_JAVA)" is empty.
128 * tests/java3.test: New file.
129 * tests/Makefile.am (TESTS): Add it.
130 Report from Johannes Nicolai.
132 * doc/automake.texi (Java): Mention dist_ and add an example.
133 * tests/java.test: Do actually compile java files and run distcheck.
135 2004-12-08 Peter O'Gorman <peter@pogma.com>
136 Alexandre Duret-Lutz <adl@gnu.org>
138 * lib/Automake/FileUtils.pm (dir_has_case_matching_file,
139 reset_dir_cache): New functions.
140 * automake.in (handle_dist, require_file_internal): Use them, so
141 that CHANGELOG is not confused with ChangeLog on case-insensitive
142 case-preserving file systems.
143 * tests/hfs.test: New file.
144 * tests/Makefile.am (TESTS): Add hfs.test.
146 2004-12-08 Paul Eggert <eggert@cs.ucla.edu>
148 * lib/mdate-sh: Don't use "set - x`$ls_command /`", as zsh mishandles
149 the spaces inside $ls_command. Problem reported by Loulou Pouchet in
150 <http://lists.gnu.org/archive/html/autoconf/2004-12/msg00074.html>.
151 Don't use "set - x"; plain "set x" is enough, and simplifies debugging.
153 2004-12-05 Toshio Kuratomi <toshio@tiki-lounge.com>
155 * lib/py-compile: Add --destdir switch to py-compile that takes a
156 path argument that is not compiled into the file when byte compiling.
157 * lib/am/python.am: Use the new py-compile arguments to not include
158 DESTDIR in the byte compiled files.
159 * tests/python12.test: Test that DESTDIR won't be byte compiled into
162 2004-12-05 Alexandre Duret-Lutz <adl@gnu.org>
164 * doc/automake.texi (Clean): Typo.
166 * doc/automake.texi: Use @acindex for Autoconf macros, and @vindex
167 for variables (@cvindex was previously used for both). Separate
168 these two indices in the output. Use @code, @file, and @command
169 in @cindex lines wherever appropriate so they render nicely.
171 2004-12-05 Stepan Kasal <kasal@ucw.cz>
173 * doc/automake.texi (renamed objects, CVS): Typos.
175 2004-12-05 Alexandre Duret-Lutz <adl@gnu.org>
177 * doc/automake.texi (Flag Variables Ordering): New section.
178 (User Variables, Program and Library Variables): @xref it.
180 2004-11-24 Alexandre Duret-Lutz <adl@gnu.org>
182 * doc/automake.texi (Conditional Subdirectories): More comments
183 about non-distributed subdirectories.
185 * Makefile.am (maintainer-clean): Check for unescaped @ in manual.
187 2004-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
189 * doc/automake.texi (Built sources example): Fix typo.
191 2004-11-22 Alexandre Duret-Lutz <adl@gnu.org>
193 * aclocal.in (parse_arguments): Diagnose abbreviation ambiguous with
195 * automake.in (parse_arguments): Likewise.
196 * tests/aclocal.test, tests/automake.test: Check this.
197 Report from Eric Blake.
199 2004-11-21 Alexandre Duret-Lutz <adl@gnu.org>
201 * automake.in (parse_arguments): Diagnose empty arguments, options
202 with missing argument, and support `--'.
203 * aclocal.in (parse_arguments): Diagnose options with missing
205 * tests/aclocal.test: More checks.
206 * tests/automake.test: New file.
207 * tests/postprog.test: Use `--' for fun.
208 * tests/Makefile.am (TESTS): Add automake.test.
209 Report from Eric Blake.
211 * lib/am/progs.am (installcheck-%DIR%PROGRAMS): Run programs with
212 /dev/null as input, so we do not hang on programs that read their
213 input without supporting --help and --version.
214 * lib/am/scripts.am (installcheck-%DIR%SCRIPTS): Likewise for scripts.
215 * tests/gnits2.test: Change scriptnok.sh to cat its input.
216 Report and fix from James Youngman.
218 2004-11-17 Alexandre Duret-Lutz <adl@gnu.org>
220 * aclocal.in (%file_seen): Rename as ...
221 (%file_added): ... this, and move it close to add_file(), the only
222 function that uses it.
224 * aclocal.in (version): Remove initial blank line and reproduce
225 the layout of automake --version. From Art Haas.
227 * aclocal.in (%file_type, FT_USER, FT_AUTOMAKE_SYSTEM): New variables.
228 (scan_m4_dirs): New function, extracted from ...
229 (scan_m4_files): ... here. Call scan_m4_files three times, for each
231 (scan_file): Take a file type argument to update %file_type.
232 (write_aclocal): Do not m4_include files that are not of type FT_USER.
233 * tests/dirlist.test: Make sure m4_include is not used for --acdir
236 * tests/defs.in (testaclocaldir): New variable.
237 * tests/aclocal.test: Use it to fix the test. Report from
240 2004-11-10 Alexandre Duret-Lutz <adl@gnu.org>
242 * m4/python.m4 (AM_PATH_PYTHON): Fix the invocation of
243 AC_PATH_PROGS to correctly define PYTHON as `:' when no interpreter
244 is found (this worked correctly only when a minimal version was
245 passed to AM_PATH_PYTHON). Report from Stepan Kasal.
246 (_AM_PYTHON_INTERPRETER_LIST): Define using m4_define_default,
247 so we can easily override the list from the test suite.
248 * tests/python11.test: New file.
249 * tests/Makefile.am (TESTS): Add python11.test.
251 * doc/automake.texi (Libtool Modules): Make clearer that -module
252 should appear explicitly in _LDFLAGS.
254 2004-11-09 Alexandre Duret-Lutz <adl@gnu.org>
256 * aclocal.in (parse_arguments): Correctly recognize --print-ac-dir.
257 * tests/aclocal.test: Check --print-ac-dir and a unknown option.
259 * aclocal.in (parse_arguments): Fix detection of unexisting default
260 $(datadir)/aclocal. Report from Akim.
262 2004-11-07 Alexandre Duret-Lutz <adl@gnu.org>
264 * aclocal.in ($acdir): Rename as ...
265 (@system_includes): ... this.
266 (@user_includes, @automake_includes): New variables.
267 ($default_acdir, $default_dirlist): Remove.
268 (parse_arguments): Populate @user_includes, @automake_includes, and
269 @system_includes instead of filling a unique @dirlist array.
270 ("MAIN"): Adjust to scan m4 files in @user_includes,
271 @automake_includes, and @system_includes.
273 2004-11-06 Alexandre Duret-Lutz <adl@gnu.org>
275 * aclocal.in (parse_arguments): Correct comment. From Akim.
277 2004-11-04 Alexandre Duret-Lutz <adl@gnu.org>
279 * aclocal.in: Use Automake::ChannelDefs, and adjust all output
280 to be done via `fatal', `msg', `verb', or `prog_error'.
281 (version): New function.
282 (parse_arguments): Rewrite using Getopt::Long, call &version, and
283 honor -W and --warning.
285 (trace_used_macros): Do not trace the first arguments of macros
286 for which we do not need it. This caused failures because of
287 unexpected newlines in the output.
288 * doc/automake.texi (aclocal options): Document -W and --warning.
289 * tests/defs.in (ACLOCAL): Always use -Werror, to catch Perl
290 warnings about uninitialized variables.
292 2004-11-03 Alexandre Duret-Lutz <adl@gnu.org>
294 * tests/defs.in: Do not distinguish VERBOSE=x from
295 VERBOSE=anything_but_x, always turn on shell traces.
297 * aclocal.in (write_aclocal): Make sure $map_traced_defs{$m} exists
298 before using it. Suppress a warning observable in test/acloca16.test.
299 Report from Ralf Wildenhues.
301 2004-11-01 Alexandre Duret-Lutz <adl@gnu.org>
303 * lib/Automake/XFile.pm (lock): Make sure $ENV{'MAKEFLAGS'} exists
304 before inspecting it; this fixes "uninitialized value in
305 concatenation" diagnostics when flock fails.
306 Report from Gary V. Vaughan.
308 * aclocal.in: Use strict and -w. Declare local variables with `my',
309 and get rid of `local'.
310 (scan_m4_files, add_macro): Reindent these functions while we are
313 * lib/config.guess, lib/texinfo.tex: New upstream versions.
315 * doc/automake.texi (LIBOBJS): Spelling and grammar corrections
316 from Ralf Wildenhues.
318 2004-10-31 Alexandre Duret-Lutz <adl@gnu.org>
320 * doc/automake.texi (LIBOBJS): Augment with an example setup.
321 (LTLIBOBJ): Rename as ...
322 (LTLIBOBJS): ... this. Link to LIBOBJS, and mention LTALLOCA.
324 2004-10-25 Alexandre Duret-Lutz <adl@gnu.org>
326 * doc/automake.texi: Untabify, tabs in the examples are poorly
328 * Makefile.am (maintainer-check): Grep tabs in the manual.
330 * tests/comment8.test: Use $MAKE, not make.
332 2004-10-24 Alexandre Duret-Lutz <adl@gnu.org>
334 * tests/distcom3.test: Typo.
336 2004-10-22 Alexandre Duret-Lutz <adl@gnu.org>
338 * doc/automake.texi (Libtool Convenience Libraries): Explain how
339 to force the linker selection.
341 * lib/install-sh: Fix the dirname emulation to ignore trailing
342 slashes, i.e., the direname of `a/b/' is `a', not `a/b/'. This
343 caused `install-sh a/b/' to fail.
344 * tests/instsh2.test: Augment.
345 Report from Пухальский Юрий Андреевич.
347 2004-10-21 Alexandre Duret-Lutz <adl@gnu.org>
349 * automake.in (get_object_extension): The extension to use is know
350 by the caller, and cannot be selected by looking only at the
351 target name. Simplify this function to simply conditionally
352 prepend $U to the given extension.
353 (handle_programs, handle_libraries, handle_ltlibraries): Hard-code
354 the extension to use. This way Automake won't mistake a program
355 named `foo.la' as a libtool library.
356 * tests/primary3.test: New file.
357 * tests/Makefile.am (TESTS): Add primary3.test.
359 2004-10-12 Alexandre Duret-Lutz <adl@gnu.org>
361 * doc/automake.texi (Install): Link to node Extending for examples.
362 (Extending): More comments about install-data-hook vs
363 install-exec-hook, and link to Install.
365 * configure.ac: Export @am_AUTOCONF@.
366 * tests/defs.in (AUTOCONF): Define as @am_AUTOCONF@, not @AUTOCONF@,
367 so the test suite runs `autoconf' and not `missing --run autoconf'.
368 * tests/missing.test, tests/missing2.test: Arrange for missing
369 to be used in front of autoconf even if the user has exported
370 AUTOCONF. This fixes two spurious failures reported by
373 * lib/compile: Handle output.obj in addition to output.o.
374 * tests/compile.test: Check for this.
376 2004-10-11 Alexandre Duret-Lutz <adl@gnu.org>
378 * doc/automake.texi (Sources): Typo, reported by Karl Berry.
380 2004-10-10 Kelley Cook <kcook@gcc.gnu.org> (tiny change)
381 Alexandre Duret-Lutz <adl@gnu.org>
383 * aclocal.in ($ac_defun_rx): Match AC_DEFUN_ONCE.
384 (trace_used_macros): Trace AC_DEFUN_ONCE.
385 * tests/aclocal5.test: Use AC_DEFUN_ONCE.
387 2004-10-10 Stepan Kasal <kasal@ucw.cz> (tiny change)
389 * doc/automake.texi (Extending): Typo.
391 2004-10-10 Martin Waitz <tali@admingilde.org> (tiny change)
393 * m4/as.m4 (AM_PROG_AS): Check dependency tracking mode for CCAS.
394 * automake.in (cppasm): Use the dependency tracking more for CCAS.
395 * doc/automake.texi (Assembly Support): Note that *.S are
396 preprocessed with CPPFLAGS.
398 2004-10-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
400 * automake.in (Languages): Split .s (asm) and .S (cppasm) into
401 separate languages. Make cppasm (Preprocessed Assembler) aware
402 of CPPFLAGS, AM_CPPFLAGS.
403 (handle_languages): Fix typo.
404 (lang_cppasm_rewrite): New function.
406 2004-09-29 Alexandre Duret-Lutz <adl@gnu.org>
408 * tests/subobj9.test: Adjust regexes after previous patch.
410 2004-09-28 Alexandre Duret-Lutz <adl@gnu.org>
412 * automake.in (handle_languages, define_compiler_variable): Output
413 Libtool's --tag= option before --mode=compile, because depcomp use
414 --mode=compile as end marker for libtool arguments.
415 (define_linker_variable): Likewise before --mode=link, for
417 * tests/pr307.test: Make sure dependency files are updated. That
418 was not the case because depcomp thought `--tag=CC' was the
419 compiler to get dependencies from.
420 Report from Пухальский Юрий Андреевич.
422 2004-09-26 Alexandre Duret-Lutz <adl@gnu.org>
424 * configure.ac: Require Perl 5.6.
425 * lib/Automake/Config.in: Require Perl 5.6 (not done in
426 lib/Automake/General.pm because it is shared with Autoconf),
427 and use `our' instead of `use vars'.
428 * aclocal.in (rel2abs): Remove.
429 (scan_configure_dep): Use File::Spec->rel2abs instead.
431 * tests/compile.test, tests/instsh2.test, tests/instspc.test: Use
432 two consecutive spaces in filename instead of one, to catch mistake
433 like `echo $val | ...`.
434 * tests/README: Suggest this.
435 Suggested by Ralf Wildenhues.
437 2004-09-25 Alexandre Duret-Lutz <adl@gnu.org>
439 * doc/automake.texi (Clean): Document -local targets.
441 2004-09-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
443 * doc/automake.texi: Typos.
445 2004-09-21 Alexandre Duret-Lutz <adl@gnu.org>
447 * doc/automake.texi (Timeline): Typos and other English mistakes
448 reported by Jim and Gary.
450 * lib/Automake/VarDef.pm (append): Strip comments from augmented
452 * tests/comment8.test: New file.
453 * tests/Makefile.am (TESTS): Add comment8.test.
454 Report from Stepan Kasal.
456 2004-09-19 Alexandre Duret-Lutz <adl@gnu.org>
458 * tests/compile.test: Fix rm usage.
460 * INSTALL, lib/INSTALL, lib/config.sub, lib/config.guess,
461 lib/texinfo.tex: New upstream versions.
463 * doc/automake.texi (Timeline): New node. Thanks to Karl and Tom
464 for their comments on a preliminary version of this, Akim for
465 digging out some old mails, and Jason Molenda for sending the note
466 about Automake in Alias to Tom.
467 (Releases): Rename `ac' to `acl', suggested by Akim.
469 2004-09-19 Akim Demaille <akim@epita.fr>
471 * AUTHORS, automake.in, aclocal.in: Add Alexandre Duret-Lutz as
474 2004-09-15 Alexandre Duret-Lutz <adl@gnu.org>
476 * doc/automake.texi (Releases): New node.
478 * doc/automake.texi (Dependencies): Link to Dependency Tracking
480 (Dependency Tracking Evolution): Link to GNU make, Sources (for
481 BUILT_SOURCES), and update the paragraph about the "plan" to
482 inline dependency tracking with gcc3.
484 * doc/automake.texi (History): New node.
485 (Dependency Tracking Evolution): New node, filled with a Texinfo
486 version of Tom Tromey's ``Dependency Tracking in Automake''
487 document, initially published on the Automake homepage on
490 2004-09-10 Alexandre Duret-Lutz <adl@gnu.org>
492 * m4/minuso.m4 (AM_PROG_CC_C_O): Make sure AC_PROG_CC is never
493 called after this macro.
494 * tests/distname.test, tests/subdir5.test, tests/subdir8.test,
495 tests/subobj.test, tests/subobj4.test, tests/subobj5.test,
496 tests/subobj6.test: Adjust.
497 Report from Ralf Wildenhues.
499 * lib/Automake/Channels.pm (_print_message): Handle uniq_part with
501 * automake.in (lang_c_rewrite): Set uniq_part so that the
502 AM_PROG_CC_C_O diagnostic is output only once for subdir objects
503 and only once for objects with per-target flags.
505 * automake.in (lang_c_rewrite): Print files and locations
506 for AM_PROG_CC_C_O errors.
507 (handle_single_transform): Pass $var to &$subr so it can
510 * lib/compile, lib/elisp-comp, lib/install-sh, lib/ylwrap: Use $ret
511 instead of $status which is read-only in Zsh.
513 2004-09-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
514 Alexandre Duret-Lutz <adl@gnu.org>
516 * lib/compile: Preserve spaces in arguments (for example
517 -DPACKAGE_STRING="foo 0.1").
518 * tests/compile.test: New file.
519 * tests/Makefile.am (TESTS): Add compile.test.
521 2004-09-07 Alexandre Duret-Lutz <adl@gnu.org>
523 * automake.in (handle_clean): Sort rm commands output for
524 mostlyclean-generic, clean-generic, distclean-generic, and
525 maintainer-clean-generic.
526 Report from Bob Friesenhahn.
528 * automake.in (lang_c_rewrite): Do not require AM_PROG_CC_C_O for
530 (handle_single_transform): Pass nonansi_obj to &$subr so
531 lang_c_rewrite can distinguish libtool objects.
532 * tests/libtool7.test: Use subdir-objects without using AM_PROG_CC_C_O.
533 Report from Gary V. Vaughan and Patrick Welche.
535 2004-09-07 Andreas Schwab <schwab@suse.de>
537 * automake.in ($PATH_PATTERN): Add `+'.
539 2004-09-07 Alexandre Duret-Lutz <adl@gnu.org>
541 * tests/missing3.test: New file (check for Paolo's change below).
542 * tests/Makefile.am (TESTS): Add missing3.test.
544 2004-09-07 Paolo Bonzini <bonzini@gnu.org>
546 * missing: Handle all command line options together. Add a
547 separate case statement to detect failed runs, and fail
548 silently there if --help or --version is passed to the program.
550 2004-08-11 Alexandre Duret-Lutz <adl@gnu.org>
552 * lib/config.guess, lib/texinfo.tex: New upstream versions.
555 * configure.ac (pkgvdatadir): Define using "$PACKAGE", not "automake".
558 * lib/am/yacc.am [!%?MORE-THAN-ONE%]: Replace `#line's in y.tab.h too.
559 * tests/yacc7.test: Check this.
561 2004-08-08 Alexandre Duret-Lutz <adl@gnu.org>
563 * lib/Automake/DisjConditions.pm (new): Precompute 'string' and 'conds'
564 in place instead of as a side-effect of calling ->string and ->conds.
565 This saves method-lookup time, simplify ->string and ->conds, and
566 allows to create the object only when necessary.
567 (string, conds): Simplify, now that the result is precomputed.
569 * automake.in (%am_file_cache): New hash.
570 (make_paragraphs): Cache .am files with comments stripped to save
571 some useless input and substitutions.
573 * lib/Automake/Variable.pm (%_primary_dict): New hash.
574 (_new, variable_delete): Update %_primary_dict.
575 (variables): Accept an optional $suffix argument.
576 * automake.in (check_typos, am_primary_prefixes): Use that
577 optional argument to restrict the loops over the variables we are
580 2004-08-06 Alexandre Duret-Lutz <adl@gnu.org>
582 * lib/Automake/Item.pm (def): Rewrite more concisely, it's faster
585 2004-08-05 Alexandre Duret-Lutz <adl@gnu.org>
587 Speed up make_paragraphs.
588 * automake.in (handle_languages): Always define SUBDIROBJ,
589 DERIVED-EXT, and DIST_SOURCE, because the new transform() will
590 abort on unknown tokens.
591 (transform): Rewrite with different semantics.
592 (make_paragraphs): Make a single pass over the paragraph to
593 transform all template tokens instead of doing as much passes as
596 * automake.in ($libtool_new_api): New variable.
597 (handle_libtool): Do not libtool's aux files if $libtool_new_api.
598 (scan_autoconf_traces) <LT_SUPPORTED_TAG>: Set $libtool_new_api.
599 (scan_autoconf_traces) <AC_REQUIRE_AUX_FILE>: Remember only the
600 first location for required files.
602 2004-08-04 Alexandre Duret-Lutz <adl@gnu.org>
604 Support AC_REQUIRE_AUX_FILE, and fix requirement of AM_PROG_CC_C_O.
605 * automake.in (%required_aux_file): New hash.
606 (handle_single_transform, lang_c_rewrite): Do not explicitly
607 require 'compile', this is now an internal detail of
609 (scan_autoconf_traces): Trace AC_REQUIRE_AUX_FILE and fill
611 (scan_autoconf_files): Require all %required_aux_file instead
612 of explicitly requiring install-sh and missing.
613 (generate_makefile): Do not require config.sub and config.guess.
614 (handle_single_transform): Pass $have_per_exec_flags to
616 * configure.ac, m4/init.m4: Require Autoconf 2.59a.
617 * doc/automake.texi (Optional): Document AC_REQUIRE_AUX_FILE.
618 (Program and Library Variables, Options, Public macros):
619 AM_PROG_CC_C_O is required when per-target flags or subdir-objects
620 are used with C sources.
621 * m4/minuso.m4: Require `compile' using AC_REQUIRE_AUX_FILE.
622 * m4/missing.m4: Require `missing' similarly.
623 * tests/acsubst2.test, tests/distcom2.test, tests/distcom6.test,
624 tests/specflg.test, tests/specflg2.test, tests/specflg3.test,
625 tests/specflg6.test, tests/specflg7.test, tests/specflg8.test,
626 tests/specflg9.test, tests/subobj7.test, tests/target-cflags.test,
627 tests/yacc6.test: Fix to use AM_PROG_CC_C_O.
629 2004-08-03 Alexandre Duret-Lutz <adl@gnu.org>
631 * automake.in (yacc_lex_finish_helper): Fix definition of YLWRAP
632 when ylwrap is installed in a default aux dir found in a parent
634 * tests/subpkg.test: Augment to check that YLWRAP is installed
636 * doc/automake.texi (Yacc and Lex): ylwrap is not sought is the
638 Report from Norman Gray.
640 2004-08-02 Alexandre Duret-Lutz <adl@gnu.org>
642 * doc/automake.texi (Optional): Update documentation for
643 AC_CANONICAL_BUILD, AC_CANONICAL_HOST, and AC_CANONICAL_TARGET.
645 * automake.in (AC_CANONICAL_HOST, AC_CANONICAL_SYSTEM): Replace by ...
646 (AC_CANONICAL_BUILD, AC_CANONICAL_HOST, AC_CANONICAL_TARGET): ... these.
647 (scan_autoconf_traces): Scan for the latter three macros instead of
649 (make_paragraphs): Adjust definitions of %BUILD%, %HOST%, and %TARGET%.
650 * tests/hosts.test: New file.
651 * tests/Makefile.am (TESTS): Add hosts.test.
652 Report and test case from Norman Gray.
654 2004-08-01 Alexandre Duret-Lutz <adl@gnu.org>
656 * aclocal.in (scan_file): Update "#Extending%20aclocal" URL, makeinfo
657 4.7 now outputs "#Extending-aclocal".
659 2004-08-01 Alexandre Duret-Lutz <adl@gnu.org>
660 Derek R. Price <derek@ximbiot.com>
662 Disable Lex and Yacc rules whenever possible if AM_MAINTAINER_MODE
663 is used and maintainer-mode disabled.
664 * automake.in (Automake::struct): Define nodist_specific.
665 Set it in languages yacc, yaccxx, lex, and lexxx.
666 (register_language): Default nodist_specific to 0.
667 (handle_single_transform): Honor nodist_specific.
668 * lib/am/yacc.am (am__skipyacc): Define this in maintainer mode.
669 (%EXT%%DERIVED-EXT%, %OBJ%): Use $(am__skipyacc) to disable these
671 * lib/am/lex.am (am__skiplex): Define this in maintainer mode.
672 (%EXT%%DERIVED-EXT%, %OBJ%): Use $(am__skiplex) to disable these
674 * tests/mmodely.test: New file.
675 * tests/pr204.test: Augment to check AM_MAINTAINER_MODE and nodist_
677 * tests/Makefile.am (TESTS): ADd mmodely.test.
678 * doc/automake.texi (Yacc and Lex): Note dependence on maintainer mode.
680 2004-07-28 Alexandre Duret-Lutz <adl@gnu.org>
682 * configure.ac, NEWS: Bump version to 1.9a.
684 * configure.ac, NEWS: Bump version to 1.9.
686 * automake.in (generate_makefile): Update misleading comment about
689 * lib/texinfo.tex: New upstream version.
691 2004-07-25 Alexandre Duret-Lutz <adl@gnu.org>
693 * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Remove `.' from the mkdir_p
694 definition, it causes `make install' to fails for user with no
695 right to write in the source-tree.
696 * automake.in (handle_configure): Do not use mkdir_p in the
697 definition for $(mkdir_p).
698 Report from Harlan Stenn.
700 * lib/am/texi-vers.am (%STAMPVTI%): Typo in comment.
702 2004-07-22 Alexandre Duret-Lutz <adl@gnu.org>
704 * doc/automake.texi (Libtool Modules): Typo in example.
705 Report from Ulrich Eckhardt.
707 2004-07-21 Andreas Schwab <schwab@suse.de> (tiny change)
709 * automake.in (check_directory): Quote $dir in regexp.
711 2004-07-17 Alexandre Duret-Lutz <adl@gnu.org>
713 * configure.ac, NEWS: Bump version to 1.8e.
715 * configure.ac, NEWS: Bump version to 1.8d.
717 * lib/config-ml.in, lib/config.sub, lib/config.guess, lib/texinfo.tex:
718 New upstream versions.
720 * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.html,
721 ?!GENERIC?%DEST_PREFIX%.html): Use $(X), not ${X}.
723 * tests/installdir.test: installdirs-local should appear three times,
724 since the change from 2004-07-11 will make it PHONY.
726 * lib/am/distdir.am (distdir): Always use $(DIST_SUBDIRS) now
727 that it is always defined. This is less confusing for users
728 reading the generated Makefiles.
729 * automake.in (handle_dist): Do not substitute DIST_SUBDIR_NAME.
731 * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.html,
732 ?!GENERIC?%DEST_PREFIX%.html): Output .htp, and then rename to .html
733 on success. In case the target is a directory, this ensures its
734 time stamp is updated and the no files are left over inside.
735 * tests/txinfo21.test: Augment to test missing timestamp update
736 reported by Akim Demaille.
738 * doc/automake.texi (Top level): Rename as ...
739 (Directories): ... this, and split into ...
740 (Subdirectories, Conditional Subdirectories): ... these.
741 (Subdirectories): Illustrate the use of `.'.
742 (Conditional Subdirectories): Describe SUBDIRS and DIST_SUBDIRS
743 before the example. Append a discussion about non-configured
744 conditional directories.
745 (Alternative): Move as a child of Directories.
746 (Subpackages): New section.
747 (Dist): Adjust links to Subdirectories, a Subpackages.
748 (Third-Party Makefiles): Link to Conditional Subdirectories.
750 2004-07-14 Alexandre Duret-Lutz <adl@gnu.org>
752 * automake.in (target_hook): Accept %transform as last argument.
753 (handle_single_transform): Pass %transform to target_hook.
754 (handle_source_transform): Define DIST_SOURCE to tell whether
755 a the source of a file is distributed or not.
756 (lang_yacc_target_hook): Check DIST_SOURCE, and do not distribute
757 the generated header if the .y source is not distributed.
758 * tests/pr204.test: Use AM_YFLAGS = -d and make sure generated
759 headers are not distributed.
761 2004-07-12 Simon Josefsson <jas@extundo.com> (tiny change)
763 * doc/automake.texi (Options): Improve ustar file name length
764 discussion. Reference tar manual.
766 2004-07-12 Ray Simard <rhs.techlists@sylvan-glade.com> (tiny change)
768 * lib/Automake/Variable.pm (define): Fix precondition check.
770 2004-07-11 Alexandre Duret-Lutz <adl@gnu.org>
773 Support for conditionally defined -hook and -local rules.
774 * automake.in (user_phony_rule): New function.
775 (handle_dist, handle_install, handle_all, do_check_merge_target,
776 handle_factored_dependencies): Use user_phony_rule before
777 adding a user -hook or -local rule as a dependency to ensure
778 it is always defined an phony.
779 * tests/cond37.test, tests/condhook.test: New files.
780 * tests/Makefile.am (TESTS): Add them.
781 Report from Simon Josefsson and Nik A. Melchior.
783 2004-07-05 Paul Eggert <eggert@cs.ucla.edu>
785 * doc/automake.texi (Install): Warn that you should create
786 /tmp/staging before installing into it, to avoid security problems.
787 * lib/install-sh: Remove support for -b= and -t= options; this
788 has been moribund for a decade.
789 Add support for -t and -T options (new in coreutils install).
790 -c option now does nothing (the default is to copy), for
791 compatibility with BSD and coreutils 'install'.
792 Fix usage message; it referred to nonexistent variables.
793 Don't assume 'lasterr' is unset in environment.
794 * tests/instsh2.test: Don't assume that install-sh without -c
795 moves (it now copies). Add tests for new -t and -T options.
797 2004-06-16 Alexandre Duret-Lutz <adl@gnu.org>
799 For Debian Bug#254372:
800 * doc/automake.texi (Invoking aclocal): Rewrite the paragraph
801 explaining m4_include is used for relative files.
803 2004-06-10 Alexandre Duret-Lutz <adl@gnu.org>
805 For Debian Bug #251820:
806 * aclocal.in (scan_file): Keep track of the location where each
807 file is included, and display it when reporting a missing file.
808 Pass this location to scan_file as a second argument.
809 (scan_m4_files): Adjust calls to scan_file.
810 * tests/acloca14.test: Add a test for this diagnostic.
812 2004-06-07 Alexandre Duret-Lutz <adl@gnu.org>
814 * m4/tar.m4 (_AM_PROG_TAR): Split the definition of $_am_tools
815 so it works with Solaris and Tru64 /bin/sh.
816 Report from Nicolas Joly.
818 2004-06-06 Alexandre Duret-Lutz <adl@gnu.org>
820 * m4/tar.m4 (_AM_PROG_TAR): Introduce $_am_tools to work around a
821 bug in NetBSD /bin/sh.
822 Report from Nicolas Joly.
824 2004-06-03 Alexandre Duret-Lutz <adl@gnu.org>
826 * tests/defs.in (required=icc): Use `-V -help' instead of
827 `-V -dryrun'. icc 8.0 fails on the latter.
828 * tests/depcomp5.test: Require depmode=icc for icc 7.x, and
829 depmod=gcc otherwise.
830 Report from Ralf Wildenhues.
832 * lib/am/clean.am (distclean-generic): Do no
833 `rm -f $(CONFIG_CLEAN_FILES)' if `$(CONFIG_CLEAN_FILES)' is empty.
834 Report from Nicolas Joly.
836 2004-05-31 Alexandre Duret-Lutz <adl@gnu.org>
838 * NEWS: Make clearer that we do not output partial Makefile.ins on
840 Suggested by Akim Demaille.
842 * lib/depcomp (tru64) [libtool]: Use $dir$base.o.d instead
843 of $dir.libs/$base.o.d. Libtool 1.5 causes both to be output,
844 and we will clean the second automatically during distclean.
845 Using the latter and leaving the former as we did before cause
846 "files left in build directory" failures during distcheck.
847 Suggested by Nicolas Joly.
849 * doc/automake.texi (Built sources example): Explain what
850 nodist_foo_SOURCES is (not) useful to, and use it in all the
852 (Tags): Mention nodist_noinst_HEADERS and nodist_prog_SOURCES.
853 Suggested by Akim Demaille.
855 2004-05-23 Alexandre Duret-Lutz <adl@gnu.org>
857 * configure.ac, NEWS: Bump version to 1.8c.
859 * configure.ac, NEWS: Bump version to 1.8b.
861 * m4/tar.m4 (_AM_PROG_TAR) <cpio>: Specify -o and -i option first,
862 by POSIX; and use option -d in am_untar.
864 * tests/defs.in (PATH): Export it.
866 * lib/am/multilib.am: Add $(MAKE) comments to multido and
867 multiclean lines, to enable parallel make. Based on a patch
868 by Alexandre Oliva applied to newlib on 2003-10-15.
870 2004-05-22 Alexandre Duret-Lutz <adl@gnu.org>
872 * automake.in (scan_autoconf_traces): Trace for LT_SUPPORTED_TAG
873 instead of AC_LIBTOOL_TAGS, since that how CVS Libtool has been
875 * tests/libtool3.test: Do not grep for --tag=CC, since CVS
876 Libtool (unlike Libtool 1.5) does not has any CC tag.
878 * tests/tar2.test: Skip the test if no pax archiver were found.
880 * NEWS: Sync with branch-1-8, and reorganize current entry.
882 * automake.in (handle_libraries): Make the diagnostic about
883 non standard libraries a warning in foreign packages. This
884 is already the case in handle_ltlibraries.
885 (handle_libraries, handle_ltlibraries): Suggest a standard
886 library name in the diagnostic, to help newcomers.
887 * tests/stdlib.test, tests/stdlib2.test: Check for these
890 Check directory names for unportable names. Shaking the code
891 to check this also led to the removal of the no-"/"-in-SUBDIRS
892 restriction, and a fix to _do_recursive_traversal.
894 * automake.in (check_directory): New function extracted from
895 handle_subdirs, and augmented to check for reserved W32/DOS name.
896 (check_directories_in_var): New function.
897 (handle_subdirs): Call check_directories_in_var. Doing so also
898 suppress the restriction that SUBDIRS should not contain slashes.
899 (scan_autoconf_traces) <AC_CONFIG_AUX_DIR>: Call check_directory
900 to ensure the argument exists and is safe.
901 * doc/automake.texi (Top level): Do not say that src/subdir
902 cannot be put in SUBDIRS.
903 (Dist): Mention that distdir and top_distdir can be absolute.
904 * lib/Automake/Variable.pm (_do_recursive_traversal) Support
905 undefined $fun_collect, and fix two bugs introduced with
906 skip_ac_subst on 2004-03-07.
907 * lib/am/distdir.am (distdir): Use absolute distdir and
908 top_distdir when recursing, because we can no longer prepend only
909 `..' in case of SUBDIRS with `/'.
910 * tests/auxdir4.test, tests/subdir9.test: New files.
911 * tests/Makefile.am (TESTS): Add auxdir4.test.
912 * tests/cond2.test, tests/subdir7.test: Augment to check location
915 2004-05-21 Eric Blake <ebb9@byu.net> (tiny changes)
917 * tests/txinfo22.test (AC_CONFIG_AUX_DIR): Use aux1, not aux, for
918 cygwin compatibility.
919 * tests/yacc6.test (AC_CONFIG_AUX_DIR): Likewise.
921 * tests/conflnk3.test: Isolate checking for working `test -e' into
922 a subshell, to skip this test on broken /bin/sh of solaris.
924 2004-05-17 Alexandre Duret-Lutz <adl@gnu.org>
926 * m4/cond.m4 (AM_CONDITIONAL): Double-quote diagnostic.
927 * tests/condd.test: Define a macro with the same name as a
929 * tests/pr220.test: Modernize, and make sure the diagnostics
930 contains the macro name.
931 Report from Volker Boerchers.
933 2004-05-16 Alexandre Duret-Lutz <adl@gnu.org>
935 * lib/texinfo.tex: New upstream version.
937 2004-05-15 Alexandre Duret-Lutz <adl@gnu.org>
939 * automake.in (handle_dist): Always define DIST_SUBDIRS, even when
940 the no-dist or cygnus options are used.
941 * tests/clean2.test: New file.
942 * tests/Makefile.am (TESTS): Add clean2.test.
943 Report from Daniel Jacobowitz.
945 * aclocal.in (add_macro): Do not error out on undefined required
946 macros. We are not sure they are really used, and Autoconf
947 already diagnoses them.
948 (scan_configure_dep): Diagnose missing AM_ macros as warnings rather
950 * tests/aclocal3.test, tests/ammissing.test: Adjust to expect a
951 warning instead of an error.
952 * tests/aclocal8.test: AC_REQUIRE an undefined macro in an unused
953 macro, and ensure aclocal works anyway.
954 * tests/acloca17.test: New file.
955 * tests/error.test: Delete, superseded by tests/acloca17.test.
956 * tests/Makefile.am (TESTS): Add acloca17.test and remove error.test.
957 Report from Jim Meyering.
959 * lib/am/texibuild.am (?!GENERIC_INFO?%DEST_INFO_PREFIX%%DEST_SUFFIX%):
960 Fold a few lines to reduce the output by 5 lines.
961 Suggested by Karl Berry.
963 * automake.in (parse_arguments, MAIN): Give more precise
964 diagnostics when no input file is found.
965 * tests/output5.test: Adjust.
966 Suggested by Jens Petersen.
968 2004-05-14 Alexandre Duret-Lutz <adl@gnu.org>
970 * lib/am/libs.am (AR, ARFLAGS): Move these definition ...
971 * automake.in (handle_libraries): ... here, so that they are
972 output even for EXTRA_LIBRARIES.
973 * tests/ar2.test: New file.
974 * tests/Makefile.am (TESTS): Add it.
975 Report from Kevin Ryde.
977 2004-05-13 Alexandre Duret-Lutz <adl@gnu.org>
979 * automake.in (generate_makefile): Do not output Makefile.in on
981 * tests/werror2.test: New file.
982 * tests/Makefile.am (TESTS): Add werror2.test.
983 * tests/substtarg.test, tests/cond36.test, tests/backsl4.test:
984 Adjust to run automake with -Wno-error when the output is expected
985 in spite of the error.
986 Report from Harlan Stenn.
988 * doc/automake.texi (Program and Library Variables): Remove
989 doubled word in footnote.
991 * automake.in (handle_source_transform): Also check for a
992 $(srcdir)/old_source rule when computing the default source name.
993 Propagate this $(srcdir) prefix in Automake variables.
994 * tests/ltlibsrc.test (noinst_LTLIBRARIES): Explicitly refer to
995 $(srcdir)/zoo_d_old2_la.c. This fixes another failure with BSD Make.
997 2004-05-13 Paul Eggert <eggert@cs.ucla.edu>
999 * Makefile.am (fetch): Work even with FreeBSD "make", which
1000 uses sh -e and thus errors-out if a simple-command fails.
1001 * lib/am/check.am (check-TESTS): Likewise.
1002 * lib/am/ltlib.am (clean-%DIR%LTLIBRARIES): Likewise.
1003 * lib/am/tags.am (TAGS): Likewise.
1005 2004-05-13 Alexandre Duret-Lutz <adl@gnu.org>
1007 * tests/lex3.test, tests/yacc6.test: Require GNU Make.
1008 Fixing these for BSD Make requires invasive changes (lexers and
1009 parsers must be built into $srcdir, and--most annoyingly--all
1010 references to parse.h must be changed to $(srcdir)/parse.h).
1011 Report from Mark D. Baushke.
1013 2004-05-10 Alexandre Duret-Lutz <adl@gnu.org>
1015 * tests/defs.in (GNUmake): Grep for GNU to parry FreeBSD make.
1016 Report from Mark D. Baushke.
1018 2004-04-25 Alexandre Duret-Lutz <adl@gnu.org>
1020 * lib/texinfo.tex: New upstream version.
1022 * lib/depcomp (tru64): Clarify comments. Thanks to Nicolas Joly.
1024 * doc/automake.texi (Headers): Revamp.
1026 2004-04-24 Alexandre Duret-Lutz <adl@gnu.org>
1028 * automake.in (check_typos): Clarify the diagnostic.
1029 * tests/warnopts.test: Adjust.
1031 * lib/Automake/VarDef.pm (append): Turn VAR_ASIS variables into
1032 VAR_PRETTY variables to work around make implementation with
1033 limited line length, such as OSF1/Tru64 make.
1034 * tests/longline.test: New file.
1035 * tests/Makefile.am (TESTS): Add it.
1036 * tests/pluseq3.test, tests/pluseq8.test: Adjust.
1037 Report from Simon Josefsson.
1039 * lib/am/tags.am (TAGS): Pass `.' to Exuberant Ctags if
1040 --etags-include is used but no other files are supplied, so it
1041 creates the TAGS file anyway.
1042 Report from Akim Demaille.
1044 * lib/depcomp (tru64) [libtool]: Nicolas Joly reported on
1045 2002-06-12 that dependencies were output in $dir.libs/$base.lo.d.
1046 Teun Burgers reported on 2004-03-30 they were in
1047 $dir.libs/$base.o.d. Try both.
1049 2004-04-23 Alexandre Duret-Lutz <adl@gnu.org>
1051 For PR automake/414:
1052 Introduce option filename-length-max=99.
1053 * doc/automake.texi (Options): Document it.
1054 * configure.ac (AM_INIT_AUTOMAKE): Use it.
1055 * lib/Automake/Options.pm (_process_option_list): Recognize it.
1056 * automake.in (handle_dist): Set FILENAME_FILTER.
1057 * lib/am/distdir.am (distdir) [FILENAME_FILTER]: Diagnose long
1059 * tests/fn99.test: New file.
1060 * tests/Makefile.am (TESTS): Add fn99.test.
1062 2004-04-20 Alexandre Duret-Lutz <adl@gnu.org>
1064 For PR automake/414:
1065 Introduce options tar-v7, tar-ustar, and tar-pax to select
1067 * doc/automake.texi (Options): Document them.
1068 * lib/Automake/Options.pm (_process_option_list): Process
1070 * lib/am/distdir.am (dist-gzip, dist-bzip2, dist-tarZ, dist,
1071 distcheck): Adjust to use am__tar and am__untar.
1072 * m4/tar.m4: New file.
1073 * m4/Makefile.am (dist_m4data_DATA): Add tar.m4.
1074 * m4/init.m4 (AM_INIT_AUTOMAKE): Support the new options
1075 and call _AM_PROG_TAR.
1076 * tests/tar.test, tests/tar2.test, tests/tar3.test: New files.
1077 * tests/Makefile.am (TESTS): Add them.
1079 2004-04-18 Alexandre Duret-Lutz <adl@gnu.org>
1081 * lib/am/distdir.am (distcheck): Typo in shar decompression.
1083 * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
1086 2004-04-17 Alexandre Duret-Lutz <adl@gnu.org>
1089 * automake.in (scan_autoconf_traces) <AC_CONFIG_AUX_DIR>: Diagnose
1090 calls to AC_CONFIG_AUX_DIR followings calls to AM_INIT_AUTOMAKE.
1091 * tests/auxdir.test, tests/auxdir2.test, tests/lex5.test,
1092 tests/mdate3.test, tests/multlib.test, tests/reqd2.test,
1093 tests/symlink.test, tests/txinfo8.test, tests/txinfo22.test,
1094 tests/yacc6.test, tests/yacc8.test: Fix to call AC_CONFIG_AUX_DIR
1095 before AM_INIT_AUTOMAKE.
1096 * tests/auxdir3.test: New file (exercise this diagnostic).
1097 * tests/Makefile.am (TESTS): Add auxdir3.test.
1099 2004-04-15 Alexandre Duret-Lutz <adl@gnu.org>
1101 * aclocal.in (%map_traced_defs): New variable.
1102 (scan_m4_files): Normalize filenames.
1103 (trace_used_macros): Trace for AC_DEFUN and AU_DEFUN, also
1104 ask for the filename and the first argument. Populate
1106 (write_aclocal): Use $map_traced_defs to filter out unused
1108 * tests/acloca16.test: New file.
1109 * tests/Makefile.am (TESTS): Add acloca16.test.
1111 2004-04-12 Alexandre Duret-Lutz <adl@gnu.org>
1113 * automake.in ($automake_needs_to_reprocess_all_files): Remove.
1114 ($automake_will_process_aux_dir): New variable.
1115 (scan_autoconf_traces): Reorder @input_files so that the Makefile
1116 that distributes aux files is processed last. This way we do not
1117 have to process all files twice using
1118 $automake_will_process_aux_dir.
1119 (require_file_internal): Suggest a full run of automake when
1121 (MAIN): Remove the loop on $automake_needs_to_reprocess_all_files.
1122 * tests/distcom7.test: New file.
1123 * tests/reqd2.test: Do not check for the "running more than two"
1125 * tests/Makefile.am (TESTS): Add distcom7.test.
1127 * automake.in (@config_aux_path, $config_aux_dir): Rename as ...
1128 ($config_aux_dir, $am_config_aux_dir): ... these.
1129 ($config_aux_dir_set_in_configure_in): Rename as ...
1130 ($config_aux_dir_set_in_configure_ac): ... this.
1131 (%require_file_found): Rename as ...
1132 (%required_file_not_found): ... this.
1133 (handle_languages, handle_texinfo_helper, handle_dist,
1134 handle_configure, handle_emacs_lisp, handle_python,
1135 scan_autoconf_traces, yacc_lex_finish_helper): Adjust to new names.
1136 (scan_autoconf_traces): Call locate_aux_dir.
1137 (locate_aux_dir): New function.
1138 (@require_file_paths): Remove, not used anymore.
1139 (require_file_internal): Look files in only one directory (instead
1140 of @require_file_internal) passed in argument.
1141 (require_file, require_conf_file): Pass the destination directory
1142 to require_file_internal.
1144 Fix for PR automake/416:
1145 * m4/depend.m4 (_AM_DEPENDENCIES): Catch `not supported' ICC 8.0
1147 From Peter Seiderer.
1149 2004-04-10 Andreas Buening <andreas.buening@nexgo.de>
1151 * aclocal.in, automake.in, configure.ac, Makefile.am,
1152 tests/aclocal.in, tests/automake.in, tests/defs.in:
1153 Use PATH_SEPARATOR from autoconf instead of ':'.
1155 2004-04-09 Alexandre Duret-Lutz <adl@gnu.org>
1157 * automake.in (handle_lib_objects): Pass the condition of
1158 the variable definition to handle_LIBOBJS and handle_ALLOCA,
1159 not the aggregated conditions.
1160 * tests/Makefile.am (TESTS): Add libobj14.test.
1161 * tests/libobj14.test: New file.
1162 Report from Bill Davidson.
1164 2004-04-02 Mike Nolta <mike@nolta.net>
1166 Better support for Fortran 9x.
1167 * automake.in: Add "fc" and "ppfc" languages for Fortran 9x.
1168 * doc/automake.texi (Fortran 9x Support): New section.
1169 * lib/Automake/Variable.pm (%_ac_macro_for_var): Add AC_PROG_FC.
1170 * tests/compile_f90_c_cxx.test: New file.
1171 * tests/ext.test: Add AC_PROG_FC.
1172 * tests/f90only.test: New file.
1173 * tests/link_f90_only.test: New file.
1174 * tests/Makefile.am (TESTS): Add new tests.
1176 2004-04-01 Paul Eggert <eggert@twinsun.com>
1178 * lib/install-sh: If "mv -f" works, use it, and fall back to
1179 the old "test -f" + "rm -f" + "mv" method only if "mv -f" does
1180 not work. This improves performance in the usual case where
1181 "mv -f" works. It also lets us install the "mv" command
1182 without worrying about a small window where "mv" does not
1183 exist (this problem was reported by Raul Nunez de Arenas
1186 2004-03-26 Alexandre Duret-Lutz <adl@gnu.org>
1188 * m4/python.m4 (AM_PATH_PYTHON): Make sure am_display_PYTHON is
1189 set when $PYTHON has been set by the user.
1190 From Esben Haabendal Soerensen.
1192 2004-03-22 Alexandre Duret-Lutz <adl@gnu.org>
1194 * doc/automake.texi (Default _SOURCES): Typo.
1195 (true): Correct _'s placement in example.
1196 Report from Stepan Kasal.
1198 2004-03-19 Alexandre Duret-Lutz <adl@gnu.org>
1200 Overriding JAVAROOT is legitimate, do not warn about it.
1201 * lib/Automake/Variable.pm (%_silent_variable_override): Add JAVAROOT.
1202 * tests/java2.test: Run automake without -Wno-override.
1203 Report from Simon Josefsson.
1205 2004-03-14 Alexandre Duret-Lutz <adl@gnu.org>
1207 * automake.in (handle_texinfo_helper): Typos in comment.
1209 2004-03-07 Alexandre Duret-Lutz <adl@gnu.org>
1211 * lib/config.guess: New upstream version.
1213 Fix for PR automake/285:
1214 * automake.in (handle_ltlibraries): Keep track of installation
1215 directories for each condition, then define a $(am_TARGET_rpath)
1216 variable to hold the -rpath flags of Libtool libraries conditionally
1217 installed in different directories.
1218 * lib/Automake/DisjConditions.pm (merge): New function.
1219 * tests/libtool6.test: Adjust.
1220 * tests/libtool8.test: New file.
1221 * tests/Makefile.am (TEST): Add libtool8.test.
1223 * lib/Automake/Variable.pm (traverse_recursively,
1224 _do_recursive_traversal): Honor the skip_ac_subst option.
1225 * automake.in (handle_dist): Use skip_ac_subst.
1227 2004-02-29 Alexandre Duret-Lutz <adl@gnu.org>
1229 * Makefile.am (cvs-release): Upload to ~ftp/pub/automake, not
1231 * lib/gnupload (Example): Update example.
1233 * lib/config-ml.in, lib/config.guess, lib/config.sub,
1234 lib/texinfo.tex: New upstream versions.
1236 * m4/depend.m4 (_AM_DEPENDENCIES): Use `touch' rather than `: >'
1237 to create numbered dependencies. This fixes a portability issue
1238 when CONFIG_SHELL is forced to /bin/sh on Solaris 8.
1239 Reported by Mark Phillips.
1241 * automake.in (lang_yacc_target_hook): Use Automake::Rule::define
1242 so that rules for the same headers are not output twice.
1243 * lib/Automake/Variable.pm (value_as_list_recursive): Do not
1244 call `return' inside `map'.
1245 * tests/cond30.test: Make sure `a.c' and `b.c' both appear
1247 * tests/cond35.test, tests/cond36.test: New files.
1248 * tests/Makefile.am (TESTS): Add cond35.test and cond36.test.
1249 Report from Roman Fietze.
1252 * lib/am/distdir.am (distcheck): Create $dc_destdir with `umask
1253 077 && mkdir' instead of `$(mkdir_p)'. This prevents possible
1254 symlink attacks reported by Stefan Nordhausen.
1256 2004-02-16 Alexandre Duret-Lutz <adl@gnu.org>
1258 * doc/automake.texi (Multiple Outputs): More text, based on
1259 comments from Eric Siegerman, Tim Van Holder, and Oren Ben-Kiki.
1261 2004-02-15 Alexandre Duret-Lutz <adl@gnu.org>
1263 * m4/mkdirp.m4: Use `mkdir -p' only with GNU mkdir, because
1264 Solaris 8's mkdir is not thread-safe.
1265 * lib/mkinstalldirs: Likewise.
1266 * lib/install-sh: Abort when mkdir fails to create a directory.
1267 Report from Nathanael Nerode.
1269 2004-02-07 Alexandre Duret-Lutz <adl@gnu.org>
1271 * aclocal.in (rel2abs): New function.
1272 (scan_configure_dep): Use rel2abs instead of File::Spec->rel2abs,
1273 the later does was introduced in Perl 5.6 so using it breaks with
1275 Report from Werner John.
1277 2004-02-03 Alexandre Duret-Lutz <adl@gnu.org>
1279 * doc/automake.texi (Future of aclocal): Make clearer that
1280 it's ok to install macros into /usr/share/aclocal/.
1282 2004-02-01 Alexandre Duret-Lutz <adl@gnu.org>
1284 * tests/lisp.test: Delete (pointless).
1285 * tests/Makefile.am (TESTS): Remove lisp.test.
1287 * lib/Automake/Variable.pm (transform_variable_recursively):
1288 Define rewritten variables in all conditions not *covered* by user
1289 definitions, not simply in conditions without a previous
1291 * tests/cond34.test: New file.
1292 * tests/Makefile.am (TESTS): Add cond34.test.
1293 Report from Elena A. Vengerova
1295 * doc/automake.texi (Multiple Outputs): Typo.
1297 * doc/automake.texi (Emacs Lisp): Typos.
1299 Support for conditional _LISP.
1300 * automake.in (handle_emacs_lisp): Define $(ELCFILES) from LISP, not
1301 from $(am__ELCFILES).
1302 * lib/am/lisp.am (elc-stamp): Use $(LISP) instead of $(am__ELFILES).
1303 * tests/lisp6.test: New file.
1304 * tests/Makefile.am (TESTS): Add it.
1306 * automake.in (handle_emacs_lisp): Define $(ELCFILES) as
1307 $(am__ELCFILES), and always push it on @all. Do not mention
1309 * lib/am/lisp.am (.el.elc): Rewrite as ...
1310 ($(am__ELCFILES)): ... this, and depend on elc-stamp.
1311 (elc-stamp): Make sure elc-stamp is older that all .elc files, as
1312 explained in the manual entry below.
1314 * doc/automake.texi (Multiple Outputs): New node.
1316 2004-01-31 Alexandre Duret-Lutz <adl@gnu.org>
1318 * m4/regex.m4: Do not AC_SUBST(LIBOBJS), and quote most arguments.
1319 * tests/regex.test: New file.
1320 * tests/Makefile.am (TESTS): Add regex.test.
1322 2004-01-28 Alexandre Duret-Lutz <adl@gnu.org>
1324 * Makefile.am (maintainer-check): Check for unquoted $(DESTDIR) uses.
1325 * lib/am/data.am, lib/am/distdir.am, lib/am/java.am, lib/am/libs.am,
1326 lib/am/lisp.am, lib/am/ltlib.am, lib/am/mans.am, lib/am/progs.am,
1327 lib/am/python.am, lib/am/scripts.am, lib/am/texinfos.am: Quote
1328 installation paths in install, uninstall, and installcheck rules,
1329 as well as in am__installdirs variables. This is for the sake
1330 of paths containing spaces.
1331 * lib/am/install.am (installdirs-am, installdirs): Do not try
1332 to create "" directories.
1333 * test/instspc.test: New file.
1334 * test/Makefile.am (TESTS): Add instspc.test.
1335 Report from James Amundson.
1337 * doc/automake.texi (Not Enough, Third-Party Makefiles): New nodes.
1338 (Extending): Make it a subsection of Not Enough.
1340 * lib/gnupload (GPG): Use an absolute path. Suggestion from Gary
1342 (passphrase): Unset it this variable before using it, in case it
1343 was exported. Report from Scott James Remnant.
1345 2004-01-25 Alexandre Duret-Lutz <adl@gnu.org>
1347 * lib/gnupload (usage): Fix example.
1348 * Makefile.am (cvs-release): Fix call to gnupload.
1351 2004-01-24 Alexandre Duret-Lutz <adl@gnu.org>
1353 * lib/gnupload: New script.
1354 * lib/Makefile.am (EXTRA_DIST): Distribute gnupload.
1355 * Makefile.am (cvs-release): New target.
1357 2004-01-23 Alexandre Duret-Lutz <adl@gnu.org>
1359 * lib/am/python.am (uninstall-%DIR%PYTHON): Remove extra `;'s.
1362 * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Use `s/xx//p'
1363 instead of `/xx/ s///p'; the latter fails when GNU sed is run with
1364 POSIXLY_CORRECT. Also strip superfluous -e.
1365 Report from Miloslav Trmac.
1367 2004-01-22 Alexandre Duret-Lutz <adl@gnu.org>
1369 * tests/lex5.test: Sleep before calling AUTOMAKE the second time,
1370 this fixes a spurious failure reported by Andreas Schwab. Also
1371 make sure ylwrap is not installed unless needed, and exercise
1374 2004-01-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
1376 * doc/automake.texi (Dist): Document limitations of distcheck-hook
1377 and DISTCHECK_CONFIGURE_FLAGS with regard to subdirs and
1380 2004-01-20 Alexandre Duret-Lutz <adl@gnu.org>
1382 * doc/automake.texi (Upgrading): New node.
1384 2004-01-20 Gary V. Vaughan <gary@gnu.org>
1386 * automake.in (scan_autoconf_traces): AC_LIBTOOL_TAGS can be
1387 correctly called without arguments as evidenced by the libtool
1390 2004-01-13 Alexandre Duret-Lutz <adl@gnu.org>
1392 * tests/conflnk3.test: Skip if `test -e' does not work.
1393 Report from Lars Hecking.
1395 2004-01-13 Jim Meyering <jim@meyering.net>
1397 * lib/install-sh: Change `\n \t' to `\n\t ' in `defaultIFS'
1398 assignment. Remove spurious SPACEs before TABs.
1400 2004-01-12 Alexandre Duret-Lutz <adl@gnu.org>
1402 * lib/py-compile: Check input files after option processing.
1403 Ensure --basedir has an argument.
1404 * lib/am/python.am (install-%DIR%PYTHON): Do not run py-compile
1405 if nothing was installed.
1406 * tests/python10.test: New file.
1407 * tests/Makefile.am (TESTS): Add python10.test.
1408 Suggested by Sander Niemeijer.
1410 * tests/txinfo29.test: Remove autom4te.cache.
1411 Report from Greg Schafer.
1413 * lib/install-sh: Do not use "$@" in a context where it may be empty,
1414 for the sake of OSF1/Tru64's shell.
1417 2004-01-11 Alexandre Duret-Lutz <adl@gnu.org>
1419 * lib/config.sub, lib/config.guess, lib/texinfo.tex: New upstream
1422 * m4/as.m4, m4/depend.m4, m4/maintainer.m4, m4/multi.m4: Update
1423 copyright years and serial.
1425 * m4/python.m4 (_AM_PYTHON_INTERPRETER_LIST): Add python2.4.
1427 2004-01-10 Peter Eisentraut <peter_e@gmx.net> (tiny change)
1429 * m4/as.m4 (AM_PROG_AS): Format and align help string more
1431 * m4/depend.m4 (AM_DEP_TRACK): Likewise.
1432 * m4/lispdir.m4 (AM_PATH_LISPDIR): Likewise.
1433 * m4/maintainer.m4 (AM_MAINTAINER_MODE): Likewise.
1434 * m4/multi.m4 (AM_ENABLE_MULTILIB): Likewise.
1436 2004-01-10 Paul Eggert <eggert@twinsun.com>
1438 * m4/lispdir.m4 (AM_PATH_LISPDIR): Don't use \? in sed regular
1439 expressions; it doesn't conform to POSIX.
1441 2004-01-10 Alexandre Duret-Lutz <adl@gnu.org>
1443 * automake.in (shadow_unconditionally): New function...
1444 (handle_source_transform): ... extracted from here.
1445 (am_install_var): Use shadow_unconditionally to define %DISTVAR%.
1446 * lib/am/data.am, lib/am/java.am, lib/am/lisp.am, lib/am/python.am,
1447 lib/am/script.am: Add %DISTVAR% to DIST_COMMON.
1448 * tests/cond33.test: Make sure all conditional files are distributed.
1449 Report from Ralf Corsepius.
1451 2004-01-08 Alexandre Duret-Lutz <adl@gnu.org>
1453 * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Append `.' to $(mkdir_p).
1454 * lib/install-sh: Accept `install-sh -d' with 0..n arguments,
1455 as well as `install-sh sources... dest' with multiple sources.
1456 * tests/cond33.test: New file.
1457 * tests/instsh2.test: Add more checks for install-sh.
1458 * tests/transform.test: Test for installdirs.
1459 * tests/Makefile.am (TESTS): Add cond33.test
1460 Report from Ralf Corsepius.
1462 * automake.in (handle_configure): Skip AC_CONFIG_LINKS items which
1463 do not look like DEST:SRC.
1464 * tests/conflnk3.test: Check for AC_CONFIG_LINKS($computed).
1466 2004-01-07 Alexandre Duret-Lutz <adl@gnu.org>
1468 Fix for PR automake/289:
1469 * automake.in (Automake::Struct::libtool_tag): New attribute. Define
1470 it for the language that have a Libtool tag.
1471 (%libtool_tags): New variable.
1472 (handle_languages, define_compiler_variable)
1473 (define_linker_variable): Pass --tag=XXX to libtool if supported.
1474 (scan_autoconf_traces): Scan for _LT_AC_TAGCONFIG and AC_LIBTOOL_TAGS.
1475 * tests/libtool3.test, tests/subobj9.test: Check that --tag=XXX is
1478 2003-01-07 Eric Sunshine <sunshine@sunshineco.com> (tiny change)
1480 * lib/am/configure.am (am__CONFIG_DISTCLEAN_FILES): Add
1481 config.status.lineno.
1483 2004-01-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
1485 * doc/automake.texi (Rebuilding): Typo.
1487 2004-01-07 Alexandre Duret-Lutz <adl@gnu.org>
1489 * lib/am/Makefile.am (dist_am_DATA): Really add inst-vars.am.
1491 2004-01-06 Alexandre Duret-Lutz <adl@gnu.org>
1493 * THANKS: Add Bruce Korb.
1495 2004-01-05 Alexandre Duret-Lutz <adl@gnu.org>
1497 Mimic Paul Eggert's changes to Autoconf.
1498 * Makefile.am (automake, aclocal): Use `chmod a-w', not `chmod -w'.
1499 * lib/Automake/Makefile.am (Config.pm): Likewise.
1500 * m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Likewise.
1502 * lib/am/inst-vars.am: New file, define am__vpath_adj_setup,
1503 am__vpath_adj, and am__strip_dir.
1504 * lib/am/Makefile.am (dist_am_DATA): Add inst-vars.am.
1505 * lib/am/data.am, lib/am/lisp.am, lib/am/python.am,
1506 lib/am/scripts.am: Include inst-vars.am, and use $(am__vpath_adj),
1507 $(am__vpath_adj_setup), and $(am__strip_dir) in install and
1508 uninstall rules. This fixes installation of nobase_ files in
1509 VPATH setups with Sun and OSF1/Tru64 Make.
1510 * lib/am/libs.am, lib/am/ltlib.am: Include inst-vars.am, and use
1511 $(am__strip_dir) to simplify install and uninstall rules.
1512 * tests/nobase.test: Augment to check installation from VPATH builds.
1514 * automake.in (%transformed_files): New variable.
1515 (initialize_per_input): Reset it.
1516 (make_paragraphs): Fill %transformed_files, and define %FIRST%
1517 each time a file is transformed for the first time.
1518 (handle_configure): Do not define %FIRST_CONFIG_HIN%.
1519 (am_install_var): Do not define %FIRST%.
1520 * lib/am/remake-hdr.am: Use %?FIRST% instead of %?FIRST_CONFIG_HIN%.
1522 2004-01-04 Alexandre Duret-Lutz <adl@gnu.org>
1524 * lib/texinfo.tex: New upstream version.
1526 * m4/mkdirp.m4: Do not use `-m 0755'. This overrides special bits
1527 and break setups where 775 directories are expected. Just obey
1528 umask as we did in the past.
1529 Report from Harlan Stenn.
1531 2004-01-03 Alexandre Duret-Lutz <adl@gnu.org>
1533 * automake.in (scan_texinfo_file): Do not compare $outfile to ''
1534 as $outfile might not be defined at all.
1536 * lib/Automake/Variable.pm (define): Rework the way we check
1537 Automake variable definition. Ensure consistent :=/+=/=
1538 definitions only for variables that have been and are defined by
1539 Automake, and make it an internal error. Ignore Automake
1540 attempts to touch a user variable, even with += assignments.
1541 * tests/txinfo29.test: New file.
1542 * tests/Makefile.am (TESTS): Add txinfo29.test.
1543 Reported by Bruce Korb.
1545 2004-01-02 Tom Tromey <tromey@redhat.com>
1547 * automake.in (handle_source_transform): Don't generate dist
1548 variables when no-dist is set.
1549 (generate_makefile): Likewise.
1550 * tests/nodist3.test: Ensure that DIST_SOURCES is not created,
1551 and that dist target does not exist.
1552 Reported by Tom Fitzsimmons.
1554 2004-01-02 Alexandre Duret-Lutz <adl@gnu.org>
1556 * tests/libtool5.test, tests/ltcond.test, tests/ltcond2.test,
1557 * tests/ltconv.test: Run automake with --add-missing, because
1558 the CVS version of libtoolize no longer install config.sub and
1559 config.guess by default.
1561 Fix for PR automake/319:
1562 * aclocal.in (scan_m4_files): Scan configure.ac.
1563 (trace_used_macros, write_aclocal): Remove configure.ac from the
1564 list of files to include.
1565 * tests/Makefile.am (TESTS): Add acloca15.test.
1566 * tests/acloca15.test: New file.
1568 * aclocal.in (%file_includes): New variable.
1569 (scan_configure_dep): Compile $m4_include_rx and $ac_require_rx once.
1570 (scan_file): Scan for included files, and process these files
1571 recursively. Fill %file_includes and %file_contents. Return the
1572 list of included files, not the contents.
1573 (scan_m4_files): Adjust calls to scan_files.
1574 (strip_redundant_includes): New function.
1575 (trace_used_macros): Call it.
1576 (write_aclocal): Likewise. Also check the mtime of included files.
1577 * tests/Makefile.am (TESTS): Add acloca14.test.
1578 * tests/acloca14.test: New file.
1579 Report from Phil Edwards.
1581 2004-01-01 Alexandre Duret-Lutz <adl@gnu.org>
1583 * automake.in (handle_languages): Do not define DEP_FILES.
1584 * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Extract included
1585 files with $(DEPDIR) in their name instead of DEP_FILES.
1586 * tests/depend.test, tests/depend4.test, tests/exsource.test:
1588 Suggested by Tom Tromey.
1590 Do not output .lo rules for programs and static libraries objects,
1591 and do not output .o/.obj rules for libtool libraries. This is
1592 about explicit rules only, not inference rules.
1593 * automake.in (handle_single_transform_list): Rename as ...
1594 (handle_single_transform): ... this. Take a single file
1595 to transform (it was only called this way) and accept a new
1596 %transform argument. Fill %lang_specific_files with list
1597 references instead of strings, and append %transform to each
1599 (define_objects_from_sources, handle_source_transform):
1600 Take a %transform argument, and forward it to &handle_single_transform.
1601 (handle_languages): Adjust to the new format of
1602 %lang_specific_files, and honor its %transform part.
1603 (handle_programs, handle_libraries, handle_ltlibraries): Override
1604 %NONLIBTOOL% and %LIBTOOL% while calling handle_source_transform.
1605 (make_paragraphs): Define %NONLIBTOOL% by default. Make sure
1606 %transform settings override global settings.
1607 * lib/am/depend2.am (%OBJ%, %OBJOBJ%): Define only if %NONLIBTOOL%.
1608 * tests/libtool3.test: Augment to check Makefile.ins for unneeded
1610 Suggested by Thomas Fitzsimmons.
1612 * automake.in, aclocal.in: Bump copyright years.
1616 Copyright (C) 2004, 2005 Free Software Foundation, Inc.
1618 Copying and distribution of this file, with or without modification, are
1619 permitted provided the copyright notice and this notice are preserved.