* doc/automake.texi (Multiple Outputs): Fix mistakes reported by
[automake.git] / ChangeLog
blob510b99fad7552f3ee4f20add619a230e583f1dfa
1 2005-03-29  Alexandre Duret-Lutz  <adl@gnu.org>
3         * doc/automake.texi (Multiple Outputs): Fix mistakes reported by
4         Jim Meyering.
6         * lib/am/lisp.am ($(am__ELCFILES)): Prevent races if the recover
7         rule is run with `make -j'.
8         * doc/automake.texi (Multiple Outputs): Adjust.
9         * tests/lisp6.test: Augment it.
10         * tests/lisp8.test: New file.
11         * tests/Makefile.am (TESTS): Add lisp8.test.
12         Suggested by Bruno Haible.
14 2005-03-27  Alexandre Duret-Lutz  <adl@gnu.org>
16         * doc/automake.texi: Use @:, @., @!, and @tie{} where appropriate.
18 2005-03-16  Alexandre Duret-Lutz  <adl@gnu.org>
20         * lib/am/lisp.am ($(am__ELCFILES)): Do not attempt to recover
21         a missing *.elc file if it cannot be created because emacs does
22         not exist.
23         * tests/lisp7.test: New file.
24         * tests/Makefile.am (TESTS): Add lisp7.test.
25         Report from Greg Schafer.
27 2005-03-05  Alexandre Duret-Lutz  <adl@gnu.org>
29         * doc/automake.texi: Replace wicked whiches by thats.
31 2005-03-04  Alexandre Duret-Lutz  <adl@gnu.org>
33         * aclocal.in (scan_configure_dep, scan_file): Include file names
34         are relative to the directory of configure.ac, not to the
35         directory of the file doing the include.  Remove code for this
36         latter case.
37         * tests/acloca13.test: Run distcheck and make sure all macros are
38         actually distributed.
40 2005-03-03  Alexandre Duret-Lutz  <adl@gnu.org>
42         For PR automake/450:
43         * aclocal.in (scan_file, scan_configure_dep): Skip missing sincluded
44         files.
45         * automake.in (scan_autoconf_traces): Likewise.
46         * tests/sinclude.test: Augment.
47         Report from Peter Breitenlohner.
49         For PR automake/450:
50         * aclocal.in (write_aclocal, trace_used_macros): Do not add/remove
51         acinclude.m4 and configure.ac to the include map in these two
52         places ...
53         (strip_redundant_includes): ... do it here.  This completes the
54         previous change from 2005-03-01, that did not update
55         write_aclocal.
56         * tests/acloca19.test: Augment.
57         Report from Peter Breitenlohner.
59 2005-03-02  Alexandre Duret-Lutz  <adl@gnu.org>
61         * tests/comment9.test: Typo.
63 2005-03-01  Alexandre Duret-Lutz  <adl@gnu.org>
65         * automake.in (read_am_file): Preserve backslashes preceding ##-lines.
66         * tests/comment9.test: New file.
67         * tests/Makefile.am (TESTS): Add comment9.test.
68         Report from Julien Sopena.
70         For PR automake/450:
71         * aclocal.in (trace_used_macros): Do not explicitly trace files
72         included by configure.ac.
73         * tests/acloca19.test: New file.
74         * tests/Makefile.am (TESTS): Add acloca19.test.
75         Report from Peter Breitenlohner.
77 2005-02-27  Alexandre Duret-Lutz  <adl@gnu.org>
79         Fix for PR automake/448:
80         * automake.in (handle_factored_dependencies): Flag install-hook as
81         an error.
82         * tests/insthook.test: Exercise this.
84         * m4/lispdir.m4: Use datarootdir instead of datadir to match GCS.
85         * doc/automake.texi (Hard-Coded Install Paths): Adjust.
87         * doc/automake.texi: Replace many uses of @samp by @code, and
88         vice versa.  Use @command, @option, and @env where appropriate.
90 2005-02-26  Alexandre Duret-Lutz  <adl@gnu.org>
92         * doc/automake.texi: "filename" -> "file name", for consistency
93         with GNU Coding Standards.  See also Paul's change on 2004-08-20
94         in Autoconf.
96         * doc/automake.texi (A Library, Libtool Libraries): Show how to link
97         a program with a static or libtool library.
98         (Program and Library Variables): Make clearer that _LDADD and
99         _LIBADD may also list libraries.
100         Prompted by a mail from Bruce Korb.
102         * doc/automake.texi (Alternative): Show how to rewrite nobase_
103         variables using custom directory variables, and link to node
104         Uniform.  Suggested by Leonardo Boiko.
106         * doc/automake.texi (Flag Variables Ordering, User Variables):
107         Make clearer who the maintainer is, and that he can AC_SUBST AM_
108         variables in configure.ac.  Suggested by Norman Gray.
109         (Uniform, Public macros, Libtool Issues, Java Support,
110         Conditionals): Use `---' for em dash, and stick them to the
111         enclosing text.
113         * doc/automake.texi: Reword a few sentences to fix all underflow
114         and overflow warnings during `make dvi'.
115         (Auxiliary Programs) <configure.guess, config.sub>: Update URL.
116         (Public macros) <AM_WITH_DMALLOC>: Likewise.
118 2005-02-12  Alexandre Duret-Lutz  <adl@gnu.org>
120         * lib/INSTALL, lib/config-ml.in, lib/config.guess, lib/config.sub,
121         lib/texinfo.tex: New upstream versions.
123         * doc/automake.texi (Hard-Coded Install Paths): New node.
124         (Extending, Extending aclocal, Python): Link to it.
125         (Extending): Don't show how to install a file in /etc/ directly,
126         this is insane.
128         * automake.in (read_am_file): Define variables containing long
129         lines as VAR_PRETTY to work around tools with limited input width.
130         * tests/longlin2.test: New file.
131         * tests/Makefile.am (TESTS): Add it.
132         Report from Albert Chin.
134 2005-02-09  Alexandre Duret-Lutz  <adl@gnu.org>
136         Fix for PR automake/447:
137         * lib/depcomp (tru64) [libtool]: Also check for $dir.libs/$base.o.d.
138         Report from Mathias Doreille.  Add some old comments from
139         Nicolas Joly for reference.
141 2005-02-08  Stepan Kasal  <kasal@ucw.cz>
143         * lib/mdate-sh: Check the size of the word following the month to
144         catch Darwin.  This way the filename can contain spaces.
146         * doc/automake.texi (Requirements, Options): Typos.
148 2005-02-08  Alexandre Duret-Lutz  <adl@gnu.org>
150         * lib/missing (makeinfo): Compute the output file if neither -o
151         nor @setfilename is used.
152         Reported by Miroslaw Dobrzanski-Neumann and Bruno Haible.
154 2005-02-07  Alexandre Duret-Lutz  <adl@gnu.org>
156         * doc/automake.texi (Requirements): Show one example of
157         AC_CONFIG_FILES with multiple outputs, and correct a few typos.
159         * aclocal.in ($serial_line_rx): Expect at least one space between
160         `serial' and the following number.
161         Report from Jim Meyering.
163         * lib/mdate-sh: Cope with Darwin's Day/Month/Year output.
164         Report from Peter O'Gorman.
166 2005-02-06  Alexandre Duret-Lutz  <adl@gnu.org>
168         * aclocal.in (usage, parse_arguments): New --dry-run and --diff
169         options.
170         (install_file, write_aclocal): Honor --dry-run and --diff.
171         * doc/automake.texi (aclocal options): Document --dry-run and --diff.
172         (Serials): Mention --diff.
173         * lib/Automake/FileUtils.pm (handle_exec_errors): Accept an
174         $expected_exit_code argument.
175         (xsystem): Take a list of arguments, not a string.
176         * tests/acloca18.test: Use --dry-run and --diff.
177         Suggested by Paul Eggert.
179         * doc/automake.texi (aclocal options, Macro search path,
180         Extending aclocal, Local Macros, Serials, Future of aclocal): Make
181         these subsection of ...
182         (Invoking aclocal): ... this.
184         * aclocal.in ($serial_line_rx): Allow trailing garbage after the
185         serial number.
186         (scan_file): Explicitly mark the "ill-formed serial" message
187         as a warning.
188         * doc/automake.texi (aclocal options, Local Macros): Link to...
189         (Serials): ... this new section.
191 2005-02-02  Paul Eggert  <eggert@cs.ucla.edu>
193         * lib/compile: Likewise.
195 2005-02-02  Alexandre Duret-Lutz  <adl@gnu.org>
197         * lib/elisp-comp: Use `(exit N); exit N', not `(exit N); exit';
198         see 2004-12-17.
199         * lib/mdate-sh, lib/py-compile, lib/ylwrap: Exit with nonzero
200         status if a write failure occurs with --help or --version option,
201         as below.
203 2005-02-02  Paul Eggert  <eggert@cs.ucla.edu>
205         * lib/depcomp: Exit with nonzero status if a write failure occurs
206         with --help or --version option.
207         * lib/elisp-comp: Likewise.
208         * lib/gnupload: Likewise.
209         * lib/install-sh: Likewise.
210         * lib/missing: Likewise.
211         * lib/mkinstalldirs: Likewise.
213 2005-02-01  Alexandre Duret-Lutz  <adl@gnu.org>
215         * doc/automake.texi (aclocal options): Typo.
217         * aclocal.in (list_compare): New functions.
218         (scan_file): Honor #serial lines.
219         * tests/acloca18.test: New test.
220         * tests/Makefile.am (TESTS): Add it.
221         * doc/automake.texi (aclocal options, Local Macros): Document
222         #serial.
224 2005-01-30  Alexandre Duret-Lutz  <adl@gnu.org>
226         Preliminary support for `aclocal --install'.
227         This still lacks #serial support.
228         * aclocal.in (reset_maps, install_file): New functions.
229         (write_aclocal): Copy files if --install.
230         (usage, parse_arguments): Recognize --install.
231         ("MAIN"): Start aclocal again if some file were installed.
232         * tests/acloca10.test: Augment to test --install.
233         * tests/aclocal.in, tests/defs.in: Add support for
234         ACLOCAL_TESTSUITE_FLAGS, used by acloca10.test.
235         * doc/automake.texi (aclocal options, Local Macros): Document
236         --install.
237         (Future of aclocal): Adjust.
239         * doc/automake.texi (Macro search path): Using --acdir is not
240         obvious, it's erroneous.
242         * doc/automake.texi (direntry): Let `info Automake' point to the
243         manual, and `info automake' to the `Invoking automake' node.  Like
244         in Autoconf.
246 2005-01-27  Akim Demaille  <akim@epita.fr>
248         * lib/Automake/Configure_ac.pm: s/filename/file_name/g.
249         From Paul Eggert.
251 2005-01-24  Akim Demaille  <akim@epita.fr>
253         * lib/Automake/FileUtils.pm: Rename filename as file_name to be
254         consistent with the terminology of the GNU coding standards.
255         From Paul Eggert.
256         (update_file): Accept a $force argument, so that --force always
257         updates the time stamps.
259 2005-01-23  Alexandre Duret-Lutz  <adl@gnu.org>
261         * doc/automake.texi (How the Linker is Chosen): Explain how the
262         linker is chosen without diagram, and update to match the code.
263         Suggestion from Adrian Bunk.
265 2005-01-16  Alexandre Duret-Lutz  <adl@gnu.org>
267         * lib/am/subdirs.am ($(RECURSIVE_TARGETS), $(RECURSIVE_CLEAN_TARGETS)):
268         Process all words of $MAKEFLAGS when checking for -k.
269         * tests/check4.test: New file.
270         * tests/Makefile.am (TESTS): Add check4.test.
271         Report from Eric Blake.
273 2005-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
275         * m4/amversion.in (AM_AUTOMAKE_VERSION): Point users to
276         AM_INIT_AUTOMAKE if the version passed is incorrect.
277         * tests/version8.test: New file.
278         * tests/Makefile.am (TESTS): Add version8.test.
280 2005-01-09  Alexandre Duret-Lutz  <adl@gnu.org>
282         * m4/amversion.in, m4/as.m4, m4/auxdir.m4, m4/ccstdc.m4,
283         m4/cond.m4, m4/depend.m4, m4/depout.m4, m4/dmalloc.m4, m4/gcj.m4,
284         m4/header.m4, m4/init.m4, m4/install-sh.m4, m4/lead-dot.m4,
285         m4/lex.m4, m4/lispdir.m4, m4/maintainer.m4, m4/make.m4,
286         m4/minuso.m4, m4/missing.m4, m4/mkdirp.m4, m4/multi.m4,
287         m4/obsol-gt.m4, m4/obsol-lt.m4, m4/obsolete.m4, m4/options.m4,
288         m4/protos.m4, m4/python.m4, m4/regex.m4, m4/runlog.m4,
289         m4/sanity.m4, m4/strip.m4, m4/tar.m4: Use the same all-permissive
290         license that is used in aclocal.m4.  Relicensing backed by RMS.
292         * doc/automake.texi (A Library, LIBOBJS): Mention that empty
293         libraries are not portable.
295 2005-01-05  Akim Demaille  <akim@epita.fr>
297         * aclocal.in ($ac_defun_rx): Match AU_ALIAS.
298         * tests/aclocal5.test (MORE_DEFS): Rename as...
299         (AM_TEST): this so that undefined macros are caught.
300         And make it an alias of AC_SUBST.
301         Test AU_ALIAS.
302         Reported by Martin Bravenboer.
304 2005-01-03  Alexandre Duret-Lutz  <adl@gnu.org>
306         Fix handling of per-target flags in link rules.
307         * automake.in (define_per_target_linker_variable): New function.
308         (handle_programs, handle_ltlibraries): Use it.
309         (%link_languages): New map.
310         (register_language): Fill it.
311         * lib/am/ltlibrary.am (%LTLIBRARY%): Do not append
312         $(%XLTLIBRARY%_LDFLAGS) to the command, this is now done by
313         define_per_target_linker_variable if needed.
314         * lib/am/program.am (%PROGRAM%%EXEEXT%): Likewise with
315         $(%XPROGRAM%_LDFLAGS).
316         * doc/automake.texi (Program and Library Variables): Mention
317         AM_LDFLAGS and AM_LIBTOOLFLAGS in the definition of maude_LDFLAGS
318         and maude_LIBTOOLFLAGS.
319         * tests/libtool9.test: New file.
320         * tests/Makefile.am (TESTS): Add it.
321         * NEWS: Explain the backward incompatibility.
322         Report from Akim Demaille.
324 2005-01-01  Alexandre Duret-Lutz  <adl@gnu.org>
326         * doc/automake.texi (Requirements) <AC_CONFIG_FILES>: Discuss
327         specifications with shell variables.
328         (Optional) <AC_CONFIG_HEADERS, AC_CONFIG_LINKS>: Point to
329         AC_CONFIG_FILES for this explanation.
330         * automake.in (substitute_ac_subst_variables_worker,
331         substitute_ac_subst_variables): Mew functions.
332         (rewrite_inputs_into_dependencies): Use substitute_ac_subst_variables
333         to ignore dependencies that contain unAC_SUBSTed shell variables.
334         (handle_configure): Likewise, do not output rules for
335         AC_CONFIG_HEADERS, AC_CONFIG_FILES, and AC_CONFIG_LINKS targets that
336         unAC_SUBSTed contain shell variables.
337         * tests/autohdr4.test: Use an AC_SUBST variable in a specification.
338         * tests/output11.test, tests/output12.test: New files.
339         * tests/Makefile.am (TESTS): Add output11.test and output12.test.
341         * aclocal.in (parse_arguments, write_aclocal): Bump copyright year.
342         * automake.in ($gen_copyright, version): Likewise.
344 2004-12-31  Alexandre Duret-Lutz  <adl@gnu.org>
346         * tests/man2.test, tests/transform.test: Specify --mandir, in order
347         not to fail when Autoconf changes its $mandir default.
349 2004-12-30  Alexandre Duret-Lutz  <adl@gnu.org>
351         Support for `install-dvi', `install-html', `install-ps', and
352         `install-pdf', as recently introduced into the GNU Coding
353         Standard.
355         * automake.in (handle_factored_dependencies): Reject
356         uninstall-dvi-local, uninstall-html-local, uninstall-info-local,
357         uninstall-ps-local, and uninstall-pdf-local.  Allow
358         install-info-local even when no-installinfo is not used.
359         (handle_data): Allow datarootdir, dvidir, htmldir, pdfdir, and psdir.
360         (%standard_prefix): Declare these new standard directory variables.
361         * doc/automake.texi (Texinfo, Third-Party Makefiles): Document
362         install-dvi, install-html, install-pdf, and install-ps.
363         (Extending): Document install-local-dvi, install-local-html,
364         install-local-info, install-local-pdf, and install-local-ps.
365         * lib/Automake/Rule.pm (%dependencies): Add new install rules,
366         and remove uninstall-info.
367         * /cvs/automake/automake/lib/am/texinfos.am (install-dvi,
368         install-dvi-am, install-dvi-recursive, install-html,
369         install-html-am, install-html-recursive, install-pdf,
370         install-pdf-am, install-pdf-recursive, install-ps, install-ps-am,
371         install-ps-recursive, uninstall-dvi-am, uninstall-html-am,
372         uninstall-pdf-am, uninstall-ps-am): New rules.
373         (uninstall-info): Delete.
374         * tests/txinfo21.test: Augment to check for these new rules.
375         * tests/exdir2.test: Do not use `htmldir' as example of
376         undefined directory.
377         * tests/overrid.test: Do not be fooled by install-ps and
378         install-html.
379         * tests/txinfo10.test: Do not grep for uninstall-info-recursive.
381 2004-12-27  Alexandre Duret-Lutz  <adl@gnu.org>
383         * automake.in (Preprocessed Fortran): Fix the definition of FCLINK.
385         * Makefile.am (maintainer-check): Refine check for @_ in scalar
386         context.  Check for correct use of PRE_INSTALL, NORMAL_INSTALL,
387         POST_INSTALL, PRE_UNINSTALL, NORMAL_UNINSTALL, and POST_UNINSTALL.
388         * lib/am/texinfos.am (uninstall-info-am): Hide the invocation of
389         $(PRE_UNINSTALL).
391 2004-12-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
393         * lib/am/texinfos.am (uninstall-info-am): Show change of
394         directory while uninstalling DJGPP-style info files.
396 2004-12-27  Alexandre Duret-Lutz  <adl@gnu.org>
398         Declare recursive install targets as dependencies of `.MAKE', so
399         that `make -n install' works with BSD Make too.
401         * lib/Automake/Rule.pm (reset) <%dependencies>: Add `.MAKE'.
402         * automake.in (target_cmp): Move all `.XYZ' target last, not
403         only `.PHONY'.
404         (handle_factored_dependencies): Add target with hooks to `.MAKE'.
405         Do not let a user definition of .MAKE override ours.
406         * lib/am/install.am (install-am, install-strip): Mark as `.MAKE'.
407         * lib/am/multilib.am (all-multi, install-multi, mostlyclean-multi,
408         clean-multi, distclean-multi, maintainer-clean-multi): Likewise.
409         * lib/am/subdirs.am (mostlyclean-recursive, clean-recursive,
410         distclean-recursive, maintainer-clean-recursive): Likewise.
412 2004-12-18  Alexandre Duret-Lutz  <adl@gnu.org>
414         * lib/config-ml.in, lib/config.guess, lib/config.sub,
415         lib/texinfo.tex: New upstream versions.
417         * doc/automake.texi (gettext): Move the paragraph about
418         dist_list_LISP...
419         (Emacs Lisp): ... here.
420         Report from Bruno Haible.
422         * doc/automake.texi: Bump GFDL version to 1.2, since that is
423         what we distribute.
425         * doc/automake.texi: Fix more misuses of @ref, @xref and @pxref,
426         including some of the "corrections" below.  Thanks to Karl Berry.
428         * doc/automake.texi: Correct several misuses of @xref and @pxref.
430 2004-12-17  Jim Meyering  <jim@meyering.net>
432         * install-sh: Use `(exit N); exit N', not `(exit N); exit'.
433         Otherwise, install-sh could exit with improper exit status when
434         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
436 2004-12-14  Akim Demaille  <akim@epita.fr>
438         * doc/automake.texi (Options): Englishoes.
439         (Options): And another.
441 2004-12-13  Alexandre Duret-Lutz  <adl@gnu.org>
443         * ChangeLog.03: New file, extracted from ChangeLog.
444         * Makefile.am (EXTRA_DIST): Add it.
446 2004-12-12  Alexandre Duret-Lutz  <adl@gnu.org>
448         * automake.in (check_user_variables): New function, extracted
449         from ...
450         (handle_languages): ... here.
451         (handle_languages, define_compiler_variable, define_link_variable):
452         Honore LIBTOOLFLAGS.
453         (handle_single_transform): Check _LIBTOOLFLAGS in
454         addition to other per-target flags for Libtool objects.
455         (handle_libtool): Warn if LIBTOOLFLAGS is defined.
456         * doc/automake.texi (Libtool Flags, Program and Library Variables,
457         Flag Variables Ordering): Document LIBTOOLFLAGS.
458         * tests/libtool7.test: Check basic support for LIBTOOLFLAGS.
459         * tests/libtool8.test: Make sure Automake warns about LIBTOOLFLAGS
460         definitions.
461         * tests/subobj9.test: Adjust.
463 2004-12-11  Alexandre Duret-Lutz  <adl@gnu.org>
465         * doc/automake.texi (Per-Object Flags): New node.
467 2004-12-09  Alexandre Duret-Lutz  <adl@gnu.org>
469         Fix PR automake/441:
470         * lib/am/java.am (install-%DIR%JAVA, uninstall-%DIR%JAVA): Do
471         not install *.class if "$(%DIR%_JAVA)" is empty.
472         * tests/java3.test: New file.
473         * tests/Makefile.am (TESTS): Add it.
474         Report from Johannes Nicolai.
476         * doc/automake.texi (Java): Mention dist_ and add an example.
477         * tests/java.test: Do actually compile java files and run distcheck.
479 2004-12-08  Peter O'Gorman  <peter@pogma.com>
480             Alexandre Duret-Lutz  <adl@gnu.org>
482         * lib/Automake/FileUtils.pm (dir_has_case_matching_file,
483         reset_dir_cache): New functions.
484         * automake.in (handle_dist, require_file_internal): Use them, so
485         that CHANGELOG is not confused with ChangeLog on case-insensitive
486         case-preserving file systems.
487         * tests/hfs.test: New file.
488         * tests/Makefile.am (TESTS): Add hfs.test.
490 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
492         * lib/mdate-sh: Don't use "set - x`$ls_command /`", as zsh mishandles
493         the spaces inside $ls_command.  Problem reported by Loulou Pouchet in
494         <http://lists.gnu.org/archive/html/autoconf/2004-12/msg00074.html>.
495         Don't use "set - x"; plain "set x" is enough, and simplifies debugging.
497 2004-12-05  Toshio Kuratomi  <toshio@tiki-lounge.com>
499         * lib/py-compile: Add --destdir switch to py-compile that takes a
500         path argument that is not compiled into the file when byte compiling.
501         * lib/am/python.am: Use the new py-compile arguments to not include
502         DESTDIR in the byte compiled files.
503         * tests/python12.test: Test that DESTDIR won't be byte compiled into
504         python files.
506 2004-12-05  Alexandre Duret-Lutz  <adl@gnu.org>
508         * doc/automake.texi (Clean): Typo.
510         * doc/automake.texi: Use @acindex for Autoconf macros, and @vindex
511         for variables (@cvindex was previously used for both).  Separate
512         these two indices in the output.  Use @code, @file, and @command
513         in @cindex lines wherever appropriate so they render nicely.
515 2004-12-05  Stepan Kasal  <kasal@ucw.cz>
517         * doc/automake.texi (renamed objects, CVS): Typos.
519 2004-12-05  Alexandre Duret-Lutz  <adl@gnu.org>
521         * doc/automake.texi (Flag Variables Ordering): New section.
522         (User Variables, Program and Library Variables): @xref it.
524 2004-11-24  Alexandre Duret-Lutz  <adl@gnu.org>
526         * doc/automake.texi (Conditional Subdirectories): More comments
527         about non-distributed subdirectories.
529         * Makefile.am (maintainer-clean): Check for unescaped @ in manual.
531 2004-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
533         * doc/automake.texi (Built sources example): Fix typo.
535 2004-11-22  Alexandre Duret-Lutz  <adl@gnu.org>
537         * aclocal.in (parse_arguments): Diagnose abbreviation ambiguous with
538         --help or --version.
539         * automake.in (parse_arguments): Likewise.
540         * tests/aclocal.test, tests/automake.test: Check this.
541         Report from Eric Blake.
543 2004-11-21  Alexandre Duret-Lutz  <adl@gnu.org>
545         * automake.in (parse_arguments): Diagnose empty arguments, options
546         with missing argument, and support `--'.
547         * aclocal.in (parse_arguments): Diagnose options with missing
548         argument.
549         * tests/aclocal.test: More checks.
550         * tests/automake.test: New file.
551         * tests/postprog.test: Use `--' for fun.
552         * tests/Makefile.am (TESTS): Add automake.test.
553         Report from Eric Blake.
555         * lib/am/progs.am (installcheck-%DIR%PROGRAMS): Run programs with
556         /dev/null as input, so we do not hang on programs that read their
557         input without supporting --help and --version.
558         * lib/am/scripts.am (installcheck-%DIR%SCRIPTS): Likewise for scripts.
559         * tests/gnits2.test: Change scriptnok.sh to cat its input.
560         Report and fix from James Youngman.
562 2004-11-17  Alexandre Duret-Lutz  <adl@gnu.org>
564         * aclocal.in (%file_seen): Rename as ...
565         (%file_added): ... this, and move it close to add_file(), the only
566         function that uses it.
568         * aclocal.in (version): Remove initial blank line and reproduce
569         the layout of automake --version.  From Art Haas.
571         * aclocal.in (%file_type, FT_USER, FT_AUTOMAKE_SYSTEM): New variables.
572         (scan_m4_dirs): New function, extracted from ...
573         (scan_m4_files): ... here.  Call scan_m4_files three times, for each
574         FT_ constant.
575         (scan_file): Take a file type argument to update %file_type.
576         (write_aclocal): Do not m4_include files that are not of type FT_USER.
577         * tests/dirlist.test: Make sure m4_include is not used for --acdir
578         files.
580         * tests/defs.in (testaclocaldir): New variable.
581         * tests/aclocal.test: Use it to fix the test.  Report from
582         Patrick Welche.
584 2004-11-10  Alexandre Duret-Lutz  <adl@gnu.org>
586         * m4/python.m4 (AM_PATH_PYTHON): Fix the invocation of
587         AC_PATH_PROGS to correctly define PYTHON as `:' when no interpreter
588         is found (this worked correctly only when a minimal version was
589         passed to AM_PATH_PYTHON).  Report from Stepan Kasal.
590         (_AM_PYTHON_INTERPRETER_LIST): Define using m4_define_default,
591         so we can easily override the list from the test suite.
592         * tests/python11.test: New file.
593         * tests/Makefile.am (TESTS): Add python11.test.
595         * doc/automake.texi (Libtool Modules): Make clearer that -module
596         should appear explicitly in _LDFLAGS.
598 2004-11-09  Alexandre Duret-Lutz  <adl@gnu.org>
600         * aclocal.in (parse_arguments): Correctly recognize --print-ac-dir.
601         * tests/aclocal.test: Check --print-ac-dir and a unknown option.
603         * aclocal.in (parse_arguments): Fix detection of unexisting default
604         $(datadir)/aclocal.  Report from Akim.
606 2004-11-07  Alexandre Duret-Lutz  <adl@gnu.org>
608         * aclocal.in ($acdir): Rename as ...
609         (@system_includes): ... this.
610         (@user_includes, @automake_includes): New variables.
611         ($default_acdir, $default_dirlist): Remove.
612         (parse_arguments): Populate @user_includes, @automake_includes, and
613         @system_includes instead of filling a unique @dirlist array.
614         ("MAIN"): Adjust to scan m4 files in @user_includes,
615         @automake_includes, and @system_includes.
617 2004-11-06  Alexandre Duret-Lutz  <adl@gnu.org>
619         * aclocal.in (parse_arguments): Correct comment.  From Akim.
621 2004-11-04  Alexandre Duret-Lutz  <adl@gnu.org>
623         * aclocal.in: Use Automake::ChannelDefs, and adjust all output
624         to be done via `fatal', `msg', `verb', or `prog_error'.
625         (version): New function.
626         (parse_arguments): Rewrite using Getopt::Long, call &version, and
627         honor -W and --warning.
628         ($verbose): Remove.
629         (trace_used_macros): Do not trace the first arguments of macros
630         for which we do not need it.  This caused failures because of
631         unexpected newlines in the output.
632         * doc/automake.texi (aclocal options): Document -W and --warning.
633         * tests/defs.in (ACLOCAL): Always use -Werror, to catch Perl
634         warnings about uninitialized variables.
636 2004-11-03  Alexandre Duret-Lutz  <adl@gnu.org>
638         * tests/defs.in: Do not distinguish VERBOSE=x from
639         VERBOSE=anything_but_x, always turn on shell traces.
641         * aclocal.in (write_aclocal): Make sure $map_traced_defs{$m} exists
642         before using it.  Suppress a warning observable in test/acloca16.test.
643         Report from Ralf Wildenhues.
645 2004-11-01  Alexandre Duret-Lutz  <adl@gnu.org>
647         * lib/Automake/XFile.pm (lock): Make sure $ENV{'MAKEFLAGS'} exists
648         before inspecting it; this fixes "uninitialized value in
649         concatenation" diagnostics when flock fails.
650         Report from Gary V. Vaughan.
652         * aclocal.in: Use strict and -w.  Declare local variables with `my',
653         and get rid of `local'.
654         (scan_m4_files, add_macro): Reindent these functions while we are
655         at it.
657         * lib/config.guess, lib/texinfo.tex: New upstream versions.
659         * doc/automake.texi (LIBOBJS): Spelling and grammar corrections
660         from Ralf Wildenhues.
662 2004-10-31  Alexandre Duret-Lutz  <adl@gnu.org>
664         * doc/automake.texi (LIBOBJS): Augment with an example setup.
665         (LTLIBOBJ): Rename as ...
666         (LTLIBOBJS): ... this.  Link to LIBOBJS, and mention LTALLOCA.
668 2004-10-25  Alexandre Duret-Lutz  <adl@gnu.org>
670         * doc/automake.texi: Untabify, tabs in the examples are poorly
671         rendered.
672         * Makefile.am (maintainer-check): Grep tabs in the manual.
674         * tests/comment8.test: Use $MAKE, not make.
676 2004-10-24  Alexandre Duret-Lutz  <adl@gnu.org>
678         * tests/distcom3.test: Typo.
680 2004-10-22  Alexandre Duret-Lutz  <adl@gnu.org>
682         * doc/automake.texi (Libtool Convenience Libraries): Explain how
683         to force the linker selection.
685         * lib/install-sh: Fix the dirname emulation to ignore trailing
686         slashes, i.e., the direname of `a/b/' is `a', not `a/b/'.  This
687         caused `install-sh a/b/' to fail.
688         * tests/instsh2.test: Augment.
689         Report from Пухальский Юрий Андреевич.
691 2004-10-21  Alexandre Duret-Lutz  <adl@gnu.org>
693         * automake.in (get_object_extension): The extension to use is know
694         by the caller, and cannot be selected by looking only at the
695         target name.  Simplify this function to simply conditionally
696         prepend $U to the given extension.
697         (handle_programs, handle_libraries, handle_ltlibraries): Hard-code
698         the extension to use.  This way Automake won't mistake a program
699         named `foo.la' as a libtool library.
700         * tests/primary3.test: New file.
701         * tests/Makefile.am (TESTS): Add primary3.test.
703 2004-10-12  Alexandre Duret-Lutz  <adl@gnu.org>
705         * doc/automake.texi (Install): Link to node Extending for examples.
706         (Extending): More comments about install-data-hook vs
707         install-exec-hook, and link to Install.
709         * configure.ac: Export @am_AUTOCONF@.
710         * tests/defs.in (AUTOCONF): Define as @am_AUTOCONF@, not @AUTOCONF@,
711         so the test suite runs `autoconf' and not `missing --run autoconf'.
712         * tests/missing.test, tests/missing2.test: Arrange for missing
713         to be used in front of autoconf even if the user has exported
714         AUTOCONF.  This fixes two spurious failures reported by
715         Mark D. Baushke.
717         * lib/compile: Handle output.obj in addition to output.o.
718         * tests/compile.test: Check for this.
720 2004-10-11  Alexandre Duret-Lutz  <adl@gnu.org>
722         * doc/automake.texi (Sources): Typo, reported by Karl Berry.
724 2004-10-10  Kelley Cook  <kcook@gcc.gnu.org>  (tiny change)
725             Alexandre Duret-Lutz  <adl@gnu.org>
727         * aclocal.in ($ac_defun_rx): Match AC_DEFUN_ONCE.
728         (trace_used_macros): Trace AC_DEFUN_ONCE.
729         * tests/aclocal5.test: Use AC_DEFUN_ONCE.
731 2004-10-10  Stepan Kasal  <kasal@ucw.cz>  (tiny change)
733         * doc/automake.texi (Extending): Typo.
735 2004-10-10  Martin Waitz  <tali@admingilde.org>  (tiny change)
737         * m4/as.m4 (AM_PROG_AS): Check dependency tracking mode for CCAS.
738         * automake.in (cppasm): Use the dependency tracking more for CCAS.
739         * doc/automake.texi (Assembly Support): Note that *.S are
740         preprocessed with CPPFLAGS.
742 2004-10-10  Ralf Corsepius <corsepiu@faw.uni-ulm.de>
744         * automake.in (Languages): Split .s (asm) and .S (cppasm) into
745         separate languages.  Make cppasm (Preprocessed Assembler) aware
746         of CPPFLAGS, AM_CPPFLAGS.
747         (handle_languages): Fix typo.
748         (lang_cppasm_rewrite): New function.
750 2004-09-29  Alexandre Duret-Lutz  <adl@gnu.org>
752         * tests/subobj9.test: Adjust regexes after previous patch.
754 2004-09-28  Alexandre Duret-Lutz  <adl@gnu.org>
756         * automake.in (handle_languages, define_compiler_variable): Output
757         Libtool's --tag= option before --mode=compile, because depcomp use
758         --mode=compile as end marker for libtool arguments.
759         (define_linker_variable): Likewise before --mode=link, for
760         uniformity.
761         * tests/pr307.test: Make sure dependency files are updated.  That
762         was not the case because depcomp thought `--tag=CC' was the
763         compiler to get dependencies from.
764         Report from Пухальский Юрий Андреевич.
766 2004-09-26  Alexandre Duret-Lutz  <adl@gnu.org>
768         * configure.ac: Require Perl 5.6.
769         * lib/Automake/Config.in: Require Perl 5.6 (not done in
770         lib/Automake/General.pm because it is shared with Autoconf),
771         and use `our' instead of `use vars'.
772         * aclocal.in (rel2abs): Remove.
773         (scan_configure_dep): Use File::Spec->rel2abs instead.
775         * tests/compile.test, tests/instsh2.test, tests/instspc.test: Use
776         two consecutive spaces in filename instead of one, to catch mistake
777         like `echo $val | ...`.
778         * tests/README: Suggest this.
779         Suggested by Ralf Wildenhues.
781 2004-09-25  Alexandre Duret-Lutz  <adl@gnu.org>
783         * doc/automake.texi (Clean): Document -local targets.
785 2004-09-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
787         * doc/automake.texi: Typos.
789 2004-09-21  Alexandre Duret-Lutz  <adl@gnu.org>
791         * doc/automake.texi (Timeline): Typos and other English mistakes
792         reported by Jim and Gary.
794         * lib/Automake/VarDef.pm (append): Strip comments from augmented
795         variables.
796         * tests/comment8.test: New file.
797         * tests/Makefile.am (TESTS): Add comment8.test.
798         Report from Stepan Kasal.
800 2004-09-19  Alexandre Duret-Lutz  <adl@gnu.org>
802         * tests/compile.test: Fix rm usage.
804         * INSTALL, lib/INSTALL, lib/config.sub, lib/config.guess,
805         lib/texinfo.tex: New upstream versions.
807         * doc/automake.texi (Timeline): New node.  Thanks to Karl and Tom
808         for their comments on a preliminary version of this, Akim for
809         digging out some old mails, and Jason Molenda for sending the note
810         about Automake in Alias to Tom.
811         (Releases): Rename `ac' to `acl', suggested by Akim.
813 2004-09-19  Akim Demaille  <akim@epita.fr>
815         * AUTHORS, automake.in, aclocal.in: Add Alexandre Duret-Lutz as
816         author.
818 2004-09-15  Alexandre Duret-Lutz  <adl@gnu.org>
820         * doc/automake.texi (Releases): New node.
822         * doc/automake.texi (Dependencies): Link to Dependency Tracking
823         Evolution.
824         (Dependency Tracking Evolution): Link to GNU make, Sources (for
825         BUILT_SOURCES), and update the paragraph about the "plan" to
826         inline dependency tracking with gcc3.
828         * doc/automake.texi (History): New node.
829         (Dependency Tracking Evolution): New node, filled with a Texinfo
830         version of Tom Tromey's ``Dependency Tracking in Automake''
831         document, initially published on the Automake homepage on
832         2001-06-29.
834 2004-09-10  Alexandre Duret-Lutz  <adl@gnu.org>
836         * m4/minuso.m4 (AM_PROG_CC_C_O): Make sure AC_PROG_CC is never
837         called after this macro.
838         * tests/distname.test, tests/subdir5.test, tests/subdir8.test,
839         tests/subobj.test, tests/subobj4.test, tests/subobj5.test,
840         tests/subobj6.test: Adjust.
841         Report from Ralf Wildenhues.
843         * lib/Automake/Channels.pm (_print_message): Handle uniq_part with
844         arbitrary string.
845         * automake.in (lang_c_rewrite): Set uniq_part so that the
846         AM_PROG_CC_C_O diagnostic is output only once for subdir objects
847         and only once for objects with per-target flags.
849         * automake.in (lang_c_rewrite): Print files and locations
850         for AM_PROG_CC_C_O errors.
851         (handle_single_transform): Pass $var to &$subr so it can
852         print locations.
854         * lib/compile, lib/elisp-comp, lib/install-sh, lib/ylwrap: Use $ret
855         instead of $status which is read-only in Zsh.
857 2004-09-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
858             Alexandre Duret-Lutz  <adl@gnu.org>
860         * lib/compile: Preserve spaces in arguments (for example
861         -DPACKAGE_STRING="foo 0.1").
862         * tests/compile.test: New file.
863         * tests/Makefile.am (TESTS): Add compile.test.
865 2004-09-07  Alexandre Duret-Lutz  <adl@gnu.org>
867         * automake.in (handle_clean): Sort rm commands output for
868         mostlyclean-generic, clean-generic, distclean-generic, and
869         maintainer-clean-generic.
870         Report from Bob Friesenhahn.
872         * automake.in (lang_c_rewrite): Do not require AM_PROG_CC_C_O for
873         libtool objects.
874         (handle_single_transform): Pass nonansi_obj to &$subr so
875         lang_c_rewrite can distinguish libtool objects.
876         * tests/libtool7.test: Use subdir-objects without using AM_PROG_CC_C_O.
877         Report from Gary V. Vaughan and Patrick Welche.
879 2004-09-07  Andreas Schwab  <schwab@suse.de>
881         * automake.in ($PATH_PATTERN): Add `+'.
883 2004-09-07  Alexandre Duret-Lutz  <adl@gnu.org>
885         * tests/missing3.test: New file (check for Paolo's change below).
886         * tests/Makefile.am (TESTS): Add missing3.test.
888 2004-09-07  Paolo Bonzini  <bonzini@gnu.org>
890         * missing: Handle all command line options together.  Add a
891         separate case statement to detect failed runs, and fail
892         silently there if --help or --version is passed to the program.
894 2004-08-11  Alexandre Duret-Lutz  <adl@gnu.org>
896         * lib/config.guess, lib/texinfo.tex: New upstream versions.
898         For PR automake/433:
899         * configure.ac (pkgvdatadir): Define using "$PACKAGE", not "automake".
901         Fix PR automake/432:
902         * lib/am/yacc.am [!%?MORE-THAN-ONE%]: Replace `#line's in y.tab.h too.
903         * tests/yacc7.test: Check this.
905 2004-08-08  Alexandre Duret-Lutz  <adl@gnu.org>
907         * lib/Automake/DisjConditions.pm (new): Precompute 'string' and 'conds'
908         in place instead of as a side-effect of calling ->string and ->conds.
909         This saves method-lookup time, simplify ->string and ->conds, and
910         allows to create the object only when necessary.
911         (string, conds): Simplify, now that the result is precomputed.
913         * automake.in (%am_file_cache): New hash.
914         (make_paragraphs): Cache .am files with comments stripped to save
915         some useless input and substitutions.
917         * lib/Automake/Variable.pm (%_primary_dict): New hash.
918         (_new, variable_delete): Update %_primary_dict.
919         (variables): Accept an optional $suffix argument.
920         * automake.in (check_typos, am_primary_prefixes): Use that
921         optional argument to restrict the loops over the variables we are
922         interested in.
924 2004-08-06  Alexandre Duret-Lutz  <adl@gnu.org>
926         * lib/Automake/Item.pm (def): Rewrite more concisely, it's faster
927         this way.
929 2004-08-05  Alexandre Duret-Lutz  <adl@gnu.org>
931         Speed up make_paragraphs.
932         * automake.in (handle_languages): Always define SUBDIROBJ,
933         DERIVED-EXT, and DIST_SOURCE, because the new transform() will
934         abort on unknown tokens.
935         (transform): Rewrite with different semantics.
936         (make_paragraphs): Make a single pass over the paragraph to
937         transform all template tokens instead of doing as much passes as
938         possible token.
940         * automake.in ($libtool_new_api): New variable.
941         (handle_libtool): Do not libtool's aux files if $libtool_new_api.
942         (scan_autoconf_traces) <LT_SUPPORTED_TAG>: Set $libtool_new_api.
943         (scan_autoconf_traces) <AC_REQUIRE_AUX_FILE>: Remember only the
944         first location for required files.
946 2004-08-04  Alexandre Duret-Lutz  <adl@gnu.org>
948         Support AC_REQUIRE_AUX_FILE, and fix requirement of AM_PROG_CC_C_O.
949         * automake.in (%required_aux_file): New hash.
950         (handle_single_transform, lang_c_rewrite): Do not explicitly
951         require 'compile', this is now an internal detail of
952         AM_PROG_CC_C_O.
953         (scan_autoconf_traces): Trace AC_REQUIRE_AUX_FILE and fill
954         %required_aux_file.
955         (scan_autoconf_files): Require all %required_aux_file instead
956         of explicitly requiring install-sh and missing.
957         (generate_makefile): Do not require config.sub and config.guess.
958         (handle_single_transform): Pass $have_per_exec_flags to
959         &lang_c_rewrite.
960         * configure.ac, m4/init.m4: Require Autoconf 2.59a.
961         * doc/automake.texi (Optional): Document AC_REQUIRE_AUX_FILE.
962         (Program and Library Variables, Options, Public macros):
963         AM_PROG_CC_C_O is required when per-target flags or subdir-objects
964         are used with C sources.
965         * m4/minuso.m4: Require `compile' using AC_REQUIRE_AUX_FILE.
966         * m4/missing.m4: Require `missing' similarly.
967         * tests/acsubst2.test, tests/distcom2.test, tests/distcom6.test,
968         tests/specflg.test, tests/specflg2.test, tests/specflg3.test,
969         tests/specflg6.test, tests/specflg7.test, tests/specflg8.test,
970         tests/specflg9.test, tests/subobj7.test, tests/target-cflags.test,
971         tests/yacc6.test: Fix to use AM_PROG_CC_C_O.
973 2004-08-03  Alexandre Duret-Lutz  <adl@gnu.org>
975         * automake.in (yacc_lex_finish_helper): Fix definition of YLWRAP
976         when ylwrap is installed in a default aux dir found in a parent
977         package.
978         * tests/subpkg.test: Augment to check that YLWRAP is installed
979         properly.
980         * doc/automake.texi (Yacc and Lex): ylwrap is not sought is the
981         current directory.
982         Report from Norman Gray.
984 2004-08-02  Alexandre Duret-Lutz  <adl@gnu.org>
986         * doc/automake.texi (Optional): Update documentation for
987         AC_CANONICAL_BUILD, AC_CANONICAL_HOST, and AC_CANONICAL_TARGET.
989         * automake.in (AC_CANONICAL_HOST, AC_CANONICAL_SYSTEM): Replace by ...
990         (AC_CANONICAL_BUILD, AC_CANONICAL_HOST, AC_CANONICAL_TARGET): ... these.
991         (scan_autoconf_traces): Scan for the latter three macros instead of
992         the former two.
993         (make_paragraphs): Adjust definitions of %BUILD%, %HOST%, and %TARGET%.
994         * tests/hosts.test: New file.
995         * tests/Makefile.am (TESTS): Add hosts.test.
996         Report and test case from Norman Gray.
998 2004-08-01  Alexandre Duret-Lutz  <adl@gnu.org>
1000         * aclocal.in (scan_file): Update "#Extending%20aclocal" URL, makeinfo
1001         4.7 now outputs "#Extending-aclocal".
1003 2004-08-01  Alexandre Duret-Lutz  <adl@gnu.org>
1004             Derek R. Price  <derek@ximbiot.com>
1006         Disable Lex and Yacc rules whenever possible if AM_MAINTAINER_MODE
1007         is used and maintainer-mode disabled.
1008         * automake.in (Automake::struct): Define nodist_specific.
1009         Set it in languages yacc, yaccxx, lex, and lexxx.
1010         (register_language): Default nodist_specific to 0.
1011         (handle_single_transform): Honor nodist_specific.
1012         * lib/am/yacc.am (am__skipyacc): Define this in maintainer mode.
1013         (%EXT%%DERIVED-EXT%, %OBJ%): Use $(am__skipyacc) to disable these
1014         rules when needed.
1015         * lib/am/lex.am (am__skiplex): Define this in maintainer mode.
1016         (%EXT%%DERIVED-EXT%, %OBJ%): Use $(am__skiplex) to disable these
1017         rules when needed.
1018         * tests/mmodely.test: New file.
1019         * tests/pr204.test: Augment to check AM_MAINTAINER_MODE and nodist_
1020         parsers.
1021         * tests/Makefile.am (TESTS): ADd mmodely.test.
1022         * doc/automake.texi (Yacc and Lex): Note dependence on maintainer mode.
1024 2004-07-28  Alexandre Duret-Lutz  <adl@gnu.org>
1026         * configure.ac, NEWS: Bump version to 1.9a.
1028         * configure.ac, NEWS: Bump version to 1.9.
1030         * automake.in (generate_makefile): Update misleading comment about
1031         libtool scripts.
1033         * lib/texinfo.tex: New upstream version.
1035 2004-07-25  Alexandre Duret-Lutz  <adl@gnu.org>
1037         * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Remove `.' from the mkdir_p
1038         definition, it causes `make install' to fails for user with no
1039         right to write in the source-tree.
1040         * automake.in (handle_configure): Do not use mkdir_p in the
1041         definition for $(mkdir_p).
1042         Report from Harlan Stenn.
1044         * lib/am/texi-vers.am (%STAMPVTI%): Typo in comment.
1046 2004-07-22  Alexandre Duret-Lutz  <adl@gnu.org>
1048         * doc/automake.texi (Libtool Modules): Typo in example.
1049         Report from Ulrich Eckhardt.
1051 2004-07-21  Andreas Schwab  <schwab@suse.de>  (tiny change)
1053         * automake.in (check_directory): Quote $dir in regexp.
1055 2004-07-17  Alexandre Duret-Lutz  <adl@gnu.org>
1057         * configure.ac, NEWS: Bump version to 1.8e.
1059         * configure.ac, NEWS: Bump version to 1.8d.
1061         * lib/config-ml.in, lib/config.sub, lib/config.guess, lib/texinfo.tex:
1062         New upstream versions.
1064         * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.html,
1065         ?!GENERIC?%DEST_PREFIX%.html): Use $(X), not ${X}.
1067         * tests/installdir.test: installdirs-local should appear three times,
1068         since the change from 2004-07-11 will make it PHONY.
1070         * lib/am/distdir.am (distdir): Always use $(DIST_SUBDIRS) now
1071         that it is always defined.  This is less confusing for users
1072         reading the generated Makefiles.
1073         * automake.in (handle_dist): Do not substitute DIST_SUBDIR_NAME.
1075         * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.html,
1076         ?!GENERIC?%DEST_PREFIX%.html): Output .htp, and then rename to .html
1077         on success.  In case the target is a directory, this ensures its
1078         time stamp is updated and the no files are left over inside.
1079         * tests/txinfo21.test: Augment to test missing timestamp update
1080         reported by Akim Demaille.
1082         * doc/automake.texi (Top level): Rename as ...
1083         (Directories): ... this, and split into ...
1084         (Subdirectories, Conditional Subdirectories): ... these.
1085         (Subdirectories): Illustrate the use of `.'.
1086         (Conditional Subdirectories): Describe SUBDIRS and DIST_SUBDIRS
1087         before the example.  Append a discussion about non-configured
1088         conditional directories.
1089         (Alternative): Move as a child of Directories.
1090         (Subpackages): New section.
1091         (Dist): Adjust links to Subdirectories, a Subpackages.
1092         (Third-Party Makefiles): Link to Conditional Subdirectories.
1094 2004-07-14  Alexandre Duret-Lutz  <adl@gnu.org>
1096         * automake.in (target_hook): Accept %transform as last argument.
1097         (handle_single_transform): Pass %transform to target_hook.
1098         (handle_source_transform): Define DIST_SOURCE to tell whether
1099         a the source of a file is distributed or not.
1100         (lang_yacc_target_hook): Check DIST_SOURCE, and do not distribute
1101         the generated header if the .y source is not distributed.
1102         * tests/pr204.test: Use AM_YFLAGS = -d and make sure generated
1103         headers are not distributed.
1105 2004-07-12  Simon Josefsson  <jas@extundo.com>  (tiny change)
1107         * doc/automake.texi (Options): Improve ustar file name length
1108         discussion.  Reference tar manual.
1110 2004-07-12  Ray Simard  <rhs.techlists@sylvan-glade.com>  (tiny change)
1112         * lib/Automake/Variable.pm (define): Fix precondition check.
1114 2004-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
1116         For PR automake/428:
1117         Support for conditionally defined -hook and -local rules.
1118         * automake.in (user_phony_rule): New function.
1119         (handle_dist, handle_install, handle_all, do_check_merge_target,
1120         handle_factored_dependencies): Use user_phony_rule before
1121         adding a user -hook or -local rule as a dependency to ensure
1122         it is always defined an phony.
1123         * tests/cond37.test, tests/condhook.test: New files.
1124         * tests/Makefile.am (TESTS): Add them.
1125         Report from Simon Josefsson and Nik A. Melchior.
1127 2004-07-05  Paul Eggert  <eggert@cs.ucla.edu>
1129         * doc/automake.texi (Install): Warn that you should create
1130         /tmp/staging before installing into it, to avoid security problems.
1131         * lib/install-sh: Remove support for -b= and -t= options; this
1132         has been moribund for a decade.
1133         Add support for -t and -T options (new in coreutils install).
1134         -c option now does nothing (the default is to copy), for
1135         compatibility with BSD and coreutils 'install'.
1136         Fix usage message; it referred to nonexistent variables.
1137         Don't assume 'lasterr' is unset in environment.
1138         * tests/instsh2.test: Don't assume that install-sh without -c
1139         moves (it now copies).  Add tests for new -t and -T options.
1141 2004-06-16  Alexandre Duret-Lutz  <adl@gnu.org>
1143         For Debian Bug#254372:
1144         * doc/automake.texi (Invoking aclocal): Rewrite the paragraph
1145         explaining m4_include is used for relative files.
1147 2004-06-10  Alexandre Duret-Lutz  <adl@gnu.org>
1149         For Debian Bug #251820:
1150         * aclocal.in (scan_file): Keep track of the location where each
1151         file is included, and display it when reporting a missing file.
1152         Pass this location to scan_file as a second argument.
1153         (scan_m4_files): Adjust calls to scan_file.
1154         * tests/acloca14.test: Add a test for this diagnostic.
1156 2004-06-07  Alexandre Duret-Lutz  <adl@gnu.org>
1158         * m4/tar.m4 (_AM_PROG_TAR): Split the definition of $_am_tools
1159         so it works with Solaris and Tru64 /bin/sh.
1160         Report from Nicolas Joly.
1162 2004-06-06  Alexandre Duret-Lutz  <adl@gnu.org>
1164         * m4/tar.m4 (_AM_PROG_TAR): Introduce $_am_tools to work around a
1165         bug in NetBSD /bin/sh.
1166         Report from Nicolas Joly.
1168 2004-06-03  Alexandre Duret-Lutz  <adl@gnu.org>
1170         * tests/defs.in (required=icc): Use `-V -help' instead of
1171         `-V -dryrun'.  icc 8.0 fails on the latter.
1172         * tests/depcomp5.test: Require depmode=icc for icc 7.x, and
1173         depmod=gcc otherwise.
1174         Report from Ralf Wildenhues.
1176         * lib/am/clean.am (distclean-generic): Do no
1177         `rm -f $(CONFIG_CLEAN_FILES)' if `$(CONFIG_CLEAN_FILES)' is empty.
1178         Report from Nicolas Joly.
1180 2004-05-31  Alexandre Duret-Lutz  <adl@gnu.org>
1182         * NEWS: Make clearer that we do not output partial Makefile.ins on
1183         error.
1184         Suggested by Akim Demaille.
1186         * lib/depcomp (tru64) [libtool]: Use $dir$base.o.d instead
1187         of $dir.libs/$base.o.d.  Libtool 1.5 causes both to be output,
1188         and we will clean the second automatically during distclean.
1189         Using the latter and leaving the former as we did before cause
1190         "files left in build directory" failures during distcheck.
1191         Suggested by Nicolas Joly.
1193         * doc/automake.texi (Built sources example): Explain what
1194         nodist_foo_SOURCES is (not) useful to, and use it in all the
1195         examples.
1196         (Tags): Mention nodist_noinst_HEADERS and nodist_prog_SOURCES.
1197         Suggested by Akim Demaille.
1199 2004-05-23  Alexandre Duret-Lutz  <adl@gnu.org>
1201         * configure.ac, NEWS: Bump version to 1.8c.
1203         * configure.ac, NEWS: Bump version to 1.8b.
1205         * m4/tar.m4 (_AM_PROG_TAR) <cpio>: Specify -o and -i option first,
1206         by POSIX; and use option -d in am_untar.
1208         * tests/defs.in (PATH): Export it.
1210         * lib/am/multilib.am: Add $(MAKE) comments to multido and
1211         multiclean lines, to enable parallel make.  Based on a patch
1212         by Alexandre Oliva applied to newlib on 2003-10-15.
1214 2004-05-22  Alexandre Duret-Lutz  <adl@gnu.org>
1216         * automake.in (scan_autoconf_traces): Trace for LT_SUPPORTED_TAG
1217         instead of AC_LIBTOOL_TAGS, since that how CVS Libtool has been
1218         changed.
1219         * tests/libtool3.test: Do not grep for --tag=CC, since CVS
1220         Libtool (unlike Libtool 1.5) does not has any CC tag.
1222         * tests/tar2.test: Skip the test if no pax archiver were found.
1224         * NEWS: Sync with branch-1-8, and reorganize current entry.
1226         * automake.in (handle_libraries): Make the diagnostic about
1227         non standard libraries a warning in foreign packages.  This
1228         is already the case in handle_ltlibraries.
1229         (handle_libraries, handle_ltlibraries): Suggest a standard
1230         library name in the diagnostic, to help newcomers.
1231         * tests/stdlib.test, tests/stdlib2.test: Check for these
1232         suggestions.
1234         Check directory names for unportable names.  Shaking the code
1235         to check this also led to the removal of the no-"/"-in-SUBDIRS
1236         restriction, and a fix to _do_recursive_traversal.
1238         * automake.in (check_directory): New function extracted from
1239         handle_subdirs, and augmented to check for reserved W32/DOS name.
1240         (check_directories_in_var): New function.
1241         (handle_subdirs): Call check_directories_in_var.  Doing so also
1242         suppress the restriction that SUBDIRS should not contain slashes.
1243         (scan_autoconf_traces) <AC_CONFIG_AUX_DIR>: Call check_directory
1244         to ensure the argument exists and is safe.
1245         * doc/automake.texi (Top level): Do not say that src/subdir
1246         cannot be put in SUBDIRS.
1247         (Dist): Mention that distdir and top_distdir can be absolute.
1248         * lib/Automake/Variable.pm (_do_recursive_traversal) Support
1249         undefined $fun_collect, and fix two bugs introduced with
1250         skip_ac_subst on 2004-03-07.
1251         * lib/am/distdir.am (distdir): Use absolute distdir and
1252         top_distdir when recursing, because we can no longer prepend only
1253         `..' in case of SUBDIRS with `/'.
1254         * tests/auxdir4.test, tests/subdir9.test: New files.
1255         * tests/Makefile.am (TESTS): Add auxdir4.test.
1256         * tests/cond2.test, tests/subdir7.test: Augment to check location
1257         in diagnostics.
1259 2004-05-21  Eric Blake  <ebb9@byu.net>  (tiny changes)
1261         * tests/txinfo22.test (AC_CONFIG_AUX_DIR): Use aux1, not aux, for
1262         cygwin compatibility.
1263         * tests/yacc6.test (AC_CONFIG_AUX_DIR): Likewise.
1265         * tests/conflnk3.test: Isolate checking for working `test -e' into
1266         a subshell, to skip this test on broken /bin/sh of solaris.
1268 2004-05-17  Alexandre Duret-Lutz  <adl@gnu.org>
1270         * m4/cond.m4 (AM_CONDITIONAL): Double-quote diagnostic.
1271         * tests/condd.test: Define a macro with the same name as a
1272         conditional.
1273         * tests/pr220.test: Modernize, and make sure the diagnostics
1274         contains the macro name.
1275         Report from Volker Boerchers.
1277 2004-05-16  Alexandre Duret-Lutz  <adl@gnu.org>
1279         * lib/texinfo.tex: New upstream version.
1281 2004-05-15  Alexandre Duret-Lutz  <adl@gnu.org>
1283         * automake.in (handle_dist): Always define DIST_SUBDIRS, even when
1284         the no-dist or cygnus options are used.
1285         * tests/clean2.test: New file.
1286         * tests/Makefile.am (TESTS): Add clean2.test.
1287         Report from Daniel Jacobowitz.
1289         * aclocal.in (add_macro): Do not error out on undefined required
1290         macros.  We are not sure they are really used, and Autoconf
1291         already diagnoses them.
1292         (scan_configure_dep): Diagnose missing AM_ macros as warnings rather
1293         than errors.
1294         * tests/aclocal3.test, tests/ammissing.test: Adjust to expect a
1295         warning instead of an error.
1296         * tests/aclocal8.test: AC_REQUIRE an undefined macro in an unused
1297         macro, and ensure aclocal works anyway.
1298         * tests/acloca17.test: New file.
1299         * tests/error.test: Delete, superseded by tests/acloca17.test.
1300         * tests/Makefile.am (TESTS): Add acloca17.test and remove error.test.
1301         Report from Jim Meyering.
1303         * lib/am/texibuild.am (?!GENERIC_INFO?%DEST_INFO_PREFIX%%DEST_SUFFIX%):
1304         Fold a few lines to reduce the output by 5 lines.
1305         Suggested by Karl Berry.
1307         * automake.in (parse_arguments, MAIN): Give more precise
1308         diagnostics when no input file is found.
1309         * tests/output5.test: Adjust.
1310         Suggested by Jens Petersen.
1312 2004-05-14  Alexandre Duret-Lutz  <adl@gnu.org>
1314         * lib/am/libs.am (AR, ARFLAGS): Move these definition ...
1315         * automake.in (handle_libraries): ... here, so that they are
1316         output even for EXTRA_LIBRARIES.
1317         * tests/ar2.test: New file.
1318         * tests/Makefile.am (TESTS): Add it.
1319         Report from Kevin Ryde.
1321 2004-05-13  Alexandre Duret-Lutz  <adl@gnu.org>
1323         * automake.in (generate_makefile): Do not output Makefile.in on
1324         errors.
1325         * tests/werror2.test: New file.
1326         * tests/Makefile.am (TESTS): Add werror2.test.
1327         * tests/substtarg.test, tests/cond36.test, tests/backsl4.test:
1328         Adjust to run automake with -Wno-error when the output is expected
1329         in spite of the error.
1330         Report from Harlan Stenn.
1332         * doc/automake.texi (Program and Library Variables): Remove
1333         doubled word in footnote.
1335         * automake.in (handle_source_transform): Also check for a
1336         $(srcdir)/old_source rule when computing the default source name.
1337         Propagate this $(srcdir) prefix in Automake variables.
1338         * tests/ltlibsrc.test (noinst_LTLIBRARIES): Explicitly refer to
1339         $(srcdir)/zoo_d_old2_la.c.  This fixes another failure with BSD Make.
1341 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
1343         * Makefile.am (fetch): Work even with FreeBSD "make", which
1344         uses sh -e and thus errors-out if a simple-command fails.
1345         * lib/am/check.am (check-TESTS): Likewise.
1346         * lib/am/ltlib.am (clean-%DIR%LTLIBRARIES): Likewise.
1347         * lib/am/tags.am (TAGS): Likewise.
1349 2004-05-13  Alexandre Duret-Lutz  <adl@gnu.org>
1351         * tests/lex3.test, tests/yacc6.test: Require GNU Make.
1352         Fixing these for BSD Make requires invasive changes (lexers and
1353         parsers must be built into $srcdir, and--most annoyingly--all
1354         references to parse.h must be changed to $(srcdir)/parse.h).
1355         Report from Mark D. Baushke.
1357 2004-05-10  Alexandre Duret-Lutz  <adl@gnu.org>
1359         * tests/defs.in (GNUmake): Grep for GNU to parry FreeBSD make.
1360         Report from Mark D. Baushke.
1362 2004-04-25  Alexandre Duret-Lutz  <adl@gnu.org>
1364         * lib/texinfo.tex: New upstream version.
1366         * lib/depcomp (tru64): Clarify comments.  Thanks to Nicolas Joly.
1368         * doc/automake.texi (Headers): Revamp.
1370 2004-04-24  Alexandre Duret-Lutz  <adl@gnu.org>
1372         * automake.in (check_typos): Clarify the diagnostic.
1373         * tests/warnopts.test: Adjust.
1375         * lib/Automake/VarDef.pm (append): Turn VAR_ASIS variables into
1376         VAR_PRETTY variables to work around make implementation with
1377         limited line length, such as OSF1/Tru64 make.
1378         * tests/longline.test: New file.
1379         * tests/Makefile.am (TESTS): Add it.
1380         * tests/pluseq3.test, tests/pluseq8.test: Adjust.
1381         Report from Simon Josefsson.
1383         * lib/am/tags.am (TAGS): Pass `.' to Exuberant Ctags if
1384         --etags-include is used but no other files are supplied, so it
1385         creates the TAGS file anyway.
1386         Report from Akim Demaille.
1388         * lib/depcomp (tru64) [libtool]: Nicolas Joly reported on
1389         2002-06-12 that dependencies were output in $dir.libs/$base.lo.d.
1390         Teun Burgers reported on 2004-03-30 they were in
1391         $dir.libs/$base.o.d.  Try both.
1393 2004-04-23  Alexandre Duret-Lutz  <adl@gnu.org>
1395         For PR automake/414:
1396         Introduce option filename-length-max=99.
1397         * doc/automake.texi (Options): Document it.
1398         * configure.ac (AM_INIT_AUTOMAKE): Use it.
1399         * lib/Automake/Options.pm (_process_option_list): Recognize it.
1400         * automake.in (handle_dist): Set FILENAME_FILTER.
1401         * lib/am/distdir.am (distdir) [FILENAME_FILTER]: Diagnose long
1402         filenames.
1403         * tests/fn99.test: New file.
1404         * tests/Makefile.am (TESTS): Add fn99.test.
1406 2004-04-20  Alexandre Duret-Lutz  <adl@gnu.org>
1408         For PR automake/414:
1409         Introduce options tar-v7, tar-ustar, and tar-pax to select
1410         tar format.
1411         * doc/automake.texi (Options): Document them.
1412         * lib/Automake/Options.pm (_process_option_list): Process
1413         these new options.
1414         * lib/am/distdir.am (dist-gzip, dist-bzip2, dist-tarZ, dist,
1415         distcheck): Adjust to use am__tar and am__untar.
1416         * m4/tar.m4: New file.
1417         * m4/Makefile.am (dist_m4data_DATA): Add tar.m4.
1418         * m4/init.m4 (AM_INIT_AUTOMAKE): Support the new options
1419         and call _AM_PROG_TAR.
1420         * tests/tar.test, tests/tar2.test, tests/tar3.test: New files.
1421         * tests/Makefile.am (TESTS): Add them.
1423 2004-04-18  Alexandre Duret-Lutz  <adl@gnu.org>
1425         * lib/am/distdir.am (distcheck): Typo in shar decompression.
1427         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
1428         versions.
1430 2004-04-17  Alexandre Duret-Lutz  <adl@gnu.org>
1432         Fix PR automake/49:
1433         * automake.in (scan_autoconf_traces) <AC_CONFIG_AUX_DIR>: Diagnose
1434         calls to AC_CONFIG_AUX_DIR followings calls to AM_INIT_AUTOMAKE.
1435         * tests/auxdir.test, tests/auxdir2.test, tests/lex5.test,
1436         tests/mdate3.test, tests/multlib.test, tests/reqd2.test,
1437         tests/symlink.test, tests/txinfo8.test, tests/txinfo22.test,
1438         tests/yacc6.test, tests/yacc8.test: Fix to call AC_CONFIG_AUX_DIR
1439         before AM_INIT_AUTOMAKE.
1440         * tests/auxdir3.test: New file (exercise this diagnostic).
1441         * tests/Makefile.am (TESTS): Add auxdir3.test.
1443 2004-04-15  Alexandre Duret-Lutz  <adl@gnu.org>
1445         * aclocal.in (%map_traced_defs): New variable.
1446         (scan_m4_files): Normalize filenames.
1447         (trace_used_macros): Trace for AC_DEFUN and AU_DEFUN, also
1448         ask for the filename and the first argument.  Populate
1449         %map_traced_defs.
1450         (write_aclocal): Use $map_traced_defs to filter out unused
1451         definitions.
1452         * tests/acloca16.test: New file.
1453         * tests/Makefile.am (TESTS): Add acloca16.test.
1455 2004-04-12  Alexandre Duret-Lutz  <adl@gnu.org>
1457         * automake.in ($automake_needs_to_reprocess_all_files): Remove.
1458         ($automake_will_process_aux_dir): New variable.
1459         (scan_autoconf_traces): Reorder @input_files so that the Makefile
1460         that distributes aux files is processed last.  This way we do not
1461         have to process all files twice using
1462         $automake_will_process_aux_dir.
1463         (require_file_internal): Suggest a full run of automake when
1464         appropriate.
1465         (MAIN): Remove the loop on $automake_needs_to_reprocess_all_files.
1466         * tests/distcom7.test: New file.
1467         * tests/reqd2.test: Do not check for the "running more than two"
1468         message.
1469         * tests/Makefile.am (TESTS): Add distcom7.test.
1471         * automake.in (@config_aux_path, $config_aux_dir): Rename as ...
1472         ($config_aux_dir, $am_config_aux_dir): ... these.
1473         ($config_aux_dir_set_in_configure_in): Rename as ...
1474         ($config_aux_dir_set_in_configure_ac): ... this.
1475         (%require_file_found): Rename as ...
1476         (%required_file_not_found): ... this.
1477         (handle_languages, handle_texinfo_helper, handle_dist,
1478         handle_configure, handle_emacs_lisp, handle_python,
1479         scan_autoconf_traces, yacc_lex_finish_helper): Adjust to new names.
1480         (scan_autoconf_traces): Call locate_aux_dir.
1481         (locate_aux_dir): New function.
1482         (@require_file_paths): Remove, not used anymore.
1483         (require_file_internal): Look files in only one directory (instead
1484         of @require_file_internal) passed in argument.
1485         (require_file, require_conf_file): Pass the destination directory
1486         to require_file_internal.
1488         Fix for PR automake/416:
1489         * m4/depend.m4 (_AM_DEPENDENCIES): Catch `not supported' ICC 8.0
1490         remarks.
1491         From Peter Seiderer.
1493 2004-04-10  Andreas Buening  <andreas.buening@nexgo.de>
1495         * aclocal.in, automake.in, configure.ac, Makefile.am,
1496         tests/aclocal.in, tests/automake.in, tests/defs.in:
1497         Use PATH_SEPARATOR from autoconf instead of ':'.
1499 2004-04-09  Alexandre Duret-Lutz  <adl@gnu.org>
1501         * automake.in (handle_lib_objects): Pass the condition of
1502         the variable definition to handle_LIBOBJS and handle_ALLOCA,
1503         not the aggregated conditions.
1504         * tests/Makefile.am (TESTS): Add libobj14.test.
1505         * tests/libobj14.test: New file.
1506         Report from Bill Davidson.
1508 2004-04-02  Mike Nolta  <mike@nolta.net>
1510         Better support for Fortran 9x.
1511         * automake.in: Add "fc" and "ppfc" languages for Fortran 9x.
1512         * doc/automake.texi (Fortran 9x Support): New section.
1513         * lib/Automake/Variable.pm (%_ac_macro_for_var): Add AC_PROG_FC.
1514         * tests/compile_f90_c_cxx.test: New file.
1515         * tests/ext.test: Add AC_PROG_FC.
1516         * tests/f90only.test: New file.
1517         * tests/link_f90_only.test: New file.
1518         * tests/Makefile.am (TESTS): Add new tests.
1520 2004-04-01  Paul Eggert  <eggert@twinsun.com>
1522         * lib/install-sh: If "mv -f" works, use it, and fall back to
1523         the old "test -f" + "rm -f" + "mv" method only if "mv -f" does
1524         not work.  This improves performance in the usual case where
1525         "mv -f" works.  It also lets us install the "mv" command
1526         without worrying about a small window where "mv" does not
1527         exist (this problem was reported by Raul Nunez de Arenas
1528         Coronado).
1530 2004-03-26  Alexandre Duret-Lutz  <adl@gnu.org>
1532         * m4/python.m4 (AM_PATH_PYTHON): Make sure am_display_PYTHON is
1533         set when $PYTHON has been set by the user.
1534         From Esben Haabendal Soerensen.
1536 2004-03-22  Alexandre Duret-Lutz  <adl@gnu.org>
1538         * doc/automake.texi (Default _SOURCES): Typo.
1539         (true): Correct _'s placement in example.
1540         Report from Stepan Kasal.
1542 2004-03-19  Alexandre Duret-Lutz  <adl@gnu.org>
1544         Overriding JAVAROOT is legitimate, do not warn about it.
1545         * lib/Automake/Variable.pm (%_silent_variable_override): Add JAVAROOT.
1546         * tests/java2.test: Run automake without -Wno-override.
1547         Report from Simon Josefsson.
1549 2004-03-14  Alexandre Duret-Lutz  <adl@gnu.org>
1551         * automake.in (handle_texinfo_helper): Typos in comment.
1553 2004-03-07  Alexandre Duret-Lutz  <adl@gnu.org>
1555         * lib/config.guess: New upstream version.
1557         Fix for PR automake/285:
1558         * automake.in (handle_ltlibraries): Keep track of installation
1559         directories for each condition, then define a $(am_TARGET_rpath)
1560         variable to hold the -rpath flags of Libtool libraries conditionally
1561         installed in different directories.
1562         * lib/Automake/DisjConditions.pm (merge): New function.
1563         * tests/libtool6.test: Adjust.
1564         * tests/libtool8.test: New file.
1565         * tests/Makefile.am (TEST): Add libtool8.test.
1567         * lib/Automake/Variable.pm (traverse_recursively,
1568         _do_recursive_traversal): Honor the skip_ac_subst option.
1569         * automake.in (handle_dist): Use skip_ac_subst.
1571 2004-02-29  Alexandre Duret-Lutz  <adl@gnu.org>
1573         * Makefile.am (cvs-release): Upload to ~ftp/pub/automake, not
1574         ~ftp/automake.
1575         * lib/gnupload (Example): Update example.
1577         * lib/config-ml.in, lib/config.guess, lib/config.sub,
1578         lib/texinfo.tex: New upstream versions.
1580         * m4/depend.m4 (_AM_DEPENDENCIES): Use `touch' rather than `: >'
1581         to create numbered dependencies.  This fixes a portability issue
1582         when CONFIG_SHELL is forced to /bin/sh on Solaris 8.
1583         Reported by Mark Phillips.
1585         * automake.in (lang_yacc_target_hook): Use Automake::Rule::define
1586         so that rules for the same headers are not output twice.
1587         * lib/Automake/Variable.pm (value_as_list_recursive): Do not
1588         call `return' inside `map'.
1589         * tests/cond30.test: Make sure `a.c' and `b.c' both appear
1590         in the Makefile.in.
1591         * tests/cond35.test, tests/cond36.test: New files.
1592         * tests/Makefile.am (TESTS): Add cond35.test and cond36.test.
1593         Report from Roman Fietze.
1595         Fix for PR/413:
1596         * lib/am/distdir.am (distcheck): Create $dc_destdir with `umask
1597         077 && mkdir' instead of `$(mkdir_p)'.  This prevents possible
1598         symlink attacks reported by Stefan Nordhausen.
1600 2004-02-16  Alexandre Duret-Lutz  <adl@gnu.org>
1602         * doc/automake.texi (Multiple Outputs): More text, based on
1603         comments from Eric Siegerman, Tim Van Holder, and Oren Ben-Kiki.
1605 2004-02-15  Alexandre Duret-Lutz  <adl@gnu.org>
1607         * m4/mkdirp.m4: Use `mkdir -p' only with GNU mkdir, because
1608         Solaris 8's mkdir is not thread-safe.
1609         * lib/mkinstalldirs: Likewise.
1610         * lib/install-sh: Abort when mkdir fails to create a directory.
1611         Report from Nathanael Nerode.
1613 2004-02-07  Alexandre Duret-Lutz  <adl@gnu.org>
1615         * aclocal.in (rel2abs): New function.
1616         (scan_configure_dep): Use rel2abs instead of File::Spec->rel2abs,
1617         the later does was introduced in Perl 5.6 so using it breaks with
1618         Perl 5.005.
1619         Report from Werner John.
1621 2004-02-03  Alexandre Duret-Lutz  <adl@gnu.org>
1623         * doc/automake.texi (Future of aclocal): Make clearer that
1624         it's ok to install macros into /usr/share/aclocal/.
1626 2004-02-01  Alexandre Duret-Lutz  <adl@gnu.org>
1628         * tests/lisp.test: Delete (pointless).
1629         * tests/Makefile.am (TESTS): Remove lisp.test.
1631         * lib/Automake/Variable.pm (transform_variable_recursively):
1632         Define rewritten variables in all conditions not *covered* by user
1633         definitions, not simply in conditions without a previous
1634         definition.
1635         * tests/cond34.test: New file.
1636         * tests/Makefile.am (TESTS): Add cond34.test.
1637         Report from Elena A. Vengerova
1639         * doc/automake.texi (Multiple Outputs): Typo.
1641         * doc/automake.texi (Emacs Lisp): Typos.
1643         Support for conditional _LISP.
1644         * automake.in (handle_emacs_lisp): Define $(ELCFILES) from LISP, not
1645         from $(am__ELCFILES).
1646         * lib/am/lisp.am (elc-stamp): Use $(LISP) instead of $(am__ELFILES).
1647         * tests/lisp6.test: New file.
1648         * tests/Makefile.am (TESTS): Add it.
1650         * automake.in (handle_emacs_lisp): Define $(ELCFILES) as
1651         $(am__ELCFILES), and always push it on @all.  Do not mention
1652         elc-stamp.
1653         * lib/am/lisp.am (.el.elc): Rewrite as ...
1654         ($(am__ELCFILES)): ... this, and depend on elc-stamp.
1655         (elc-stamp): Make sure elc-stamp is older that all .elc files, as
1656         explained in the manual entry below.
1658         * doc/automake.texi (Multiple Outputs): New node.
1660 2004-01-31  Alexandre Duret-Lutz  <adl@gnu.org>
1662         * m4/regex.m4: Do not AC_SUBST(LIBOBJS), and quote most arguments.
1663         * tests/regex.test: New file.
1664         * tests/Makefile.am (TESTS): Add regex.test.
1666 2004-01-28  Alexandre Duret-Lutz  <adl@gnu.org>
1668         * Makefile.am (maintainer-check): Check for unquoted $(DESTDIR) uses.
1669         * lib/am/data.am, lib/am/distdir.am, lib/am/java.am, lib/am/libs.am,
1670         lib/am/lisp.am, lib/am/ltlib.am, lib/am/mans.am, lib/am/progs.am,
1671         lib/am/python.am, lib/am/scripts.am, lib/am/texinfos.am: Quote
1672         installation paths in install, uninstall, and installcheck rules,
1673         as well as in am__installdirs variables.  This is for the sake
1674         of paths containing spaces.
1675         * lib/am/install.am (installdirs-am, installdirs): Do not try
1676         to create "" directories.
1677         * test/instspc.test: New file.
1678         * test/Makefile.am (TESTS): Add instspc.test.
1679         Report from James Amundson.
1681         * doc/automake.texi (Not Enough, Third-Party Makefiles): New nodes.
1682         (Extending): Make it a subsection of Not Enough.
1684         * lib/gnupload (GPG): Use an absolute path.  Suggestion from Gary
1685         V. Vaughan.
1686         (passphrase): Unset it this variable before using it, in case it
1687         was exported.  Report from Scott James Remnant.
1689 2004-01-25  Alexandre Duret-Lutz  <adl@gnu.org>
1691         * lib/gnupload (usage): Fix example.
1692         * Makefile.am (cvs-release): Fix call to gnupload.
1693         From Jim Meyering.
1695 2004-01-24  Alexandre Duret-Lutz  <adl@gnu.org>
1697         * lib/gnupload: New script.
1698         * lib/Makefile.am (EXTRA_DIST): Distribute gnupload.
1699         * Makefile.am (cvs-release): New target.
1701 2004-01-23  Alexandre Duret-Lutz  <adl@gnu.org>
1703         * lib/am/python.am (uninstall-%DIR%PYTHON): Remove extra `;'s.
1704         Fix python10.test.
1706         * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Use `s/xx//p'
1707         instead of `/xx/ s///p'; the latter fails when GNU sed is run with
1708         POSIXLY_CORRECT.  Also strip superfluous -e.
1709         Report from Miloslav Trmac.
1711 2004-01-22  Alexandre Duret-Lutz  <adl@gnu.org>
1713         * tests/lex5.test: Sleep before calling AUTOMAKE the second time,
1714         this fixes a spurious failure reported by Andreas Schwab.  Also
1715         make sure ylwrap is not installed unless needed, and exercise
1716         --no-force.
1718 2004-01-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
1720         * doc/automake.texi (Dist): Document limitations of distcheck-hook
1721         and DISTCHECK_CONFIGURE_FLAGS with regard to subdirs and
1722         subpackages.
1724 2004-01-20  Alexandre Duret-Lutz  <adl@gnu.org>
1726         * doc/automake.texi (Upgrading): New node.
1728 2004-01-20  Gary V. Vaughan  <gary@gnu.org>
1730         * automake.in (scan_autoconf_traces): AC_LIBTOOL_TAGS can be
1731         correctly called without arguments as evidenced by the libtool
1732         demo directories.
1734 2004-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
1736         * tests/conflnk3.test: Skip if `test -e' does not work.
1737         Report from Lars Hecking.
1739 2004-01-13  Jim Meyering  <jim@meyering.net>
1741         * lib/install-sh: Change `\n \t' to `\n\t ' in `defaultIFS'
1742         assignment.  Remove spurious SPACEs before TABs.
1744 2004-01-12  Alexandre Duret-Lutz  <adl@gnu.org>
1746         * lib/py-compile: Check input files after option processing.
1747         Ensure --basedir has an argument.
1748         * lib/am/python.am (install-%DIR%PYTHON): Do not run py-compile
1749         if nothing was installed.
1750         * tests/python10.test: New file.
1751         * tests/Makefile.am (TESTS): Add python10.test.
1752         Suggested by Sander Niemeijer.
1754         * tests/txinfo29.test: Remove autom4te.cache.
1755         Report from Greg Schafer.
1757         * lib/install-sh: Do not use "$@" in a context where it may be empty,
1758         for the sake of OSF1/Tru64's shell.
1759         Report from He Li.
1761 2004-01-11  Alexandre Duret-Lutz  <adl@gnu.org>
1763         * lib/config.sub, lib/config.guess, lib/texinfo.tex: New upstream
1764         versions.
1766         * m4/as.m4, m4/depend.m4, m4/maintainer.m4, m4/multi.m4: Update
1767         copyright years and serial.
1769         * m4/python.m4 (_AM_PYTHON_INTERPRETER_LIST): Add python2.4.
1771 2004-01-10  Peter Eisentraut  <peter_e@gmx.net>  (tiny change)
1773         * m4/as.m4 (AM_PROG_AS): Format and align help string more
1774         consistently.
1775         * m4/depend.m4 (AM_DEP_TRACK): Likewise.
1776         * m4/lispdir.m4 (AM_PATH_LISPDIR): Likewise.
1777         * m4/maintainer.m4 (AM_MAINTAINER_MODE): Likewise.
1778         * m4/multi.m4 (AM_ENABLE_MULTILIB): Likewise.
1780 2004-01-10  Paul Eggert  <eggert@twinsun.com>
1782         * m4/lispdir.m4 (AM_PATH_LISPDIR): Don't use \? in sed regular
1783         expressions; it doesn't conform to POSIX.
1785 2004-01-10  Alexandre Duret-Lutz  <adl@gnu.org>
1787         * automake.in (shadow_unconditionally): New function...
1788         (handle_source_transform): ... extracted from here.
1789         (am_install_var): Use shadow_unconditionally to define %DISTVAR%.
1790         * lib/am/data.am, lib/am/java.am, lib/am/lisp.am, lib/am/python.am,
1791         lib/am/script.am: Add %DISTVAR% to DIST_COMMON.
1792         * tests/cond33.test: Make sure all conditional files are distributed.
1793         Report from Ralf Corsepius.
1795 2004-01-08  Alexandre Duret-Lutz  <adl@gnu.org>
1797         * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Append `.' to $(mkdir_p).
1798         * lib/install-sh: Accept `install-sh -d' with 0..n arguments,
1799         as well as `install-sh sources... dest' with multiple sources.
1800         * tests/cond33.test: New file.
1801         * tests/instsh2.test: Add more checks for install-sh.
1802         * tests/transform.test: Test for installdirs.
1803         * tests/Makefile.am (TESTS): Add cond33.test
1804         Report from Ralf Corsepius.
1806         * automake.in (handle_configure): Skip AC_CONFIG_LINKS items which
1807         do not look like DEST:SRC.
1808         * tests/conflnk3.test: Check for AC_CONFIG_LINKS($computed).
1810 2004-01-07  Alexandre Duret-Lutz  <adl@gnu.org>
1812         Fix for PR automake/289:
1813         * automake.in (Automake::Struct::libtool_tag): New attribute.  Define
1814         it for the language that have a Libtool tag.
1815         (%libtool_tags): New variable.
1816         (handle_languages, define_compiler_variable)
1817         (define_linker_variable): Pass --tag=XXX to libtool if supported.
1818         (scan_autoconf_traces): Scan for _LT_AC_TAGCONFIG and AC_LIBTOOL_TAGS.
1819         * tests/libtool3.test, tests/subobj9.test: Check that --tag=XXX is
1820         output.
1822 2003-01-07  Eric Sunshine  <sunshine@sunshineco.com>  (tiny change)
1824         * lib/am/configure.am (am__CONFIG_DISTCLEAN_FILES): Add
1825         config.status.lineno.
1827 2004-01-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
1829         * doc/automake.texi (Rebuilding): Typo.
1831 2004-01-07  Alexandre Duret-Lutz  <adl@gnu.org>
1833         * lib/am/Makefile.am (dist_am_DATA): Really add inst-vars.am.
1835 2004-01-06  Alexandre Duret-Lutz  <adl@gnu.org>
1837         * THANKS: Add Bruce Korb.
1839 2004-01-05  Alexandre Duret-Lutz  <adl@gnu.org>
1841         Mimic Paul Eggert's changes to Autoconf.
1842         * Makefile.am (automake, aclocal): Use `chmod a-w', not `chmod -w'.
1843         * lib/Automake/Makefile.am (Config.pm): Likewise.
1844         * m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Likewise.
1846         * lib/am/inst-vars.am: New file, define am__vpath_adj_setup,
1847         am__vpath_adj, and am__strip_dir.
1848         * lib/am/Makefile.am (dist_am_DATA): Add inst-vars.am.
1849         * lib/am/data.am, lib/am/lisp.am, lib/am/python.am,
1850         lib/am/scripts.am: Include inst-vars.am, and use $(am__vpath_adj),
1851         $(am__vpath_adj_setup), and $(am__strip_dir) in install and
1852         uninstall rules.  This fixes installation of nobase_ files in
1853         VPATH setups with Sun and OSF1/Tru64 Make.
1854         * lib/am/libs.am, lib/am/ltlib.am: Include inst-vars.am, and use
1855         $(am__strip_dir) to simplify install and uninstall rules.
1856         * tests/nobase.test: Augment to check installation from VPATH builds.
1858         * automake.in (%transformed_files): New variable.
1859         (initialize_per_input): Reset it.
1860         (make_paragraphs): Fill %transformed_files, and define %FIRST%
1861         each time a file is transformed for the first time.
1862         (handle_configure): Do not define %FIRST_CONFIG_HIN%.
1863         (am_install_var): Do not define %FIRST%.
1864         * lib/am/remake-hdr.am: Use %?FIRST% instead of %?FIRST_CONFIG_HIN%.
1866 2004-01-04  Alexandre Duret-Lutz  <adl@gnu.org>
1868         * lib/texinfo.tex: New upstream version.
1870         * m4/mkdirp.m4: Do not use `-m 0755'.  This overrides special bits
1871         and break setups where 775 directories are expected.  Just obey
1872         umask as we did in the past.
1873         Report from Harlan Stenn.
1875 2004-01-03  Alexandre Duret-Lutz  <adl@gnu.org>
1877         * automake.in (scan_texinfo_file): Do not compare $outfile to ''
1878         as $outfile might not be defined at all.
1880         * lib/Automake/Variable.pm (define): Rework the way we check
1881         Automake variable definition.  Ensure consistent :=/+=/=
1882         definitions only for variables that have been and are defined by
1883         Automake, and make it an internal error.  Ignore Automake
1884         attempts to touch a user variable, even with += assignments.
1885         * tests/txinfo29.test: New file.
1886         * tests/Makefile.am (TESTS): Add txinfo29.test.
1887         Reported by Bruce Korb.
1889 2004-01-02  Tom Tromey  <tromey@redhat.com>
1891         * automake.in (handle_source_transform): Don't generate dist
1892         variables when no-dist is set.
1893         (generate_makefile): Likewise.
1894         * tests/nodist3.test: Ensure that DIST_SOURCES is not created,
1895         and that dist target does not exist.
1896         Reported by Tom Fitzsimmons.
1898 2004-01-02  Alexandre Duret-Lutz  <adl@gnu.org>
1900         * tests/libtool5.test, tests/ltcond.test, tests/ltcond2.test,
1901         * tests/ltconv.test: Run automake with --add-missing, because
1902         the CVS version of libtoolize no longer install config.sub and
1903         config.guess by default.
1905         Fix for PR automake/319:
1906         * aclocal.in (scan_m4_files): Scan configure.ac.
1907         (trace_used_macros, write_aclocal): Remove configure.ac from the
1908         list of files to include.
1909         * tests/Makefile.am (TESTS): Add acloca15.test.
1910         * tests/acloca15.test: New file.
1912         * aclocal.in (%file_includes): New variable.
1913         (scan_configure_dep): Compile $m4_include_rx and $ac_require_rx once.
1914         (scan_file): Scan for included files, and process these files
1915         recursively.  Fill %file_includes and %file_contents.  Return the
1916         list of included files, not the contents.
1917         (scan_m4_files): Adjust calls to scan_files.
1918         (strip_redundant_includes): New function.
1919         (trace_used_macros): Call it.
1920         (write_aclocal): Likewise.  Also check the mtime of included files.
1921         * tests/Makefile.am (TESTS): Add acloca14.test.
1922         * tests/acloca14.test: New file.
1923         Report from Phil Edwards.
1925 2004-01-01  Alexandre Duret-Lutz  <adl@gnu.org>
1927         * automake.in (handle_languages): Do not define DEP_FILES.
1928         * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Extract included
1929         files with $(DEPDIR) in their name instead of DEP_FILES.
1930         * tests/depend.test, tests/depend4.test, tests/exsource.test:
1931         Adjust.
1932         Suggested by Tom Tromey.
1934         Do not output .lo rules for programs and static libraries objects,
1935         and do not output .o/.obj rules for libtool libraries.  This is
1936         about explicit rules only, not inference rules.
1937         * automake.in (handle_single_transform_list): Rename as ...
1938         (handle_single_transform): ... this.  Take a single file
1939         to transform (it was only called this way) and accept a new
1940         %transform argument.  Fill %lang_specific_files with list
1941         references instead of strings, and append %transform to each
1942         of these lists.
1943         (define_objects_from_sources, handle_source_transform):
1944         Take a %transform argument, and forward it to &handle_single_transform.
1945         (handle_languages): Adjust to the new format of
1946         %lang_specific_files, and honor its %transform part.
1947         (handle_programs, handle_libraries, handle_ltlibraries): Override
1948         %NONLIBTOOL% and %LIBTOOL% while calling handle_source_transform.
1949         (make_paragraphs): Define %NONLIBTOOL% by default.  Make sure
1950         %transform settings override global settings.
1951         * lib/am/depend2.am (%OBJ%, %OBJOBJ%): Define only if %NONLIBTOOL%.
1952         * tests/libtool3.test: Augment to check Makefile.ins for unneeded
1953         rules.
1954         Suggested by Thomas Fitzsimmons.
1956         * automake.in, aclocal.in: Bump copyright years.
1958 -----
1960 Copyright (C) 2004, 2005  Free Software Foundation, Inc.
1962 This file is part of GNU Automake.
1964 GNU Automake is free software; you can redistribute it and/or modify
1965 it under the terms of the GNU General Public License as published by
1966 the Free Software Foundation; either version 2, or (at your option)
1967 any later version.
1969 GNU Automake is distributed in the hope that it will be useful,
1970 but WITHOUT ANY WARRANTY; without even the implied warranty of
1971 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1972 GNU General Public License for more details.
1974 You should have received a copy of the GNU General Public License
1975 along with autoconf; see the file COPYING.  If not, write to
1976 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
1977 Boston, MA 02111-1307, USA.
1979 ;; Variables:
1980 ;; coding: utf-8
1981 ;; End: