* configure.ac, NEWS: Bump version to 1.8d.
[automake.git] / ChangeLog
blob8511cc7b87652ae427c2236f6c160443aa3abb66
1 2004-07-17  Alexandre Duret-Lutz  <adl@gnu.org>
3         * configure.ac, NEWS: Bump version to 1.8d.
5         * lib/config-ml.in, lib/config.sub, lib/config.guess, lib/texinfo.tex:
6         New upstream versions.
8         * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.html,
9         ?!GENERIC?%DEST_PREFIX%.html): Use $(X), not ${X}.
11         * tests/installdir.test: installdirs-local should appear three times,
12         since the change from 2004-07-11 will make it PHONY.
14         * lib/am/distdir.am (distdir): Always use $(DIST_SUBDIRS) now
15         that it is always defined.  This is less confusing for users
16         reading the generated Makefiles.
17         * automake.in (handle_dist): Do not substitute DIST_SUBDIR_NAME.
19         * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.html,
20         ?!GENERIC?%DEST_PREFIX%.html): Output .htp, and then rename to .html
21         on success.  In case the target is a directory, this ensures its
22         time stamp is updated and the no files are left over inside.
23         * tests/txinfo21.test: Augment to test missing timestamp update
24         reported by Akim Demaille.
26         * doc/automake.texi (Top level): Rename as ...
27         (Directories): ... this, and split into ...
28         (Subdirectories, Conditional Subdirectories): ... these.
29         (Subdirectories): Illustrate the use of `.'.
30         (Conditional Subdirectories): Describe SUBDIRS and DIST_SUBDIRS
31         before the example.  Append a discussion about non-configured
32         conditional directories.
33         (Alternative): Move as a child of Directories.
34         (Subpackages): New section.
35         (Dist): Adjust links to Subdirectories, a Subpackages.
36         (Third-Party Makefiles): Link to Conditional Subdirectories.
38 2004-07-14  Alexandre Duret-Lutz  <adl@gnu.org>
40         * automake.in (target_hook): Accept %transform as last argument.
41         (handle_single_transform): Pass %transform to target_hook.
42         (handle_source_transform): Define DIST_SOURCE to tell whether
43         a the source of a file is distributed or not.
44         (lang_yacc_target_hook): Check DIST_SOURCE, and do not distribute
45         the generated header if the .y source is not distributed.
46         * tests/pr204.test: Use AM_YFLAGS = -d and make sure generated
47         headers are not distributed.
49 2004-07-12  Simon Josefsson  <jas@extundo.com>  (tiny change)
51         * doc/automake.texi (Options): Improve ustar file name length
52         discussion.  Reference tar manual.
54 2004-07-12  Ray Simard  <rhs.techlists@sylvan-glade.com>  (tiny change)
56         * lib/Automake/Variable.pm (define): Fix precondition check.
58 2004-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
60         For PR automake/428:
61         Support for conditionally defined -hook and -local rules.
62         * automake.in (user_phony_rule): New function.
63         (handle_dist, handle_install, handle_all, do_check_merge_target,
64         handle_factored_dependencies): Use user_phony_rule before
65         adding a user -hook or -local rule as a dependency to ensure
66         it is always defined an phony.
67         * tests/cond37.test, tests/condhook.test: New files.
68         * tests/Makefile.am (TESTS): Add them.
69         Report from Simon Josefsson and Nik A. Melchior.
71 2004-07-05  Paul Eggert  <eggert@cs.ucla.edu>
73         * doc/automake.texi (Install): Warn that you should create
74         /tmp/staging before installing into it, to avoid security problems.
75         * lib/install-sh: Remove support for -b= and -t= options; this
76         has been moribund for a decade.
77         Add support for -t and -T options (new in coreutils install).
78         -c option now does nothing (the default is to copy), for
79         compatibility with BSD and coreutils 'install'.
80         Fix usage message; it referred to nonexistent variables.
81         Don't assume 'lasterr' is unset in environment.
82         * tests/instsh2.test: Don't assume that install-sh without -c
83         moves (it now copies).  Add tests for new -t and -T options.
85 2004-06-16  Alexandre Duret-Lutz  <adl@gnu.org>
87         For Debian Bug#254372:
88         * doc/automake.texi (Invoking aclocal): Rewrite the paragraph
89         explaining m4_include is used for relative files.
91 2004-06-10  Alexandre Duret-Lutz  <adl@gnu.org>
93         For Debian Bug #251820:
94         * aclocal.in (scan_file): Keep track of the location where each
95         file is included, and display it when reporting a missing file.
96         Pass this location to scan_file as a second argument.
97         (scan_m4_files): Adjust calls to scan_file.
98         * tests/acloca14.test: Add a test for this diagnostic.
100 2004-06-07  Alexandre Duret-Lutz  <adl@gnu.org>
102         * m4/tar.m4 (_AM_PROG_TAR): Split the definition of $_am_tools
103         so it works with Solaris and Tru64 /bin/sh.
104         Report from Nicolas Joly.
106 2004-06-06  Alexandre Duret-Lutz  <adl@gnu.org>
108         * m4/tar.m4 (_AM_PROG_TAR): Introduce $_am_tools to work around a
109         bug in NetBSD /bin/sh.
110         Report from Nicolas Joly.
112 2004-06-03  Alexandre Duret-Lutz  <adl@gnu.org>
114         * tests/defs.in (required=icc): Use `-V -help' instead of
115         `-V -dryrun'.  icc 8.0 fails on the latter.
116         * tests/depcomp5.test: Require depmode=icc for icc 7.x, and
117         depmod=gcc otherwise.
118         Report from Ralf Wildenhues.
120         * lib/am/clean.am (distclean-generic): Do no
121         `rm -f $(CONFIG_CLEAN_FILES)' if `$(CONFIG_CLEAN_FILES)' is empty.
122         Report from Nicolas Joly.
124 2004-05-31  Alexandre Duret-Lutz  <adl@gnu.org>
126         * NEWS: Make clearer that we do not output partial Makefile.ins on
127         error.
128         Suggested by Akim Demaille.
130         * lib/depcomp (tru64) [libtool]: Use $dir$base.o.d instead
131         of $dir.libs/$base.o.d.  Libtool 1.5 causes both to be output,
132         and we will clean the second automatically during distclean.
133         Using the latter and leaving the former as we did before cause
134         "files left in build directory" failures during distcheck.
135         Suggested by Nicolas Joly.
137         * doc/automake.texi (Built sources example): Explain what
138         nodist_foo_SOURCES is (not) useful to, and use it in all the
139         examples.
140         (Tags): Mention nodist_noinst_HEADERS and nodist_prog_SOURCES.
141         Suggested by Akim Demaille.
143 2004-05-23  Alexandre Duret-Lutz  <adl@gnu.org>
145         * configure.ac, NEWS: Bump version to 1.8c.
147         * configure.ac, NEWS: Bump version to 1.8b.
149         * m4/tar.m4 (_AM_PROG_TAR) <cpio>: Specify -o and -i option first,
150         by POSIX; and use option -d in am_untar.
152         * tests/defs.in (PATH): Export it.
154         * lib/am/multilib.am: Add $(MAKE) comments to multido and
155         multiclean lines, to enable parallel make.  Based on a patch
156         by Alexandre Oliva applied to newlib on 2003-10-15.
158 2004-05-22  Alexandre Duret-Lutz  <adl@gnu.org>
160         * automake.in (scan_autoconf_traces): Trace for LT_SUPPORTED_TAG
161         instead of AC_LIBTOOL_TAGS, since that how CVS Libtool has been
162         changed.
163         * tests/libtool3.test: Do not grep for --tag=CC, since CVS
164         Libtool (unlike Libtool 1.5) does not has any CC tag.
166         * tests/tar2.test: Skip the test if no pax archiver were found.
168         * NEWS: Sync with branch-1-8, and reorganize current entry.
170         * automake.in (handle_libraries): Make the diagnostic about
171         non standard libraries a warning in foreign packages.  This
172         is already the case in handle_ltlibraries.
173         (handle_libraries, handle_ltlibraries): Suggest a standard
174         library name in the diagnostic, to help newcomers.
175         * tests/stdlib.test, tests/stdlib2.test: Check for these
176         suggestions.
178         Check directory names for unportable names.  Shaking the code
179         to check this also led to the removal of the no-"/"-in-SUBDIRS
180         restriction, and a fix to _do_recursive_traversal.
182         * automake.in (check_directory): New function extracted from
183         handle_subdirs, and augmented to check for reserved W32/DOS name.
184         (check_directories_in_var): New function.
185         (handle_subdirs): Call check_directories_in_var.  Doing so also
186         suppress the restriction that SUBDIRS should not contain slashes.
187         (scan_autoconf_traces) <AC_CONFIG_AUX_DIR>: Call check_directory
188         to ensure the argument exists and is safe.
189         * doc/automake.texi (Top level): Do not say that src/subdir
190         cannot be put in SUBDIRS.
191         (Dist): Mention that distdir and top_distdir can be absolute.
192         * lib/Automake/Variable.pm (_do_recursive_traversal) Support
193         undefined $fun_collect, and fix two bugs introduced with
194         skip_ac_subst on 2004-03-07.
195         * lib/am/distdir.am (distdir): Use absolute distdir and
196         top_distdir when recursing, because we can no longer prepend only
197         `..' in case of SUBDIRS with `/'.
198         * tests/auxdir4.test, tests/subdir9.test: New files.
199         * tests/Makefile.am (TESTS): Add auxdir4.test.
200         * tests/cond2.test, tests/subdir7.test: Augment to check location
201         in diagnostics.
203 2004-05-21  Eric Blake  <ebb9@byu.net>  (tiny changes)
205         * tests/txinfo22.test (AC_CONFIG_AUX_DIR): Use aux1, not aux, for
206         cygwin compatibility.
207         * tests/yacc6.test (AC_CONFIG_AUX_DIR): Likewise.
209         * tests/conflnk3.test: Isolate checking for working `test -e' into
210         a subshell, to skip this test on broken /bin/sh of solaris.
212 2004-05-17  Alexandre Duret-Lutz  <adl@gnu.org>
214         * m4/cond.m4 (AM_CONDITIONAL): Double-quote diagnostic.
215         * tests/condd.test: Define a macro with the same name as a
216         conditional.
217         * tests/pr220.test: Modernize, and make sure the diagnostics
218         contains the macro name.
219         Report from Volker Boerchers.
221 2004-05-16  Alexandre Duret-Lutz  <adl@gnu.org>
223         * lib/texinfo.tex: New upstream version.
225 2004-05-15  Alexandre Duret-Lutz  <adl@gnu.org>
227         * automake.in (handle_dist): Always define DIST_SUBDIRS, even when
228         the no-dist or cygnus options are used.
229         * tests/clean2.test: New file.
230         * tests/Makefile.am (TESTS): Add clean2.test.
231         Report from Daniel Jacobowitz.
233         * aclocal.in (add_macro): Do not error out on undefined required
234         macros.  We are not sure they are really used, and Autoconf
235         already diagnoses them.
236         (scan_configure_dep): Diagnose missing AM_ macros as warnings rather
237         than errors.
238         * tests/aclocal3.test, tests/ammissing.test: Adjust to expect a
239         warning instead of an error.
240         * tests/aclocal8.test: AC_REQUIRE an undefined macro in an unused
241         macro, and ensure aclocal works anyway.
242         * tests/acloca17.test: New file.
243         * tests/error.test: Delete, superseded by tests/acloca17.test.
244         * tests/Makefile.am (TESTS): Add acloca17.test and remove error.test.
245         Report from Jim Meyering.
247         * lib/am/texibuild.am (?!GENERIC_INFO?%DEST_INFO_PREFIX%%DEST_SUFFIX%):
248         Fold a few lines to reduce the output by 5 lines.
249         Suggested by Karl Berry.
251         * automake.in (parse_arguments, MAIN): Give more precise
252         diagnostics when no input file is found.
253         * tests/output5.test: Adjust.
254         Suggested by Jens Petersen.
256 2004-05-14  Alexandre Duret-Lutz  <adl@gnu.org>
258         * lib/am/libs.am (AR, ARFLAGS): Move these definition ...
259         * automake.in (handle_libraries): ... here, so that they are
260         output even for EXTRA_LIBRARIES.
261         * tests/ar2.test: New file.
262         * tests/Makefile.am (TESTS): Add it.
263         Report from Kevin Ryde.
265 2004-05-13  Alexandre Duret-Lutz  <adl@gnu.org>
267         * automake.in (generate_makefile): Do not output Makefile.in on
268         errors.
269         * tests/werror2.test: New file.
270         * tests/Makefile.am (TESTS): Add werror2.test.
271         * tests/substtarg.test, tests/cond36.test, tests/backsl4.test:
272         Adjust to run automake with -Wno-error when the output is expected
273         in spite of the error.
274         Report from Harlan Stenn.
276         * doc/automake.texi (Program and Library Variables): Remove
277         doubled word in footnote.
279         * automake.in (handle_source_transform): Also check for a
280         $(srcdir)/old_source rule when computing the default source name.
281         Propagate this $(srcdir) prefix in Automake variables.
282         * tests/ltlibsrc.test (noinst_LTLIBRARIES): Explicitly refer to
283         $(srcdir)/zoo_d_old2_la.c.  This fixes another failure with BSD Make.
285 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
287         * Makefile.am (fetch): Work even with FreeBSD "make", which
288         uses sh -e and thus errors-out if a simple-command fails.
289         * lib/am/check.am (check-TESTS): Likewise.
290         * lib/am/ltlib.am (clean-%DIR%LTLIBRARIES): Likewise.
291         * lib/am/tags.am (TAGS): Likewise.
293 2004-05-13  Alexandre Duret-Lutz  <adl@gnu.org>
295         * tests/lex3.test, tests/yacc6.test: Require GNU Make.
296         Fixing these for BSD Make requires invasive changes (lexers and
297         parsers must be built into $srcdir, and--most annoyingly--all
298         references to parse.h must be changed to $(srcdir)/parse.h).
299         Report from Mark D. Baushke.
301 2004-05-10  Alexandre Duret-Lutz  <adl@gnu.org>
303         * tests/defs.in (GNUmake): Grep for GNU to parry FreeBSD make.
304         Report from Mark D. Baushke.
306 2004-04-25  Alexandre Duret-Lutz  <adl@gnu.org>
308         * lib/texinfo.tex: New upstream version.
310         * lib/depcomp (tru64): Clarify comments.  Thanks to Nicolas Joly.
312         * doc/automake.texi (Headers): Revamp.
314 2004-04-24  Alexandre Duret-Lutz  <adl@gnu.org>
316         * automake.in (check_typos): Clarify the diagnostic.
317         * tests/warnopts.test: Adjust.
319         * lib/Automake/VarDef.pm (append): Turn VAR_ASIS variables into
320         VAR_PRETTY variables to work around make implementation with
321         limited line length, such as OSF1/Tru64 make.
322         * tests/longline.test: New file.
323         * tests/Makefile.am (TESTS): Add it.
324         * tests/pluseq3.test, tests/pluseq8.test: Adjust.
325         Report from Simon Josefsson.
327         * lib/am/tags.am (TAGS): Pass `.' to Exuberant Ctags if
328         --etags-include is used but no other files are supplied, so it
329         creates the TAGS file anyway.
330         Report from Akim Demaille.
332         * lib/depcomp (tru64) [libtool]: Nicolas Joly reported on
333         2002-06-12 that dependencies were output in $dir.libs/$base.lo.d.
334         Teun Burgers reported on 2004-03-30 they were in
335         $dir.libs/$base.o.d.  Try both.
337 2004-04-23  Alexandre Duret-Lutz  <adl@gnu.org>
339         For PR automake/414:
340         Introduce option filename-length-max=99.
341         * doc/automake.texi (Options): Document it.
342         * configure.ac (AM_INIT_AUTOMAKE): Use it.
343         * lib/Automake/Options.pm (_process_option_list): Recognize it.
344         * automake.in (handle_dist): Set FILENAME_FILTER.
345         * lib/am/distdir.am (distdir) [FILENAME_FILTER]: Diagnose long
346         filenames.
347         * tests/fn99.test: New file.
348         * tests/Makefile.am (TESTS): Add fn99.test.
350 2004-04-20  Alexandre Duret-Lutz  <adl@gnu.org>
352         For PR automake/414:
353         Introduce options tar-v7, tar-ustar, and tar-pax to select
354         tar format.
355         * doc/automake.texi (Options): Document them.
356         * lib/Automake/Options.pm (_process_option_list): Process
357         these new options.
358         * lib/am/distdir.am (dist-gzip, dist-bzip2, dist-tarZ, dist,
359         distcheck): Adjust to use am__tar and am__untar.
360         * m4/tar.m4: New file.
361         * m4/Makefile.am (dist_m4data_DATA): Add tar.m4.
362         * m4/init.m4 (AM_INIT_AUTOMAKE): Support the new options
363         and call _AM_PROG_TAR.
364         * tests/tar.test, tests/tar2.test, tests/tar3.test: New files.
365         * tests/Makefile.am (TESTS): Add them.
367 2004-04-18  Alexandre Duret-Lutz  <adl@gnu.org>
369         * lib/am/distdir.am (distcheck): Typo in shar decompression.
371         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
372         versions.
374 2004-04-17  Alexandre Duret-Lutz  <adl@gnu.org>
376         Fix PR automake/49:
377         * automake.in (scan_autoconf_traces) <AC_CONFIG_AUX_DIR>: Diagnose
378         calls to AC_CONFIG_AUX_DIR followings calls to AM_INIT_AUTOMAKE.
379         * tests/auxdir.test, tests/auxdir2.test, tests/lex5.test,
380         tests/mdate3.test, tests/multlib.test, tests/reqd2.test,
381         tests/symlink.test, tests/txinfo8.test, tests/txinfo22.test,
382         tests/yacc6.test, tests/yacc8.test: Fix to call AC_CONFIG_AUX_DIR
383         before AM_INIT_AUTOMAKE.
384         * tests/auxdir3.test: New file (exercise this diagnostic).
385         * tests/Makefile.am (TESTS): Add auxdir3.test.
387 2004-04-15  Alexandre Duret-Lutz  <adl@gnu.org>
389         * aclocal.in (%map_traced_defs): New variable.
390         (scan_m4_files): Normalize filenames.
391         (trace_used_macros): Trace for AC_DEFUN and AU_DEFUN, also
392         ask for the filename and the first argument.  Populate
393         %map_traced_defs.
394         (write_aclocal): Use $map_traced_defs to filter out unused
395         definitions.
396         * tests/acloca15.test: New file.
397         * tests/Makefile.am (TESTS): Add acloca15.test.
399 2004-04-12  Alexandre Duret-Lutz  <adl@gnu.org>
401         * automake.in ($automake_needs_to_reprocess_all_files): Remove.
402         ($automake_will_process_aux_dir): New variable.
403         (scan_autoconf_traces): Reorder @input_files so that the Makefile
404         that distributes aux files is processed last.  This way we do not
405         have to process all files twice using
406         $automake_will_process_aux_dir.
407         (require_file_internal): Suggest a full run of automake when
408         appropriate.
409         (MAIN): Remove the loop on $automake_needs_to_reprocess_all_files.
410         * tests/distcom7.test: New file.
411         * tests/reqd2.test: Do not check for the "running more than two"
412         message.
413         * tests/Makefile.am (TESTS): Add distcom7.test.
415         * automake.in (@config_aux_path, $config_aux_dir): Rename as ...
416         ($config_aux_dir, $am_config_aux_dir): ... these.
417         ($config_aux_dir_set_in_configure_in): Rename as ...
418         ($config_aux_dir_set_in_configure_ac): ... this.
419         (%require_file_found): Rename as ...
420         (%required_file_not_found): ... this.
421         (handle_languages, handle_texinfo_helper, handle_dist,
422         handle_configure, handle_emacs_lisp, handle_python,
423         scan_autoconf_traces, yacc_lex_finish_helper): Adjust to new names.
424         (scan_autoconf_traces): Call locate_aux_dir.
425         (locate_aux_dir): New function.
426         (@require_file_paths): Remove, not used anymore.
427         (require_file_internal): Look files in only one directory (instead
428         of @require_file_internal) passed in argument.
429         (require_file, require_conf_file): Pass the destination directory
430         to require_file_internal.
432         Fix for PR automake/416:
433         * m4/depend.m4 (_AM_DEPENDENCIES): Catch `not supported' ICC 8.0
434         remarks.
435         From Peter Seiderer.
437 2004-04-10  Andreas Buening  <andreas.buening@nexgo.de>
439         * aclocal.in, automake.in, configure.ac, Makefile.am,
440         tests/aclocal.in, tests/automake.in, tests/defs.in:
441         Use PATH_SEPARATOR from autoconf instead of ':'.
443 2004-04-09  Alexandre Duret-Lutz  <adl@gnu.org>
445         * automake.in (handle_lib_objects): Pass the condition of
446         the variable definition to handle_LIBOBJS and handle_ALLOCA,
447         not the aggregated conditions.
448         * tests/Makefile.am (TESTS): Add libobj14.test.
449         * tests/libobj14.test: New file.
450         Report from Bill Davidson.
452 2004-04-02  Mike Nolta  <mike@nolta.net>
454         Better support for Fortran 9x.
455         * automake.in: Add "fc" and "ppfc" languages for Fortran 9x.
456         * doc/automake.texi (Fortran 9x Support): New section.
457         * lib/Automake/Variable.pm (%_ac_macro_for_var): Add AC_PROG_FC.
458         * tests/compile_f90_c_cxx.test: New file.
459         * tests/ext.test: Add AC_PROG_FC.
460         * tests/f90only.test: New file.
461         * tests/link_f90_only.test: New file.
462         * tests/Makefile.am (TESTS): Add new tests.
464 2004-04-01  Paul Eggert  <eggert@twinsun.com>
466         * lib/install-sh: If "mv -f" works, use it, and fall back to
467         the old "test -f" + "rm -f" + "mv" method only if "mv -f" does
468         not work.  This improves performance in the usual case where
469         "mv -f" works.  It also lets us install the "mv" command
470         without worrying about a small window where "mv" does not
471         exist (this problem was reported by Raul Nunez de Arenas
472         Coronado).
474 2004-03-26  Alexandre Duret-Lutz  <adl@gnu.org>
476         * m4/python.m4 (AM_PATH_PYTHON): Make sure am_display_PYTHON is
477         set when $PYTHON has been set by the user.
478         From Esben Haabendal Soerensen.
480 2004-03-22  Alexandre Duret-Lutz  <adl@gnu.org>
482         * doc/automake.texi (Default _SOURCES): Typo.
483         (true): Correct _'s placement in example.
484         Report from Stepan Kasal.
486 2004-03-19  Alexandre Duret-Lutz  <adl@gnu.org>
488         Overriding JAVAROOT is legitimate, do not warn about it.
489         * lib/Automake/Variable.pm (%_silent_variable_override): Add JAVAROOT.
490         * tests/java2.test: Run automake without -Wno-override.
491         Report from Simon Josefsson.
493 2004-03-14  Alexandre Duret-Lutz  <adl@gnu.org>
495         * automake.in (handle_texinfo_helper): Typos in comment.
497 2004-03-07  Alexandre Duret-Lutz  <adl@gnu.org>
499         * lib/config.guess: New upstream version.
501         Fix for PR automake/285:
502         * automake.in (handle_ltlibraries): Keep track of installation
503         directories for each condition, then define a $(am_TARGET_rpath)
504         variable to hold the -rpath flags of Libtool libraries conditionally
505         installed in different directories.
506         * lib/Automake/DisjConditions.pm (merge): New function.
507         * tests/libtool6.test: Adjust.
508         * tests/libtool8.test: New file.
509         * tests/Makefile.am (TEST): Add libtool8.test.
511         * lib/Automake/Variable.pm (traverse_recursively,
512         _do_recursive_traversal): Honor the skip_ac_subst option.
513         * automake.in (handle_dist): Use skip_ac_subst.
515 2004-02-29  Alexandre Duret-Lutz  <adl@gnu.org>
517         * Makefile.am (cvs-release): Upload to ~ftp/pub/automake, not
518         ~ftp/automake.
519         * lib/gnupload (Example): Update example.
521         * lib/config-ml.in, lib/config.guess, lib/config.sub,
522         lib/texinfo.tex: New upstream versions.
524         * m4/depend.m4 (_AM_DEPENDENCIES): Use `touch' rather than `: >'
525         to create numbered dependencies.  This fixes a portability issue
526         when CONFIG_SHELL is forced to /bin/sh on Solaris 8.
527         Reported by Mark Phillips.
529         * automake.in (lang_yacc_target_hook): Use Automake::Rule::define
530         so that rules for the same headers are not output twice.
531         * lib/Automake/Variable.pm (value_as_list_recursive): Do not
532         call `return' inside `map'.
533         * tests/cond30.test: Make sure `a.c' and `b.c' both appear
534         in the Makefile.in.
535         * tests/cond35.test, tests/cond36.test: New files.
536         * tests/Makefile.am (TESTS): Add cond35.test and cond36.test.
537         Report from Roman Fietze.
539         Fix for PR/413:
540         * lib/am/distdir.am (distcheck): Create $dc_destdir with `umask
541         077 && mkdir' instead of `$(mkdir_p)'.  This prevents possible
542         symlink attacks reported by Stefan Nordhausen.
544 2004-02-16  Alexandre Duret-Lutz  <adl@gnu.org>
546         * doc/automake.texi (Multiple Outputs): More text, based on
547         comments from Eric Siegerman, Tim Van Holder, and Oren Ben-Kiki.
549 2004-02-15  Alexandre Duret-Lutz  <adl@gnu.org>
551         * m4/mkdirp.m4: Use `mkdir -p' only with GNU mkdir, because
552         Solaris 8's mkdir is not thread-safe.
553         * lib/mkinstalldirs: Likewise.
554         * lib/install-sh: Abort when mkdir fails to create a directory.
555         Report from Nathanael Nerode.
557 2004-02-07  Alexandre Duret-Lutz  <adl@gnu.org>
559         * aclocal.in (rel2abs): New function.
560         (scan_configure_dep): Use rel2abs instead of File::Spec->rel2abs,
561         the later does was introduced in Perl 5.6 so using it breaks with
562         Perl 5.005.
563         Report from Werner John.
565 2004-02-03  Alexandre Duret-Lutz  <adl@gnu.org>
567         * doc/automake.texi (Future of aclocal): Make clearer that
568         it's ok to install macros into /usr/share/aclocal/.
570 2004-02-01  Alexandre Duret-Lutz  <adl@gnu.org>
572         * tests/lisp.test: Delete (pointless).
573         * tests/Makefile.am (TESTS): Remove lisp.test.
575         * lib/Automake/Variable.pm (transform_variable_recursively):
576         Define rewritten variables in all conditions not *covered* by user
577         definitions, not simply in conditions without a previous
578         definition.
579         * tests/cond34.test: New file.
580         * tests/Makefile.am (TESTS): Add cond34.test.
581         Report from Elena A. Vengerova
583         * doc/automake.texi (Multiple Outputs): Typo.
585         * doc/automake.texi (Emacs Lisp): Typos.
587         Support for conditional _LISP.
588         * automake.in (handle_emacs_lisp): Define $(ELCFILES) from LISP, not
589         from $(am__ELCFILES).
590         * lib/am/lisp.am (elc-stamp): Use $(LISP) instead of $(am__ELFILES).
591         * tests/lisp6.test: New file.
592         * tests/Makefile.am (TESTS): Add it.
594         * automake.in (handle_emacs_lisp): Define $(ELCFILES) as
595         $(am__ELCFILES), and always push it on @all.  Do not mention
596         elc-stamp.
597         * lib/am/lisp.am (.el.elc): Rewrite as ...
598         ($(am__ELCFILES)): ... this, and depend on elc-stamp.
599         (elc-stamp): Make sure elc-stamp is older that all .elc files, as
600         explained in the manual entry below.
602         * doc/automake.texi (Multiple Outputs): New node.
604 2004-01-31  Alexandre Duret-Lutz  <adl@gnu.org>
606         * m4/regex.m4: Do not AC_SUBST(LIBOBJS), and quote most arguments.
607         * tests/regex.test: New file.
608         * tests/Makefile.am (TESTS): Add regex.test.
610 2004-01-28  Alexandre Duret-Lutz  <adl@gnu.org>
612         * Makefile.am (maintainer-check): Check for unquoted $(DESTDIR) uses.
613         * lib/am/data.am, lib/am/distdir.am, lib/am/java.am, lib/am/libs.am,
614         lib/am/lisp.am, lib/am/ltlib.am, lib/am/mans.am, lib/am/progs.am,
615         lib/am/python.am, lib/am/scripts.am, lib/am/texinfos.am: Quote
616         installation paths in install, uninstall, and installcheck rules,
617         as well as in am__installdirs variables.  This is for the sake
618         of paths containing spaces.
619         * lib/am/install.am (installdirs-am, installdirs): Do not try
620         to create "" directories.
621         * test/instspc.test: New file.
622         * test/Makefile.am (TESTS): Add instspc.test.
623         Report from James Amundson.
625         * doc/automake.texi (Not Enough, Third-Party Makefiles): New nodes.
626         (Extending): Make it a subsection of Not Enough.
628         * lib/gnupload (GPG): Use an absolute path.  Suggestion from Gary
629         V. Vaughan.
630         (passphrase): Unset it this variable before using it, in case it
631         was exported.  Report from Scott James Remnant.
633 2004-01-25  Alexandre Duret-Lutz  <adl@gnu.org>
635         * lib/gnupload (usage): Fix example.
636         * Makefile.am (cvs-release): Fix call to gnupload.
637         From Jim Meyering.
639 2004-01-24  Alexandre Duret-Lutz  <adl@gnu.org>
641         * lib/gnupload: New script.
642         * lib/Makefile.am (EXTRA_DIST): Distribute gnupload.
643         * Makefile.am (cvs-release): New target.
645 2004-01-23  Alexandre Duret-Lutz  <adl@gnu.org>
647         * lib/am/python.am (uninstall-%DIR%PYTHON): Remove extra `;'s.
648         Fix python10.test.
650         * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Use `s/xx//p'
651         instead of `/xx/ s///p'; the latter fails when GNU sed is run with
652         POSIXLY_CORRECT.  Also strip superfluous -e.
653         Report from Miloslav Trmac.
655 2004-01-22  Alexandre Duret-Lutz  <adl@gnu.org>
657         * tests/lex5.test: Sleep before calling AUTOMAKE the second time,
658         this fixes a spurious failure reported by Andreas Schwab.  Also
659         make sure ylwrap is not installed unless needed, and exercise
660         --no-force.
662 2004-01-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
664         * doc/automake.texi (Dist): Document limitations of distcheck-hook
665         and DISTCHECK_CONFIGURE_FLAGS with regard to subdirs and
666         subpackages.
668 2004-01-20  Alexandre Duret-Lutz  <adl@gnu.org>
670         * doc/automake.texi (Upgrading): New node.
672 2004-01-20  Gary V. Vaughan  <gary@gnu.org>
674         * automake.in (scan_autoconf_traces): AC_LIBTOOL_TAGS can be
675         correctly called without arguments as evidenced by the libtool
676         demo directories.
678 2004-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
680         * tests/conflnk3.test: Skip if `test -e' does not work.
681         Report from Lars Hecking.
683 2004-01-13  Jim Meyering  <jim@meyering.net>
685         * lib/install-sh: Change `\n \t' to `\n\t ' in `defaultIFS'
686         assignment.  Remove spurious SPACEs before TABs.
688 2004-01-12  Alexandre Duret-Lutz  <adl@gnu.org>
690         * lib/py-compile: Check input files after option processing.
691         Ensure --basedir has an argument.
692         * lib/am/python.am (install-%DIR%PYTHON): Do not run py-compile
693         if nothing was installed.
694         * tests/python10.test: New file.
695         * tests/Makefile.am (TESTS): Add python10.test.
696         Suggested by Sander Niemeijer.
698         * tests/txinfo29.test: Remove autom4te.cache.
699         Report from Greg Schafer.
701         * lib/install-sh: Do not use "$@" in a context where it may be empty,
702         for the sake of OSF1/Tru64's shell.
703         Report from He Li.
705 2004-01-11  Alexandre Duret-Lutz  <adl@gnu.org>
707         * lib/config.sub, lib/config.guess, lib/texinfo.tex: New upstream
708         versions.
710         * m4/as.m4, m4/depend.m4, m4/maintainer.m4, m4/multi.m4: Update
711         copyright years and serial.
713         * m4/python.m4 (_AM_PYTHON_INTERPRETER_LIST): Add python2.4.
715 2004-01-10  Peter Eisentraut  <peter_e@gmx.net>  (tiny change)
717         * m4/as.m4 (AM_PROG_AS): Format and align help string more
718         consistently.
719         * m4/depend.m4 (AM_DEP_TRACK): Likewise.
720         * m4/lispdir.m4 (AM_PATH_LISPDIR): Likewise.
721         * m4/maintainer.m4 (AM_MAINTAINER_MODE): Likewise.
722         * m4/multi.m4 (AM_ENABLE_MULTILIB): Likewise.
724 2004-01-10  Paul Eggert  <eggert@twinsun.com>
726         * m4/lispdir.m4 (AM_PATH_LISPDIR): Don't use \? in sed regular
727         expressions; it doesn't conform to POSIX.
729 2004-01-10  Alexandre Duret-Lutz  <adl@gnu.org>
731         * automake.in (shadow_unconditionally): New function...
732         (handle_source_transform): ... extracted from here.
733         (am_install_var): Use shadow_unconditionally to define %DISTVAR%.
734         * lib/am/data.am, lib/am/java.am, lib/am/lisp.am, lib/am/python.am,
735         lib/am/script.am: Add %DISTVAR% to DIST_COMMON.
736         * tests/cond33.test: Make sure all conditional files are distributed.
737         Report from Ralf Corsepius.
739 2004-01-08  Alexandre Duret-Lutz  <adl@gnu.org>
741         * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Append `.' to $(mkdir_p).
742         * lib/install-sh: Accept `install-sh -d' with 0..n arguments,
743         as well as `install-sh sources... dest' with multiple sources.
744         * tests/cond33.test: New file.
745         * tests/instsh2.test: Add more checks for install-sh.
746         * tests/transform.test: Test for installdirs.
747         * tests/Makefile.am (TESTS): Add cond33.test
748         Report from Ralf Corsepius.
750         * automake.in (handle_configure): Skip AC_CONFIG_LINKS items which
751         do not look like DEST:SRC.
752         * tests/conflnk3.test: Check for AC_CONFIG_LINKS($computed).
754 2004-01-07  Alexandre Duret-Lutz  <adl@gnu.org>
756         Fix for PR automake/289:
757         * automake.in (Automake::Struct::libtool_tag): New attribute.  Define
758         it for the language that have a Libtool tag.
759         (%libtool_tags): New variable.
760         (handle_languages, define_compiler_variable)
761         (define_linker_variable): Pass --tag=XXX to libtool if supported.
762         (scan_autoconf_traces): Scan for _LT_AC_TAGCONFIG and AC_LIBTOOL_TAGS.
763         * tests/libtool3.test, tests/subobj9.test: Check that --tag=XXX is
764         output.
766 2003-01-07  Eric Sunshine  <sunshine@sunshineco.com>  (tiny change)
768         * lib/am/configure.am (am__CONFIG_DISTCLEAN_FILES): Add
769         config.status.lineno.
771 2004-01-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
773         * doc/automake.texi (Rebuilding): Typo.
775 2004-01-07  Alexandre Duret-Lutz  <adl@gnu.org>
777         * lib/am/Makefile.am (dist_am_DATA): Really add inst-vars.am.
779 2004-01-06  Alexandre Duret-Lutz  <adl@gnu.org>
781         * THANKS: Add Bruce Korb.
783 2004-01-05  Alexandre Duret-Lutz  <adl@gnu.org>
785         Mimic Paul Eggert's changes to Autoconf.
786         * Makefile.am (automake, aclocal): Use `chmod a-w', not `chmod -w'.
787         * lib/Automake/Makefile.am (Config.pm): Likewise.
788         * m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Likewise.
790         * lib/am/inst-vars.am: New file, define am__vpath_adj_setup,
791         am__vpath_adj, and am__strip_dir.
792         * lib/am/Makefile.am (dist_am_DATA): Add inst-vars.am.
793         * lib/am/data.am, lib/am/lisp.am, lib/am/python.am,
794         lib/am/scripts.am: Include inst-vars.am, and use $(am__vpath_adj),
795         $(am__vpath_adj_setup), and $(am__strip_dir) in install and
796         uninstall rules.  This fixes installation of nobase_ files in
797         VPATH setups with Sun and OSF1/Tru64 Make.
798         * lib/am/libs.am, lib/am/ltlib.am: Include inst-vars.am, and use
799         $(am__strip_dir) to simplify install and uninstall rules.
800         * tests/nobase.test: Augment to check installation from VPATH builds.
802         * automake.in (%transformed_files): New variable.
803         (initialize_per_input): Reset it.
804         (make_paragraphs): Fill %transformed_files, and define %FIRST%
805         each time a file is transformed for the first time.
806         (handle_configure): Do not define %FIRST_CONFIG_HIN%.
807         (am_install_var): Do not define %FIRST%.
808         * lib/am/remake-hdr.am: Use %?FIRST% instead of %?FIRST_CONFIG_HIN%.
810 2004-01-04  Alexandre Duret-Lutz  <adl@gnu.org>
812         * lib/texinfo.tex: New upstream version.
814         * m4/mkdirp.m4: Do not use `-m 0755'.  This overrides special bits
815         and break setups where 775 directories are expected.  Just obey
816         umask as we did in the past.
817         Report from Harlan Stenn.
819 2004-01-03  Alexandre Duret-Lutz  <adl@gnu.org>
821         * automake.in (scan_texinfo_file): Do not compare $outfile to ''
822         as $outfile might not be defined at all.
824         * lib/Automake/Variable.pm (define): Rework the way we check
825         Automake variable definition.  Ensure consistent :=/+=/=
826         definitions only for variables that have been and are defined by
827         Automake, and make it an internal error.  Ignore Automake
828         attempts to touch a user variable, even with += assignments.
829         * tests/txinfo29.test: New file.
830         * tests/Makefile.am (TESTS): Add txinfo29.test.
831         Reported by Bruce Korb.
833 2004-01-02  Tom Tromey  <tromey@redhat.com>
835         * automake.in (handle_source_transform): Don't generate dist
836         variables when no-dist is set.
837         (generate_makefile): Likewise.
838         * tests/nodist3.test: Ensure that DIST_SOURCES is not created,
839         and that dist target does not exist.
840         Reported by Tom Fitzsimmons.
842 2004-01-02  Alexandre Duret-Lutz  <adl@gnu.org>
844         * tests/libtool5.test, tests/ltcond.test, tests/ltcond2.test,
845         * tests/ltconv.test: Run automake with --add-missing, because
846         the CVS version of libtoolize no longer install config.sub and
847         config.guess by default.
849         Fix for PR automake/319:
850         * aclocal.in (scan_m4_files): Scan configure.ac.
851         (trace_used_macros, write_aclocal): Remove configure.ac from the
852         list of files to include.
853         * tests/Makefile.am (TESTS): Add acloca15.test.
854         * tests/acloca15.test: New file.
856         * aclocal.in (%file_includes): New variable.
857         (scan_configure_dep): Compile $m4_include_rx and $ac_require_rx once.
858         (scan_file): Scan for included files, and process these files
859         recursively.  Fill %file_includes and %file_contents.  Return the
860         list of included files, not the contents.
861         (scan_m4_files): Adjust calls to scan_files.
862         (strip_redundant_includes): New function.
863         (trace_used_macros): Call it.
864         (write_aclocal): Likewise.  Also check the mtime of included files.
865         * tests/Makefile.am (TESTS): Add acloca14.test.
866         * tests/acloca14.test: New file.
867         Report from Phil Edwards.
869 2004-01-01  Alexandre Duret-Lutz  <adl@gnu.org>
871         * automake.in (handle_languages): Do not define DEP_FILES.
872         * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Extract included
873         files with $(DEPDIR) in their name instead of DEP_FILES.
874         * tests/depend.test, tests/depend4.test, tests/exsource.test:
875         Adjust.
876         Suggested by Tom Tromey.
878         Do not output .lo rules for programs and static libraries objects,
879         and do not output .o/.obj rules for libtool libraries.  This is
880         about explicit rules only, not inference rules.
881         * automake.in (handle_single_transform_list): Rename as ...
882         (handle_single_transform): ... this.  Take a single file
883         to transform (it was only called this way) and accept a new
884         %transform argument.  Fill %lang_specific_files with list
885         references instead of strings, and append %transform to each
886         of these lists.
887         (define_objects_from_sources, handle_source_transform):
888         Take a %transform argument, and forward it to &handle_single_transform.
889         (handle_languages): Adjust to the new format of
890         %lang_specific_files, and honor its %transform part.
891         (handle_programs, handle_libraries, handle_ltlibraries): Override
892         %NONLIBTOOL% and %LIBTOOL% while calling handle_source_transform.
893         (make_paragraphs): Define %NONLIBTOOL% by default.  Make sure
894         %transform settings override global settings.
895         * lib/am/depend2.am (%OBJ%, %OBJOBJ%): Define only if %NONLIBTOOL%.
896         * tests/libtool3.test: Augment to check Makefile.ins for unneeded
897         rules.
898         Suggested by Thomas Fitzsimmons.
900         * automake.in, aclocal.in: Bump copyright years.
902 2003-12-31  Alexandre Duret-Lutz  <adl@gnu.org>
904         * automake.in (generate_makefile): Update misleading comment.
906         * automake.in (handle_languages): Define %DEPBASE% conditionally
907         on subdir-objects.  Define SUBDIROBJ.  Do not clean *_.c files
908         here ...
909         (lang_c_finish): ... do it here.
910         (handle_single_transform_list): Do not output specific rules for
911         subdir-objects files which are not renamed.  This should reduce
912         the size of Makefiles with lots of subdirectory sources.
913         * lib/depcomp: Simplify computation of dependency output, and use
914         DEPDIR.
915         * lib/am/depend2.am (%EXT%.o, %EXT%.obj, %EXT%.lo): Adjust call
916         to depcomp.  Compute depbase on-the-fly in generic fastdep rules
917         for subdir-objects.
918         * tests/ansi9.test: Do not grep for an explicit rule that
919         we no longer expect.  Really run $MAKE to make sure the chain
920         of rules works.
921         * tests/yacc5.test: Do not grep for an explicit rule that
922         we no longer expect.  Adjust to use set -e.
924 2003-12-27  Alexandre Duret-Lutz  <adl@gnu.org>
926         * automake.in (@common_files): Move configure, configure.ac, and
927         configure.in ...
928         (@common_sometimes): ... here so that these files do not appear
929         twice in DIST_COMMON.
931         * automake.in (maybe_push_required_file): Add $(srcdir) in front
932         a required files outside the current directory or its subdirectories.
933         * lib/am/distdir.am (distdir): Update comment.
934         Report from Nicolas Joly.
936 2003-12-26  Alexandre Duret-Lutz  <adl@gnu.org>
938         * doc/automake.texi (@copying): Do not repeat the version.
939         (Top): Use @insertcopying.  Add a @detailmenu, this works around
940         Emacs 21's inability to lookup indices in sub-nodes (reported
941         by Kevin Ryde).
942         (C++ Support, Assembly Support, Fortran 77 Support, Java Support,
943         Support for Other Languages, Preprocessing Fortran 77, Compiling
944         Fortran 77 Files, Mixing Fortran 77 With C and C++, How the Linker
945         is Chosen): Add missing descriptions in menus.
946         (Fortran 77 and Autoconf): Remove, this node was just saying "use
947         Autoconf 2.53 or greater".
949 2003-12-26  Santiago Vila  <sanvila@unex.es>  (tiny change)
951         * NEWS: s/Gettext 1.12.1/Gettext 0.12.1/
953 2003-12-25  Nicolas Joly  <njoly@pasteur.fr>  (tiny change)
955         * doc/automake.texi (Conditional Sources): Typo.
957 2003-12-25  Alexandre Duret-Lutz  <adl@gnu.org>
959         * lib/Automake/Config.in: Require Exporter.
960         Report from Kevin Ryde (failure with Perl 5.005_03).
962 2003-12-15  Alexandre Duret-Lutz  <adl@gnu.org>
964         * tests/aclocal6.test: Check for autom4te.cache only if it has
965         been created.
966         * tests/maintclean.test: Update comment.
967         Report from Bruno Haible.
969         * tests/txinfo24.test, tests/txinfo25.test, tests/txinfo28.test:
970         Require texi2dvi-o.
971         Report from Václav Haisman.
973 2003-12-10  Alexandre Duret-Lutz  <adl@gnu.org>
975         * configure.ac, NEWS: Bump version to 1.8a.
977         * configure.ac, NEWS: Bump version to 1.8.
979         * lib/texinfo.tex: New upstream version.
981         * Makefile.am (INSTALL): Copy the source from $(srcdir).
983 2003-12-09  Alexandre Duret-Lutz  <adl@gnu.org>
985         * lib/Automake/Rule.pm (define): Remove debugging traces.
986         Report from Akim Demaille.
988 2003-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
989             Alexandre Duret-Lutz  <adl@gnu.org>
991         * Makefile.am (do_subst): Fix the substitution of @configure_input@.
992         (automake, aclocal): Create the output atomically and make it
993         read-only, as done in the Autoconf package.
994         * lib/Automake/Makefile.am (do_subst): Fix the substitution of
995         @configure_input@.
996         (Config.pm): Create the output atomically and make it read-only.
997         * m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Substitute
998         @configure_input@ and make the output read-only.
999         * lib/Automake/Config.in, m4/amversion.in, tests/aclocal.in,
1000         tests/automake.in, tests/defs.in: Add a @configure_input@ line.
1002 2003-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
1004         * doc/automake.texi (Local Macros, CVS): Typos.
1006 2003-12-08  Alexandre Duret-Lutz  <adl@gnu.org>
1008         * lib/Automake/Variable.pm (hook): Use $$ as prototype, not $\&.
1009         Perl 5.6.0 will not accept a reference sub reference for the
1010         latter.
1011         * automake.in (var_SUFFIXES_trigger): Adjust registration via
1012         Automake::Variable::hook.
1013         (handle_texinfo_helper): Make sure `inner_expand => 1' appears
1014         on one line, so that Perl 5.6.0 does not complain about
1015         inner_expand being a bare identifier.
1017 2003-12-05  Alexandre Duret-Lutz  <adl@gnu.org>
1019         * aclocal.in (check_acinclude, scan_file): Output `warning:' in
1020         front of warnings.
1021         Report from Pavel Roskin.
1023 2003-12-04  Alexandre Duret-Lutz  <adl@gnu.org>
1025         * TODO: Remove some old entries.
1027         * doc/automake.texi (Rebuilding): Document CONFIGURE_DEPENDENCIES
1028         and CONFIG_STATUS_DEPENDENCIES.  Move this sections later
1029         in the manual since it's pretty advanced material.
1031         * automake.in ($config_header_location): Remove.  Use
1032         %ac_config_files_location instead.
1033         (rewrite_inputs_into_dependencies): Do not prepend $(top_builddir)/
1034         at the top-level.
1035         (handle_configure): Use rewrite_inputs_into_dependencies to
1036         distribute and compute AC_CONFIG_HEADERS dependencies.
1037         (scan_autoconf_traces) <AC_CONFIG_HEADERS>: Fill
1038         %ac_config_files_location.
1039         * lib/am/remake-hdr.am ($(srcdir)/%CONFIG_HIN%): Rename as ...
1040         (%CONFIG_HIN%): ... this.  $(srcdir) is already added in
1041         scan_autoconf_traces.
1042         * tests/Makefile.am (TESTS): Add confh5.test.
1043         * tests/confh5.test: New file.
1045         * tests/ltlibsrc.test: Fix the zoo_d_old2_la.c rule in Makefile.am,
1046         $< is not portable and the source is in $(srcdir).
1048 2003-12-03  Paolo Bonzini  <bonzini@gnu.org>
1049             Alexandre Duret-Lutz  <adl@gnu.org>
1051         * automake.in (handle_configure): Do not require link sources if
1052         they contain a dollar, or if they were built.  Likewise, do not
1053         clean link destination if they contain a dollar.
1054         (scan_autoconf_traces) <AC_CONFIG_LINKS>: Populate
1055         %ac_config_files_location with link destinations.  Do not
1056         store locations in @config_links, now that %ac_config_files_location
1057         have them.
1058         * tests/conflnk3.test: New file.
1059         * tests/Makefile.am (TESTS): Add conflnk3.test.
1061 2003-12-02  Alexandre Duret-Lutz  <adl@gnu.org>
1063         * configure.ac, NEWS: Bump version to 1.7i.
1065         * configure.ac, NEWS: Bump version to 1.7h.
1067         * doc/automake.texi (Default _SOURCES): Fix reference to true.
1069         * lib/texinfo.tex: New upstream version.
1071 2003-11-30  Alexandre Duret-Lutz  <adl@gnu.org>
1073         * automake.in (handle_source_transform): If it's present, use
1074         libfoo_la.c instead of libfoo.c as the default source of
1075         libfoo.la, and issue an -Wobsolete diagnostic.  Do not be
1076         greedy in the suffix replacement regex.
1077         * doc/automake.texi (Default _SOURCES): New node.
1078         (Program Sources, Libtool Modules): Refer to it.
1079         * tests/ltlibsrc.test: Update to check for old default source files.
1081 2003-11-30  Gary V. Vaughan  <gary@gnu.org>
1083         * automake.in (&handle_source_transform): Calculate a default file
1084         for use in the absence of an appropriate _SOURCES declaration by
1085         first stripping any suffix from the unxformed target name, and
1086         appending `.c'.
1087         * doc/automake.texi (Program Sources, Libtool Modules): Document this.
1088         * tests/ltlibsrc.test: New file.
1089         * tests/Makefile.am (TESTS): Add ltlibsrc.test.
1091 2003-11-29  Alexandre Duret-Lutz  <adl@gnu.org>
1093         * lib/Automake/Variable.pm (loc_and_value_as_list_recursive,
1094         _value_as_list_recursive_worker): Merge into ...
1095         (value_as_list_recursive): ... this function.  Pass options
1096         as a hash argument, and use the `location' option to trigger
1097         the behavior of loc_and_value_as_list_recursive.
1098         (traverse_recursively, transform_variable_recursively): Take
1099         options as a %options argument.
1100         (_do_recursive_traversal): Perform expansion of inner variables
1101         (as in `$(FILE).ext') on request.
1102         * automake.in (handle_options, check_libobjs_sources)
1103         (handle_source_transform, handle_LIBOBJS, handle_ltlibraries)
1104         (handle_ltlibraries, handle_man_pages, handle_dist)
1105         (handle_gettext, am_install_var): Adjust usage of
1106         value_as_list_recursive.
1107         (handle_texinfo_helper): Pass inner_expand to
1108         value_as_list_recursive.
1109         * tests/txinfo28.test: New file.
1110         * tests/Makefile.am (TESTS): Add txinfo28.test.
1111         Report from Ralf Corsepius.
1113         * lib/Automake/Variable.pm (_do_recursive_traversal): Do not
1114         update @_substfroms and @_substfroms for undefined variables.
1115         * tests/substre2.test: New file.
1116         * tests/Makefile.am (TESTS): Add substre2.test.
1118         * lib/Automake/VarDef.pm (value): Rename as ...
1119         (raw_value): ... this.
1120         (value): New method, strip # and \\\n.
1121         (dump): Use raw_value.
1122         * lib/Automake/Variable.pm (output): Use raw_value.
1123         (value_as_list): Simplify, now that backslash and comments
1124         are already removed.
1125         * tests/txinfo22.test: Make sure Automake isn't confused
1126         by comments in variables.
1128 2003-11-27  Alexandre Duret-Lutz  <adl@gnu.org>
1130         * doc/automake.texi: More target vs. rule editing.  Back out some
1131         of the previous changes.  It's OK to talk about targets as "entry
1132         points", or as thing to build, but targets cannot be run: rules
1133         are run.
1135         * doc/automake.texi: s/target/rule/ where appropriate.  A target
1136         is the destination of a target rule, not the rule itself.
1137         Suggested by Bruno Haible.
1139 2003-11-25  Alexandre Duret-Lutz  <adl@gnu.org>
1141         * configure.ac, NEWS: Bump version to 1.7g.
1143         * configure.ac, NEWS: Bump version to 1.7f.
1145         * automake.in (prepend_srcdir): Parenthesize @inputs to remove
1146         a maintainer-check warning.
1147         * tests/subst2.test: Rewrite the $MAKE invocation to please
1148         maintainer-check.
1150         * lib/config.sub, lib/config.guess, lib/texinfo.tex: New upstream
1151         versions.
1153         * doc/automake.texi (Program variables): Mention per-target
1154         _CPPFLAGS in the documentation of INCLUDES.
1155         * automake.in (generate_makefile): Likewise in the INCLUDES diagnostic.
1156         Report from Bob Friesenhahn.
1158         * doc/automake.texi (Extending): Elaborate on overriding.
1159         * NEWS: Likewise.
1160         Suggested by Bruno Haible.
1162 2003-11-24  Alexandre Duret-Lutz  <adl@gnu.org>
1164         * lib/Automake/Variable.pm (output): Add $(am__empty) to variable
1165         definitions that end with a line full of @substitutions@ that
1166         would confuse HP-UX Make if it were blank.
1167         (transform_variable_recursively): Make sure not to erase empty
1168         variables.
1169         * tests/Makefile.am (TESTS): Add subst2.test.
1170         * tests/subst2.test: New file.
1171         Report from Harlan Stenn.
1173         * lib/am/texibuild.am (%SOURCE_SUFFIX%.html): Work around a
1174         Texinfo 4.1 bug.
1175         Report from Dalibor Topic.
1177 2003-11-22  Alexandre Duret-Lutz  <adl@gnu.org>
1179         Fix for PR automake/411:
1180         * automake.in (rewrite_inputs_into_dependencies): Simplify, and rename
1181         into ...
1182         (prepend_srcdir): ... this.
1183         (rewrite_inputs_into_dependencies): New function, extracted from ...
1184         (handle_configure): ... here.  Adjust to use prepend_srcdir
1185         or rewrite_inputs_into_dependencies where needed.  Especially,
1186         using (the new) rewrite_inputs_into_dependencies to compute
1187         Makefile dependencies will fix PR/411.
1188         * lib/am/configure.am (DIST_COMMON): Remove %MAKEFILE-IN%, it's
1189         already distributed by rewrite_inputs_into_dependencies.
1190         * tests/Makefile.am (TESTS): Add output10.test, remove distcom.test.
1191         * tests/colon3.test: Use set -e.  Don't allow any AUTOMAKE
1192         invocation refer to zardoz.  Make sure two.in and three.in
1193         appear as $(srcdir)/two.in and $(srcdir)/three.in dependencies.
1194         * tests/distcom.test: Delete.  This is covered by tests/output9.test.
1195         * tests/output10.test: New file, for PR/411.
1197 2003-11-21  Alexandre Duret-Lutz  <adl@gnu.org>
1199         * automake.in (append_exeext): Do not append $(EXEEXT) to
1200         @substitutions@.
1201         * tests/exeext4.test: New file.
1202         * tests/Makefile.am (TESTS): Add exeext4.test.
1204 2003-11-19  Alexandre Duret-Lutz  <adl@gnu.org>
1206         * lib/am/configure.am (%MAKEFILE%): Remove %MAINTAINER-MODE%,
1207         mistakenly added on 2001-03-05.
1208         * tests/remake5.test: New file.
1209         * tests/Makefile.am (TESTS): Add remake5.test.
1210         Report from Ralf Corsepius.
1212 2003-11-18  Alexandre Duret-Lutz  <adl@gnu.org>
1214         * configure.ac, NEWS: Bump version to 1.7e.
1216         * configure.ac, NEWS: Bump version to 1.7d.
1218         * lib/config.sub, lib/config.guess, lib/texinfo.tex: New
1219         upstream versions.
1221 2003-11-18  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>  (tiny change)
1222             Alexandre Duret-Lutz  <adl@gnu.org>
1224         * lib/am/texinfos.am (install-info): Depend on
1225         install-info-recursive or install-info-am even if no-installinfo.
1226         * tests/txinfo27.test: New file.
1227         * tests/Makefile.am (TESTS): Add txinfo26.test.
1229 2003-11-18  Paolo Bonzini  <bonzini@gnu.org>
1230             Alexandre Duret-Lutz  <adl@gnu.org>
1232         * lib/ylwrap: Do not overwrite headers if they haven't changed.
1233         Fix the include guard substitution.
1234         * tests/yacc6.test: Augment to run ylwrap, and make sure it
1235         does not needlessly update headers.
1236         * tests/yacc8.test: Make sure headers are not needlessly updated
1237         with ylwrap is not used.  Move `test -f foo.o' into the
1238         Makefile as `test -f foo.$(OBJEXT)' for portability.
1240 2003-11-17  Alexandre Duret-Lutz  <adl@gnu.org>
1242         * automake.in (generate_makefile): Define SUBDIRS if it is
1243         not defined and DIST_SUBDIRS is.
1244         * tests/subpkg2.test: New file.
1245         * tests/Makefile.am (TESTS): Add subpkg2.test.
1246         Report from Gary V. Vaughan.
1248         * tests/suffix11.test: Check for suffixes containing `-'.
1249         * lib/Automake/Rule.pm ($_SUFFIX_RULE_PATTERN): Accept `-' in
1250         suffixes.
1252         * lib/Automake/Rule.pm (define): Suggest using target-local instead
1253         of target-am, not target-am-local.
1254         * tests/overrid.test: Check the diagnostic for clean-am.
1255         Report from Bruno Haible.
1257 2003-11-17  Jim Meyering  <jim@meyering.net>
1259         * bootstrap: Require not only that `perl' have the executable
1260         bit set, but also that it is not a directory.
1262         * lib/am/configure.am: Mark %MAKEFILE% as `.PRECIOUS'.
1264 2003-11-17  Alexandre Duret-Lutz  <adl@gnu.org>
1266         * automake.in (ac_config_files_location): Declare as a hash.
1267         (handle_configure): Rewrite the computation of AC_CONFIG_FILES
1268         dependencies; make sure we don't use $(srcdir) or $(top_srcdir)
1269         for inputs which are also outputs, and do not check inputs
1270         relatively to the current directory.
1271         (scan_autoconf_config_files): Take $where as argument, and
1272         fill $ac_config_files_location.
1273         * tests/output8.test, tests/output9.test: New files.
1274         * tests/Makefile.am (TESTS): Add output8.test and output9.test.
1275         Report from Bruno Haible.
1277 2003-11-14  Alexandre Duret-Lutz  <adl@gnu.org>
1279         * tests/aclibobj.test, tests/aclocal.test, tests/aclocal3.test,
1280         tests/acoutbs.test, tests/acoutbs2.test, tests/acoutnoq.test,
1281         tests/acoutpt.test, tests/acoutpt2.test, tests/acoutqnl.test,
1282         tests/acsilent.test, tests/acsubst.test, tests/acsubst2.test,
1283         tests/all.test, tests/alpha.test, tests/amassign.test,
1284         tests/ammissing.test, tests/ansi.test, tests/ansi10.test,
1285         tests/ansi2.test, tests/ansi3.test, tests/ansi3b.test,
1286         tests/ansi4.test, tests/ansi5.test, tests/ansi6.test,
1287         tests/ansi7.test, tests/ansi9.test, tests/ar.test,
1288         tests/autohdr.test, tests/autohdr2.test, tests/auxdir.test,
1289         tests/auxdir2.test, tests/backsl.test, tests/backsl2.test,
1290         tests/badprog.test, tests/block.test, tests/canon2.test,
1291         tests/canon3.test, tests/canon4.test, tests/canon5.test,
1292         tests/ccnoco.test, tests/check.test, tests/check2.test,
1293         tests/check3.test, tests/checkall.test, tests/clean.test,
1294         tests/colneq2.test, tests/colon.test, tests/colon2.test,
1295         tests/colon3.test, tests/colon4.test, tests/colon5.test,
1296         tests/colon6.test, tests/colon7.test, tests/comment.test,
1297         tests/comment2.test, tests/comment4.test, tests/comment6.test,
1298         tests/comment7.test, tests/compile_f_c_cxx.test, tests/cond.test,
1299         tests/cond10.test, tests/cond11.test, tests/cond13.test,
1300         tests/cond14.test, tests/cond15.test, tests/cond16.test,
1301         tests/cond17.test, tests/cond18.test, tests/cond19.test,
1302         tests/cond21.test, tests/cond22.test, tests/cond25.test,
1303         tests/cond26.test, tests/cond28.test, tests/cond3.test,
1304         tests/cond4.test, tests/cond5.test, tests/cond6.test,
1305         tests/cond7.test, tests/cond8.test, tests/cond9.test,
1306         tests/condd.test, tests/condinc.test, tests/condlib.test,
1307         tests/condman.test, tests/condman2.test, tests/conf2.test,
1308         tests/confdeps.test, tests/confh.test, tests/confh4.test,
1309         tests/config.test, tests/confincl.test, tests/conflnk.test,
1310         tests/conflnk2.test, tests/confsub.test, tests/confvar.test,
1311         tests/confvar2.test, tests/copy.test, tests/ctarget1.test,
1312         tests/cxx.test, tests/cxxansi.test, tests/cxxcpp.test,
1313         tests/cxxlibobj.test, tests/cxxlink.test, tests/cxxnoc.test,
1314         tests/cxxo.test, tests/cygwin32.test, tests/dash.test,
1315         tests/defun.test, tests/defun2.test, tests/dejagnu.test,
1316         tests/dejagnu3.test, tests/dejagnu4.test, tests/dejagnu5.test,
1317         tests/dejagnu6.test, tests/dejagnu7.test, tests/depacl2.test,
1318         tests/depcomp.test, tests/depcomp2.test, tests/depcomp4.test,
1319         tests/depdist.test, tests/depend.test, tests/depend2.test,
1320         tests/depend3.test, tests/depend4.test, tests/destdir.test,
1321         tests/dirlist.test, tests/discover.test, tests/distcom.test,
1322         tests/distcom2.test, tests/distdir.test, tests/distname.test,
1323         tests/dollar.test, tests/double.test, tests/dup2.test,
1324         tests/empty.test, tests/empty2.test, tests/empty3.test,
1325         tests/empty4.test, tests/error.test, tests/exdir.test,
1326         tests/exeext.test, tests/exeext3.test, tests/exsource.test,
1327         tests/ext.test, tests/ext2.test, tests/extra.test,
1328         tests/extra2.test, tests/extra3.test, tests/extra4.test,
1329         tests/extra5.test, tests/extra6.test, tests/extra7.test,
1330         tests/flibs.test, tests/fnoc.test, tests/fo.test,
1331         tests/fonly.test, tests/fortdep.test, tests/fpinst2.test,
1332         tests/fpinstall.test, tests/gcj.test, tests/gcj3.test,
1333         tests/gcj4.test, tests/gnits2.test, tests/gnits3.test,
1334         tests/header.test, tests/implicit.test, tests/include.test,
1335         tests/include2.test, tests/info.test, tests/insh2.test,
1336         tests/install2.test, tests/installdir.test, tests/instdat.test,
1337         tests/instdat2.test, tests/instexec.test, tests/insthook.test,
1338         tests/instman.test, tests/instman2.test, tests/instsh.test,
1339         tests/instsh2.test, tests/interp.test, tests/interp2.test,
1340         tests/java.test, tests/java2.test, tests/javaprim.test,
1341         tests/javasubst.test, tests/ldadd.test, tests/ldflags.test,
1342         tests/lex.test, tests/lex3.test, tests/lex4.test, tests/lex5.test,
1343         tests/libobj11.test, tests/libobj2.test, tests/libobj4.test,
1344         tests/libobj5.test, tests/libobj7.test, tests/libobj8.test,
1345         tests/library.test, tests/libtool.test, tests/libtool2.test,
1346         tests/libtool3.test, tests/libtool5.test, tests/link_c_cxx.test,
1347         tests/link_dist.test, tests/link_f_only.test, tests/link_fc.test,
1348         tests/link_fccxx.test, tests/link_fcxx.test, tests/lisp.test,
1349         tests/listval.test, tests/ltdeps.test, tests/ltlibobjs.test,
1350         tests/maintclean.test, tests/make.test, tests/makej.test,
1351         tests/makevars.test, tests/man.test, tests/man2.test,
1352         tests/mclean.test, tests/mdate.test, tests/mdate2.test,
1353         tests/mdate3.test, tests/mdate4.test, tests/mkinst2.test,
1354         tests/mkinstall.test, tests/nobase.test, tests/nodef.test,
1355         tests/nodef2.test, tests/nodep.test, tests/nodepcomp.test,
1356         tests/nodist.test, tests/nodist2.test, tests/nodist3.test,
1357         tests/noinst.test, tests/noinstdir.test, tests/nolink.test,
1358         tests/nostdinc.test, tests/number.test, tests/obsolete.test,
1359         tests/order.test, tests/outdir.test, tests/output.test,
1360         tests/output2.test, tests/output3.test, tests/output4.test,
1361         tests/parse.test, tests/phony.test, tests/pluseq.test,
1362         tests/pluseq10.test, tests/pluseq2.test, tests/pluseq3.test,
1363         tests/pluseq4.test, tests/pluseq6.test, tests/pluseq8.test,
1364         tests/postproc.test, tests/ppf77.test, tests/pr2.test,
1365         tests/pr204.test, tests/pr220.test, tests/pr224.test,
1366         tests/pr229.test, tests/pr243.test, tests/pr266.test,
1367         tests/pr279-2.test, tests/pr279.test, tests/pr287.test,
1368         tests/pr300-lib.test, tests/pr300-ltlib.test,
1369         tests/pr300-prog.test, tests/pr307.test, tests/pr72.test,
1370         tests/pr87.test, tests/pr9.test, tests/prefix.test,
1371         tests/proginst.test, tests/python.test, tests/python3.test,
1372         tests/python4.test, tests/python5.test, tests/python6.test,
1373         tests/python7.test, tests/python8.test, tests/python9.test,
1374         tests/recurs2.test, tests/remake.test, tests/remake2.test,
1375         tests/remake3.test, tests/req.test, tests/reqd.test,
1376         tests/rulepat.test, tests/scripts.test, tests/sinclude.test,
1377         tests/space.test, tests/specflg3.test, tests/specflg6.test,
1378         tests/specflg7.test, tests/specflg8.test, tests/specflg9.test,
1379         tests/spell3.test, tests/spelling.test, tests/spy.test,
1380         tests/stamph2.test, tests/stdlib2.test, tests/strip.test,
1381         tests/subcond.test, tests/subcond2.test, tests/subcond3.test,
1382         tests/subdir.test, tests/subdir2.test, tests/subdir3.test,
1383         tests/subdir4.test, tests/subdir5.test, tests/subdir6.test,
1384         tests/subdirbuiltsources.test, tests/subobj.test,
1385         tests/subobj2.test, tests/subobj3.test, tests/subobj4.test,
1386         tests/subobj5.test, tests/subobj6.test, tests/subobj7.test,
1387         tests/subobj8.test, tests/subobj9.test, tests/subobjname.test,
1388         tests/subpkg.test, tests/subst.test, tests/substref.test,
1389         tests/suffix.test, tests/suffix10.test, tests/suffix2.test,
1390         tests/suffix3.test, tests/suffix4.test, tests/suffix5.test,
1391         tests/suffix6.test, tests/suffix7.test, tests/suffix8.test,
1392         tests/suffix9.test, tests/symlink2.test, tests/symlink3.test,
1393         tests/tags.test, tests/tagsub.test, tests/target-cflags.test,
1394         tests/transform.test, tests/txinfo.test, tests/txinfo10.test,
1395         tests/txinfo13.test, tests/txinfo16.test, tests/txinfo17.test,
1396         tests/txinfo18.test, tests/txinfo2.test, tests/txinfo23.test,
1397         tests/txinfo24.test, tests/txinfo25.test, tests/txinfo26.test,
1398         tests/txinfo3.test, tests/txinfo5.test, tests/txinfo6.test,
1399         tests/txinfo7.test, tests/txinfo8.test, tests/txinfo9.test,
1400         tests/unused.test, tests/vars.test, tests/vars3.test,
1401         tests/vartar.test, tests/version.test, tests/version2.test,
1402         tests/version4.test, tests/version6.test, tests/version7.test,
1403         tests/vpath.test, tests/vtexi.test, tests/vtexi2.test,
1404         tests/werror.test, tests/whoami.test, tests/yacc.test,
1405         tests/yacc3.test, tests/yacc4.test, tests/yacc5.test,
1406         tests/yacc6.test, tests/yacc7.test, tests/yacc8.test,
1407         tests/yaccpp.test, tests/yaccvpath.test: Fix license to refer
1408         to Automake, not autoconf.
1410         Fix for PR automake/408:
1411         * lib/am/texinfos.am (install-info-am): Strip any $(srcdir)/ prefix
1412         from $file, as already done for dist-info.
1413         * tests/Makefile.am (TESTS): Add txinfo26.test.
1414         * tests/txinfo26.test: New file.
1415         Report from Nicholas Wourms.
1417 2003-11-13  Alexandre Duret-Lutz  <adl@gnu.org>
1419         * m4/lispdir.m4 (AM_PATH_LISPDIR): If EMACS=t, empty it before
1420         running AC_CHECK_PROGS(EMACS).
1421         * lib/am/lisp.am (elc-stamp): Quote $(EMACS).
1422         Report from Jens Petersen.
1424         * tests/mkinst2.test: Rewrite.
1426         * m4/mkdirp.m4: Do not require AM_AUX_DIR_EXPAND.
1428 2003-11-12  Alexandre Duret-Lutz  <adl@gnu.org>
1430         * automake.in (scan_autoconf_traces): Honor sinclude.
1431         * tests/sinclude.test: Check for sinclude.
1432         Report from Roberto Bagnara.
1434 2003-11-11  Alexandre Duret-Lutz  <adl@gnu.org>
1436         * Makefile.am: Do not rerun `make dist' after tagging, `make distcheck'
1437         already build the tarballs.  Commit files right before tagging.
1438         Check NEWS before running distcheck.
1440         * m4/amversion.in (AM_AUTOMAKE_VERSION): Missing cosmetic space.
1442         * configure.ac, NEWS: Bump version to 1.7c.
1444         * configure.ac, NEWS: Bump version to 1.7b.
1445         * Makefile.am (maintainer-check): Ignore comments while
1446         scanning for rm without -f.
1448         * Makefile.am (fetch): Get all files from savannah.  Do not
1449         postprocess Struct.pm and XFiles.pm, since we now are the master
1450         of these.
1451         * lib/config.sub, lib/config.guess, lib/config-ml.in,
1452         lib/texinfo.tex: New upstream versions.
1454         * configure.ac: Check that autoconf is installed, that it works,
1455         and that it is recent enough in three steps, not one.
1457         * NEWS: Minor edits.
1459         * lib/Makefile.am (dist_script_DATA): Move config-ml.in ...
1460         (dist_pkgvdata_DATA): ... here.
1462         * tests/spy.test: Document overlapping ::-rules incompatibilities,
1463         and check only non-overlapping ::-rules.
1465         * doc/automake.texi (Texinfo): Define MAKEINFO, MAKEINFOHTML,
1466         MAKEINFOFLAGS, AM_MAKEINFOFLAGS, AM_MAKEINFOHTMLFLAGS, TEXI2DVI,
1467         TEXI2PDF, DVIPS, and TEXINFO_TEX in a table.
1468         (Uniform): Do not speak of missing HTML support, this is
1469         confusing.
1470         * lib/Automake/Variable.pm (_silent_variable_override): Add
1471         AM_MAKEINFOHTMLFLAGS.
1472         * lib/am/texibuild.am (%SOURCE_SUFFIX%.html): Use MAKEINFOHTML and
1473         AM_MAKEINFOHTMLFLAGS instead of MAKEINFO and AM_MAKEINFOFLAGS.
1474         * lib/am/texinfos.am (MAKEINFOHTML, AM_MAKEINFOHTMLFLAGS): Define.
1475         * tests/txinfo21.test: Add a test with AM_MAKEINFOHTMLFLAGS.
1477 2003-11-10  Alexandre Duret-Lutz  <adl@gnu.org>
1479         * tests/spy.test: New file.
1480         * tests/Makefile.am (TESTS): Add spy.test.
1482         * automake.in (handle_configure): Distribute and define mkinstalldirs
1483         only if it is already present in the package.
1484         (scan_autoconf_files): Do not require mkinstalldirs.
1485         (require_build_directory): Use $(mkdir_p), not $(mkinstalldirs).
1486         * lib/am/data.am, lib/am/distdir.am, lib/am/install.am,
1487         lib/am/java.am, lib/am/libs.am, lib/am/lisp.am, lib/am/mans.am,
1488         lib/am/progs.am, lib/am/python.am, lib/am/scripts.am,
1489         lib/am/texinfos.am: Use $(mkdir_p) instead of $(mkinstalldirs).
1490         * m4/mkdirp.m4: New file.
1491         * m4/Makefile.am (dist_m4data_DATA): Add mkdirp.m4.
1492         * m4/init.m4 (AM_INIT_AUTOMAKE): Call AM_PROG_MKDIR_P.
1493         * tests/Makefile.am (TESTS): Remove insh.test.
1494         * tests/insh.test: Delete.
1495         * tests/defs.in, tests/instsh.test: Do not install mkinstalldirs.
1496         * tests/auxdir.test: Install mkinstalldirs.
1497         * tests/distdir.test, tests/instman.test, tests/pr2.test: Use
1498         $(mkdir_p), not $(mkinstalldirs).
1499         * tests/empty.test: Run configure, do not substitute things by hand.
1500         * doc/automake.texi (Optional) <AC_CONFIG_FILES>: Take install-sh
1501         as an example, not mkinstalldirs.
1502         (Auxiliary Programs) <mkinstalldirs>: Update.
1504         * tests/defs.in: Handle required=bzip2.
1506         * tests/defs.in: Export SHELL.
1507         * tests/cond11.test: Missing quotes.
1508         * tests/nogzip2.test: Require bzip2.
1510 2003-11-09  Alexandre Duret-Lutz  <adl@gnu.org>
1512         * NEWS: Add news entries from 1.6.x and 1.7.x.
1514         * automake.texi (Optional) <AC_SUBST>: Grammar fixes.
1516         * automake.in (check_gnu_standards): Install COPYING only if
1517         none of COPYING, COPYING.LIB, or COPYING.LESSER exist.  Do not
1518         overwrite the license otherwise.
1519         * tests/Makefile.am (TESTS): Add license.test.
1520         * tests/license.test: New file.
1522         * lib/mkinstalldirs: Mention automake-patches@gnu.org and
1523         bug-automake@gnu.org.
1524         * lib/compile, lib/depcomp, lib/elisp-comp, lib/mdate-sh:
1525         Likewise.  Also add support for --help and --version.
1526         * lib/py-compile, lib/ylwrap: Likewise, and reindent.
1528 2003-11-08  Alexandre Duret-Lutz  <adl@gnu.org>
1530         * lib/am/tags.am (ETAGSFLAGS, CTAGSFLAGS): Remove.
1531         * lib/am/dejagnu.am (RUNTESTFLAGS): Remove.
1532         * lib/am/java.am (JAVACFLAGS): Remove.
1533         * tests/dejagnu3.test: Check that the environment value
1534         of RUNTESTFLAGS get passed down to runtest.
1535         Suggested by Mark Mitchell.
1537         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
1538         (?GENERIC?%EXT%.lo): Do not echo compile command manually, this
1539         breaks `make -s'.  Instead, fold the compile command on two lines,
1540         so that it take less space on the display.
1541         Suggested by Karl Berry and William Fulton.
1543         * lib/am/texibuild.am (%DEST_PREFIX%%DEST_SUFFIX%): Rename as ...
1544         (%DEST_INFO_PREFIX%%DEST_SUFFIX%): ... this, and honor ?INSRC?
1545         to select $(srcdir) or `.' builds.
1546         (INFO_DEPS): Define here.
1547         * lib/am/texinfos.am (dist-info): Strip filename starting with
1548         "$(srcdir)/".
1549         * automake.in (output_texinfo_build_rules): Take a new argument
1550         $insrc, and adjust substitutions in 'texibuild'.
1551         (handle_texinfo_helper): Compute a regex of all user-cleaned
1552         files, and use this to select whether to build .info files in `.'
1553         or $(srcdir).  Give an account of the $(srcdir) vs `.' debacle.
1554         Alway build the version.texi and stamp files in $(srcdir).  Do not
1555         define INFO_DEPS.
1556         * tests/Makefile.am (TESTS): Add txinfo23.test, txinfo24.test,
1557         and txinfo25.test.
1558         * tests/txinfo23.test, tests/txinfo24.test, tests/txinfo25.test:
1559         New files.
1560         * tests/txinfo13.test, tests/txinfo16.test, tests/txinfo3.test,
1561         tests/vtexi.test: Adjust to new rules.
1563 2003-11-05  Alexandre Duret-Lutz  <adl@gnu.org>
1565         * m4/init.m4 (AM_INIT_AUTOMAKE): Require Autoconf 2.58.
1566         * configure.ac: Require Autoconf 2.58a, and check for 2.58.
1568 2003-10-27  Alexandre Duret-Lutz  <adl@gnu.org>
1570         * lib/am/remake-hdr.am ($(srcdir)/%CONFIG_HIN%): Erase %STAMP%.
1571         * tests/Makefile.am (TESTS): Add autohdr3.test
1572         * tests/autohdr3.test: New file.
1574         * automake.in (handle_configure): Rename am__configure_deps
1575         as am__aclocal_m4_deps and include $(ACLOCAL_M4_SOURCES) and
1576         $configure_ac.  Define am__configure_deps as am__aclocal_m4_deps
1577         + $(CONFIGURE_DEPENDENCIES) + $(ACLOCAL_M4).  Do not define
1578         ACLOCAL_M4_DEPS while processing configure.am.
1579         (make_paragraphs): Do not define %CONFIGURE_AC%, now unused.
1580         (scan_aclocal_m4): Do not distribute aclocal.m4, this
1581         is done from lib/am/configure.am.
1582         * lib/am/configure.am (%MAKEFILE-IN%, DIST_COMMON,
1583         $(top_srcdir)/configure, $(ACLOCAL_M4)): Simplify using
1584         $(am__configure_deps) or $(am__aclocal_m4_deps).
1585         * lib/am/remake-hdr.am ($(srcdir)/%CONFIG_HIN%): Likewise.
1587 2003-10-26  Alexandre Duret-Lutz  <adl@gnu.org>
1589         * lib/am/remake-hdr.am ($(srcdir)/%CONFIG_HIN%): Depend on
1590         $(am__configure_deps).
1592         * automake.in (handle_configure): Distribute all AC_CONFIG_HEADERS
1593         sources, and without using require_file.  Define %CONFIG_H_DEPS%
1594         and %FIRST_CONFIG_HIN% while processing remake-hdr.am.
1595         * lib/am/remake-hdr.am (%STAMP%): Use %CONFIG_H_DEPS% instead
1596         of (srcdir)/%CONFIG_HIN%.  Output the $(srcdir)/%CONFIG_HIN%
1597         rule only for the first header (i.e., if %FIRST_CONFIG_HIN%).
1598         * tests/autohdr4.test: New file.
1599         * tests/Makefile.am (TESTS): Add autohdr4.test.
1600         * tests/config.test: Do not grep, run things to see if they work.
1602 2003-10-25  Alexandre Duret-Lutz  <adl@gnu.org>
1604         * tests/output7.test: Populate sub/ with a dummy file, so that it
1605         is not empty.  This fixes a failure reported by Patrick Welche.
1606         * lib/am/distdir.am: Add note about tar's `-o' option and empty
1607         directories.
1609 2003-10-24  Didier Cassirame  <faded@free.fr>  (tiny change)
1611         * lib/ylwrap: Typo in regex.
1613 2003-10-23  Paul Eggert  <eggert@twinsun.com>
1615         * lib/Automake/XFile.pm: Don't assume -j is solo.
1616         Issue a more-informative diagnostic.
1617         Problems reported by Eric Sunshine.
1619 2003-10-21  Alexandre Duret-Lutz  <adl@gnu.org>
1621         * m4/lispdir.m4 (AM_PATH_LISPDIR): Always check for Emacs.
1622         Always define lispdir.
1623         * lib/am/lisp.am (install-%DIR%LISP, uninstall-%DIR%LISP): Check
1624         $(EMACS) to decide whether _LISP files must be installed,
1625         not $(lispdir).
1626         * doc/automake.texi (Emacs Lisp): Mention the two ways to install
1627         non byte-compiled Emacs lisp files.
1628         * tests/lisp4.test, tests/lisp5.test: Check "make install"
1629         when EMACS=no.
1630         Suggested by Simon Josefsson.
1632         * NEWS: Clarify the entry about multiple conditional definitions
1633         of _PROGRAMS, _LDADD, and _LIBADD.
1634         Report from Simon Josefsson.
1636         * lib/am/install.am (install-strip): Override install_sh_PROGRAM
1637         too.
1638         Report from Elmar Hoffmann.
1640 2003-10-07  Alexandre Duret-Lutz  <adl@gnu.org>
1642         * aclocal.in ("MAIN", usage, parse_arguments): Move near
1643         the end, so "MAIN" can use prototypes.
1644         (scan_configure): Move later too, for the sake of prototypes.
1645         (scan_configure_dep): Fix setting of $scanned_configure_dep.
1646         (trace_used_macros): Do not take any argument.
1648 2003-10-06  Alexandre Duret-Lutz  <adl@gnu.org>
1650         * tests/stdlib2.test: Check AM_LDFLAGS alone.
1652         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
1653         versions.
1655         * automake.in (handle_ltlibraries): Also grep AM_LDFLAGS for `-module'.
1656         * tests/stdlib2.test: New file.
1657         * tests/Makefile.am (TESTS): Add stdlib2.test.
1658         Report from Kevin P. Fleming.
1660 2003-10-03  Richard Dawe  <rich@phekda.freeserve.co.uk>  (tiny change)
1662         * tests/defs.in: For required=runtest, check that we are using
1663         a DejaGnu that supports specifying the program on the command-line.
1665 2003-10-03  Alexandre Duret-Lutz  <adl@gnu.org>
1667         For Debian Bug #213524:
1668         * lib/am/texinfos.am (install-info-am, uninstall-info-am): Merge
1669         stderr and stdout, and grep only the first line while testing
1670         install-info --version's output.  This revert part of the change
1671         from 2001-05-18.
1673 2003-10-01  Akim Demaille  <akim@epita.fr>
1675         * m4/amversion.in: Add (C) to the Copyright notice.
1677 2003-10-01  Paul Eggert  <eggert@twinsun.com>
1679         * lib/Automake/XFile.pm: Use Errno.
1680         (lock): Ignore ENOLCK errors.  Problem reported Andreas Schwab in
1681         <http://mail.gnu.org/archive/html/bug-autoconf/2003-09/msg00141.html>.
1683 2003-09-30  Tom Tromey  <tromey@redhat.com>
1685         * lib/Automake/Options.pm (_process_option_list): Recognize
1686         no-dist.
1687         * NEWS: Update.
1688         * doc/automake.texi (Options): Document no-dist.
1689         * automake.in (check_cygnus): Set no-dist option.
1690         (handle_dist): Recognize no-dist.
1691         * tests/nodist3.test: New file.
1692         * tests/Makefile.am (TESTS): Added nodist3.test.
1694 2003-09-29  Alexandre Duret-Lutz  <adl@gnu.org>
1696         * automake.in (handle_clean): Take $makefile as argument, and
1697         define %MAKEFILE% while processing clean.am.
1698         (generate_makefile): Pass $makefile to handle_clean.
1699         * lib/am/clean.am (distclean, maintainer-clean): Erase %MAKEFILE%,
1700         not Makefile.
1701         * tests/gnumake.test: New file.
1702         * tests/Makefile.am (TESTS): Add gnumake.test.
1703         Report from Braden N. McDaniel.
1705 2003-09-26  Alexandre Duret-Lutz  <adl@gnu.org>
1707         * doc/automake.texi (Scripts): Update the example about automake.
1708         Mention `dist_' for distributed scripts.
1710         * lib/mkinstalldirs: Clean up after NextStep and OpenStep mkdir.
1711         Suggested by Eric Sunshine.
1713 2003-09-25  Alexandre Duret-Lutz  <adl@gnu.org>
1715         * README: More mailing lists.
1717         * NEWS: Mention the switch to GNU FDL for the manual.
1719 2003-09-24  Alexandre Duret-Lutz  <adl@gnu.org>
1721         * lib/install-sh (src, dst): Protect names starting with `-',
1722         as in mkinstalldirs.
1724         * configure.in: Rename as ...
1725         * configure.ac: ... this.
1726         * README: s/configure.in/configure.ac/.
1728         * doc/fdl.texi: New file.
1729         * doc/Makefile.am (automake_TEXINFOS): New variable.
1730         * doc/automake.texi (Copying This Manual): New appendix, include
1731         fdl.texi.
1732         (Macro and Variable Index, General Index): Move as subsections of ...
1733         (Indices): This new appendix.
1735         * doc/automake.texi: Refer to configure.ac instead of configure.in.
1737         * automake.texi: Move ...
1738         * doc/automake.texi: ... here.
1739         * doc/Makefile.am: New file.
1740         * configure.in: Output doc/Makefile.
1741         * Makefile.am (SUBDIRS): Add doc.
1742         (ETAGS_ARGS, TAGS_DEPENDENCIES): Move to doc/Makefile.am.
1744 2003-09-23  Alexandre Duret-Lutz  <adl@gnu.org>
1746         * aclocal.in (write_aclocal): Consider files with relative
1747         paths as local to the project, i.e., subject to m4_include.
1748         * tests/subpkg.test (ACLOCAL_AMFLAGS): Make sure m4_include
1749         is also used for .m4 files in the outer project.
1751         Support for multiple inputs in AC_CONFIG_FILES.
1752         Requested long ago by Harlan Stenn.
1753         * automake.in (handle_dist): Remove unused argument $makefile.
1754         (handle_subdirs): Expect SUBDIRS elements in $relative_dir,
1755         not $am_relative_dir.
1756         (rewrite_inputs_into_dependencies): Allow $add_srcdir to
1757         be a filename that must always be prefixed by $(srcdir) or
1758         $(top_srcdir).
1759         (handle_configure, generate_makefile): Revamp to make the
1760         Makefile.am, Makefile.in, Makefile more independent.
1761         (locate_am): New function.
1762         (scan_configure_dep, parse_arguments): Use locate_am.
1763         (MAIN): Adjust call to generate_makefile.
1764         * lib/am/configure.am: Remove %MAKEFILE-IN% from the dependencies
1765         of %MAKEFILE%.  %MAKEFILE-IN% is already in %MAKEFILE-DEPS%.
1766         * tests/output6.test, tests/output7.test: New files.
1767         * tests/Makefile.am (TESTS): Add them.
1768         * automake.texi (Requirements) <AC_CONFIG_FILES>: Document how
1769         multiple inputs are scanned.
1771 2003-09-13  Alexandre Duret-Lutz  <adl@gnu.org>
1773         * Makefile.am (FETCHFILES, fetch): Do not fetch lib/Automake/XFile.pm
1774         and lib/Automake/Struct.pm from Autoconf.
1775         * lib/Automake/XFile.pm: Update comment, Automake is now
1776         the master for this file.  Cosmetic changes.
1778 2003-09-09  Akim Demaille  <akim@epita.fr>
1780         * lib/Automake/FileUtils.pm (&update_file): s/cannot not/cannot/g.
1781         Reported by Gary Vaughan.
1782         (&find_file): Walk the @include in forward order.
1784 2003-09-09  Akim Demaille  <akim@epita.fr>
1786         * lib/Automake/FileUtils.pm (&update_file): Be sure not to leave
1787         trailing files.
1789 2003-09-07  Alexandre Duret-Lutz  <adl@gnu.org>
1791         Changes to m4_included files should also cause aclocal.m4 to change.
1792         * aclocal.in (m4_include_rx): New variable.
1793         (scan_configure_dep): New function.
1794         (scan_configure, add_file): Simplify using scan_configure_dep.
1795         * tests/Makefile.am (TESTS): Add acloca13.test.
1796         * tests/aclocal13.test: New file.
1798         * tests/instsh.test: Do not reset $ACLOCAL and $AUTOMAKE now
1799         that we have fake version in the $PATH.
1801         * aclocal.in (add_file): Remove useless filling of $output, probably
1802         left a after CVS conflict.  This code is now in write_aclocal.
1804         * aclocal.in (configure_ac): Do not call require_configure_ac
1805         before parsing the options.
1806         * automake.in (configure_ac): Likewise.
1807         * lib/Automake/Variable.pm (configure_ac): Do not require configure.ac,
1808         find it.
1809         * lib/Automake/Configure_ac.pm (require_configure_ac):
1810         find_configure_ac never return an undefined value, so test
1811         the file's existence instead.
1812         * tests/Makefile.am (TESTS): Add help.test.
1813         * tests/help.test: New file.
1815 2003-09-06  Alexandre Duret-Lutz  <adl@gnu.org>
1817         * lib/Automake/XFile.pm: Update to use ChannelDefs.
1818         (close): Call Automake::FileUtils::handle_exec_errors on errors.
1819         * automake.in (scan_autoconf_files): Exit with $?=63 on version
1820         mismatch.
1821         (scan_autoconf_traces): Likewise.  Close the autoconf pipe to
1822         capture abnormal exits.
1823         * aclocal.in ($exit_status): Remove, and use Channels.pm's $exit_code
1824         instead.
1825         (trace_used_macros): Close the autom4te pipe to capture abnormal exits.
1826         * lib/missing: When a tool has run and exited with $?=63, emulate
1827         it.  Adjust the diagnostic and pretend the tool is tool old in this
1828         case.  Use an emacs-updated "scriptversion" variable.
1829         * configure.in: Output tests/aclocal-${APIVERSION} and
1830         tests/automake-${APIVERSION}.
1831         * tests/aclocal.in, tests/automake.in,
1832         tests/missing.test, tests/missing2.test: New files.
1833         * tests/defs.in (AUTOMAKE, ACLOCAL, PATH): Define
1834         to use tests/aclocal-$APIVERSION and tests/automake-$APIVERSION.
1835         * tests/dup3.test: Remove. alocal9.test, acloca10.test, and others are
1836         already testing for this.
1837         * tests/depacl2.test, tests/dup2.test, tests/order.test: Fix
1838         configure.in so that aclocal works.
1839         * tests/defun.test: Quote the AC_DEFUN body.
1840         * tests/Makefile.am (TESTS): Add missing.test and missing2.test,
1841         and remove dup3.test.
1842         (check_SCRIPTS): Add aclocal and automake.
1844         * tests/unused.test: Quote AC_DEFUN arguments.
1846 2003-09-05  Paul Eggert  <eggert@twinsun.com>
1848         * NEWS, aclocal.in, automake.in, automake.texi, lib/ansi2knr.c,
1849         lib/depcomp, lib/missing, lib/py-compile,
1850         lib/Automake/Channels.pm, lib/Automake/Rule.pm,
1851         lib/Automake/Variable.pm, lib/Automake/tests/Condition.pl,
1852         lib/am/dejagnu.am, lib/am/depend.am, lib/am/lisp.am,
1853         lib/am/remake-hdr.am, lib/am/texi-vers.am, m4/obsolete.m4,
1854         m4/python.m4, tests/backsl4.test, tests/defs.in,
1855         tests/dejagnu7.test, tests/depacl2.test, tests/dirlist.test,
1856         tests/error.test, tests/getopt.test, tests/gnuwarn.test,
1857         tests/include2.test, tests/libobj10.test, tests/libtool5.test,
1858         tests/libtool6.test, tests/lisp3.test, tests/phony.test,
1859         tests/pr220.test, tests/subcond2.test, tests/subcond3.test,
1860         tests/vtexi.test:
1861         Spelling and minor grammar fixes.
1863 2003-09-01  Alexandre Duret-Lutz  <adl@gnu.org>
1865         * lib/config.sub, lib/config.guess, lib/texinfo.tex,
1866         lib/config-ml.in, lib/symlink-tree: New upstream versions.
1868 2003-08-31  Thien-Thi Nguyen  <ttn@gnu.org>  (tiny change)
1870         * tests/yacc7.test: Require bison.
1872 2003-08-31  Alexandre Duret-Lutz  <adl@gnu.org>
1874         * aclocal.in (scan_file): Warn about underquoted AC_DEFUN.
1875         ($underquoted_manual_once): New variable.
1876         * automake.texi (Extending aclocal): Document this.
1878 2003-08-29  Alexandre Duret-Lutz  <adl@gnu.org>
1880         * aclocal.in (@file_order): New variable, to make sure
1881         files are output in the opposite order of the -I arguments.
1882         (scan_file): Fill it.
1883         (trace_used_macros, write_aclocal): Use it.
1884         (scan_m4_files): Reverse the directory contents, so that
1885         macros from the lexicographically greatest files are preferred.
1886         * tests/aclocal9.test, tests/acloca10.test, tests/acloca11.test:
1887         New files.
1888         * tests/Makefile.am (TESTS): Add them.
1890 2003-08-24  Alexandre Duret-Lutz  <adl@gnu.org>
1892         For Debian Bug #206299:
1893         * automake.in ($configure_deps_greatest_timestamp,
1894         $output_deps_greatest_timestamp): New variables.
1895         (initialize_per_input): Reset $output_deps_greatest_timestamp.
1896         (scan_autoconf_traces, scan_autoconf_files, read_am_file):
1897         Update $configure_deps_greatest_timestamp and
1898         $output_deps_greatest_timestamp
1899         (generate_makefile): Rewrite the logic to decide whether
1900         to rewrite the output.  Move the leading dup_channel_setup
1901         and trailing drop_channel_setup to MAIN, so that
1902         drop_channel_setup is executed for all exit paths.
1903         * tests/aclocal7.test: Update to check for $AUTOMAKE --no-force
1904         * tests/distcom6.test: New file.  Report from Scott James Remnant.
1905         * tests/Makefile.am (TESTS): Add distcom6.test.
1907         * configure.in: Require Autoconf 2.57b to be sure
1908         aclocal can use autom4te --language Autoconf-without-aclocal-m4.
1909         * m4/init.m4: Likewise.  Move the AC_PREREQ and m4_pattern_allow
1910         calls inside the AM_INIT_AUTOMAKE macro.
1911         * m4/auxdir.m4, m4/cond.m4, m4/lex.m4, m4/regex.m4: Move
1912         AC_PREREQ calls inside the macros.
1913         * m4/header.m4: Remove AC_PREREQ.
1915         * automake.in (file_contents_internal): Do not add newlines before
1916         empty actions.
1918         * aclocal.in (write_aclocal): Take an output file and list of
1919         used macros in arguments and make up the file contents here.
1920         (trace_used_macros): New function.
1921         (add_file): Do not update $output.
1922         ($output): Delete.
1923         (MAIN): Call trace_used_macros.  Then rewrite aclocal.m4 only
1924         for these traced macros.  This should shorten aclocal.m4 by
1925         stripping out unused macros.
1926         * automake.texi (Invoking aclocal): Document ${AUTOM4TE}.
1927         * tests/aclibobj.test: Make sure configure.in exists by the time
1928         aclocal runs.
1929         * tests/aclocal8.test: New file.
1930         * tests/Makefile.am (TESTS): Add aclocal8.test.
1931         Suggested by Bruno Haible and Akim Demaille.
1933 2003-08-21  Akim Demaille  <akim@epita.fr>
1935         * lib/Automake/Configure_ac.pm (&find_configure_ac)
1936         (&require_configure_ac): Accept an optional directory argument.
1937         ($configure_ac): Remove.
1938         * aclocal.in, automake.in ($configure_ac): New.
1939         * lib/Automake/Variable.pm: Don't use $configure_ac, just
1940         configure.ac.
1942 2003-08-20  Akim Demaille  <akim@epita.fr>
1944         * lib/Automake/FileUtils.pm: More perldoc.
1945         (&up_to_date_p): New.
1947 2003-08-17  Alexandre Duret-Lutz  <adl@gnu.org>
1949         Fix for PR automake/398:
1950         * m4/python.m4: Do not call AC_PATH_PROGS if $PYTHON is already
1951         set.  Display `none' instead of `:' and $PYTHON is set to `:'
1952         when no suitable interpreter is found.  Honor ACTION-IF-FOUND and
1953         ACTION-IF-NOT-FOUND.
1954         * automake.texi (Python): Document ACTION-IF-FOUND and
1955         ACTION-IF-NOT-FOUND.
1956         * tests/python4.test, tests/python5.test, tests/python6.test,
1957         tests/python7.test, tests/python8.test, tests/python9.test: New
1958         files.
1959         * tests/Makefile.am (TESTS): Add them.
1960         Report from Per Cederqvist.
1962 2003-08-13  Alexandre Duret-Lutz  <adl@gnu.org>
1964         Fix for PR automake/399:
1965         * m4/python.m4: Use AC_PATH_PROGS, not AC_PATH_PROG.
1966         Report from Per Cederqvist.
1968 2003-08-12  Raja R Harinath  <harinath@acm.org>
1970         * lib/Automake/Condition.pm (strip): Replace loop with 'grep'.
1971         (not): Replace loop with 'map'.
1972         * lib/Automake/DisjConditions.pm (sub_conditions): Likewise.
1973         * lib/Automake/Item.pm (not_alwasy_defined_in_cond):
1974         Don't 'simplify' result of 'invert', since it's already in
1975         canonical form.
1976         * lib/Automake/Rule.pm (define): Replace loop with
1977         'not_always_defined_in_cond'.
1979         * lib/Automake/DisjConditions.pm (ambiguous_p): Typo in comment.
1980         * lib/Automake/Rule.pm (accept_extensions, msg_cond_rule): Likewise.
1981         (define): Reword comment slightly.
1982         * Variable.pm (_var_order, msg_cond_var): Typo in comment.
1983         * tests/cond20.test (var2): Use foo.c instead of foo.cc to avoid
1984         spurious automake error exit.
1986 2003-08-12  Alexandre Duret-Lutz  <adl@gnu.org>
1988         * lib/Automake/Item.pm, lib/Automake/ItemDef.pm: New files.
1989         * lib/Automake/Rule.pm, lib/Automake/RuleDef.pm: New files.
1990         * lib/Automake/Makefile.am (dist_perllib_DATA): Add them.
1991         * lib/Automake/VarDef.pm: Make this a subclass of Automake::ItemDef.
1992         (new): Adjust to call Automake::ItemDef::new.
1993         (comment, location, owner): Delete.  Now inherited from ItemDef.
1994         * lib/Automake/Variable.pm: Make this a subclass of Automake::Item.
1995         (_new): Adjust to call Automake::Item::new.
1996         (name, def, rdef, _set, conditions, not_always_defined_in_cond):
1997         Delete.  How inherited from Item, where `_set' is called `set'.
1998         * automake.in (SUFFIX_RULE_PATTERN): Delete. Now in Automake::Rule.
1999         (suffix_rules_default): Delete.  Now
2000         Automake::Rule::_suffix_rules_default
2001         (suffixes): Delete.  Now Automake::Rule::suffixes.
2002         (TARGET_AUTOMAKE, TARGET_USER): Delete.  Now
2003         Automake::RuleDef::RULE_AUTOMAKE and Automake::RuleDef::RULE_USER.
2004         (%targets, %target_source, %target_name, %target_owner): Delete,
2005         replaced by the Rule and RuleDef classes.
2006         (dependencies, depend, actions): Delete.  Now in Automake::Rule.
2007         (suffix_rules, register_suffix_rule): Likewise.
2008         (KNOWN_EXTENSIONS_PATTERN, accept_extensions): Likewise.
2009         (known_extensions_list): Delete.  Now
2010         Automake::Rule::_known_extensions_list.
2011         (target_conditions): Delete.  Now inherited by Automake::Rule
2012         from Automake::Item::conditions.
2013         (rule_define): Delete.  Now Automake::Rule::define.  Adjust all
2014         callers.
2015         (target_defined): Delete.  Now Automake::Rule::rule.  Adjust all
2016         callers.
2017         (initialize_per_input): Adjust to call Automake::Rule::reset.
2018         (err_target, err_cond_target, msg_cond_target, msg_target,
2019         reject_target): Delete.  Now defined in Automake::Rule as
2020         err_rule, err_cond_rule, msg_cond_rule, msg_rule and reject_target.
2021         Adjust all callers.
2022         (handle_languages): Call suffix_rules_count.
2023         * tests/location.test: Adjust expected diagnostics.  We now display
2024         $(EXEEXT) accurately.
2026 2003-08-10  Alexandre Duret-Lutz  <adl@gnu.org>
2028         Revert the fix for PR automake/291:
2029         * lib/Automake/Variable.pm (define): Do not warn about variables
2030         starting with `_' which are an issue on NEWS-OS 4.2R.  According
2031         to Paul Eggert, NEWS-OS 4.2R is ten years old, the latest version
2032         was released on 1996 and is not in wide use.  On the other hand,
2033         variables starting with `_' are mandatory in several situations,
2034         so diagnosing them is more annoying than useful.
2035         * tests/canon5.test: Do not use -Wno-portability.
2036         * tests/vars2.test: Delete.
2037         * tests/Makefile.am (TESTS): Remove vars2.test.
2038         Suggested by Jim Meyering.
2040 2003-08-09  Raja R Harinath  <harinath@acm.org>
2042         * lib/Automake/DisjConditions.pm (ambiguous_p): Simplify slightly.
2043         * lib/Automake/tests/DisjConditions.pl (test_ambig): Test
2044         Automake::Disjunctions::ambiguous_p.
2046 2003-08-07  Alexandre Duret-Lutz  <adl@gnu.org>
2048         * lib/Automake/Variable.pm (condition_ambiguous_p): Move ...
2049         * lib/Automake/DisjConditions.pm (ambiguous_p): ... here.
2050         * automake.in (rule_define): Adjust usage.
2051         * lib/Automake/Variable.pm (_check_ambiguous_condition): Likewise.
2053         * lib/Automake/Options.pm: New file.
2054         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Options.pm.
2055         * automake.in (FOREIGN, GNU, GNITS, $default_strictness)
2056         ($default_strictness_name, $strictness, $strictness_name)
2057         (%options, %global_options, process_option_list)
2058         (set_strictness): Remove, now in Options.pm.
2059         (initialize_per_input): Call Automake::Options::reset.
2060         (handle_options, get_object_extension, get_object_extension)
2061         (handle_languages, handle_single_transform_list, handle_compile)
2062         (handle_texinfo_helper, handle_man_pages, handle_dist)
2063         (handle_configure, do_check_merge_target)
2064         (handle_factored_dependencies, handle_tests)
2065         (handle_minor_options, scan_autoconf_traces, check_cygnus)
2066         (lang_sub_obj, lang_c_rewrite, lang_c_finish, rule_define)
2067         (make_paragraphs, am_install_var, parse_arguments): Adjust
2068         to set and read options via the new interface.
2070 2003-08-07  Raja R Harinath  <harinath@acm.org>
2072         * Makefile.am (maintainer-check): Update perllibdir.
2073         * lib/Automake/Makefile.am (Config.pm): Depend on Makefile too.
2074         (EXTRA_DIST): Add Config.in.
2075         * Makefile.in, lib/Automake/Makefile.in: Regenerate.
2076         * tests/defs.in (AUTOMAKE, ACLOCAL): Use absolute paths in
2077         $perllibdir.
2079 2003-08-06  Raja R Harinath  <harinath@acm.org>
2081         * configure.in (AUTOMAKE, ACLOCAL): Search the 'lib' directory
2082         from the builddir too, to pick up Automake::Config.
2083         * tests/defs.in (AUTOMAKE, ACLOCAL): Likewise.
2084         * configure: Regenerate.
2085         * automake.in (BEGIN): Handle multiple directories in $perllibdir.
2086         * aclocal.in (BEGIN): Likewise.
2088 2003-08-07  Alexandre Duret-Lutz  <adl@gnu.org>
2090         * tests/ltcond.test: Thinko.
2092 2003-08-06  Alexandre Duret-Lutz  <adl@gnu.org>
2094         * lib/Automake/Config.in: New file.
2095         * lib/Automake/Makefile.am (nodist_perllib_DATA, do_subst,
2096         CLEANFILES): New variables.
2097         (Config.pm): New rule.
2098         * Makefile.am (maintainer-check): Adjust expected differences
2099         between automake.in and automake.
2100         * aclocal.in, automake.in: Use Automake::Config.
2102 2003-08-05  Alexandre Duret-Lutz  <adl@gnu.org>
2104         * tests/ltconv.test: s/rm/rm -f/ to placate maintainer-check.
2106         * automake.in (handle_texinfo_helper): Use the user definition
2107         of TEXINFO_TEX before checking for cygnus or AC_CONFIG_AUX_DIR.
2108         * tests/txinfo22.test: New file.
2109         * tests/Makefile.am (TESTS): Add txinfo22.test.
2110         Report from Tom Tromey.
2112 2003-08-03  Raja R Harinath  <harinath@acm.org>
2114         * lib/Automake/Variable.pm (@EXPORT): Remove
2115         traverse_variable_recursively and
2116         require_variables_for_variable.
2117         (require_variables_for_variable, traverse_variable_recursively)
2118         (_traverse_variable_recursively_worker): Convert to
2119         Automake::Variable methods, remove support for being
2120         invoked with variable names, and rename to ...
2121         (requires_variables, traverse_recursively)
2122         (_do_recursive_traversal): ... these.
2123         (_value_as_list_recursive_worker, transform_variable_recursively):
2124         Update to reflect changes.
2125         * automake.in (handle_LIBOBJS, handle_ALLOCA)
2126         (handle_libraries, handle_ltlibraries, am_primary_prefixes):
2127         Likewise.
2128         (define_objects_from_sources): Fix typo in comment.
2130 2003-08-02  Raja R Harinath  <harinath@acm.org>
2132         * automake.in (handle_source_transform): Replace 'grep' with 'map'.
2133         (register_language): Replace 'grep' with 'foreach' modifier.
2135 2003-08-01  Raja R Harinath  <harinath@acm.org>
2137         * lib/Automake/Variables.pm (variables): Return a list of
2138         Automake::Variable instances, not a list of strings.
2139         (dump): Remove support for being invoked with a string.
2140         (variables_dump): Adapt to these changes.
2141         * automake.in (check_typos): Likewise.
2142         (am_primary_prefixes): Likewise.
2144 2003-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
2146         * lib/depcomp (aix): Support AIX Compiler version 6.
2148 2003-07-31  Alexandre Duret-Lutz  <adl@gnu.org>
2150         * automake.texi (A Shared Library): Rewrite and split into
2151         subsections.  Valuable comments from Norman Gray, Harlan Stenn,
2152         Tim Van Holder, and Guido Draheim.
2153         * tests/ltcond.test, tests/ltcond2.test, tests/ltconv.test: New files.
2154         * tests/Makefile.am (TESTS): Add them.
2156 2003-07-30  Alexandre Duret-Lutz  <adl@gnu.org>
2158         * automake.in (handle_single_transform_list): Complain about
2159         foo.$(OBJEXT) being created both with libtool and without, not
2160         about foo.lo.
2161         Report from Tim Van Holder.
2163 2003-07-29  Alexandre Duret-Lutz  <adl@gnu.org>
2165         * Makefile.am (FETCHFILES, fetch): Add config-ml.in and
2166         symlink-tree.
2167         * lib/config.sub, lib/config-ml.in, lib/texinfo.tex: New
2168         upstream versions.
2170 2003-07-28  Alexandre Duret-Lutz  <adl@gnu.org>
2172         * automake.in (handle_configure): Cosmetic change to avoid
2173         a maintainer-check complaint.
2175 2003-07-27  Alexandre Duret-Lutz  <adl@gnu.org>
2177         * lib/Automake/Variable.pm (@EXPORT): Remove variable_dump.
2178         (variable_dump): Replace by ...
2179         (dump): ... this method.
2180         (rdef, _check_ambiguous_condition): Adjust to use ->dump.
2181         (define, variables_dump): Adjust to use Automake::Variable::dump
2183         * lib/am/compile.am (mostlyclean-compile): Do not erase core dumps.
2184         * automake.texi (Built sources example): Adjust example.
2186 2003-07-26  Alexandre Duret-Lutz  <adl@gnu.org>
2188         * automake.in (get_object_extension, handle_languages)
2189         (handle_single_transform_list, handle_compile, handle_compile)
2190         (handle_texinfo_helper, handle_texinfo_helper, handle_man_pages)
2191         (handle_tests, handle_minor_options, check_gnu_standards)
2192         (lang_sub_obj, lang_c_rewrite, lang_c_finish, rule_define):
2193         Simplify "if (defined $options{'X'})" into "if ($options{'X'})".
2195         Complete changes from 2003-07-08.
2196         * automake.in ($cmdline_use_dependencies, $use_dependencies): Remove,
2197         replaced by $options{'no-dependencies'}.
2198         ($global_options): Remove.
2199         (%global_options): New variable.
2200         (initialize_per_input): Empty %options.
2201         (process_option_list): Take a location and %options ref argument,
2202         process no-dependencies as other options.
2203         (handle_options): Do not reparse the global options, just initialize
2204         %options from %global_options and fill it with local options.
2205         (handle_languages, handle_single_transform_list)
2206         (handle_configure, check_cygnus): Adjust usage of
2207         $options{'no-dependencies'}.
2208         (make_paragraphs): Adjust usage of $options{'cygnus'}.
2209         (parse_arguments): Set cygnus and no-dependencies in %global_options.
2210         (scan_autoconf_traces) <AM_INIT_AUTOMAKE>: Call process_option_list
2211         to fill %global_options.
2213 2003-07-25  Alexandre Duret-Lutz  <adl@gnu.org>
2215         * tests/remake4.test: Use `$MAKE distdir' instead of `$MAKE dist' to
2216         avoid the use of tar.
2218 2003-07-24  Alexandre Duret-Lutz  <adl@gnu.org>
2220         * tests/gnuwarn2.test: Typo.
2222         * tests/insthook.test: Use $MAKE, not make.
2224         Fix missing rebuilds during `make dist' with BSD make.
2225         * automake.in (generate_makefile): Do not push Makefile.in, and
2226         Makefile.am into DIST_COMMON here.
2227         * lib/am/configure.am (DIST_COMMON): Do it here, and use
2228         %MAKEFILE-AM% and %MAKEFILE-IN% so that items in DIST_COMMON
2229         actually match the targets.   Prefix `configure' with `$(srcdir)/'
2230         to match the target.
2231         * tests/remake4.test: New file.
2232         * tests/Makefile.am (TESTS): Add remake4.test.
2233         Report from Akim Demaille.
2235 2003-07-23  Alexandre Duret-Lutz  <adl@gnu.org>
2237         * automake.in (handle_multilib): Register all-multi.
2238         (file_contents_internal): Insert \n when concatenating actions
2239         from "factored" rules.
2240         * lib/config-ml.in: New file, from GCC, including a patch
2241         from Ralf Corsepius (see GCC's PR 11526).
2242         * lib/symlink-tree.in: New file, from GCC.
2243         * lib/Makefile.am (dist_script_DATA): Add config-ml.in and
2244         symlink-tree.
2245         * lib/am/clean.am (distclean-generic): Do not delete Makefile here...
2246         (distclean, maintainer-clean): ... do it here.
2247         * lib/am/depend.am (distclean-depend): Likewise, replace by
2248         (distclean, maintainer-clean): ... these.
2249         * lib/am/multilib.am (all-recursive, install-recursive,
2250         mostlyclean-recursive, clean-recursive, distclean-recursive,
2251         maintainer-clean-recursive): Remove these rules.
2252         (mostlyclean-am, clean-am, distclean-am, maintainer-clean-am): Replace
2253         by ...
2254         (mostlyclean, clean, distclean, maintainer-clean): ... these.
2255         (all-am): Remove, done in handle_multilib.
2256         (install-am): Replace by ...
2257         (install-exec-am): ... this.
2258         * tests/Makefile.am (TESTS): Add multlib.test.
2259         * tests/multlib.test: New file, based on a test case by
2260         Ralf Corsepius
2262 2003-07-23  Tom Tromey  <tromey@redhat.com>
2264         * lib/missing (autom4te): Typo.
2266 2003-07-16  Derek Price  <derek@ximbiot.com>
2268         * automake.in (scan_autoconf_traces): Handle AC_CONFIG_LINKS.
2269         (handle_configure): Handle adding AC_CONFIG_LINKS arguments to
2270         distclean targets (CONFIG_CLEAN_FILES makefile var).
2271         * NEWS: Note new handling of AC_CONFIG_LINKS.
2272         * automake.texi (Other things Automake recognizes): Ditto.
2273         * tests/Makefile.am (TESTS): Add new tests.
2274         * tests/conflnk.test: New test that links are cleaned on distclean.
2275         * tests/conflnk2.test: New test that source files for links are
2276         distributed.
2278 2003-07-15  Ralf Corsepius <corsepiu@faw.uni-ulm.de>  (tiny change)
2280         * automake.in (scan_autoconf_traces): Trace AM_ENABLE_MULTILIB to
2281         render $seen_multilib functional again.
2283 2003-07-10  Raja R Harinath  <harinath@cs.umn.edu>
2285         Avoid using refs as hash keys.
2286         * lib/Automake/Variable.pm ($_traversal): New.
2287         (reset): Reset $_traversal.
2288         (_new): New attribute 'scanned'.
2289         (%_vars_scanned): Remove.
2290         (traverse_variable_recursively)
2291         (traverse_variable_recursively_worker):
2292         Use $_traversal instead of %_vars_scanned to detect recursively
2293         defined variables.
2295         * lib/am/configure.am (am--refresh): Silence.
2297 2003-07-10  Alexandre Duret-Lutz  <adl@gnu.org>
2299         * lib/Automake/Variable.pm (define): Make clear the diagnostic
2300         about variable names starting with `_' is about *Make* variables.
2302         For Debian Bug #193907:
2303         * automake.texi (Clean): make maintainer-clean should still
2304         allow ./configure && make to run.
2306         * automake.texi (CVS): Typo.
2308 2003-07-09  Alexandre Duret-Lutz  <adl@gnu.org>
2310         * aclocal.in: Use Automake::FileUtils.
2311         (parse_arguments, scan_configure, scan_m4_files): Never call
2312         "die" to print an error message.  Use print and exit.
2313         * automake.in: Use Automake::FileUtils.
2314         * lib/Automake/General.pm ($debug, $help, $tmp, $verbose,
2315         $version, &debug, &getopt, &mktmpdir, &verbose): Remove.
2316         (END): Do not massage Perl's exit code.  Do not clean any temporary
2317         directory.
2318         (find_file, mtime, update_file, xsystem, contents): Move to ...
2319         * lib/Automake/FileUtils.pm: ... this new file.  Adjust to
2320         report errors using Channels.
2321         (handle_exec_errors, xqx): New functions, from Autoconf.
2322         * lib/Automake/Makefile.am (dist_perllib_DATA): Add FileUtils.pm.
2324         * lib/Automake/Variable.pm (_traverse_variable_recursively_worker):
2325         Return the empty list on recursively defined variable.  This
2326         supersedes my change of 2003-07-02.
2328 2003-07-08  Akim Demaille  <akim@epita.fr>
2330         * automake.in ($cygnus_mode): Replace with $options{'cygnus'}.
2331         Adjust all dependencies.
2332         (&depend): Move next to %dependencies and prototype.
2333         (&initialize_per_input): Initialize the 'cygnus' field of
2334         '%options' to spare the code from 'exists' or 'defined' when
2335         testing it.
2336         (&handle_configure, &do_check_merge_target, &check_cygnus): Prototype.
2337         (&parse_arguments): Rename '%options' and '%options_1st_pass' as
2338         '%cli_options' and '%cli_options_1st_pass' to avoid clashes and
2339         inconsistencies.
2341 2003-07-07  Alexandre Duret-Lutz  <adl@gnu.org>
2343         * automake.in (generate_makefile): Move near the end of the
2344         file, after the definition of all called functions, so that
2345         prototypes can be enforced.
2347 2003-07-06  Akim Demaille  <akim@epita.fr>
2349         * lib/am/subdirs.am (RECURSIVE_TARGETS): Move install-recursive,
2350         install-exec-recursive, install-data-recursive and
2351         uninstall-recursive addition to...
2352         * lib/am/texinfos.am: here.
2353         * lib/am/texinfos.am, lib/am/subdirs.am: Remove the .PHONY
2354         declaration of RECURSIVE_TARGETS.
2356 2003-07-06  Akim Demaille  <akim@epita.fr>
2358         * lib/Automake/Variable.pm, lib/Automake/VarDef.pm (VAR_SORTED):
2359         New variable type.
2360         Handle it.
2361         * automake.in (&handle_subdirs): Prototype.
2362         Adjust callers.
2363         Make RECURSIVE_TARGETS a VAR_SORTED.
2365 2003-07-06  Akim Demaille  <akim@epita.fr>
2367         * automake.in (&define_files_variable): New.
2368         (&handle_texinfo_helper): Move the handling of user variables from
2369         here, to...
2370         (&handle_texinfo): here.
2371         This is to balance the size of these functions, and to match the
2372         convention of other _helper functions.
2373         (&handle_texinfo_helper): Use &define_files_variable.
2374         Move some code to use less variables.
2375         Rename $info_cursor as $texi.
2376         (&handle_texinfo): Do not call handle_texinfo_helper if there are
2377         no TEXINFOS.
2378         * lib/am/texinfos.am: Sort the occurrences of dvi, info, pdf, ps
2379         and html.
2380         Remove *-recursive targets from .PHONY, they are part of
2381         $(RECURSIVE_TARGETS) anyway.
2382         (install-info, mostlyclean-aminfo): Are .PHONY.
2384 2003-07-05  Akim Demaille  <akim@epita.fr>
2386         * lib/am/distdir.am: Use ';' as a terminator, not a separator, for
2387         sed complex commands, as required by NetBSD sed.
2388         Reported by Patrick Welche.
2390 2003-07-05  Alexandre Duret-Lutz  <adl@gnu.org>
2392         * lib/config.guess, lib/config.sub: New upstream version.
2394 2003-07-04  Alexandre Duret-Lutz  <adl@gnu.org>
2396         * automake.texi (Optional, Dist): AC_CONFIG_AUX_DIR files
2397         are automatically distributed.
2399         * lib/depcomp (icc): Update to grok ICC 7.1's output.
2400         * m4/depend.m4 (_AM_DEPENDENCIES): Check dependency generation
2401         in a subdirectory, and with many dependencies.  This
2402         catches more failures of depcomp.
2403         Reports from Ralf Wildenhues and Akim Demaille.
2405 2003-07-04  Akim Demaille  <akim@epita.fr>
2407         * automake.in (&scan_texinfo_file, &output_texinfo_build_rules,
2408         (&handle_texinfo_helper, &handle_texinfo): Formatting changes.
2409         Prototype properly.
2410         Don't use & when calling functions.
2412 2003-07-03  Alexandre Duret-Lutz  <adl@gnu.org>
2414         * NEWS: Categorize entries.
2415         Suggested by Jim Meyering.
2417         * Makefile.am (maintainer-clean): Disallow '$AUTOMAKE && exit 1'.
2418         Ignore @...@ substitutions in comments.
2419         * tests/defs.in: Try to make the shell more POSIX compliant.
2420         (AUTOMAKE_run, AUTOMAKE_fails): New functions.
2421         * tests/README: Mention AUTOMAKE_fails.
2422         * tests/alloca.test, tests/alloca2.test, tests/ansi8.test,
2423         * tests/asm.test, tests/backsl3.test, tests/backsl4.test,
2424         * tests/badline.test, tests/badopt.test, tests/canon.test,
2425         * tests/canon5.test, tests/colneq.test, tests/comment3.test,
2426         * tests/comment5.test, tests/cond2.test, tests/cond20.test,
2427         * tests/cond23.test, tests/cond24.test, tests/cond27.test,
2428         * tests/condinc2.test, tests/conff2.test, tests/cxx2.test,
2429         * tests/dejagnu2.test, tests/dirforbid.test,
2430         * tests/distcom3.test, tests/else.test, tests/exdir2.test,
2431         * tests/exeext2.test, tests/gcj2.test, tests/gcj5.test,
2432         * tests/getopt.test, tests/gettext.test, tests/gettext2.test,
2433         * tests/gnits.test, tests/gnuwarn.test, tests/gnuwarn2.test,
2434         * tests/insh.test, tests/lex2.test, tests/libobj10.test,
2435         * tests/libobj12.test, tests/libobj13.test,
2436         * tests/libobj3.test, tests/library2.test,
2437         * tests/library3.test, tests/libtool4.test,
2438         * tests/libtool6.test, tests/lisp2.test, tests/location.test,
2439         * tests/nogzip2.test, tests/output5.test, tests/overrid.test,
2440         * tests/percent.test, tests/percent2.test,
2441         * tests/pluseq5.test, tests/pluseq7.test, tests/pluseq9.test,
2442         * tests/pr211.test, tests/primary.test, tests/primary2.test,
2443         * tests/python2.test, tests/recurs.test, tests/reqd2.test,
2444         * tests/seenc.test, tests/specflg.test, tests/specflg2.test,
2445         * tests/spell.test, tests/spell2.test, tests/srcsub.test,
2446         * tests/srcsub2.test, tests/stdlib.test, tests/subdir7.test,
2447         * tests/substtarg.test, tests/suffix11.test,
2448         * tests/symlink.test, tests/syntax.test,
2449         * tests/targetclash.test, tests/txinfo4.test,
2450         * tests/version3.test, tests/warnopts.test,
2451         * tests/xsource.test, tests/yacc2.test: Use set -e,
2452         AUTOMAKE_fails, and always grep error message.
2454         * automake.in (handle_ltlibraries): Fix call to msg.
2456         * tests/stamph.test: Delete.
2457         * tests/Makefile.am (TESTS): Remove stamph.test.
2459         * automake.in (handle_single_transform_list): Use $var->name
2460         to print variable in the configure-substitution diagnostic.
2461         Do not mention the parent when it is the variable itself.
2463         * tests/package.test: Delete.
2464         * tests/Makefile.am (TESTS): Remove package.test.
2466         * automake.in (cond_stack_else): Return FALSE if `if' was not
2467         used.
2468         (cond_stack_endif): Return TRUE if `if' was not used.  Do not
2469         display $negate and $cond, they are irrelevant and maybe undefined.
2471 2003-07-02  Alexandre Duret-Lutz  <adl@gnu.org>
2473         * lib/Automake/Variable.pm (_traverse_variable_recursively_worker):
2474         Do not return undef when a variable is recursively defined, this
2475         causes warnings all over the place.  Return the empty string instead.
2477         * lib/am/distdir.am (distcheck): Protect loop of DIST_ARCHIVES
2478         from empty DIST_ARCHIVES.
2480 2003-07-01  Alexandre Duret-Lutz  <adl@gnu.org>
2482         * automake.in (scan_autoconf_traces): Check the expected
2483         number of arguments of each traced macro.
2484         * tests/overrid.test: Fix call to AM_CONDITIONAL.
2485         * tests/conff2.test: New files.
2486         * tests/Makefile.am (TESTS): Add conff2.test.
2487         Report from Paolo Bonzini.
2489 2003-06-30  Alexandre Duret-Lutz  <adl@gnu.org>
2491         * automake.in ($SUBST_REF_PATTERN): Do not define.
2492         (%gen_varname): Move to Variable.pm, as %_gen_varname.
2493         (initialize_per_input): Do not clean %gen_varname.
2494         (handle_options, check_libobjs_sources, handle_source_transform,
2495         handle_LIBOBJS, handle_ltlibraries, handle_texinfo_helper,
2496         handle_man_pages, handle_dist, handle_subdirs, handle_gettext,
2497         am_install_var): Adjust to use value_as_list_recursive,
2498         loc_and_value_as_list_recursive, and has_conditional_contents.
2499         (require_file_with_macro): Accept an Automake::Variable as argument.
2500         (traverse_variable_recursively,
2501         traverse_variable_recursively_worker, gen_varname,
2502         transform_variable_recursively): Move ...
2503         * lib/Automake/Variable.pm (traverse_variable_recursively,
2504         _traverse_variable_recursively_worker,
2505         _gen_varname, transform_variable_recursively): ... here.
2506         * automake.in (variable_conditionally_defined,
2507         variable_value_as_list_recursive_worker,
2508         variable_value_as_list_recursive
2509         variable_loc_and_value_as_list_recursive): Move ...
2510         * lib/Automake/Variable.pm (has_conditional_contents,
2511         _value_as_list_recursive_worker,
2512         value_as_list_recursive, loc_and_value_as_list_recursive): ... here.
2513         (reset): Reset %_gen_varname.
2514         (require_variables_for_variable): Accept an Automake::Variable
2515         as argument.
2517 2003-06-27  Alexandre Duret-Lutz  <adl@gnu.org>
2519         * tests/aclocal6.test: Test maintainer-clean in VPATH
2520         builds. (For Ralf's fix.)
2522 2003-06-27  Ralf Corsepius  <corsepiu@faw.uni-ulm.de>  (tiny change)
2524         * lib/am/configure.am (maintainer-clean): Remove
2525         $(top_srcdir)/autom4te.cache, not autom4te.cache.
2527 2003-06-27  Akim Demaille  <akim@epita.fr>
2529         * automake.texi: Use @node with a single argument.
2531 2003-06-27  Alexandre Duret-Lutz  <adl@gnu.org>
2533         * m4/Makefile.am (dist_m4data_DATA): Add $(top_srcdir)/m4/amversion.m4.
2535         * lib/am/distdir.am (distcheck): Run $(am__remove_distdir)
2536         at the end of distcheck.  This was mistakenly removed on
2537         2003-06-15.
2538         * tests/subpkg.test: Make sure distcheck cleans up after itself.
2540         * m4/Makefile.am ($(srcdir)/amversion.m4): Rename as ...
2541         ($(top_srcdir)/m4/amversion.m4): ... this.
2542         (DISTCLEANFILES): Remove.
2543         (nodist_m4data_DATA): Remove. amversion.m4 is automatically
2544         distributed.
2545         (EXTRA_DIST): Add amversion.in.
2547 2003-06-25  Akim Demaille  <akim@epita.fr>
2549         * automake.texi (Top): Use @copying and @insertcopying.
2550         Make Alexandre an author.
2551         * automake.in ($gen_copyright): Add the "(C)" to Copyright.
2552         * lib/depcomp: Likewise.
2554 2003-06-23  Alexandre Duret-Lutz  <adl@gnu.org>
2556         * lib/Automake/Variable.pm (vardef, rvardef, set_seen): New functions.
2557         (variable_defined, examine_variable): Remove.
2558         (%_ac_macro_for_var): Add an entry for ALLOCA.
2559         (require_variables): Use vardef instead of variable_defined.
2560         Do not use _cvar.
2561         * automake.in (generate_makefile): Do not push $(SOURCE) into
2562         @sources.  Use define_pretty_variable to define SOURCES.
2563         (handle_LIBOBJS, handle_ALLOCA): Use require_variables_for_variable
2564         to require LIBOBJS, LTLIBOBJS and ALLOCA.
2565         (handle_programs, handle_ltlibraries): Do not define an empty
2566         _DEPENDENCIES or _LDFLAGS variable when none is defined.
2567         (define_configure_variable): Do not check whether the variable
2568         already exists (it's Automake::Variable::define's job).
2569         (require_build_directory): Likewise, do not check
2570         the existence of am__dirstamp.
2571         (generate_makefile, handle_options, handle_languages)
2572         (check_libobjs_sources, handle_single_transform_list)
2573         (traverse_variable_recursively_worker, handle_source_transform)
2574         (handle_lib_objects, handle_LIBOBJS, handle_compile)
2575         (handle_libtool, handle_programs, handle_libraries)
2576         (handle_ltlibraries, check_typos, handle_texinfo_helper)
2577         (handle_man_pages, handle_tags, handle_dist, handle_subdirs)
2578         (scan_aclocal_m4, handle_gettext, handle_footer, handle_install)
2579         (handle_all, do_check_merge_target, handle_clean, lang_c_finish)
2580         (handle_tests, lang_yacc_target_hook, define_pretty_variable)
2581         (define_compiler_variable, define_linker_variable)
2582         (make_paragraphs, am_primary_prefixes, am_install_var): Adjust to
2583         call var, vardef, or set_seen, instead of variable_defined.  Use
2584         set_seen only for variables which are actually checked by
2585         check_typos.
2586         * tests/target.test: Delete.
2587         * tests/alloca.test, tests/alloca2.test: New files.
2588         * tests/libobj3.test: Check error message.
2589         * tests/distcom4.test: Make sure configure is in DIST_COMMON.
2590         This replace confdist.test.
2591         * tests/Makefile.am (TESTS, XFAIL_TESTS): Remove target.test.
2592         (TESTS): Add alloca.test and alloca2.test.  Remove confdist.test.
2594 2003-06-20  Alexandre Duret-Lutz  <adl@gnu.org>
2596         * automake.in (handle_dist): Delete DIST_COMMON before redefining
2597         it.  Bug report from Akim Demaille.
2598         (rewrite_inputs_into_dependencies): Make sure we always return
2599         something, even when $add_srcdir is 0.
2600         * tests/distcom4.test, tests/distcom5.test: New files.
2601         * tests/Makefile.am (TESTS): Add distcom4.test and distcom5.test.
2603         * tests/cond29.test: Also check for _SOURCES.
2604         Report from Paolo Bonzini.
2606 2003-06-20  Akim Demaille  <akim@epita.fr>
2608         * lib/am/configure.am: Replace leading spaces with a real tab.
2610 2003-06-15  Alexandre Duret-Lutz  <adl@gnu.org>
2612         * tests/nogzip.test, tests/nogzip2.test: New files.
2613         * tests/Makefile.am (TESTS): Add nogzip.test and nogzip2.test
2615 2003-06-15  Akim Demaille  <akim@epita.fr>
2617         * automake.in (&make_paragraphs): Define %GZIP%.
2618         (&process_option_list): Accept no-dist-gzip2.
2619         (&handle_dist): Complain when no archive format is enabled.
2620         * lib/am/distdir.am (DIST_ARCHIVES): New variable.
2621         (dist-gzip, dist-bzip2, dist-tarZ, dist-zip): No longer
2622         conditioned.
2623         (dist): Build $(distdir).tar.gz conditionally.
2624         (distcheck): Use DIST_ARCHIVES to find an archive to unpack, and
2625         to list built archives.  Run $(MAKE) dist instead of dist-gzip.
2626         * automake.texi (Options, The types of distributions): Adjust.
2628 2003-06-15  Jens Elkner  <elkner@imsgroup.de>  (tiny change)
2630         * m4/lispdir.m4 (AM_PATH_LISPDIR): Fix sed commands to work with
2631         POSIXLY_CORRECT=1.
2633 2003-06-14  Karl Berry  <karl@gnu.org>
2634             Alexandre Duret-Lutz  <adl@gnu.org>
2636         * mkinstalldirs (scriptversion): New variable.  Setup emacs hooks
2637         to update it each time the file is written, as in install-sh.
2638         (usage): Improve message.
2639         (--version): New option.
2640         (--help): Output to stdout, not stderr.
2642 2003-06-13  Paul Eggert  <eggert@twinsun.com>
2644         * lib/install-sh (dsttmp, rmtmp): Do not use '#' in file names;
2645         it's not guaranteed by POSIX and it doesn't work on OpenVMS.
2646         Bug reported by Bernard Giroud in:
2647         http://mail.gnu.org/archive/html/autoconf-patches/2003-06/msg00013.html
2649 2003-06-05  Alexandre Duret-Lutz  <adl@gnu.org>
2651         * automake.in (check_gnu_standards): Use no-installman and
2652         no-installinfo's locations.
2653         (process_option_list): Fill %options with locations.
2654         (check_cygnus) Fill $options{'no-installinfo'} and
2655         $options{'no-dependencies'} with $cygnus_mode, so that it
2656         remains a Location.
2657         * tests/gnuwarn2.test: New file.
2658         * tests/Makefile.am (TESTS): Add gnuwarn2.test.
2660 2003-06-04  Alexandre Duret-Lutz  <adl@gnu.org>
2662         * automake.in (process_option_list): Record the location
2663         of ansi2knr's definition.
2664         (handle_compile): Use it.
2665         * tests/ansi3.test: Make sure the location appears correctly.
2666         Update to use set -e.
2667         * tests/ansi3b.test: New file.
2668         * tests/Makefile.am (TESTS): Add ansi3b.test.
2670         * tests/alpha.test: Really run $MAKE.  Augment to test
2671         subdirectories, and check-news report.
2672         * tests/alpha2.test: New file.  Bug report from Akim Demaille.
2673         * tests/gnits2.test: Make sure README-alpha is not distributed.
2674         * tests/Makefile.am (TESTS): Add alpha2.test.
2675         * automake.in (handle_minor_options): Distribute README-alpha
2676         using push_dist_common, not require_file_with_macro.
2678 2003-06-03  Alexandre Duret-Lutz  <adl@gnu.org>
2680         * lib/Automake/Configure_ac.pm
2681         (search_configure_ac, find_configure_ac): Rename as ...
2682         (find_configure_ac, require_configure_ac): ... these.
2683         * aclocal.in (scan_configure): Adjust call to require_configure_ac.
2684         * automake.in (scan_autoconf_files): Likewise.
2685         Suggested by Tim Van Holder.
2687         * alocal.in: Use Automake::Configure_ac.
2688         ($configure_ac): Delete.
2689         (scan_configure): Adjust use of find_configure_ac;
2690         * automake.in: Use Automake::Configure_ac.
2691         ($configure_ac): Delete.
2692         (scan_autoconf_files): Adjust use of find_configure_ac;
2693         * lib/Automake/Configure_ac.pm: New file.
2694         * lib/Automake/General.pm (find_configure_ac): Delete.  Now
2695         replaced by Automake::Configure_ac::search_configure_ac.
2696         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Configure_ac.pm.
2697         * lib/Automake/Variable.pm: Use Automake::Configure_ac.
2698         (require_variables): Adjust use of $configure_ac.
2700 2003-06-02  Akim Demaille  <akim@epita.fr>
2702         * lib/am/texi-vers.am, lib/am/subdirs.am, lib/am/scripts.am,
2703         * lib/am/remake-hdr.am, lib/am/python.am, lib/am/progs.am,
2704         * lib/am/program.am, lib/am/multilib.am, lib/am/mans.am,
2705         * lib/am/mans-vars.am, lib/am/ltlibrary.am, lib/am/ltlib.am,
2706         * lib/am/lisp.am, lib/am/libtool.am, lib/am/library.am,
2707         * lib/am/lang-compile.am, lib/am/java.am, lib/am/header.am,
2708         * lib/am/header-vars.am, lib/am/footer.am, lib/am/depend.am,
2709         * lib/am/dejagnu.am, lib/am/data.am, lib/am/compile.am,
2710         * lib/am/clean.am, lib/am/clean-hdr.am, lib/am/check.am,
2711         * lib/am/ansi2knr.am, lib/am/Makefile.am, lib/Makefile.am,
2712         * m4/strip.m4, m4/sanity.m4, m4/runlog.m4, m4/regex.m4,
2713         * m4/python.m4, m4/protos.m4, m4/options.m4, m4/obsolete.m4,
2714         * m4/obsol-lt.m4, m4/obsol-gt.m4, m4/multi.m4, m4/missing.m4,
2715         * m4/minuso.m4, m4/maintainer.m4, m4/lispdir.m4, m4/lex.m4,
2716         * m4/install-sh.m4, m4/header.m4, m4/gcj.m4, m4/dmalloc.m4,
2717         * m4/depout.m4, m4/cond.m4, m4/ccstdc.m4, m4/auxdir.m4, m4/as.m4,
2718         * m4/Makefile.am: White space changes and Copyright updates.
2720 2003-05-29  Alexandre Duret-Lutz  <adl@gnu.org>
2722         * lib/Automake/Variable.pm (check_defined_unconditionally): Add
2723         the $parent_cond argument.
2724         (output): Use $self->name in diagnostic not $self.
2725         (variable_value_as_list): Rename as ...
2726         (value_as_list): ... this.  Declare as a method.  Take a $parent_cond
2727         argument and pass it to check_defined_unconditionally.  Do not call
2728         variable_assert, now that this is a method.
2729         (variable_assert): Delete (unused).
2730         * automake.in (traverse_variable_recursively_worker): Adjust to
2731         use check_defined_unconditionally and value_as_list as a methods.
2733         * lib/Automake/Variable.pm (output): Declare as a method, since it
2734         is only used this way.
2735         (define): Fix documentation of $cond.
2736         Suggested by Raja R. Harinath.
2738 2003-05-25  Alexandre Duret-Lutz  <adl@gnu.org>
2740         * lib/Automake/Variable.pm, lib/Automake/VarDef.pm: New files.
2741         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Variable.pm
2742         and VarDef.pm.
2743         * automake.in: Use Automake::Variable and Automake::VarDef.
2744         (MACRO_PATTERN): Delete. Now Automake::Variable::_MACRO_PATTERN.
2745         (am_macro_for_var): Delete. Now Automake::Variable::_am_macro_for_var.
2746         (ac_macro_for_var): Delete. Now Automake::Variable::_ac_macro_for_var.
2747         (silent_variable_override): Delete.  Now
2748         Automake::Variable::_silent_variable_override.
2749         (var_value, var_location, var_comment, var_type, var_owner,
2750         var_pretty, content_seen): Delete.  This functionality is now
2751         offered by Automake::Variable and Automake::VarDef.
2752         (VAR_AUTOMAKE, VAR_CONFIGURE, VAR_MAKEFILE, VAR_ASIS, VAR_PRETTY):
2753         Delete.  Now defined in Automake::VarDef.
2754         (var_order): Delete.  Now Automake::Variable::_var_order.
2755         (appendvar): Delete.  Now Automake::Variable::_appendvar.
2756         (var_SUFFIX_trigger): Register using Automake::Variable::hook.
2757         (initialize_per_input): Call Automake::Variable::reset.
2758         (err_var, msg_cond_var, msg_var, reject_var): Delete.  Now
2759         defined in Automake::Variable.
2760         (generate_makefile, process_option_list, handle_languages)
2761         (traverse_variable_recursively_worker)
2762         (transform_variable_recursively, handle_compile)
2763         (handle_libraries, handle_ltlibraries)
2764         (check_typos, handle_dist, handle_subdirs, scan_autoconf_files):
2765         Adjust to use Automake::Variable functions.
2766         (check_ambiguous_condition): Delete.  Now
2767         Automake::Variable::_check_ambiguous_condition.
2768         (condition_ambiguous_p): Delete.  Now
2769         Automake::Variable::condition_ambiguous_p.
2770         (variable_not_always_defined_in_cond): Delete.  Now
2771         Automake::Variable::not_always_defined_in_cond.
2772         (macro_define): Delete.  Now Automake::Variable::define.
2773         (macro_delete): Delete.  Now Automake::Variable::variable_delete.
2774         (macro_dump): Delete.  Now Automake::Variable::variable_dump.
2775         (macros_dump): Delete.  Now Automake::Variable::variables_dump.
2776         (variable_defined): Delete.  Now
2777         Automake::Variable::variable_defined, with the target check
2778         temporarily disabled.
2779         (variable_assert): Delete.  Now Automake::Variable::variable_assert.
2780         (examine_variable): Delete.  Now
2781         Automake::Variable::examine_variable.
2782         (variable_conditions): Delete.  Now Automake::Variable::conditions.
2783         (scan_variable_expansions): Delete.  Now
2784         Automake::Variable::scan_variable_expansions.
2785         (check_variable_expansions): Delete.  Now
2786         Automake::Variable::check_variable_expansions.
2787         (check_variable_defined_unconditionally): Delete.  Now
2788         Automake::Variable::check_defined_unconditionally.
2789         (variable_value): Delete.  Now Automake::Variable::variable_value.
2790         (variable_value_as_list): Delete.  Now
2791         Automake::Variable::variable_value_as_list.
2792         (variable_value_as_list_recursive_worker): Adjust to use
2793         Automake::Variable functions.
2794         (variable_output): Delete.  Now Automake::Variable::output.
2795         (define_pretty_variable, define_configure_variable, read_am_file)
2796         (define_standard_variables, read_main_am_file): Adjust to use
2797         Automake::Variable functions.
2798         (handle_variables): Delete.  Now Automake::Variable::output_variables.
2799         (file_contents_internal, am_primary_prefixes, am_install_var)
2800         (require_file_with_macro, require_conf_file_with_macro)
2801         (push_dist_common): : Adjust to use
2802         Automake::Variable functions.
2803         (require_variables): Delete.  Now
2804         Automake::Variable::require_variables.
2805         (require_variables_for_macro): Delete.  Now
2806         Automake::Variable::require_variables_for_variable.
2807         * tests/Makefile.am (XFAIL_TESTS): Add target.test.
2809 2003-05-25  Christian Cornelssen  <ccorn@cs.tu-berlin.de>  (tiny change)
2811         * tests/dejagnu7.test: Check if runtest supports --status.
2813 2003-05-23  Alexandre Duret-Lutz  <adl@gnu.org>
2815         * lib/Automake/Location.pm (dump): Output 'INTERNAL' when position
2816         is undefined.
2818         * lib/Automake/DisjConditions.pm (human): Fix infinite loop when
2819         $self contains only one Condition.
2821         * automake.in: Use plain strict, including refs.
2822         (macro_define, handle_single_transform_list): Use \&{'name'} to
2823         build references to named subroutines.
2825 2003-05-22  Karl Berry  <karl@gnu.org>
2827         * automake.texi: Update @dircategory to match the Free Software
2828         Directory.  End directory entries with dots.
2830 2003-05-22  Alexandre Duret-Lutz  <adl@gnu.org>
2832         * automake.texi (maintainer-mode): s/François/Fran@,{c}ois/.
2834         * lib/elisp-comp: s/François/Franc,ois/.
2835         Suggested by Paul Eggert.
2837         * automake.in: Move the "main" code at the end.
2838         (parse_arguments): Move near the end.
2839         ($KNOWN_EXTENSIONS_PATTERN, @known_extensions_list,
2840         accept_extensions, var_SUFFIXES_trigger): Move these definitions
2841         before any call to register_language.
2842         (am_file): Move the definition with all other global variables,
2843         do not use local to define it.
2844         * Makefile.am (maintainer-check): Expect no `local' in Automake.
2846 2003-05-21  Alexandre Duret-Lutz  <adl@gnu.org>
2848         * lib/Automake/Wrap.pm, lib/Automake/tests/Wrap.pl: New files.
2849         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Wrap.pm.
2850         * lib/Automake/tests/Makefile.am (TESTS): Add Wrap.pl.
2851         * automake.in (handle_texinfo_helper, pretty_print_rule)
2852         (variable_output): Adjust to use makefile_wrap instead of
2853         pretty_print_internal.
2854         (pretty_print_internal): Remove.  Renamed as Automake::Wrap::wrap
2855         and augmented to accept the $eol and $max_len arguments.
2857 2003-05-18  Alexandre Duret-Lutz  <adl@gnu.org>
2859         * lib/Autom4te/XFile.pm, lib/config.guess, lib/config.sub,
2860         lib/texinfo.tex: New upstream versions.
2862 2003-05-17  Alexandre Duret-Lutz  <adl@gnu.org>
2864         * lib/am/install.am (install, install-exec, install-data, uninstall):
2865         Declare conditionally using a if/else/endif block instead of
2866         using ?SUBDIRS?-style conditions.  The latter fail when
2867         %maybe_BUILT_SOURCES% is replaced by several lines.
2868         This fixes a bug introduced on 2003-04-06.
2869         * tests/bsource.test: New file.
2870         * tests/Makefile.am (TESTS): Add bsource.test.
2871         Reported by Bruno Haible.
2873 2003-05-11  Alexandre Duret-Lutz  <adl@gnu.org>
2875         * automake.texi (renamed objects): New node.
2876         (Program and Library Variables): Move maude_DEPENDENCIES closer
2877         to maude_LDADD.  Define and use `per-target compilation flags' in the
2878         explanation for maude_CFLAGS et al.  Link to the `renamed objects'
2879         node.  Illustrate maude_SHORTNAME.
2881 2003-05-09  Alexandre Duret-Lutz  <adl@gnu.org>
2883         * lib/install-sh: Update copyright notice and license to that of
2884         X11R6.  This removes an advertising clause reported as Debian bug
2885         #191717.
2887 2003-05-07  Alexandre Duret-Lutz  <adl@gnu.org>
2889         * configure.in (ACLOCAL): Do not use -I, --acdir is enough.
2891         * m4/make.m4: Rename the doit target as am__doit,
2892         and make it phony.
2893         Reported by Philip S Tellis.
2895 2003-05-07  Alexandre Duret-Lutz  <adl@gnu.org>
2897         * lib/am/configure.am (%MAKEFILE-IN%): Propagate automake's exit
2898         status.
2899         * tests/makej.test: New file (test Autom4te's cache locking,
2900         new in CVS Autoconf).
2901         * tests/Makefile.am (TESTS): Add makej.test.
2903 2003-05-06  Alexandre Duret-Lutz  <adl@gnu.org>
2905         * lib/Automake/General.pm (contents): New function.
2906         * aclocal.in (greatest_mtime, force_output): New globals.
2907         (scan_configure, add_file): Update $greatest_mtime.
2908         (parse_arguments): Parse --force.
2909         (write_aclocal): Do not overwrite $output_file unless needed.
2910         * automake.texi (aclocal options): Document --force.
2911         * tests/aclocal7.test: New file.
2912         * tests/Makefile.am (TESTS): Add aclocal7.test.
2914 2003-05-05  Alexandre Duret-Lutz  <adl@gnu.org>
2916         * automake.texi (Optional): Document m4_include.
2917         (Invoking aclocal): Shake a bit to introduce the various uses
2918         of aclocal and explain that aclocal will use m4_include for
2919         local files.
2920         (Extending aclocal): Show how to install installable macros
2921         in $(datadir)/aclocal, and make it clearer that writing installable
2922         macros is not the only way to extend aclocal.
2923         (Local Macros, Future of aclocal): New sections.
2925 2003-04-27  Alexandre Duret-Lutz  <adl@gnu.org>
2927         * automake.in (@common_files): Remove acinclude.m4 since
2928         it will be m4_included by aclocal.m4 and files are always
2929         distributed.
2930         (scan_aclocal_m4): Do not bother about acinclude.m4 anymore.
2931         We will get this dependency when tracing m4_includes.
2932         * tests/aclocal6.test: Make sure acinclude.m4 is distributed
2933         when used.
2934         * tests/acinclude.test: Delete.
2935         * tests/Makefile.am (TESTS): Remove acinclude.test.
2937 2003-04-25  Alexandre Duret-Lutz  <adl@gnu.org>
2939         * automake.in (handle_configure): Don't add @configure_deps to
2940         DIST_COMMON, we do this from lib/am/configure.am now.
2941         Define the am__configure_deps variable instead of substituing
2942         %CONFIGURE_DEPS%.
2943         * lib/am/configure.am (%MAKEFILE-IN%, $(top_srcdir)/configure,
2944         $(ACLOCAL_M4)): Use $(am__configure_deps) instead of %CONFIGURE_DEPS%.
2945         (DIST_COMMON): Add $(am__configure_deps).
2947         * tests/aclocal6.test: New file.
2948         * lib/am/configure.am (am--refresh): New rule.
2949         (%MAKEFILE-IN%, %MAKEFILE%, $(top_builddir)/config.status,
2950         $(top_srcdir)/configure): Call the top-level am--refresh from
2951         subdirectories.
2952         ($(ACLOCAL_M4)): Depend upon %CONFIGURE_DEPS%.  Call the
2953         top-level am--refresh when not in the top-level directory.
2954         Fix jump directories for VPATH builds.
2955         Suggested by Raja R. Harinath.
2957 2003-04-24  Alexandre Duret-Lutz  <adl@gnu.org>
2959         * automake.in (scan_aclocal_m4): Do not parse ACLOCAL_AMFLAGS
2960         and glob for m4_files (We've got all local m4 files while
2961         tracing m4_include's).  Diagnose ACLOCAL_M4_SOURCES as obsolete.
2962         Distribute aclocal.m4 only at the top-level.
2963         (my_glob): Remove.  This fixes PR automake/11.
2964         (handle_dist): Strip leading `./' from directories.
2965         * aclocal.in (add_file): Output 'm4_include([file.m4])' instead
2966         of copying local files.
2967         (write_aclocal, parse_arguments): Bump copyright date.
2968         * configure.in: De not build m4/amversion.m4 from here ...
2969         * m4/Makefile.am ($(srcdir)/amversion.m4): ... do this here.
2970         (nodist_m4data_DATA): Use $(srcdir)/amversion.m4 instead
2971         of amversion.m4.
2972         * tests/Makefile.am (XFAIL_TESTS): Remove aclocal5.test.
2973         (TESTS): Remove aclocal2.test.  Do not test aclocal.test twice.
2974         * tests/aclocal2.test: Delete (pointless).
2975         * tests/aclocal5.test: Make sure configure's dependencies are
2976         distributed.
2977         * tests/acinclude.test: Adjust to search for m4_include.
2978         * tests/dirlist.test, tests/dup3.test: Run $AUTOCONF and grep
2979         configure instead of aclocal.m4.
2981         For PR automake/46:
2982         * automake.in (scan_aclocal_m4): Work in all directories, not only
2983         the top-level.  Prepend $(top_srcdir) in front of each aclocal.m4
2984         dependency.
2985         * lib/am/configure.am (config.status, configure, $(ACLOCAL_M4)):
2986         Define rebuild rules in each directory.
2987         * tests/subdir8.test: Augment to exercise aclocal.m4's dependencies
2988         from the top-level directory.
2989         * tests/aclocal5.test: New file.  Exercise aclocal.m4's dependencies
2990         from a subdirectory.
2991         * tests/Makefile.am (TESTS): Add aclocal5.test.
2992         (XFAIL_TESTS): Replace subdir8.test by aclocal5.test.
2994 2003-04-24  Akim Demaille  <akim@epita.fr>
2995             Alexandre Duret-Lutz  <adl@gnu.org>
2997         For PR automake/46:
2998         * lib/am/configure.am (%MAKEFILE-IN%): If Makefile.in is rebuilt
2999         because of one of configure's dependencies, run automake without
3000         argument to update the whole tree at once.  Depend upon
3001         %CONFIGURE_DEPS%.
3002         (%MAKEFILE%): If Makefile is rebuilt because config.status has
3003         been updated, run config.status without arguments.
3004         * automake.in (scan_autoconf_traces): Prepend $(top_srcdir)
3005         before all files in @configure_deps.
3006         * tests/subdir5.test: Modernize configure.in, make sure
3007         maude/Makefile was actually created, and exercise %CONFIGURE_DEPS%.
3008         * tests/subdir8.test: New file.
3009         * tests/Makefile.am (TESTS): Add subdir8.test.
3010         (XFAIL_TESTS): Replace subdir5.test by subdir8.test.
3012 2003-04-23  Alexandre Duret-Lutz  <adl@gnu.org>
3014         * automake.texi (Requirements): Typo in index
3015         s/AC_CONFIG_FILE/AC_CONFIG_FILES/.
3017         * lib/texinfo.tex: New upstream version.
3019 2003-04-21  Jim Meyering  <jim@meyering.net>
3021         * lib/mkinstalldirs: Remove each sequence of spaces before a
3022         TAB character.
3023         * lib/depcomp: Search for TAB-SPC, not SPC-TAB.
3025 2003-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
3027         Fix for PR automake/389:
3028         * automake.in (handle_configure): Don't put $colon_infile in
3029         CONFIG-MAKEFILE.
3030         * tests/conff.test: New file.
3031         * tests/Makefile.am (TESTS): Add conff.test.
3032         Reported by Alexander Turbov.
3034 2003-04-18  Alexandre Duret-Lutz  <adl@gnu.org>
3036         * tests/defs.in: Handle required=etags to work around
3037         Exuberant Ctags.
3039         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
3040         versions.
3042         * tests/dejagnu3.test, tests/dejagnu4.test, tests/dejagnu5.test:
3043         Distribute dejagnu test cases, so that distcheck actually runs them.
3045 2003-04-18  Richard Dawe  <rich@phekda.freeserve.co.uk>
3047         * lib/am/dejagnu.am (site.exp): Don't define tool in site.exp,
3048         because we set that by invoking runtest with --tool.
3049         * tests/Makefile.am (TESTS): Add dejagnu4.test, dejagnu5.test,
3050         dejagnu6.test, dejagnu7.test.
3051         * tests/dejagnu4.test: New test.
3052         * tests/dejagnu5.test: New test.
3053         * tests/dejagnu6.test: New test.
3054         * tests/dejagnu7.test: New test.
3056         * tests/dejagnu3.test: Make sure the DejaGnu test is actually run.
3058 2003-04-18  Jim Meyering  <jim@meyering.net>
3060         * automake.in (variable_output): Fix typo in comment s/is/if/.
3062         * lib/am/yacc.am (?!GENERIC?%OBJ% aka .y.c): Don't redirect
3063         directly to $@.  Instead, redirect to $@t and rename upon success.
3064         Also, move the commands that update $@ so they are last.  Otherwise,
3065         this rule could leave the user with an up to date target (.c file)
3066         but with a missing or corrupted corresponding .h file.
3068 2003-04-17  Richard Dawe  <rich@phekda.freeserve.co.uk>
3070         * tests/defs.in: Handle required=runtest, to detect runtest
3071         from DejaGnu.
3072         * tests/Makefile.am (TESTS): Add dejagnu3.test.
3073         * tests/dejagnu3.test: New test.
3075 2003-04-16  Alexandre Duret-Lutz  <adl@gnu.org>
3077         * automake.in (rule_define): If the user tries to override
3078         an Automake which has a -local variant, suggest using the
3079         -local variant in the -Woverride diagnostic.
3080         (handle_factored_dependencies): Register factored
3081         rules with rule_define, and define them only in undefined
3082         conditions.
3083         * tests/Makefile.am (TESTS): Add override.test.
3084         * tests/overrid.test: New file.
3085         * tests/phony.test: Count the number of .PHONY targets.
3087 2003-04-15  Alexandre Duret-Lutz  <adl@gnu.org>
3089         * lib/am/distdir.am (distuninstallcheck, distcleancheck): Silence
3090         these rules, so that we don't confuse users by echoing
3091         "echo ERROR:" commands which are not run.
3093 2003-03-14  Richard Dawe  <rich@phekda.freeserve.co.uk>
3094             Alexandre Duret-Lutz  <adl@gnu.org>
3096         * automake.in (output_texinfo_build_rules, handle_texinfo_helper,
3097         initialize_per_input):  Add infrastructure for generating HTML
3098         documentation from texinfo source.
3099         * lib/am/texinfos.am: Add rules for building HTML documentation
3100         from texinfo source.
3101         * lib/am/texibuild.am: Likewise.
3102         * automake.texi (Texinfo): Document rules for building
3103         HTML documentation from texinfo source.
3104         * tests/txinfo21.test: New file.
3105         * tests/Makefile.am (TESTS): Add txinfo21.test.
3106         * tests/defs.in: Handle required=makeinfo-html.
3108 2003-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
3110         * automake.in (%silent_variable_override): New variable.
3111         (macro_define): Warn about variable definitions overriding
3112         Automake variables.
3113         (rule_define): Warn about target definitions overriding
3114         Automake variables.  Fix $condmsg definition.
3115         * automake.texi (Invoking Automake): Document the `override'
3116         category.
3117         * lib/Automake/ChannelDefs.pm (usage): Likewise.
3118         * lib/am/texinfos.am [!%?CYGNUS] (MAKEINFO): Do not define,
3119         this is already done in m4/init.m4.
3120         * tests/dejagnu2.test: Run $MAKE, don't only grep.  Use
3121         -Wno-override, and make sure we get a warning without.
3122         * tests/exeext2.test, tests/substtarg.test: Use -Wno-override,
3123         and make sure we get a warning without.
3124         * tests/exeext3.test, tests/java2.test, tests/nolink.test,
3125         tests/subpkg.test, tests/vartest.test: Use -Wno-override.
3126         * tests/txinfo13.test: Use installcheck-local instead of overriding
3127         installcheck.
3128         * tests/txinfo2.test: Run $MAKE on the real Makefile (this test
3129         used to succeed thanks to a failure...)
3130         * tests/location.test: Adjust expected messages.
3131         * tests/Makefile.am (XFAIL_TESTS): Add txinfo5.test.
3133 2003-04-12  Raja R Harinath  <harinath@acm.org>
3135         * lib/Automake/DisjConditions.pm (true): Don't cache answer.
3136         (invert): Update comment.
3137         (_simplify): Remove.
3138         (simplify): Implement using invert().
3139         * lib/Automake/tests/DisjConditions.pl (test_simplify):
3140         Update to reflect changes.
3142 2003-04-12  Alexandre Duret-Lutz  <adl@gnu.org>
3144         * automake.in (scan_autoconf_files): Augment the error message
3145         about AM_INIT_AUTOMAKE not found.
3146         Suggested by Bruno Haible.
3148         * lib/Automake/Version.pm: New file.
3149         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Version.pm.
3150         * lib/Automake/tests/Version.pl: New file.
3151         * lib/Automake/tests/Makefile.am (TESTS): Add Version.pl.
3152         * tests/Makefile.am (TESTS): Remove version5.test.
3153         * tests/version5.test: Delete.  Move the tests to Version.pl.
3154         * automake.in (version_split, version_compare, version_check): Move ...
3155         * lib/Automake/Version.pm (split, compare, check): ... here.
3157 2003-04-11  Alexandre Duret-Lutz  <adl@gnu.org>
3159         * lib/Automake/tests/Condition.pl (test_reduce_and)
3160         (test_reduce_or): Cosmetics.
3161         * lib/Automake/tests/DisjConditions.pl (test_sub_conditions):
3162         Fix a comment.
3163         * lib/Automake/DisjConditions.pm (sub_conditions): Add missing C<...>
3164         in comment.
3165         * tests/yacc8.test, configure.in: Update copyright year.
3167 2003-04-10  Richard Dawe  <rich@phekda.freeserve.co.uk>
3169         * configure.in: Get the build platform name.  Define
3170         MODIFICATION_DELAY as the time to wait after modifying a file,
3171         to cope with timestamp granularity issues, depending
3172         on the platform.
3173         * tests/defs.in: Define `sleep' using MODIFICATION_DELAY.
3175 2003-04-10  Eric Siegerman  <eric_97@pobox.com>  (tiny change)
3177         * automake.texi (Public macros): Clarify that the new
3178         AM_INIT_AUTOMAKE variant is preferred, and the old one
3179         deprecated.  Copy-edit the rest of the AM_INIT_AUTOMAKE item.
3180         (Hello): Caution that the example uses the deprecated
3181         AC_INIT/AM_INIT_AUTOMAKE syntax, and xref to the discussion.
3183 2003-04-10  Alexandre Duret-Lutz  <adl@gnu.org>
3185         Retain all variable definitions until the whole Makefile.am has
3186         been processed, then output all variables in one step, at the top
3187         of Makefile.in.  (Older revisions used to output user variables
3188         before generating Automake targets, and to mix Automake variables
3189         with Automake targets, preventing redefinitions of previously
3190         output variables.)
3192         * automake.in (%var_pretty): New variable.
3193         (VAR_ASIS, VAR_PRETTY): New constants.
3194         (@var_list): Rename as ...
3195         (@var_order): ... this.
3196         (initialize_per_input): Clear %var_pretty.
3197         (handle_variables): New function, extracted from ...
3198         (read_main_am_file): ... here.
3199         (generate_makefile): Call handle_variable after everything else.
3200         (handle_dist): Use define_pretty_variable, not pretty_print.
3201         (pretty_print): Delete.
3202         (macro_define): Augment with $COMMENT and $PRETTY parameters.
3203         Update %var_comment, %var_pretty, and @var_order.  Adjust callers.
3204         (variable_pretty_output): Merge with ...
3205         (variable_output): ... this, and choose the prettiness on a
3206         per-condition basis.
3207         (append_comments): Delete.  This work is now done by macro_define.
3208         (read_am_file, file_contents_internal): Don't call append_comments
3209         nor update @var_list, adjust calls to macro_define.
3210         (handle_subdirs): Don't explicitly output RECURSIVE_TARGETS,
3211         just mark it as VAR_PRETTY.
3212         * tests/exeext.test: Make sure bin_PROGRAMS is output only once.
3213         Report from Jim Meyering.
3215 2003-04-06  Alexandre Duret-Lutz  <adl@gnu.org>
3217         * automake.in (handle_installdirs): Rename as ...
3218         (handle_install): ... this.  Define maybe_BUILT_SOURCES.
3219         (generate_makefile): Adjust call to handle_install.
3220         * lib/am/install.am (install): Use %maybe_BUILT_SOURCES%.
3221         * automake.texi (Sources, Built sources example): BUILT_SOURCES
3222         is honored by `make install' too.
3223         * tests/check3.test: Make sure that `make install' also depends
3224         upon BUILT_SOURCES.
3225         Report from Alexander Turbov.
3227         * lib/am/libs.am (ARFLAGS): Define.
3228         * automake.in (handle_libraries): Use `$(ARFLAGS)' instead of
3229         hard-coding `cru'.
3230         * automake.texi (A Library): Explain how AR, ARFLAGS and RANLIB
3231         are used, and how they can be overridden.
3232         (Program and Library Variables): Adjust to show `$(ARFLAGS)'
3233         instead of `cru'
3234         * tests/ar.test: Rewrite to test for AR, ARFLAGS, and RANLIB.
3235         * tests/ranlib.test: Delete, obsoleted by ar.test.
3236         * tests/Makefile.am (TESTS): Remove ranlib.test.
3237         Report from Paul Thomas.
3239 2003-04-03  Alexandre Duret-Lutz  <adl@gnu.org>
3241         * automake.in (check_trailing_slash): New function (variation on
3242         a patch by Peter Muir).  Diagnose whitespaces following trailing
3243         backslash.
3244         (read_am_file): Use it.
3245         * tests/backsl4.test: New file.
3246         * tests/Makefile.am (TESTS): Add backsl4.test.
3247         Reported by Peter Muir.
3249 2003-03-29  Raja R Harinath  <harinath@acm.org>
3251         Speedup Automake::DisjConditions::invert().
3252         * lib/Automake/Condition.pm (multiply): New.
3253         * lib/Automake/DisjConditions.pm (_multiply): Use it.
3254         (sub_conditions): Likewise.
3256         * lib/Automake/Condition.pm (reduce): Rename to ...
3257         (reduce_and): ... this.
3258         (reduce_or): New.
3259         * lib/Automake/DisjConditions.pm (_multiply): Use reduce_or().
3260         * lib/Automake/tests/Condition.pl (test_reduce): Rename to ...
3261         (test_reduce_and): ... this.
3262         (test_reduce_or): New.
3263         * lib/Automake/tests/DisjConditions.pl
3264         (test_invert): Update to reflect effect of reduce_or().
3265         (test_simplify): Don't skip invert() on larger inputs.
3267 2003-03-29  Raja R Harinath  <harinath@cs.umn.edu>
3269         * tests/yacc8.test: Add a $sleep before modifying Makefile.am so
3270         that timestamp will change.
3272 2003-03-23  Akim Demaille  <akim@epita.fr>
3273             Alexandre Duret-Lutz  <adl@gnu.org>
3275         * lib/am/tags.am (TAGS): Use --etags-include instead of --include,
3276         when supported by etags (Exuberant Ctags).
3277         * tests/tagsub.test: Rewrite to _run_ the `tags' rule.
3279 2003-03-20  Alexandre Duret-Lutz  <adl@gnu.org>
3281         For Debian Bug #185388:
3282         * automake.texi (Extending): Augment the install-exec-hook
3283         discussion with an example how to symlink a versioned binary.
3284         * tests/insthook.test: Rewrite to test the above example.
3285         Report from James R. Van Zandt.
3287 2003-03-19  Alexandre Duret-Lutz  <adl@gnu.org>
3289         * Makefile.am (maintainer-check): Allow `automake:' tokens,
3290         occuring in location.test.  Automake now has 5 legitimate
3291         unsubstituted @strings@.
3293         * tests/aclocal4.test: Require GNU make.
3295 2003-03-14  Alexandre Duret-Lutz  <adl@gnu.org>
3297         * tests/aclocal4.test: New file.  Test for the ACLOCAL_M4 bug below.
3298         * tests/Makefile.am (TESTS): Add aclocal4.test.
3300 2003-03-14  Jim Meyering  <jim@meyering.net>
3302         * automake.in (scan_aclocal_m4): Define ACLOCAL_M4 even in
3303         subdirectories.  Makefile.in depends on that variable.
3305 2003-03-13  Alexandre Duret-Lutz  <adl@gnu.org>
3307         * m4/init.m4: Remove a leftover comment from the pre-1.7 era.
3309         Fix for PR automake/386:
3310         * m4/init.m4: Require Autoconf 2.55.
3311         Reported by Owen Taylor.
3313         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
3314         (?GENERIC?%EXT%.lo): Use `mv -f' instead of `mv' in FASTDEP mode.
3315         Suggested by Matthias Andree.
3317         * tests/README: Typo.
3319 2003-03-08  Alexandre Duret-Lutz  <adl@gnu.org>
3321         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
3322         (?GENERIC?%EXT%.lo): Hide the if/then/else machinery for FASTDEP.
3323         Just echo the gcc command.
3324         Suggested by Karl Berry.
3326 2003-03-06  Alexandre Duret-Lutz  <adl@gnu.org>
3328         * lib/am/depend2.am (?GENERIC?%EXT%.lo): Do not use
3329         `test -f foo || echo $(srcdir)/` to emulate a VPATH search when
3330         outputing suffix rules.  This follows 2003-02-25's change.
3331         * lib/am/lex.am (?GENERIC?%EXT%%DERIVED-EXT%): Likewise.
3332         * lib/am/yacc.am (?GENERIC?%EXT%%DERIVED-EXT%): Likewise.
3334 2003-03-05  Alexandre Duret-Lutz  <adl@gnu.org>
3336         * automake.texi (Requirements) <AC_CONFIG_FILES>: Files listed
3337         with AC_CONFIG_FILES are cleaned by `make distclean'.  Don't
3338         pretend otherwise.
3339         Reported by Rafael Laboissiere.
3341 2003-03-04  Andreas Buening  <andreas.buening@nexgo.de>
3343         * lib/mdate-sh: Find out which column of the ls -l output contains
3344         the month. Do not assume it is at least the fifth column.
3346 2003-02-26  Alexandre Duret-Lutz  <adl@gnu.org>
3348         * automake.texi (Emacs Lisp): Mention that `dist_' can be used.
3350         * automake.texi (Emacs Lisp): Instruct people to use lisp_DATA
3351         instead of lisp_LISP when they don't want byte-compilation.
3352         Don't mention ELCFILES anymore.
3353         * automake.in (handle_data): Allow lisp_DATA.
3354         * tests/lisp5.test: New file.
3355         * tests/Makefile.am (TESTS): Add lisp5.test.
3357         * automake.in (handle_emacs_lisp): Don't build *.elc files
3358         if ELCFILES was set empty.
3359         * tests/lisp4.test: New file.
3360         * tests/Makefile.am (TESTS): Add lisp4.test.
3361         Reported by Simon Josefsson.
3363         * tests/lex3.test, tests/lex5.test: Require flex.
3364         Reported by Leo Davis.
3366 2003-02-25  Alexandre Duret-Lutz  <adl@gnu.org>
3368         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj): Do not
3369         use the `test -f foo || echo $(srcdir)/` to emulate a VPATH search
3370         when outputing suffix rules.
3371         * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.dvi)
3372         (?GENERIC?%SOURCE_SUFFIX%.pdf): Likewise.
3373         Suggested by Bruno Haible.
3375         * automake.in (read_am_file): Catch trailing backslashes on last line.
3376         * tests/backsl3.test: New file.
3377         * tests/Makefile.am (TESTS): Add backsl3.test.
3378         Reported by Akim Demaille.
3380 2003-02-24  Alexandre Duret-Lutz  <adl@gnu.org>
3382         * ChangeLog: Move 2002's entries to ...
3383         * ChangeLog.02: ... this new file.
3384         * Makefile.am (EXTRA_DIST): Add ChangeLog.02.
3386 2003-02-24  Richard Dawe  <rich@phekda.freeserve.co.uk>
3388         * tests/version7.test: Use $sleep to sleep before updating
3389         the version, to work around timestamp inconsistencies in Windows.
3391 2003-02-24  Bruno Haible  <bruno@clisp.org>
3392             Alexandre Duret-Lutz  <adl@gnu.org>
3394         * lib/am/texibuild.am: Don't remove the target info files. Instead,
3395         back up and restore them if makeinfo fails.
3396         * tests/txinfo20.test: New file.
3397         * tests/Makefile.am (TESTS): Add txinfo20.test.
3399 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
3401         * automake.texi (FAQ, CVS, maintainer-mode, wildcards)
3402         (distcleancheck): Fix typos and other errors reported by Karl
3403         Berry.
3405 2003-02-20  Alexandre Duret-Lutz  <adl@gnu.org>
3407         * lib/am/texibuild.am (%SOURCE_SUFFIX%%DEST_SUFFIX%): Use $(...)
3408         instead of ${...}.
3410         * tests/defs.in: Handle required=ro-dir.
3411         * tests/destdir.test: Use this.
3413 2003-02-19  Richard Dawe  <rich@phekda.freeserve.co.uk>
3415         * lib/am/distdir.am (distcheck): Strip any leading DOS drive
3416         from dc_install_base.
3418 2003-02-19  Alexandre Duret-Lutz  <adl@gnu.org>
3420         * lib/am/texinfos.am (install-info-am, uninstall-info-am): Install
3421         DJGPP-style *.iNN info files.
3422         (maintainer-clean-aminfo): Rewrite using the same pattern
3423         as in uninstall-info-am.
3424         * lib/am/texibuild.am (%SOURCE_SUFFIX%%DEST_SUFFIX%): Erase
3425         DJGPP-style *.iNN info files before running $(MAKEINFO).
3426         * tests/txinfo19.test: New file.
3427         * tests/Makefile.am (TESTS): Add txinfo19.test.
3429 2003-02-18  Richard Dawe  <rich@phekda.freeserve.co.uk>
3431         * lib/depcomp (dashmstdout): Cope with DOS filenames in
3432         dependencies.
3434 2003-02-17  Alexandre Duret-Lutz  <adl@gnu.org>
3436         * lib/depcomp (makedepend): Don't pass $object to makedepend.
3437         Reported by Stepan Kasal.
3439 2003-02-12  Alexandre Duret-Lutz  <adl@gnu.org>
3441         * tests/defs.in: Handle required=makedepend.
3443         * Makefile.am (maintainer-check): Update the diff check
3444         to account for the recent @SHELL@ substitution.
3446 2003-02-11  Alexandre Duret-Lutz  <adl@gnu.org>
3448         * lib/depcomp: Do not put comments on the `icc)' line.
3450         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
3451         versions.
3453         Fix for PR automake/381:
3454         * automake.in (handle_gettext): Do not print diagnostics
3455         about po/ and intl/ missing from SUBDIRS if po/ does not
3456         exist.  Warn if `SUBDIRS = intl' is used although libintl
3457         is 'external'.
3458         * tests/gettext.test: Make sure diagnostics are not output
3459         when po/ does not exist.
3460         * tests/gettext2.test: Test for unwanted intl/.
3461         PR from Alexander Turbov, fix suggested by Bruno Haible.
3463         * m4/depend.m4: Grep depcomp's stderr for icc warnings about
3464         ignored options.
3465         * lib/depcomp (icc): New mode.
3466         * tests/depcomp5.test: New file.
3467         * tests/defs.in: Handle required=icc.
3468         * tests/Makefile.am (TESTS): Add it.
3470         Temporary hack for PR automake/381:
3471         * automake.in (handle_gettext): Turn missing po/ and intl/ errors
3472         into -Wsyntax warnings.
3474 2003-02-10  Richard Dawe  <rich@phekda.freeserve.co.uk>
3476         * Makefile.am: Substitute @SHELL@ in automake.in and aclocal.in.
3477         This makes the setting of SHELL work for DJGPP.
3479 2003-02-10  Alexandre Duret-Lutz  <adl@gnu.org>
3481         For PR automake/385:
3482         * lib/depcomp (makedepend): Strip any libtool call, before
3483         running makedepends.
3484         * tests/depcomp4.test: New file.
3485         * tests/Makefile.am (TESTS): Add it.
3486         Reported by Jeff Squyres.
3488         Related to PR automake/385:
3489         * lib/depcomp (dashmstdout): Do not use `-o /dev/null', or gcc will
3490         write dependencies to /dev/null.  `-o /dev/null' was added
3491         on 2002-06-13 just because I tried to replace `-o foo.o' by something
3492         else and didn't thought about removing it entirely.
3493         * tests/depcomp3.test: New file.
3494         * tests/Makefile.am (TESTS): Add it.
3496         * automake.in (BEGIN): Override $ENV{'SHELL'} with ./configure's
3497         SHELL for DJGPP.
3498         Suggested by Richard Dawe.
3500 2003-02-09  Alexandre Duret-Lutz  <adl@gnu.org>
3502         * automake.texi (FAQ, CVS, maintainer-mode, wildcards)
3503         (distcleancheck): New nodes.
3505 2003-02-06  Alexandre Duret-Lutz  <adl@gnu.org>
3507         * automake.in (scan_autoconf_files): Don't complain that
3508         AM_INIT_AUTOMAKE comes from an old version if it was not found.
3510 2003-02-05  Alexandre Duret-Lutz  <adl@gnu.org>
3512         * automake.in (am_install_var): Simplify filtering of
3513         variable_loc_and_value_as_list_recursive's output.
3515 2003-02-04  Alexandre Duret-Lutz  <adl@gnu.org>
3517         * m4/init.m4 (_AC_AM_CONFIG_HEADER_HOOK): Recompute
3518         indexes of header files so we create stamp files with
3519         the right numbers when config.status is run on some headers.
3520         * tests/stamph2.test: Check for this.
3521         Reported by Sander Niemeijer.
3523 2003-02-02  Alexandre Duret-Lutz  <adl@gnu.org>
3525         * automake.in (vars_scanned): Move near traverse_variable_recursively.
3526         (traverse_variable_recursively,
3527         traverse_variable_recursively_worker): Accept a $COND_FILTER argument
3528         to filter out conditions during recursion.  Don't recurse into
3529         undefined variables.  Don't pass empty results to &FUN_COLLECT.
3530         (value_to_list): Remove, was used by
3531         variable_value_as_list_recursive_worker only.
3532         (variable_value_as_list_recursive_worker): Rewrite using
3533         traverse_variable_recursively.  Remove the $parent argument.
3534         (variable_value_as_list_recursive,
3535         variable_loc_and_value_as_list_recursive): Adjust calls
3536         to variable_value_as_list_recursive_worker.  Don't reset
3537         %vars_scanned.
3538         * tests/cond3.test: Don't expect empty helper variables,
3539         we don't output them anymore.
3540         * tests/cond30.test: Use an undefined variable.
3542         * automake.in (handle_programs): Strip $(EXEEXT) before
3543         calling &check_canonical_spelling.
3544         * tests/exeext.test: Make sure we don't use a
3545         maude3__EXEEXT__OBJECTS variable.
3547 2003-02-02  Jeremy Nimmer  <jwnimmer@alum.mit.edu>  (tiny change)
3549         For Debian Bug #39542:
3550         * automake.texi (Invoking Automake, Optional): Document how
3551         AC_CONFIG_AUX_DIR interacts with missing files.
3553 2003-02-02  Alexandre Duret-Lutz  <adl@gnu.org>
3555         * lib/Automake/DisjConditions.pm (_permutations_worker)
3556         (permutations): Remove, so that people aren't tempted to use it.
3557         * lib/Automake/tests/DisjConditions.pl (tests_permutations): Remove.
3559         * automake.in (variable_conditions_recursive): Remove.
3560         (variable_conditionally_defined): Rewrite using
3561         traverse_variable_recursively.
3563         * automake.in (traverse_variable_recursively,
3564         traverse_variable_recursively_worker): Pass one merged Condition
3565         instead of a stack of conditions to &FUN_STORE and &FUN_COLLECT.
3566         (transform_variable_recursively, define_objects_from_sources)
3567         (handle_lib_objects, variable_conditions_recursive): Adjust usage.
3569 2003-02-01  Alexandre Duret-Lutz  <adl@gnu.org>
3571         * automake.in (handle_lib_objects): Compute _DEPENDENCIES variables
3572         using transform_variable_recursively instead of
3573         variable_conditions_recursive and variable_value_as_list_recursive
3574         to avoid combinatorial explosion.
3575         (handle_lib_objects_cond): Merge into handle_lib_objects.
3576         * tests/cond11.test: Don't grep internal details in Makefile.in,
3577         run $MAKE to make sure the resulting Makefile runs as expected.
3578         * tests/cond29.test: Also exercise conditional _LDADD.
3579         * tests/cond31.test, tests/cond32.test: New files.
3580         * tests/Makefile.am (TESTS): Add tests/cond31.test and
3581         tests/cond32.test.
3583 2003-01-31  Alexandre Duret-Lutz  <adl@gnu.org>
3585         * automake.in (handle_lib_objects_cond): Ignore -dlopen and
3586         -dlpreopen in _LIBADD variables too.
3587         (handle_LIBOBJS, handle_ALLOCA): New functions, extracted from
3588         handle_lib_objects_cond.
3589         * tests/libtool7.test: New file.
3590         * tests/Makefile.am (TESTS): Add libtool7.test.
3592         * automake.texi (Program and Library Variables): Clarify that
3593         _LIBADD is for libraries and _LDADD for programs.
3595         * automake.in (handle_source_transform): Correct typo from 2003-01-23.
3597 2003-01-28  Alexandre Duret-Lutz  <adl@gnu.org>
3599         Fix for PR automake/352:
3600         * automake.in (transform_variable_recursively): If the destination
3601         and the source variables are the same, delete the source variable
3602         before defining the destination variable.
3603         (handle_programs): Strip any $(EXEEXT) suffix from $one_file,
3604         or this will confuse handle_source_transform.
3605         (append_exeext): Rewrite using transform_variable_recursively.
3606         * tests/cond29.test, tests/cond30.test: New files.
3607         * tests/exeext.test: Run ./configure and make, this uncovered
3608         the above handle_programs issue.
3609         * tests/Makefile.am (TESTS): Add cond29.test and cond20.test.
3611         * automake.in (%subobjvar): Replace by ...
3612         (%gen_varname): ... this.
3613         (subobjname): Replace by ...
3614         (gen_varname): ... this.
3615         (initialize_per_input): Clean gen_varname instead of subobjname.
3616         (transform_variable_recursively): New function, extracted
3617         from define_objects_from_sources.
3618         (define_objects_from_sources): Use transform_variable_recursively.
3619         Remove the unused $parent argument.
3620         (handle_source_transform): Adjust call to define_objects_from_sources.
3622 2003-01-23  Alexandre Duret-Lutz  <adl@gnu.org>
3624         * automake.in (@substfroms, @substtos): Move near
3625         traverse_variable_recursively.
3626         (traverse_variable_recursively, traverse_variable_recursively_worker):
3627         New functions, extracted from define_objects_from_sources.
3628         (define_objects_from_sources): Rewrite using
3629         traverse_variable_recursively.
3630         (handle_source_transform): Use variables_conditionally_defined
3631         instead of calling variable_conditions_recursive directly.
3632         Adjust the call to define_objects_from_sources; there is no need
3633         to reset @substtos, @substfroms, and %vars_scanned now.
3634         (variable_conditions_recursive): Rewrite using
3635         traverse_variable_recursively.
3636         (variable_conditions_recursive_sub): Remove.
3637         (variable_conditionally_defined): Fix condition comparison (the
3638         consequence was that DIST_SUBDIRS was always output).
3639         * lib/Automake/Condition.pm (merge): Allow merging several
3640         conditions at once.
3642 2003-01-22  Alexandre Duret-Lutz  <adl@gnu.org>
3644         * automake.texi (Python): Explain that directory variables start
3645         with either ${prefix} or ${exec_prefix}, and point to the
3646         `Installation Directory Variables' section of the Autoconf manual.
3648 2003-01-21  Alexandre Duret-Lutz  <adl@gnu.org>
3650         * lib/am/distdir.am (top_distdir, distdir): Define these
3651         variables only in top level Makefile.  Redefine $(top_distdir)
3652         as $(distdir).
3653         (distdir): Fix passing of $(top_distdir) to sub-makes.
3654         * automake.in (handle_dist): Do not define the DISTDIR and
3655         TOP_DISTDIR transformations.  We don't need them anymore.
3656         * automake.texi (Dist): Reorder the dist-hook section, and move
3657         the DIST_SUBDIRS paragraph earlier.  Document distdir and
3658         top_distdir.
3659         * tests/subpkg.test: Update to check for $(distdir) and
3660         $(top_distdir).
3662 2003-01-19  Alexandre Duret-Lutz  <adl@gnu.org>
3664         Rename more files to accomodate 8+3 file systems, and adjust the
3665         vocabulary at the same time: AM_CONDITIONAL defines "conditionals",
3666         and we call "condition" a conjunction of "conditionals".
3667         * lib/am/Conditional.pm: Rename to lib/am/Condition.pm.
3668         * lib/am/tests/Conditional.pl: Rename to lib/am/tests/Condition.pl.
3669         * lib/am/ConditionalSet.pm: Rename to lib/am/DisjConditions.pm.
3670         * lib/am/tests/ConditionalSet.pl: Rename to
3671         lib/am/tests/DisjConditions.pl
3672         * lib/am/Conditional.pm (condition_negate): Rename to ...
3673         * lib/am/Condition.pm (conditional_negate): ... this.
3674         * automake.in: Adjust references to Condition and DisjConditions.
3675         (check_ambiguous_conditional, conditional_ambiguous_p): Rename to ...
3676         (check_ambiguous_condition, condition_ambiguous_p): ... these.
3678         * tests/README: New file.
3680         * automake.texi (Conditional Programs): Show a sample Makefile.am.
3681         Remind $(EXEEXT) must be appended to configure substitutions.
3682         Show how Automake conditionals can be used instead.
3683         * tests/exeext.test (check_PROGRAMS): Make sure EXEEXT is also
3684         appended to conditionally defined programs.
3686 2003-01-16  Jim Meyering  <jim@meyering.net>
3688         Accept --help and --version, and lots of syntactic clean-up.
3689         * lib/install-sh: Use consistent indentation, two spaces per level.
3690         (scriptversion): New variable.
3691         Change initializations like `variable=""' to `variable='.
3692         (usage): New variable.
3693         Use `test', not `['.
3694         Use `test -z "$var"', not `[ x"$var" = x ]'.
3695         Use `test -n "$var"', not `[ x"$var" != x ]'.
3696         Alphabetize case entries.
3697         Accept --help and --version options.
3698         Remove unnecessary `else :' clauses.
3699         Add a `Local variables' eval block to help emacs users update
3700         the time-stamp variable added above.
3701         Mostly from Karl Berry.
3703 2003-01-16  Alexandre Duret-Lutz  <adl@gnu.org>
3705         * m4/python.m4 (AM_PATH_PYTHON) <_AM_PYTHON_INTERPRETER_LIST>: Add
3706         python2.3.
3708         * m4/python.m4 (AM_PATH_PYTHON): Query distutils for `pythondir'
3709         or `pyexecdir', for the sake of 64-bit distributions that usually
3710         use lib64/ instead of lib/.  Fall back to the default directory
3711         if it doesn't work.
3712         Suggested by Gwenole Beauchesne.
3714 2003-01-14  Alexandre Duret-Lutz  <adl@gnu.org>
3716         For PR automake/382:
3717         * automake.texi (Yacc and Lex): Document `AM_YFLAGS = -d'.
3718         Explain BUILT_SOURCES is usually needed in this case.
3719         Reported by William S Fulton.
3721 2003-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
3723         Rename some files for the sake of 8+3 file systems.
3724         * tests/aclocali.test:     Rename to tests/aclocal.test.
3725         * tests/aclocali1.test:    Rename to tests/aclocal2.test.
3726         * tests/aclocalii.test:    Rename to tests/aclocal3.test.
3727         * tests/acoutput.test:     Rename to tests/acoutpt.test.
3728         * tests/acoutput2.test:    Rename to tests/acoutpt2.test.
3729         * tests/acouttbs.test:     Rename to tests/acoutbs.test.
3730         * tests/acouttbs2.test:    Rename to tests/acoutbs2.test.
3731         * tests/autoheader.test:   Rename to tests/autohdr.test.
3732         * tests/autoheader2.test:  Rename to tests/autohdr2.test.
3733         * tests/condincl.test:     Rename to tests/condinc.test.
3734         * tests/condincl2.test:    Rename to tests/condinc2.test.
3735         * tests/distcommon.test:   Rename to tests/distcom.test.
3736         * tests/distcommon2.test:  Rename to tests/distcom2.test.
3737         * tests/distcommon3.test:  Rename to tests/distcom3.test.
3738         * tests/installsh.test:    Rename to tests/instsh.test.
3739         * tests/installsh2.test:   Rename to tests/instsh2.test.
3740         * tests/instdata.test:     Rename to tests/instdat.test.
3741         * tests/instdata2.test:    Rename to tests/instdat2.test.
3742         * tests/libobj12b.test:    Rename to tests/libobj13.test.
3743         * tests/link_f_c.test:     Rename to tests/link_fc.test.
3744         * tests/link_f_c_cxx.test: Rename to tests/link_fccxx.test.
3745         * tests/link_f_cxx.test:   Rename to tests/link_fcxx.test.
3746         * tests/nodefine.test:     Rename to tests/nodef.test.
3747         * tests/nodefine2.test:    Rename to tests/nodef2.test.
3748         * tests/required.test:     Rename to tests/reqd.test.
3749         * tests/required2.test:    Rename to tests/reqd2.test.
3750         * tests/sourcesub.test:    Rename to tests/srcsub.test.
3751         * tests/sourcesub2.test:   Rename to tests/srcsub2.test.
3752         * tests/specflags.test:    Rename to tests/specflg.test.
3753         * tests/specflags2.test:   Rename to tests/specflg2.test.
3754         * tests/specflags3.test:   Rename to tests/specflg3.test.
3755         * tests/specflags6.test:   Rename to tests/specflg6.test.
3756         * tests/specflags7.test:   Rename to tests/specflg7.test.
3757         * tests/specflags8.test:   Rename to tests/specflg8.test.
3758         * tests/specflags9.test:   Rename to tests/specflg9.test.
3759         * tests/subdircond.test:   Rename to tests/subcond.test.
3760         * tests/subdircond2.test:  Rename to tests/subcond2.test.
3761         * tests/subdircond3.test:  Rename to tests/subcond3.test.
3762         * tests/texinfo.test:      Rename to tests/txinfo.test.
3763         * tests/texinfo2.test:     Rename to tests/txinfo2.test.
3764         * tests/texinfo3.test:     Rename to tests/txinfo3.test.
3765         * tests/texinfo4.test:     Rename to tests/txinfo4.test.
3766         * tests/texinfo5.test:     Rename to tests/txinfo5.test.
3767         * tests/texinfo6.test:     Rename to tests/txinfo6.test.
3768         * tests/texinfo7.test:     Rename to tests/txinfo7.test.
3769         * tests/texinfo8.test:     Rename to tests/txinfo8.test.
3770         * tests/texinfo9.test:     Rename to tests/txinfo9.test.
3771         * tests/texinfo10.test:    Rename to tests/txinfo10.test.
3772         * tests/texinfo13.test:    Rename to tests/txinfo13.test.
3773         * tests/texinfo16.test:    Rename to tests/txinfo16.test.
3774         * tests/texinfo17.test:    Rename to tests/txinfo17.test.
3775         * tests/texinfo18.test:    Rename to tests/txinfo18.test.
3776         * tests/Makefile.am (TESTS): Adjust.
3777         * ChangeLog.1996: Rename to ChangeLog.96.
3778         * ChangeLog.1998: Rename to ChangeLog.98.
3779         * ChangeLog.2000: Rename to ChangeLog.00.
3780         * ChangeLog.2001: Rename to ChangeLog.01.
3781         * Makefile.am (EXTRA_DIST): Adjust.
3782         Reported by Richard Dawe.
3784 2003-01-13  Richard Dawe  <rich@phekda.freeserve.co.uk>  (tiny change)
3786         * lib/am/distdir.am (distcheck): '=' is not valid in DOS filenames.
3787         Use '_build' and '_inst' instead of '=build' and '=inst'.
3788         * tests/man2.test: Reflect change automake: check for files in
3789         '_build' and '_inst' directories instead of '=build' and '=inst'.
3791 2003-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
3793         Use `_dirstamp' when the file-system doesn't support `.dirstamp'.
3794         * m4/lead-dot.m4: New file.
3795         * m4/Makefile.am (dist_m4data_DATA): Add lead-dot.m4
3796         * m4/init.m4 (AM_INIT_AUTOMAKE): Require AM_SET_LEADING_DOT.:
3797         * m4/depend.m4 (AM_SET_DEPDIR): Require AM_SET_LEADING_DOT. Define
3798         DEPDIR using am__leading_dot.
3799         * automake.in (require_build_directory): Define am__dirstamp, a new
3800         variable for the dirstamp basename, based on am__leading_dot.
3801         * tests/subobj6.test: Move all `test -f' into Makefiles, so we can
3802         use $(am__dirstamp).
3803         Reported by Richard Dawe.
3805         * tests/gnits2.test, tests/pr300-prog.test, tests/transform.test:
3806         Move all `test -f' into Makefiles, so we can honor $(EXEEXT) when
3807         testing for programs.
3808         Reported by Richard Dawe.
3810 2003-01-10  Alexandre Duret-Lutz  <adl@gnu.org>
3812         * Makefile.am (maintainer-check): Suggest using $sleep instead of
3813         sleep 2.
3814         * tests/defs.in (sleep): New variable.
3815         * tests/asm.test, tests/confsub.test, tests/lisp3.test,
3816         tests/texinfo16.test, tests/warnopts.test, tests/yaccvpath.test:
3817         Use $sleep instead of sleep 2, to work around timestamp
3818         inconsistencies in Windows.
3819         Reported by Richard Dawe.
3821         * Makefile.am (maintainer-check): Do not require SHELL=/bin/sh
3822         after $MAKE -e.
3823         * tests/ansi3.test, tests/ansi5.test, tests/cond22.test,
3824         tests/man2.test, tests/subobj3.test, tests/suffix8.test,
3825         tests/suffix11.test: Do not set SHELL=/bin/sh after $MAKE -e.
3826         $SHELL is overridden by tests/defs, so it won't hurt even
3827         if $MAKE -e uses the $SHELL envvar.
3828         * tests/ansi.test, tests/insh2.test, tests/texinfo.test,
3829         tests/texinfo8.test: Use SHELL=$SHELL, not SHELL=/bin/sh.
3830         Reported by Richard Dawe.
3832         Build elisp files all at once instead of one by one.
3833         * automake.in (handle_emacs_lisp): Define am__ELFILES.  Add
3834         elc-stamp to all's dependencies.
3835         * lib/am/lisp.am (elc-stamp): New rule, build all *.elc files.
3836         (.el.elc): Rewrite to call elc-stamp if $@ doesn't exist.
3837         (clean-lisp): Clean elc-stamp.
3838         * lib/elisp-comp: Reindent.  Erase the temporatry directory
3839         from a trap.  Propagate Emacs's exit status.
3840         * tests/lisp3.test: New file.
3841         * tests/Makefile.am (TESTS): Add lisp3.test.
3842         Reported by Ryan T. Sammartino.
3844 2003-01-09  Akim Demaille  <akim@epita.fr>
3846         * automake.texi: Prefer $(FOO) to @FOO@ in the documentation.
3848 2003-01-08  Alexandre Duret-Lutz  <adl@gnu.org>
3850         * m4/lispdir.m4: Register EMACS and EMACSLOADPATH as precious
3851         variables.  Suggested by Ryan T. Sammartino.
3853 2003-01-05  Alexandre Duret-Lutz  <adl@gnu.org>
3855         * automake.in (macro_define): Add missing `{$cond}' (typo from
3856         2002-09-18).
3857         ($gen_copyright): Append year 2003.
3858         (version): Increase year.
3860         * tests/defs.in: Substitute aclocaldir instead of running
3861         the installed aclocal.  Otherwise Libtool and Gettext
3862         tests get skipped when aclocal doesn't preexist.
3863         Reported by Imacat.
3864         * tests/listval.test, tests/suffix2.test: Remove pointless -I
3865         argument to aclocal.
3867 -----
3869 Copyright (C) 2003, 2004  Free Software Foundation, Inc.
3871 This file is part of GNU Automake.
3873 GNU Automake is free software; you can redistribute it and/or modify
3874 it under the terms of the GNU General Public License as published by
3875 the Free Software Foundation; either version 2, or (at your option)
3876 any later version.
3878 GNU Automake is distributed in the hope that it will be useful,
3879 but WITHOUT ANY WARRANTY; without even the implied warranty of
3880 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3881 GNU General Public License for more details.
3883 You should have received a copy of the GNU General Public License
3884 along with autoconf; see the file COPYING.  If not, write to
3885 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
3886 Boston, MA 02111-1307, USA.