.
[platform/upstream/automake.git] / ChangeLog
1 2003-04-21  Jim Meyering  <jim@meyering.net>
2
3         * lib/mkinstalldirs: Remove each sequence of spaces before a
4         TAB character.
5         * lib/depcomp: Search for TAB-SPC, not SPC-TAB.
6
7 2003-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
8
9         Fix for PR automake/389:
10         * automake.in (handle_configure): Don't put $colon_infile in
11         CONFIG-MAKEFILE.
12         * tests/conff.test: New file.
13         * tests/Makefile.am (TESTS): Add conff.test.
14         Reported by Alexander Turbov.
15
16 2003-04-18  Alexandre Duret-Lutz  <adl@gnu.org>
17
18         * tests/defs.in: Handle required=etags to work around
19         Exuberant Ctags.
20
21         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
22         versions.
23
24         * tests/dejagnu3.test, tests/dejagnu4.test, tests/dejagnu5.test:
25         Distribute dejagnu test cases, so that distcheck actually runs them.
26
27 2003-04-18  Richard Dawe  <rich@phekda.freeserve.co.uk>
28
29         * lib/am/dejagnu.am (site.exp): Don't define tool in site.exp,
30         because we set that by invoking runtest with --tool.
31         * tests/Makefile.am (TESTS): Add dejagnu4.test, dejagnu5.test,
32         dejagnu6.test, dejagnu7.test.
33         * tests/dejagnu4.test: New test.
34         * tests/dejagnu5.test: New test.
35         * tests/dejagnu6.test: New test.
36         * tests/dejagnu7.test: New test.
37
38         * tests/dejagnu3.test: Make sure the DejaGnu test is actually run.
39
40 2003-04-18  Jim Meyering  <jim@meyering.net>
41
42         * automake.in (variable_output): Fix typo in comment s/is/if/.
43
44         * lib/am/yacc.am (?!GENERIC?%OBJ% aka .y.c): Don't redirect
45         directly to $@.  Instead, redirect to $@t and rename upon success.
46         Also, move the commands that update $@ so they are last.  Otherwise,
47         this rule could leave the user with an up to date target (.c file)
48         but with a missing or corrupted corresponding .h file.
49
50 2003-04-17  Richard Dawe  <rich@phekda.freeserve.co.uk>
51
52         * tests/defs.in: Handle required=runtest, to detect runtest
53         from DejaGnu.
54         * tests/Makefile.am (TESTS): Add dejagnu3.test.
55         * tests/dejagnu3.test: New test.
56
57 2003-04-16  Alexandre Duret-Lutz  <adl@gnu.org>
58
59         * automake.in (rule_define): If the user tries to override
60         an Automake which has a -local variant, suggest using the
61         -local variant in the -Woverride diagnostic.
62         (handle_factored_dependencies): Register factored
63         rules with rule_define, and define them only in undefined
64         conditions.
65         * tests/Makefile.am (TESTS): Add override.test.
66         * tests/overrid.test: New file.
67         * tests/phony.test: Count the number of .PHONY targets.
68
69 2003-04-15  Alexandre Duret-Lutz  <adl@gnu.org>
70
71         * lib/am/distdir.am (distuninstallcheck, distcleancheck): Silence
72         these rules, so that we don't confuse users by echoing
73         "echo ERROR:" commands which are not run.
74
75 2003-03-14  Richard Dawe  <rich@phekda.freeserve.co.uk>
76             Alexandre Duret-Lutz  <adl@gnu.org>
77
78         * automake.in (output_texinfo_build_rules, handle_texinfo_helper,
79         initialize_per_input):  Add infrastructure for generating HTML
80         documentation from texinfo source.
81         * lib/am/texinfos.am: Add rules for building HTML documentation
82         from texinfo source.
83         * lib/am/texibuild.am: Likewise.
84         * automake.texi (Texinfo): Document rules for building
85         HTML documentation from texinfo source.
86         * tests/txinfo21.test: New file.
87         * tests/Makefile.am (TESTS): Add txinfo21.test.
88         * tests/defs.in: Handle required=makeinfo-html.
89
90 2003-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
91
92         * automake.in (%silent_variable_override): New variable.
93         (macro_define): Warn about variable definitions overriding
94         Automake variables.
95         (rule_define): Warn about target definitions overriding
96         Automake variables.  Fix $condmsg definition.
97         * automake.texi (Invoking Automake): Document the `override'
98         category.
99         * lib/Automake/ChannelDefs.pm (usage): Likewise.
100         * lib/am/texinfos.am [!%?CYGNUS] (MAKEINFO): Do not define,
101         this is already done in m4/init.m4.
102         * tests/dejagnu2.test: Run $MAKE, don't only grep.  Use
103         -Wno-override, and make sure we get a warning without.
104         * tests/exeext2.test, tests/substtarg.test: Use -Wno-override,
105         and make sure we get a warning without.
106         * tests/exeext3.test, tests/java2.test, tests/nolink.test,
107         tests/subpkg.test, tests/vartest.test: Use -Wno-override.
108         * tests/txinfo13.test: Use installcheck-local instead of overriding
109         installcheck.
110         * tests/txinfo2.test: Run $MAKE on the real Makefile (this test
111         used to succeed thanks to a failure...)
112         * tests/location.test: Adjust expected messages.
113         * tests/Makefile.am (XFAIL_TESTS): Add txinfo5.test.
114
115 2003-04-12  Raja R Harinath  <harinath@acm.org>
116
117         * lib/Automake/DisjConditions.pm (true): Don't cache answer.
118         (invert): Update comment.
119         (_simplify): Remove.
120         (simplify): Implement using invert().
121         * lib/Automake/tests/DisjConditions.pl (test_simplify):
122         Update to reflect changes.
123
124 2003-04-12  Alexandre Duret-Lutz  <adl@gnu.org>
125
126         * automake.in (scan_autoconf_files): Augment the error message
127         about AM_INIT_AUTOMAKE not found.
128         Suggested by Bruno Haible.
129
130         * lib/Automake/Version.pm: New file.
131         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Version.pm.
132         * lib/Automake/tests/Version.pl: New file.
133         * lib/Automake/tests/Makefile.am (TESTS): Add Version.pl.
134         * tests/Makefile.am (TESTS): Remove version5.test.
135         * tests/version5.test: Delete.  Move the tests to Version.pl.
136         * automake.in (version_split, version_compare, version_check): Move ...
137         * lib/Automake/Version.pm (split, compare, check): ... here.
138
139 2003-04-11  Alexandre Duret-Lutz  <adl@gnu.org>
140
141         * lib/Automake/tests/Condition.pl (test_reduce_and)
142         (test_reduce_or): Cosmetics.
143         * lib/Automake/tests/DisjConditions.pl (test_sub_conditions):
144         Fix a comment.
145         * lib/Automake/DisjConditions.pm (sub_conditions): Add missing C<...>
146         in comment.
147         * tests/yacc8.test, configure.in: Update copyright year.
148
149 2003-04-10  Richard Dawe  <rich@phekda.freeserve.co.uk>
150
151         * configure.in: Get the build platform name.  Define
152         MODIFICATION_DELAY as the time to wait after modifying a file,
153         to cope with timestamp granularity issues, depending
154         on the platform.
155         * tests/defs.in: Define `sleep' using MODIFICATION_DELAY.
156
157 2003-04-10  Eric Siegerman  <eric_97@pobox.com>  (tiny change)
158
159         * automake.texi (Public macros): Clarify that the new
160         AM_INIT_AUTOMAKE variant is preferred, and the old one
161         deprecated.  Copy-edit the rest of the AM_INIT_AUTOMAKE item.
162         (Hello): Caution that the example uses the deprecated
163         AC_INIT/AM_INIT_AUTOMAKE syntax, and xref to the discussion.
164
165 2003-04-10  Alexandre Duret-Lutz  <adl@gnu.org>
166
167         Retain all variable definitions until the whole Makefile.am has
168         been processed, then output all variables in one step, at the top
169         of Makefile.in.  (Older revisions used to output user variables
170         before generating Automake targets, and to mix Automake variables
171         with Automake targets, preventing redefinitions of previously
172         output variables.)
173
174         * automake.in (%var_pretty): New variable.
175         (VAR_ASIS, VAR_PRETTY): New constants.
176         (@var_list): Rename as ...
177         (@var_order): ... this.
178         (initialize_per_input): Clear %var_pretty.
179         (handle_variables): New function, extracted from ...
180         (read_main_am_file): ... here.
181         (generate_makefile): Call handle_variable after everything else.
182         (handle_dist): Use define_pretty_variable, not pretty_print.
183         (pretty_print): Delete.
184         (macro_define): Augment with $COMMENT and $PRETTY parameters.
185         Update %var_comment, %var_pretty, and @var_order.  Adjust callers.
186         (variable_pretty_output): Merge with ...
187         (variable_output): ... this, and choose the prettiness on a
188         per-condition basis.
189         (append_comments): Delete.  This work is now done by macro_define.
190         (read_am_file, file_contents_internal): Don't call append_comments
191         nor update @var_list, adjust calls to macro_define.
192         (handle_subdirs): Don't explicitly output RECURSIVE_TARGETS,
193         just mark it as VAR_PRETTY.
194         * tests/exeext.test: Make sure bin_PROGRAMS is output only once.
195         Report from Jim Meyering.
196
197 2003-04-06  Alexandre Duret-Lutz  <adl@gnu.org>
198
199         * automake.in (handle_installdirs): Rename as ...
200         (handle_install): ... this.  Define maybe_BUILT_SOURCES.
201         (generate_makefile): Adjust call to handle_install.
202         * lib/am/install.am (install): Use %maybe_BUILT_SOURCES%.
203         * automake.texi (Sources, Built sources example): BUILT_SOURCES
204         is honored by `make install' too.
205         * tests/check3.test: Make sure that `make install' also depends
206         upon BUILT_SOURCES.
207         Report from Alexander Turbov.
208
209         * lib/am/libs.am (ARFLAGS): Define.
210         * automake.in (handle_libraries): Use `$(ARFLAGS)' instead of
211         hard-coding `cru'.
212         * automake.texi (A Library): Explain how AR, ARFLAGS and RANLIB
213         are used, and how they can be overridden.
214         (Program and Library Variables): Adjust to show `$(ARFLAGS)'
215         instead of `cru'
216         * tests/ar.test: Rewrite to test for AR, ARFLAGS, and RANLIB.
217         * tests/ranlib.test: Delete, obsoleted by ar.test.
218         * tests/Makefile.am (TESTS): Remove ranlib.test.
219         Report from Paul Thomas.
220
221 2003-04-03  Alexandre Duret-Lutz  <adl@gnu.org>
222
223         * automake.in (check_trailing_slash): New function (variation on
224         a patch by Peter Muir).  Diagnose whitespaces following trailing
225         backslash.
226         (read_am_file): Use it.
227         * tests/backsl4.test: New file.
228         * tests/Makefile.am (TESTS): Add backsl4.test.
229         Reported by Peter Muir.
230
231 2003-03-29  Raja R Harinath  <harinath@acm.org>
232
233         Speedup Automake::DisjConditions::invert().
234         * lib/Automake/Condition.pm (multiply): New.
235         * lib/Automake/DisjConditions.pm (_multiply): Use it.
236         (sub_conditions): Likewise.
237
238         * lib/Automake/Condition.pm (reduce): Rename to ...
239         (reduce_and): ... this.
240         (reduce_or): New.
241         * lib/Automake/DisjConditions.pm (_multiply): Use reduce_or().
242         * lib/Automake/tests/Condition.pl (test_reduce): Rename to ...
243         (test_reduce_and): ... this.
244         (test_reduce_or): New.
245         * lib/Automake/tests/DisjConditions.pl
246         (test_invert): Update to reflect effect of reduce_or().
247         (test_simplify): Don't skip invert() on larger inputs.
248
249 2003-03-29  Raja R Harinath  <harinath@cs.umn.edu>
250
251         * tests/yacc8.test: Add a $sleep before modifying Makefile.am so
252         that timestamp will change.
253
254 2003-03-23  Akim Demaille  <akim@epita.fr>
255             Alexandre Duret-Lutz  <adl@gnu.org>
256
257         * lib/am/tags.am (TAGS): Use --etags-include instead of --include,
258         when supported by etags (Exuberant Ctags).
259         * tests/tagsub.test: Rewrite to _run_ the `tags' rule.
260
261 2003-03-20  Alexandre Duret-Lutz  <adl@gnu.org>
262
263         For Debian Bug #185388:
264         * automake.texi (Extending): Augment the install-exec-hook
265         discussion with an example how to symlink a versioned binary.
266         * tests/insthook.test: Rewrite to test the above example.
267         Report from James R. Van Zandt.
268
269 2003-03-19  Alexandre Duret-Lutz  <adl@gnu.org>
270
271         * Makefile.am (maintainer-check): Allow `automake:' tokens,
272         occuring in location.test.  Automake now has 5 legitimate
273         unsubstituted @strings@.
274
275         * tests/aclocal4.test: Require GNU make.
276
277 2003-03-14  Alexandre Duret-Lutz  <adl@gnu.org>
278
279         * tests/aclocal4.test: New file.  Test for the ACLOCAL_M4 bug below.
280         * tests/Makefile.am (TESTS): Add aclocal4.test.
281
282 2003-03-14  Jim Meyering  <jim@meyering.net>
283
284         * automake.in (scan_aclocal_m4): Define ACLOCAL_M4 even in
285         subdirectories.  Makefile.in depends on that variable.
286
287 2003-03-13  Alexandre Duret-Lutz  <adl@gnu.org>
288
289         * m4/init.m4: Remove a leftover comment from the pre-1.7 era.
290
291         Fix for PR automake/386:
292         * m4/init.m4: Require Autoconf 2.55.
293         Reported by Owen Taylor.
294
295         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
296         (?GENERIC?%EXT%.lo): Use `mv -f' instead of `mv' in FASTDEP mode.
297         Suggested by Matthias Andree.
298
299         * tests/README: Typo.
300
301 2003-03-08  Alexandre Duret-Lutz  <adl@gnu.org>
302
303         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
304         (?GENERIC?%EXT%.lo): Hide the if/then/else machinery for FASTDEP.
305         Just echo the gcc command.
306         Suggested by Karl Berry.
307
308 2003-03-06  Alexandre Duret-Lutz  <adl@gnu.org>
309
310         * lib/am/depend2.am (?GENERIC?%EXT%.lo): Do not use
311         `test -f foo || echo $(srcdir)/` to emulate a VPATH search when
312         outputing suffix rules.  This follows 2003-02-25's change.
313         * lib/am/lex.am (?GENERIC?%EXT%%DERIVED-EXT%): Likewise.
314         * lib/am/yacc.am (?GENERIC?%EXT%%DERIVED-EXT%): Likewise.
315
316 2003-03-05  Alexandre Duret-Lutz  <adl@gnu.org>
317
318         * automake.texi (Requirements) <AC_CONFIG_FILES>: Files listed
319         with AC_CONFIG_FILES are cleaned by `make distclean'.  Don't
320         pretend otherwise.
321         Reported by Rafael Laboissiere.
322
323 2003-03-04  Andreas Buening  <andreas.buening@nexgo.de>
324
325         * lib/mdate-sh: Find out which column of the ls -l output contains
326         the month. Do not assume it is at least the fifth column.
327
328 2003-02-26  Alexandre Duret-Lutz  <adl@gnu.org>
329
330         * automake.texi (Emacs Lisp): Mention that `dist_' can be used.
331
332         * automake.texi (Emacs Lisp): Instruct people to use lisp_DATA
333         instead of lisp_LISP when they don't want byte-compilation.
334         Don't mention ELCFILES anymore.
335         * automake.in (handle_data): Allow lisp_DATA.
336         * tests/lisp5.test: New file.
337         * tests/Makefile.am (TESTS): Add lisp5.test.
338
339         * automake.in (handle_emacs_lisp): Don't build *.elc files
340         if ELCFILES was set empty.
341         * tests/lisp4.test: New file.
342         * tests/Makefile.am (TESTS): Add lisp4.test.
343         Reported by Simon Josefsson.
344
345         * tests/lex3.test, tests/lex5.test: Require flex.
346         Reported by Leo Davis.
347
348 2003-02-25  Alexandre Duret-Lutz  <adl@gnu.org>
349
350         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj): Do not
351         use the `test -f foo || echo $(srcdir)/` to emulate a VPATH search
352         when outputing suffix rules.
353         * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.dvi)
354         (?GENERIC?%SOURCE_SUFFIX%.pdf): Likewise.
355         Suggested by Bruno Haible.
356
357         * automake.in (read_am_file): Catch trailing backslashes on last line.
358         * tests/backsl3.test: New file.
359         * tests/Makefile.am (TESTS): Add backsl3.test.
360         Reported by Akim Demaille.
361
362 2003-02-24  Alexandre Duret-Lutz  <adl@gnu.org>
363
364         * ChangeLog: Move 2002's entries to ...
365         * ChangeLog.02: ... this new file.
366         * Makefile.am (EXTRA_DIST): Add ChangeLog.02.
367
368 2003-02-24  Richard Dawe  <rich@phekda.freeserve.co.uk>
369
370         * tests/version7.test: Use $sleep to sleep before updating
371         the version, to work around timestamp inconsistencies in Windows.
372
373 2003-02-24  Bruno Haible  <bruno@clisp.org>
374             Alexandre Duret-Lutz  <adl@gnu.org>
375
376         * lib/am/texibuild.am: Don't remove the target info files. Instead,
377         back up and restore them if makeinfo fails.
378         * tests/txinfo20.test: New file.
379         * tests/Makefile.am (TESTS): Add txinfo20.test.
380
381 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
382
383         * automake.texi (FAQ, CVS, maintainer-mode, wildcards)
384         (distcleancheck): Fix typos and other errors reported by Karl
385         Berry.
386
387 2003-02-20  Alexandre Duret-Lutz  <adl@gnu.org>
388
389         * lib/am/texibuild.am (%SOURCE_SUFFIX%%DEST_SUFFIX%): Use $(...)
390         instead of ${...}.
391
392         * tests/defs.in: Handle required=ro-dir.
393         * tests/destdir.test: Use this.
394
395 2003-02-19  Richard Dawe  <rich@phekda.freeserve.co.uk>
396
397         * lib/am/distdir.am (distcheck): Strip any leading DOS drive
398         from dc_install_base.
399
400 2003-02-19  Alexandre Duret-Lutz  <adl@gnu.org>
401
402         * lib/am/texinfos.am (install-info-am, uninstall-info-am): Install
403         DJGPP-style *.iNN info files.
404         (maintainer-clean-aminfo): Rewrite using the same pattern
405         as in uninstall-info-am.
406         * lib/am/texibuild.am (%SOURCE_SUFFIX%%DEST_SUFFIX%): Erase
407         DJGPP-style *.iNN info files before running $(MAKEINFO).
408         * tests/txinfo19.test: New file.
409         * tests/Makefile.am (TESTS): Add txinfo19.test.
410
411 2003-02-18  Richard Dawe  <rich@phekda.freeserve.co.uk>
412
413         * lib/depcomp (dashmstdout): Cope with DOS filenames in
414         dependencies.
415
416 2003-02-17  Alexandre Duret-Lutz  <adl@gnu.org>
417
418         * lib/depcomp (makedepend): Don't pass $object to makedepend.
419         Reported by Stepan Kasal.
420
421 2003-02-12  Alexandre Duret-Lutz  <adl@gnu.org>
422
423         * tests/defs.in: Handle required=makedepend.
424
425         * Makefile.am (maintainer-check): Update the diff check
426         to account for the recent @SHELL@ substitution.
427
428 2003-02-11  Alexandre Duret-Lutz  <adl@gnu.org>
429
430         * lib/depcomp: Do not put comments on the `icc)' line.
431
432         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
433         versions.
434
435         Fix for PR automake/381:
436         * automake.in (handle_gettext): Do not print diagnostics
437         about po/ and intl/ missing from SUBDIRS if po/ does not
438         exist.  Warn if `SUBDIRS = intl' is used although libintl
439         is 'external'.
440         * tests/gettext.test: Make sure diagnostics are not output
441         when po/ does not exist.
442         * tests/gettext2.test: Test for unwanted intl/.
443         PR from Alexander Turbov, fix suggested by Bruno Haible.
444
445         * m4/depend.m4: Grep depcomp's stderr for icc warnings about
446         ignored options.
447         * lib/depcomp (icc): New mode.
448         * tests/depcomp5.test: New file.
449         * tests/defs.in: Handle required=icc.
450         * tests/Makefile.am (TESTS): Add it.
451
452         Temporary hack for PR automake/381:
453         * automake.in (handle_gettext): Turn missing po/ and intl/ errors
454         into -Wsyntax warnings.
455
456 2003-02-10  Richard Dawe  <rich@phekda.freeserve.co.uk>
457
458         * Makefile.am: Substitute @SHELL@ in automake.in and aclocal.in.
459         This makes the setting of SHELL work for DJGPP.
460
461 2003-02-10  Alexandre Duret-Lutz  <adl@gnu.org>
462
463         For PR automake/385:
464         * lib/depcomp (makedepend): Strip any libtool call, before
465         running makedepends.
466         * tests/depcomp4.test: New file.
467         * tests/Makefile.am (TESTS): Add it.
468         Reported by Jeff Squyres.
469
470         Related to PR automake/385:
471         * lib/depcomp (dashmstdout): Do not use `-o /dev/null', or gcc will
472         write dependencies to /dev/null.  `-o /dev/null' was added
473         on 2002-06-13 just because I tried to replace `-o foo.o' by something
474         else and didn't thought about removing it entirely.
475         * tests/depcomp3.test: New file.
476         * tests/Makefile.am (TESTS): Add it.
477
478         * automake.in (BEGIN): Override $ENV{'SHELL'} with ./configure's
479         SHELL for DJGPP.
480         Suggested by Richard Dawe.
481
482 2003-02-09  Alexandre Duret-Lutz  <adl@gnu.org>
483
484         * automake.texi (FAQ, CVS, maintainer-mode, wildcards)
485         (distcleancheck): New nodes.
486
487 2003-02-06  Alexandre Duret-Lutz  <adl@gnu.org>
488
489         * automake.in (scan_autoconf_files): Don't complain that
490         AM_INIT_AUTOMAKE comes from an old version if it was not found.
491
492 2003-02-05  Alexandre Duret-Lutz  <adl@gnu.org>
493
494         * automake.in (am_install_var): Simplify filtering of
495         variable_loc_and_value_as_list_recursive's output.
496
497 2003-02-04  Alexandre Duret-Lutz  <adl@gnu.org>
498
499         * m4/init.m4 (_AC_AM_CONFIG_HEADER_HOOK): Recompute
500         indexes of header files so we create stamp files with
501         the right numbers when config.status is run on some headers.
502         * tests/stamph2.test: Check for this.
503         Reported by Sander Niemeijer.
504
505 2003-02-02  Alexandre Duret-Lutz  <adl@gnu.org>
506
507         * automake.in (vars_scanned): Move near traverse_variable_recursively.
508         (traverse_variable_recursively,
509         traverse_variable_recursively_worker): Accept a $COND_FILTER argument
510         to filter out conditions during recursion.  Don't recurse into
511         undefined variables.  Don't pass empty results to &FUN_COLLECT.
512         (value_to_list): Remove, was used by
513         variable_value_as_list_recursive_worker only.
514         (variable_value_as_list_recursive_worker): Rewrite using
515         traverse_variable_recursively.  Remove the $parent argument.
516         (variable_value_as_list_recursive,
517         variable_loc_and_value_as_list_recursive): Adjust calls
518         to variable_value_as_list_recursive_worker.  Don't reset
519         %vars_scanned.
520         * tests/cond3.test: Don't expect empty helper variables,
521         we don't output them anymore.
522         * tests/cond30.test: Use an undefined variable.
523
524         * automake.in (handle_programs): Strip $(EXEEXT) before
525         calling &check_canonical_spelling.
526         * tests/exeext.test: Make sure we don't use a
527         maude3__EXEEXT__OBJECTS variable.
528
529 2003-02-02  Jeremy Nimmer  <jwnimmer@alum.mit.edu>  (tiny change)
530
531         For Debian Bug #39542:
532         * automake.texi (Invoking Automake, Optional): Document how
533         AC_CONFIG_AUX_DIR interacts with missing files.
534
535 2003-02-02  Alexandre Duret-Lutz  <adl@gnu.org>
536
537         * lib/Automake/DisjConditions.pm (_permutations_worker)
538         (permutations): Remove, so that people aren't tempted to use it.
539         * lib/Automake/tests/DisjConditions.pl (tests_permutations): Remove.
540
541         * automake.in (variable_conditions_recursive): Remove.
542         (variable_conditionally_defined): Rewrite using
543         traverse_variable_recursively.
544
545         * automake.in (traverse_variable_recursively,
546         traverse_variable_recursively_worker): Pass one merged Condition
547         instead of a stack of conditions to &FUN_STORE and &FUN_COLLECT.
548         (transform_variable_recursively, define_objects_from_sources)
549         (handle_lib_objects, variable_conditions_recursive): Adjust usage.
550
551 2003-02-01  Alexandre Duret-Lutz  <adl@gnu.org>
552
553         * automake.in (handle_lib_objects): Compute _DEPENDENCIES variables
554         using transform_variable_recursively instead of
555         variable_conditions_recursive and variable_value_as_list_recursive
556         to avoid combinatorial explosion.
557         (handle_lib_objects_cond): Merge into handle_lib_objects.
558         * tests/cond11.test: Don't grep internal details in Makefile.in,
559         run $MAKE to make sure the resulting Makefile runs as expected.
560         * tests/cond29.test: Also exercise conditional _LDADD.
561         * tests/cond31.test, tests/cond32.test: New files.
562         * tests/Makefile.am (TESTS): Add tests/cond31.test and
563         tests/cond32.test.
564
565 2003-01-31  Alexandre Duret-Lutz  <adl@gnu.org>
566
567         * automake.in (handle_lib_objects_cond): Ignore -dlopen and
568         -dlpreopen in _LIBADD variables too.
569         (handle_LIBOBJS, handle_ALLOCA): New functions, extracted from
570         handle_lib_objects_cond.
571         * tests/libtool7.test: New file.
572         * tests/Makefile.am (TESTS): Add libtool7.test.
573
574         * automake.texi (Program and Library Variables): Clarify that
575         _LIBADD is for libraries and _LDADD for programs.
576
577         * automake.in (handle_source_transform): Correct typo from 2003-01-23.
578
579 2003-01-28  Alexandre Duret-Lutz  <adl@gnu.org>
580
581         Fix for PR automake/352:
582         * automake.in (transform_variable_recursively): If the destination
583         and the source variables are the same, delete the source variable
584         before defining the destination variable.
585         (handle_programs): Strip any $(EXEEXT) suffix from $one_file,
586         or this will confuse handle_source_transform.
587         (append_exeext): Rewrite using transform_variable_recursively.
588         * tests/cond29.test, tests/cond30.test: New files.
589         * tests/exeext.test: Run ./configure and make, this uncovered
590         the above handle_programs issue.
591         * tests/Makefile.am (TESTS): Add cond29.test and cond20.test.
592
593         * automake.in (%subobjvar): Replace by ...
594         (%gen_varname): ... this.
595         (subobjname): Replace by ...
596         (gen_varname): ... this.
597         (initialize_per_input): Clean gen_varname instead of subobjname.
598         (transform_variable_recursively): New function, extracted
599         from define_objects_from_sources.
600         (define_objects_from_sources): Use transform_variable_recursively.
601         Remove the unused $parent argument.
602         (handle_source_transform): Adjust call to define_objects_from_sources.
603
604 2003-01-23  Alexandre Duret-Lutz  <adl@gnu.org>
605
606         * automake.in (@substfroms, @substtos): Move near
607         traverse_variable_recursively.
608         (traverse_variable_recursively, traverse_variable_recursively_worker):
609         New functions, extracted from define_objects_from_sources.
610         (define_objects_from_sources): Rewrite using
611         traverse_variable_recursively.
612         (handle_source_transform): Use variables_conditionally_defined
613         instead of calling variable_conditions_recursive directly.
614         Adjust the call to define_objects_from_sources; there is no need
615         to reset @substtos, @substfroms, and %vars_scanned now.
616         (variable_conditions_recursive): Rewrite using
617         traverse_variable_recursively.
618         (variable_conditions_recursive_sub): Remove.
619         (variable_conditionally_defined): Fix condition comparison (the
620         consequence was that DIST_SUBDIRS was always output).
621         * lib/Automake/Condition.pm (merge): Allow merging several
622         conditions at once.
623
624 2003-01-22  Alexandre Duret-Lutz  <adl@gnu.org>
625
626         * automake.texi (Python): Explain that directory variables start
627         with either ${prefix} or ${exec_prefix}, and point to the
628         `Installation Directory Variables' section of the Autoconf manual.
629
630 2003-01-21  Alexandre Duret-Lutz  <adl@gnu.org>
631
632         * lib/am/distdir.am (top_distdir, distdir): Define these
633         variables only in top level Makefile.  Redefine $(top_distdir)
634         as $(distdir).
635         (distdir): Fix passing of $(top_distdir) to sub-makes.
636         * automake.in (handle_dist): Do not define the DISTDIR and
637         TOP_DISTDIR transformations.  We don't need them anymore.
638         * automake.texi (Dist): Reorder the dist-hook section, and move
639         the DIST_SUBDIRS paragraph earlier.  Document distdir and
640         top_distdir.
641         * tests/subpkg.test: Update to check for $(distdir) and
642         $(top_distdir).
643
644 2003-01-19  Alexandre Duret-Lutz  <adl@gnu.org>
645
646         Rename more files to accomodate 8+3 file systems, and adjust the
647         vocabulary at the same time: AM_CONDITIONAL defines "conditionals",
648         and we call "condition" a conjunction of "conditionals".
649         * lib/am/Conditional.pm: Rename to lib/am/Condition.pm.
650         * lib/am/tests/Conditional.pl: Rename to lib/am/tests/Condition.pl.
651         * lib/am/ConditionalSet.pm: Rename to lib/am/DisjConditions.pm.
652         * lib/am/tests/ConditionalSet.pl: Rename to
653         lib/am/tests/DisjConditions.pl
654         * lib/am/Conditional.pm (condition_negate): Rename to ...
655         * lib/am/Condition.pm (conditional_negate): ... this.
656         * automake.in: Adjust references to Condition and DisjConditions.
657         (check_ambiguous_conditional, conditional_ambiguous_p): Rename to ...
658         (check_ambiguous_condition, condition_ambiguous_p): ... these.
659
660         * tests/README: New file.
661
662         * automake.texi (Conditional Programs): Show a sample Makefile.am.
663         Remind $(EXEEXT) must be appended to configure substitutions.
664         Show how Automake conditionals can be used instead.
665         * tests/exeext.test (check_PROGRAMS): Make sure EXEEXT is also
666         appended to conditionally defined programs.
667
668 2003-01-16  Jim Meyering  <jim@meyering.net>
669
670         Accept --help and --version, and lots of syntactic clean-up.
671         * lib/install-sh: Use consistent indentation, two spaces per level.
672         (scriptversion): New variable.
673         Change initializations like `variable=""' to `variable='.
674         (usage): New variable.
675         Use `test', not `['.
676         Use `test -z "$var"', not `[ x"$var" = x ]'.
677         Use `test -n "$var"', not `[ x"$var" != x ]'.
678         Alphabetize case entries.
679         Accept --help and --version options.
680         Remove unnecessary `else :' clauses.
681         Add a `Local variables' eval block to help emacs users update
682         the time-stamp variable added above.
683         Mostly from Karl Berry.
684
685 2003-01-16  Alexandre Duret-Lutz  <adl@gnu.org>
686
687         * m4/python.m4 (AM_PATH_PYTHON) <_AM_PYTHON_INTERPRETER_LIST>: Add
688         python2.3.
689
690         * m4/python.m4 (AM_PATH_PYTHON): Query distutils for `pythondir'
691         or `pyexecdir', for the sake of 64-bit distributions that usually
692         use lib64/ instead of lib/.  Fall back to the default directory
693         if it doesn't work.
694         Suggested by Gwenole Beauchesne.
695
696 2003-01-14  Alexandre Duret-Lutz  <adl@gnu.org>
697
698         For PR automake/382:
699         * automake.texi (Yacc and Lex): Document `AM_YFLAGS = -d'.
700         Explain BUILT_SOURCES is usually needed in this case.
701         Reported by William S Fulton.
702
703 2003-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
704
705         Rename some files for the sake of 8+3 file systems.
706         * tests/aclocali.test:     Rename to tests/aclocal.test.
707         * tests/aclocali1.test:    Rename to tests/aclocal2.test.
708         * tests/aclocalii.test:    Rename to tests/aclocal3.test.
709         * tests/acoutput.test:     Rename to tests/acoutpt.test.
710         * tests/acoutput2.test:    Rename to tests/acoutpt2.test.
711         * tests/acouttbs.test:     Rename to tests/acoutbs.test.
712         * tests/acouttbs2.test:    Rename to tests/acoutbs2.test.
713         * tests/autoheader.test:   Rename to tests/autohdr.test.
714         * tests/autoheader2.test:  Rename to tests/autohdr2.test.
715         * tests/condincl.test:     Rename to tests/condinc.test.
716         * tests/condincl2.test:    Rename to tests/condinc2.test.
717         * tests/distcommon.test:   Rename to tests/distcom.test.
718         * tests/distcommon2.test:  Rename to tests/distcom2.test.
719         * tests/distcommon3.test:  Rename to tests/distcom3.test.
720         * tests/installsh.test:    Rename to tests/instsh.test.
721         * tests/installsh2.test:   Rename to tests/instsh2.test.
722         * tests/instdata.test:     Rename to tests/instdat.test.
723         * tests/instdata2.test:    Rename to tests/instdat2.test.
724         * tests/libobj12b.test:    Rename to tests/libobj13.test.
725         * tests/link_f_c.test:     Rename to tests/link_fc.test.
726         * tests/link_f_c_cxx.test: Rename to tests/link_fccxx.test.
727         * tests/link_f_cxx.test:   Rename to tests/link_fcxx.test.
728         * tests/nodefine.test:     Rename to tests/nodef.test.
729         * tests/nodefine2.test:    Rename to tests/nodef2.test.
730         * tests/required.test:     Rename to tests/reqd.test.
731         * tests/required2.test:    Rename to tests/reqd2.test.
732         * tests/sourcesub.test:    Rename to tests/srcsub.test.
733         * tests/sourcesub2.test:   Rename to tests/srcsub2.test.
734         * tests/specflags.test:    Rename to tests/specflg.test.
735         * tests/specflags2.test:   Rename to tests/specflg2.test.
736         * tests/specflags3.test:   Rename to tests/specflg3.test.
737         * tests/specflags6.test:   Rename to tests/specflg6.test.
738         * tests/specflags7.test:   Rename to tests/specflg7.test.
739         * tests/specflags8.test:   Rename to tests/specflg8.test.
740         * tests/specflags9.test:   Rename to tests/specflg9.test.
741         * tests/subdircond.test:   Rename to tests/subcond.test.
742         * tests/subdircond2.test:  Rename to tests/subcond2.test.
743         * tests/subdircond3.test:  Rename to tests/subcond3.test.
744         * tests/texinfo.test:      Rename to tests/txinfo.test.
745         * tests/texinfo2.test:     Rename to tests/txinfo2.test.
746         * tests/texinfo3.test:     Rename to tests/txinfo3.test.
747         * tests/texinfo4.test:     Rename to tests/txinfo4.test.
748         * tests/texinfo5.test:     Rename to tests/txinfo5.test.
749         * tests/texinfo6.test:     Rename to tests/txinfo6.test.
750         * tests/texinfo7.test:     Rename to tests/txinfo7.test.
751         * tests/texinfo8.test:     Rename to tests/txinfo8.test.
752         * tests/texinfo9.test:     Rename to tests/txinfo9.test.
753         * tests/texinfo10.test:    Rename to tests/txinfo10.test.
754         * tests/texinfo13.test:    Rename to tests/txinfo13.test.
755         * tests/texinfo16.test:    Rename to tests/txinfo16.test.
756         * tests/texinfo17.test:    Rename to tests/txinfo17.test.
757         * tests/texinfo18.test:    Rename to tests/txinfo18.test.
758         * tests/Makefile.am (TESTS): Adjust.
759         * ChangeLog.1996: Rename to ChangeLog.96.
760         * ChangeLog.1998: Rename to ChangeLog.98.
761         * ChangeLog.2000: Rename to ChangeLog.00.
762         * ChangeLog.2001: Rename to ChangeLog.01.
763         * Makefile.am (EXTRA_DIST): Adjust.
764         Reported by Richard Dawe.
765
766 2003-01-13  Richard Dawe  <rich@phekda.freeserve.co.uk>  (tiny change)
767
768         * lib/am/distdir.am (distcheck): '=' is not valid in DOS filenames.
769         Use '_build' and '_inst' instead of '=build' and '=inst'.
770         * tests/man2.test: Reflect change automake: check for files in
771         '_build' and '_inst' directories instead of '=build' and '=inst'.
772
773 2003-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
774
775         Use `_dirstamp' when the file-system doesn't support `.dirstamp'.
776         * m4/lead-dot.m4: New file.
777         * m4/Makefile.am (dist_m4data_DATA): Add lead-dot.m4
778         * m4/init.m4 (AM_INIT_AUTOMAKE): Require AM_SET_LEADING_DOT.:
779         * m4/depend.m4 (AM_SET_DEPDIR): Require AM_SET_LEADING_DOT. Define
780         DEPDIR using am__leading_dot.
781         * automake.in (require_build_directory): Define am__dirstamp, a new
782         variable for the dirstamp basename, based on am__leading_dot.
783         * tests/subobj6.test: Move all `test -f' into Makefiles, so we can
784         use $(am__dirstamp).
785         Reported by Richard Dawe.
786
787         * tests/gnits2.test, tests/pr300-prog.test, tests/transform.test:
788         Move all `test -f' into Makefiles, so we can honor $(EXEEXT) when
789         testing for programs.
790         Reported by Richard Dawe.
791
792 2003-01-10  Alexandre Duret-Lutz  <adl@gnu.org>
793
794         * Makefile.am (maintainer-check): Suggest using $sleep instead of
795         sleep 2.
796         * tests/defs.in (sleep): New variable.
797         * tests/asm.test, tests/confsub.test, tests/lisp3.test,
798         tests/texinfo16.test, tests/warnopts.test, tests/yaccvpath.test:
799         Use $sleep instead of sleep 2, to work around timestamp
800         inconsistencies in Windows.
801         Reported by Richard Dawe.
802
803         * Makefile.am (maintainer-check): Do not require SHELL=/bin/sh
804         after $MAKE -e.
805         * tests/ansi3.test, tests/ansi5.test, tests/cond22.test,
806         tests/man2.test, tests/subobj3.test, tests/suffix8.test,
807         tests/suffix11.test: Do not set SHELL=/bin/sh after $MAKE -e.
808         $SHELL is overridden by tests/defs, so it won't hurt even
809         if $MAKE -e uses the $SHELL envvar.
810         * tests/ansi.test, tests/insh2.test, tests/texinfo.test,
811         tests/texinfo8.test: Use SHELL=$SHELL, not SHELL=/bin/sh.
812         Reported by Richard Dawe.
813
814         Build elisp files all at once instead of one by one.
815         * automake.in (handle_emacs_lisp): Define am__ELFILES.  Add
816         elc-stamp to all's dependencies.
817         * lib/am/lisp.am (elc-stamp): New rule, build all *.elc files.
818         (.el.elc): Rewrite to call elc-stamp if $@ doesn't exist.
819         (clean-lisp): Clean elc-stamp.
820         * lib/elisp-comp: Reindent.  Erase the temporatry directory
821         from a trap.  Propagate Emacs's exit status.
822         * tests/lisp3.test: New file.
823         * tests/Makefile.am (TESTS): Add lisp3.test.
824         Reported by Ryan T. Sammartino.
825
826 2003-01-09  Akim Demaille  <akim@epita.fr>
827
828         * automake.texi: Prefer $(FOO) to @FOO@ in the documentation.
829
830 2003-01-08  Alexandre Duret-Lutz  <adl@gnu.org>
831
832         * m4/lispdir.m4: Register EMACS and EMACSLOADPATH as precious
833         variables.  Suggested by Ryan T. Sammartino.
834
835 2003-01-05  Alexandre Duret-Lutz  <adl@gnu.org>
836
837         * automake.in (macro_define): Add missing `{$cond}' (typo from
838         2002-09-18).
839         ($gen_copyright): Append year 2003.
840         (version): Increase year.
841
842         * tests/defs.in: Substitute aclocaldir instead of running
843         the installed aclocal.  Otherwise Libtool and Gettext
844         tests get skipped when aclocal doesn't preexist.
845         Reported by Imacat.
846         * tests/listval.test, tests/suffix2.test: Remove pointless -I
847         argument to aclocal.
848
849 -----
850
851 Copyright (C) 2003  Free Software Foundation, Inc.
852
853 This file is part of GNU Automake.
854
855 GNU Automake is free software; you can redistribute it and/or modify
856 it under the terms of the GNU General Public License as published by
857 the Free Software Foundation; either version 2, or (at your option)
858 any later version.
859
860 GNU Automake is distributed in the hope that it will be useful,
861 but WITHOUT ANY WARRANTY; without even the implied warranty of
862 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
863 GNU General Public License for more details.
864
865 You should have received a copy of the GNU General Public License
866 along with autoconf; see the file COPYING.  If not, write to
867 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
868 Boston, MA 02111-1307, USA.