* automake.in (handle_source_transform): If it's present, use
[automake.git] / ChangeLog
blob0493336d4fc111b0d4746a5f228b49175c7204c9
1 2003-11-30  Alexandre Duret-Lutz  <adl@gnu.org>
3         * automake.in (handle_source_transform): If it's present, use
4         libfoo_la.c instead of libfoo.c as the default source of
5         libfoo.la, and issue an -Wobsolete diagnostic.  Do not be
6         greedy in the suffix replacement regex.
7         * doc/automake.texi (Default _SOURCES): New node.
8         (Program Sources, Libtool Modules): Refer to it.
9         * tests/ltlibsrc.test: Update to check for old default source files.
11 2003-11-30  Gary V. Vaughan  <gary@gnu.org>
13         * automake.in (&handle_source_transform): Calculate a default file
14         for use in the absence of an appropriate _SOURCES declaration by
15         first stripping any suffix from the unxformed target name, and
16         appending `.c'.
17         * doc/automake.texi (Program Sources, Libtool Modules): Document this.
18         * tests/ltlibsrc.test: New file.
19         * tests/Makefile.am (TESTS): Add ltlibsrc.test.
21 2003-11-29  Alexandre Duret-Lutz  <adl@gnu.org>
23         * lib/Automake/Variable.pm (loc_and_value_as_list_recursive,
24         _value_as_list_recursive_worker): Merge into ...
25         (value_as_list_recursive): ... this function.  Pass options
26         as a hash argument, and use the `location' option to trigger
27         the behavior of loc_and_value_as_list_recursive.
28         (traverse_recursively, transform_variable_recursively): Take
29         options as a %options argument.
30         (_do_recursive_traversal): Perform expansion of inner variables
31         (as in `$(FILE).ext') on request.
32         * automake.in (handle_options, check_libobjs_sources)
33         (handle_source_transform, handle_LIBOBJS, handle_ltlibraries)
34         (handle_ltlibraries, handle_man_pages, handle_dist)
35         (handle_gettext, am_install_var): Adjust usage of
36         value_as_list_recursive.
37         (handle_texinfo_helper): Pass inner_expand to
38         value_as_list_recursive.
39         * tests/txinfo28.test: New file.
40         * tests/Makefile.am (TESTS): Add txinfo28.test.
41         Report from Ralf Corsepius.
43         * lib/Automake/Variable.pm (_do_recursive_traversal): Do not
44         update @_substfroms and @_substfroms for undefined variables.
45         * tests/substre2.test: New file.
46         * tests/Makefile.am (TESTS): Add substre2.test.
48         * lib/Automake/VarDef.pm (value): Rename as ...
49         (raw_value): ... this.
50         (value): New method, strip # and \\\n.
51         (dump): Use raw_value.
52         * lib/Automake/Variable.pm (output): Use raw_value.
53         (value_as_list): Simplify, now that backslash and comments
54         are already removed.
55         * tests/txinfo22.test: Make sure Automake isn't confused
56         by comments in variables.
58 2003-11-27  Alexandre Duret-Lutz  <adl@gnu.org>
60         * doc/automake.texi: More target vs. rule editing.  Back out some
61         of the previous changes.  It's OK to talk about targets as "entry
62         points", or as thing to build, but targets cannot be run: rules
63         are run.
65         * doc/automake.texi: s/target/rule/ where appropriate.  A target
66         is the destination of a target rule, not the rule itself.
67         Suggested by Bruno Haible.
69 2003-11-25  Alexandre Duret-Lutz  <adl@gnu.org>
71         * configure.ac, NEWS: Bump version to 1.7g.
73         * configure.ac, NEWS: Bump version to 1.7f.
75         * automake.in (prepend_srcdir): Parenthesize @inputs to remove
76         a maintainer-check warning.
77         * tests/subst2.test: Rewrite the $MAKE invocation to please
78         maintainer-check.
80         * lib/config.sub, lib/config.guess, lib/texinfo.tex: New upstream
81         versions.
83         * doc/automake.texi (Program variables): Mention per-target
84         _CPPFLAGS in the documentation of INCLUDES.
85         * automake.in (generate_makefile): Likewise in the INCLUDES diagnostic.
86         Report from Bob Friesenhahn.
88         * doc/automake.texi (Extending): Elaborate on overriding.
89         * NEWS: Likewise.
90         Suggested by Bruno Haible.
92 2003-11-24  Alexandre Duret-Lutz  <adl@gnu.org>
94         * lib/Automake/Variable.pm (output): Add $(am__empty) to variable
95         definitions that end with a line full of @substitutions@ that
96         would confuse HP-UX Make if it were blank.
97         (transform_variable_recursively): Make sure not to erase empty
98         variables.
99         * tests/Makefile.am (TESTS): Add subst2.test.
100         * tests/subst2.test: New file.
101         Report from Harlan Stenn.
103         * lib/am/texibuild.am (%SOURCE_SUFFIX%.html): Work around a
104         Texinfo 4.1 bug.
105         Report from Dalibor Topic.
107 2003-11-22  Alexandre Duret-Lutz  <adl@gnu.org>
109         Fix for PR automake/411:
110         * automake.in (rewrite_inputs_into_dependencies): Simplify, and rename
111         into ...
112         (prepend_srcdir): ... this.
113         (rewrite_inputs_into_dependencies): New function, extracted from ...
114         (handle_configure): ... here.  Adjust to use prepend_srcdir
115         or rewrite_inputs_into_dependencies where needed.  Especially,
116         using (the new) rewrite_inputs_into_dependencies to compute
117         Makefile dependencies will fix PR/411.
118         * lib/am/configure.am (DIST_COMMON): Remove %MAKEFILE-IN%, it's
119         already distributed by rewrite_inputs_into_dependencies.
120         * tests/Makefile.am (TESTS): Add output10.test, remove distcom.test.
121         * tests/colon3.test: Use set -e.  Don't allow any AUTOMAKE
122         invocation refer to zardoz.  Make sure two.in and three.in
123         appear as $(srcdir)/two.in and $(srcdir)/three.in dependencies.
124         * tests/distcom.test: Delete.  This is covered by tests/output9.test.
125         * tests/output10.test: New file, for PR/411.
127 2003-11-21  Alexandre Duret-Lutz  <adl@gnu.org>
129         * automake.in (append_exeext): Do not append $(EXEEXT) to
130         @substitutions@.
131         * tests/exeext4.test: New file.
132         * tests/Makefile.am (TESTS): Add exeext4.test.
134 2003-11-19  Alexandre Duret-Lutz  <adl@gnu.org>
136         * lib/am/configure.am (%MAKEFILE%): Remove %MAINTAINER-MODE%,
137         mistakenly added on 2001-03-05.
138         * tests/remake5.test: New file.
139         * tests/Makefile.am (TESTS): Add remake5.test.
140         Report from Ralf Corsepius.
142 2003-11-18  Alexandre Duret-Lutz  <adl@gnu.org>
144         * configure.ac, NEWS: Bump version to 1.7e.
146         * configure.ac, NEWS: Bump version to 1.7d.
148         * lib/config.sub, lib/config.guess, lib/texinfo.tex: New
149         upstream versions.
151 2003-11-18  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>  (tiny change)
152             Alexandre Duret-Lutz  <adl@gnu.org>
154         * lib/am/texinfos.am (install-info): Depend on
155         install-info-recursive or install-info-am even if no-installinfo.
156         * tests/txinfo27.test: New file.
157         * tests/Makefile.am (TESTS): Add txinfo26.test.
159 2003-11-18  Paolo Bonzini  <bonzini@gnu.org>
160             Alexandre Duret-Lutz  <adl@gnu.org>
162         * lib/ylwrap: Do not overwrite headers if they haven't changed.
163         Fix the include guard substitution.
164         * tests/yacc6.test: Augment to run ylwrap, and make sure it
165         does not needlessly update headers.
166         * tests/yacc8.test: Make sure headers are not needlessly updated
167         with ylwrap is not used.  Move `test -f foo.o' into the
168         Makefile as `test -f foo.$(OBJEXT)' for portability.
170 2003-11-17  Alexandre Duret-Lutz  <adl@gnu.org>
172         * automake.in (generate_makefile): Define SUBDIRS if it is
173         not defined and DIST_SUBDIRS is.
174         * tests/subpkg2.test: New file.
175         * tests/Makefile.am (TESTS): Add subpkg2.test.
176         Report from Gary V. Vaughan.
178         * tests/suffix11.test: Check for suffixes containing `-'.
179         * lib/Automake/Rule.pm ($_SUFFIX_RULE_PATTERN): Accept `-' in
180         suffixes.
182         * lib/Automake/Rule.pm (define): Suggest using target-local instead
183         of target-am, not target-am-local.
184         * tests/overrid.test: Check the diagnostic for clean-am.
185         Report from Bruno Haible.
187 2003-11-17  Jim Meyering  <jim@meyering.net>
189         * bootstrap: Require not only that `perl' have the executable
190         bit set, but also that it is not a directory.
192         * lib/am/configure.am: Mark %MAKEFILE% as `.PRECIOUS'.
194 2003-11-17  Alexandre Duret-Lutz  <adl@gnu.org>
196         * automake.in (ac_config_files_location): Declare as a hash.
197         (handle_configure): Rewrite the computation of AC_CONFIG_FILES
198         dependencies; make sure we don't use $(srcdir) or $(top_srcdir)
199         for inputs which are also outputs, and do not check inputs
200         relatively to the current directory.
201         (scan_autoconf_config_files): Take $where as argument, and
202         fill $ac_config_files_location.
203         * tests/output8.test, tests/output9.test: New files.
204         * tests/Makefile.am (TESTS): Add output8.test and output9.test.
205         Report from Bruno Haible.
207 2003-11-14  Alexandre Duret-Lutz  <adl@gnu.org>
209         * tests/aclibobj.test, tests/aclocal.test, tests/aclocal3.test,
210         tests/acoutbs.test, tests/acoutbs2.test, tests/acoutnoq.test,
211         tests/acoutpt.test, tests/acoutpt2.test, tests/acoutqnl.test,
212         tests/acsilent.test, tests/acsubst.test, tests/acsubst2.test,
213         tests/all.test, tests/alpha.test, tests/amassign.test,
214         tests/ammissing.test, tests/ansi.test, tests/ansi10.test,
215         tests/ansi2.test, tests/ansi3.test, tests/ansi3b.test,
216         tests/ansi4.test, tests/ansi5.test, tests/ansi6.test,
217         tests/ansi7.test, tests/ansi9.test, tests/ar.test,
218         tests/autohdr.test, tests/autohdr2.test, tests/auxdir.test,
219         tests/auxdir2.test, tests/backsl.test, tests/backsl2.test,
220         tests/badprog.test, tests/block.test, tests/canon2.test,
221         tests/canon3.test, tests/canon4.test, tests/canon5.test,
222         tests/ccnoco.test, tests/check.test, tests/check2.test,
223         tests/check3.test, tests/checkall.test, tests/clean.test,
224         tests/colneq2.test, tests/colon.test, tests/colon2.test,
225         tests/colon3.test, tests/colon4.test, tests/colon5.test,
226         tests/colon6.test, tests/colon7.test, tests/comment.test,
227         tests/comment2.test, tests/comment4.test, tests/comment6.test,
228         tests/comment7.test, tests/compile_f_c_cxx.test, tests/cond.test,
229         tests/cond10.test, tests/cond11.test, tests/cond13.test,
230         tests/cond14.test, tests/cond15.test, tests/cond16.test,
231         tests/cond17.test, tests/cond18.test, tests/cond19.test,
232         tests/cond21.test, tests/cond22.test, tests/cond25.test,
233         tests/cond26.test, tests/cond28.test, tests/cond3.test,
234         tests/cond4.test, tests/cond5.test, tests/cond6.test,
235         tests/cond7.test, tests/cond8.test, tests/cond9.test,
236         tests/condd.test, tests/condinc.test, tests/condlib.test,
237         tests/condman.test, tests/condman2.test, tests/conf2.test,
238         tests/confdeps.test, tests/confh.test, tests/confh4.test,
239         tests/config.test, tests/confincl.test, tests/conflnk.test,
240         tests/conflnk2.test, tests/confsub.test, tests/confvar.test,
241         tests/confvar2.test, tests/copy.test, tests/ctarget1.test,
242         tests/cxx.test, tests/cxxansi.test, tests/cxxcpp.test,
243         tests/cxxlibobj.test, tests/cxxlink.test, tests/cxxnoc.test,
244         tests/cxxo.test, tests/cygwin32.test, tests/dash.test,
245         tests/defun.test, tests/defun2.test, tests/dejagnu.test,
246         tests/dejagnu3.test, tests/dejagnu4.test, tests/dejagnu5.test,
247         tests/dejagnu6.test, tests/dejagnu7.test, tests/depacl2.test,
248         tests/depcomp.test, tests/depcomp2.test, tests/depcomp4.test,
249         tests/depdist.test, tests/depend.test, tests/depend2.test,
250         tests/depend3.test, tests/depend4.test, tests/destdir.test,
251         tests/dirlist.test, tests/discover.test, tests/distcom.test,
252         tests/distcom2.test, tests/distdir.test, tests/distname.test,
253         tests/dollar.test, tests/double.test, tests/dup2.test,
254         tests/empty.test, tests/empty2.test, tests/empty3.test,
255         tests/empty4.test, tests/error.test, tests/exdir.test,
256         tests/exeext.test, tests/exeext3.test, tests/exsource.test,
257         tests/ext.test, tests/ext2.test, tests/extra.test,
258         tests/extra2.test, tests/extra3.test, tests/extra4.test,
259         tests/extra5.test, tests/extra6.test, tests/extra7.test,
260         tests/flibs.test, tests/fnoc.test, tests/fo.test,
261         tests/fonly.test, tests/fortdep.test, tests/fpinst2.test,
262         tests/fpinstall.test, tests/gcj.test, tests/gcj3.test,
263         tests/gcj4.test, tests/gnits2.test, tests/gnits3.test,
264         tests/header.test, tests/implicit.test, tests/include.test,
265         tests/include2.test, tests/info.test, tests/insh2.test,
266         tests/install2.test, tests/installdir.test, tests/instdat.test,
267         tests/instdat2.test, tests/instexec.test, tests/insthook.test,
268         tests/instman.test, tests/instman2.test, tests/instsh.test,
269         tests/instsh2.test, tests/interp.test, tests/interp2.test,
270         tests/java.test, tests/java2.test, tests/javaprim.test,
271         tests/javasubst.test, tests/ldadd.test, tests/ldflags.test,
272         tests/lex.test, tests/lex3.test, tests/lex4.test, tests/lex5.test,
273         tests/libobj11.test, tests/libobj2.test, tests/libobj4.test,
274         tests/libobj5.test, tests/libobj7.test, tests/libobj8.test,
275         tests/library.test, tests/libtool.test, tests/libtool2.test,
276         tests/libtool3.test, tests/libtool5.test, tests/link_c_cxx.test,
277         tests/link_dist.test, tests/link_f_only.test, tests/link_fc.test,
278         tests/link_fccxx.test, tests/link_fcxx.test, tests/lisp.test,
279         tests/listval.test, tests/ltdeps.test, tests/ltlibobjs.test,
280         tests/maintclean.test, tests/make.test, tests/makej.test,
281         tests/makevars.test, tests/man.test, tests/man2.test,
282         tests/mclean.test, tests/mdate.test, tests/mdate2.test,
283         tests/mdate3.test, tests/mdate4.test, tests/mkinst2.test,
284         tests/mkinstall.test, tests/nobase.test, tests/nodef.test,
285         tests/nodef2.test, tests/nodep.test, tests/nodepcomp.test,
286         tests/nodist.test, tests/nodist2.test, tests/nodist3.test,
287         tests/noinst.test, tests/noinstdir.test, tests/nolink.test,
288         tests/nostdinc.test, tests/number.test, tests/obsolete.test,
289         tests/order.test, tests/outdir.test, tests/output.test,
290         tests/output2.test, tests/output3.test, tests/output4.test,
291         tests/parse.test, tests/phony.test, tests/pluseq.test,
292         tests/pluseq10.test, tests/pluseq2.test, tests/pluseq3.test,
293         tests/pluseq4.test, tests/pluseq6.test, tests/pluseq8.test,
294         tests/postproc.test, tests/ppf77.test, tests/pr2.test,
295         tests/pr204.test, tests/pr220.test, tests/pr224.test,
296         tests/pr229.test, tests/pr243.test, tests/pr266.test,
297         tests/pr279-2.test, tests/pr279.test, tests/pr287.test,
298         tests/pr300-lib.test, tests/pr300-ltlib.test,
299         tests/pr300-prog.test, tests/pr307.test, tests/pr72.test,
300         tests/pr87.test, tests/pr9.test, tests/prefix.test,
301         tests/proginst.test, tests/python.test, tests/python3.test,
302         tests/python4.test, tests/python5.test, tests/python6.test,
303         tests/python7.test, tests/python8.test, tests/python9.test,
304         tests/recurs2.test, tests/remake.test, tests/remake2.test,
305         tests/remake3.test, tests/req.test, tests/reqd.test,
306         tests/rulepat.test, tests/scripts.test, tests/sinclude.test,
307         tests/space.test, tests/specflg3.test, tests/specflg6.test,
308         tests/specflg7.test, tests/specflg8.test, tests/specflg9.test,
309         tests/spell3.test, tests/spelling.test, tests/spy.test,
310         tests/stamph2.test, tests/stdlib2.test, tests/strip.test,
311         tests/subcond.test, tests/subcond2.test, tests/subcond3.test,
312         tests/subdir.test, tests/subdir2.test, tests/subdir3.test,
313         tests/subdir4.test, tests/subdir5.test, tests/subdir6.test,
314         tests/subdirbuiltsources.test, tests/subobj.test,
315         tests/subobj2.test, tests/subobj3.test, tests/subobj4.test,
316         tests/subobj5.test, tests/subobj6.test, tests/subobj7.test,
317         tests/subobj8.test, tests/subobj9.test, tests/subobjname.test,
318         tests/subpkg.test, tests/subst.test, tests/substref.test,
319         tests/suffix.test, tests/suffix10.test, tests/suffix2.test,
320         tests/suffix3.test, tests/suffix4.test, tests/suffix5.test,
321         tests/suffix6.test, tests/suffix7.test, tests/suffix8.test,
322         tests/suffix9.test, tests/symlink2.test, tests/symlink3.test,
323         tests/tags.test, tests/tagsub.test, tests/target-cflags.test,
324         tests/transform.test, tests/txinfo.test, tests/txinfo10.test,
325         tests/txinfo13.test, tests/txinfo16.test, tests/txinfo17.test,
326         tests/txinfo18.test, tests/txinfo2.test, tests/txinfo23.test,
327         tests/txinfo24.test, tests/txinfo25.test, tests/txinfo26.test,
328         tests/txinfo3.test, tests/txinfo5.test, tests/txinfo6.test,
329         tests/txinfo7.test, tests/txinfo8.test, tests/txinfo9.test,
330         tests/unused.test, tests/vars.test, tests/vars3.test,
331         tests/vartar.test, tests/version.test, tests/version2.test,
332         tests/version4.test, tests/version6.test, tests/version7.test,
333         tests/vpath.test, tests/vtexi.test, tests/vtexi2.test,
334         tests/werror.test, tests/whoami.test, tests/yacc.test,
335         tests/yacc3.test, tests/yacc4.test, tests/yacc5.test,
336         tests/yacc6.test, tests/yacc7.test, tests/yacc8.test,
337         tests/yaccpp.test, tests/yaccvpath.test: Fix license to refer
338         to Automake, not autoconf.
340         Fix for PR automake/408:
341         * lib/am/texinfos.am (install-info-am): Strip any $(srcdir)/ prefix
342         from $file, as already done for dist-info.
343         * tests/Makefile.am (TESTS): Add txinfo26.test.
344         * tests/txinfo26.test: New file.
345         Report from Nicholas Wourms.
347 2003-11-13  Alexandre Duret-Lutz  <adl@gnu.org>
349         * m4/lispdir.m4 (AM_PATH_LISPDIR): If EMACS=t, empty it before
350         running AC_CHECK_PROGS(EMACS).
351         * lib/am/lisp.am (elc-stamp): Quote $(EMACS).
352         Report from Jens Petersen.
354         * tests/mkinst2.test: Rewrite.
356         * m4/mkdirp.m4: Do not require AM_AUX_DIR_EXPAND.
358 2003-11-12  Alexandre Duret-Lutz  <adl@gnu.org>
360         * automake.in (scan_autoconf_traces): Honor sinclude.
361         * tests/sinclude.test: Check for sinclude.
362         Report from Roberto Bagnara.
364 2003-11-11  Alexandre Duret-Lutz  <adl@gnu.org>
366         * Makefile.am: Do not rerun `make dist' after tagging, `make distcheck'
367         already build the tarballs.  Commit files right before tagging.
368         Check NEWS before running distcheck.
370         * m4/amversion.in (AM_AUTOMAKE_VERSION): Missing cosmetic space.
372         * configure.ac, NEWS: Bump version to 1.7c.
374         * configure.ac, NEWS: Bump version to 1.7b.
375         * Makefile.am (maintainer-check): Ignore comments while
376         scanning for rm without -f.
378         * Makefile.am (fetch): Get all files from savannah.  Do not
379         postprocess Struct.pm and XFiles.pm, since we now are the master
380         of these.
381         * lib/config.sub, lib/config.guess, lib/config-ml.in,
382         lib/texinfo.tex: New upstream versions.
384         * configure.ac: Check that autoconf is installed, that it works,
385         and that it is recent enough in three steps, not one.
387         * NEWS: Minor edits.
389         * lib/Makefile.am (dist_script_DATA): Move config-ml.in ...
390         (dist_pkgvdata_DATA): ... here.
392         * tests/spy.test: Document overlapping ::-rules incompatibilities,
393         and check only non-overlapping ::-rules.
395         * doc/automake.texi (Texinfo): Define MAKEINFO, MAKEINFOHTML,
396         MAKEINFOFLAGS, AM_MAKEINFOFLAGS, AM_MAKEINFOHTMLFLAGS, TEXI2DVI,
397         TEXI2PDF, DVIPS, and TEXINFO_TEX in a table.
398         (Uniform): Do not speak of missing HTML support, this is
399         confusing.
400         * lib/Automake/Variable.pm (_silent_variable_override): Add
401         AM_MAKEINFOHTMLFLAGS.
402         * lib/am/texibuild.am (%SOURCE_SUFFIX%.html): Use MAKEINFOHTML and
403         AM_MAKEINFOHTMLFLAGS instead of MAKEINFO and AM_MAKEINFOFLAGS.
404         * lib/am/texinfos.am (MAKEINFOHTML, AM_MAKEINFOHTMLFLAGS): Define.
405         * tests/txinfo21.test: Add a test with AM_MAKEINFOHTMLFLAGS.
407 2003-11-10  Alexandre Duret-Lutz  <adl@gnu.org>
409         * tests/spy.test: New file.
410         * tests/Makefile.am (TESTS): Add spy.test.
412         * automake.in (handle_configure): Distribute and define mkinstalldirs
413         only if it is already present in the package.
414         (scan_autoconf_files): Do not require mkinstalldirs.
415         (require_build_directory): Use $(mkdir_p), not $(mkinstalldirs).
416         * lib/am/data.am, lib/am/distdir.am, lib/am/install.am,
417         lib/am/java.am, lib/am/libs.am, lib/am/lisp.am, lib/am/mans.am,
418         lib/am/progs.am, lib/am/python.am, lib/am/scripts.am,
419         lib/am/texinfos.am: Use $(mkdir_p) instead of $(mkinstalldirs).
420         * m4/mkdirp.m4: New file.
421         * m4/Makefile.am (dist_m4data_DATA): Add mkdirp.m4.
422         * m4/init.m4 (AM_INIT_AUTOMAKE): Call AM_PROG_MKDIR_P.
423         * tests/Makefile.am (TESTS): Remove insh.test.
424         * tests/insh.test: Delete.
425         * tests/defs.in, tests/instsh.test: Do not install mkinstalldirs.
426         * tests/auxdir.test: Install mkinstalldirs.
427         * tests/distdir.test, tests/instman.test, tests/pr2.test: Use
428         $(mkdir_p), not $(mkinstalldirs).
429         * tests/empty.test: Run configure, do not substitute things by hand.
430         * doc/automake.texi (Optional) <AC_CONFIG_FILES>: Take install-sh
431         as an example, not mkinstalldirs.
432         (Auxiliary Programs) <mkinstalldirs>: Update.
434         * tests/defs.in: Handle required=bzip2.
436         * tests/defs.in: Export SHELL.
437         * tests/cond11.test: Missing quotes.
438         * tests/nogzip2.test: Require bzip2.
440 2003-11-09  Alexandre Duret-Lutz  <adl@gnu.org>
442         * NEWS: Add news entries from 1.6.x and 1.7.x.
444         * automake.texi (Optional) <AC_SUBST>: Grammar fixes.
446         * automake.in (check_gnu_standards): Install COPYING only if
447         none of COPYING, COPYING.LIB, or COPYING.LESSER exist.  Do not
448         overwrite the license otherwise.
449         * tests/Makefile.am (TESTS): Add license.test.
450         * tests/license.test: New file.
452         * lib/mkinstalldirs: Mention automake-patches@gnu.org and
453         bug-automake@gnu.org.
454         * lib/compile, lib/depcomp, lib/elisp-comp, lib/mdate-sh:
455         Likewise.  Also add support for --help and --version.
456         * lib/py-compile, lib/ylwrap: Likewise, and reindent.
458 2003-11-08  Alexandre Duret-Lutz  <adl@gnu.org>
460         * lib/am/tags.am (ETAGSFLAGS, CTAGSFLAGS): Remove.
461         * lib/am/dejagnu.am (RUNTESTFLAGS): Remove.
462         * lib/am/java.am (JAVACFLAGS): Remove.
463         * tests/dejagnu3.test: Check that the environment value
464         of RUNTESTFLAGS get passed down to runtest.
465         Suggested by Mark Mitchell.
467         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
468         (?GENERIC?%EXT%.lo): Do not echo compile command manually, this
469         breaks `make -s'.  Instead, fold the compile command on two lines,
470         so that it take less space on the display.
471         Suggested by Karl Berry and William Fulton.
473         * lib/am/texibuild.am (%DEST_PREFIX%%DEST_SUFFIX%): Rename as ...
474         (%DEST_INFO_PREFIX%%DEST_SUFFIX%): ... this, and honor ?INSRC?
475         to select $(srcdir) or `.' builds.
476         (INFO_DEPS): Define here.
477         * lib/am/texinfos.am (dist-info): Strip filename starting with
478         "$(srcdir)/".
479         * automake.in (output_texinfo_build_rules): Take a new argument
480         $insrc, and adjust substitutions in 'texibuild'.
481         (handle_texinfo_helper): Compute a regex of all user-cleaned
482         files, and use this to select whether to build .info files in `.'
483         or $(srcdir).  Give an account of the $(srcdir) vs `.' debacle.
484         Alway build the version.texi and stamp files in $(srcdir).  Do not
485         define INFO_DEPS.
486         * tests/Makefile.am (TESTS): Add txinfo23.test, txinfo24.test,
487         and txinfo25.test.
488         * tests/txinfo23.test, tests/txinfo24.test, tests/txinfo25.test:
489         New files.
490         * tests/txinfo13.test, tests/txinfo16.test, tests/txinfo3.test,
491         tests/vtexi.test: Adjust to new rules.
493 2003-11-05  Alexandre Duret-Lutz  <adl@gnu.org>
495         * m4/init.m4 (AM_INIT_AUTOMAKE): Require Autoconf 2.58.
496         * configure.ac: Require Autoconf 2.58a, and check for 2.58.
498 2003-10-27  Alexandre Duret-Lutz  <adl@gnu.org>
500         * lib/am/remake-hdr.am ($(srcdir)/%CONFIG_HIN%): Erase %STAMP%.
501         * tests/Makefile.am (TESTS): Add autohdr3.test
502         * tests/autohdr3.test: New file.
504         * automake.in (handle_configure): Rename am__configure_deps
505         as am__aclocal_m4_deps and include $(ACLOCAL_M4_SOURCES) and
506         $configure_ac.  Define am__configure_deps as am__aclocal_m4_deps
507         + $(CONFIGURE_DEPENDENCIES) + $(ACLOCAL_M4).  Do not define
508         ACLOCAL_M4_DEPS while processing configure.am.
509         (make_paragraphs): Do not define %CONFIGURE_AC%, now unused.
510         (scan_aclocal_m4): Do not distribute aclocal.m4, this
511         is done from lib/am/configure.am.
512         * lib/am/configure.am (%MAKEFILE-IN%, DIST_COMMON,
513         $(top_srcdir)/configure, $(ACLOCAL_M4)): Simplify using
514         $(am__configure_deps) or $(am__aclocal_m4_deps).
515         * lib/am/remake-hdr.am ($(srcdir)/%CONFIG_HIN%): Likewise.
517 2003-10-26  Alexandre Duret-Lutz  <adl@gnu.org>
519         * lib/am/remake-hdr.am ($(srcdir)/%CONFIG_HIN%): Depend on
520         $(am__configure_deps).
522         * automake.in (handle_configure): Distribute all AC_CONFIG_HEADERS
523         sources, and without using require_file.  Define %CONFIG_H_DEPS%
524         and %FIRST_CONFIG_HIN% while processing remake-hdr.am.
525         * lib/am/remake-hdr.am (%STAMP%): Use %CONFIG_H_DEPS% instead
526         of (srcdir)/%CONFIG_HIN%.  Output the $(srcdir)/%CONFIG_HIN%
527         rule only for the first header (i.e., if %FIRST_CONFIG_HIN%).
528         * tests/autohdr4.test: New file.
529         * tests/Makefile.am (TESTS): Add autohdr4.test.
530         * tests/config.test: Do not grep, run things to see if they work.
532 2003-10-25  Alexandre Duret-Lutz  <adl@gnu.org>
534         * tests/output7.test: Populate sub/ with a dummy file, so that it
535         is not empty.  This fixes a failure reported by Patrick Welche.
536         * lib/am/distdir.am: Add note about tar's `-o' option and empty
537         directories.
539 2003-10-24  Didier Cassirame  <faded@free.fr>  (tiny change)
541         * lib/ylwrap: Typo in regex.
543 2003-10-23  Paul Eggert  <eggert@twinsun.com>
545         * lib/Automake/XFile.pm: Don't assume -j is solo.
546         Issue a more-informative diagnostic.
547         Problems reported by Eric Sunshine.
549 2003-10-21  Alexandre Duret-Lutz  <adl@gnu.org>
551         * m4/lispdir.m4 (AM_PATH_LISPDIR): Always check for Emacs.
552         Always define lispdir.
553         * lib/am/lisp.am (install-%DIR%LISP, uninstall-%DIR%LISP): Check
554         $(EMACS) to decide whether _LISP files must be installed,
555         not $(lispdir).
556         * doc/automake.texi (Emacs Lisp): Mention the two ways to install
557         non byte-compiled Emacs lisp files.
558         * tests/lisp4.test, tests/lisp5.test: Check "make install"
559         when EMACS=no.
560         Suggested by Simon Josefsson.
562         * NEWS: Clarify the entry about multiple conditional definitions
563         of _PROGRAMS, _LDADD, and _LIBADD.
564         Report from Simon Josefsson.
566         * lib/am/install.am (install-strip): Override install_sh_PROGRAM
567         too.
568         Report from Elmar Hoffmann.
570 2003-10-07  Alexandre Duret-Lutz  <adl@gnu.org>
572         * aclocal.in ("MAIN", usage, parse_arguments): Move near
573         the end, so "MAIN" can use prototypes.
574         (scan_configure): Move later too, for the sake of prototypes.
575         (scan_configure_dep): Fix setting of $scanned_configure_dep.
576         (trace_used_macros): Do not take any argument.
578 2003-10-06  Alexandre Duret-Lutz  <adl@gnu.org>
580         * tests/stdlib2.test: Check AM_LDFLAGS alone.
582         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
583         versions.
585         * automake.in (handle_ltlibraries): Also grep AM_LDFLAGS for `-module'.
586         * tests/stdlib2.test: New file.
587         * tests/Makefile.am (TESTS): Add stdlib2.test.
588         Report from Kevin P. Fleming.
590 2003-10-03  Richard Dawe  <rich@phekda.freeserve.co.uk>  (tiny change)
592         * tests/defs.in: For required=runtest, check that we are using
593         a DejaGnu that supports specifying the program on the command-line.
595 2003-10-03  Alexandre Duret-Lutz  <adl@gnu.org>
597         For Debian Bug #213524:
598         * lib/am/texinfos.am (install-info-am, uninstall-info-am): Merge
599         stderr and stdout, and grep only the first line while testing
600         install-info --version's output.  This revert part of the change
601         from 2001-05-18.
603 2003-10-01  Akim Demaille  <akim@epita.fr>
605         * m4/amversion.in: Add (C) to the Copyright notice.
607 2003-10-01  Paul Eggert  <eggert@twinsun.com>
609         * lib/Automake/XFile.pm: Use Errno.
610         (lock): Ignore ENOLCK errors.  Problem reported Andreas Schwab in
611         <http://mail.gnu.org/archive/html/bug-autoconf/2003-09/msg00141.html>.
613 2003-09-30  Tom Tromey  <tromey@redhat.com>
615         * lib/Automake/Options.pm (_process_option_list): Recognize
616         no-dist.
617         * NEWS: Update.
618         * doc/automake.texi (Options): Document no-dist.
619         * automake.in (check_cygnus): Set no-dist option.
620         (handle_dist): Recognize no-dist.
621         * tests/nodist3.test: New file.
622         * tests/Makefile.am (TESTS): Added nodist3.test.
624 2003-09-29  Alexandre Duret-Lutz  <adl@gnu.org>
626         * automake.in (handle_clean): Take $makefile as argument, and
627         define %MAKEFILE% while processing clean.am.
628         (generate_makefile): Pass $makefile to handle_clean.
629         * lib/am/clean.am (distclean, maintainer-clean): Erase %MAKEFILE%,
630         not Makefile.
631         * tests/gnumake.test: New file.
632         * tests/Makefile.am (TESTS): Add gnumake.test.
633         Report from Braden N. McDaniel.
635 2003-09-26  Alexandre Duret-Lutz  <adl@gnu.org>
637         * doc/automake.texi (Scripts): Update the example about automake.
638         Mention `dist_' for distributed scripts.
640         * lib/mkinstalldirs: Clean up after NextStep and OpenStep mkdir.
641         Suggested by Eric Sunshine.
643 2003-09-25  Alexandre Duret-Lutz  <adl@gnu.org>
645         * README: More mailing lists.
647         * NEWS: Mention the switch to GNU FDL for the manual.
649 2003-09-24  Alexandre Duret-Lutz  <adl@gnu.org>
651         * lib/install-sh (src, dst): Protect names starting with `-',
652         as in mkinstalldirs.
654         * configure.in: Rename as ...
655         * configure.ac: ... this.
656         * README: s/configure.in/configure.ac/.
658         * doc/fdl.texi: New file.
659         * doc/Makefile.am (automake_TEXINFOS): New variable.
660         * doc/automake.texi (Copying This Manual): New appendix, include
661         fdl.texi.
662         (Macro and Variable Index, General Index): Move as subsections of ...
663         (Indices): This new appendix.
665         * doc/automake.texi: Refer to configure.ac instead of configure.in.
667         * automake.texi: Move ...
668         * doc/automake.texi: ... here.
669         * doc/Makefile.am: New file.
670         * configure.in: Output doc/Makefile.
671         * Makefile.am (SUBDIRS): Add doc.
672         (ETAGS_ARGS, TAGS_DEPENDENCIES): Move to doc/Makefile.am.
674 2003-09-23  Alexandre Duret-Lutz  <adl@gnu.org>
676         * aclocal.in (write_aclocal): Consider files with relative
677         paths as local to the project, i.e., subject to m4_include.
678         * tests/subpkg.test (ACLOCAL_AMFLAGS): Make sure m4_include
679         is also used for .m4 files in the outer project.
681         Support for multiple inputs in AC_CONFIG_FILES.
682         Requested long ago by Harlan Stenn.
683         * automake.in (handle_dist): Remove unused argument $makefile.
684         (handle_subdirs): Expect SUBDIRS elements in $relative_dir,
685         not $am_relative_dir.
686         (rewrite_inputs_into_dependencies): Allow $add_srcdir to
687         be a filename that must always be prefixed by $(srcdir) or
688         $(top_srcdir).
689         (handle_configure, generate_makefile): Revamp to make the
690         Makefile.am, Makefile.in, Makefile more independent.
691         (locate_am): New function.
692         (scan_configure_dep, parse_arguments): Use locate_am.
693         (MAIN): Adjust call to generate_makefile.
694         * lib/am/configure.am: Remove %MAKEFILE-IN% from the dependencies
695         of %MAKEFILE%.  %MAKEFILE-IN% is already in %MAKEFILE-DEPS%.
696         * tests/output6.test, tests/output7.test: New files.
697         * tests/Makefile.am (TESTS): Add them.
698         * automake.texi (Requirements) <AC_CONFIG_FILES>: Document how
699         multiple inputs are scanned.
701 2003-09-13  Alexandre Duret-Lutz  <adl@gnu.org>
703         * Makefile.am (FETCHFILES, fetch): Do not fetch lib/Automake/XFile.pm
704         and lib/Automake/Struct.pm from Autoconf.
705         * lib/Automake/XFile.pm: Update comment, Automake is now
706         the master for this file.  Cosmetic changes.
708 2003-09-09  Akim Demaille  <akim@epita.fr>
710         * lib/Automake/FileUtils.pm (&update_file): s/cannot not/cannot/g.
711         Reported by Gary Vaughan.
712         (&find_file): Walk the @include in forward order.
714 2003-09-09  Akim Demaille  <akim@epita.fr>
716         * lib/Automake/FileUtils.pm (&update_file): Be sure not to leave
717         trailing files.
719 2003-09-07  Alexandre Duret-Lutz  <adl@gnu.org>
721         Changes to m4_included files should also cause aclocal.m4 to change.
722         * aclocal.in (m4_include_rx): New variable.
723         (scan_configure_dep): New function.
724         (scan_configure, add_file): Simplify using scan_configure_dep.
725         * tests/Makefile.am (TESTS): Add acloca13.test.
726         * tests/aclocal13.test: New file.
728         * tests/instsh.test: Do not reset $ACLOCAL and $AUTOMAKE now
729         that we have fake version in the $PATH.
731         * aclocal.in (add_file): Remove useless filling of $output, probably
732         left a after CVS conflict.  This code is now in write_aclocal.
734         * aclocal.in (configure_ac): Do not call require_configure_ac
735         before parsing the options.
736         * automake.in (configure_ac): Likewise.
737         * lib/Automake/Variable.pm (configure_ac): Do not require configure.ac,
738         find it.
739         * lib/Automake/Configure_ac.pm (require_configure_ac):
740         find_configure_ac never return an undefined value, so test
741         the file's existence instead.
742         * tests/Makefile.am (TESTS): Add help.test.
743         * tests/help.test: New file.
745 2003-09-06  Alexandre Duret-Lutz  <adl@gnu.org>
747         * lib/Automake/XFile.pm: Update to use ChannelDefs.
748         (close): Call Automake::FileUtils::handle_exec_errors on errors.
749         * automake.in (scan_autoconf_files): Exit with $?=63 on version
750         mismatch.
751         (scan_autoconf_traces): Likewise.  Close the autoconf pipe to
752         capture abnormal exits.
753         * aclocal.in ($exit_status): Remove, and use Channels.pm's $exit_code
754         instead.
755         (trace_used_macros): Close the autom4te pipe to capture abnormal exits.
756         * lib/missing: When a tool has run and exited with $?=63, emulate
757         it.  Adjust the diagnostic and pretend the tool is tool old in this
758         case.  Use an emacs-updated "scriptversion" variable.
759         * configure.in: Output tests/aclocal-${APIVERSION} and
760         tests/automake-${APIVERSION}.
761         * tests/aclocal.in, tests/automake.in,
762         tests/missing.test, tests/missing2.test: New files.
763         * tests/defs.in (AUTOMAKE, ACLOCAL, PATH): Define
764         to use tests/aclocal-$APIVERSION and tests/automake-$APIVERSION.
765         * tests/dup3.test: Remove. alocal9.test, acloca10.test, and others are
766         already testing for this.
767         * tests/depacl2.test, tests/dup2.test, tests/order.test: Fix
768         configure.in so that aclocal works.
769         * tests/defun.test: Quote the AC_DEFUN body.
770         * tests/Makefile.am (TESTS): Add missing.test and missing2.test,
771         and remove dup3.test.
772         (check_SCRIPTS): Add aclocal and automake.
774         * tests/unused.test: Quote AC_DEFUN arguments.
776 2003-09-05  Paul Eggert  <eggert@twinsun.com>
778         * NEWS, aclocal.in, automake.in, automake.texi, lib/ansi2knr.c,
779         lib/depcomp, lib/missing, lib/py-compile,
780         lib/Automake/Channels.pm, lib/Automake/Rule.pm,
781         lib/Automake/Variable.pm, lib/Automake/tests/Condition.pl,
782         lib/am/dejagnu.am, lib/am/depend.am, lib/am/lisp.am,
783         lib/am/remake-hdr.am, lib/am/texi-vers.am, m4/obsolete.m4,
784         m4/python.m4, tests/backsl4.test, tests/defs.in,
785         tests/dejagnu7.test, tests/depacl2.test, tests/dirlist.test,
786         tests/error.test, tests/getopt.test, tests/gnuwarn.test,
787         tests/include2.test, tests/libobj10.test, tests/libtool5.test,
788         tests/libtool6.test, tests/lisp3.test, tests/phony.test,
789         tests/pr220.test, tests/subcond2.test, tests/subcond3.test,
790         tests/vtexi.test:
791         Spelling and minor grammar fixes.
793 2003-09-01  Alexandre Duret-Lutz  <adl@gnu.org>
795         * lib/config.sub, lib/config.guess, lib/texinfo.tex,
796         lib/config-ml.in, lib/symlink-tree: New upstream versions.
798 2003-08-31  Thien-Thi Nguyen  <ttn@gnu.org>  (tiny change)
800         * tests/yacc7.test: Require bison.
802 2003-08-31  Alexandre Duret-Lutz  <adl@gnu.org>
804         * aclocal.in (scan_file): Warn about underquoted AC_DEFUN.
805         ($underquoted_manual_once): New variable.
806         * automake.texi (Extending aclocal): Document this.
808 2003-08-29  Alexandre Duret-Lutz  <adl@gnu.org>
810         * aclocal.in (@file_order): New variable, to make sure
811         files are output in the opposite order of the -I arguments.
812         (scan_file): Fill it.
813         (trace_used_macros, write_aclocal): Use it.
814         (scan_m4_files): Reverse the directory contents, so that
815         macros from the lexicographically greatest files are preferred.
816         * tests/aclocal9.test, tests/acloca10.test, tests/acloca11.test:
817         New files.
818         * tests/Makefile.am (TESTS): Add them.
820 2003-08-24  Alexandre Duret-Lutz  <adl@gnu.org>
822         For Debian Bug #206299:
823         * automake.in ($configure_deps_greatest_timestamp,
824         $output_deps_greatest_timestamp): New variables.
825         (initialize_per_input): Reset $output_deps_greatest_timestamp.
826         (scan_autoconf_traces, scan_autoconf_files, read_am_file):
827         Update $configure_deps_greatest_timestamp and
828         $output_deps_greatest_timestamp
829         (generate_makefile): Rewrite the logic to decide whether
830         to rewrite the output.  Move the leading dup_channel_setup
831         and trailing drop_channel_setup to MAIN, so that
832         drop_channel_setup is executed for all exit paths.
833         * tests/aclocal7.test: Update to check for $AUTOMAKE --no-force
834         * tests/distcom6.test: New file.  Report from Scott James Remnant.
835         * tests/Makefile.am (TESTS): Add distcom6.test.
837         * configure.in: Require Autoconf 2.57b to be sure
838         aclocal can use autom4te --language Autoconf-without-aclocal-m4.
839         * m4/init.m4: Likewise.  Move the AC_PREREQ and m4_pattern_allow
840         calls inside the AM_INIT_AUTOMAKE macro.
841         * m4/auxdir.m4, m4/cond.m4, m4/lex.m4, m4/regex.m4: Move
842         AC_PREREQ calls inside the macros.
843         * m4/header.m4: Remove AC_PREREQ.
845         * automake.in (file_contents_internal): Do not add newlines before
846         empty actions.
848         * aclocal.in (write_aclocal): Take an output file and list of
849         used macros in arguments and make up the file contents here.
850         (trace_used_macros): New function.
851         (add_file): Do not update $output.
852         ($output): Delete.
853         (MAIN): Call trace_used_macros.  Then rewrite aclocal.m4 only
854         for these traced macros.  This should shorten aclocal.m4 by
855         stripping out unused macros.
856         * automake.texi (Invoking aclocal): Document ${AUTOM4TE}.
857         * tests/aclibobj.test: Make sure configure.in exists by the time
858         aclocal runs.
859         * tests/aclocal8.test: New file.
860         * tests/Makefile.am (TESTS): Add aclocal8.test.
861         Suggested by Bruno Haible and Akim Demaille.
863 2003-08-21  Akim Demaille  <akim@epita.fr>
865         * lib/Automake/Configure_ac.pm (&find_configure_ac)
866         (&require_configure_ac): Accept an optional directory argument.
867         ($configure_ac): Remove.
868         * aclocal.in, automake.in ($configure_ac): New.
869         * lib/Automake/Variable.pm: Don't use $configure_ac, just
870         configure.ac.
872 2003-08-20  Akim Demaille  <akim@epita.fr>
874         * lib/Automake/FileUtils.pm: More perldoc.
875         (&up_to_date_p): New.
877 2003-08-17  Alexandre Duret-Lutz  <adl@gnu.org>
879         Fix for PR automake/398:
880         * m4/python.m4: Do not call AC_PATH_PROGS if $PYTHON is already
881         set.  Display `none' instead of `:' and $PYTHON is set to `:'
882         when no suitable interpreter is found.  Honor ACTION-IF-FOUND and
883         ACTION-IF-NOT-FOUND.
884         * automake.texi (Python): Document ACTION-IF-FOUND and
885         ACTION-IF-NOT-FOUND.
886         * tests/python4.test, tests/python5.test, tests/python6.test,
887         tests/python7.test, tests/python8.test, tests/python9.test: New
888         files.
889         * tests/Makefile.am (TESTS): Add them.
890         Report from Per Cederqvist.
892 2003-08-13  Alexandre Duret-Lutz  <adl@gnu.org>
894         Fix for PR automake/399:
895         * m4/python.m4: Use AC_PATH_PROGS, not AC_PATH_PROG.
896         Report from Per Cederqvist.
898 2003-08-12  Raja R Harinath  <harinath@acm.org>
900         * lib/Automake/Condition.pm (strip): Replace loop with 'grep'.
901         (not): Replace loop with 'map'.
902         * lib/Automake/DisjConditions.pm (sub_conditions): Likewise.
903         * lib/Automake/Item.pm (not_alwasy_defined_in_cond):
904         Don't 'simplify' result of 'invert', since it's already in
905         canonical form.
906         * lib/Automake/Rule.pm (define): Replace loop with
907         'not_always_defined_in_cond'.
909         * lib/Automake/DisjConditions.pm (ambiguous_p): Typo in comment.
910         * lib/Automake/Rule.pm (accept_extensions, msg_cond_rule): Likewise.
911         (define): Reword comment slightly.
912         * Variable.pm (_var_order, msg_cond_var): Typo in comment.
913         * tests/cond20.test (var2): Use foo.c instead of foo.cc to avoid
914         spurious automake error exit.
916 2003-08-12  Alexandre Duret-Lutz  <adl@gnu.org>
918         * lib/Automake/Item.pm, lib/Automake/ItemDef.pm: New files.
919         * lib/Automake/Rule.pm, lib/Automake/RuleDef.pm: New files.
920         * lib/Automake/Makefile.am (dist_perllib_DATA): Add them.
921         * lib/Automake/VarDef.pm: Make this a subclass of Automake::ItemDef.
922         (new): Adjust to call Automake::ItemDef::new.
923         (comment, location, owner): Delete.  Now inherited from ItemDef.
924         * lib/Automake/Variable.pm: Make this a subclass of Automake::Item.
925         (_new): Adjust to call Automake::Item::new.
926         (name, def, rdef, _set, conditions, not_always_defined_in_cond):
927         Delete.  How inherited from Item, where `_set' is called `set'.
928         * automake.in (SUFFIX_RULE_PATTERN): Delete. Now in Automake::Rule.
929         (suffix_rules_default): Delete.  Now
930         Automake::Rule::_suffix_rules_default
931         (suffixes): Delete.  Now Automake::Rule::suffixes.
932         (TARGET_AUTOMAKE, TARGET_USER): Delete.  Now
933         Automake::RuleDef::RULE_AUTOMAKE and Automake::RuleDef::RULE_USER.
934         (%targets, %target_source, %target_name, %target_owner): Delete,
935         replaced by the Rule and RuleDef classes.
936         (dependencies, depend, actions): Delete.  Now in Automake::Rule.
937         (suffix_rules, register_suffix_rule): Likewise.
938         (KNOWN_EXTENSIONS_PATTERN, accept_extensions): Likewise.
939         (known_extensions_list): Delete.  Now
940         Automake::Rule::_known_extensions_list.
941         (target_conditions): Delete.  Now inherited by Automake::Rule
942         from Automake::Item::conditions.
943         (rule_define): Delete.  Now Automake::Rule::define.  Adjust all
944         callers.
945         (target_defined): Delete.  Now Automake::Rule::rule.  Adjust all
946         callers.
947         (initialize_per_input): Adjust to call Automake::Rule::reset.
948         (err_target, err_cond_target, msg_cond_target, msg_target,
949         reject_target): Delete.  Now defined in Automake::Rule as
950         err_rule, err_cond_rule, msg_cond_rule, msg_rule and reject_target.
951         Adjust all callers.
952         (handle_languages): Call suffix_rules_count.
953         * tests/location.test: Adjust expected diagnostics.  We now display
954         $(EXEEXT) accurately.
956 2003-08-10  Alexandre Duret-Lutz  <adl@gnu.org>
958         Revert the fix for PR automake/291:
959         * lib/Automake/Variable.pm (define): Do not warn about variables
960         starting with `_' which are an issue on NEWS-OS 4.2R.  According
961         to Paul Eggert, NEWS-OS 4.2R is ten years old, the latest version
962         was released on 1996 and is not in wide use.  On the other hand,
963         variables starting with `_' are mandatory in several situations,
964         so diagnosing them is more annoying than useful.
965         * tests/canon5.test: Do not use -Wno-portability.
966         * tests/vars2.test: Delete.
967         * tests/Makefile.am (TESTS): Remove vars2.test.
968         Suggested by Jim Meyering.
970 2003-08-09  Raja R Harinath  <harinath@acm.org>
972         * lib/Automake/DisjConditions.pm (ambiguous_p): Simplify slightly.
973         * lib/Automake/tests/DisjConditions.pl (test_ambig): Test
974         Automake::Disjunctions::ambiguous_p.
976 2003-08-07  Alexandre Duret-Lutz  <adl@gnu.org>
978         * lib/Automake/Variable.pm (condition_ambiguous_p): Move ...
979         * lib/Automake/DisjConditions.pm (ambiguous_p): ... here.
980         * automake.in (rule_define): Adjust usage.
981         * lib/Automake/Variable.pm (_check_ambiguous_condition): Likewise.
983         * lib/Automake/Options.pm: New file.
984         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Options.pm.
985         * automake.in (FOREIGN, GNU, GNITS, $default_strictness)
986         ($default_strictness_name, $strictness, $strictness_name)
987         (%options, %global_options, process_option_list)
988         (set_strictness): Remove, now in Options.pm.
989         (initialize_per_input): Call Automake::Options::reset.
990         (handle_options, get_object_extension, get_object_extension)
991         (handle_languages, handle_single_transform_list, handle_compile)
992         (handle_texinfo_helper, handle_man_pages, handle_dist)
993         (handle_configure, do_check_merge_target)
994         (handle_factored_dependencies, handle_tests)
995         (handle_minor_options, scan_autoconf_traces, check_cygnus)
996         (lang_sub_obj, lang_c_rewrite, lang_c_finish, rule_define)
997         (make_paragraphs, am_install_var, parse_arguments): Adjust
998         to set and read options via the new interface.
1000 2003-08-07  Raja R Harinath  <harinath@acm.org>
1002         * Makefile.am (maintainer-check): Update perllibdir.
1003         * lib/Automake/Makefile.am (Config.pm): Depend on Makefile too.
1004         (EXTRA_DIST): Add Config.in.
1005         * Makefile.in, lib/Automake/Makefile.in: Regenerate.
1006         * tests/defs.in (AUTOMAKE, ACLOCAL): Use absolute paths in
1007         $perllibdir.
1009 2003-08-06  Raja R Harinath  <harinath@acm.org>
1011         * configure.in (AUTOMAKE, ACLOCAL): Search the 'lib' directory
1012         from the builddir too, to pick up Automake::Config.
1013         * tests/defs.in (AUTOMAKE, ACLOCAL): Likewise.
1014         * configure: Regenerate.
1015         * automake.in (BEGIN): Handle multiple directories in $perllibdir.
1016         * aclocal.in (BEGIN): Likewise.
1018 2003-08-07  Alexandre Duret-Lutz  <adl@gnu.org>
1020         * tests/ltcond.test: Thinko.
1022 2003-08-06  Alexandre Duret-Lutz  <adl@gnu.org>
1024         * lib/Automake/Config.in: New file.
1025         * lib/Automake/Makefile.am (nodist_perllib_DATA, do_subst,
1026         CLEANFILES): New variables.
1027         (Config.pm): New rule.
1028         * Makefile.am (maintainer-check): Adjust expected differences
1029         between automake.in and automake.
1030         * aclocal.in, automake.in: Use Automake::Config.
1032 2003-08-05  Alexandre Duret-Lutz  <adl@gnu.org>
1034         * tests/ltconv.test: s/rm/rm -f/ to placate maintainer-check.
1036         * automake.in (handle_texinfo_helper): Use the user definition
1037         of TEXINFO_TEX before checking for cygnus or AC_CONFIG_AUX_DIR.
1038         * tests/txinfo22.test: New file.
1039         * tests/Makefile.am (TESTS): Add txinfo22.test.
1040         Report from Tom Tromey.
1042 2003-08-03  Raja R Harinath  <harinath@acm.org>
1044         * lib/Automake/Variable.pm (@EXPORT): Remove
1045         traverse_variable_recursively and
1046         require_variables_for_variable.
1047         (require_variables_for_variable, traverse_variable_recursively)
1048         (_traverse_variable_recursively_worker): Convert to
1049         Automake::Variable methods, remove support for being
1050         invoked with variable names, and rename to ...
1051         (requires_variables, traverse_recursively)
1052         (_do_recursive_traversal): ... these.
1053         (_value_as_list_recursive_worker, transform_variable_recursively):
1054         Update to reflect changes.
1055         * automake.in (handle_LIBOBJS, handle_ALLOCA)
1056         (handle_libraries, handle_ltlibraries, am_primary_prefixes):
1057         Likewise.
1058         (define_objects_from_sources): Fix typo in comment.
1060 2003-08-02  Raja R Harinath  <harinath@acm.org>
1062         * automake.in (handle_source_transform): Replace 'grep' with 'map'.
1063         (register_language): Replace 'grep' with 'foreach' modifier.
1065 2003-08-01  Raja R Harinath  <harinath@acm.org>
1067         * lib/Automake/Variables.pm (variables): Return a list of
1068         Automake::Variable instances, not a list of strings.
1069         (dump): Remove support for being invoked with a string.
1070         (variables_dump): Adapt to these changes.
1071         * automake.in (check_typos): Likewise.
1072         (am_primary_prefixes): Likewise.
1074 2003-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
1076         * lib/depcomp (aix): Support AIX Compiler version 6.
1078 2003-07-31  Alexandre Duret-Lutz  <adl@gnu.org>
1080         * automake.texi (A Shared Library): Rewrite and split into
1081         subsections.  Valuable comments from Norman Gray, Harlan Stenn,
1082         Tim Van Holder, and Guido Draheim.
1083         * tests/ltcond.test, tests/ltcond2.test, tests/ltconv.test: New files.
1084         * tests/Makefile.am (TESTS): Add them.
1086 2003-07-30  Alexandre Duret-Lutz  <adl@gnu.org>
1088         * automake.in (handle_single_transform_list): Complain about
1089         foo.$(OBJEXT) being created both with libtool and without, not
1090         about foo.lo.
1091         Report from Tim Van Holder.
1093 2003-07-29  Alexandre Duret-Lutz  <adl@gnu.org>
1095         * Makefile.am (FETCHFILES, fetch): Add config-ml.in and
1096         symlink-tree.
1097         * lib/config.sub, lib/config-ml.in, lib/texinfo.tex: New
1098         upstream versions.
1100 2003-07-28  Alexandre Duret-Lutz  <adl@gnu.org>
1102         * automake.in (handle_configure): Cosmetic change to avoid
1103         a maintainer-check complaint.
1105 2003-07-27  Alexandre Duret-Lutz  <adl@gnu.org>
1107         * lib/Automake/Variable.pm (@EXPORT): Remove variable_dump.
1108         (variable_dump): Replace by ...
1109         (dump): ... this method.
1110         (rdef, _check_ambiguous_condition): Adjust to use ->dump.
1111         (define, variables_dump): Adjust to use Automake::Variable::dump
1113         * lib/am/compile.am (mostlyclean-compile): Do not erase core dumps.
1114         * automake.texi (Built sources example): Adjust example.
1116 2003-07-26  Alexandre Duret-Lutz  <adl@gnu.org>
1118         * automake.in (get_object_extension, handle_languages)
1119         (handle_single_transform_list, handle_compile, handle_compile)
1120         (handle_texinfo_helper, handle_texinfo_helper, handle_man_pages)
1121         (handle_tests, handle_minor_options, check_gnu_standards)
1122         (lang_sub_obj, lang_c_rewrite, lang_c_finish, rule_define):
1123         Simplify "if (defined $options{'X'})" into "if ($options{'X'})".
1125         Complete changes from 2003-07-08.
1126         * automake.in ($cmdline_use_dependencies, $use_dependencies): Remove,
1127         replaced by $options{'no-dependencies'}.
1128         ($global_options): Remove.
1129         (%global_options): New variable.
1130         (initialize_per_input): Empty %options.
1131         (process_option_list): Take a location and %options ref argument,
1132         process no-dependencies as other options.
1133         (handle_options): Do not reparse the global options, just initialize
1134         %options from %global_options and fill it with local options.
1135         (handle_languages, handle_single_transform_list)
1136         (handle_configure, check_cygnus): Adjust usage of
1137         $options{'no-dependencies'}.
1138         (make_paragraphs): Adjust usage of $options{'cygnus'}.
1139         (parse_arguments): Set cygnus and no-dependencies in %global_options.
1140         (scan_autoconf_traces) <AM_INIT_AUTOMAKE>: Call process_option_list
1141         to fill %global_options.
1143 2003-07-25  Alexandre Duret-Lutz  <adl@gnu.org>
1145         * tests/remake4.test: Use `$MAKE distdir' instead of `$MAKE dist' to
1146         avoid the use of tar.
1148 2003-07-24  Alexandre Duret-Lutz  <adl@gnu.org>
1150         * tests/gnuwarn2.test: Typo.
1152         * tests/insthook.test: Use $MAKE, not make.
1154         Fix missing rebuilds during `make dist' with BSD make.
1155         * automake.in (generate_makefile): Do not push Makefile.in, and
1156         Makefile.am into DIST_COMMON here.
1157         * lib/am/configure.am (DIST_COMMON): Do it here, and use
1158         %MAKEFILE-AM% and %MAKEFILE-IN% so that items in DIST_COMMON
1159         actually match the targets.   Prefix `configure' with `$(srcdir)/'
1160         to match the target.
1161         * tests/remake4.test: New file.
1162         * tests/Makefile.am (TESTS): Add remake4.test.
1163         Report from Akim Demaille.
1165 2003-07-23  Alexandre Duret-Lutz  <adl@gnu.org>
1167         * automake.in (handle_multilib): Register all-multi.
1168         (file_contents_internal): Insert \n when concatenating actions
1169         from "factored" rules.
1170         * lib/config-ml.in: New file, from GCC, including a patch
1171         from Ralf Corsepius (see GCC's PR 11526).
1172         * lib/symlink-tree.in: New file, from GCC.
1173         * lib/Makefile.am (dist_script_DATA): Add config-ml.in and
1174         symlink-tree.
1175         * lib/am/clean.am (distclean-generic): Do not delete Makefile here...
1176         (distclean, maintainer-clean): ... do it here.
1177         * lib/am/depend.am (distclean-depend): Likewise, replace by
1178         (distclean, maintainer-clean): ... these.
1179         * lib/am/multilib.am (all-recursive, install-recursive,
1180         mostlyclean-recursive, clean-recursive, distclean-recursive,
1181         maintainer-clean-recursive): Remove these rules.
1182         (mostlyclean-am, clean-am, distclean-am, maintainer-clean-am): Replace
1183         by ...
1184         (mostlyclean, clean, distclean, maintainer-clean): ... these.
1185         (all-am): Remove, done in handle_multilib.
1186         (install-am): Replace by ...
1187         (install-exec-am): ... this.
1188         * tests/Makefile.am (TESTS): Add multlib.test.
1189         * tests/multlib.test: New file, based on a test case by
1190         Ralf Corsepius
1192 2003-07-23  Tom Tromey  <tromey@redhat.com>
1194         * lib/missing (autom4te): Typo.
1196 2003-07-16  Derek Price  <derek@ximbiot.com>
1198         * automake.in (scan_autoconf_traces): Handle AC_CONFIG_LINKS.
1199         (handle_configure): Handle adding AC_CONFIG_LINKS arguments to
1200         distclean targets (CONFIG_CLEAN_FILES makefile var).
1201         * NEWS: Note new handling of AC_CONFIG_LINKS.
1202         * automake.texi (Other things Automake recognizes): Ditto.
1203         * tests/Makefile.am (TESTS): Add new tests.
1204         * tests/conflnk.test: New test that links are cleaned on distclean.
1205         * tests/conflnk2.test: New test that source files for links are
1206         distributed.
1208 2003-07-15  Ralf Corsepius <corsepiu@faw.uni-ulm.de>  (tiny change)
1210         * automake.in (scan_autoconf_traces): Trace AM_ENABLE_MULTILIB to
1211         render $seen_multilib functional again.
1213 2003-07-10  Raja R Harinath  <harinath@cs.umn.edu>
1215         Avoid using refs as hash keys.
1216         * lib/Automake/Variable.pm ($_traversal): New.
1217         (reset): Reset $_traversal.
1218         (_new): New attribute 'scanned'.
1219         (%_vars_scanned): Remove.
1220         (traverse_variable_recursively)
1221         (traverse_variable_recursively_worker):
1222         Use $_traversal instead of %_vars_scanned to detect recursively
1223         defined variables.
1225         * lib/am/configure.am (am--refresh): Silence.
1227 2003-07-10  Alexandre Duret-Lutz  <adl@gnu.org>
1229         * lib/Automake/Variable.pm (define): Make clear the diagnostic
1230         about variable names starting with `_' is about *Make* variables.
1232         For Debian Bug #193907:
1233         * automake.texi (Clean): make maintainer-clean should still
1234         allow ./configure && make to run.
1236         * automake.texi (CVS): Typo.
1238 2003-07-09  Alexandre Duret-Lutz  <adl@gnu.org>
1240         * aclocal.in: Use Automake::FileUtils.
1241         (parse_arguments, scan_configure, scan_m4_files): Never call
1242         "die" to print an error message.  Use print and exit.
1243         * automake.in: Use Automake::FileUtils.
1244         * lib/Automake/General.pm ($debug, $help, $tmp, $verbose,
1245         $version, &debug, &getopt, &mktmpdir, &verbose): Remove.
1246         (END): Do not massage Perl's exit code.  Do not clean any temporary
1247         directory.
1248         (find_file, mtime, update_file, xsystem, contents): Move to ...
1249         * lib/Automake/FileUtils.pm: ... this new file.  Adjust to
1250         report errors using Channels.
1251         (handle_exec_errors, xqx): New functions, from Autoconf.
1252         * lib/Automake/Makefile.am (dist_perllib_DATA): Add FileUtils.pm.
1254         * lib/Automake/Variable.pm (_traverse_variable_recursively_worker):
1255         Return the empty list on recursively defined variable.  This
1256         supersedes my change of 2003-07-02.
1258 2003-07-08  Akim Demaille  <akim@epita.fr>
1260         * automake.in ($cygnus_mode): Replace with $options{'cygnus'}.
1261         Adjust all dependencies.
1262         (&depend): Move next to %dependencies and prototype.
1263         (&initialize_per_input): Initialize the 'cygnus' field of
1264         '%options' to spare the code from 'exists' or 'defined' when
1265         testing it.
1266         (&handle_configure, &do_check_merge_target, &check_cygnus): Prototype.
1267         (&parse_arguments): Rename '%options' and '%options_1st_pass' as
1268         '%cli_options' and '%cli_options_1st_pass' to avoid clashes and
1269         inconsistencies.
1271 2003-07-07  Alexandre Duret-Lutz  <adl@gnu.org>
1273         * automake.in (generate_makefile): Move near the end of the
1274         file, after the definition of all called functions, so that
1275         prototypes can be enforced.
1277 2003-07-06  Akim Demaille  <akim@epita.fr>
1279         * lib/am/subdirs.am (RECURSIVE_TARGETS): Move install-recursive,
1280         install-exec-recursive, install-data-recursive and
1281         uninstall-recursive addition to...
1282         * lib/am/texinfos.am: here.
1283         * lib/am/texinfos.am, lib/am/subdirs.am: Remove the .PHONY
1284         declaration of RECURSIVE_TARGETS.
1286 2003-07-06  Akim Demaille  <akim@epita.fr>
1288         * lib/Automake/Variable.pm, lib/Automake/VarDef.pm (VAR_SORTED):
1289         New variable type.
1290         Handle it.
1291         * automake.in (&handle_subdirs): Prototype.
1292         Adjust callers.
1293         Make RECURSIVE_TARGETS a VAR_SORTED.
1295 2003-07-06  Akim Demaille  <akim@epita.fr>
1297         * automake.in (&define_files_variable): New.
1298         (&handle_texinfo_helper): Move the handling of user variables from
1299         here, to...
1300         (&handle_texinfo): here.
1301         This is to balance the size of these functions, and to match the
1302         convention of other _helper functions.
1303         (&handle_texinfo_helper): Use &define_files_variable.
1304         Move some code to use less variables.
1305         Rename $info_cursor as $texi.
1306         (&handle_texinfo): Do not call handle_texinfo_helper if there are
1307         no TEXINFOS.
1308         * lib/am/texinfos.am: Sort the occurrences of dvi, info, pdf, ps
1309         and html.
1310         Remove *-recursive targets from .PHONY, they are part of
1311         $(RECURSIVE_TARGETS) anyway.
1312         (install-info, mostlyclean-aminfo): Are .PHONY.
1314 2003-07-05  Akim Demaille  <akim@epita.fr>
1316         * lib/am/distdir.am: Use ';' as a terminator, not a separator, for
1317         sed complex commands, as required by NetBSD sed.
1318         Reported by Patrick Welche.
1320 2003-07-05  Alexandre Duret-Lutz  <adl@gnu.org>
1322         * lib/config.guess, lib/config.sub: New upstream version.
1324 2003-07-04  Alexandre Duret-Lutz  <adl@gnu.org>
1326         * automake.texi (Optional, Dist): AC_CONFIG_AUX_DIR files
1327         are automatically distributed.
1329         * lib/depcomp (icc): Update to grok ICC 7.1's output.
1330         * m4/depend.m4 (_AM_DEPENDENCIES): Check dependency generation
1331         in a subdirectory, and with many dependencies.  This
1332         catches more failures of depcomp.
1333         Reports from Ralf Wildenhues and Akim Demaille.
1335 2003-07-04  Akim Demaille  <akim@epita.fr>
1337         * automake.in (&scan_texinfo_file, &output_texinfo_build_rules,
1338         (&handle_texinfo_helper, &handle_texinfo): Formatting changes.
1339         Prototype properly.
1340         Don't use & when calling functions.
1342 2003-07-03  Alexandre Duret-Lutz  <adl@gnu.org>
1344         * NEWS: Categorize entries.
1345         Suggested by Jim Meyering.
1347         * Makefile.am (maintainer-clean): Disallow '$AUTOMAKE && exit 1'.
1348         Ignore @...@ substitutions in comments.
1349         * tests/defs.in: Try to make the shell more POSIX compliant.
1350         (AUTOMAKE_run, AUTOMAKE_fails): New functions.
1351         * tests/README: Mention AUTOMAKE_fails.
1352         * tests/alloca.test, tests/alloca2.test, tests/ansi8.test,
1353         * tests/asm.test, tests/backsl3.test, tests/backsl4.test,
1354         * tests/badline.test, tests/badopt.test, tests/canon.test,
1355         * tests/canon5.test, tests/colneq.test, tests/comment3.test,
1356         * tests/comment5.test, tests/cond2.test, tests/cond20.test,
1357         * tests/cond23.test, tests/cond24.test, tests/cond27.test,
1358         * tests/condinc2.test, tests/conff2.test, tests/cxx2.test,
1359         * tests/dejagnu2.test, tests/dirforbid.test,
1360         * tests/distcom3.test, tests/else.test, tests/exdir2.test,
1361         * tests/exeext2.test, tests/gcj2.test, tests/gcj5.test,
1362         * tests/getopt.test, tests/gettext.test, tests/gettext2.test,
1363         * tests/gnits.test, tests/gnuwarn.test, tests/gnuwarn2.test,
1364         * tests/insh.test, tests/lex2.test, tests/libobj10.test,
1365         * tests/libobj12.test, tests/libobj13.test,
1366         * tests/libobj3.test, tests/library2.test,
1367         * tests/library3.test, tests/libtool4.test,
1368         * tests/libtool6.test, tests/lisp2.test, tests/location.test,
1369         * tests/nogzip2.test, tests/output5.test, tests/overrid.test,
1370         * tests/percent.test, tests/percent2.test,
1371         * tests/pluseq5.test, tests/pluseq7.test, tests/pluseq9.test,
1372         * tests/pr211.test, tests/primary.test, tests/primary2.test,
1373         * tests/python2.test, tests/recurs.test, tests/reqd2.test,
1374         * tests/seenc.test, tests/specflg.test, tests/specflg2.test,
1375         * tests/spell.test, tests/spell2.test, tests/srcsub.test,
1376         * tests/srcsub2.test, tests/stdlib.test, tests/subdir7.test,
1377         * tests/substtarg.test, tests/suffix11.test,
1378         * tests/symlink.test, tests/syntax.test,
1379         * tests/targetclash.test, tests/txinfo4.test,
1380         * tests/version3.test, tests/warnopts.test,
1381         * tests/xsource.test, tests/yacc2.test: Use set -e,
1382         AUTOMAKE_fails, and always grep error message.
1384         * automake.in (handle_ltlibraries): Fix call to msg.
1386         * tests/stamph.test: Delete.
1387         * tests/Makefile.am (TESTS): Remove stamph.test.
1389         * automake.in (handle_single_transform_list): Use $var->name
1390         to print variable in the configure-substitution diagnostic.
1391         Do not mention the parent when it is the variable itself.
1393         * tests/package.test: Delete.
1394         * tests/Makefile.am (TESTS): Remove package.test.
1396         * automake.in (cond_stack_else): Return FALSE if `if' was not
1397         used.
1398         (cond_stack_endif): Return TRUE if `if' was not used.  Do not
1399         display $negate and $cond, they are irrelevant and maybe undefined.
1401 2003-07-02  Alexandre Duret-Lutz  <adl@gnu.org>
1403         * lib/Automake/Variable.pm (_traverse_variable_recursively_worker):
1404         Do not return undef when a variable is recursively defined, this
1405         causes warnings all over the place.  Return the empty string instead.
1407         * lib/am/distdir.am (distcheck): Protect loop of DIST_ARCHIVES
1408         from empty DIST_ARCHIVES.
1410 2003-07-01  Alexandre Duret-Lutz  <adl@gnu.org>
1412         * automake.in (scan_autoconf_traces): Check the expected
1413         number of arguments of each traced macro.
1414         * tests/overrid.test: Fix call to AM_CONDITIONAL.
1415         * tests/conff2.test: New files.
1416         * tests/Makefile.am (TESTS): Add conff2.test.
1417         Report from Paolo Bonzini.
1419 2003-06-30  Alexandre Duret-Lutz  <adl@gnu.org>
1421         * automake.in ($SUBST_REF_PATTERN): Do not define.
1422         (%gen_varname): Move to Variable.pm, as %_gen_varname.
1423         (initialize_per_input): Do not clean %gen_varname.
1424         (handle_options, check_libobjs_sources, handle_source_transform,
1425         handle_LIBOBJS, handle_ltlibraries, handle_texinfo_helper,
1426         handle_man_pages, handle_dist, handle_subdirs, handle_gettext,
1427         am_install_var): Adjust to use value_as_list_recursive,
1428         loc_and_value_as_list_recursive, and has_conditional_contents.
1429         (require_file_with_macro): Accept an Automake::Variable as argument.
1430         (traverse_variable_recursively,
1431         traverse_variable_recursively_worker, gen_varname,
1432         transform_variable_recursively): Move ...
1433         * lib/Automake/Variable.pm (traverse_variable_recursively,
1434         _traverse_variable_recursively_worker,
1435         _gen_varname, transform_variable_recursively): ... here.
1436         * automake.in (variable_conditionally_defined,
1437         variable_value_as_list_recursive_worker,
1438         variable_value_as_list_recursive
1439         variable_loc_and_value_as_list_recursive): Move ...
1440         * lib/Automake/Variable.pm (has_conditional_contents,
1441         _value_as_list_recursive_worker,
1442         value_as_list_recursive, loc_and_value_as_list_recursive): ... here.
1443         (reset): Reset %_gen_varname.
1444         (require_variables_for_variable): Accept an Automake::Variable
1445         as argument.
1447 2003-06-27  Alexandre Duret-Lutz  <adl@gnu.org>
1449         * tests/aclocal6.test: Test maintainer-clean in VPATH
1450         builds. (For Ralf's fix.)
1452 2003-06-27  Ralf Corsepius  <corsepiu@faw.uni-ulm.de>  (tiny change)
1454         * lib/am/configure.am (maintainer-clean): Remove
1455         $(top_srcdir)/autom4te.cache, not autom4te.cache.
1457 2003-06-27  Akim Demaille  <akim@epita.fr>
1459         * automake.texi: Use @node with a single argument.
1461 2003-06-27  Alexandre Duret-Lutz  <adl@gnu.org>
1463         * m4/Makefile.am (dist_m4data_DATA): Add $(top_srcdir)/m4/amversion.m4.
1465         * lib/am/distdir.am (distcheck): Run $(am__remove_distdir)
1466         at the end of distcheck.  This was mistakenly removed on
1467         2003-06-15.
1468         * tests/subpkg.test: Make sure distcheck cleans up after itself.
1470         * m4/Makefile.am ($(srcdir)/amversion.m4): Rename as ...
1471         ($(top_srcdir)/m4/amversion.m4): ... this.
1472         (DISTCLEANFILES): Remove.
1473         (nodist_m4data_DATA): Remove. amversion.m4 is automatically
1474         distributed.
1475         (EXTRA_DIST): Add amversion.in.
1477 2003-06-25  Akim Demaille  <akim@epita.fr>
1479         * automake.texi (Top): Use @copying and @insertcopying.
1480         Make Alexandre an author.
1481         * automake.in ($gen_copyright): Add the "(C)" to Copyright.
1482         * lib/depcomp: Likewise.
1484 2003-06-23  Alexandre Duret-Lutz  <adl@gnu.org>
1486         * lib/Automake/Variable.pm (vardef, rvardef, set_seen): New functions.
1487         (variable_defined, examine_variable): Remove.
1488         (%_ac_macro_for_var): Add an entry for ALLOCA.
1489         (require_variables): Use vardef instead of variable_defined.
1490         Do not use _cvar.
1491         * automake.in (generate_makefile): Do not push $(SOURCE) into
1492         @sources.  Use define_pretty_variable to define SOURCES.
1493         (handle_LIBOBJS, handle_ALLOCA): Use require_variables_for_variable
1494         to require LIBOBJS, LTLIBOBJS and ALLOCA.
1495         (handle_programs, handle_ltlibraries): Do not define an empty
1496         _DEPENDENCIES or _LDFLAGS variable when none is defined.
1497         (define_configure_variable): Do not check whether the variable
1498         already exists (it's Automake::Variable::define's job).
1499         (require_build_directory): Likewise, do not check
1500         the existence of am__dirstamp.
1501         (generate_makefile, handle_options, handle_languages)
1502         (check_libobjs_sources, handle_single_transform_list)
1503         (traverse_variable_recursively_worker, handle_source_transform)
1504         (handle_lib_objects, handle_LIBOBJS, handle_compile)
1505         (handle_libtool, handle_programs, handle_libraries)
1506         (handle_ltlibraries, check_typos, handle_texinfo_helper)
1507         (handle_man_pages, handle_tags, handle_dist, handle_subdirs)
1508         (scan_aclocal_m4, handle_gettext, handle_footer, handle_install)
1509         (handle_all, do_check_merge_target, handle_clean, lang_c_finish)
1510         (handle_tests, lang_yacc_target_hook, define_pretty_variable)
1511         (define_compiler_variable, define_linker_variable)
1512         (make_paragraphs, am_primary_prefixes, am_install_var): Adjust to
1513         call var, vardef, or set_seen, instead of variable_defined.  Use
1514         set_seen only for variables which are actually checked by
1515         check_typos.
1516         * tests/target.test: Delete.
1517         * tests/alloca.test, tests/alloca2.test: New files.
1518         * tests/libobj3.test: Check error message.
1519         * tests/distcom4.test: Make sure configure is in DIST_COMMON.
1520         This replace confdist.test.
1521         * tests/Makefile.am (TESTS, XFAIL_TESTS): Remove target.test.
1522         (TESTS): Add alloca.test and alloca2.test.  Remove confdist.test.
1524 2003-06-20  Alexandre Duret-Lutz  <adl@gnu.org>
1526         * automake.in (handle_dist): Delete DIST_COMMON before redefining
1527         it.  Bug report from Akim Demaille.
1528         (rewrite_inputs_into_dependencies): Make sure we always return
1529         something, even when $add_srcdir is 0.
1530         * tests/distcom4.test, tests/distcom5.test: New files.
1531         * tests/Makefile.am (TESTS): Add distcom4.test and distcom5.test.
1533         * tests/cond29.test: Also check for _SOURCES.
1534         Report from Paolo Bonzini.
1536 2003-06-20  Akim Demaille  <akim@epita.fr>
1538         * lib/am/configure.am: Replace leading spaces with a real tab.
1540 2003-06-15  Alexandre Duret-Lutz  <adl@gnu.org>
1542         * tests/nogzip.test, tests/nogzip2.test: New files.
1543         * tests/Makefile.am (TESTS): Add nogzip.test and nogzip2.test
1545 2003-06-15  Akim Demaille  <akim@epita.fr>
1547         * automake.in (&make_paragraphs): Define %GZIP%.
1548         (&process_option_list): Accept no-dist-gzip2.
1549         (&handle_dist): Complain when no archive format is enabled.
1550         * lib/am/distdir.am (DIST_ARCHIVES): New variable.
1551         (dist-gzip, dist-bzip2, dist-tarZ, dist-zip): No longer
1552         conditioned.
1553         (dist): Build $(distdir).tar.gz conditionally.
1554         (distcheck): Use DIST_ARCHIVES to find an archive to unpack, and
1555         to list built archives.  Run $(MAKE) dist instead of dist-gzip.
1556         * automake.texi (Options, The types of distributions): Adjust.
1558 2003-06-15  Jens Elkner  <elkner@imsgroup.de>  (tiny change)
1560         * m4/lispdir.m4 (AM_PATH_LISPDIR): Fix sed commands to work with
1561         POSIXLY_CORRECT=1.
1563 2003-06-14  Karl Berry  <karl@gnu.org>
1564             Alexandre Duret-Lutz  <adl@gnu.org>
1566         * mkinstalldirs (scriptversion): New variable.  Setup emacs hooks
1567         to update it each time the file is written, as in install-sh.
1568         (usage): Improve message.
1569         (--version): New option.
1570         (--help): Output to stdout, not stderr.
1572 2003-06-13  Paul Eggert  <eggert@twinsun.com>
1574         * lib/install-sh (dsttmp, rmtmp): Do not use '#' in file names;
1575         it's not guaranteed by POSIX and it doesn't work on OpenVMS.
1576         Bug reported by Bernard Giroud in:
1577         http://mail.gnu.org/archive/html/autoconf-patches/2003-06/msg00013.html
1579 2003-06-05  Alexandre Duret-Lutz  <adl@gnu.org>
1581         * automake.in (check_gnu_standards): Use no-installman and
1582         no-installinfo's locations.
1583         (process_option_list): Fill %options with locations.
1584         (check_cygnus) Fill $options{'no-installinfo'} and
1585         $options{'no-dependencies'} with $cygnus_mode, so that it
1586         remains a Location.
1587         * tests/gnuwarn2.test: New file.
1588         * tests/Makefile.am (TESTS): Add gnuwarn2.test.
1590 2003-06-04  Alexandre Duret-Lutz  <adl@gnu.org>
1592         * automake.in (process_option_list): Record the location
1593         of ansi2knr's definition.
1594         (handle_compile): Use it.
1595         * tests/ansi3.test: Make sure the location appears correctly.
1596         Update to use set -e.
1597         * tests/ansi3b.test: New file.
1598         * tests/Makefile.am (TESTS): Add ansi3b.test.
1600         * tests/alpha.test: Really run $MAKE.  Augment to test
1601         subdirectories, and check-news report.
1602         * tests/alpha2.test: New file.  Bug report from Akim Demaille.
1603         * tests/gnits2.test: Make sure README-alpha is not distributed.
1604         * tests/Makefile.am (TESTS): Add alpha2.test.
1605         * automake.in (handle_minor_options): Distribute README-alpha
1606         using push_dist_common, not require_file_with_macro.
1608 2003-06-03  Alexandre Duret-Lutz  <adl@gnu.org>
1610         * lib/Automake/Configure_ac.pm
1611         (search_configure_ac, find_configure_ac): Rename as ...
1612         (find_configure_ac, require_configure_ac): ... these.
1613         * aclocal.in (scan_configure): Adjust call to require_configure_ac.
1614         * automake.in (scan_autoconf_files): Likewise.
1615         Suggested by Tim Van Holder.
1617         * alocal.in: Use Automake::Configure_ac.
1618         ($configure_ac): Delete.
1619         (scan_configure): Adjust use of find_configure_ac;
1620         * automake.in: Use Automake::Configure_ac.
1621         ($configure_ac): Delete.
1622         (scan_autoconf_files): Adjust use of find_configure_ac;
1623         * lib/Automake/Configure_ac.pm: New file.
1624         * lib/Automake/General.pm (find_configure_ac): Delete.  Now
1625         replaced by Automake::Configure_ac::search_configure_ac.
1626         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Configure_ac.pm.
1627         * lib/Automake/Variable.pm: Use Automake::Configure_ac.
1628         (require_variables): Adjust use of $configure_ac.
1630 2003-06-02  Akim Demaille  <akim@epita.fr>
1632         * lib/am/texi-vers.am, lib/am/subdirs.am, lib/am/scripts.am,
1633         * lib/am/remake-hdr.am, lib/am/python.am, lib/am/progs.am,
1634         * lib/am/program.am, lib/am/multilib.am, lib/am/mans.am,
1635         * lib/am/mans-vars.am, lib/am/ltlibrary.am, lib/am/ltlib.am,
1636         * lib/am/lisp.am, lib/am/libtool.am, lib/am/library.am,
1637         * lib/am/lang-compile.am, lib/am/java.am, lib/am/header.am,
1638         * lib/am/header-vars.am, lib/am/footer.am, lib/am/depend.am,
1639         * lib/am/dejagnu.am, lib/am/data.am, lib/am/compile.am,
1640         * lib/am/clean.am, lib/am/clean-hdr.am, lib/am/check.am,
1641         * lib/am/ansi2knr.am, lib/am/Makefile.am, lib/Makefile.am,
1642         * m4/strip.m4, m4/sanity.m4, m4/runlog.m4, m4/regex.m4,
1643         * m4/python.m4, m4/protos.m4, m4/options.m4, m4/obsolete.m4,
1644         * m4/obsol-lt.m4, m4/obsol-gt.m4, m4/multi.m4, m4/missing.m4,
1645         * m4/minuso.m4, m4/maintainer.m4, m4/lispdir.m4, m4/lex.m4,
1646         * m4/install-sh.m4, m4/header.m4, m4/gcj.m4, m4/dmalloc.m4,
1647         * m4/depout.m4, m4/cond.m4, m4/ccstdc.m4, m4/auxdir.m4, m4/as.m4,
1648         * m4/Makefile.am: White space changes and Copyright updates.
1650 2003-05-29  Alexandre Duret-Lutz  <adl@gnu.org>
1652         * lib/Automake/Variable.pm (check_defined_unconditionally): Add
1653         the $parent_cond argument.
1654         (output): Use $self->name in diagnostic not $self.
1655         (variable_value_as_list): Rename as ...
1656         (value_as_list): ... this.  Declare as a method.  Take a $parent_cond
1657         argument and pass it to check_defined_unconditionally.  Do not call
1658         variable_assert, now that this is a method.
1659         (variable_assert): Delete (unused).
1660         * automake.in (traverse_variable_recursively_worker): Adjust to
1661         use check_defined_unconditionally and value_as_list as a methods.
1663         * lib/Automake/Variable.pm (output): Declare as a method, since it
1664         is only used this way.
1665         (define): Fix documentation of $cond.
1666         Suggested by Raja R. Harinath.
1668 2003-05-25  Alexandre Duret-Lutz  <adl@gnu.org>
1670         * lib/Automake/Variable.pm, lib/Automake/VarDef.pm: New files.
1671         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Variable.pm
1672         and VarDef.pm.
1673         * automake.in: Use Automake::Variable and Automake::VarDef.
1674         (MACRO_PATTERN): Delete. Now Automake::Variable::_MACRO_PATTERN.
1675         (am_macro_for_var): Delete. Now Automake::Variable::_am_macro_for_var.
1676         (ac_macro_for_var): Delete. Now Automake::Variable::_ac_macro_for_var.
1677         (silent_variable_override): Delete.  Now
1678         Automake::Variable::_silent_variable_override.
1679         (var_value, var_location, var_comment, var_type, var_owner,
1680         var_pretty, content_seen): Delete.  This functionality is now
1681         offered by Automake::Variable and Automake::VarDef.
1682         (VAR_AUTOMAKE, VAR_CONFIGURE, VAR_MAKEFILE, VAR_ASIS, VAR_PRETTY):
1683         Delete.  Now defined in Automake::VarDef.
1684         (var_order): Delete.  Now Automake::Variable::_var_order.
1685         (appendvar): Delete.  Now Automake::Variable::_appendvar.
1686         (var_SUFFIX_trigger): Register using Automake::Variable::hook.
1687         (initialize_per_input): Call Automake::Variable::reset.
1688         (err_var, msg_cond_var, msg_var, reject_var): Delete.  Now
1689         defined in Automake::Variable.
1690         (generate_makefile, process_option_list, handle_languages)
1691         (traverse_variable_recursively_worker)
1692         (transform_variable_recursively, handle_compile)
1693         (handle_libraries, handle_ltlibraries)
1694         (check_typos, handle_dist, handle_subdirs, scan_autoconf_files):
1695         Adjust to use Automake::Variable functions.
1696         (check_ambiguous_condition): Delete.  Now
1697         Automake::Variable::_check_ambiguous_condition.
1698         (condition_ambiguous_p): Delete.  Now
1699         Automake::Variable::condition_ambiguous_p.
1700         (variable_not_always_defined_in_cond): Delete.  Now
1701         Automake::Variable::not_always_defined_in_cond.
1702         (macro_define): Delete.  Now Automake::Variable::define.
1703         (macro_delete): Delete.  Now Automake::Variable::variable_delete.
1704         (macro_dump): Delete.  Now Automake::Variable::variable_dump.
1705         (macros_dump): Delete.  Now Automake::Variable::variables_dump.
1706         (variable_defined): Delete.  Now
1707         Automake::Variable::variable_defined, with the target check
1708         temporarily disabled.
1709         (variable_assert): Delete.  Now Automake::Variable::variable_assert.
1710         (examine_variable): Delete.  Now
1711         Automake::Variable::examine_variable.
1712         (variable_conditions): Delete.  Now Automake::Variable::conditions.
1713         (scan_variable_expansions): Delete.  Now
1714         Automake::Variable::scan_variable_expansions.
1715         (check_variable_expansions): Delete.  Now
1716         Automake::Variable::check_variable_expansions.
1717         (check_variable_defined_unconditionally): Delete.  Now
1718         Automake::Variable::check_defined_unconditionally.
1719         (variable_value): Delete.  Now Automake::Variable::variable_value.
1720         (variable_value_as_list): Delete.  Now
1721         Automake::Variable::variable_value_as_list.
1722         (variable_value_as_list_recursive_worker): Adjust to use
1723         Automake::Variable functions.
1724         (variable_output): Delete.  Now Automake::Variable::output.
1725         (define_pretty_variable, define_configure_variable, read_am_file)
1726         (define_standard_variables, read_main_am_file): Adjust to use
1727         Automake::Variable functions.
1728         (handle_variables): Delete.  Now Automake::Variable::output_variables.
1729         (file_contents_internal, am_primary_prefixes, am_install_var)
1730         (require_file_with_macro, require_conf_file_with_macro)
1731         (push_dist_common): : Adjust to use
1732         Automake::Variable functions.
1733         (require_variables): Delete.  Now
1734         Automake::Variable::require_variables.
1735         (require_variables_for_macro): Delete.  Now
1736         Automake::Variable::require_variables_for_variable.
1737         * tests/Makefile.am (XFAIL_TESTS): Add target.test.
1739 2003-05-25  Christian Cornelssen  <ccorn@cs.tu-berlin.de>  (tiny change)
1741         * tests/dejagnu7.test: Check if runtest supports --status.
1743 2003-05-23  Alexandre Duret-Lutz  <adl@gnu.org>
1745         * lib/Automake/Location.pm (dump): Output 'INTERNAL' when position
1746         is undefined.
1748         * lib/Automake/DisjConditions.pm (human): Fix infinite loop when
1749         $self contains only one Condition.
1751         * automake.in: Use plain strict, including refs.
1752         (macro_define, handle_single_transform_list): Use \&{'name'} to
1753         build references to named subroutines.
1755 2003-05-22  Karl Berry  <karl@gnu.org>
1757         * automake.texi: Update @dircategory to match the Free Software
1758         Directory.  End directory entries with dots.
1760 2003-05-22  Alexandre Duret-Lutz  <adl@gnu.org>
1762         * automake.texi (maintainer-mode): s/François/Fran@,{c}ois/.
1764         * lib/elisp-comp: s/François/Franc,ois/.
1765         Suggested by Paul Eggert.
1767         * automake.in: Move the "main" code at the end.
1768         (parse_arguments): Move near the end.
1769         ($KNOWN_EXTENSIONS_PATTERN, @known_extensions_list,
1770         accept_extensions, var_SUFFIXES_trigger): Move these definitions
1771         before any call to register_language.
1772         (am_file): Move the definition with all other global variables,
1773         do not use local to define it.
1774         * Makefile.am (maintainer-check): Expect no `local' in Automake.
1776 2003-05-21  Alexandre Duret-Lutz  <adl@gnu.org>
1778         * lib/Automake/Wrap.pm, lib/Automake/tests/Wrap.pl: New files.
1779         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Wrap.pm.
1780         * lib/Automake/tests/Makefile.am (TESTS): Add Wrap.pl.
1781         * automake.in (handle_texinfo_helper, pretty_print_rule)
1782         (variable_output): Adjust to use makefile_wrap instead of
1783         pretty_print_internal.
1784         (pretty_print_internal): Remove.  Renamed as Automake::Wrap::wrap
1785         and augmented to accept the $eol and $max_len arguments.
1787 2003-05-18  Alexandre Duret-Lutz  <adl@gnu.org>
1789         * lib/Autom4te/XFile.pm, lib/config.guess, lib/config.sub,
1790         lib/texinfo.tex: New upstream versions.
1792 2003-05-17  Alexandre Duret-Lutz  <adl@gnu.org>
1794         * lib/am/install.am (install, install-exec, install-data, uninstall):
1795         Declare conditionally using a if/else/endif block instead of
1796         using ?SUBDIRS?-style conditions.  The latter fail when
1797         %maybe_BUILT_SOURCES% is replaced by several lines.
1798         This fixes a bug introduced on 2003-04-06.
1799         * tests/bsource.test: New file.
1800         * tests/Makefile.am (TESTS): Add bsource.test.
1801         Reported by Bruno Haible.
1803 2003-05-11  Alexandre Duret-Lutz  <adl@gnu.org>
1805         * automake.texi (renamed objects): New node.
1806         (Program and Library Variables): Move maude_DEPENDENCIES closer
1807         to maude_LDADD.  Define and use `per-target compilation flags' in the
1808         explanation for maude_CFLAGS et al.  Link to the `renamed objects'
1809         node.  Illustrate maude_SHORTNAME.
1811 2003-05-09  Alexandre Duret-Lutz  <adl@gnu.org>
1813         * lib/install-sh: Update copyright notice and license to that of
1814         X11R6.  This removes an advertising clause reported as Debian bug
1815         #191717.
1817 2003-05-07  Alexandre Duret-Lutz  <adl@gnu.org>
1819         * configure.in (ACLOCAL): Do not use -I, --acdir is enough.
1821         * m4/make.m4: Rename the doit target as am__doit,
1822         and make it phony.
1823         Reported by Philip S Tellis.
1825 2003-05-07  Alexandre Duret-Lutz  <adl@gnu.org>
1827         * lib/am/configure.am (%MAKEFILE-IN%): Propagate automake's exit
1828         status.
1829         * tests/makej.test: New file (test Autom4te's cache locking,
1830         new in CVS Autoconf).
1831         * tests/Makefile.am (TESTS): Add makej.test.
1833 2003-05-06  Alexandre Duret-Lutz  <adl@gnu.org>
1835         * lib/Automake/General.pm (contents): New function.
1836         * aclocal.in (greatest_mtime, force_output): New globals.
1837         (scan_configure, add_file): Update $greatest_mtime.
1838         (parse_arguments): Parse --force.
1839         (write_aclocal): Do not overwrite $output_file unless needed.
1840         * automake.texi (aclocal options): Document --force.
1841         * tests/aclocal7.test: New file.
1842         * tests/Makefile.am (TESTS): Add aclocal7.test.
1844 2003-05-05  Alexandre Duret-Lutz  <adl@gnu.org>
1846         * automake.texi (Optional): Document m4_include.
1847         (Invoking aclocal): Shake a bit to introduce the various uses
1848         of aclocal and explain that aclocal will use m4_include for
1849         local files.
1850         (Extending aclocal): Show how to install installable macros
1851         in $(datadir)/aclocal, and make it clearer that writing installable
1852         macros is not the only way to extend aclocal.
1853         (Local Macros, Future of aclocal): New sections.
1855 2003-04-27  Alexandre Duret-Lutz  <adl@gnu.org>
1857         * automake.in (@common_files): Remove acinclude.m4 since
1858         it will be m4_included by aclocal.m4 and files are always
1859         distributed.
1860         (scan_aclocal_m4): Do not bother about acinclude.m4 anymore.
1861         We will get this dependency when tracing m4_includes.
1862         * tests/aclocal6.test: Make sure acinclude.m4 is distributed
1863         when used.
1864         * tests/acinclude.test: Delete.
1865         * tests/Makefile.am (TESTS): Remove acinclude.test.
1867 2003-04-25  Alexandre Duret-Lutz  <adl@gnu.org>
1869         * automake.in (handle_configure): Don't add @configure_deps to
1870         DIST_COMMON, we do this from lib/am/configure.am now.
1871         Define the am__configure_deps variable instead of substituing
1872         %CONFIGURE_DEPS%.
1873         * lib/am/configure.am (%MAKEFILE-IN%, $(top_srcdir)/configure,
1874         $(ACLOCAL_M4)): Use $(am__configure_deps) instead of %CONFIGURE_DEPS%.
1875         (DIST_COMMON): Add $(am__configure_deps).
1877         * tests/aclocal6.test: New file.
1878         * lib/am/configure.am (am--refresh): New rule.
1879         (%MAKEFILE-IN%, %MAKEFILE%, $(top_builddir)/config.status,
1880         $(top_srcdir)/configure): Call the top-level am--refresh from
1881         subdirectories.
1882         ($(ACLOCAL_M4)): Depend upon %CONFIGURE_DEPS%.  Call the
1883         top-level am--refresh when not in the top-level directory.
1884         Fix jump directories for VPATH builds.
1885         Suggested by Raja R. Harinath.
1887 2003-04-24  Alexandre Duret-Lutz  <adl@gnu.org>
1889         * automake.in (scan_aclocal_m4): Do not parse ACLOCAL_AMFLAGS
1890         and glob for m4_files (We've got all local m4 files while
1891         tracing m4_include's).  Diagnose ACLOCAL_M4_SOURCES as obsolete.
1892         Distribute aclocal.m4 only at the top-level.
1893         (my_glob): Remove.  This fixes PR automake/11.
1894         (handle_dist): Strip leading `./' from directories.
1895         * aclocal.in (add_file): Output 'm4_include([file.m4])' instead
1896         of copying local files.
1897         (write_aclocal, parse_arguments): Bump copyright date.
1898         * configure.in: De not build m4/amversion.m4 from here ...
1899         * m4/Makefile.am ($(srcdir)/amversion.m4): ... do this here.
1900         (nodist_m4data_DATA): Use $(srcdir)/amversion.m4 instead
1901         of amversion.m4.
1902         * tests/Makefile.am (XFAIL_TESTS): Remove aclocal5.test.
1903         (TESTS): Remove aclocal2.test.  Do not test aclocal.test twice.
1904         * tests/aclocal2.test: Delete (pointless).
1905         * tests/aclocal5.test: Make sure configure's dependencies are
1906         distributed.
1907         * tests/acinclude.test: Adjust to search for m4_include.
1908         * tests/dirlist.test, tests/dup3.test: Run $AUTOCONF and grep
1909         configure instead of aclocal.m4.
1911         For PR automake/46:
1912         * automake.in (scan_aclocal_m4): Work in all directories, not only
1913         the top-level.  Prepend $(top_srcdir) in front of each aclocal.m4
1914         dependency.
1915         * lib/am/configure.am (config.status, configure, $(ACLOCAL_M4)):
1916         Define rebuild rules in each directory.
1917         * tests/subdir8.test: Augment to exercise aclocal.m4's dependencies
1918         from the top-level directory.
1919         * tests/aclocal5.test: New file.  Exercise aclocal.m4's dependencies
1920         from a subdirectory.
1921         * tests/Makefile.am (TESTS): Add aclocal5.test.
1922         (XFAIL_TESTS): Replace subdir8.test by aclocal5.test.
1924 2003-04-24  Akim Demaille  <akim@epita.fr>
1925             Alexandre Duret-Lutz  <adl@gnu.org>
1927         For PR automake/46:
1928         * lib/am/configure.am (%MAKEFILE-IN%): If Makefile.in is rebuilt
1929         because of one of configure's dependencies, run automake without
1930         argument to update the whole tree at once.  Depend upon
1931         %CONFIGURE_DEPS%.
1932         (%MAKEFILE%): If Makefile is rebuilt because config.status has
1933         been updated, run config.status without arguments.
1934         * automake.in (scan_autoconf_traces): Prepend $(top_srcdir)
1935         before all files in @configure_deps.
1936         * tests/subdir5.test: Modernize configure.in, make sure
1937         maude/Makefile was actually created, and exercise %CONFIGURE_DEPS%.
1938         * tests/subdir8.test: New file.
1939         * tests/Makefile.am (TESTS): Add subdir8.test.
1940         (XFAIL_TESTS): Replace subdir5.test by subdir8.test.
1942 2003-04-23  Alexandre Duret-Lutz  <adl@gnu.org>
1944         * automake.texi (Requirements): Typo in index
1945         s/AC_CONFIG_FILE/AC_CONFIG_FILES/.
1947         * lib/texinfo.tex: New upstream version.
1949 2003-04-21  Jim Meyering  <jim@meyering.net>
1951         * lib/mkinstalldirs: Remove each sequence of spaces before a
1952         TAB character.
1953         * lib/depcomp: Search for TAB-SPC, not SPC-TAB.
1955 2003-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
1957         Fix for PR automake/389:
1958         * automake.in (handle_configure): Don't put $colon_infile in
1959         CONFIG-MAKEFILE.
1960         * tests/conff.test: New file.
1961         * tests/Makefile.am (TESTS): Add conff.test.
1962         Reported by Alexander Turbov.
1964 2003-04-18  Alexandre Duret-Lutz  <adl@gnu.org>
1966         * tests/defs.in: Handle required=etags to work around
1967         Exuberant Ctags.
1969         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
1970         versions.
1972         * tests/dejagnu3.test, tests/dejagnu4.test, tests/dejagnu5.test:
1973         Distribute dejagnu test cases, so that distcheck actually runs them.
1975 2003-04-18  Richard Dawe  <rich@phekda.freeserve.co.uk>
1977         * lib/am/dejagnu.am (site.exp): Don't define tool in site.exp,
1978         because we set that by invoking runtest with --tool.
1979         * tests/Makefile.am (TESTS): Add dejagnu4.test, dejagnu5.test,
1980         dejagnu6.test, dejagnu7.test.
1981         * tests/dejagnu4.test: New test.
1982         * tests/dejagnu5.test: New test.
1983         * tests/dejagnu6.test: New test.
1984         * tests/dejagnu7.test: New test.
1986         * tests/dejagnu3.test: Make sure the DejaGnu test is actually run.
1988 2003-04-18  Jim Meyering  <jim@meyering.net>
1990         * automake.in (variable_output): Fix typo in comment s/is/if/.
1992         * lib/am/yacc.am (?!GENERIC?%OBJ% aka .y.c): Don't redirect
1993         directly to $@.  Instead, redirect to $@t and rename upon success.
1994         Also, move the commands that update $@ so they are last.  Otherwise,
1995         this rule could leave the user with an up to date target (.c file)
1996         but with a missing or corrupted corresponding .h file.
1998 2003-04-17  Richard Dawe  <rich@phekda.freeserve.co.uk>
2000         * tests/defs.in: Handle required=runtest, to detect runtest
2001         from DejaGnu.
2002         * tests/Makefile.am (TESTS): Add dejagnu3.test.
2003         * tests/dejagnu3.test: New test.
2005 2003-04-16  Alexandre Duret-Lutz  <adl@gnu.org>
2007         * automake.in (rule_define): If the user tries to override
2008         an Automake which has a -local variant, suggest using the
2009         -local variant in the -Woverride diagnostic.
2010         (handle_factored_dependencies): Register factored
2011         rules with rule_define, and define them only in undefined
2012         conditions.
2013         * tests/Makefile.am (TESTS): Add override.test.
2014         * tests/overrid.test: New file.
2015         * tests/phony.test: Count the number of .PHONY targets.
2017 2003-04-15  Alexandre Duret-Lutz  <adl@gnu.org>
2019         * lib/am/distdir.am (distuninstallcheck, distcleancheck): Silence
2020         these rules, so that we don't confuse users by echoing
2021         "echo ERROR:" commands which are not run.
2023 2003-03-14  Richard Dawe  <rich@phekda.freeserve.co.uk>
2024             Alexandre Duret-Lutz  <adl@gnu.org>
2026         * automake.in (output_texinfo_build_rules, handle_texinfo_helper,
2027         initialize_per_input):  Add infrastructure for generating HTML
2028         documentation from texinfo source.
2029         * lib/am/texinfos.am: Add rules for building HTML documentation
2030         from texinfo source.
2031         * lib/am/texibuild.am: Likewise.
2032         * automake.texi (Texinfo): Document rules for building
2033         HTML documentation from texinfo source.
2034         * tests/txinfo21.test: New file.
2035         * tests/Makefile.am (TESTS): Add txinfo21.test.
2036         * tests/defs.in: Handle required=makeinfo-html.
2038 2003-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
2040         * automake.in (%silent_variable_override): New variable.
2041         (macro_define): Warn about variable definitions overriding
2042         Automake variables.
2043         (rule_define): Warn about target definitions overriding
2044         Automake variables.  Fix $condmsg definition.
2045         * automake.texi (Invoking Automake): Document the `override'
2046         category.
2047         * lib/Automake/ChannelDefs.pm (usage): Likewise.
2048         * lib/am/texinfos.am [!%?CYGNUS] (MAKEINFO): Do not define,
2049         this is already done in m4/init.m4.
2050         * tests/dejagnu2.test: Run $MAKE, don't only grep.  Use
2051         -Wno-override, and make sure we get a warning without.
2052         * tests/exeext2.test, tests/substtarg.test: Use -Wno-override,
2053         and make sure we get a warning without.
2054         * tests/exeext3.test, tests/java2.test, tests/nolink.test,
2055         tests/subpkg.test, tests/vartest.test: Use -Wno-override.
2056         * tests/txinfo13.test: Use installcheck-local instead of overriding
2057         installcheck.
2058         * tests/txinfo2.test: Run $MAKE on the real Makefile (this test
2059         used to succeed thanks to a failure...)
2060         * tests/location.test: Adjust expected messages.
2061         * tests/Makefile.am (XFAIL_TESTS): Add txinfo5.test.
2063 2003-04-12  Raja R Harinath  <harinath@acm.org>
2065         * lib/Automake/DisjConditions.pm (true): Don't cache answer.
2066         (invert): Update comment.
2067         (_simplify): Remove.
2068         (simplify): Implement using invert().
2069         * lib/Automake/tests/DisjConditions.pl (test_simplify):
2070         Update to reflect changes.
2072 2003-04-12  Alexandre Duret-Lutz  <adl@gnu.org>
2074         * automake.in (scan_autoconf_files): Augment the error message
2075         about AM_INIT_AUTOMAKE not found.
2076         Suggested by Bruno Haible.
2078         * lib/Automake/Version.pm: New file.
2079         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Version.pm.
2080         * lib/Automake/tests/Version.pl: New file.
2081         * lib/Automake/tests/Makefile.am (TESTS): Add Version.pl.
2082         * tests/Makefile.am (TESTS): Remove version5.test.
2083         * tests/version5.test: Delete.  Move the tests to Version.pl.
2084         * automake.in (version_split, version_compare, version_check): Move ...
2085         * lib/Automake/Version.pm (split, compare, check): ... here.
2087 2003-04-11  Alexandre Duret-Lutz  <adl@gnu.org>
2089         * lib/Automake/tests/Condition.pl (test_reduce_and)
2090         (test_reduce_or): Cosmetics.
2091         * lib/Automake/tests/DisjConditions.pl (test_sub_conditions):
2092         Fix a comment.
2093         * lib/Automake/DisjConditions.pm (sub_conditions): Add missing C<...>
2094         in comment.
2095         * tests/yacc8.test, configure.in: Update copyright year.
2097 2003-04-10  Richard Dawe  <rich@phekda.freeserve.co.uk>
2099         * configure.in: Get the build platform name.  Define
2100         MODIFICATION_DELAY as the time to wait after modifying a file,
2101         to cope with timestamp granularity issues, depending
2102         on the platform.
2103         * tests/defs.in: Define `sleep' using MODIFICATION_DELAY.
2105 2003-04-10  Eric Siegerman  <eric_97@pobox.com>  (tiny change)
2107         * automake.texi (Public macros): Clarify that the new
2108         AM_INIT_AUTOMAKE variant is preferred, and the old one
2109         deprecated.  Copy-edit the rest of the AM_INIT_AUTOMAKE item.
2110         (Hello): Caution that the example uses the deprecated
2111         AC_INIT/AM_INIT_AUTOMAKE syntax, and xref to the discussion.
2113 2003-04-10  Alexandre Duret-Lutz  <adl@gnu.org>
2115         Retain all variable definitions until the whole Makefile.am has
2116         been processed, then output all variables in one step, at the top
2117         of Makefile.in.  (Older revisions used to output user variables
2118         before generating Automake targets, and to mix Automake variables
2119         with Automake targets, preventing redefinitions of previously
2120         output variables.)
2122         * automake.in (%var_pretty): New variable.
2123         (VAR_ASIS, VAR_PRETTY): New constants.
2124         (@var_list): Rename as ...
2125         (@var_order): ... this.
2126         (initialize_per_input): Clear %var_pretty.
2127         (handle_variables): New function, extracted from ...
2128         (read_main_am_file): ... here.
2129         (generate_makefile): Call handle_variable after everything else.
2130         (handle_dist): Use define_pretty_variable, not pretty_print.
2131         (pretty_print): Delete.
2132         (macro_define): Augment with $COMMENT and $PRETTY parameters.
2133         Update %var_comment, %var_pretty, and @var_order.  Adjust callers.
2134         (variable_pretty_output): Merge with ...
2135         (variable_output): ... this, and choose the prettiness on a
2136         per-condition basis.
2137         (append_comments): Delete.  This work is now done by macro_define.
2138         (read_am_file, file_contents_internal): Don't call append_comments
2139         nor update @var_list, adjust calls to macro_define.
2140         (handle_subdirs): Don't explicitly output RECURSIVE_TARGETS,
2141         just mark it as VAR_PRETTY.
2142         * tests/exeext.test: Make sure bin_PROGRAMS is output only once.
2143         Report from Jim Meyering.
2145 2003-04-06  Alexandre Duret-Lutz  <adl@gnu.org>
2147         * automake.in (handle_installdirs): Rename as ...
2148         (handle_install): ... this.  Define maybe_BUILT_SOURCES.
2149         (generate_makefile): Adjust call to handle_install.
2150         * lib/am/install.am (install): Use %maybe_BUILT_SOURCES%.
2151         * automake.texi (Sources, Built sources example): BUILT_SOURCES
2152         is honored by `make install' too.
2153         * tests/check3.test: Make sure that `make install' also depends
2154         upon BUILT_SOURCES.
2155         Report from Alexander Turbov.
2157         * lib/am/libs.am (ARFLAGS): Define.
2158         * automake.in (handle_libraries): Use `$(ARFLAGS)' instead of
2159         hard-coding `cru'.
2160         * automake.texi (A Library): Explain how AR, ARFLAGS and RANLIB
2161         are used, and how they can be overridden.
2162         (Program and Library Variables): Adjust to show `$(ARFLAGS)'
2163         instead of `cru'
2164         * tests/ar.test: Rewrite to test for AR, ARFLAGS, and RANLIB.
2165         * tests/ranlib.test: Delete, obsoleted by ar.test.
2166         * tests/Makefile.am (TESTS): Remove ranlib.test.
2167         Report from Paul Thomas.
2169 2003-04-03  Alexandre Duret-Lutz  <adl@gnu.org>
2171         * automake.in (check_trailing_slash): New function (variation on
2172         a patch by Peter Muir).  Diagnose whitespaces following trailing
2173         backslash.
2174         (read_am_file): Use it.
2175         * tests/backsl4.test: New file.
2176         * tests/Makefile.am (TESTS): Add backsl4.test.
2177         Reported by Peter Muir.
2179 2003-03-29  Raja R Harinath  <harinath@acm.org>
2181         Speedup Automake::DisjConditions::invert().
2182         * lib/Automake/Condition.pm (multiply): New.
2183         * lib/Automake/DisjConditions.pm (_multiply): Use it.
2184         (sub_conditions): Likewise.
2186         * lib/Automake/Condition.pm (reduce): Rename to ...
2187         (reduce_and): ... this.
2188         (reduce_or): New.
2189         * lib/Automake/DisjConditions.pm (_multiply): Use reduce_or().
2190         * lib/Automake/tests/Condition.pl (test_reduce): Rename to ...
2191         (test_reduce_and): ... this.
2192         (test_reduce_or): New.
2193         * lib/Automake/tests/DisjConditions.pl
2194         (test_invert): Update to reflect effect of reduce_or().
2195         (test_simplify): Don't skip invert() on larger inputs.
2197 2003-03-29  Raja R Harinath  <harinath@cs.umn.edu>
2199         * tests/yacc8.test: Add a $sleep before modifying Makefile.am so
2200         that timestamp will change.
2202 2003-03-23  Akim Demaille  <akim@epita.fr>
2203             Alexandre Duret-Lutz  <adl@gnu.org>
2205         * lib/am/tags.am (TAGS): Use --etags-include instead of --include,
2206         when supported by etags (Exuberant Ctags).
2207         * tests/tagsub.test: Rewrite to _run_ the `tags' rule.
2209 2003-03-20  Alexandre Duret-Lutz  <adl@gnu.org>
2211         For Debian Bug #185388:
2212         * automake.texi (Extending): Augment the install-exec-hook
2213         discussion with an example how to symlink a versioned binary.
2214         * tests/insthook.test: Rewrite to test the above example.
2215         Report from James R. Van Zandt.
2217 2003-03-19  Alexandre Duret-Lutz  <adl@gnu.org>
2219         * Makefile.am (maintainer-check): Allow `automake:' tokens,
2220         occuring in location.test.  Automake now has 5 legitimate
2221         unsubstituted @strings@.
2223         * tests/aclocal4.test: Require GNU make.
2225 2003-03-14  Alexandre Duret-Lutz  <adl@gnu.org>
2227         * tests/aclocal4.test: New file.  Test for the ACLOCAL_M4 bug below.
2228         * tests/Makefile.am (TESTS): Add aclocal4.test.
2230 2003-03-14  Jim Meyering  <jim@meyering.net>
2232         * automake.in (scan_aclocal_m4): Define ACLOCAL_M4 even in
2233         subdirectories.  Makefile.in depends on that variable.
2235 2003-03-13  Alexandre Duret-Lutz  <adl@gnu.org>
2237         * m4/init.m4: Remove a leftover comment from the pre-1.7 era.
2239         Fix for PR automake/386:
2240         * m4/init.m4: Require Autoconf 2.55.
2241         Reported by Owen Taylor.
2243         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
2244         (?GENERIC?%EXT%.lo): Use `mv -f' instead of `mv' in FASTDEP mode.
2245         Suggested by Matthias Andree.
2247         * tests/README: Typo.
2249 2003-03-08  Alexandre Duret-Lutz  <adl@gnu.org>
2251         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
2252         (?GENERIC?%EXT%.lo): Hide the if/then/else machinery for FASTDEP.
2253         Just echo the gcc command.
2254         Suggested by Karl Berry.
2256 2003-03-06  Alexandre Duret-Lutz  <adl@gnu.org>
2258         * lib/am/depend2.am (?GENERIC?%EXT%.lo): Do not use
2259         `test -f foo || echo $(srcdir)/` to emulate a VPATH search when
2260         outputing suffix rules.  This follows 2003-02-25's change.
2261         * lib/am/lex.am (?GENERIC?%EXT%%DERIVED-EXT%): Likewise.
2262         * lib/am/yacc.am (?GENERIC?%EXT%%DERIVED-EXT%): Likewise.
2264 2003-03-05  Alexandre Duret-Lutz  <adl@gnu.org>
2266         * automake.texi (Requirements) <AC_CONFIG_FILES>: Files listed
2267         with AC_CONFIG_FILES are cleaned by `make distclean'.  Don't
2268         pretend otherwise.
2269         Reported by Rafael Laboissiere.
2271 2003-03-04  Andreas Buening  <andreas.buening@nexgo.de>
2273         * lib/mdate-sh: Find out which column of the ls -l output contains
2274         the month. Do not assume it is at least the fifth column.
2276 2003-02-26  Alexandre Duret-Lutz  <adl@gnu.org>
2278         * automake.texi (Emacs Lisp): Mention that `dist_' can be used.
2280         * automake.texi (Emacs Lisp): Instruct people to use lisp_DATA
2281         instead of lisp_LISP when they don't want byte-compilation.
2282         Don't mention ELCFILES anymore.
2283         * automake.in (handle_data): Allow lisp_DATA.
2284         * tests/lisp5.test: New file.
2285         * tests/Makefile.am (TESTS): Add lisp5.test.
2287         * automake.in (handle_emacs_lisp): Don't build *.elc files
2288         if ELCFILES was set empty.
2289         * tests/lisp4.test: New file.
2290         * tests/Makefile.am (TESTS): Add lisp4.test.
2291         Reported by Simon Josefsson.
2293         * tests/lex3.test, tests/lex5.test: Require flex.
2294         Reported by Leo Davis.
2296 2003-02-25  Alexandre Duret-Lutz  <adl@gnu.org>
2298         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj): Do not
2299         use the `test -f foo || echo $(srcdir)/` to emulate a VPATH search
2300         when outputing suffix rules.
2301         * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.dvi)
2302         (?GENERIC?%SOURCE_SUFFIX%.pdf): Likewise.
2303         Suggested by Bruno Haible.
2305         * automake.in (read_am_file): Catch trailing backslashes on last line.
2306         * tests/backsl3.test: New file.
2307         * tests/Makefile.am (TESTS): Add backsl3.test.
2308         Reported by Akim Demaille.
2310 2003-02-24  Alexandre Duret-Lutz  <adl@gnu.org>
2312         * ChangeLog: Move 2002's entries to ...
2313         * ChangeLog.02: ... this new file.
2314         * Makefile.am (EXTRA_DIST): Add ChangeLog.02.
2316 2003-02-24  Richard Dawe  <rich@phekda.freeserve.co.uk>
2318         * tests/version7.test: Use $sleep to sleep before updating
2319         the version, to work around timestamp inconsistencies in Windows.
2321 2003-02-24  Bruno Haible  <bruno@clisp.org>
2322             Alexandre Duret-Lutz  <adl@gnu.org>
2324         * lib/am/texibuild.am: Don't remove the target info files. Instead,
2325         back up and restore them if makeinfo fails.
2326         * tests/txinfo20.test: New file.
2327         * tests/Makefile.am (TESTS): Add txinfo20.test.
2329 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
2331         * automake.texi (FAQ, CVS, maintainer-mode, wildcards)
2332         (distcleancheck): Fix typos and other errors reported by Karl
2333         Berry.
2335 2003-02-20  Alexandre Duret-Lutz  <adl@gnu.org>
2337         * lib/am/texibuild.am (%SOURCE_SUFFIX%%DEST_SUFFIX%): Use $(...)
2338         instead of ${...}.
2340         * tests/defs.in: Handle required=ro-dir.
2341         * tests/destdir.test: Use this.
2343 2003-02-19  Richard Dawe  <rich@phekda.freeserve.co.uk>
2345         * lib/am/distdir.am (distcheck): Strip any leading DOS drive
2346         from dc_install_base.
2348 2003-02-19  Alexandre Duret-Lutz  <adl@gnu.org>
2350         * lib/am/texinfos.am (install-info-am, uninstall-info-am): Install
2351         DJGPP-style *.iNN info files.
2352         (maintainer-clean-aminfo): Rewrite using the same pattern
2353         as in uninstall-info-am.
2354         * lib/am/texibuild.am (%SOURCE_SUFFIX%%DEST_SUFFIX%): Erase
2355         DJGPP-style *.iNN info files before running $(MAKEINFO).
2356         * tests/txinfo19.test: New file.
2357         * tests/Makefile.am (TESTS): Add txinfo19.test.
2359 2003-02-18  Richard Dawe  <rich@phekda.freeserve.co.uk>
2361         * lib/depcomp (dashmstdout): Cope with DOS filenames in
2362         dependencies.
2364 2003-02-17  Alexandre Duret-Lutz  <adl@gnu.org>
2366         * lib/depcomp (makedepend): Don't pass $object to makedepend.
2367         Reported by Stepan Kasal.
2369 2003-02-12  Alexandre Duret-Lutz  <adl@gnu.org>
2371         * tests/defs.in: Handle required=makedepend.
2373         * Makefile.am (maintainer-check): Update the diff check
2374         to account for the recent @SHELL@ substitution.
2376 2003-02-11  Alexandre Duret-Lutz  <adl@gnu.org>
2378         * lib/depcomp: Do not put comments on the `icc)' line.
2380         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
2381         versions.
2383         Fix for PR automake/381:
2384         * automake.in (handle_gettext): Do not print diagnostics
2385         about po/ and intl/ missing from SUBDIRS if po/ does not
2386         exist.  Warn if `SUBDIRS = intl' is used although libintl
2387         is 'external'.
2388         * tests/gettext.test: Make sure diagnostics are not output
2389         when po/ does not exist.
2390         * tests/gettext2.test: Test for unwanted intl/.
2391         PR from Alexander Turbov, fix suggested by Bruno Haible.
2393         * m4/depend.m4: Grep depcomp's stderr for icc warnings about
2394         ignored options.
2395         * lib/depcomp (icc): New mode.
2396         * tests/depcomp5.test: New file.
2397         * tests/defs.in: Handle required=icc.
2398         * tests/Makefile.am (TESTS): Add it.
2400         Temporary hack for PR automake/381:
2401         * automake.in (handle_gettext): Turn missing po/ and intl/ errors
2402         into -Wsyntax warnings.
2404 2003-02-10  Richard Dawe  <rich@phekda.freeserve.co.uk>
2406         * Makefile.am: Substitute @SHELL@ in automake.in and aclocal.in.
2407         This makes the setting of SHELL work for DJGPP.
2409 2003-02-10  Alexandre Duret-Lutz  <adl@gnu.org>
2411         For PR automake/385:
2412         * lib/depcomp (makedepend): Strip any libtool call, before
2413         running makedepends.
2414         * tests/depcomp4.test: New file.
2415         * tests/Makefile.am (TESTS): Add it.
2416         Reported by Jeff Squyres.
2418         Related to PR automake/385:
2419         * lib/depcomp (dashmstdout): Do not use `-o /dev/null', or gcc will
2420         write dependencies to /dev/null.  `-o /dev/null' was added
2421         on 2002-06-13 just because I tried to replace `-o foo.o' by something
2422         else and didn't thought about removing it entirely.
2423         * tests/depcomp3.test: New file.
2424         * tests/Makefile.am (TESTS): Add it.
2426         * automake.in (BEGIN): Override $ENV{'SHELL'} with ./configure's
2427         SHELL for DJGPP.
2428         Suggested by Richard Dawe.
2430 2003-02-09  Alexandre Duret-Lutz  <adl@gnu.org>
2432         * automake.texi (FAQ, CVS, maintainer-mode, wildcards)
2433         (distcleancheck): New nodes.
2435 2003-02-06  Alexandre Duret-Lutz  <adl@gnu.org>
2437         * automake.in (scan_autoconf_files): Don't complain that
2438         AM_INIT_AUTOMAKE comes from an old version if it was not found.
2440 2003-02-05  Alexandre Duret-Lutz  <adl@gnu.org>
2442         * automake.in (am_install_var): Simplify filtering of
2443         variable_loc_and_value_as_list_recursive's output.
2445 2003-02-04  Alexandre Duret-Lutz  <adl@gnu.org>
2447         * m4/init.m4 (_AC_AM_CONFIG_HEADER_HOOK): Recompute
2448         indexes of header files so we create stamp files with
2449         the right numbers when config.status is run on some headers.
2450         * tests/stamph2.test: Check for this.
2451         Reported by Sander Niemeijer.
2453 2003-02-02  Alexandre Duret-Lutz  <adl@gnu.org>
2455         * automake.in (vars_scanned): Move near traverse_variable_recursively.
2456         (traverse_variable_recursively,
2457         traverse_variable_recursively_worker): Accept a $COND_FILTER argument
2458         to filter out conditions during recursion.  Don't recurse into
2459         undefined variables.  Don't pass empty results to &FUN_COLLECT.
2460         (value_to_list): Remove, was used by
2461         variable_value_as_list_recursive_worker only.
2462         (variable_value_as_list_recursive_worker): Rewrite using
2463         traverse_variable_recursively.  Remove the $parent argument.
2464         (variable_value_as_list_recursive,
2465         variable_loc_and_value_as_list_recursive): Adjust calls
2466         to variable_value_as_list_recursive_worker.  Don't reset
2467         %vars_scanned.
2468         * tests/cond3.test: Don't expect empty helper variables,
2469         we don't output them anymore.
2470         * tests/cond30.test: Use an undefined variable.
2472         * automake.in (handle_programs): Strip $(EXEEXT) before
2473         calling &check_canonical_spelling.
2474         * tests/exeext.test: Make sure we don't use a
2475         maude3__EXEEXT__OBJECTS variable.
2477 2003-02-02  Jeremy Nimmer  <jwnimmer@alum.mit.edu>  (tiny change)
2479         For Debian Bug #39542:
2480         * automake.texi (Invoking Automake, Optional): Document how
2481         AC_CONFIG_AUX_DIR interacts with missing files.
2483 2003-02-02  Alexandre Duret-Lutz  <adl@gnu.org>
2485         * lib/Automake/DisjConditions.pm (_permutations_worker)
2486         (permutations): Remove, so that people aren't tempted to use it.
2487         * lib/Automake/tests/DisjConditions.pl (tests_permutations): Remove.
2489         * automake.in (variable_conditions_recursive): Remove.
2490         (variable_conditionally_defined): Rewrite using
2491         traverse_variable_recursively.
2493         * automake.in (traverse_variable_recursively,
2494         traverse_variable_recursively_worker): Pass one merged Condition
2495         instead of a stack of conditions to &FUN_STORE and &FUN_COLLECT.
2496         (transform_variable_recursively, define_objects_from_sources)
2497         (handle_lib_objects, variable_conditions_recursive): Adjust usage.
2499 2003-02-01  Alexandre Duret-Lutz  <adl@gnu.org>
2501         * automake.in (handle_lib_objects): Compute _DEPENDENCIES variables
2502         using transform_variable_recursively instead of
2503         variable_conditions_recursive and variable_value_as_list_recursive
2504         to avoid combinatorial explosion.
2505         (handle_lib_objects_cond): Merge into handle_lib_objects.
2506         * tests/cond11.test: Don't grep internal details in Makefile.in,
2507         run $MAKE to make sure the resulting Makefile runs as expected.
2508         * tests/cond29.test: Also exercise conditional _LDADD.
2509         * tests/cond31.test, tests/cond32.test: New files.
2510         * tests/Makefile.am (TESTS): Add tests/cond31.test and
2511         tests/cond32.test.
2513 2003-01-31  Alexandre Duret-Lutz  <adl@gnu.org>
2515         * automake.in (handle_lib_objects_cond): Ignore -dlopen and
2516         -dlpreopen in _LIBADD variables too.
2517         (handle_LIBOBJS, handle_ALLOCA): New functions, extracted from
2518         handle_lib_objects_cond.
2519         * tests/libtool7.test: New file.
2520         * tests/Makefile.am (TESTS): Add libtool7.test.
2522         * automake.texi (Program and Library Variables): Clarify that
2523         _LIBADD is for libraries and _LDADD for programs.
2525         * automake.in (handle_source_transform): Correct typo from 2003-01-23.
2527 2003-01-28  Alexandre Duret-Lutz  <adl@gnu.org>
2529         Fix for PR automake/352:
2530         * automake.in (transform_variable_recursively): If the destination
2531         and the source variables are the same, delete the source variable
2532         before defining the destination variable.
2533         (handle_programs): Strip any $(EXEEXT) suffix from $one_file,
2534         or this will confuse handle_source_transform.
2535         (append_exeext): Rewrite using transform_variable_recursively.
2536         * tests/cond29.test, tests/cond30.test: New files.
2537         * tests/exeext.test: Run ./configure and make, this uncovered
2538         the above handle_programs issue.
2539         * tests/Makefile.am (TESTS): Add cond29.test and cond20.test.
2541         * automake.in (%subobjvar): Replace by ...
2542         (%gen_varname): ... this.
2543         (subobjname): Replace by ...
2544         (gen_varname): ... this.
2545         (initialize_per_input): Clean gen_varname instead of subobjname.
2546         (transform_variable_recursively): New function, extracted
2547         from define_objects_from_sources.
2548         (define_objects_from_sources): Use transform_variable_recursively.
2549         Remove the unused $parent argument.
2550         (handle_source_transform): Adjust call to define_objects_from_sources.
2552 2003-01-23  Alexandre Duret-Lutz  <adl@gnu.org>
2554         * automake.in (@substfroms, @substtos): Move near
2555         traverse_variable_recursively.
2556         (traverse_variable_recursively, traverse_variable_recursively_worker):
2557         New functions, extracted from define_objects_from_sources.
2558         (define_objects_from_sources): Rewrite using
2559         traverse_variable_recursively.
2560         (handle_source_transform): Use variables_conditionally_defined
2561         instead of calling variable_conditions_recursive directly.
2562         Adjust the call to define_objects_from_sources; there is no need
2563         to reset @substtos, @substfroms, and %vars_scanned now.
2564         (variable_conditions_recursive): Rewrite using
2565         traverse_variable_recursively.
2566         (variable_conditions_recursive_sub): Remove.
2567         (variable_conditionally_defined): Fix condition comparison (the
2568         consequence was that DIST_SUBDIRS was always output).
2569         * lib/Automake/Condition.pm (merge): Allow merging several
2570         conditions at once.
2572 2003-01-22  Alexandre Duret-Lutz  <adl@gnu.org>
2574         * automake.texi (Python): Explain that directory variables start
2575         with either ${prefix} or ${exec_prefix}, and point to the
2576         `Installation Directory Variables' section of the Autoconf manual.
2578 2003-01-21  Alexandre Duret-Lutz  <adl@gnu.org>
2580         * lib/am/distdir.am (top_distdir, distdir): Define these
2581         variables only in top level Makefile.  Redefine $(top_distdir)
2582         as $(distdir).
2583         (distdir): Fix passing of $(top_distdir) to sub-makes.
2584         * automake.in (handle_dist): Do not define the DISTDIR and
2585         TOP_DISTDIR transformations.  We don't need them anymore.
2586         * automake.texi (Dist): Reorder the dist-hook section, and move
2587         the DIST_SUBDIRS paragraph earlier.  Document distdir and
2588         top_distdir.
2589         * tests/subpkg.test: Update to check for $(distdir) and
2590         $(top_distdir).
2592 2003-01-19  Alexandre Duret-Lutz  <adl@gnu.org>
2594         Rename more files to accomodate 8+3 file systems, and adjust the
2595         vocabulary at the same time: AM_CONDITIONAL defines "conditionals",
2596         and we call "condition" a conjunction of "conditionals".
2597         * lib/am/Conditional.pm: Rename to lib/am/Condition.pm.
2598         * lib/am/tests/Conditional.pl: Rename to lib/am/tests/Condition.pl.
2599         * lib/am/ConditionalSet.pm: Rename to lib/am/DisjConditions.pm.
2600         * lib/am/tests/ConditionalSet.pl: Rename to
2601         lib/am/tests/DisjConditions.pl
2602         * lib/am/Conditional.pm (condition_negate): Rename to ...
2603         * lib/am/Condition.pm (conditional_negate): ... this.
2604         * automake.in: Adjust references to Condition and DisjConditions.
2605         (check_ambiguous_conditional, conditional_ambiguous_p): Rename to ...
2606         (check_ambiguous_condition, condition_ambiguous_p): ... these.
2608         * tests/README: New file.
2610         * automake.texi (Conditional Programs): Show a sample Makefile.am.
2611         Remind $(EXEEXT) must be appended to configure substitutions.
2612         Show how Automake conditionals can be used instead.
2613         * tests/exeext.test (check_PROGRAMS): Make sure EXEEXT is also
2614         appended to conditionally defined programs.
2616 2003-01-16  Jim Meyering  <jim@meyering.net>
2618         Accept --help and --version, and lots of syntactic clean-up.
2619         * lib/install-sh: Use consistent indentation, two spaces per level.
2620         (scriptversion): New variable.
2621         Change initializations like `variable=""' to `variable='.
2622         (usage): New variable.
2623         Use `test', not `['.
2624         Use `test -z "$var"', not `[ x"$var" = x ]'.
2625         Use `test -n "$var"', not `[ x"$var" != x ]'.
2626         Alphabetize case entries.
2627         Accept --help and --version options.
2628         Remove unnecessary `else :' clauses.
2629         Add a `Local variables' eval block to help emacs users update
2630         the time-stamp variable added above.
2631         Mostly from Karl Berry.
2633 2003-01-16  Alexandre Duret-Lutz  <adl@gnu.org>
2635         * m4/python.m4 (AM_PATH_PYTHON) <_AM_PYTHON_INTERPRETER_LIST>: Add
2636         python2.3.
2638         * m4/python.m4 (AM_PATH_PYTHON): Query distutils for `pythondir'
2639         or `pyexecdir', for the sake of 64-bit distributions that usually
2640         use lib64/ instead of lib/.  Fall back to the default directory
2641         if it doesn't work.
2642         Suggested by Gwenole Beauchesne.
2644 2003-01-14  Alexandre Duret-Lutz  <adl@gnu.org>
2646         For PR automake/382:
2647         * automake.texi (Yacc and Lex): Document `AM_YFLAGS = -d'.
2648         Explain BUILT_SOURCES is usually needed in this case.
2649         Reported by William S Fulton.
2651 2003-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
2653         Rename some files for the sake of 8+3 file systems.
2654         * tests/aclocali.test:     Rename to tests/aclocal.test.
2655         * tests/aclocali1.test:    Rename to tests/aclocal2.test.
2656         * tests/aclocalii.test:    Rename to tests/aclocal3.test.
2657         * tests/acoutput.test:     Rename to tests/acoutpt.test.
2658         * tests/acoutput2.test:    Rename to tests/acoutpt2.test.
2659         * tests/acouttbs.test:     Rename to tests/acoutbs.test.
2660         * tests/acouttbs2.test:    Rename to tests/acoutbs2.test.
2661         * tests/autoheader.test:   Rename to tests/autohdr.test.
2662         * tests/autoheader2.test:  Rename to tests/autohdr2.test.
2663         * tests/condincl.test:     Rename to tests/condinc.test.
2664         * tests/condincl2.test:    Rename to tests/condinc2.test.
2665         * tests/distcommon.test:   Rename to tests/distcom.test.
2666         * tests/distcommon2.test:  Rename to tests/distcom2.test.
2667         * tests/distcommon3.test:  Rename to tests/distcom3.test.
2668         * tests/installsh.test:    Rename to tests/instsh.test.
2669         * tests/installsh2.test:   Rename to tests/instsh2.test.
2670         * tests/instdata.test:     Rename to tests/instdat.test.
2671         * tests/instdata2.test:    Rename to tests/instdat2.test.
2672         * tests/libobj12b.test:    Rename to tests/libobj13.test.
2673         * tests/link_f_c.test:     Rename to tests/link_fc.test.
2674         * tests/link_f_c_cxx.test: Rename to tests/link_fccxx.test.
2675         * tests/link_f_cxx.test:   Rename to tests/link_fcxx.test.
2676         * tests/nodefine.test:     Rename to tests/nodef.test.
2677         * tests/nodefine2.test:    Rename to tests/nodef2.test.
2678         * tests/required.test:     Rename to tests/reqd.test.
2679         * tests/required2.test:    Rename to tests/reqd2.test.
2680         * tests/sourcesub.test:    Rename to tests/srcsub.test.
2681         * tests/sourcesub2.test:   Rename to tests/srcsub2.test.
2682         * tests/specflags.test:    Rename to tests/specflg.test.
2683         * tests/specflags2.test:   Rename to tests/specflg2.test.
2684         * tests/specflags3.test:   Rename to tests/specflg3.test.
2685         * tests/specflags6.test:   Rename to tests/specflg6.test.
2686         * tests/specflags7.test:   Rename to tests/specflg7.test.
2687         * tests/specflags8.test:   Rename to tests/specflg8.test.
2688         * tests/specflags9.test:   Rename to tests/specflg9.test.
2689         * tests/subdircond.test:   Rename to tests/subcond.test.
2690         * tests/subdircond2.test:  Rename to tests/subcond2.test.
2691         * tests/subdircond3.test:  Rename to tests/subcond3.test.
2692         * tests/texinfo.test:      Rename to tests/txinfo.test.
2693         * tests/texinfo2.test:     Rename to tests/txinfo2.test.
2694         * tests/texinfo3.test:     Rename to tests/txinfo3.test.
2695         * tests/texinfo4.test:     Rename to tests/txinfo4.test.
2696         * tests/texinfo5.test:     Rename to tests/txinfo5.test.
2697         * tests/texinfo6.test:     Rename to tests/txinfo6.test.
2698         * tests/texinfo7.test:     Rename to tests/txinfo7.test.
2699         * tests/texinfo8.test:     Rename to tests/txinfo8.test.
2700         * tests/texinfo9.test:     Rename to tests/txinfo9.test.
2701         * tests/texinfo10.test:    Rename to tests/txinfo10.test.
2702         * tests/texinfo13.test:    Rename to tests/txinfo13.test.
2703         * tests/texinfo16.test:    Rename to tests/txinfo16.test.
2704         * tests/texinfo17.test:    Rename to tests/txinfo17.test.
2705         * tests/texinfo18.test:    Rename to tests/txinfo18.test.
2706         * tests/Makefile.am (TESTS): Adjust.
2707         * ChangeLog.1996: Rename to ChangeLog.96.
2708         * ChangeLog.1998: Rename to ChangeLog.98.
2709         * ChangeLog.2000: Rename to ChangeLog.00.
2710         * ChangeLog.2001: Rename to ChangeLog.01.
2711         * Makefile.am (EXTRA_DIST): Adjust.
2712         Reported by Richard Dawe.
2714 2003-01-13  Richard Dawe  <rich@phekda.freeserve.co.uk>  (tiny change)
2716         * lib/am/distdir.am (distcheck): '=' is not valid in DOS filenames.
2717         Use '_build' and '_inst' instead of '=build' and '=inst'.
2718         * tests/man2.test: Reflect change automake: check for files in
2719         '_build' and '_inst' directories instead of '=build' and '=inst'.
2721 2003-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
2723         Use `_dirstamp' when the file-system doesn't support `.dirstamp'.
2724         * m4/lead-dot.m4: New file.
2725         * m4/Makefile.am (dist_m4data_DATA): Add lead-dot.m4
2726         * m4/init.m4 (AM_INIT_AUTOMAKE): Require AM_SET_LEADING_DOT.:
2727         * m4/depend.m4 (AM_SET_DEPDIR): Require AM_SET_LEADING_DOT. Define
2728         DEPDIR using am__leading_dot.
2729         * automake.in (require_build_directory): Define am__dirstamp, a new
2730         variable for the dirstamp basename, based on am__leading_dot.
2731         * tests/subobj6.test: Move all `test -f' into Makefiles, so we can
2732         use $(am__dirstamp).
2733         Reported by Richard Dawe.
2735         * tests/gnits2.test, tests/pr300-prog.test, tests/transform.test:
2736         Move all `test -f' into Makefiles, so we can honor $(EXEEXT) when
2737         testing for programs.
2738         Reported by Richard Dawe.
2740 2003-01-10  Alexandre Duret-Lutz  <adl@gnu.org>
2742         * Makefile.am (maintainer-check): Suggest using $sleep instead of
2743         sleep 2.
2744         * tests/defs.in (sleep): New variable.
2745         * tests/asm.test, tests/confsub.test, tests/lisp3.test,
2746         tests/texinfo16.test, tests/warnopts.test, tests/yaccvpath.test:
2747         Use $sleep instead of sleep 2, to work around timestamp
2748         inconsistencies in Windows.
2749         Reported by Richard Dawe.
2751         * Makefile.am (maintainer-check): Do not require SHELL=/bin/sh
2752         after $MAKE -e.
2753         * tests/ansi3.test, tests/ansi5.test, tests/cond22.test,
2754         tests/man2.test, tests/subobj3.test, tests/suffix8.test,
2755         tests/suffix11.test: Do not set SHELL=/bin/sh after $MAKE -e.
2756         $SHELL is overridden by tests/defs, so it won't hurt even
2757         if $MAKE -e uses the $SHELL envvar.
2758         * tests/ansi.test, tests/insh2.test, tests/texinfo.test,
2759         tests/texinfo8.test: Use SHELL=$SHELL, not SHELL=/bin/sh.
2760         Reported by Richard Dawe.
2762         Build elisp files all at once instead of one by one.
2763         * automake.in (handle_emacs_lisp): Define am__ELFILES.  Add
2764         elc-stamp to all's dependencies.
2765         * lib/am/lisp.am (elc-stamp): New rule, build all *.elc files.
2766         (.el.elc): Rewrite to call elc-stamp if $@ doesn't exist.
2767         (clean-lisp): Clean elc-stamp.
2768         * lib/elisp-comp: Reindent.  Erase the temporatry directory
2769         from a trap.  Propagate Emacs's exit status.
2770         * tests/lisp3.test: New file.
2771         * tests/Makefile.am (TESTS): Add lisp3.test.
2772         Reported by Ryan T. Sammartino.
2774 2003-01-09  Akim Demaille  <akim@epita.fr>
2776         * automake.texi: Prefer $(FOO) to @FOO@ in the documentation.
2778 2003-01-08  Alexandre Duret-Lutz  <adl@gnu.org>
2780         * m4/lispdir.m4: Register EMACS and EMACSLOADPATH as precious
2781         variables.  Suggested by Ryan T. Sammartino.
2783 2003-01-05  Alexandre Duret-Lutz  <adl@gnu.org>
2785         * automake.in (macro_define): Add missing `{$cond}' (typo from
2786         2002-09-18).
2787         ($gen_copyright): Append year 2003.
2788         (version): Increase year.
2790         * tests/defs.in: Substitute aclocaldir instead of running
2791         the installed aclocal.  Otherwise Libtool and Gettext
2792         tests get skipped when aclocal doesn't preexist.
2793         Reported by Imacat.
2794         * tests/listval.test, tests/suffix2.test: Remove pointless -I
2795         argument to aclocal.
2797 -----
2799 Copyright (C) 2003  Free Software Foundation, Inc.
2801 This file is part of GNU Automake.
2803 GNU Automake is free software; you can redistribute it and/or modify
2804 it under the terms of the GNU General Public License as published by
2805 the Free Software Foundation; either version 2, or (at your option)
2806 any later version.
2808 GNU Automake is distributed in the hope that it will be useful,
2809 but WITHOUT ANY WARRANTY; without even the implied warranty of
2810 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2811 GNU General Public License for more details.
2813 You should have received a copy of the GNU General Public License
2814 along with autoconf; see the file COPYING.  If not, write to
2815 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
2816 Boston, MA 02111-1307, USA.