(handle_source_transform): Replace 'grep' with 'map'.
[platform/upstream/automake.git] / ChangeLog
1 2003-08-02  Raja R Harinath  <harinath@acm.org>
2
3         * automake.in (handle_source_transform): Replace 'grep' with 'map'.
4         (register_language): Replace 'grep' with 'foreach' modifier.
5
6 2003-08-01  Raja R Harinath  <harinath@acm.org>
7
8         * lib/Automake/Variables.pm (variables): Return a list of
9         Automake::Variable instances, not a list of strings.
10         (dump): Remove support for being invoked with a string.
11         (variables_dump): Adapt to these changes.
12         * automake.in (check_typos): Likewise.
13         (am_primary_prefixes): Likewise.
14
15 2003-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16
17         * lib/depcomp (aix): Support AIX Compiler version 6.
18
19 2003-07-31  Alexandre Duret-Lutz  <adl@gnu.org>
20
21         * automake.texi (A Shared Library): Rewrite and split into
22         subsections.  Valuable comments from Norman Gray, Harlan Stenn,
23         Tim Van Holder, and Guido Draheim.
24         * tests/ltcond.test, tests/ltcond2.test, tests/ltconv.test: New files.
25         * tests/Makefile.am (TESTS): Add them.
26
27 2003-07-30  Alexandre Duret-Lutz  <adl@gnu.org>
28
29         * automake.in (handle_single_transform_list): Complain about
30         foo.$(OBJEXT) being created both with libtool and without, not
31         about foo.lo.
32         Report from Tim Van Holder.
33
34 2003-07-29  Alexandre Duret-Lutz  <adl@gnu.org>
35
36         * Makefile.am (FETCHFILES, fetch): Add config-ml.in and
37         symlink-tree.
38         * lib/config.sub, lib/config-ml.in, lib/texinfo.tex: New
39         upstream versions.
40
41 2003-07-28  Alexandre Duret-Lutz  <adl@gnu.org>
42
43         * automake.in (handle_configure): Cosmetic change to avoid
44         a maintainer-check complaint.
45
46 2003-07-27  Alexandre Duret-Lutz  <adl@gnu.org>
47
48         * lib/Automake/Variable.pm (@EXPORT): Remove variable_dump.
49         (variable_dump): Replace by ...
50         (dump): ... this method.
51         (rdef, _check_ambiguous_condition): Adjust to use ->dump.
52         (define, variables_dump): Adjust to use Automake::Variable::dump
53
54         * lib/am/compile.am (mostlyclean-compile): Do not erase core dumps.
55         * automake.texi (Built sources example): Adjust example.
56
57 2003-07-26  Alexandre Duret-Lutz  <adl@gnu.org>
58
59         * automake.in (get_object_extension, handle_languages)
60         (handle_single_transform_list, handle_compile, handle_compile)
61         (handle_texinfo_helper, handle_texinfo_helper, handle_man_pages)
62         (handle_tests, handle_minor_options, check_gnu_standards)
63         (lang_sub_obj, lang_c_rewrite, lang_c_finish, rule_define):
64         Simplify "if (defined $options{'X'})" into "if ($options{'X'})".
65
66         Complete changes from 2003-07-08.
67         * automake.in ($cmdline_use_dependencies, $use_dependencies): Remove,
68         replaced by $options{'no-dependencies'}.
69         ($global_options): Remove.
70         (%global_options): New variable.
71         (initialize_per_input): Empty %options.
72         (process_option_list): Take a location and %options ref argument,
73         process no-dependencies as other options.
74         (handle_options): Do not reparse the global options, just initialize
75         %options from %global_options and fill it with local options.
76         (handle_languages, handle_single_transform_list)
77         (handle_configure, check_cygnus): Adjust usage of
78         $options{'no-dependencies'}.
79         (make_paragraphs): Adjust usage of $options{'cygnus'}.
80         (parse_arguments): Set cygnus and no-dependencies in %global_options.
81         (scan_autoconf_traces) <AM_INIT_AUTOMAKE>: Call process_option_list
82         to fill %global_options.
83
84 2003-07-25  Alexandre Duret-Lutz  <adl@gnu.org>
85
86         * tests/remake4.test: Use `$MAKE distdir' instead of `$MAKE dist' to
87         avoid the use of tar.
88
89 2003-07-24  Alexandre Duret-Lutz  <adl@gnu.org>
90
91         * tests/gnuwarn2.test: Typo.
92
93         * tests/insthook.test: Use $MAKE, not make.
94
95         Fix missing rebuilds during `make dist' with BSD make.
96         * automake.in (generate_makefile): Do not push Makefile.in, and
97         Makefile.am into DIST_COMMON here.
98         * lib/am/configure.am (DIST_COMMON): Do it here, and use
99         %MAKEFILE-AM% and %MAKEFILE-IN% so that items in DIST_COMMON
100         actually match the targets.   Prefix `configure' with `$(srcdir)/'
101         to match the target.
102         * tests/remake4.test: New file.
103         * tests/Makefile.am (TESTS): Add remake4.test.
104         Report from Akim Demaille.
105
106 2003-07-23  Alexandre Duret-Lutz  <adl@gnu.org>
107
108         * automake.in (handle_multilib): Register all-multi.
109         (file_contents_internal): Insert \n when concatenating actions
110         from "factored" rules.
111         * lib/config-ml.in: New file, from GCC, including a patch
112         from Ralf Corsepius (see GCC's PR 11526).
113         * lib/symlink-tree.in: New file, from GCC.
114         * lib/Makefile.am (dist_script_DATA): Add config-ml.in and
115         symlink-tree.
116         * lib/am/clean.am (distclean-generic): Do not delete Makefile here...
117         (distclean, maintainer-clean): ... do it here.
118         * lib/am/depend.am (distclean-depend): Likewise, replace by
119         (distclean, maintainer-clean): ... these.
120         * lib/am/multilib.am (all-recursive, install-recursive,
121         mostlyclean-recursive, clean-recursive, distclean-recursive,
122         maintainer-clean-recursive): Remove these rules.
123         (mostlyclean-am, clean-am, distclean-am, maintainer-clean-am): Replace
124         by ...
125         (mostlyclean, clean, distclean, maintainer-clean): ... these.
126         (all-am): Remove, done in handle_multilib.
127         (install-am): Replace by ...
128         (install-exec-am): ... this.
129         * tests/Makefile.am (TESTS): Add multlib.test.
130         * tests/multlib.test: New file, based on a test case by
131         Ralf Corsepius
132
133 2003-07-23  Tom Tromey  <tromey@redhat.com>
134
135         * lib/missing (autom4te): Typo.
136
137 2003-07-16  Derek Price  <derek@ximbiot.com>
138
139         * automake.in (scan_autoconf_traces): Handle AC_CONFIG_LINKS.
140         (handle_configure): Handle adding AC_CONFIG_LINKS arguments to
141         distclean targets (CONFIG_CLEAN_FILES makefile var).
142         * NEWS: Note new handling of AC_CONFIG_LINKS.
143         * automake.texi (Other things Automake recognizes): Ditto.
144         * tests/Makefile.am (TESTS): Add new tests.
145         * tests/conflnk.test: New test that links are cleaned on distclean.
146         * tests/conflnk2.test: New test that source files for links are
147         distributed.
148
149 2003-07-15  Ralf Corsepius <corsepiu@faw.uni-ulm.de>  (tiny change)
150
151         * automake.in (scan_autoconf_traces): Trace AM_ENABLE_MULTILIB to
152         render $seen_multilib functional again.
153
154 2003-07-10  Raja R Harinath  <harinath@cs.umn.edu>
155
156         Avoid using refs as hash keys.
157         * lib/Automake/Variable.pm ($_traversal): New.
158         (reset): Reset $_traversal.
159         (_new): New attribute 'scanned'.
160         (%_vars_scanned): Remove.
161         (traverse_variable_recursively)
162         (traverse_variable_recursively_worker):
163         Use $_traversal instead of %_vars_scanned to detect recursively
164         defined variables.
165
166         * lib/am/configure.am (am--refresh): Silence.
167
168 2003-07-10  Alexandre Duret-Lutz  <adl@gnu.org>
169
170         * lib/Automake/Variable.pm (define): Make clear the diagnostic
171         about variable names starting with `_' is about *Make* variables.
172
173         For Debian Bug #193907:
174         * automake.texi (Clean): make maintainer-clean should still
175         allow ./configure && make to run.
176
177         * automake.texi (CVS): Typo.
178
179 2003-07-09  Alexandre Duret-Lutz  <adl@gnu.org>
180
181         * aclocal.in: Use Automake::FileUtils.
182         (parse_arguments, scan_configure, scan_m4_files): Never call
183         "die" to print an error message.  Use print and exit.
184         * automake.in: Use Automake::FileUtils.
185         * lib/Automake/General.pm ($debug, $help, $tmp, $verbose,
186         $version, &debug, &getopt, &mktmpdir, &verbose): Remove.
187         (END): Do not massage Perl's exit code.  Do not clean any temporary
188         directory.
189         (find_file, mtime, update_file, xsystem, contents): Move to ...
190         * lib/Automake/FileUtils.pm: ... this new file.  Adjust to
191         report errors using Channels.
192         (handle_exec_errors, xqx): New functions, from Autoconf.
193         * lib/Automake/Makefile.am (dist_perllib_DATA): Add FileUtils.pm.
194
195         * lib/Automake/Variable.pm (_traverse_variable_recursively_worker):
196         Return the empty list on recursively defined variable.  This
197         supersedes my change of 2003-07-02.
198
199 2003-07-08  Akim Demaille  <akim@epita.fr>
200
201         * automake.in ($cygnus_mode): Replace with $options{'cygnus'}.
202         Adjust all dependencies.
203         (&depend): Move next to %dependencies and prototype.
204         (&initialize_per_input): Initialize the 'cygnus' field of
205         '%options' to spare the code from 'exists' or 'defined' when
206         testing it.
207         (&handle_configure, &do_check_merge_target, &check_cygnus): Prototype.
208         (&parse_arguments): Rename '%options' and '%options_1st_pass' as
209         '%cli_options' and '%cli_options_1st_pass' to avoid clashes and
210         inconsistencies.
211
212 2003-07-07  Alexandre Duret-Lutz  <adl@gnu.org>
213
214         * automake.in (generate_makefile): Move near the end of the
215         file, after the definition of all called functions, so that
216         prototypes can be enforced.
217
218 2003-07-06  Akim Demaille  <akim@epita.fr>
219
220         * lib/am/subdirs.am (RECURSIVE_TARGETS): Move install-recursive,
221         install-exec-recursive, install-data-recursive and
222         uninstall-recursive addition to...
223         * lib/am/texinfos.am: here.
224         * lib/am/texinfos.am, lib/am/subdirs.am: Remove the .PHONY
225         declaration of RECURSIVE_TARGETS.
226
227 2003-07-06  Akim Demaille  <akim@epita.fr>
228
229         * lib/Automake/Variable.pm, lib/Automake/VarDef.pm (VAR_SORTED):
230         New variable type.
231         Handle it.
232         * automake.in (&handle_subdirs): Prototype.
233         Adjust callers.
234         Make RECURSIVE_TARGETS a VAR_SORTED.
235
236 2003-07-06  Akim Demaille  <akim@epita.fr>
237
238         * automake.in (&define_files_variable): New.
239         (&handle_texinfo_helper): Move the handling of user variables from
240         here, to...
241         (&handle_texinfo): here.
242         This is to balance the size of these functions, and to match the
243         convention of other _helper functions.
244         (&handle_texinfo_helper): Use &define_files_variable.
245         Move some code to use less variables.
246         Rename $info_cursor as $texi.
247         (&handle_texinfo): Do not call handle_texinfo_helper if there are
248         no TEXINFOS.
249         * lib/am/texinfos.am: Sort the occurrences of dvi, info, pdf, ps
250         and html.
251         Remove *-recursive targets from .PHONY, they are part of
252         $(RECURSIVE_TARGETS) anyway.
253         (install-info, mostlyclean-aminfo): Are .PHONY.
254
255 2003-07-05  Akim Demaille  <akim@epita.fr>
256
257         * lib/am/distdir.am: Use ';' as a terminator, not a separator, for
258         sed complex commands, as required by NetBSD sed.
259         Reported by Patrick Welche.
260
261 2003-07-05  Alexandre Duret-Lutz  <adl@gnu.org>
262
263         * lib/config.guess, lib/config.sub: New upstream version.
264
265 2003-07-04  Alexandre Duret-Lutz  <adl@gnu.org>
266
267         * automake.texi (Optional, Dist): AC_CONFIG_AUX_DIR files
268         are automatically distributed.
269
270         * lib/depcomp (icc): Update to grok ICC 7.1's output.
271         * m4/depend.m4 (_AM_DEPENDENCIES): Check dependency generation
272         in a subdirectory, and with many dependencies.  This
273         catches more failures of depcomp.
274         Reports from Ralf Wildenhues and Akim Demaille.
275
276 2003-07-04  Akim Demaille  <akim@epita.fr>
277
278         * automake.in (&scan_texinfo_file, &output_texinfo_build_rules,
279         (&handle_texinfo_helper, &handle_texinfo): Formatting changes.
280         Prototype properly.
281         Don't use & when calling functions.
282
283 2003-07-03  Alexandre Duret-Lutz  <adl@gnu.org>
284
285         * NEWS: Categorize entries.
286         Suggested by Jim Meyering.
287
288         * Makefile.am (maintainer-clean): Disallow '$AUTOMAKE && exit 1'.
289         Ignore @...@ substitutions in comments.
290         * tests/defs.in: Try to make the shell more POSIX compliant.
291         (AUTOMAKE_run, AUTOMAKE_fails): New functions.
292         * tests/README: Mention AUTOMAKE_fails.
293         * tests/alloca.test, tests/alloca2.test, tests/ansi8.test,
294         * tests/asm.test, tests/backsl3.test, tests/backsl4.test,
295         * tests/badline.test, tests/badopt.test, tests/canon.test,
296         * tests/canon5.test, tests/colneq.test, tests/comment3.test,
297         * tests/comment5.test, tests/cond2.test, tests/cond20.test,
298         * tests/cond23.test, tests/cond24.test, tests/cond27.test,
299         * tests/condinc2.test, tests/conff2.test, tests/cxx2.test,
300         * tests/dejagnu2.test, tests/dirforbid.test,
301         * tests/distcom3.test, tests/else.test, tests/exdir2.test,
302         * tests/exeext2.test, tests/gcj2.test, tests/gcj5.test,
303         * tests/getopt.test, tests/gettext.test, tests/gettext2.test,
304         * tests/gnits.test, tests/gnuwarn.test, tests/gnuwarn2.test,
305         * tests/insh.test, tests/lex2.test, tests/libobj10.test,
306         * tests/libobj12.test, tests/libobj13.test,
307         * tests/libobj3.test, tests/library2.test,
308         * tests/library3.test, tests/libtool4.test,
309         * tests/libtool6.test, tests/lisp2.test, tests/location.test,
310         * tests/nogzip2.test, tests/output5.test, tests/overrid.test,
311         * tests/percent.test, tests/percent2.test,
312         * tests/pluseq5.test, tests/pluseq7.test, tests/pluseq9.test,
313         * tests/pr211.test, tests/primary.test, tests/primary2.test,
314         * tests/python2.test, tests/recurs.test, tests/reqd2.test,
315         * tests/seenc.test, tests/specflg.test, tests/specflg2.test,
316         * tests/spell.test, tests/spell2.test, tests/srcsub.test,
317         * tests/srcsub2.test, tests/stdlib.test, tests/subdir7.test,
318         * tests/substtarg.test, tests/suffix11.test,
319         * tests/symlink.test, tests/syntax.test,
320         * tests/targetclash.test, tests/txinfo4.test,
321         * tests/version3.test, tests/warnopts.test,
322         * tests/xsource.test, tests/yacc2.test: Use set -e,
323         AUTOMAKE_fails, and always grep error message.
324
325         * automake.in (handle_ltlibraries): Fix call to msg.
326
327         * tests/stamph.test: Delete.
328         * tests/Makefile.am (TESTS): Remove stamph.test.
329
330         * automake.in (handle_single_transform_list): Use $var->name
331         to print variable in the configure-substitution diagnostic.
332         Do not mention the parent when it is the variable itself.
333
334         * tests/package.test: Delete.
335         * tests/Makefile.am (TESTS): Remove package.test.
336
337         * automake.in (cond_stack_else): Return FALSE if `if' was not
338         used.
339         (cond_stack_endif): Return TRUE if `if' was not used.  Do not
340         display $negate and $cond, they are irrelevant and maybe undefined.
341
342 2003-07-02  Alexandre Duret-Lutz  <adl@gnu.org>
343
344         * lib/Automake/Variable.pm (_traverse_variable_recursively_worker):
345         Do not return undef when a variable is recursively defined, this
346         causes warnings all over the place.  Return the empty string instead.
347
348         * lib/am/distdir.am (distcheck): Protect loop of DIST_ARCHIVES
349         from empty DIST_ARCHIVES.
350
351 2003-07-01  Alexandre Duret-Lutz  <adl@gnu.org>
352
353         * automake.in (scan_autoconf_traces): Check the expected
354         number of arguments of each traced macro.
355         * tests/overrid.test: Fix call to AM_CONDITIONAL.
356         * tests/conff2.test: New files.
357         * tests/Makefile.am (TESTS): Add conff2.test.
358         Report from Paolo Bonzini.
359
360 2003-06-30  Alexandre Duret-Lutz  <adl@gnu.org>
361
362         * automake.in ($SUBST_REF_PATTERN): Do not define.
363         (%gen_varname): Move to Variable.pm, as %_gen_varname.
364         (initialize_per_input): Do not clean %gen_varname.
365         (handle_options, check_libobjs_sources, handle_source_transform,
366         handle_LIBOBJS, handle_ltlibraries, handle_texinfo_helper,
367         handle_man_pages, handle_dist, handle_subdirs, handle_gettext,
368         am_install_var): Adjust to use value_as_list_recursive,
369         loc_and_value_as_list_recursive, and has_conditional_contents.
370         (require_file_with_macro): Accept an Automake::Variable as argument.
371         (traverse_variable_recursively,
372         traverse_variable_recursively_worker, gen_varname,
373         transform_variable_recursively): Move ...
374         * lib/Automake/Variable.pm (traverse_variable_recursively,
375         _traverse_variable_recursively_worker,
376         _gen_varname, transform_variable_recursively): ... here.
377         * automake.in (variable_conditionally_defined,
378         variable_value_as_list_recursive_worker,
379         variable_value_as_list_recursive
380         variable_loc_and_value_as_list_recursive): Move ...
381         * lib/Automake/Variable.pm (has_conditional_contents,
382         _value_as_list_recursive_worker,
383         value_as_list_recursive, loc_and_value_as_list_recursive): ... here.
384         (reset): Reset %_gen_varname.
385         (require_variables_for_variable): Accept an Automake::Variable
386         as argument.
387
388 2003-06-27  Alexandre Duret-Lutz  <adl@gnu.org>
389
390         * tests/aclocal6.test: Test maintainer-clean in VPATH
391         builds. (For Ralf's fix.)
392
393 2003-06-27  Ralf Corsepius  <corsepiu@faw.uni-ulm.de>  (tiny change)
394
395         * lib/am/configure.am (maintainer-clean): Remove
396         $(top_srcdir)/autom4te.cache, not autom4te.cache.
397
398 2003-06-27  Akim Demaille  <akim@epita.fr>
399
400         * automake.texi: Use @node with a single argument.
401
402 2003-06-27  Alexandre Duret-Lutz  <adl@gnu.org>
403
404         * m4/Makefile.am (dist_m4data_DATA): Add $(top_srcdir)/m4/amversion.m4.
405
406         * lib/am/distdir.am (distcheck): Run $(am__remove_distdir)
407         at the end of distcheck.  This was mistakenly removed on
408         2003-06-15.
409         * tests/subpkg.test: Make sure distcheck cleans up after itself.
410
411         * m4/Makefile.am ($(srcdir)/amversion.m4): Rename as ...
412         ($(top_srcdir)/m4/amversion.m4): ... this.
413         (DISTCLEANFILES): Remove.
414         (nodist_m4data_DATA): Remove. amversion.m4 is automatically
415         distributed.
416         (EXTRA_DIST): Add amversion.in.
417
418 2003-06-25  Akim Demaille  <akim@epita.fr>
419
420         * automake.texi (Top): Use @copying and @insertcopying.
421         Make Alexandre an author.
422         * automake.in ($gen_copyright): Add the "(C)" to Copyright.
423         * lib/depcomp: Likewise.
424
425 2003-06-23  Alexandre Duret-Lutz  <adl@gnu.org>
426
427         * lib/Automake/Variable.pm (vardef, rvardef, set_seen): New functions.
428         (variable_defined, examine_variable): Remove.
429         (%_ac_macro_for_var): Add an entry for ALLOCA.
430         (require_variables): Use vardef instead of variable_defined.
431         Do not use _cvar.
432         * automake.in (generate_makefile): Do not push $(SOURCE) into
433         @sources.  Use define_pretty_variable to define SOURCES.
434         (handle_LIBOBJS, handle_ALLOCA): Use require_variables_for_variable
435         to require LIBOBJS, LTLIBOBJS and ALLOCA.
436         (handle_programs, handle_ltlibraries): Do not define an empty
437         _DEPENDENCIES or _LDFLAGS variable when none is defined.
438         (define_configure_variable): Do not check whether the variable
439         already exists (it's Automake::Variable::define's job).
440         (require_build_directory): Likewise, do not check
441         the existence of am__dirstamp.
442         (generate_makefile, handle_options, handle_languages)
443         (check_libobjs_sources, handle_single_transform_list)
444         (traverse_variable_recursively_worker, handle_source_transform)
445         (handle_lib_objects, handle_LIBOBJS, handle_compile)
446         (handle_libtool, handle_programs, handle_libraries)
447         (handle_ltlibraries, check_typos, handle_texinfo_helper)
448         (handle_man_pages, handle_tags, handle_dist, handle_subdirs)
449         (scan_aclocal_m4, handle_gettext, handle_footer, handle_install)
450         (handle_all, do_check_merge_target, handle_clean, lang_c_finish)
451         (handle_tests, lang_yacc_target_hook, define_pretty_variable)
452         (define_compiler_variable, define_linker_variable)
453         (make_paragraphs, am_primary_prefixes, am_install_var): Adjust to
454         call var, vardef, or set_seen, instead of variable_defined.  Use
455         set_seen only for variables which are actually checked by
456         check_typos.
457         * tests/target.test: Delete.
458         * tests/alloca.test, tests/alloca2.test: New files.
459         * tests/libobj3.test: Check error message.
460         * tests/distcom4.test: Make sure configure is in DIST_COMMON.
461         This replace confdist.test.
462         * tests/Makefile.am (TESTS, XFAIL_TESTS): Remove target.test.
463         (TESTS): Add alloca.test and alloca2.test.  Remove confdist.test.
464
465 2003-06-20  Alexandre Duret-Lutz  <adl@gnu.org>
466
467         * automake.in (handle_dist): Delete DIST_COMMON before redefining
468         it.  Bug report from Akim Demaille.
469         (rewrite_inputs_into_dependencies): Make sure we always return
470         something, even when $add_srcdir is 0.
471         * tests/distcom4.test, tests/distcom5.test: New files.
472         * tests/Makefile.am (TESTS): Add distcom4.test and distcom5.test.
473
474         * tests/cond29.test: Also check for _SOURCES.
475         Report from Paolo Bonzini.
476
477 2003-06-20  Akim Demaille  <akim@epita.fr>
478
479         * lib/am/configure.am: Replace leading spaces with a real tab.
480
481 2003-06-15  Alexandre Duret-Lutz  <adl@gnu.org>
482
483         * tests/nogzip.test, tests/nogzip2.test: New files.
484         * tests/Makefile.am (TESTS): Add nogzip.test and nogzip2.test
485
486 2003-06-15  Akim Demaille  <akim@epita.fr>
487
488         * automake.in (&make_paragraphs): Define %GZIP%.
489         (&process_option_list): Accept no-dist-gzip2.
490         (&handle_dist): Complain when no archive format is enabled.
491         * lib/am/distdir.am (DIST_ARCHIVES): New variable.
492         (dist-gzip, dist-bzip2, dist-tarZ, dist-zip): No longer
493         conditioned.
494         (dist): Build $(distdir).tar.gz conditionally.
495         (distcheck): Use DIST_ARCHIVES to find an archive to unpack, and
496         to list built archives.  Run $(MAKE) dist instead of dist-gzip.
497         * automake.texi (Options, The types of distributions): Adjust.
498
499 2003-06-15  Jens Elkner  <elkner@imsgroup.de>  (tiny change)
500
501         * m4/lispdir.m4 (AM_PATH_LISPDIR): Fix sed commands to work with
502         POSIXLY_CORRECT=1.
503
504 2003-06-14  Karl Berry  <karl@gnu.org>
505             Alexandre Duret-Lutz  <adl@gnu.org>
506
507         * mkinstalldirs (scriptversion): New variable.  Setup emacs hooks
508         to update it each time the file is written, as in install-sh.
509         (usage): Improve message.
510         (--version): New option.
511         (--help): Output to stdout, not stderr.
512
513 2003-06-13  Paul Eggert  <eggert@twinsun.com>
514
515         * lib/install-sh (dsttmp, rmtmp): Do not use '#' in file names;
516         it's not guaranteed by POSIX and it doesn't work on OpenVMS.
517         Bug reported by Bernard Giroud in:
518         http://mail.gnu.org/archive/html/autoconf-patches/2003-06/msg00013.html
519
520 2003-06-05  Alexandre Duret-Lutz  <adl@gnu.org>
521
522         * automake.in (check_gnu_standards): Use no-installman and
523         no-installinfo's locations.
524         (process_option_list): Fill %options with locations.
525         (check_cygnus) Fill $options{'no-installinfo'} and
526         $options{'no-dependencies'} with $cygnus_mode, so that it
527         remains a Location.
528         * tests/gnuwarn2.test: New file.
529         * tests/Makefile.am (TESTS): Add gnuwarn2.test.
530
531 2003-06-04  Alexandre Duret-Lutz  <adl@gnu.org>
532
533         * automake.in (process_option_list): Record the location
534         of ansi2knr's definition.
535         (handle_compile): Use it.
536         * tests/ansi3.test: Make sure the location appears correctly.
537         Update to use set -e.
538         * tests/ansi3b.test: New file.
539         * tests/Makefile.am (TESTS): Add ansi3b.test.
540
541         * tests/alpha.test: Really run $MAKE.  Augment to test
542         subdirectories, and check-news report.
543         * tests/alpha2.test: New file.  Bug report from Akim Demaille.
544         * tests/gnits2.test: Make sure README-alpha is not distributed.
545         * tests/Makefile.am (TESTS): Add alpha2.test.
546         * automake.in (handle_minor_options): Distribute README-alpha
547         using push_dist_common, not require_file_with_macro.
548
549 2003-06-03  Alexandre Duret-Lutz  <adl@gnu.org>
550
551         * lib/Automake/Configure_ac.pm
552         (search_configure_ac, find_configure_ac): Rename as ...
553         (find_configure_ac, require_configure_ac): ... these.
554         * aclocal.in (scan_configure): Adjust call to require_configure_ac.
555         * automake.in (scan_autoconf_files): Likewise.
556         Suggested by Tim Van Holder.
557
558         * alocal.in: Use Automake::Configure_ac.
559         ($configure_ac): Delete.
560         (scan_configure): Adjust use of find_configure_ac;
561         * automake.in: Use Automake::Configure_ac.
562         ($configure_ac): Delete.
563         (scan_autoconf_files): Adjust use of find_configure_ac;
564         * lib/Automake/Configure_ac.pm: New file.
565         * lib/Automake/General.pm (find_configure_ac): Delete.  Now
566         replaced by Automake::Configure_ac::search_configure_ac.
567         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Configure_ac.pm.
568         * lib/Automake/Variable.pm: Use Automake::Configure_ac.
569         (require_variables): Adjust use of $configure_ac.
570
571 2003-06-02  Akim Demaille  <akim@epita.fr>
572
573         * lib/am/texi-vers.am, lib/am/subdirs.am, lib/am/scripts.am,
574         * lib/am/remake-hdr.am, lib/am/python.am, lib/am/progs.am,
575         * lib/am/program.am, lib/am/multilib.am, lib/am/mans.am,
576         * lib/am/mans-vars.am, lib/am/ltlibrary.am, lib/am/ltlib.am,
577         * lib/am/lisp.am, lib/am/libtool.am, lib/am/library.am,
578         * lib/am/lang-compile.am, lib/am/java.am, lib/am/header.am,
579         * lib/am/header-vars.am, lib/am/footer.am, lib/am/depend.am,
580         * lib/am/dejagnu.am, lib/am/data.am, lib/am/compile.am,
581         * lib/am/clean.am, lib/am/clean-hdr.am, lib/am/check.am,
582         * lib/am/ansi2knr.am, lib/am/Makefile.am, lib/Makefile.am,
583         * m4/strip.m4, m4/sanity.m4, m4/runlog.m4, m4/regex.m4,
584         * m4/python.m4, m4/protos.m4, m4/options.m4, m4/obsolete.m4,
585         * m4/obsol-lt.m4, m4/obsol-gt.m4, m4/multi.m4, m4/missing.m4,
586         * m4/minuso.m4, m4/maintainer.m4, m4/lispdir.m4, m4/lex.m4,
587         * m4/install-sh.m4, m4/header.m4, m4/gcj.m4, m4/dmalloc.m4,
588         * m4/depout.m4, m4/cond.m4, m4/ccstdc.m4, m4/auxdir.m4, m4/as.m4,
589         * m4/Makefile.am: White space changes and Copyright updates.
590
591 2003-05-29  Alexandre Duret-Lutz  <adl@gnu.org>
592
593         * lib/Automake/Variable.pm (check_defined_unconditionally): Add
594         the $parent_cond argument.
595         (output): Use $self->name in diagnostic not $self.
596         (variable_value_as_list): Rename as ...
597         (value_as_list): ... this.  Declare as a method.  Take a $parent_cond
598         argument and pass it to check_defined_unconditionally.  Do not call
599         variable_assert, now that this is a method.
600         (variable_assert): Delete (unused).
601         * automake.in (traverse_variable_recursively_worker): Adjust to
602         use check_defined_unconditionally and value_as_list as a methods.
603
604         * lib/Automake/Variable.pm (output): Declare as a method, since it
605         is only used this way.
606         (define): Fix documentation of $cond.
607         Suggested by Raja R. Harinath.
608
609 2003-05-25  Alexandre Duret-Lutz  <adl@gnu.org>
610
611         * lib/Automake/Variable.pm, lib/Automake/VarDef.pm: New files.
612         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Variable.pm
613         and VarDef.pm.
614         * automake.in: Use Automake::Variable and Automake::VarDef.
615         (MACRO_PATTERN): Delete. Now Automake::Variable::_MACRO_PATTERN.
616         (am_macro_for_var): Delete. Now Automake::Variable::_am_macro_for_var.
617         (ac_macro_for_var): Delete. Now Automake::Variable::_ac_macro_for_var.
618         (silent_variable_override): Delete.  Now
619         Automake::Variable::_silent_variable_override.
620         (var_value, var_location, var_comment, var_type, var_owner,
621         var_pretty, content_seen): Delete.  This functionality is now
622         offered by Automake::Variable and Automake::VarDef.
623         (VAR_AUTOMAKE, VAR_CONFIGURE, VAR_MAKEFILE, VAR_ASIS, VAR_PRETTY):
624         Delete.  Now defined in Automake::VarDef.
625         (var_order): Delete.  Now Automake::Variable::_var_order.
626         (appendvar): Delete.  Now Automake::Variable::_appendvar.
627         (var_SUFFIX_trigger): Register using Automake::Variable::hook.
628         (initialize_per_input): Call Automake::Variable::reset.
629         (err_var, msg_cond_var, msg_var, reject_var): Delete.  Now
630         defined in Automake::Variable.
631         (generate_makefile, process_option_list, handle_languages)
632         (traverse_variable_recursively_worker)
633         (transform_variable_recursively, handle_compile)
634         (handle_libraries, handle_ltlibraries)
635         (check_typos, handle_dist, handle_subdirs, scan_autoconf_files):
636         Adjust to use Automake::Variable functions.
637         (check_ambiguous_condition): Delete.  Now
638         Automake::Variable::_check_ambiguous_condition.
639         (condition_ambiguous_p): Delete.  Now
640         Automake::Variable::condition_ambiguous_p.
641         (variable_not_always_defined_in_cond): Delete.  Now
642         Automake::Variable::not_always_defined_in_cond.
643         (macro_define): Delete.  Now Automake::Variable::define.
644         (macro_delete): Delete.  Now Automake::Variable::variable_delete.
645         (macro_dump): Delete.  Now Automake::Variable::variable_dump.
646         (macros_dump): Delete.  Now Automake::Variable::variables_dump.
647         (variable_defined): Delete.  Now
648         Automake::Variable::variable_defined, with the target check
649         temporarily disabled.
650         (variable_assert): Delete.  Now Automake::Variable::variable_assert.
651         (examine_variable): Delete.  Now
652         Automake::Variable::examine_variable.
653         (variable_conditions): Delete.  Now Automake::Variable::conditions.
654         (scan_variable_expansions): Delete.  Now
655         Automake::Variable::scan_variable_expansions.
656         (check_variable_expansions): Delete.  Now
657         Automake::Variable::check_variable_expansions.
658         (check_variable_defined_unconditionally): Delete.  Now
659         Automake::Variable::check_defined_unconditionally.
660         (variable_value): Delete.  Now Automake::Variable::variable_value.
661         (variable_value_as_list): Delete.  Now
662         Automake::Variable::variable_value_as_list.
663         (variable_value_as_list_recursive_worker): Adjust to use
664         Automake::Variable functions.
665         (variable_output): Delete.  Now Automake::Variable::output.
666         (define_pretty_variable, define_configure_variable, read_am_file)
667         (define_standard_variables, read_main_am_file): Adjust to use
668         Automake::Variable functions.
669         (handle_variables): Delete.  Now Automake::Variable::output_variables.
670         (file_contents_internal, am_primary_prefixes, am_install_var)
671         (require_file_with_macro, require_conf_file_with_macro)
672         (push_dist_common): : Adjust to use
673         Automake::Variable functions.
674         (require_variables): Delete.  Now
675         Automake::Variable::require_variables.
676         (require_variables_for_macro): Delete.  Now
677         Automake::Variable::require_variables_for_variable.
678         * tests/Makefile.am (XFAIL_TESTS): Add target.test.
679
680 2003-05-25  Christian Cornelssen  <ccorn@cs.tu-berlin.de>  (tiny change)
681
682         * tests/dejagnu7.test: Check if runtest supports --status.
683
684 2003-05-23  Alexandre Duret-Lutz  <adl@gnu.org>
685
686         * lib/Automake/Location.pm (dump): Output 'INTERNAL' when position
687         is undefined.
688
689         * lib/Automake/DisjConditions.pm (human): Fix infinite loop when
690         $self contains only one Condition.
691
692         * automake.in: Use plain strict, including refs.
693         (macro_define, handle_single_transform_list): Use \&{'name'} to
694         build references to named subroutines.
695
696 2003-05-22  Karl Berry  <karl@gnu.org>
697
698         * automake.texi: Update @dircategory to match the Free Software
699         Directory.  End directory entries with dots.
700
701 2003-05-22  Alexandre Duret-Lutz  <adl@gnu.org>
702
703         * automake.texi (maintainer-mode): s/François/Fran@,{c}ois/.
704
705         * lib/elisp-comp: s/François/Franc,ois/.
706         Suggested by Paul Eggert.
707
708         * automake.in: Move the "main" code at the end.
709         (parse_arguments): Move near the end.
710         ($KNOWN_EXTENSIONS_PATTERN, @known_extensions_list,
711         accept_extensions, var_SUFFIXES_trigger): Move these definitions
712         before any call to register_language.
713         (am_file): Move the definition with all other global variables,
714         do not use local to define it.
715         * Makefile.am (maintainer-check): Expect no `local' in Automake.
716
717 2003-05-21  Alexandre Duret-Lutz  <adl@gnu.org>
718
719         * lib/Automake/Wrap.pm, lib/Automake/tests/Wrap.pl: New files.
720         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Wrap.pm.
721         * lib/Automake/tests/Makefile.am (TESTS): Add Wrap.pl.
722         * automake.in (handle_texinfo_helper, pretty_print_rule)
723         (variable_output): Adjust to use makefile_wrap instead of
724         pretty_print_internal.
725         (pretty_print_internal): Remove.  Renamed as Automake::Wrap::wrap
726         and augmented to accept the $eol and $max_len arguments.
727
728 2003-05-18  Alexandre Duret-Lutz  <adl@gnu.org>
729
730         * lib/Autom4te/XFile.pm, lib/config.guess, lib/config.sub,
731         lib/texinfo.tex: New upstream versions.
732
733 2003-05-17  Alexandre Duret-Lutz  <adl@gnu.org>
734
735         * lib/am/install.am (install, install-exec, install-data, uninstall):
736         Declare conditionally using a if/else/endif block instead of
737         using ?SUBDIRS?-style conditions.  The latter fail when
738         %maybe_BUILT_SOURCES% is replaced by several lines.
739         This fixes a bug introduced on 2003-04-06.
740         * tests/bsource.test: New file.
741         * tests/Makefile.am (TESTS): Add bsource.test.
742         Reported by Bruno Haible.
743
744 2003-05-11  Alexandre Duret-Lutz  <adl@gnu.org>
745
746         * automake.texi (renamed objects): New node.
747         (Program and Library Variables): Move maude_DEPENDENCIES closer
748         to maude_LDADD.  Define and use `per-target compilation flags' in the
749         explanation for maude_CFLAGS et al.  Link to the `renamed objects'
750         node.  Illustrate maude_SHORTNAME.
751
752 2003-05-09  Alexandre Duret-Lutz  <adl@gnu.org>
753
754         * lib/install-sh: Update copyright notice and license to that of
755         X11R6.  This removes an advertising clause reported as Debian bug
756         #191717.
757
758 2003-05-07  Alexandre Duret-Lutz  <adl@gnu.org>
759
760         * configure.in (ACLOCAL): Do not use -I, --acdir is enough.
761
762         * m4/make.m4: Rename the doit target as am__doit,
763         and make it phony.
764         Reported by Philip S Tellis.
765
766 2003-05-07  Alexandre Duret-Lutz  <adl@gnu.org>
767
768         * lib/am/configure.am (%MAKEFILE-IN%): Propagate automake's exit
769         status.
770         * tests/makej.test: New file (test Autom4te's cache locking,
771         new in CVS Autoconf).
772         * tests/Makefile.am (TESTS): Add makej.test.
773
774 2003-05-06  Alexandre Duret-Lutz  <adl@gnu.org>
775
776         * lib/Automake/General.pm (contents): New function.
777         * aclocal.in (greatest_mtime, force_output): New globals.
778         (scan_configure, add_file): Update $greatest_mtime.
779         (parse_arguments): Parse --force.
780         (write_aclocal): Do not overwrite $output_file unless needed.
781         * automake.texi (aclocal options): Document --force.
782         * tests/aclocal7.test: New file.
783         * tests/Makefile.am (TESTS): Add aclocal7.test.
784
785 2003-05-05  Alexandre Duret-Lutz  <adl@gnu.org>
786
787         * automake.texi (Optional): Document m4_include.
788         (Invoking aclocal): Shake a bit to introduce the various uses
789         of aclocal and explain that aclocal will use m4_include for
790         local files.
791         (Extending aclocal): Show how to install installable macros
792         in $(datadir)/aclocal, and make it clearer that writing installable
793         macros is not the only way to extend aclocal.
794         (Local Macros, Future of aclocal): New sections.
795
796 2003-04-27  Alexandre Duret-Lutz  <adl@gnu.org>
797
798         * automake.in (@common_files): Remove acinclude.m4 since
799         it will be m4_included by aclocal.m4 and files are always
800         distributed.
801         (scan_aclocal_m4): Do not bother about acinclude.m4 anymore.
802         We will get this dependency when tracing m4_includes.
803         * tests/aclocal6.test: Make sure acinclude.m4 is distributed
804         when used.
805         * tests/acinclude.test: Delete.
806         * tests/Makefile.am (TESTS): Remove acinclude.test.
807
808 2003-04-25  Alexandre Duret-Lutz  <adl@gnu.org>
809
810         * automake.in (handle_configure): Don't add @configure_deps to
811         DIST_COMMON, we do this from lib/am/configure.am now.
812         Define the am__configure_deps variable instead of substituing
813         %CONFIGURE_DEPS%.
814         * lib/am/configure.am (%MAKEFILE-IN%, $(top_srcdir)/configure,
815         $(ACLOCAL_M4)): Use $(am__configure_deps) instead of %CONFIGURE_DEPS%.
816         (DIST_COMMON): Add $(am__configure_deps).
817
818         * tests/aclocal6.test: New file.
819         * lib/am/configure.am (am--refresh): New rule.
820         (%MAKEFILE-IN%, %MAKEFILE%, $(top_builddir)/config.status,
821         $(top_srcdir)/configure): Call the top-level am--refresh from
822         subdirectories.
823         ($(ACLOCAL_M4)): Depend upon %CONFIGURE_DEPS%.  Call the
824         top-level am--refresh when not in the top-level directory.
825         Fix jump directories for VPATH builds.
826         Suggested by Raja R. Harinath.
827
828 2003-04-24  Alexandre Duret-Lutz  <adl@gnu.org>
829
830         * automake.in (scan_aclocal_m4): Do not parse ACLOCAL_AMFLAGS
831         and glob for m4_files (We've got all local m4 files while
832         tracing m4_include's).  Diagnose ACLOCAL_M4_SOURCES as obsolete.
833         Distribute aclocal.m4 only at the top-level.
834         (my_glob): Remove.  This fixes PR automake/11.
835         (handle_dist): Strip leading `./' from directories.
836         * aclocal.in (add_file): Output 'm4_include([file.m4])' instead
837         of copying local files.
838         (write_aclocal, parse_arguments): Bump copyright date.
839         * configure.in: De not build m4/amversion.m4 from here ...
840         * m4/Makefile.am ($(srcdir)/amversion.m4): ... do this here.
841         (nodist_m4data_DATA): Use $(srcdir)/amversion.m4 instead
842         of amversion.m4.
843         * tests/Makefile.am (XFAIL_TESTS): Remove aclocal5.test.
844         (TESTS): Remove aclocal2.test.  Do not test aclocal.test twice.
845         * tests/aclocal2.test: Delete (pointless).
846         * tests/aclocal5.test: Make sure configure's dependencies are
847         distributed.
848         * tests/acinclude.test: Adjust to search for m4_include.
849         * tests/dirlist.test, tests/dup3.test: Run $AUTOCONF and grep
850         configure instead of aclocal.m4.
851
852         For PR automake/46:
853         * automake.in (scan_aclocal_m4): Work in all directories, not only
854         the top-level.  Prepend $(top_srcdir) in front of each aclocal.m4
855         dependency.
856         * lib/am/configure.am (config.status, configure, $(ACLOCAL_M4)):
857         Define rebuild rules in each directory.
858         * tests/subdir8.test: Augment to exercise aclocal.m4's dependencies
859         from the top-level directory.
860         * tests/aclocal5.test: New file.  Exercise aclocal.m4's dependencies
861         from a subdirectory.
862         * tests/Makefile.am (TESTS): Add aclocal5.test.
863         (XFAIL_TESTS): Replace subdir8.test by aclocal5.test.
864
865 2003-04-24  Akim Demaille  <akim@epita.fr>
866             Alexandre Duret-Lutz  <adl@gnu.org>
867
868         For PR automake/46:
869         * lib/am/configure.am (%MAKEFILE-IN%): If Makefile.in is rebuilt
870         because of one of configure's dependencies, run automake without
871         argument to update the whole tree at once.  Depend upon
872         %CONFIGURE_DEPS%.
873         (%MAKEFILE%): If Makefile is rebuilt because config.status has
874         been updated, run config.status without arguments.
875         * automake.in (scan_autoconf_traces): Prepend $(top_srcdir)
876         before all files in @configure_deps.
877         * tests/subdir5.test: Modernize configure.in, make sure
878         maude/Makefile was actually created, and exercise %CONFIGURE_DEPS%.
879         * tests/subdir8.test: New file.
880         * tests/Makefile.am (TESTS): Add subdir8.test.
881         (XFAIL_TESTS): Replace subdir5.test by subdir8.test.
882
883 2003-04-23  Alexandre Duret-Lutz  <adl@gnu.org>
884
885         * automake.texi (Requirements): Typo in index
886         s/AC_CONFIG_FILE/AC_CONFIG_FILES/.
887
888         * lib/texinfo.tex: New upstream version.
889
890 2003-04-21  Jim Meyering  <jim@meyering.net>
891
892         * lib/mkinstalldirs: Remove each sequence of spaces before a
893         TAB character.
894         * lib/depcomp: Search for TAB-SPC, not SPC-TAB.
895
896 2003-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
897
898         Fix for PR automake/389:
899         * automake.in (handle_configure): Don't put $colon_infile in
900         CONFIG-MAKEFILE.
901         * tests/conff.test: New file.
902         * tests/Makefile.am (TESTS): Add conff.test.
903         Reported by Alexander Turbov.
904
905 2003-04-18  Alexandre Duret-Lutz  <adl@gnu.org>
906
907         * tests/defs.in: Handle required=etags to work around
908         Exuberant Ctags.
909
910         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
911         versions.
912
913         * tests/dejagnu3.test, tests/dejagnu4.test, tests/dejagnu5.test:
914         Distribute dejagnu test cases, so that distcheck actually runs them.
915
916 2003-04-18  Richard Dawe  <rich@phekda.freeserve.co.uk>
917
918         * lib/am/dejagnu.am (site.exp): Don't define tool in site.exp,
919         because we set that by invoking runtest with --tool.
920         * tests/Makefile.am (TESTS): Add dejagnu4.test, dejagnu5.test,
921         dejagnu6.test, dejagnu7.test.
922         * tests/dejagnu4.test: New test.
923         * tests/dejagnu5.test: New test.
924         * tests/dejagnu6.test: New test.
925         * tests/dejagnu7.test: New test.
926
927         * tests/dejagnu3.test: Make sure the DejaGnu test is actually run.
928
929 2003-04-18  Jim Meyering  <jim@meyering.net>
930
931         * automake.in (variable_output): Fix typo in comment s/is/if/.
932
933         * lib/am/yacc.am (?!GENERIC?%OBJ% aka .y.c): Don't redirect
934         directly to $@.  Instead, redirect to $@t and rename upon success.
935         Also, move the commands that update $@ so they are last.  Otherwise,
936         this rule could leave the user with an up to date target (.c file)
937         but with a missing or corrupted corresponding .h file.
938
939 2003-04-17  Richard Dawe  <rich@phekda.freeserve.co.uk>
940
941         * tests/defs.in: Handle required=runtest, to detect runtest
942         from DejaGnu.
943         * tests/Makefile.am (TESTS): Add dejagnu3.test.
944         * tests/dejagnu3.test: New test.
945
946 2003-04-16  Alexandre Duret-Lutz  <adl@gnu.org>
947
948         * automake.in (rule_define): If the user tries to override
949         an Automake which has a -local variant, suggest using the
950         -local variant in the -Woverride diagnostic.
951         (handle_factored_dependencies): Register factored
952         rules with rule_define, and define them only in undefined
953         conditions.
954         * tests/Makefile.am (TESTS): Add override.test.
955         * tests/overrid.test: New file.
956         * tests/phony.test: Count the number of .PHONY targets.
957
958 2003-04-15  Alexandre Duret-Lutz  <adl@gnu.org>
959
960         * lib/am/distdir.am (distuninstallcheck, distcleancheck): Silence
961         these rules, so that we don't confuse users by echoing
962         "echo ERROR:" commands which are not run.
963
964 2003-03-14  Richard Dawe  <rich@phekda.freeserve.co.uk>
965             Alexandre Duret-Lutz  <adl@gnu.org>
966
967         * automake.in (output_texinfo_build_rules, handle_texinfo_helper,
968         initialize_per_input):  Add infrastructure for generating HTML
969         documentation from texinfo source.
970         * lib/am/texinfos.am: Add rules for building HTML documentation
971         from texinfo source.
972         * lib/am/texibuild.am: Likewise.
973         * automake.texi (Texinfo): Document rules for building
974         HTML documentation from texinfo source.
975         * tests/txinfo21.test: New file.
976         * tests/Makefile.am (TESTS): Add txinfo21.test.
977         * tests/defs.in: Handle required=makeinfo-html.
978
979 2003-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
980
981         * automake.in (%silent_variable_override): New variable.
982         (macro_define): Warn about variable definitions overriding
983         Automake variables.
984         (rule_define): Warn about target definitions overriding
985         Automake variables.  Fix $condmsg definition.
986         * automake.texi (Invoking Automake): Document the `override'
987         category.
988         * lib/Automake/ChannelDefs.pm (usage): Likewise.
989         * lib/am/texinfos.am [!%?CYGNUS] (MAKEINFO): Do not define,
990         this is already done in m4/init.m4.
991         * tests/dejagnu2.test: Run $MAKE, don't only grep.  Use
992         -Wno-override, and make sure we get a warning without.
993         * tests/exeext2.test, tests/substtarg.test: Use -Wno-override,
994         and make sure we get a warning without.
995         * tests/exeext3.test, tests/java2.test, tests/nolink.test,
996         tests/subpkg.test, tests/vartest.test: Use -Wno-override.
997         * tests/txinfo13.test: Use installcheck-local instead of overriding
998         installcheck.
999         * tests/txinfo2.test: Run $MAKE on the real Makefile (this test
1000         used to succeed thanks to a failure...)
1001         * tests/location.test: Adjust expected messages.
1002         * tests/Makefile.am (XFAIL_TESTS): Add txinfo5.test.
1003
1004 2003-04-12  Raja R Harinath  <harinath@acm.org>
1005
1006         * lib/Automake/DisjConditions.pm (true): Don't cache answer.
1007         (invert): Update comment.
1008         (_simplify): Remove.
1009         (simplify): Implement using invert().
1010         * lib/Automake/tests/DisjConditions.pl (test_simplify):
1011         Update to reflect changes.
1012
1013 2003-04-12  Alexandre Duret-Lutz  <adl@gnu.org>
1014
1015         * automake.in (scan_autoconf_files): Augment the error message
1016         about AM_INIT_AUTOMAKE not found.
1017         Suggested by Bruno Haible.
1018
1019         * lib/Automake/Version.pm: New file.
1020         * lib/Automake/Makefile.am (dist_perllib_DATA): Add Version.pm.
1021         * lib/Automake/tests/Version.pl: New file.
1022         * lib/Automake/tests/Makefile.am (TESTS): Add Version.pl.
1023         * tests/Makefile.am (TESTS): Remove version5.test.
1024         * tests/version5.test: Delete.  Move the tests to Version.pl.
1025         * automake.in (version_split, version_compare, version_check): Move ...
1026         * lib/Automake/Version.pm (split, compare, check): ... here.
1027
1028 2003-04-11  Alexandre Duret-Lutz  <adl@gnu.org>
1029
1030         * lib/Automake/tests/Condition.pl (test_reduce_and)
1031         (test_reduce_or): Cosmetics.
1032         * lib/Automake/tests/DisjConditions.pl (test_sub_conditions):
1033         Fix a comment.
1034         * lib/Automake/DisjConditions.pm (sub_conditions): Add missing C<...>
1035         in comment.
1036         * tests/yacc8.test, configure.in: Update copyright year.
1037
1038 2003-04-10  Richard Dawe  <rich@phekda.freeserve.co.uk>
1039
1040         * configure.in: Get the build platform name.  Define
1041         MODIFICATION_DELAY as the time to wait after modifying a file,
1042         to cope with timestamp granularity issues, depending
1043         on the platform.
1044         * tests/defs.in: Define `sleep' using MODIFICATION_DELAY.
1045
1046 2003-04-10  Eric Siegerman  <eric_97@pobox.com>  (tiny change)
1047
1048         * automake.texi (Public macros): Clarify that the new
1049         AM_INIT_AUTOMAKE variant is preferred, and the old one
1050         deprecated.  Copy-edit the rest of the AM_INIT_AUTOMAKE item.
1051         (Hello): Caution that the example uses the deprecated
1052         AC_INIT/AM_INIT_AUTOMAKE syntax, and xref to the discussion.
1053
1054 2003-04-10  Alexandre Duret-Lutz  <adl@gnu.org>
1055
1056         Retain all variable definitions until the whole Makefile.am has
1057         been processed, then output all variables in one step, at the top
1058         of Makefile.in.  (Older revisions used to output user variables
1059         before generating Automake targets, and to mix Automake variables
1060         with Automake targets, preventing redefinitions of previously
1061         output variables.)
1062
1063         * automake.in (%var_pretty): New variable.
1064         (VAR_ASIS, VAR_PRETTY): New constants.
1065         (@var_list): Rename as ...
1066         (@var_order): ... this.
1067         (initialize_per_input): Clear %var_pretty.
1068         (handle_variables): New function, extracted from ...
1069         (read_main_am_file): ... here.
1070         (generate_makefile): Call handle_variable after everything else.
1071         (handle_dist): Use define_pretty_variable, not pretty_print.
1072         (pretty_print): Delete.
1073         (macro_define): Augment with $COMMENT and $PRETTY parameters.
1074         Update %var_comment, %var_pretty, and @var_order.  Adjust callers.
1075         (variable_pretty_output): Merge with ...
1076         (variable_output): ... this, and choose the prettiness on a
1077         per-condition basis.
1078         (append_comments): Delete.  This work is now done by macro_define.
1079         (read_am_file, file_contents_internal): Don't call append_comments
1080         nor update @var_list, adjust calls to macro_define.
1081         (handle_subdirs): Don't explicitly output RECURSIVE_TARGETS,
1082         just mark it as VAR_PRETTY.
1083         * tests/exeext.test: Make sure bin_PROGRAMS is output only once.
1084         Report from Jim Meyering.
1085
1086 2003-04-06  Alexandre Duret-Lutz  <adl@gnu.org>
1087
1088         * automake.in (handle_installdirs): Rename as ...
1089         (handle_install): ... this.  Define maybe_BUILT_SOURCES.
1090         (generate_makefile): Adjust call to handle_install.
1091         * lib/am/install.am (install): Use %maybe_BUILT_SOURCES%.
1092         * automake.texi (Sources, Built sources example): BUILT_SOURCES
1093         is honored by `make install' too.
1094         * tests/check3.test: Make sure that `make install' also depends
1095         upon BUILT_SOURCES.
1096         Report from Alexander Turbov.
1097
1098         * lib/am/libs.am (ARFLAGS): Define.
1099         * automake.in (handle_libraries): Use `$(ARFLAGS)' instead of
1100         hard-coding `cru'.
1101         * automake.texi (A Library): Explain how AR, ARFLAGS and RANLIB
1102         are used, and how they can be overridden.
1103         (Program and Library Variables): Adjust to show `$(ARFLAGS)'
1104         instead of `cru'
1105         * tests/ar.test: Rewrite to test for AR, ARFLAGS, and RANLIB.
1106         * tests/ranlib.test: Delete, obsoleted by ar.test.
1107         * tests/Makefile.am (TESTS): Remove ranlib.test.
1108         Report from Paul Thomas.
1109
1110 2003-04-03  Alexandre Duret-Lutz  <adl@gnu.org>
1111
1112         * automake.in (check_trailing_slash): New function (variation on
1113         a patch by Peter Muir).  Diagnose whitespaces following trailing
1114         backslash.
1115         (read_am_file): Use it.
1116         * tests/backsl4.test: New file.
1117         * tests/Makefile.am (TESTS): Add backsl4.test.
1118         Reported by Peter Muir.
1119
1120 2003-03-29  Raja R Harinath  <harinath@acm.org>
1121
1122         Speedup Automake::DisjConditions::invert().
1123         * lib/Automake/Condition.pm (multiply): New.
1124         * lib/Automake/DisjConditions.pm (_multiply): Use it.
1125         (sub_conditions): Likewise.
1126
1127         * lib/Automake/Condition.pm (reduce): Rename to ...
1128         (reduce_and): ... this.
1129         (reduce_or): New.
1130         * lib/Automake/DisjConditions.pm (_multiply): Use reduce_or().
1131         * lib/Automake/tests/Condition.pl (test_reduce): Rename to ...
1132         (test_reduce_and): ... this.
1133         (test_reduce_or): New.
1134         * lib/Automake/tests/DisjConditions.pl
1135         (test_invert): Update to reflect effect of reduce_or().
1136         (test_simplify): Don't skip invert() on larger inputs.
1137
1138 2003-03-29  Raja R Harinath  <harinath@cs.umn.edu>
1139
1140         * tests/yacc8.test: Add a $sleep before modifying Makefile.am so
1141         that timestamp will change.
1142
1143 2003-03-23  Akim Demaille  <akim@epita.fr>
1144             Alexandre Duret-Lutz  <adl@gnu.org>
1145
1146         * lib/am/tags.am (TAGS): Use --etags-include instead of --include,
1147         when supported by etags (Exuberant Ctags).
1148         * tests/tagsub.test: Rewrite to _run_ the `tags' rule.
1149
1150 2003-03-20  Alexandre Duret-Lutz  <adl@gnu.org>
1151
1152         For Debian Bug #185388:
1153         * automake.texi (Extending): Augment the install-exec-hook
1154         discussion with an example how to symlink a versioned binary.
1155         * tests/insthook.test: Rewrite to test the above example.
1156         Report from James R. Van Zandt.
1157
1158 2003-03-19  Alexandre Duret-Lutz  <adl@gnu.org>
1159
1160         * Makefile.am (maintainer-check): Allow `automake:' tokens,
1161         occuring in location.test.  Automake now has 5 legitimate
1162         unsubstituted @strings@.
1163
1164         * tests/aclocal4.test: Require GNU make.
1165
1166 2003-03-14  Alexandre Duret-Lutz  <adl@gnu.org>
1167
1168         * tests/aclocal4.test: New file.  Test for the ACLOCAL_M4 bug below.
1169         * tests/Makefile.am (TESTS): Add aclocal4.test.
1170
1171 2003-03-14  Jim Meyering  <jim@meyering.net>
1172
1173         * automake.in (scan_aclocal_m4): Define ACLOCAL_M4 even in
1174         subdirectories.  Makefile.in depends on that variable.
1175
1176 2003-03-13  Alexandre Duret-Lutz  <adl@gnu.org>
1177
1178         * m4/init.m4: Remove a leftover comment from the pre-1.7 era.
1179
1180         Fix for PR automake/386:
1181         * m4/init.m4: Require Autoconf 2.55.
1182         Reported by Owen Taylor.
1183
1184         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
1185         (?GENERIC?%EXT%.lo): Use `mv -f' instead of `mv' in FASTDEP mode.
1186         Suggested by Matthias Andree.
1187
1188         * tests/README: Typo.
1189
1190 2003-03-08  Alexandre Duret-Lutz  <adl@gnu.org>
1191
1192         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj)
1193         (?GENERIC?%EXT%.lo): Hide the if/then/else machinery for FASTDEP.
1194         Just echo the gcc command.
1195         Suggested by Karl Berry.
1196
1197 2003-03-06  Alexandre Duret-Lutz  <adl@gnu.org>
1198
1199         * lib/am/depend2.am (?GENERIC?%EXT%.lo): Do not use
1200         `test -f foo || echo $(srcdir)/` to emulate a VPATH search when
1201         outputing suffix rules.  This follows 2003-02-25's change.
1202         * lib/am/lex.am (?GENERIC?%EXT%%DERIVED-EXT%): Likewise.
1203         * lib/am/yacc.am (?GENERIC?%EXT%%DERIVED-EXT%): Likewise.
1204
1205 2003-03-05  Alexandre Duret-Lutz  <adl@gnu.org>
1206
1207         * automake.texi (Requirements) <AC_CONFIG_FILES>: Files listed
1208         with AC_CONFIG_FILES are cleaned by `make distclean'.  Don't
1209         pretend otherwise.
1210         Reported by Rafael Laboissiere.
1211
1212 2003-03-04  Andreas Buening  <andreas.buening@nexgo.de>
1213
1214         * lib/mdate-sh: Find out which column of the ls -l output contains
1215         the month. Do not assume it is at least the fifth column.
1216
1217 2003-02-26  Alexandre Duret-Lutz  <adl@gnu.org>
1218
1219         * automake.texi (Emacs Lisp): Mention that `dist_' can be used.
1220
1221         * automake.texi (Emacs Lisp): Instruct people to use lisp_DATA
1222         instead of lisp_LISP when they don't want byte-compilation.
1223         Don't mention ELCFILES anymore.
1224         * automake.in (handle_data): Allow lisp_DATA.
1225         * tests/lisp5.test: New file.
1226         * tests/Makefile.am (TESTS): Add lisp5.test.
1227
1228         * automake.in (handle_emacs_lisp): Don't build *.elc files
1229         if ELCFILES was set empty.
1230         * tests/lisp4.test: New file.
1231         * tests/Makefile.am (TESTS): Add lisp4.test.
1232         Reported by Simon Josefsson.
1233
1234         * tests/lex3.test, tests/lex5.test: Require flex.
1235         Reported by Leo Davis.
1236
1237 2003-02-25  Alexandre Duret-Lutz  <adl@gnu.org>
1238
1239         * lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj): Do not
1240         use the `test -f foo || echo $(srcdir)/` to emulate a VPATH search
1241         when outputing suffix rules.
1242         * lib/am/texibuild.am (?GENERIC?%SOURCE_SUFFIX%.dvi)
1243         (?GENERIC?%SOURCE_SUFFIX%.pdf): Likewise.
1244         Suggested by Bruno Haible.
1245
1246         * automake.in (read_am_file): Catch trailing backslashes on last line.
1247         * tests/backsl3.test: New file.
1248         * tests/Makefile.am (TESTS): Add backsl3.test.
1249         Reported by Akim Demaille.
1250
1251 2003-02-24  Alexandre Duret-Lutz  <adl@gnu.org>
1252
1253         * ChangeLog: Move 2002's entries to ...
1254         * ChangeLog.02: ... this new file.
1255         * Makefile.am (EXTRA_DIST): Add ChangeLog.02.
1256
1257 2003-02-24  Richard Dawe  <rich@phekda.freeserve.co.uk>
1258
1259         * tests/version7.test: Use $sleep to sleep before updating
1260         the version, to work around timestamp inconsistencies in Windows.
1261
1262 2003-02-24  Bruno Haible  <bruno@clisp.org>
1263             Alexandre Duret-Lutz  <adl@gnu.org>
1264
1265         * lib/am/texibuild.am: Don't remove the target info files. Instead,
1266         back up and restore them if makeinfo fails.
1267         * tests/txinfo20.test: New file.
1268         * tests/Makefile.am (TESTS): Add txinfo20.test.
1269
1270 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
1271
1272         * automake.texi (FAQ, CVS, maintainer-mode, wildcards)
1273         (distcleancheck): Fix typos and other errors reported by Karl
1274         Berry.
1275
1276 2003-02-20  Alexandre Duret-Lutz  <adl@gnu.org>
1277
1278         * lib/am/texibuild.am (%SOURCE_SUFFIX%%DEST_SUFFIX%): Use $(...)
1279         instead of ${...}.
1280
1281         * tests/defs.in: Handle required=ro-dir.
1282         * tests/destdir.test: Use this.
1283
1284 2003-02-19  Richard Dawe  <rich@phekda.freeserve.co.uk>
1285
1286         * lib/am/distdir.am (distcheck): Strip any leading DOS drive
1287         from dc_install_base.
1288
1289 2003-02-19  Alexandre Duret-Lutz  <adl@gnu.org>
1290
1291         * lib/am/texinfos.am (install-info-am, uninstall-info-am): Install
1292         DJGPP-style *.iNN info files.
1293         (maintainer-clean-aminfo): Rewrite using the same pattern
1294         as in uninstall-info-am.
1295         * lib/am/texibuild.am (%SOURCE_SUFFIX%%DEST_SUFFIX%): Erase
1296         DJGPP-style *.iNN info files before running $(MAKEINFO).
1297         * tests/txinfo19.test: New file.
1298         * tests/Makefile.am (TESTS): Add txinfo19.test.
1299
1300 2003-02-18  Richard Dawe  <rich@phekda.freeserve.co.uk>
1301
1302         * lib/depcomp (dashmstdout): Cope with DOS filenames in
1303         dependencies.
1304
1305 2003-02-17  Alexandre Duret-Lutz  <adl@gnu.org>
1306
1307         * lib/depcomp (makedepend): Don't pass $object to makedepend.
1308         Reported by Stepan Kasal.
1309
1310 2003-02-12  Alexandre Duret-Lutz  <adl@gnu.org>
1311
1312         * tests/defs.in: Handle required=makedepend.
1313
1314         * Makefile.am (maintainer-check): Update the diff check
1315         to account for the recent @SHELL@ substitution.
1316
1317 2003-02-11  Alexandre Duret-Lutz  <adl@gnu.org>
1318
1319         * lib/depcomp: Do not put comments on the `icc)' line.
1320
1321         * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream
1322         versions.
1323
1324         Fix for PR automake/381:
1325         * automake.in (handle_gettext): Do not print diagnostics
1326         about po/ and intl/ missing from SUBDIRS if po/ does not
1327         exist.  Warn if `SUBDIRS = intl' is used although libintl
1328         is 'external'.
1329         * tests/gettext.test: Make sure diagnostics are not output
1330         when po/ does not exist.
1331         * tests/gettext2.test: Test for unwanted intl/.
1332         PR from Alexander Turbov, fix suggested by Bruno Haible.
1333
1334         * m4/depend.m4: Grep depcomp's stderr for icc warnings about
1335         ignored options.
1336         * lib/depcomp (icc): New mode.
1337         * tests/depcomp5.test: New file.
1338         * tests/defs.in: Handle required=icc.
1339         * tests/Makefile.am (TESTS): Add it.
1340
1341         Temporary hack for PR automake/381:
1342         * automake.in (handle_gettext): Turn missing po/ and intl/ errors
1343         into -Wsyntax warnings.
1344
1345 2003-02-10  Richard Dawe  <rich@phekda.freeserve.co.uk>
1346
1347         * Makefile.am: Substitute @SHELL@ in automake.in and aclocal.in.
1348         This makes the setting of SHELL work for DJGPP.
1349
1350 2003-02-10  Alexandre Duret-Lutz  <adl@gnu.org>
1351
1352         For PR automake/385:
1353         * lib/depcomp (makedepend): Strip any libtool call, before
1354         running makedepends.
1355         * tests/depcomp4.test: New file.
1356         * tests/Makefile.am (TESTS): Add it.
1357         Reported by Jeff Squyres.
1358
1359         Related to PR automake/385:
1360         * lib/depcomp (dashmstdout): Do not use `-o /dev/null', or gcc will
1361         write dependencies to /dev/null.  `-o /dev/null' was added
1362         on 2002-06-13 just because I tried to replace `-o foo.o' by something
1363         else and didn't thought about removing it entirely.
1364         * tests/depcomp3.test: New file.
1365         * tests/Makefile.am (TESTS): Add it.
1366
1367         * automake.in (BEGIN): Override $ENV{'SHELL'} with ./configure's
1368         SHELL for DJGPP.
1369         Suggested by Richard Dawe.
1370
1371 2003-02-09  Alexandre Duret-Lutz  <adl@gnu.org>
1372
1373         * automake.texi (FAQ, CVS, maintainer-mode, wildcards)
1374         (distcleancheck): New nodes.
1375
1376 2003-02-06  Alexandre Duret-Lutz  <adl@gnu.org>
1377
1378         * automake.in (scan_autoconf_files): Don't complain that
1379         AM_INIT_AUTOMAKE comes from an old version if it was not found.
1380
1381 2003-02-05  Alexandre Duret-Lutz  <adl@gnu.org>
1382
1383         * automake.in (am_install_var): Simplify filtering of
1384         variable_loc_and_value_as_list_recursive's output.
1385
1386 2003-02-04  Alexandre Duret-Lutz  <adl@gnu.org>
1387
1388         * m4/init.m4 (_AC_AM_CONFIG_HEADER_HOOK): Recompute
1389         indexes of header files so we create stamp files with
1390         the right numbers when config.status is run on some headers.
1391         * tests/stamph2.test: Check for this.
1392         Reported by Sander Niemeijer.
1393
1394 2003-02-02  Alexandre Duret-Lutz  <adl@gnu.org>
1395
1396         * automake.in (vars_scanned): Move near traverse_variable_recursively.
1397         (traverse_variable_recursively,
1398         traverse_variable_recursively_worker): Accept a $COND_FILTER argument
1399         to filter out conditions during recursion.  Don't recurse into
1400         undefined variables.  Don't pass empty results to &FUN_COLLECT.
1401         (value_to_list): Remove, was used by
1402         variable_value_as_list_recursive_worker only.
1403         (variable_value_as_list_recursive_worker): Rewrite using
1404         traverse_variable_recursively.  Remove the $parent argument.
1405         (variable_value_as_list_recursive,
1406         variable_loc_and_value_as_list_recursive): Adjust calls
1407         to variable_value_as_list_recursive_worker.  Don't reset
1408         %vars_scanned.
1409         * tests/cond3.test: Don't expect empty helper variables,
1410         we don't output them anymore.
1411         * tests/cond30.test: Use an undefined variable.
1412
1413         * automake.in (handle_programs): Strip $(EXEEXT) before
1414         calling &check_canonical_spelling.
1415         * tests/exeext.test: Make sure we don't use a
1416         maude3__EXEEXT__OBJECTS variable.
1417
1418 2003-02-02  Jeremy Nimmer  <jwnimmer@alum.mit.edu>  (tiny change)
1419
1420         For Debian Bug #39542:
1421         * automake.texi (Invoking Automake, Optional): Document how
1422         AC_CONFIG_AUX_DIR interacts with missing files.
1423
1424 2003-02-02  Alexandre Duret-Lutz  <adl@gnu.org>
1425
1426         * lib/Automake/DisjConditions.pm (_permutations_worker)
1427         (permutations): Remove, so that people aren't tempted to use it.
1428         * lib/Automake/tests/DisjConditions.pl (tests_permutations): Remove.
1429
1430         * automake.in (variable_conditions_recursive): Remove.
1431         (variable_conditionally_defined): Rewrite using
1432         traverse_variable_recursively.
1433
1434         * automake.in (traverse_variable_recursively,
1435         traverse_variable_recursively_worker): Pass one merged Condition
1436         instead of a stack of conditions to &FUN_STORE and &FUN_COLLECT.
1437         (transform_variable_recursively, define_objects_from_sources)
1438         (handle_lib_objects, variable_conditions_recursive): Adjust usage.
1439
1440 2003-02-01  Alexandre Duret-Lutz  <adl@gnu.org>
1441
1442         * automake.in (handle_lib_objects): Compute _DEPENDENCIES variables
1443         using transform_variable_recursively instead of
1444         variable_conditions_recursive and variable_value_as_list_recursive
1445         to avoid combinatorial explosion.
1446         (handle_lib_objects_cond): Merge into handle_lib_objects.
1447         * tests/cond11.test: Don't grep internal details in Makefile.in,
1448         run $MAKE to make sure the resulting Makefile runs as expected.
1449         * tests/cond29.test: Also exercise conditional _LDADD.
1450         * tests/cond31.test, tests/cond32.test: New files.
1451         * tests/Makefile.am (TESTS): Add tests/cond31.test and
1452         tests/cond32.test.
1453
1454 2003-01-31  Alexandre Duret-Lutz  <adl@gnu.org>
1455
1456         * automake.in (handle_lib_objects_cond): Ignore -dlopen and
1457         -dlpreopen in _LIBADD variables too.
1458         (handle_LIBOBJS, handle_ALLOCA): New functions, extracted from
1459         handle_lib_objects_cond.
1460         * tests/libtool7.test: New file.
1461         * tests/Makefile.am (TESTS): Add libtool7.test.
1462
1463         * automake.texi (Program and Library Variables): Clarify that
1464         _LIBADD is for libraries and _LDADD for programs.
1465
1466         * automake.in (handle_source_transform): Correct typo from 2003-01-23.
1467
1468 2003-01-28  Alexandre Duret-Lutz  <adl@gnu.org>
1469
1470         Fix for PR automake/352:
1471         * automake.in (transform_variable_recursively): If the destination
1472         and the source variables are the same, delete the source variable
1473         before defining the destination variable.
1474         (handle_programs): Strip any $(EXEEXT) suffix from $one_file,
1475         or this will confuse handle_source_transform.
1476         (append_exeext): Rewrite using transform_variable_recursively.
1477         * tests/cond29.test, tests/cond30.test: New files.
1478         * tests/exeext.test: Run ./configure and make, this uncovered
1479         the above handle_programs issue.
1480         * tests/Makefile.am (TESTS): Add cond29.test and cond20.test.
1481
1482         * automake.in (%subobjvar): Replace by ...
1483         (%gen_varname): ... this.
1484         (subobjname): Replace by ...
1485         (gen_varname): ... this.
1486         (initialize_per_input): Clean gen_varname instead of subobjname.
1487         (transform_variable_recursively): New function, extracted
1488         from define_objects_from_sources.
1489         (define_objects_from_sources): Use transform_variable_recursively.
1490         Remove the unused $parent argument.
1491         (handle_source_transform): Adjust call to define_objects_from_sources.
1492
1493 2003-01-23  Alexandre Duret-Lutz  <adl@gnu.org>
1494
1495         * automake.in (@substfroms, @substtos): Move near
1496         traverse_variable_recursively.
1497         (traverse_variable_recursively, traverse_variable_recursively_worker):
1498         New functions, extracted from define_objects_from_sources.
1499         (define_objects_from_sources): Rewrite using
1500         traverse_variable_recursively.
1501         (handle_source_transform): Use variables_conditionally_defined
1502         instead of calling variable_conditions_recursive directly.
1503         Adjust the call to define_objects_from_sources; there is no need
1504         to reset @substtos, @substfroms, and %vars_scanned now.
1505         (variable_conditions_recursive): Rewrite using
1506         traverse_variable_recursively.
1507         (variable_conditions_recursive_sub): Remove.
1508         (variable_conditionally_defined): Fix condition comparison (the
1509         consequence was that DIST_SUBDIRS was always output).
1510         * lib/Automake/Condition.pm (merge): Allow merging several
1511         conditions at once.
1512
1513 2003-01-22  Alexandre Duret-Lutz  <adl@gnu.org>
1514
1515         * automake.texi (Python): Explain that directory variables start
1516         with either ${prefix} or ${exec_prefix}, and point to the
1517         `Installation Directory Variables' section of the Autoconf manual.
1518
1519 2003-01-21  Alexandre Duret-Lutz  <adl@gnu.org>
1520
1521         * lib/am/distdir.am (top_distdir, distdir): Define these
1522         variables only in top level Makefile.  Redefine $(top_distdir)
1523         as $(distdir).
1524         (distdir): Fix passing of $(top_distdir) to sub-makes.
1525         * automake.in (handle_dist): Do not define the DISTDIR and
1526         TOP_DISTDIR transformations.  We don't need them anymore.
1527         * automake.texi (Dist): Reorder the dist-hook section, and move
1528         the DIST_SUBDIRS paragraph earlier.  Document distdir and
1529         top_distdir.
1530         * tests/subpkg.test: Update to check for $(distdir) and
1531         $(top_distdir).
1532
1533 2003-01-19  Alexandre Duret-Lutz  <adl@gnu.org>
1534
1535         Rename more files to accomodate 8+3 file systems, and adjust the
1536         vocabulary at the same time: AM_CONDITIONAL defines "conditionals",
1537         and we call "condition" a conjunction of "conditionals".
1538         * lib/am/Conditional.pm: Rename to lib/am/Condition.pm.
1539         * lib/am/tests/Conditional.pl: Rename to lib/am/tests/Condition.pl.
1540         * lib/am/ConditionalSet.pm: Rename to lib/am/DisjConditions.pm.
1541         * lib/am/tests/ConditionalSet.pl: Rename to
1542         lib/am/tests/DisjConditions.pl
1543         * lib/am/Conditional.pm (condition_negate): Rename to ...
1544         * lib/am/Condition.pm (conditional_negate): ... this.
1545         * automake.in: Adjust references to Condition and DisjConditions.
1546         (check_ambiguous_conditional, conditional_ambiguous_p): Rename to ...
1547         (check_ambiguous_condition, condition_ambiguous_p): ... these.
1548
1549         * tests/README: New file.
1550
1551         * automake.texi (Conditional Programs): Show a sample Makefile.am.
1552         Remind $(EXEEXT) must be appended to configure substitutions.
1553         Show how Automake conditionals can be used instead.
1554         * tests/exeext.test (check_PROGRAMS): Make sure EXEEXT is also
1555         appended to conditionally defined programs.
1556
1557 2003-01-16  Jim Meyering  <jim@meyering.net>
1558
1559         Accept --help and --version, and lots of syntactic clean-up.
1560         * lib/install-sh: Use consistent indentation, two spaces per level.
1561         (scriptversion): New variable.
1562         Change initializations like `variable=""' to `variable='.
1563         (usage): New variable.
1564         Use `test', not `['.
1565         Use `test -z "$var"', not `[ x"$var" = x ]'.
1566         Use `test -n "$var"', not `[ x"$var" != x ]'.
1567         Alphabetize case entries.
1568         Accept --help and --version options.
1569         Remove unnecessary `else :' clauses.
1570         Add a `Local variables' eval block to help emacs users update
1571         the time-stamp variable added above.
1572         Mostly from Karl Berry.
1573
1574 2003-01-16  Alexandre Duret-Lutz  <adl@gnu.org>
1575
1576         * m4/python.m4 (AM_PATH_PYTHON) <_AM_PYTHON_INTERPRETER_LIST>: Add
1577         python2.3.
1578
1579         * m4/python.m4 (AM_PATH_PYTHON): Query distutils for `pythondir'
1580         or `pyexecdir', for the sake of 64-bit distributions that usually
1581         use lib64/ instead of lib/.  Fall back to the default directory
1582         if it doesn't work.
1583         Suggested by Gwenole Beauchesne.
1584
1585 2003-01-14  Alexandre Duret-Lutz  <adl@gnu.org>
1586
1587         For PR automake/382:
1588         * automake.texi (Yacc and Lex): Document `AM_YFLAGS = -d'.
1589         Explain BUILT_SOURCES is usually needed in this case.
1590         Reported by William S Fulton.
1591
1592 2003-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
1593
1594         Rename some files for the sake of 8+3 file systems.
1595         * tests/aclocali.test:     Rename to tests/aclocal.test.
1596         * tests/aclocali1.test:    Rename to tests/aclocal2.test.
1597         * tests/aclocalii.test:    Rename to tests/aclocal3.test.
1598         * tests/acoutput.test:     Rename to tests/acoutpt.test.
1599         * tests/acoutput2.test:    Rename to tests/acoutpt2.test.
1600         * tests/acouttbs.test:     Rename to tests/acoutbs.test.
1601         * tests/acouttbs2.test:    Rename to tests/acoutbs2.test.
1602         * tests/autoheader.test:   Rename to tests/autohdr.test.
1603         * tests/autoheader2.test:  Rename to tests/autohdr2.test.
1604         * tests/condincl.test:     Rename to tests/condinc.test.
1605         * tests/condincl2.test:    Rename to tests/condinc2.test.
1606         * tests/distcommon.test:   Rename to tests/distcom.test.
1607         * tests/distcommon2.test:  Rename to tests/distcom2.test.
1608         * tests/distcommon3.test:  Rename to tests/distcom3.test.
1609         * tests/installsh.test:    Rename to tests/instsh.test.
1610         * tests/installsh2.test:   Rename to tests/instsh2.test.
1611         * tests/instdata.test:     Rename to tests/instdat.test.
1612         * tests/instdata2.test:    Rename to tests/instdat2.test.
1613         * tests/libobj12b.test:    Rename to tests/libobj13.test.
1614         * tests/link_f_c.test:     Rename to tests/link_fc.test.
1615         * tests/link_f_c_cxx.test: Rename to tests/link_fccxx.test.
1616         * tests/link_f_cxx.test:   Rename to tests/link_fcxx.test.
1617         * tests/nodefine.test:     Rename to tests/nodef.test.
1618         * tests/nodefine2.test:    Rename to tests/nodef2.test.
1619         * tests/required.test:     Rename to tests/reqd.test.
1620         * tests/required2.test:    Rename to tests/reqd2.test.
1621         * tests/sourcesub.test:    Rename to tests/srcsub.test.
1622         * tests/sourcesub2.test:   Rename to tests/srcsub2.test.
1623         * tests/specflags.test:    Rename to tests/specflg.test.
1624         * tests/specflags2.test:   Rename to tests/specflg2.test.
1625         * tests/specflags3.test:   Rename to tests/specflg3.test.
1626         * tests/specflags6.test:   Rename to tests/specflg6.test.
1627         * tests/specflags7.test:   Rename to tests/specflg7.test.
1628         * tests/specflags8.test:   Rename to tests/specflg8.test.
1629         * tests/specflags9.test:   Rename to tests/specflg9.test.
1630         * tests/subdircond.test:   Rename to tests/subcond.test.
1631         * tests/subdircond2.test:  Rename to tests/subcond2.test.
1632         * tests/subdircond3.test:  Rename to tests/subcond3.test.
1633         * tests/texinfo.test:      Rename to tests/txinfo.test.
1634         * tests/texinfo2.test:     Rename to tests/txinfo2.test.
1635         * tests/texinfo3.test:     Rename to tests/txinfo3.test.
1636         * tests/texinfo4.test:     Rename to tests/txinfo4.test.
1637         * tests/texinfo5.test:     Rename to tests/txinfo5.test.
1638         * tests/texinfo6.test:     Rename to tests/txinfo6.test.
1639         * tests/texinfo7.test:     Rename to tests/txinfo7.test.
1640         * tests/texinfo8.test:     Rename to tests/txinfo8.test.
1641         * tests/texinfo9.test:     Rename to tests/txinfo9.test.
1642         * tests/texinfo10.test:    Rename to tests/txinfo10.test.
1643         * tests/texinfo13.test:    Rename to tests/txinfo13.test.
1644         * tests/texinfo16.test:    Rename to tests/txinfo16.test.
1645         * tests/texinfo17.test:    Rename to tests/txinfo17.test.
1646         * tests/texinfo18.test:    Rename to tests/txinfo18.test.
1647         * tests/Makefile.am (TESTS): Adjust.
1648         * ChangeLog.1996: Rename to ChangeLog.96.
1649         * ChangeLog.1998: Rename to ChangeLog.98.
1650         * ChangeLog.2000: Rename to ChangeLog.00.
1651         * ChangeLog.2001: Rename to ChangeLog.01.
1652         * Makefile.am (EXTRA_DIST): Adjust.
1653         Reported by Richard Dawe.
1654
1655 2003-01-13  Richard Dawe  <rich@phekda.freeserve.co.uk>  (tiny change)
1656
1657         * lib/am/distdir.am (distcheck): '=' is not valid in DOS filenames.
1658         Use '_build' and '_inst' instead of '=build' and '=inst'.
1659         * tests/man2.test: Reflect change automake: check for files in
1660         '_build' and '_inst' directories instead of '=build' and '=inst'.
1661
1662 2003-01-13  Alexandre Duret-Lutz  <adl@gnu.org>
1663
1664         Use `_dirstamp' when the file-system doesn't support `.dirstamp'.
1665         * m4/lead-dot.m4: New file.
1666         * m4/Makefile.am (dist_m4data_DATA): Add lead-dot.m4
1667         * m4/init.m4 (AM_INIT_AUTOMAKE): Require AM_SET_LEADING_DOT.:
1668         * m4/depend.m4 (AM_SET_DEPDIR): Require AM_SET_LEADING_DOT. Define
1669         DEPDIR using am__leading_dot.
1670         * automake.in (require_build_directory): Define am__dirstamp, a new
1671         variable for the dirstamp basename, based on am__leading_dot.
1672         * tests/subobj6.test: Move all `test -f' into Makefiles, so we can
1673         use $(am__dirstamp).
1674         Reported by Richard Dawe.
1675
1676         * tests/gnits2.test, tests/pr300-prog.test, tests/transform.test:
1677         Move all `test -f' into Makefiles, so we can honor $(EXEEXT) when
1678         testing for programs.
1679         Reported by Richard Dawe.
1680
1681 2003-01-10  Alexandre Duret-Lutz  <adl@gnu.org>
1682
1683         * Makefile.am (maintainer-check): Suggest using $sleep instead of
1684         sleep 2.
1685         * tests/defs.in (sleep): New variable.
1686         * tests/asm.test, tests/confsub.test, tests/lisp3.test,
1687         tests/texinfo16.test, tests/warnopts.test, tests/yaccvpath.test:
1688         Use $sleep instead of sleep 2, to work around timestamp
1689         inconsistencies in Windows.
1690         Reported by Richard Dawe.
1691
1692         * Makefile.am (maintainer-check): Do not require SHELL=/bin/sh
1693         after $MAKE -e.
1694         * tests/ansi3.test, tests/ansi5.test, tests/cond22.test,
1695         tests/man2.test, tests/subobj3.test, tests/suffix8.test,
1696         tests/suffix11.test: Do not set SHELL=/bin/sh after $MAKE -e.
1697         $SHELL is overridden by tests/defs, so it won't hurt even
1698         if $MAKE -e uses the $SHELL envvar.
1699         * tests/ansi.test, tests/insh2.test, tests/texinfo.test,
1700         tests/texinfo8.test: Use SHELL=$SHELL, not SHELL=/bin/sh.
1701         Reported by Richard Dawe.
1702
1703         Build elisp files all at once instead of one by one.
1704         * automake.in (handle_emacs_lisp): Define am__ELFILES.  Add
1705         elc-stamp to all's dependencies.
1706         * lib/am/lisp.am (elc-stamp): New rule, build all *.elc files.
1707         (.el.elc): Rewrite to call elc-stamp if $@ doesn't exist.
1708         (clean-lisp): Clean elc-stamp.
1709         * lib/elisp-comp: Reindent.  Erase the temporatry directory
1710         from a trap.  Propagate Emacs's exit status.
1711         * tests/lisp3.test: New file.
1712         * tests/Makefile.am (TESTS): Add lisp3.test.
1713         Reported by Ryan T. Sammartino.
1714
1715 2003-01-09  Akim Demaille  <akim@epita.fr>
1716
1717         * automake.texi: Prefer $(FOO) to @FOO@ in the documentation.
1718
1719 2003-01-08  Alexandre Duret-Lutz  <adl@gnu.org>
1720
1721         * m4/lispdir.m4: Register EMACS and EMACSLOADPATH as precious
1722         variables.  Suggested by Ryan T. Sammartino.
1723
1724 2003-01-05  Alexandre Duret-Lutz  <adl@gnu.org>
1725
1726         * automake.in (macro_define): Add missing `{$cond}' (typo from
1727         2002-09-18).
1728         ($gen_copyright): Append year 2003.
1729         (version): Increase year.
1730
1731         * tests/defs.in: Substitute aclocaldir instead of running
1732         the installed aclocal.  Otherwise Libtool and Gettext
1733         tests get skipped when aclocal doesn't preexist.
1734         Reported by Imacat.
1735         * tests/listval.test, tests/suffix2.test: Remove pointless -I
1736         argument to aclocal.
1737
1738 -----
1739
1740 Copyright (C) 2003  Free Software Foundation, Inc.
1741
1742 This file is part of GNU Automake.
1743
1744 GNU Automake is free software; you can redistribute it and/or modify
1745 it under the terms of the GNU General Public License as published by
1746 the Free Software Foundation; either version 2, or (at your option)
1747 any later version.
1748
1749 GNU Automake is distributed in the hope that it will be useful,
1750 but WITHOUT ANY WARRANTY; without even the implied warranty of
1751 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1752 GNU General Public License for more details.
1753
1754 You should have received a copy of the GNU General Public License
1755 along with autoconf; see the file COPYING.  If not, write to
1756 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
1757 Boston, MA 02111-1307, USA.