* automake.texi (Invoking Automake): Document --Werror and
[automake.git] / ChangeLog
blobff7ccdd6d004f2b389dd7683cf86d06f68128d54
1 2001-07-27  Tom Tromey  <tromey@redhat.com>
3         * automake.texi (Invoking Automake): Document --Werror and
4         --Wno-error.
6 2001-07-26  Tom Tromey  <tromey@redhat.com>
8         * tests/nolink.test: Added no-exeext.
10         * automake.in (check_variable_defined_unconditionally): Don't call
11         macro_dump.
13         * automake.texi (Optional): Don't mention ALL_LINGUAS.
14         (gettext): Likewise.
15         * automake.in (seen_linguas, all_linguas, all_linguas_line):
16         Removed.
17         (handle_gettext): Don't do any checking of the languages.
18         (scan_one_autoconf_file): Don't look for ALL_LINGUAS.
20         * automake.in (am_print_error): New function.
21         (am_error): Use it.
22         (am_file_error): Likewise.
23         (am_line_error): Likewise.
24         (am_conf_error): Likewise.
25         (am_conf_line_error): Likewise.
27         * automake.texi (Options): Document no-exeext.
28         * automake.in (handle_options): Recognize no-exeext.
29         (rule_define): Handle no-exeext.
30         * tests/Makefile.am (TESTS): Added new file.
31         * tests/exeext2.test: New file.
33         * automake.in (make_input_list): Removed.
34         (scan_autoconf_config_files): Don't add to make_input_list.
35         (scan_one_autoconf_file): Don't use make_input_list.
36         (scan_autoconf_files): Use make_list, not make_input_list.
37         (scan_autoconf_files): Likewise.
39         * automake.in (seen_exeext): Removed.
40         (generate_makefile): Don't define EXEEXT or OBJEXT.
41         (scan_one_autoconf_file): Don't check for AC_EXEEXT.
42         (am_install_var): Don't check $seen_exeext.
43         (handle_programs): Likewise.
44         (rule_define): Allow x to override x$(EXEEXT), for now.
45         (file_contents_internal): Only define rule if rule_define allows
46         us to.
47         * m4/init.m4 (AM_INIT_AUTOMAKE): Define EXEEXT and OBJEXT.
49 2001-07-25  Tom Tromey  <tromey@redhat.com>
51         From Nicolas Joly:
52         * tests/pr9.test: Require GNU make.
53         * tests/dirname.test: Don't use `-u'.
55 2001-07-22  Tom Tromey  <tromey@redhat.com>
57         * tests/Makefile.am (TESTS): Added auxdir2.test.
58         (XFAIL_TESTS): Likewise.
59         * tests/auxdir2.test: New file.
61         * tests/Makefile.am (XFAIL_TESTS): Removed substtarg.test.
62         * automake.in (TARGET_PATTERN): Add `@' as allowable character.
64         * tests/Makefile.am (XFAIL_TESTS): Removed exeext.test.
65         * automake.in (am_install_var): Add $(EXEEXT) even if program name
66         holds `.'.  Don't add $(EXEEXT) if program name already has it.
67         (handle_programs): Don't add $(EXEEXT) if user already did.
68         (make_paragraphs): Don't compute EXEEXT.
70         * tests/Makefile.am (TESTS): Added exeext.test.
71         (XFAIL_TESTS): Likewise.
72         * tests/exeext.test: New file.
74 2001-07-22  Tom Tromey  <tromey@redhat.com>
76         * lib/am/progs.am (install-%DIR%PROGRAMS): Test for `prog', not
77         `prog.exe' on Cygwin with libtool.  From Robert Collins.
79 2001-07-21  Tim Van Holder  <tim.van.holder@pandora.be>
81         * tests/dirname.test: Explicitly use $SHELL to run the
82         script; this avoids failures on DJGPP.
83         * tests/install2.test: Skip if 'chmod 000' doesn't make
84         a file unreadable.
86 2001-07-21  Tom Tromey  <tromey@redhat.com>
88         * tests/libtool2.test: Check for libtoolize.
90         * tests/Makefile.am (TESTS): Added substtarg.test.
91         (XFAIL_TESTS): Likewise.
92         * tests/substtarg.test: New file.
94         * automake.in (handle_dist): Handle case where aux dir doesn't
95         have a Makefile.  Fixes depdist.test.
96         * tests/Makefile.am (XFAIL_TESTS): Removed depdist.test.
97         * tests/depdist.test: Look for config/depcomp.
99         * tests/Makefile.am (TESTS): Added depdist.test.
100         (XFAIL_TESTS): Likewise.
101         * tests/depdist.test: New file.  From Eric Magnien.
103         * tests/ccnoco.test: Removed `configure.2' test; in autoconf 2.50
104         AC_PROG_CC_C_O does require AC_PROG_CC.
106         From Erik Lindahl:
107         * lib/depcomp (tru64): Some Tru64 compilers use `foo.d' and not
108         `foo.o.d'.
109         * m4/depend.m4 (_AM_DEPENDENCIES): Check to make sure compilation
110         output is suitable for make.
112         * automake.texi (Macros): Document AM_PROG_AS.
113         (Assembly Support): New node.
114         * m4/Makefile.am (m4data_DATA): Added as.m4.
115         * m4/as.m4: New file.
117         * automake.texi (Tags): Added uref to global tags.
119 2001-07-21  Tim Van Holder  <tim.van.holder@pandora.be>
121         * automake.in (handle_single_transform_list): Use $(DEPDIR)
122         instead of hardcoding '.deps'.
123         * m4/depend.m4 (AM_SET_DEPDIR): Sync with libtool's libdir check.
125 2001-07-20  Derek Price  <dprice@collab.net>
127         * m4/header.m4 (AM_CONFIG_HEADER): Create stamp-h files in the correct
128         locations.
129         * tests/dirname.test: New test.
130         * tests/stamph2.test: New test.
131         * tests/Makefile.am: Add new tests.
132         * tests/Makefile.in: Regenerated.
134 2001-07-19  Tom Tromey  <tromey@redhat.com>
136         * automake.texi (Tags): Document GTAGS_ARGS.
137         * lib/am/tags.am (GTAGS): Added GTAGS_ARGS.  From Shigio Yamaguchi.
139 2001-07-19  Tom Tromey  <tromey@redhat.com>
140             Alexandre Duret-Lutz  <duret_g@epita.fr>
142         Fix for ccnoco.test, subobj8.test:
143         * m4/Makefile.am (m4data_DATA): Added auxdir.m4.
144         * tests/Makefile.am (XFAIL_TESTS): Removed ccnoco.test,
145         subobj8.test.
146         * m4/minuso.m4 (AM_PROG_CC_C_O): Use absolute path to compile.
147         Use AM_AUX_DIR_EXPAND.
148         * lib/compile: Handle case where `-o' argument is the name of an
149         executable, not an object file.
150         * m4/auxdir.m4: New file, from...
151         * m4/missing.m4: ... here.  Moved AM_AUX_DIR_EXPAND.
152         * automake.in (handle_single_transform_list, lang_c_rewrite):
153         Require compile using `require_config_file'.
155 2001-07-19  Tom Tromey  <tromey@redhat.com>
157         * automake.texi (Program and Library Variables): Added X example
158         for _LDADD.
160 2001-07-19  Tom Tromey  <tromey@redhat.com>
162         * automake.texi (Distributing): Updated to reflect new license.
164 2001-07-18  Alexandre Duret-Lutz  <duret_g@epita.fr>
166         * automake.in (require_build_directory): New function, extracted
167         from ...
168         (handle_single_transform_list): ... here.
169         (require_build_directory_maybe): New function.
170         (handle_prograns, handle_libraries, handle_ltlibraries): Call
171         require_build_directory_maybe() to ensure the subdirectory
172         in which a target may lie will exist when the target is created.
173         (handle_libraries, handle_ltlibraries): Use basename before
174         checking library name.
175         * lib/am/library.am (%LIBRARY%): Depend on %DIRSTAMP%.
176         * lib/am/ltlibrary.am (%LTLIBRARY%): Likewise.
177         * lib/am/program.am (%PROGRAM%): Likewise.
179 2001-07-18  Tim Van Holder  <tim.van.holder@pandora.be>
181         * m4/missing.m4: Reword comment.
183 2001-07-18  Pavel Roskin  <proski@gnu.org>
185         * automake.texi: Rename AM_DEPENDENCIES to _AM_DEPENDENCIES.
186         * tests/gcj.test: Likewise.
187         * tests/gcj2.test: Likewise.
188         * tests/gcj3.test: Likewise.
190 2001-07-18  Tom Tromey  <tromey@redhat.com>
192         * lib/compile: Change how lockdir is computed.  If linking or
193         compiling without `-o', just run the compiler.
195         * tests/Makefile.am (TESTS): Added ccnoco.test.
196         (XFAIL_TESTS): Likewise.
197         * tests/ccnoco.test: New file.
199 2001-07-17  Tom Tromey  <tromey@redhat.com>
201         * lib/ylwrap: Added special exception.
202         * lib/py-compile: Added license.
203         * lib/mdate-sh: Added special exception.
204         * lib/elisp-comp: Added special exception.
205         * lib/compile: Added special exception.
206         * lib/depcomp: Added special exception.
208         Report from Motoyuki Kasahara:
209         * tests/make.test: Use am__include.
210         * tests/exsource.test: Use am__include.
211         * m4/make.m4 (AM_MAKE_INCLUDE): Use am__include and am__quote.
212         * automake.in (handle_languages): Use am__include and am__quote.
214         * m4/depend.m4 (AM_DEPENDENCIES): Renamed to _AM_DEPENDENCIES.
215         * m4/init.m4: Updated callers.
217 2001-06-10  Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
219         * aclocal.in (parse_arguments, write_aclocal): Update Copyrights.
220         * aclocal.in (scan_configure, add_file): Handle the full macro
221         name even if it contains numbers, such as I18N.
223 2001-07-16  Tom Tromey  <tromey@redhat.com>
225         * automake.texi (Dependencies): Link to dependency tracking page.
226         (Data): Mention dist_.
227         (Clean): Mention clean heuristics.
228         (Install): Mention nobase_.
230         * automake.texi (Program and Library Variables): Document _LINK.
232 2001-07-16  Alexandre Duret-Lutz  <duret_g@epita.fr>
234         * automake.in (handle_libraries): Allow libraries to lie in
235         a subdirectory by constraining only the basename to start
236         with 'lib', not the whole path.
238 2001-07-16  Alexandre Duret-Lutz  <duret_g@epita.fr>
240         * tests/subobj8.test: New file.
241         * tests/Makefile.am (XFAIL_TESTS, TESTS): Add subobj8.test.
243 2001-07-16  Tom Tromey  <tromey@redhat.com>
245         Fix for PR automake/212:
246         * lib/am/lisp.am (install-%DIR%LISP): Added missing `\'.
247         (uninstall-%DIR%LISP): Likewise.
249 2001-07-15  Tom Tromey  <tromey@redhat.com>
251         * automake.in (usage): Rewrote code to handle columnization.
252         From Alexey Mahotkin and Maxim Sinev.
254         Report from Ralf Corsepius:
255         * automake.in (TARGET_PATTERN): Add `+' as valid character.
256         (SUFFIX_RULE_PATTERN): Likewise.
257         * tests/Makefile.am (TESTS): Added cxx.test.
258         * tests/cxx.test: New file.
260         * lib/am/tags.am (distclean-tags): Remove files for gtags.
261         From Shigio Yamaguchi.
263 2001-07-14  Steve M. Robbins  <steve@nyongwa.montreal.qc.ca>
265         * lib/am/distdir.am (distcheck): Emit diagnostic when files
266         remain after "make uninstall".
268 2001-07-14  Tom Tromey  <tromey@redhat.com>
270         * lib/am/tags.am (.PHONY): Depend on GTAGS.  From Shigio Yamaguchi.
272         * lib/missing (makeinfo): Redirect stdout and stderr outside
273         subshell.  From Alexandre Oliva.
275 2001-07-14  Akim Demaille  <akim@epita.fr>
277         * automake.in ($obsolete_rx): No need for `\b(foo\b|\bbar)\b',
278         `\b(foo|bar)\b' is what we want.
279         * aclocal.in: Likewise.
281 2001-07-14  Akim Demaille  <akim@epita.fr>
283         * m4/depend.m4 (AM_DEPENDENCIES): Don't define `depcpp' which is
284         not used.
285         Do not require the corresponding AC_PROG_CC as AC_PROG_CC is
286         actually modified to require AM_DEPENDENCIES.
287         Rename `confdir' as `conftest.dir' so that the configure trap
288         remove it.
290 2001-07-04  Tom Tromey  <tromey@redhat.com>
292         Fix for nolink.test:
293         * tests/Makefile.am (XFAIL_TESTS): Removed nolink.test.
294         * lib/am/program.am (%PROGRAM%%EXEEXT%): Use %EXEEXT%.
295         * automake.in (am_install_var): Only rewrite PROGRAMS if
296         $seen_exeext.
297         (make_paragraphs): Always define %EXEEXT%.
299 2001-07-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
301         * tests/nolink.test: New file.
302         * tests/Makefile.am (TEST, XFAIL_TESTS): Add nolink.test.
304 2001-07-04  OKUJI Yoshinori  <okuji@gnu.org>
306         * automake.in (scan_texinfo_file): Add the second argument to
307         `@syncodeindex' into @CLEAN_SUFFIXES, because the combined index
308         itself may not be used directly.
310 2001-07-04  Tom Tromey  <tromey@redhat.com>
312         * missing: Updated.
313         * lib/missing (makeinfo): Use subshell, not explicit sh
314         invocation.
316         * automake.texi (Headers): Mention that we prefer uninstalled
317         headers in _SOURCES.
318         (ANSI): Mention cross-compilation limitation.
320 2001-07-03  Tom Tromey  <tromey@redhat.com>
322         * configure.in: Upped to 1.4i.
324         * configure.in: Released 1.4h.
326         * lib/config.guess, lib/config.sub: Updated.
328 2001-07-02  Tom Tromey  <tromey@redhat.com>
330         Fix for libtool2.test:
331         * tests/libtool2.test: Use `rm -f' to placate maintainer-check.
332         * lib/am/libtool.am (distclean-libtool): Conditional on TOPDIR.
333         * automake.in (generate_makefile): Call handle_libtool
334         unconditionally.
335         * tests/Makefile.am (XFAIL_TESTS): Removed libtool2.test.
337         * tests/libtool2.test: Look for `.lo' files to be removed.
339         * tests/Makefile.am (XFAIL_TESTS): Added libtool2.test.
341         * tests/Makefile.am (TESTS): Removed dup.test.
342         * tests/dup.test: Removed.
343         * aclocal.in (scan_file): Don't give error for duplicate macro.
345 2001-07-01  Tom Tromey  <tromey@redhat.com>
347         * automake.texi (Program and Library Variables): Document
348         subdir-objects.  Document fact that per-object flags override AM_
349         flags.
350         (Options): Likewise.
351         (Yacc and Lex): Document YFLAGS, AM_YFLAGS, LFLAGS, AM_LFLAGS.
352         (Multilibs): New node.
353         (Macros): Documented missing macros.
354         (Auxiliary Programs): New node.
356         * lib/missing (makeinfo): If makeinfo exists, and we're in --run
357         mode, then simply fail.
359 2001-07-01  Tim Van Holder  <tim.van.holder@pandora.be>
361         * lib/ylwrap: Improve support for DOS paths (and paths
362         containing backslashes in general).
364 2001-07-01  Tom Tromey  <tromey@redhat.com>
366         * lib/missing: Added special exception to license.
368         * missing: Updated.
369         * lib/missing: Updated.  Added comment explaining configure.ac
370         oddity.
372         * lib/depcomp: Reorder arguments to gcc3.
373         From Per Oyvind Hvidsten.
375         * tests/Makefile.am (TESTS): Added libtool2.test.
376         * tests/libtool2.test: New file.
378         * automake.texi (Program and Library Variables): Added example for
379         _AR.
381 2001-06-29  Tom Tromey  <tromey@redhat.com>
383         * tests/cond11.test: Use `=', not `=='.
384         * tests/cond12.test: Look for automake in build directory, not
385         source directory.
387 2001-06-29  Richard Boulton  <richard@tartarus.org>
389         * automake.in (conditionals_true_when): Pass first parameters by
390         reference, avoiding bug which put all parameters in @CONDS instead
391         of @WHENS.  Report by Kalle Olavi Niemitalo.
392         Take a single WHEN instead of an array of WHENS.
393         Remove FIXME; can't now have an empty @WHENS.
394         (conditional_is_redundant): New sub.
395         (variable_conditions_reduce): Check whether each condition is
396         implied by any of the other conditions (other those already
397         discarded), rather than checking only against those already
398         considered (and kept).  Also, fix sense of check: was keeping
399         tautologous terms instead of discarding them.  Use
400         conditional_is_redundant instead of conditionals_true_when.
401         * tests/Makefile.am (TESTS): Added cond11.test and cond12.test.
402         * tests/cond11.test: New file.
403         * tests/cond12.test: New file.
405 2001-06-29  Raja R Harinath  <harinath@cs.umn.edu>
407         * automake.in (saw_sources_p): Work even if there are more
408         than one header files, and more than of one type of header.
409         * tests/Makefile.am (TESTS): Added new file.
410         * tests/depend4.test: New file.
412 2001-06-28  Tom Tromey  <tromey@redhat.com>
414         * lib/am/libs.am (RANLIB): Don't define.
416 2001-06-28  Alexandre Duret-Lutz  <duret_g@epita.fr>
418         * automake.in (am_install_var): Assign 1 to $first on
419         first interation.
421 2001-06-23  Tom Tromey  <tromey@redhat.com>
423         Fix for yacc5.test:
424         * lib/ylwrap: Changed usage.
425         * lib/am/yacc.am: Rewrote to use new substitutions.
426         * lib/am/lex.am: Likewise.
427         * automake.in (handle_languages): Skip files whose language
428         doesn't have a compiler.  Handle `define_flag' attribute.
429         Changed '$' to "\$" to aid Emacs fontification.
430         (struct): Added `rule_file'.  Removed `derived_autodep'.  Added
431         `_target_hook' and `define_flag'.
432         (yacc, yaccxx, lex, lexxx): Set `rule_file', `flags', `compile',
433         and `compiler' attributes.  Removed `linker', `derived_autodep',
434         and `ansi' attributes.  Added `define_flag'.
435         (yacc, yaccxx): Added `_target_hook'.
436         (saw_extension): Count number of times extension seen.
437         (count_files_for_language): New sub.
438         (saw_sources_p): Use it.
439         (handle_single_transform_list): Allow language rewrite function
440         to return a new source extension.  Call target_hook.
441         (yacc_sources, lex_sources): Removed.
442         (initialize_per_input): Don't initialize yacc_sources or
443         lex_sources.
444         (lang_yacc_rewrite): Rewrote.
445         (lang_yaccxx_rewrite): Likewise.
446         (lang_lex_rewrite): Likewise.
447         (lang_lexxx_rewrite): Likewise.
448         (output_yacc_build_rule): Removed.
449         (output_lex_build_rule): Removed.
450         (lang_yacc_finish): Removed build rule generation.
451         (lang_lex_finish): Likewise.
452         (DASH_D_PATTERN): New global.
453         (lang_yacc_target_hook): New function.
454         (_target_hook): New function.
455         (register_language): Default `define_flag'.
456         * tests/yacc5.test: Updated test.
457         * tests/yacc4.test: Exit with status 77 if bison doesn't work.
458         * tests/yacc3.test: Remove bogus `make' invocation.  Added test
459         for all YFLAGS variables.
461 2001-06-20  Tom Tromey  <tromey@redhat.com>
463         * tests/yacc5.test: Check for per-executable YFLAGS.
465 2001-06-19  Tom Tromey  <tromey@redhat.com>
467         * tests/Makefile.am (TESTS): Added yacc5.test.
468         * tests/yacc5.test: New file.
470 2001-06-17  Tom Tromey  <tromey@redhat.com>
472         * automake.in (require_file_internal): Check for already-required
473         file after searching for it, and only if it is not found.  Don't
474         use `readlink' when checking for dangling symlink.  Work if
475         --force-missing specified.
476         * tests/acoutput2.test: Also test --force-missing.
478         Fix for libtool.test:
479         * automake.in (generate_makefile): Call handle_libtool.
480         (handle_libtool): New sub.
481         (handle_compile): Don't read `libtool' file.
483         * tests/acoutput2.test: New file.
484         * tests/Makefile.am (TESTS): Added acoutput2.test.
486 2001-06-15  Tom Tromey  <tromey@redhat.com>
488         * tests/Makefile.am (TESTS): Added libtool.test.
489         * tests/libtool.test: New file.
491 2001-06-14  Tom Tromey  <tromey@redhat.com>
493         Fix some lisp bugs reported by Bruno Haible:
494         * lib/am/lisp.am (uninstall-%DIR%LISP): Added DESTDIR to the
495         echo.
496         (install-%DIR%LISP): Handle case where lispdir is not defined.
497         (uninstall-%DIR%LISP): Likewise.
498         (.el.elc): Added `else' clause.
500         Fix for bug reported by Steve M. Robbins:
501         * automake.in (handle_single_transform_list): When building a file
502         from a subdirectory, continue to use `AM_' prefix.
503         * tests/Makefile.am (TESTS): Added subobj7.test.
504         * tests/subobj7.test: New file.
506         * lib/am/configure.am ($(top_builddir)/config.status): Added
507         $(top_builddir) prefix to work around problems with some vendor
508         makes.  From Nicholas Joly.
510         * automake.in (yacc_lex_finish_helper): Find ylwrap in
511         top_srcdir.  From Tim Van Holder.
512         * tests/Makefile.am (TESTS): Added yacc6.test.
513         * tests/yacc6.test: New file.
515 2001-06-14  Tim Van Holder  <tim.van.holder@pandora.be>
517         * tests/defs, tests/installsh.test: Properly support
518         DOS-style paths.
520 2001-06-14  Tom Tromey  <tromey@redhat.com>
522         * tests/Makefile.am (TESTS): Added mdate4.test.
523         * tests/mdate4.test: New file.
525         * aclocal.in (scan_m4_files): Removed unused variable.
527 2001-06-14  Alexandre Duret-Lutz  <duret_g@epita.fr>
529         * aclocal.in (scan_m4_files): Tweak the building of &search so
530         that multiple macro names can be found on the same line.  Ensure
531         we match whole macro name, not only substrings.
533 2001-06-12  Tom Tromey  <tromey@redhat.com>
535         * automake.texi (ANSI): Minor clarification.
536         (Other GNU Tools): Don't mention Guile.
537         (Guile): Removed.
538         (Java Support): Mention file extensions.
539         (Man pages): Mention dist_.  Don't mention info pages.
541 2001-06-11  Tom Tromey  <tromey@redhat.com>
543         * automake.texi (Program variables): Document AM_CPPFLAGS.
544         Deprecate INCLUDES.
545         (Java Support): Document AM_GCJFLAGS.
546         (Support for Other Languages): Removed `fixme'; added link to
547         suffix rule handling.
549         * automake.texi (Program and Library Variables): Document _LIBADD,
550         _LDADD, _LDFLAGS, _AR, and _DEPENDENCIES.
552 2001-06-11  Kevin Dalley  <kevind@rahul.net>
554         * missing: Support configure.ac.
556 2001-06-08  Tom Tromey  <tromey@redhat.com>
558         * tests/version4.test: New file.
559         * automake.in (version_check): New sub.
560         (handle_options): Use it.
561         * tests/Makefile.am (AUTOMAKE_OPTIONS): Removed.
562         (TESTS): Added version4.test.
563         * m4/Makefile.am (AUTOMAKE_OPTIONS): Removed.
564         * Makefile.am (AUTOMAKE_OPTIONS): Remove `gnits'.
566 2001-06-04  Kevin Dalley  <kevind@rahul.net>
568         * lib/am/dejagnu.am (site.exp): Fix typo.
570 2001-06-02  Tom Tromey  <tromey@redhat.com>
572         * automake.in (variable_conditions_sub): Move parent-only code
573         from here...
574         (variable_conditions): ... to here.
575         (variable_conditions_sub): Include this variable's conditions in
576         the resulting condition list.
577         * tests/Makefile.am (XFAIL_TESTS): Removed ltdeps.test.
579 2001-06-01  Tom Tromey  <tromey@redhat.com>
581         * tests/Makefile.am (XFAIL_TESTS): Added ltdeps.test.
582         (TESTS): Likewise.
583         * tests/ltdeps.test: New file.  Report from Lars J. Aas.
585 2001-05-31  Tom Tromey  <tromey@redhat.com>
587         * automake.texi (Alternative): New node.
588         (Macros): Use new name for gcc.
589         (Java Support): Likewise.
590         (Dependencies): Rewrote.
591         (Invoking Automake): (Re-)document -i, --ignore-deps, and
592         --include-deps.
594         * automake.texi (Top level): Removed erroneous spaces.  Documented
595         MAKE and MAKEFLAGS.
597 2001-05-29  Tom Tromey  <tromey@redhat.com>
599         * m4/init.m4 (AM_INIT_AUTOMAKE): Allow any AM_*FLAGS variable.
601         * automake.texi (Include): Rewrote.
602         (Suffixes): Remove Java example.
603         (Java): Added more explanation.  Document variables.
604         (Uniform): Mention JAVA as a primary.
605         (Python): Updated for new Python support.
606         (Sources): Added a weak example.
608         * lib/am/java.am (class%DIR%.stamp): Use AM_JAVACFLAGS.
610         * automake.texi (A Program): Mention `check' prefix.
611         (Program and Library Variables): New node.
612         (Texinfo): Document UPDATED-MONTH, MAKEINFOFLAGS, and
613         AM_MAKEINFOFLAGS.
614         (etags): Mention per-program flags.
615         (Tests): Document AM_RUNTESTFLAGS; added sectioning; more
616         updates.
618         * lib/am/texinfos.am (.PHONY): Always list uninstall-info-am and
619         install-info-am.
621 2001-05-28  Tom Tromey  <tromey@redhat.com>
623         * m4/Makefile.am (MAINT_CHARSET): Removed.
624         * Makefile.am (MAINT_CHARSET): Removed.
625         * automake.in (maint_charset, dist_charset): Removed.
626         (local_maint_charset): Removed.
627         (initialize_per_input): Don't use maint_charset.
628         (handle_dist): Don't compute maint_charset or check DIST_CHARSET.
630         * lib/am/texibuild.am (.%SUFFIX%.info): Use MAKEINFOFLAGS and
631         AM_MAKEINFOFLAGS.
632         (.%SUFFIX%.dvi): Likewise.
633         (.%SUFFIX%): Likewise.
635 2001-05-27  Tom Tromey  <tromey@redhat.com>
637         * automake.in (handle_multilib): Only add multilib support code at
638         top level.
639         * lib/am/multilib.am: Handle invocation of *-multi targets
640         differently for SUBDIRS and non-SUBDIRS Makefiles.
641         * m4/multi.m4 (AM_ENABLE_MULTILIB): Removed erroneous comment.
642         Only add multilib code when the Makefile in question is actually
643         rebuilt.
645         * lib/am/dejagnu.am (check-DEJAGNU): Added AM_RUNTESTFLAGS.
647 2001-05-25  Alexandre Duret-Lutz  <duret_g@epita.fr>
649         * automake.in (handle_single_transform_list): Skip unknown
650         extensions.
652 2001-05-25  Tom Tromey  <tromey@redhat.com>
654         * m4/init.m4 (AM_INIT_AUTOMAKE): Ignore AM_RUNTESTFLAGS.
656 2001-05-24  Tom Tromey  <tromey@redhat.com>
658         * automake.in (handle_texinfo_helper): Find mdate-sh in current
659         directory in some situations.
661         * automake.in (generate_makefile): Better explanation for ansi2knr
662         fix.
664 2001-05-23  Alexandre Duret-Lutz  <duret_g@epita.fr>
666         * automake.in (handle_languages): Skip unknown extensions.
667         (derive_suffix): Check whether $extension_map{$source_ext}
668         is undefined, not empty.
670 2001-05-23  Alexandre Duret-Lutz  <duret_g@epita.fr>
672         * automake.in (read_am_file): Ignore trailing backslash on
673         comment lines.
675 2001-05-22  Alexandre Duret-Lutz  <duret_g@epita.fr>
677         * automake.in (ASSIGNMENT_PATTERN): Forbid : and + in variable names.
679 2001-05-21  Akim Demaille  <akim@epita.fr>
681         * automake.texi (Macros): Explain the ``AC_PROG_LEX invoked
682         multiple times'' warning.
684 2001-05-20  Tom Tromey  <tromey@redhat.com>
686         * configure.in: Updated to 1.4g.
688         * configure.in: Updated to 1.4f.
690         * Makefile.am (EXTRA_DIST): Added ChangeLog.2000.
692         * lib/ansi2knr.c: New version.
694         * Makefile.am (FETCHFILES): Added ansi2knr.c.
695         (fetch): Likewise.
697 2001-05-19  Tom Tromey  <tromey@redhat.com>
699         * config.guess, config.sub: New versions from FSF.
701         * Makefile.am (fetch): Compare against files in srcdir.
703         For for ansi2knr report from Harlan Stenn:
704         * automake.in (generate_makefile): Run handle_compile before
705         handle_languages.
707 2001-05-18  Tom Tromey  <tromey@redhat.com>
709         * automake.in: Reverted erroneous checkin.
711 2001-05-18  Akim Demaille  <akim@epita.fr>
713         * lib/am/texinfos.am (install-info-am, uninstall-info-am): Be robust
714         to missing `install-info'.
716 2001-05-17  Tom Tromey  <tromey@redhat.com>
718         * automake.in (lang_c_finish): Use `rm -f'.
720         * automake.in (lang_c_finish): Remove _.c file if ansi2knr fails.
721         * tests/Makefile.am (TESTS): Added new file.
722         * tests/ansi5.test: New file.
724 2001-05-17  Alexandre Duret-Lutz  <duret_g@epita.fr>
726         * lib/am/install.am (install-strip): Set INSTALL_PROGRAM_ENV if
727         STRIP is not empty.
728         * m4/strip.m4 (AM_PROG_INSTALL_STRIP): Set INSTALL_STRIP_PROGRAM
729         to install-sh unconditionally.  Don't set INSTALL_STRIP_PROGRAM_ENV.
730         * automake.texi (Requirements): Document the use of the STRIP
731         variable in cross-compilation environments.
733 2001-05-17  Tom Tromey  <tromey@redhat.com>
735         * m4/depend.m4 (AM_DEPENDENCIES): If depcomp doesn't exist, revert
736         to no dependency tracking.
737         * tests/Makefile.am (TESTS): Added depcomp2.test.
738         * tests/depcomp2.test: New file.  From Pavel Roskin.
740         * lib/depcomp (aix): Bug fix and simplification from Larry Jones.
742         * lib/depcomp (tru64): New dependency tracking mode.
744         Fix for PR automake/159:
745         * lib/depcomp (aix): Rewrote.
746         (sgi): Likewise.
748         Fix for PR automake/174:
749         * tests/Makefile.am (XFAIL_TESTS): Removed comment3.test.
750         * automake.in (read_am_file): Warn if `#' is at start of rule.
752 2001-05-16  Tom Tromey  <tromey@redhat.com>
754         For PR automake/174:
755         * tests/Makefile.am (TESTS): Added comment3.test.
756         (XFAIL_TESTS): Likewise.
757         * tests/comment3.test: New file.
759         Fix for PR automake/175:
760         * tests/Makefile.am (XFAIL_TESTS): Removed make.test.
761         * m4/make.m4 (AM_MAKE_INCLUDE): Omit `Entering directory' and
762         `Leaving directory' messages.
764         For PR automake/175:
765         * tests/Makefile.am (XFAIL_TESTS): Added make.test.
766         * tests/make.test: Run test with `make -w'.
768         * tests/Makefile.am (TESTS): Removed maintclean.test.
769         * lib/am/clean.am (maintainer-clean-generic): Don't remove
770         Makefile.in.
771         * lib/am/configure.am (maintainer-clean-am): Removed.
772         (maintainer-clean-conf): Removed.
773         * tests/maintclean.test: Removed.
775 2001-05-15  Tom Tromey  <tromey@redhat.com>
777         Fix for PR automake/177:
778         * Makefile.am (maintainer-clean): Set perllibdir before invoking
779         automake or aclocal.
781         Fix for maintclean.test:
782         * tests/Makefile.am (XFAIL_TESTS): Removed maintclean.test.
783         * lib/am/clean.am (distclean-generic): Don't remove config.cache
784         or config.log.
785         (distclean, maintainer-clean): Moved to...
786         * lib/am/configure.am: ... here.
787         (distclean): Remove config.cache and config.log.
788         (maintainer-clean): Removed.
789         (maintainer-clean-conf): New target.
790         (maintainer-clean-am): New target.
792         * tests/Makefile.am (TESTS): Added maintclean.test.
793         (XFAIL_TESTS): Likewise.
794         * tests/maintclean.test: New file.
796         Fixes PR automake/175:
797         * tests/target-cflags.test: Use $needs_gnu_make.
798         * tests/exsource.test: Use $needs_gnu_make.
799         * tests/make.test: Require GNU make.
800         * tests/defs (needs_gnu_make): Compute.
802 2001-05-14  Tom Tromey  <tromey@redhat.com>
804         * lib/ylwrap: Fixed quoting on regular expression.  Fixes
805         yacc4.test.
807         Fix for texinfo10.test.
808         * tests/Makefile.am (XFAIL_TESTS): Remove texinfo10.test.
809         * lib/am/texinfos.am: Use LOCAL-TEXIS liberally.
810         * automake.in (handle_texinfo_helper): New sub.
811         (handle_texinfo): Rewrote.  Now defines LOCAL-TEXIS.
812         * tests/texinfo10.test: Added more cases.
814         Fix for yaccvpath.test:
815         * tests/Makefile.am (XFAIL_TESTS): Removed yaccvpath.test.
816         * lib/am/distdir.am (distdir): Always look for file in build
817         directory first.
818         * lib/ylwrap: Quote the `#line' regular expression.
819         * lib/am/yacc.am (%YACC_SUFFIX%%C_SUFFIX%): Reverted earlier
820         change; don't run sed on the generated file.
821         * tests/yaccvpath.test: Create new parser in srcdir.  Added test
822         to make sure parser will be rebuilt at dist time.
824 2001-05-13  Pavel Roskin  <proski@gnu.org>
826         * automake.in ($IGNORE_PATTERN): Allow spaces before comments
827         beginning with `##'.
828         * automake.texi (General Operation): Document it.
830 2001-05-13  Tom Tromey  <tromey@redhat.com>
832         Reported by Rainer Orth:
833         * lib/am/distdir.am (?DISTDIR?distdir): Define conditional on
834         TOPDIR_P.
835         * tests/Makefile.am (TESTS): Added distname.test.
836         * tests/distname.test: New file.
838         * Makefile.am (dist_pkgdata_DATA): Removed.
840         * tests/defs: Find files to copy in lib/.
841         * automake.in (perllibdir): Set to Automake directory.
842         * ansi2knr.c, ansi2knr.1: Removed.
843         * Makefile.am (dist_am_DATA): Removed.
844         (amdir): Removed.
845         (maintainer-check): Look for lib/am/*.am.  Expect 28 lines of
846         diffs.
847         (scriptdir): Removed.
848         (dist_script_DATA): Likewise.
849         (install-data-hook): Likewise.
850         (installcheck-local): Likewise.
851         (TAGS_FILES): Removed amfiles.
852         (dist_pkgdata_DATA): Removed ansi2knr.c and ansi2knr.1.
853         * tests/installsh.test (AUTOMAKE): Use --libdir, not --amdir, and
854         point it to the right directory.
855         * ansi2knr.am, check.am, clean-hdr.am, clean.am, comp-vars.am,
856         compile.am, configure.am, data.am, dejagnu.am, depend.am,
857         depend2.am, distdir.am, footer.am, header-vars.am, header.am,
858         install.am, java.am, lang-compile.am, lex.am, library.am, libs.am,
859         libtool.am, lisp.am, ltlib.am, ltlibrary.am, mans-vars.am,
860         mans.am, multilib.am, program.am, progs.am, python.am,
861         remake-hdr.am, scripts.am, subdirs.am, tags.am, texi-vers.am,
862         texibuild.am, texinfos.am, yacc.am: Moved to lib/am/.
863         * configure.in (AC_OUTPUT): Added lib/am/Makefile.
864         (AUTOMAKE): Use --libdir, not --amdir.
865         Ues AC_CONFIG_AUX_DIR.
866         * lib/Makefile.am (SUBDIRS): Added `am'.
867         (scriptdir): New macro.
868         (dist_script_DATA): Likewise.
869         (dist_pkgdata_DATA): Likewise.
870         (install-data-hook): New target.
871         (installcheck-local): Likewise.
872         * lib/am/Makefile.in: New file.
873         * lib/am/Makefile.am: Removed everything except amdir and
874         dist_am_DATA.
876 2001-05-13  Akim Demaille  <akim@epita.fr>
878         * automake.in ($pkgdata_dir): Rename as...
879         ($libdir): this.
880         ($am_dir): Remove, replace its uses with $libdir.
881         (&parse_arguments): Replace --amdir with --libdir.
882         * automake.texi (Invoking Automake): Document --libdir, not
883         --amdir.
884         * tests/defs (AUTOMAKE): Use --libdir, not --amdir.
886 2001-05-13  Tom Tromey  <tromey@redhat.com>
888         * m4/depout.m4 (AM_OUTPUT_DEPENDENCY_COMMANDS): Use AMDEP_TRUE,
889         not AMDEP.
890         * m4/depend.m4 (AM_DEPENDENCIES): Require AM_DEP_TRACK.
891         Correctly look at AMDEP_TRUE, not AMDEP.
893         Report from Robert Boehne:
894         * tests/Makefile.am (TESTS): Added depend2.test.
895         * tests/depend2.test: New file.
897 2001-05-13  James Henstridge  <james@daa.com.au>
899         * m4/python.m4 (AM_PATH_PYTHON): Added more names for python.
900         Point pythondir at site-packages directory.  Rename
901         PYTHON_SITE_PACKAGE to pkgpythondir.  Rename PYTHON_SITE_EXEC to
902         pyexecdir.  Removed package/module argument.  Removed
903         PYTHON_SITE_INSTALL.  Added version checking.
905 2001-05-14  Jim Meyering  <meyering@lucent.com>
907         * automake.in (macro_define): Change one remaining use of
908         `variable_dump' to `macro_dump'.
910 2001-05-13  Tom Tromey  <tromey@redhat.com>
912         * m4/depend.m4 (AM_DEPENDENCIES): Prefer gcc3 over gcc for objc
913         and gcj.
915 2001-05-13  Akim Demaille  <akim@epita.fr>
917         * automake.in (&scan_texinfo_file, &handle_dist, &handle_gettext)
918         (&handle_footer, &handle_factored_dependencies, &handle_emacs_lisp)
919         (&am_primary_prefixes): Use `map' rather than `grep'.
921 2001-05-13  Akim Demaille  <akim@epita.fr>
923         * automake.in (Language): Set config_vars for yacc, yaccxx, lex,
924         lexxx, asm.
925         (&lang_c_finish, &lang_yacc_finish, &lang_lex_finish): Simplify.
926         (&lang_asm_finish): Remove, set asm's finisher to C's one.
928 2001-05-13  Akim Demaille  <akim@epita.fr>
930         * lang-compile.am: New file, loaded once per language.
931         * depend2.am: Move definitions loaded once per language in the
932         aforementioned file.
933         * automake.in (&handle_languages): Load it.
934         (&lang_ppf77_finish, &lang_ratfor_finish): Remove as it's now
935         handled by lang-compile.am.
937 2001-05-13  Tom Tromey  <tromey@redhat.com>
939         * tests/Makefile.am (TESTS): Added python.test.
940         * tests/python.test: New file.
941         * automake.in (handle_languages): Use
942         config_aux_dir_set_in_configure_in.
943         (handle_python): Correctly mention AM_PATH_PYTHON.  Use
944         py-compile, not py_comp.  Define py_compile macro.
946 2001-05-13  Derek Price  <dprice@openavenue.com>
948         * automake.in (require_file_with_conf_line,
949         require_file_with_line, require_file): Pass a @require_file_path
950         of $relative_dir instead of '.' to require_file_internal so that
951         all the special casing of '.' can be removed elsewhere.
952         (require_config_file, require_conf_file_with_line,
953         require_conf_file_with_conf_line): Remove special casing for '.'
954         and make sure $config_aux_dir is maintained properly.
955         (require_file_internal): Remove special casing of '.' and set
956         @require_file_path when missing files are added.
957         (maybe_push_required_file): Remove special casing of '.'
958         (handle_dependencies): Remove a workaround for a bug now fixed
959         and remove $config_aux_dir special casing.
960         (handle_configure): Remove special casing for $config_aux_dir
961         (handle_python): Ditto.
962         (yacc_lex_finish_helper): Change $config_aux_dir switch to
963         switch on the value of $config_aux_dir_set_in_configure_in.
964         (handle_texinfo): Ditto.
965         (scan_one_configure_file): Set $config_aux_dir and
966         $config_aux_dir_set_in_configure_in properly so special casing
967         on the value of $config_aux_dir can be removed elsewhere.
968         * tests/depcomp.test: New file.
969         * tests/confsub.test: Look for depcomp in $(top_srcdir) instead of the
970         first subdir containing a C file.
971         * tests/libobj2.test: Ditto.
972         * tests/Makefile.am (TESTS): Added 'depcomp.test'.
974 2001-05-12  Tom Tromey  <tromey@redhat.com>
976         * tests/gcj.test: Updated for gcj dependency tracking.
977         * tests/gcj2.test: Likewise.
979         Fixes PR automake/169.
980         * m4/depend.m4 (AM_DEPENDENCIES): Handle GCJ.  Don't assume gcc
981         style for OBJC.
982         * automake.in (java): Added autodep entry.
983         * tests/Makefile.am (TESTS): Added gcj3.test.
984         * tests/gcj3.test: New file.
986 2001-05-12  Raja R Harinath  <harinath@cs.umn.edu>
988         * automake.in (ASSIGNMENT_PATTERN): Make variable-name pattern
989         stop at the first '='.
990         * tests/Makefile.am (TESTS): Added vars.test.
991         * tests/vars.test: New file.
993 2001-05-12  Akim Demaille  <akim@epita.fr>
995         * automake.in (&handle_single_transform_list): Simplify
996         computation of $object and $this_obj_ext.
997         * tests/lex3.test: Merge into...
998         * tests/lex.test: here.
999         * tests/pr19.test: Improve and rename as...
1000         * tests/lex3.test: this.
1002 2001-05-09  Tom Tromey  <tromey@redhat.com>
1004         * automake.in (read_am_file): Correctly compute $saw_bk.
1005         (scan_autoconf_files): Ensure configure_dist_common is always
1006         set.
1007         * tests/defs (AUTOMAKE): Added --Werror.
1009 2001-05-09  Pavel Roskin  <proski@gnu.org>
1011         * automake.in (define_compiler_variable): Escape $(LIBTOOL) in
1012         double quotes.
1014 2001-05-09  Tom Tromey  <tromey@redhat.com>
1016         * tests/werror.test: Use `rm -f'.
1018 2001-05-09  Akim Demaille  <akim@epita.fr>
1020         * automake.in (&am_line_warning): Invoke `am_line_error', not itself.
1022 2001-05-09  Akim Demaille  <akim@epita.fr>
1024         * automake.in: Remove some code left from bad patches.
1025         (&handle_dependency): Remove, for the same reason.
1027 2001-05-09  Akim Demaille  <akim@epita.fr>
1029         * automake.in (&make_paragraphs): Transform BUILD, HOST and TARGET.
1030         (&handle_tests_dejagnu, &define_standard_variables): Don't.
1031         (&define_standard_variables): Don't transform %top_builddir% since...
1032         * header-vars.am: Use %TOPDIR% instead.
1034 2001-05-09  Akim Demaille  <akim@epita.fr>
1036         * automake.in (@objects): Remove, unused.
1037         Remove all the code related to it, and to former `$(OBJECTS)'.
1039 2001-05-08  Tom Tromey  <tromey@redhat.com>
1041         For PR automake/29:
1042         * ylwrap: Handle arguments to program.  Remove old code that tried
1043         to avoid absolute paths and add new code to do it in all cases.
1044         Removed ancient logic that tried to deal with relative path.
1045         * tests/Makefile.am (TESTS): Added yacc4.test.
1046         * tests/yacc4.test: New file.
1048         Fix for PR automake/149 and werror.test:
1049         * automake.in (require_file_internal): Use am_line_warning or
1050         am_conf_line_warning when suppressing error.
1051         (am_line_warning): New sub.
1052         (am_conf_line_warning): Save and restore warning signal.
1053         * tests/Makefile.am (XFAIL_TESTS): Removed werror.test.
1055         Fix for PR automake/36:
1056         * tests/Makefile.am (TESTS): Added asm.test.
1057         * tests/asm.test: New file.
1058         * automake.in (asm): Use ASFLAGS and AS.
1059         (lang_asm_finish): New sub.
1061         * automake.in (read_am_file): Removed debugging code.
1063         For PR automake/149:
1064         * tests/Makefile.am (TESTS): Added werror.test.
1065         (XFAIL_TESTS): Likewise.
1066         * tests/werror.test: New file.
1068         * automake.in (conditional_true_when): Don't return if we see
1069         `TRUE'.
1071         * tests/objc.test: Removed.
1072         * tests/Makefile.am (XFAIL_TESTS): Removed objc.test.
1073         (TESTS): Likewise.
1075         * automake.in (subst): New sub.
1076         (handle_languages): Use it.
1077         (output_lex_build_rule): Likewise; also use _am_quote.
1078         (check_libobjs_sources): Likewise.
1079         (make_paragraphs): Use subst.
1081         * automake.in (check_libobjs_sources): Re-fixed AMDEP_TRUE
1082         problem.
1084         * automake.in (file_contents_internal): Prototype now `$$%'.
1085         (register_language): Prototype now `%'.
1087         Fixes test subobj6.test and PR automake/160:
1088         * tests/Makefile.am (XFAIL_TESTS): Removed subobj6.test.
1089         * compile.am (mostlyclean-compile): Added MOSTLYRMS.
1090         (distclean-compile): Added DISTRMS.
1091         * tests/subobj6.test (wish_SOURCES): Updated to reflect
1092         `mostlyclean' use; added test for non-subdir case.
1093         * automake.in (compile_clean_files): New global.
1094         (MOSTLY_CLEAN, DIST_CLEAN): New constants.
1095         (initialize_per_input): Initialize compile_clean_files.
1096         (handle_single_transform_list): Set compile_clean_files entries.
1097         (handle_compile): Handle compilation cleanups.
1099 2001-05-08  Lars J. Aas  <larsa@sim.no>
1101         * automake.texi (Canonicalizing Automake macros): Document not
1102         canonicalizing strudels (@) anymore.
1104 2001-05-08  Akim Demaille  <akim@epita.fr>
1106         * distdir.am (dist-all): Build all the flavors using a single
1107         distdir.
1109 2001-05-08  Akim Demaille  <akim@epita.fr>
1111         * automake.in (&file_contents_internal): Apply the @cond_stack to
1112         the rules and assignments.
1113         Don't rely on `$.' as it's biased by &make_paragraphs.
1114         Don't remove backslashes in variable values.
1116 2001-05-08  Akim Demaille  <akim@epita.fr>
1118         * automake.in ($IGNORE_PATTERN): Improve for multi-line matches.
1119         ($RULE_PATTERN): Use that from `&make_paragraphs'.
1120         ($MACRO_PATTERN): Just catch the name of a macro.
1121         ($BOGUS_MACRO_PATTERN): Remove.
1122         ($ASSIGNMENT_PATTERN): New.
1123         (&file_contents_internal, &make_paragraphs): Adjust.
1124         (&macro_define): Catch bad macro names.
1125         (&cond_stack_endif): Better error message.
1126         (&file_contents_internal): Don't remove backslashes in variable
1127         values.
1128         (&macro_define): Do it for `+=' user variables.
1129         (&define_standard_variables): Use `undef' instead of a dummy
1130         variable.
1131         (&make_paragraph): Be sure not to chop the trail of hash only
1132         lines: adjust the `##' regexp.
1133         (&rule_define): Fix a bug: don't read $1 but $target.
1134         * tests/condincl.test: Strengthen.
1136 2001-05-08  Akim Demaille  <akim@epita.fr>
1138         * automake.in (Language): Add attributes `Name' and `config_vars'.
1139         (&finish): Work properly if there is no _finish.
1140         (Automake): Register language Names and AC_SUBST dependencies.
1141         Register Fortran 77 variables upon which ratfor and ppf77 depend.
1142         (&handle_languages): Once per language, invoke
1143         `define_linker_variables', and check its config_vars.
1144         (&lang_cxx_finish, &lang_f77_finish, &lang_objc_finish)
1145         (&lang_java_finish): Remove.
1146         (&lang_ppf77_finish, &lang_ratfor_finish): Adjust.
1148 2001-05-08  Akim Demaille  <akim@epita.fr>
1150         * automake.in (&file_contents_internal): Accept $IS_AM.
1151         (&handle_compile, &define_standard_variables, &file_contents): Adjust.
1153 2001-05-08  Akim Demaille  <akim@epita.fr>
1155         * automake.in (am_install_var): Use `next' instead of `if' on the
1156         body of $X loop.
1158 2001-05-08  Akim Demaille  <akim@epita.fr>
1160         * automake.in (Language): Add attributes `lder' and `ld'.
1161         (&register_language): Specify for cxx, objc, f77, gcj.
1162         (&define_linker_variable): New.
1163         (&lang_cxx_finish, &lang_f77_finish, &lang_objc_finish)
1164         (&lang_java_finish): Adjust.
1165         (&libtool_compiler): Remove.
1167 2001-05-08  Akim Demaille  <akim@epita.fr>
1169         * automake.in (&handle_lib_objects_cond): Don't take $LEX_SEEN as
1170         argument, as you don't use it.
1171         Hence...
1172         (&handle_lib_objects): Don't take $LEX_SEEN as argument, as you
1173         don't use it.
1174         Hence...
1175         (&handle_programs): Don't mess with %lex_sources, as you don't use
1176         it.
1178 2001-05-08  Akim Demaille  <akim@epita.fr>
1180         * automake.in (Language): Add attribute `link'.
1181         (&register_language): Specify for cxx, objc, f77, gcj.
1182         (&lang_cxx_finish, &lang_f77_finish, &lang_objc_finish)
1183         (&lang_java_finish): Adjust.
1185 2001-05-08  Akim Demaille  <akim@epita.fr>
1187         * automake.in (&define_compiler_variables): Use only $LANG as
1188         argument.
1189         (&handle_languages): Adjust.
1191 2001-05-08  Akim Demaille  <akim@epita.fr>
1193         * automake.in (&define_program_variable): Remove.
1194         (&scan_one_autoconf_file): Skip MAKEINFO when found in an
1195         AM_MISSING_PROG.
1196         (&handle_texinfo): Don't define MAKEINFO and TEXI2DVI.
1197         * texinfos.am: Do it.
1199 2001-05-08  Akim Demaille  <akim@epita.fr>
1201         * automake.in (&handle_tests_dejagnu): Don't define EXPECT and
1202         RUNTEST.
1203         * dejagnu.am: Do it.
1204         (site.exp): Use `if'.
1206 2001-05-08  Akim Demaille  <akim@epita.fr>
1208         * automake.in: Formatting changes.
1209         (variable_dump, variables_dump): Rename as...
1210         (macro_dump, macros_dump): these.
1212 2001-05-08  Akim Demaille  <akim@epita.fr>
1214         Support `if !COND', `else COND', `end COND'.
1216         * automake.texi (Conditionals): Document it.
1217         * automake.in ($WHITE_PATTERN, $MACRO_PATTERN, $BOGUS_MACRO_PATTERN)
1218         ($GNITS_VERSION_PATTERN, $INCLUDE_PATTERN): Use `\d' and `\s'.
1219         ($IF_PATTERN, $ELSE_PATTERN, $ENDIF_PATTERN): Likewise, and accept
1220         a leading `!' before the condition.
1221         (&handle_options): Use `\d'.
1222         (&cond_stack_if, &cond_stack_else, &&cond_stack_endif): New.
1223         (&read_am_file, &file_contents_internal): Use them.
1224         (&transform): No longer substitute `%!COND%', forcing the use of
1225         `! %?COND%'.
1226         * ansi2knr.am, lex.am, tags.am, texinfos.am, yacc.am: Adjust.
1228 2001-05-08  Akim Demaille  <akim@epita.fr>
1230         Uniform handling of per-object compilation rules.
1231         Note: Automake is repaired.
1233         * automake.in (&handle_languages): Output per object rules for all
1234         the objects, not only for those which language supports dependency
1235         tracking.
1236         Fix Automake: when outputting per-object rules, use `-o' if the
1237         language has no `output_flag', as it's really needed.
1238         (&handle_single_transform_list): Instead of special casing files
1239         which need per object rules but which language don't support
1240         dependency tracking, keep them in the queue for processing by
1241         `&handle_languages'.
1243 2001-05-08  Akim Demaille  <akim@epita.fr>
1245         * automake.in (&handle_languages): `ext-compile.am' and
1246         `depend2.am' are now equivalent for generic rules: output only the
1247         latter.
1248         * ext-compile.am: Remove.
1250 2001-05-08  Akim Demaille  <akim@epita.fr>
1252         Note: This patch breaks Automake.  Repaired within two patches.
1254         * automake.in (Language): Replace the attribute `output_arg' with
1255         `compile_flag' and `output_flag'.
1256         (Automake): Adjust language registrations.
1257         (&handle_languages): Transform `-c' and `-o' for both suffix and
1258         per object rules, instead of `OUTARG' and `LTOUTARG' only for
1259         generic rules.
1260         (&handle_single_transform_list): Adjust to `compile_flag' and
1261         `output_flag'.
1262         * depend2.am, ext-compile.am: Use `%-c%' and `%-o%'.
1264 2001-05-08  Akim Demaille  <akim@epita.fr>
1266         * automake.in (&handle_languages): Don't transform %COMPILER%.
1267         Use `$lang->compiler' instead of `$pfx' to transform generic
1268         %COMPILE% and %LTCOMPILE%.
1269         * ext-compile.am: Use %COMPILE%, %LTCOMPILE% and %SOURCE% instead
1270         of %COMPILER% and $<.
1272 2001-05-07  Akim Demaille  <akim@epita.fr>
1274         * automake.in (&handle_languages): Use the same `%transform' for
1275         both `depend2.am' and `ext-compile.am'.
1276         Delay the definition of `$flag' so it is right before the first use,
1277         and rename as `$flags'.
1279 2001-05-07  Akim Demaille  <akim@epita.fr>
1281         * automake.in (&handle_languages): Compute `$ltoutarg' and
1282         `$outarg' independently of dependency code.
1283         There is no use looping on a language's possible extensions since
1284         we loop over used extensions.
1285         Therefore, there is no use for a local `%transform'.
1287 2001-05-07  Akim Demaille  <akim@epita.fr>
1289         * automake.in (&handle_languages): Don't use $comp.
1291 2001-05-07  Akim Demaille  <akim@epita.fr>
1293         * automake.in (&handle_languages): Merge the two loops over
1294         %extension_seen/%languages into one and group code to be run once
1295         per language together.
1297 2001-05-07  Akim Demaille  <akim@epita.fr>
1299         * automake.in (&handle_languages): Move the `if
1300         ($use_dependencies)' block so that loops over extensions and
1301         languages are next to each other.
1303 2001-05-07  Akim Demaille  <akim@epita.fr>
1305         * automake.in (&depend2): Remove, merged into...
1306         (&handle_languages): here.
1308 2001-05-07  Akim Demaille  <akim@epita.fr>
1310         * automake.in (&finish_languages): Rename as...
1311         (&handle_languages): this.
1312         Include the body of...
1313         (&handle_dependency): this.
1314         Remove.
1316 2001-05-06  Tom Tromey  <tromey@redhat.com>
1318         For PR automake/46:
1319         * tests/Makefile.am (TESTS): Add subdir5.test.
1320         (XFAIL_TESTS): Likewise.
1321         * tests/subdir5.test: New file.
1323         * tests/subobj6.test (wish_SOURCES): Use $MAKE.
1324         * tests/subobj5.test (wish_SOURCES): Use $MAKE.
1326         * automake.in (GNITS_VERSION_PATTERN): Document.  Add `fork
1327         identifier'.
1328         (handle_options): Handle fork identifier in version number.
1330         * automake.texi (Dist): Document distcheck-hook.
1332         * tests/confh4.test: Update to reflect DEFS change.
1333         For PR automake/132.
1335         Fix for PR automake/132:
1336         * automake.in (c, c++, objc, asm, ppf77): Add DEFAULT_INCLUDES to
1337         compilation.
1338         (java): Remove INCLUDES and DEFS from compilation.
1339         (lang_c_finish): Add DEFAULT_INCLUDES to compilation.
1340         * compile.am (DEFS): Don't include %DEFAULT_INCLUDES%.
1341         (DEFAULT_INCLUDES): New macro.
1343         * automake.in (usage): Re-align explanatory text.
1344         Fixes PR automake/148.
1346         * automake.texi (Uniform): Don't use @PROGRAMS@.
1347         Fixes PR automake/154.
1349         For PR automake/160:
1350         * tests/Makefile.am (TESTS): Add subobj5.test and subobj6.test.
1351         (XFAIL_TESTS): Add subobj6.test.
1352         * tests/subobj6.test: New file.
1354         * automake.texi (Uniform): Mention dist_, nodist_, and nobase_.
1355         (Top level): Don't mention `flat'.
1356         (Extending): Likewise.
1357         (User Variables): New node.
1359         * distdir.am (distdir): Make subdirectory for each file.
1360         Fixes test subobj5.test.
1362         * tests/Makefile.am (TESTS): Add new file.
1363         (XFAIL_TESTS): Likewise.
1364         * tests/texinfo10.test: New file.
1366 2001-05-05  Pavel Roskin <proski@gnu.org>
1368         * automake.in (scan_texinfo_file): Treat @defindex and @synindex
1369         in the same way as @defcodeindex and @syncodeindex respectively.
1371 2001-05-05  Tom Tromey  <tromey@redhat.com>
1373         * mans.am (install-man%SECTION%): Minor cleanup.
1374         (uninstall-man%SECTION%): Likewise.
1376         * tests/Makefile.am (XFAIL_TESTS): Removed man.test.
1377         * mans.am (install-man%SECTION%): Handle dist_ and nodist_
1378         prefixes.
1379         (uninstall-man%SECTION%): Likewise.
1380         * automake.in (handle_man_pages): Handle dist_ and nodist_
1381         prefixes.
1383         * automake.texi (Future): Removed.
1384         (Depth): Removed.
1385         (Hello): Don't mention `deep'.
1386         (Top level): Likewise.
1388         * automake.in (conditional_true_when): Use a hash, not index().
1389         Also, a TRUE component always results in a true return.
1390         Fixes test cond10.test.  For PR automake/164.
1391         * tests/Makefile.am (XFAIL_TESTS): Removed cond10.test.
1393 2001-05-05  Raja R Harinath  <harinath@cs.umn.edu>
1395         For PR automake/164:
1396         * tests/Makefile.am (TESTS): Added new file.
1397         (XFAIL_TESTS): Likewise.
1398         * tests/cond10.test: New file.
1400 2001-05-05  Tom Tromey  <tromey@redhat.com>
1402         * texinfos.am (uninstall-info-am): Debian install-info v1.8.3
1403         prints to stderr.
1404         (install-info-am): Likewise.
1406 2001-05-05  Pavel Roskin <proski@gnu.org>
1408         * automake.in (scan_texinfo_file): Don't push undefined values
1409         to @clean_suffixes.
1411 2001-05-05  Richard Boulton  <richard@tartarus.org>
1413         * automake.in (handle_dist): Check for existence of DIST_SUBDIRS
1414         first.
1416 2001-05-05  Robert Collins  <robert.collins@itdomain.com.au>
1418         * automake.in (required_targets): Added uninstall-am.
1420 2001-05-05  Tom Tromey  <tromey@redhat.com>
1422         Fix bug reported by Robert Boehne:
1423         * automake.in (output_lex_build_rule): Don't let AMDEP_TRUE be
1424         substituted.
1425         (handle_dependencies): Likewise.
1426         * Makefile.am (maintainer-check): Look for AMDEP_TRUE
1427         substitution.  Correct diff now has 30 lines.  Look for space
1428         after losing `undef'.
1430 2001-05-04  Peter Eisentraut  <peter_e@gmx.net>
1432         * m4/sanity.m4: Remove the temp file before possible error exits.
1434 2001-05-04  Akim Demaille  <akim@epita.fr>
1436         * configure.in: Set perllibdir.
1437         From Dave Morrison.
1439 2001-05-04  Ralf Corsepius  <corsepiu@faw.uni-ulm.de>
1441         * automake.in ($pkgdata_dir): New.
1442         (&require_file_internal): Use it.
1444 2001-05-03  Akim Demaille  <akim@epita.fr>
1446         Case insensitive FS choke on Automake/ vs automake.
1447         Reported by Tim Van Holder.
1449         * Automake/: Move into...
1450         * lib/: this new directory.
1452 2001-05-03  Raja R Harinath  <harinath@cs.umn.edu>
1454         * data.am (install-%DIR%%PRIMARY%): Execute the same command as
1455         echoed.
1457 2001-04-30  Jim Meyering  <meyering@lucent.com>
1459         * automake.in: Remove `/lib' from include directory.
1461 2001-04-27  Akim Demaille  <akim@epita.fr>
1463         AM_INIT_AUTOMAKE is no longer optional.
1465         * automake.in ($seen_make_set, $seen_prog_install)
1466         ($seen_arg_prog): Remove.
1467         (&handle_programs, &handle_scripts, &scan_one_autoconf_file):
1468         Remove related code.
1470 2001-04-27  Akim Demaille  <akim@epita.fr>
1472         * tests/specflags4.test, tests/specflags5.test: Remove, merged
1473         into...
1474         * tests/specflags3.test: here.
1476 2001-04-27  Akim Demaille  <akim@epita.fr>
1478         * automake.in ($seen_path_xtra): Remove.
1479         (&handle_compile): Don't handle `AC_PATH_XTRA' AC_SUBST variables.
1480         (&scan_one_autoconf_file): Do it, instead of setting $seen_path_xtra.
1482 2001-04-27  Akim Demaille  <akim@epita.fr>
1484         * automake.in (&file_contents_internal): Declare it.
1486 2001-04-27  Akim Demaille  <akim@epita.fr>
1488         * automake.in (&read_am_file, &file_contents_internal): Don't
1489         define macros when `FALSE', to avoid errors on doubly defined
1490         variables but under condition `FALSE'.  In order to allow...
1491         (&am_install_var): When reading the associated file for the first
1492         time, enable `%?FIRST%'.
1493         (&handle_libraries): Let libs.am define $(AR) and $(RANLIB).
1494         * libs.am: Do it when `%?FIRST%'.
1496 2001-04-27  Akim Demaille  <akim@epita.fr>
1498         * automake.in (handle_compile): Let ansi2knr.am define $(ANSI2KNR).
1499         * ansi2knr.am: Do it.
1500         Prefer `if %?FOO%' to `if %!FOO%'.
1502 2001-04-27  Akim Demaille  <akim@epita.fr>
1504         * automake.in (&register_language, &finish_languages): Use `pure'
1505         as a Boolean.
1506         (&register_language): Use %done properly with objects, not names.
1507         (&finish_languages): Replace `$non_c' with `$needs_c'.
1509 2001-04-27  Akim Demaille  <akim@epita.fr>
1511         Unify LISP, PYTHON and JAVA primaries.
1513         * automake.in (&handle_emacs_lisp): Be like &handle_python, i.e.,
1514         return if there are no files, hook elisp-comp on the Autoconf
1515         macro, rely on lisp.am to define variables.
1516         (&handle_python, &handle_java): Likewise.
1517         (&scan_one_autoconf_file): Pseudo AC_SUBST of `pythondir' and
1518         `PYTHON' must be handled here, not in `&handle_python'.
1519         * java.am: Define needed variables and rules.
1521 2001-04-27  Akim Demaille  <akim@epita.fr>
1523         * automake.in (&am_install_var): Transform `ONE_PRIMARY'.
1524         * data.am: Use it.
1525         * header.am: Include data.am.
1527 2001-04-27  Akim Demaille  <akim@epita.fr>
1529         * automake.in (&am_install_var): Transform `PRIMARY'.
1530         * data.am: Equip with %PRIMARY%.
1532 2001-04-27  Akim Demaille  <akim@epita.fr>
1534         * automake.in (@conditional_stack): Rename as...
1535         (@cond_stack): this.
1536         (&file_contents_internal): Support inclusion of files.
1538 2001-04-27  Akim Demaille  <akim@epita.fr>
1540         * automake.in (&lang_extensions): Remove.
1541         (&add_depend2, &saw_sources_p): Adjust.
1542         * depend2.am: `%EXT%' no longer includes the dot.
1544 2001-04-27  Akim Demaille  <akim@epita.fr>
1546         * automake.in (&finish_languages, &handle_single_transform_list)
1547         (&add_depend2, &handle_dependencies): No longer use the language
1548         name in `$lang'.  Rename `$lang_obj' as `$lang'.
1550 2001-04-27  Akim Demaille  <akim@epita.fr>
1552         * automake.in (&register_language): Use `new Language' with a hash.
1554 2001-04-27  Akim Demaille  <akim@epita.fr>
1556         * automake.in (&register_language): Rename `output-arg' and
1557         `derived-autodep' as `output_arg' and `derived_autodep' to match
1558         the Language attribute.
1559         Set the defaults in %option instead of $lang.
1561 2001-04-27  Akim Demaille  <akim@epita.fr>
1563         * Automake/: New directory.
1564         * Automake/Struct.pm: New file, based on Perl 5.6's Class::Struct.
1565         * automake.in (Language): Use Automake::Struct.
1566         * tests/defs: Adjust to find Struct.
1568 2001-04-23  Pavel Roskin <proski@gnu.org>
1570         * automake.in: Add forward declaration for register_language().
1571         * tests/Makefile.am (XFAIL_TESTS): Remove installsh.test - it
1572         passes now.
1574 2001-04-20  Akim Demaille  <akim@epita.fr>
1576         * automake.in (%required_targets): Add `uninstall'.
1577         From Robert Collins.
1579 2001-04-12  Akim Demaille  <akim@epita.fr>
1581         * automake.in (Language): Add attribute `name'.
1582         (&register_language): The name of the language is now given in the
1583         hash.
1584         No longer use `$lang' as the name of the language.
1585         Rename `$lang_obj' as `$lang'.
1587 2001-04-12  Akim Demaille  <akim@epita.fr>
1589         * automake.in (Language): Add attribute `_finish'.
1590         (&finish): New.
1591         (Automake): Adjust.
1592         (&lang_header_finish, &lang_yaccxx_finish, &lang_lexxx_finish)
1593         (&lang_asm_finish): Remove.
1595 2001-04-12  Akim Demaille  <akim@epita.fr>
1597         * automake.in (Language): Add attribute `extensions'.
1598         (Automake): Pass a hash to `&register_language' instead of a
1599         list of pseudo assignments.
1600         (&register_language): Adjust.
1601         (&finish_languages): Initialize `$ltoutarg'.
1603 2001-04-12  Akim Demaille  <akim@epita.fr>
1605         * automake.in (Language): Add attribute `output_arg'.
1606         (%language_map): Remove.
1607         (&register_language): Build only the object, and store in
1608         %languages only.
1609         (&finish_languages, &handle_single_transform_list): Adjust.
1611 2001-04-12  Akim Demaille  <akim@epita.fr>
1613         * automake.in (Language): Add attributes `flags', `compile' and
1614         `compiler'.
1615         (&finish_languages, &handle_single_transform_list, &handle_dist)
1616         (&add_depend2, &register_language): Use them and the `linker' and
1617         `pure' attributes.
1619 2001-04-12  Akim Demaille  <akim@epita.fr>
1621         * automake.in (&handle_single_transform_list, &finish_languages)
1622         (&handle_dist, &handle_dependencies): Use the language object for
1623         autodep and derived-autodep too.
1625 2001-04-12  Akim Demaille  <akim@epita.fr>
1627         * automake.in (&macro_define): Ignore Automake definition for
1628         ($var, $cond) if there is already a user definition for ($var, $cond).
1630 2001-04-12  Akim Demaille  <akim@epita.fr>
1632         * automake.in (&scan_texinfo_file): Catch @cindex and the like,
1633         but also @deffn and so on which push data in indexes.
1634         Reported by Derek R. Price.
1636 2001-04-12  Akim Demaille  <akim@epita.fr>
1638         * automake.in (Language): New package, temporarily in this file.
1639         Use Class::Struct.
1640         (Automake): New package.
1641         (%languages): New.
1642         (&handle_single_transform_list): Use the language object's `ansi'
1643         attribute instead of `$language_map{"$lang-ansi-p"}'.
1644         (&register_language): Build and register the language too.
1646 2001-04-11  Tom Tromey  <tromey@redhat.com>
1648         Fixes report from Larry Jones:
1649         * automake.in (handle_dependencies): Add `@_am_quote@' where
1650         appropriate.
1651         * m4/make.m4 (AM_MAKE_INCLUDE): Handle BSD-style make.
1653 2001-04-11  Akim Demaille  <akim@epita.fr>
1655         * depend2.am: Fix the `if' condition for Libtool.
1656         Reported by Robert Boehne.
1658 2001-04-10  Robert Collins  <robert.collins@itdomain.com.au>
1660         * tests/subobj5.test: New file.
1662 2001-04-10  Ralf Corsepius  <corsepiu@faw.uni-ulm.de>
1664         * m4/make.m4 (AM_MAKE_INCLUDE): Pass `-s' to make.
1665         * tests/Makefile.am (TESTS): Added make.test.
1666         * tests/make.test: New file.
1668 2001-04-10  Tom Tromey  <tromey@redhat.com>
1670         * tests/defs: Changed how ACLOCAL and AUTOMAKE are set.
1672 2001-04-10  Derek R. Price  <dprice@collab.net>
1674         * tests/defs: Allow user to override AUTOMAKE and ACLOCAL.
1676 2001-04-10  Akim Demaille  <akim@epita.fr>
1678         * distdir.am: Add a missing backslash.
1680 2001-04-10  Akim Demaille  <akim@epita.fr>
1682         * automake.in (&scan_aclocal_m4): Handle $relative_dir and special
1683         variables.
1684         Specify to the caller whether $regen_aclocal_m4.
1685         (&handle_configure): Adjust.
1686         Transform `REGEN-ACLOCAL-M4'.
1687         Reported by Tom.
1688         * configure.am: Use it.
1689         * tests/defs (me): New.
1690         * tests/confdeps.test: New.
1692 2001-04-09  Tom Tromey  <tromey@redhat.com>
1694         * m4/missing.m4 (AM_MISSING_HAS_RUN): Use `true', not `:'.
1695         Fixes report from Jim Meyering.
1697 2001-04-09  Akim Demaille  <akim@epita.fr>
1699         * automake.in (&handle_configure): Don't bother with optimizing
1700         macro uses.
1702 2001-04-09  Akim Demaille  <akim@epita.fr>
1704         * tests/cond3.test (expected): Adjust.
1706 2001-04-09  Akim Demaille  <akim@epita.fr>
1708         * automake.in (&handle_single_transform_list): Remove $xbase,
1709         unused.
1710         (&handle_source_transform): All the variables have conditions now,
1711         simplify.
1712         (&variable_delete): Admit an argument @conds.
1714 2001-04-09  Akim Demaille  <akim@epita.fr>
1716         * automake.in ($source_suffix_pattern): Remove, unused.
1717         %extension_map seems to have replaced it.
1719 2001-04-09  Akim Demaille  <akim@epita.fr>
1721         * ext-compile.am: New file.
1722         * automake.in (&finish_languages): Output it.
1723         Require a C linker if there are several registered source suffixes.
1724         (&handle_compile): No longer push the `.c', `.o', `.obj', `.lo'
1725         extensions, which are discovered in ext-compile.am.
1726         With the help from Robert Boehne.
1728 2001-04-09  Akim Demaille  <akim@epita.fr>
1730         * automake.in (&handle_compile): Extract from...
1731         (&get_object_extension): here.
1732         (&read_am_file): Call it.
1733         ($included_generic_compile, $included_knr_compile)
1734         ($included_libtool_compile): Remove.
1735         ($get_object_extension_was_run): New.
1737 2001-04-09  Akim Demaille  <akim@epita.fr>
1739         Use AM_CONDITIONAL and if/endif for AMDEP.
1741         * m4/depend.m4 (AM_DEP_TRACK): Use AM_CONDITIONAL to define AMDEP.
1742         * automake.in (&add_depend2): Transform %AMDEP% into `AMDEP' (leading
1743         to a configure time if/endif), or to `FALSE' (static removal of
1744         the code).
1745         (&handle_dependencies): Adjust to use `AMDEP_TRUE'.
1746         * depend2.am: Use if/endif.
1748         Adjust the 101 tests that use dependencies so that they
1749         properly invoke aclocal before automake.  They need to `see'
1750         `AM_CONDITIONAL([AMDEP], ...)'.
1752 2001-04-09  Akim Demaille  <akim@epita.fr>
1754         * tags.am: Fix missing leading tabs.
1756 2001-04-09  Akim Demaille  <akim@epita.fr>
1758         * automake.in: Use simple quotes to define the _PATTERN variables
1759         to unobfuscate the regexps.
1760         ($AM_CONDITIONAL_PATTERN): Let the user quote the variable.
1762 2001-04-09  Akim Demaille  <akim@epita.fr>
1764         * automake.in (&rule_define): When you discover a suffix rules,
1765         register the extensions for .SUFFIXES.
1766         (&handle_texinfo): Don't register the suffixes.
1767         (&get_object_extension): Don't register suffixes, let them be
1768         discovered in depend2.am.
1769         (&handle_emacs_lisp): Depend on your lisp.am.
1770         * lisp.am: Include the rule &handle_emacs_lisp used to output.
1772 2001-04-09  Akim Demaille  <akim@epita.fr>
1774         * subdirs.am: Don't define info related recursive targets.
1775         * texinfos.am: Do.
1777 2001-04-09  Akim Demaille  <akim@epita.fr>
1779         * subdirs.am (RECURSIVE_TARGETS): New variable.
1780         Use it.
1781         * automake.in (&handle_subdirs): Output it.
1782         (&file_contents_internal): Support value spread on several lines.
1784 2001-04-09  Akim Demaille  <akim@epita.fr>
1786         * automake.in (&handle_man_pages): Rely on mans.am to define
1787         man%SECTION%dir and MANS.
1788         * mans.am: Do it.
1790 2001-04-09  Akim Demaille  <akim@epita.fr>
1792         * automake.in (&variable_dump): Use %var_type properly.
1793         (&macro_define): Enforce better overriding rules.
1794         Handle the special case that used to handle...
1795         (&define_pretty_variable): this.
1796         Hence, don't.
1797         The variables you define are owned by Automake.
1798         (&generate_makefile): PRE_INSTALL and co must not be defined *by
1799         the user*.
1800         (&variable_defined): Now independent of the owner.
1801         (&variable_output, &variable_pretty_output): Adjust to %var_type.
1803 2001-04-09  Akim Demaille  <akim@epita.fr>
1805         * automake.in (%var_was_plus_eq): Rename as...
1806         (%var_type): this.
1807         (%def_type): Remove.
1808         (&macro_define): %var_type may now hold `', `+', or `:'.
1809         (%conditional, %am_vars, %content_lines): Rename as...
1810         (%var_value, %var_comment, %var_line): these.
1812 2001-04-09  Akim Demaille  <akim@epita.fr>
1814         * automake.in (&variable_output): Admit a list of @CONDS.
1815         (&variable_pretty_output): New.
1816         (&define_pretty_variable): Use it.
1817         (&read_am_file, &file_contents_internal): Prepend a separator to
1818         $am_vars only if there is none yet.
1819         (&file_contents_internal): Rename $separator as $spacing to
1820         harmonize with &read_am_file.
1822 2001-04-09  Akim Demaille  <akim@epita.fr>
1824         * automake.in (&am_install_var): Transform DIST, and let the *.am
1825         files handle DIST_COMMON.
1826         * data.am, header.am, java.am, list.am, python.am, script.am: Set
1827         DIST_COMMON.
1829 2001-04-09  Akim Demaille  <akim@epita.fr>
1831         * automake.in (%dist_common): Remove.
1832         (%configure_dist_common): Replace with...
1833         ($configure_dist_common): this.
1834         (&generate_makefile): Read the user file before using
1835         push_dist_common, as it sets DIST_COMMON, and read_am_file checks
1836         that no variable is defined before it is run.
1837         (&handle_texinfo): Don't handle DIST_COMMON, let your file do it.
1838         (&dist_cmp): Rename as...
1839         (&for_dist_common): this.
1840         (&handle_dist): Don't handle DIST_COMMON, let `configure.am' do
1841         it.
1842         Adjust to $configure_dist_common.
1843         * configure.am, texi-vers.am: Set DIST_COMMON.
1845 2001-04-09  Akim Demaille  <akim@epita.fr>
1847         * automake.in (&handle_aclocal_m4): Rename as...
1848         (&scan_aclocal_m4): this.
1849         Return the list of aclocal.m4 dependencies.
1850         (&handle_configure): Invoke it, and use it when loading...
1851         * configure.am: Template the rules to recreate aclocal.m4.
1853 2001-04-09  Akim Demaille  <akim@epita.fr>
1855         * automake.in (&get_object_extension): Use ansi2knr.am.
1856         * clean-kr.am, kr-extra.am: Remove, merged into...
1857         * ansi2knr.am: this new file.
1859 2001-04-09  Akim Demaille  <akim@epita.fr>
1861         * automake.in (&transform): Fix an incredible bug which was
1862         breaking the if/endif system.
1863         ($ELSE_PATTERN): Admit an optional argument.
1865 2001-04-09  Akim Demaille  <akim@epita.fr>
1867         * comp-vars.am: Remove, merged into...
1868         * compile.am: here.
1869         * automake.in (&get_object_extension): Adjust.
1871 2001-04-09  Akim Demaille  <akim@epita.fr>
1873         * remake.am: Merge into...
1874         * configure.am: ... here.
1875         * automake.in (&handle_configure): Adjust.
1877 2001-04-09  Akim Demaille  <akim@epita.fr>
1879         * automake.in (&output_lex_build_rule): Output this...
1880         * lex.am: New file.
1882 2001-04-09  Akim Demaille  <akim@epita.fr>
1884         * automake.in (&condition_negate): New.
1885         (&variable_conditions_permutations): Use it.
1886         (&read_am_file, &file_contents): Use it on `else' clauses to
1887         support `if FALSE'.
1888         (&output_yacc_build_rule): Output this...
1889         * yacc.am: New file.
1891 2001-04-09  Akim Demaille  <akim@epita.fr>
1893         * automake.in (&make_paragraphs): Transform TOPDIR_P and TOPDIR.
1894         (&handle_dist): Don't.
1895         (&handle_clean): Don't handle config.status here, let...
1896         * clean.am: ... do it.
1897         * distdir.am: Adjust.
1899 2001-04-09  Akim Demaille  <akim@epita.fr>
1901         * automake.in: Use strict vars and subs.
1902         Declare `%require_file_found'.
1903         (&handle_source_transform, &make_paragraphs): Declare my variables.
1905 2001-04-09  Akim Demaille  <akim@epita.fr>
1907         * data.am, header.am, java.am, libs.am, lisp.am, ltlib.am,
1908         * progs.am, python.am: Use if/endif instead of ?INSTALL?.
1909         * java.am (_am_installdirs): Be sure to set it.
1911 2001-04-09  Akim Demaille  <akim@epita.fr>
1913         * automake.in (&make_condition): Return '#' when FALSE.
1914         (&conditional_string): Return FALSE, not '#' in the corresponding
1915         cases.
1916         (&file_contents_internal): Adjust.
1917         (&check_variable_defined_unconditional): Dump the guilty variable.
1919 2001-04-09  Akim Demaille  <akim@epita.fr>
1921         * distdir.am: Use and abuse of if/endif.
1922         * scripts.am: Using if/endif with variables is fine.
1924 2001-04-09  Akim Demaille  <akim@epita.fr>
1926         * automake.in (&make_paragraphs):  Extract from &file_contents.
1927         Make it more robust than the previous RE based scheme.
1928         (&file_contents): Use it.
1930 2001-04-09  Akim Demaille  <akim@epita.fr>
1932         * automake.in (&make_paragraphs):  Extract from &file_contents.
1933         Make it more robust than the previous RE based scheme.
1934         (&file_contents): Use it.
1936 2001-04-09  Akim Demaille  <akim@epita.fr>
1938         * tests/yacc2.test: Don't define several times a variable, as
1939         automake complains.
1941 2001-04-09  Akim Demaille  <akim@epita.fr>
1943         * automake.in (&handle_source_transform): Fix pr72: don't define
1944         $linker if there are no @files.
1946 2001-04-09  Akim Demaille  <akim@epita.fr>
1948         Avoid reading twice header-vars.am as now macro_define
1949         complains.
1951         * automake.in (&define_standard_variables): Don't output the
1952         variables.
1953         (&read_main_am_file): Output first user variables, then Automake
1954         variables.
1955         Don't call twice &define_standard_variables.
1956         Save variable comments in $am_vars.
1957         (&variable_output): New.
1958         (&file_contents_internal): New.
1959         Save variable comments in $am_vars.
1960         (&file_contents): Use it.
1962 2001-04-09  Akim Demaille  <akim@epita.fr>
1964         * automake.in (&macro_define): The user is allowed to override
1965         a value if it was set by Automake, or if it was found in AC_SUBST.
1967 2001-04-09  Akim Demaille  <akim@epita.fr>
1969         * automake.in (&handle_source_transform): Better locality of the
1970         variables.
1971         Use `next' to skip nonexistent variables.
1973 2001-04-09  Akim Demaille  <akim@epita.fr>
1975         * automake.in (&variable_dump): If a variable is undefined, say
1976         it.
1977         (&check_ambiguous_conditional): Give finer error messages.
1978         (&macro_define): Check that a `+=' variable is not set with `='.
1979         Check for ambiguous definitions each time you _set_ (even with `+=')
1980         a variable.
1981         (&read_main_am_file): Perform a deep copy of %conditional.
1983 2001-04-09  Akim Demaille  <akim@epita.fr>
1985         * automake.in (&variable_defined): Some callers, e.g.,
1986         &am_primary_prefixes, really want to know if the variable is
1987         defined for any condition, not `TRUE' by default.
1988         (&am_primary_prefixes): Give a more precise error message.
1990 2001-04-09  Akim Demaille  <akim@epita.fr>
1992         (&variable_conditions): Don't include `FALSE' in the result.
1994 2001-04-09  Akim Demaille  <akim@epita.fr>
1996         * automake.in (&variable_conditions_reduce): FALSE is absorbent.
1997         (&variable_conditions): Don't include `FALSE' in the result.
1999 2001-04-09  Akim Demaille  <akim@epita.fr>
2001         * tests/defs, tests/depend3.test: Remove useless code.
2003 2001-04-09  Akim Demaille  <akim@epita.fr>
2005         * automake.in (&handle_source_transform):  Use
2006         &variable_conditions, don't read $conditional{$var}.
2007         (&variable_conditions_sub): When the call is the top level call,
2008         generate all the permutations of the conditions.
2010 2001-04-09  Akim Demaille  <akim@epita.fr>
2012         * depend2.am (@AMDEP@%FPFX%DEPMODE): Define it when GENERIC so
2013         that it does not get noticed twice by automake, which now
2014         complains for multiple definitions.
2015         * tests/vartar.test: s/INSTALL/install/g, automake now complains
2016         because we defined INSTALL.
2018 2001-04-09  Akim Demaille  <akim@epita.fr>
2020         * automake.in (&generate_makefile) Use macro_define to define
2021         SOURCES and OBJECTS.
2022         (&variable_defined): Don't check for $conditional{VAR}{COND} as
2023         this would make perl create $condition{VAR}, which we don't want.
2025 2001-04-09  Akim Demaille  <akim@epita.fr>
2027         * automake.in (&variable_defined, &define_pretty_variable):
2028         Simplify code which used to handle the cases where not all
2029         variables were in %conditional.
2030         (&define_variable): Use &define_pretty_variable.
2031         (&variable_conditions_sub, &variable_value_as_list_worker)
2032         (&variable_value_as_list, &rule_define): Simplify syntax.
2033         (&read_main_am_file): Dump the guilty predefined variables.
2035 2001-04-09  Akim Demaille  <akim@epita.fr>
2037         * automake.in (&variable_conditions_sub)
2038         (&variable_value_as_list_worker): Remove dead code which used to
2039         handle the cases where not all variables were in %conditional.
2041 2001-04-09  Akim Demaille  <akim@epita.fr>
2043         * automake.in (&handle_source_transform, &read_main_am_file):
2044         Simplify loops which were split in two parts, conditional vs
2045         unconditional variables.
2047 2001-04-09  Akim Demaille  <akim@epita.fr>
2049         Handle unconditional values of variables as conditioned by
2050         `TRUE'.
2052         * automake.in (%contents): Remove.
2053         (&generate_makefile, &handle_ltlibraries, &macro_define)
2054         (&read_am_file, &variable_defined, &variable_conditions_sub)
2055         (&variable_value, &variable_value_as_list_worker)
2056         (&variable_value_as_list, &define_pretty_variable)
2057         (&read_main_am_file): Use
2058         $conditional, not %contents.
2059         (&variable_conditions_permutations): Don't return TRUE and FALSE.
2060         (&variable_conditionally_defined): New.
2061         (&handle_dist): Use it.
2062         (&check_ambiguous_conditional): When multiply defined, specify
2063         under which condition.
2064         (&macro_define): Use it.
2065         (&variable_delete): New.
2066         (&read_am_file): Use it.
2067         (&am_install_var): Simplify, as all the variables are in
2068         %conditional now.
2070 2001-04-07  Tom Tromey  <tromey@redhat.com>
2072         * tests/Makefile.am (XFAIL_TESTS): Added man.test.
2073         (TESTS): Likewise.
2074         * tests/man.test: New file.
2076 2001-04-07  Raja R Harinath  <harinath@cs.umn.edu>
2078         * depcomp (gcc3): Invert test condition.
2080 2001-04-07  Tom Tromey  <tromey@redhat.com>
2082         * depcomp (gcc3, gcc): Don't assume $? will be set in `if'
2083         statement.  Report from Larry Jones.
2085 2001-04-07  Raja R Harinath  <harinath@cs.umn.edu>
2087         * depcomp (sgi): Fix sed expression.  Report from Robert Boehne.
2089 2001-04-01  Tom Tromey  <tromey@redhat.com>
2091         * java.am (.PHONY clean-am): Removed trailing ":".
2092         From Per Bothner.  Fixes PR automake/139.
2094 2001-03-28  Akim Demaille  <akim@epita.fr>
2096         * program.am: Fix a stupid typo: now *all* (not none) the programs
2097         use `$(EXEEXT)'.
2098         Reported by Robert Boehne.
2100 2001-03-23  Akim Demaille  <akim@epita.fr>
2102         * automake.in (&read_am_file, &file_contents): Avoid name clashes
2103         on $cond.
2105 2001-03-23  Akim Demaille  <akim@epita.fr>
2107         * automake.in (&variable_conditionally_defined): Rename as...
2108         (&check_variable_unconditionally_defined): this.
2109         (&variable_dump): Fix the output.
2110         (&variable_defined, &macro_define): Since conditions are
2111         canonicalized, don't use a loop to look for a condition: read the
2112         hash.
2113         (&macro_define, &rule_define, &read_am_file, &file_contents):
2114         Rename $cond_string as $cond.
2115         * distdir.am (PACKAGE, VERSION): Remove; since they are already
2116         discovered via AC_SUBST, they now trigger a `defined twice' error.
2118 2001-03-23  Akim Demaille  <akim@epita.fr>
2120         * automake.in (&handle_footer, &handle_installdirs)
2121         (&read_main_am_file): Don't read %contents directly, use
2122         &variable_value.
2124 2001-03-23  Akim Demaille  <akim@epita.fr>
2126         * automake.in (&read_am_file): Define the variables in a single
2127         shot.
2128         Factor the $saw_bk code.
2130 2001-03-23  Akim Demaille  <akim@epita.fr>
2132         * automake.in (&read_am_file): Keep $cond_string up to date.
2134 2001-03-23  Akim Demaille  <akim@epita.fr>
2136         * automake.in (&define_variable): Use &macro_define.
2138 2001-03-23  Akim Demaille  <akim@epita.fr>
2140         * automake.in (&macro_define): Don't lose the location if we
2141         redefine a variable.
2142         Don't push all the variables in @var_list, let...
2143         (&read_am_file, &file_contents): ... do it.
2144         (&define_pretty_variable): Use macro_define.
2145         (&am_install_var): Delete the value of variables being redefined
2146         to pacify &macro_define which checks that variables are not
2147         doubly defined.
2149 2001-03-23  Akim Demaille  <akim@epita.fr>
2151         * automake.in (&conditional_dump): Rename as...
2152         (&variables_dump): this.  Use...
2153         (&variable_dump): this new sub.
2155 2001-03-23  Akim Demaille  <akim@epita.fr>
2157         * automake.in (&file_contents): Maintain $cond_string sync with
2158         @cond_stack.
2159         Output rules only if not under `FALSE'.
2160         Define variables under $cond_string.
2161         * scripts.am: For the time being if/endif does not work properly
2162         with macros.
2164 2001-03-23  Akim Demaille  <akim@epita.fr>
2166         * automake.in (IF_PATTERN): Unobfuscate the parens.
2167         (ENDIF_PATTERN): Allow a condition to be specified.
2168         (&file_contents): Use a @cond_stack.
2169         (&transform): At least for an easy transition, also transform
2170         %?FOO% and %!FOO%, as suggested by Lars.
2171         * scripts.am: First test bed for static if/endif use.
2173 2001-03-23  Akim Demaille  <akim@epita.fr>
2175         * automake.in (&file_contents): Use rule_define.
2177 2001-03-23  Akim Demaille  <akim@epita.fr>
2179         * automake.in (&macro_define): Don't rely on $1.
2180         Initialize the variable.
2181         Set its Automakism only if not defined or if given to the user.
2182         When concatenating values, insert a separator only if the value
2183         was not empty.
2184         (&read_am_file): When dumping the @var_list, skip Automake
2185         variables.
2186         (&file_contents): Use macro_define.
2188 2001-03-23  Akim Demaille  <akim@epita.fr>
2190         * automake.in (&rule_define): Extract from...
2191         (&read_am_file): here.
2193 2001-03-23  Akim Demaille  <akim@epita.fr>
2195         * automake.in (&macro_define, &read_am_file): More work for the
2196         former from the latter.  Reorganize the latter.
2198 2001-03-23  Akim Demaille  <akim@epita.fr>
2200         * automake.in (&macro_define): Extract from...
2201         (&read_am_file): here.
2203 2001-03-23  Akim Demaille  <akim@epita.fr>
2205         * automake.in (%am_var_defs): Replace with...
2206         (%var_is_am): this.
2207         (&handle_installdirs, &variable_value_as_list_worker, &read_am_file)
2208         (&file_contents, am_primary_&prefixes): Adjust.
2209         (&variable_defined, &define_variable): The actual semantics is
2210         `user defined'.
2211         (&read_main_am_file): Assert the var is user defined when
2212         outputting @var_list.
2214 2001-03-23  Akim Demaille  <akim@epita.fr>
2216         * automake.in (read_am_file): TRUE and FALSE are predefined
2217         conditionals.
2218         (&by_condition): Adjust.
2219         (&conditional_string): Recognize `TRUE' and `FALSE'.
2220         (&make_condition): Use it.
2221         * m4/cond.m4: Reject TRUE and FALSE as conditionals.
2222         * automake.texi (Conditionals): Adjust.
2223         * tests/cond9.test: s/FALSE/WRONG/.
2225 2001-03-12  Pavel Roskin  <proski@gnu.org>
2227         * tests/Makefile.am (XFAIL_TESTS): Remove cond3.test, it passes
2228         now.
2230 2001-03-12  Akim Demaille  <akim@epita.fr>
2232         * automake.in (&variable_conditions_permutations): Separate the
2233         conditions.
2234         * tests/cond3.test: Improve the sed expression.
2236 2001-03-09  Pavel Roskin  <proski@gnu.org>
2238         * Makefile.am (maintainer-check): Scan all *.am files and tests
2239         for invocations of `rm' without `-f'.
2240         * tests/mclean.test: Adjusted to prevent triggering the above
2241         test.
2243 2001-03-09  Tom Tromey  <tromey@redhat.com>
2245         * automake.in (scan_one_autoconf_file): Fixed comment to avoid
2246         maintainer-check failure.
2248 2001-03-09  Akim Demaille  <akim@epita.fr>
2250         * tests/cond3.test: Strengthen.
2252 2001-03-09  Akim Demaille  <akim@epita.fr>
2254         * automake.in (&conditional_string): Produce a unique string
2255         characterizing a condition stack.
2256         (&conditional_same): Remove, comparing two strings is now enough.
2257         (&variable_defined): Adjust.
2258         (&read_am_file): Use conditional_string.
2260 2001-03-08  Akim Demaille  <akim@epita.fr>
2262         * automake.in: Use -w.
2263         Normalize all use of `$lang . '-foo'' into `"$lang-foo"'.
2264         (&parse_arguments): Support --Werror and --Wno-error as a
2265         temporary hack until --warning/-W is properly implemented.
2266         (&handle_single_transform_list): Prototype.
2267         Be sure to define $directory.
2268         Use `exists' instead of testing the value of a maybe undefined
2269         hash value.
2270         (&add_depend2, &handle_configure, &handle_footer, &file_contents)
2271         (&handle_factored_dependencies): Use defined values.
2272         (&scan_one_autoconf_file): Save $_.
2273         * tests/lex2.test, tests/sinclude.test, tests/suffix3.test:
2274         Run automake with --Wno-error.
2276 2001-03-07  Akim Demaille  <akim@epita.fr>
2278         * automake.in (&handle_all): Use an array instead of a scalar for
2279         local_headers.
2280         Get rid of all-redirect: let `all' be that target.
2282 2001-03-07  Akim Demaille  <akim@epita.fr>
2284         * automake.in (&handle_merge_targets): Ventilate its non `all'
2285         related content into...
2286         (&generate_makefile): here.
2287         (&handle_merge_targets): Rename as...
2288         (&handle_all): this.
2289         Remove a useless `if': `@all' is obviously not empty, since it
2290         contains at least the `basename ($makefile)' which has just been
2291         unshifted.
2293 2001-03-07  Akim Demaille  <akim@epita.fr>
2295         * automake.in, aclocal.in: Backquote is inert in double quotes.
2297 2001-03-06  Akim Demaille  <akim@epita.fr>
2299         * Makefile.am (maintainer-check): Simplify `grep -v ... | grep .'
2300         into `grep -v ...'.
2302 2001-03-06  Pavel Roskin  <proski@gnu.org>
2304         * java.am: Use `rm -f' instead of `rm'.
2306 2001-03-06  Akim Demaille  <akim@epita.fr>
2308         * automake.in (&push_dist_common): Simplify.
2310 2001-03-06  Jens Krüger <jens_krueger@physik.tu-muenchen.de>
2312         * ltlib.am: Replaced spaces with tab.
2314 2001-03-06  Pavel Roskin  <proski@gnu.org>
2316         * tests/Makefile.am (XFAIL_TESTS): noinstdir.test removed, it's
2317         fixed now.
2319 2001-03-05  Pavel Roskin  <proski@gnu.org>
2321         * header.am, scripts.am: Use ?INSTALL? in the install and
2322         uninstall rules.
2324 2001-03-05  Pavel Roskin  <proski@gnu.org>
2326         * tests/copy.test: Never use `rm' without `-f' - it may ask
2327         questions, notably for read-only files during `make distcheck'.
2328         * tests/insh.test: Likewise.
2329         * tests/installsh.test: Likewise.
2330         * tests/symlink.test: Likewise.
2331         * tests/symlink2.test: Likewise.
2332         * tests/symlink3.test: Likewise.
2334 2001-03-05  Pavel Roskin  <proski@gnu.org>
2336         * noinstdir.test: New test.
2337         * tests/Makefile.am (TESTS): Add noinstdir.test.
2338         (XFAIL_TESTS): Likewise.
2340 2001-03-05  Akim Demaille  <akim@epita.fr>
2342         * automake.in (&handle_options): Change the RE so that the third
2343         part of the versions always exist.
2344         (&file_contents): Don't pass uninitialized values to &transform.
2346 2001-03-05  Akim Demaille  <akim@epita.fr>
2348         * automake.in (&file_contents): Require a hash as second argument.
2349         Adjust callers.
2351 2001-03-05  Akim Demaille  <akim@epita.fr>
2353         Always use hashes with &file_contents.
2355         * automake.in (&handle_texinfo): texibuild.am does not need
2356         TEXINFODIR.
2357         texinfos.am wants only TEXICLEANS.
2358         (&handle_dist, &add_depend2, &handle_clean): Replace $xform with
2359         %transform.
2360         * texinfos.am: Adjust.
2362 2001-03-05  Akim Demaille  <akim@epita.fr>
2364         * automake.in (&handle_programs, &handle_libraries, &handle_tags)
2365         (&handle_ltlibraries, &handle_emacs_lisp, &handle_python): Adjust.
2366         (&am_install_var): Forget about `-clean'.
2367         Transform ?INSTALL?.
2368         Always output the *.am file.
2369         * data-clean.am, java-clean.am, libs-clean.am, lisp-clean.am,
2370         * ltlib-clean.am, progs-clean.am, python-clean.am, tags-clean.am:
2371         Remove, merged into the corresponding *.am file.
2372         * data.am, libs.am, ltlib.am, progs.am, python.am: Equip with
2373         ?INSTALL?.
2375 2001-03-05  Pavel Roskin  <proski@gnu.org>
2377         * Makefile.am (amfiles): Add configure.am. Sort alphabetically.
2379 2001-03-05  Akim Demaille  <akim@epita.fr>
2381         If OBJEXT and EXEEXT are not set, provide a default value, and use
2382         them unconditionally.
2384         * automake.in (&generate_makefile): Provide default values for
2385         EXEEXT and OBJEXT.
2386         (&get_object_extension, &finish_languages)
2387         (&handle_single_transform_list, &handle_programs, &add_depend2)
2388         (&check_cygnus, &lang_c_finish, am_install_var): Don't bother with
2389         them, they are defined.
2390         * compile.am, depend2.am, program.am, progs.am: Likewise.
2391         * remake-hdr.am: Fix a typo.
2392         * tests/cxxo.test, tests/fo.test, tests/implicit.test,
2393         * tests/interp.test, tests/subobj.test, tests/subobj2.test,
2394         * tests/suffix2.test: Adjust.
2396 2001-03-05  Akim Demaille  <akim@epita.fr>
2398         * automake.in (&file_contents): Map MAINTAINER-MODE to
2399         @MAINTAINER_MODE_TRUE@ or nothing.
2400         * configure.am, remake-hdr.am, remake.am, texi-vers.am: Adjust.
2401         Suggested by Tom.
2403 2001-03-05  Akim Demaille  <akim@epita.fr>
2405         * automake.in (&do_one_merge_target): Remove, was only called from...
2406         (&handle_merge_targets): here for `all'.
2407         Adjust.
2409 2001-03-05  Akim Demaille  <akim@epita.fr>
2411         Make the installation/uninstallation of Info pages follow the
2412         regular am/recursive scheme.
2414         * automake.in (%required_targets, %dependencies): Add
2415         install-info.
2416         (%dependencies): Add install-info, install-info-am, and
2417         unstall-info.
2418         (&handle_subdirs): Don't transform INSTALLINFO, which mapping was
2419         reversed BTW.  Does anybody use the option `no-installinfo'?
2420         (&handle_merge_targets): Let the handling of info related targets
2421         to...
2422         (&handle_factored_dependencies): this.
2423         * subdirs.am: Use ?INSTALL-INFO?.
2424         * texinfos.am: Define the install-info, uninstall-info and
2425         uninstall-info-am targets.
2427 2001-03-05  Akim Demaille  <akim@epita.fr>
2429         * automake.in (%required_targets, %dependencies): Add dvi, info,
2430         dvi-am, info-am.
2431         (@info, @dvi): Remove.
2432         (&handle_texinfo, &handle_merge_targets): Adjust.
2433         (&handle_factored_dependencies): Required targets are phony.
2434         * texinfos.am: Build info, dvi, and the corresponding -am or
2435         -recursive targets.
2437 2001-03-05  Akim Demaille  <akim@epita.fr>
2439         * automake.in (&am_install_var): Remove $cygxform, unused.
2441 2001-03-05  Akim Demaille  <akim@epita.fr>
2443         * automake.in (&file_contents): Transform LIBTOOL.
2444         (&am_install_var): Remove $ltxform.
2445         * ltlib.am, progs.am: Adjust.
2447 2001-03-05  Akim Demaille  <akim@epita.fr>
2449         * automake.in: Require AC_PROG_INSTALL in...
2450         (&scan_autoconf_files): here.
2452 2001-03-05  Akim Demaille  <akim@epita.fr>
2454         * configure.am: New file.
2455         * automake.in (&file_contents): Transform CONFIGURE-AC.
2456         (&handle_texinfo, &handle_configure): Don't transform
2457         CONFIGURE_AM.
2458         (&handle_configure): Use `configure.am'.
2459         * remake-hdr.am, remake.am, texi-vers.am: Adjust to
2460         MAINTAINER-MODE and CONFIGURE-AC.
2462 2001-03-05  Akim Demaille  <akim@epita.fr>
2464         * automake.in (&pretty_print_internal): Don't output useless
2465         spaces.
2466         (define_pretty_variable): Don't issue the space after the `=' sign
2467         to avoid trailing spaces in Makefile.ins.
2469 2001-03-05  Akim Demaille  <akim@epita.fr>
2471         * automake.in (&generate_makefile): Invoke &initialize_per_input
2472         *before* setting $am_file_name and $in_file_name.
2474 2001-03-05  Akim Demaille  <akim@epita.fr>
2476         * automake.in ($in_file_name, $am_file_name, $relative_dirs):
2477         Globals, initialized...
2478         (&initialize_per_input): here.
2480 2001-03-05  Akim Demaille  <akim@epita.fr>
2482         * automake.in ($am_relative_dir): Global.
2483         (&initialize_per_input): Init it.
2484         (%make_list, @make_input_list): My them from
2485         (&scan_autoconf_files): here.
2486         (&require_file_internal): Mying changes.
2488 2001-03-05  Akim Demaille  <akim@epita.fr>
2490         * automake.in (%am_vars, @var_list, %def_type): Globals.
2491         (&initialize_per_input): Initialize them.
2492         (&read_main_am_file): Don't local them.
2493         (&get_object_extension): $objext is private.
2494         (&handle_single_transform_list): $lang is.
2495         (&handle_ltlibraries): $libname_rx is.
2496         (&scan_autoconf_config_files): How about actually paying attention
2497         to your arguments, instead of working on $_? (this is no Perl
2498         variable, it's a Perl variable followed by a question mark).
2499         (&file_contents): $contents and $separator are private.
2500         (&am_install_var): Declare @condvals, not $condvals.
2501         (%make_dirs): My.
2503 2001-03-05  Akim Demaille  <akim@epita.fr>
2505         * automake.in (&initialize_per_input): Move to the top.
2506         Precede with the `my' list of its variables.
2508 2001-03-05  Akim Demaille  <akim@epita.fr>
2510         * automake.in ($am_file): Use vars.
2511         ($am_file_name, $in_file_name): Private to &generate_makefile.
2513 2001-03-05  Akim Demaille  <akim@epita.fr>
2515         * automake.in: Preparation for `use strict': Move the
2516         initialization of the constants to the top, from...
2517         (&initialize_global_constants): here.
2519 2001-03-05  Akim Demaille  <akim@epita.fr>
2521         * automake.in (&handle_single_transform_list, &add_depend2): Let
2522         $lang_specific_files{$lang} be a list instead of a string.
2524 2001-03-05  Akim Demaille  <akim@epita.fr>
2526         Let's make it run ten times faster...
2528         * automake.in (&transform): Be sure to remove the `\n' with ?FOO?
2529         transformations.
2530         (&file_contents): Let `$command' remove the Automake commands, and
2531         normalize the series of `\n'.
2532         Slurp the file and apply $command in a single step.
2533         No longer apply the `@MAINTAINER_MODE_TRUE@' transformation which
2534         is already normalized to be handled by &transform.
2536 2001-03-05  Tom Tromey  <tromey@redhat.com>
2538         * automake.in (register_language): Add entry for `-pure'.
2539         Added `pure=yes' entries for cxx, objc, f77, ppf77, ratfor, java.
2540         (finish_languages): Use `-pure' field of language map.
2542 2001-03-03  Tom Tromey  <tromey@redhat.com>
2544         * tests/yaccvpath.test: No need to remove dummy files.
2545         * tests/subobj3.test: No need to remove dummy files.
2546         * tests/pr9.test: No need to remove dummy files.
2547         * tests/pr87.test: No need to remove dummy files.
2548         * tests/pr19.test: No need to remove dummy files.
2549         * tests/install2.test: No need to remove dummy files.
2550         * tests/defs: Actually copy in install-sh, mkinstalldirs, missing,
2551         and depcomp.
2553 2001-02-27  Pavel Roskin  <proski@gnu.org>
2555         * tests/yaccvpath.test: Add a delay to make parse.c really out
2556         of date. Detect the problem earlier, after `make distdir'. Drop
2557         dependency on flex. Always use the `-y' flag for bison. Comment
2558         changes.
2559         * tests/Makefile.am: Add yaccvpath.test to XFAIL_TESTS.
2561 2001-03-02  Jens Krüger <jens_krueger@physik.tu-muenchen.de>
2563         * depend2.am (?!GENERIC??LIBTOOL?%LTOBJ%): Add `%' to fix typo.
2565 2001-02-28  Akim Demaille  <akim@epita.fr>
2567         * automake.in (&add_depend2): Transform `GENERIC'.
2568         Get rid of the ad hoc transformation of `@EXT@.o:' which in
2569         addition was broken by the `@ -> %' patch.
2570         * depend2.am: Adjust to use ?GENERIC?.
2572 2001-02-28  Akim Demaille  <akim@epita.fr>
2574         * Makefile.am (maintainer-check): `undef $/' is OK.
2576 2001-02-28  Akim Demaille  <akim@epita.fr>
2578         * automake.in (&handle_configure): Fortunately, $top_reldir,
2579         the definition of which was highly suspicious, was unused.
2581 2001-02-27  Akim Demaille  <akim@epita.fr>
2583         * automake.in (%exec_dir_p): Move to the top so that it is visible
2584         to all routines.
2586 2001-02-27  Pavel Roskin  <proski@gnu.org>
2588         * tests/yaccvpath.test: Prevent automake from looking into ..
2589         and ../.. by using AC_CONFIG_AUX_DIR in configure.in.
2591 2001-02-27  Akim Demaille  <akim@epita.fr>
2593         * automake.in (%exec_dir_p): Pulled out from...
2594         (&am_primary_prefixes): here.
2596 2001-02-27  Akim Demaille  <akim@epita.fr>
2598         * automake.in (&usage): Display $0, not $me.
2600 2001-02-27  Akim Demaille  <akim@epita.fr>
2602         * mans.am: s/INSTALL_MAN/INSTALL-MAN/.
2603         * automake.in (&handle_clean): Don't escape what's given to
2604         &transform.
2606 2001-02-27  Akim Demaille  <akim@epita.fr>
2608         Distinguish automake substitutions from config.status
2609         substitutions.
2611         * automake.in (&add_depend2): Transform AMDEP.
2612         (&handle_clean): Transform MCFILES and MFILES.
2613         (&file_contents): Transform MAINTAINER_MODE.
2614         (&transform, &am_install_var): Use `%', not `@'.
2615         Adjust all the *.am files.
2616         * clean.am: Use ?MFILES? instead of ad hoc MAINTAINERCLEAN.
2617         * depend2.am: Display the double dependency on both ?AMDEP? and
2618         @AMDEP@.
2620 2001-02-27  Tom Tromey  <tromey@redhat.com>
2622         * distdir.am (distcheck): Fixed new code.
2624         * tests/yaccvpath.test: Fail gracefully if bison/flex not found.
2625         Only configure once.
2627         * distdir.am (distcheck): Print error message if distclean failed
2628         to fully clean.
2630 2001-02-27  Pavel Roskin  <proski@gnu.org>
2632         * tests/Makefile.am (TESTS): s/yaccpvath/yaccvpath/.
2634 2001-02-25  Alexandre Duret-Lutz  <duret_g@epita.fr>
2636         * tests/Makefile.am (TESTS): Added yaccvpath.test.
2637         * tests/yaccvpath.test: New file.
2639 2001-02-26  Akim Demaille  <akim@epita.fr>
2641         * automake.in (&am_install_var): Recognize whether predefined
2642         directories are `data' or `exec'.
2643         * libs.am, ltlib.am, progs.am, python.am, scripts.am: Install
2644         ?EXEC?.
2645         * tests/instdata2.test: Update.
2647 2001-02-26  Akim Demaille  <akim@epita.fr>
2649         * texinfos.am: No ?EXEC? hook as currently installing TEXINFOS is
2650         necessarily in infodir.
2652 2001-02-26  Akim Demaille  <akim@epita.fr>
2654         * automake.in ($am_file): Be `local', as my'd variables used in
2655         `foreach' loops are always private to the loop.
2657 2001-02-26  Pavel Roskin  <proski@gnu.org>
2659         * Makefile.am: Add install.am.
2661 2001-02-26  Akim Demaille  <akim@epita.fr>
2663         * automake.in (&target_cmp, &dist_cmp): Do not prototype comparing
2664         routines, otherwise the elements to compare are passed in @_
2665         instead of $a and $b.
2667 2001-02-26  Akim Demaille  <akim@epita.fr>
2669         * automake.in (%required_targets): `installcheck-am' is needed.
2671 2001-02-26  Akim Demaille  <akim@epita.fr>
2673         * automake.in (&transform_cond): Merge into...
2674         (&transform): this.
2675         Adjust all uses.
2677 2001-02-26  Akim Demaille  <akim@epita.fr>
2679         * automake.in (&handle_dist): Use &transform instead of dedicated
2680         magic for DISTDIRS.
2681         But be sure to always do it.
2682         * distdir.am: Adjust.
2684 2001-02-26  Akim Demaille  <akim@epita.fr>
2686         * automake.in: Use File::Basename.
2687         (&dirname, &basename): Remove.
2689 2001-02-26  Akim Demaille  <akim@epita.fr>
2691         * automake.in ($me): New.
2692         Use it.
2693         (&usage): Display your full name.
2695 2001-02-26  Akim Demaille  <akim@epita.fr>
2697         * automake.texi (Invoking Automake): Remove dead options.
2699 2001-02-26  Akim Demaille  <akim@epita.fr>
2701         * automake.in (&scan_texinfo_file): Also compute the list of files
2702         to clean.
2703         Handle local errors.
2704         (&handle_texinfo): Use it.
2706 2001-02-26  Akim Demaille  <akim@epita.fr>
2708         * automake.in: Don't pass arguments to...
2709         (&parse_arguments): Work on @ARGV.
2710         Use Getopt.
2711         Add support for `-f'.
2712         (&version): New.
2713         (&usage): Update.
2715 2001-02-26  Akim Demaille  <akim@epita.fr>
2717         * automake.in (&handle_merge_targets, &do_one_merge_target): Don't
2718         handle installcheck and installcheck-am.
2719         * install.am: Do it.
2721 2001-02-26  Akim Demaille  <akim@epita.fr>
2723         * automake.in (&handle_merge_targets, &do_one_merge_target): Don't
2724         handle install and install-am.
2725         * install.am: Do it.
2727 2001-02-26  Akim Demaille  <akim@epita.fr>
2729         * automake.in (&handle_merge_targets, &do_one_merge_target): Don't
2730         work on targets handled by %dependencies.
2731         (&handle_factored_dependencies): Do it.
2732         * install.am: Install install-exec, install-data and uninstall's
2733         suites.
2735 2001-02-26  Akim Demaille  <akim@epita.fr>
2737         * automake.in (&handle_merge_targets): Move `install-strip' from
2738         here...
2739         * install.am: to here.
2741 2001-02-26  Akim Demaille  <akim@epita.fr>
2743         * automake.in (@installdirs): Remove.
2744         (&file_contents): Be able to grow Automake macros with `+='.
2745         (&handle_texinfo, &handle_man_pages, &am_install_var): Let your
2746         files define _am_installdirs.
2747         (&handle_installdirs): Remove the code, just output `install.am'.
2748         * install.am: New.
2749         * data.am, header.am, libs.am, lisp.am, ltlib.am, mans.am, progs.am,
2750         * python.am, scripts.am, texinfos.am: Extend $(_am_installdirs).
2752 2001-02-26  Akim Demaille  <akim@epita.fr>
2754         * tests/instdata2.test (libexec_DATA): Exercise more
2755         possibilities.
2757 2001-02-25  Alexandre Duret-Lutz  <duret_g@epita.fr>
2759         * header-vars.am (INSTALL_STRIP_FLAG): Remove (obsolete).
2761 2001-02-25  Tom Tromey  <tromey@redhat.com>
2763         * tests/instdata2.test: Added `sbin_DATA' check.
2765         * tests/Makefile.am (TESTS): Added subdircond.test.
2766         * tests/subdircond.test: New file.
2767         * automake.in (handle_gettext): Don't fail if SUBDIRS
2768         conditionally defined.
2770         * automake.in: Use IO::File.
2771         (generate_makefile): Use IO::File.
2772         (scan_texinfo_file): Likewise.
2773         (handle_aclocal_m4): Likewise.
2774         (scan_autoconf_traces): Likewise.
2775         (scan_one_autoconf_file): Likewise.
2776         (read_am_file): Likewise.
2777         (file_contents): Likewise.
2778         (create): Likewise.
2780 2001-02-25  Akim Demaille  <akim@epita.fr>
2782         * automake.in (handle_texinfo): Remove code handled by texinfos.am.
2784 2001-02-25  Akim Demaille  <akim@epita.fr>
2786         * automake.in (&transform): Also call &transform_cond on your
2787         arguments.
2788         (&handle_dist): Adjust.
2789         (&handle_factored_dependencies): Uniq dependencies.
2791 2001-02-25  Akim Demaille  <akim@epita.fr>
2793         * automake.in (&handle_gettext): Simplify redundant `if'.
2794         Used &variable_value, don't read %contents directly.
2796 2001-02-25  Akim Demaille  <akim@epita.fr>
2798         * automake.in ($install_recursive): Remove, replaced with calls to
2799         `&variable_defined ('SUBDIRS')'.
2800         (&handle_dist, &handle_clean): Don't transform_cond SUBDIRS since...
2801         (&file_contents): now does.
2803 2001-02-25  Akim Demaille  <akim@epita.fr>
2805         * automake.in (&handle_man_pages): $found is dead.
2807 2001-02-25  Akim Demaille  <akim@epita.fr>
2809         Internally just store the conditionals as space separated lists of
2810         CONDITIONS (instead of @CONDITIONS@).
2812         * automake.in (&conditional_true_when, &variable_conditions_sub):
2813         Split conditions at spaces.
2814         (&handle_dependencies, &variable_conditions_permutations): Don't
2815         put @ around conditions.
2816         (&variable_conditions_cmp): There are no @ to strip.
2817         (&make_condition): New.
2818         (&define_pretty_variable, &read_main_am_file, &read_am_file): Use
2819         it.
2820         (&read_main_am_file, &read_am_file): Stop playing with @ by hand.
2821         Join @conditional_stack with spaces.
2822         (&read_main_am_file): Adjust the output of variables.
2823         Output `TRUE = true' under the condition `TEST' as `@TEST@TRUE =
2824         true' and no longer `@TEST@TRUE = @TEST@true'.
2825         (&variable_conditions_cmp): Rename as...
2826         (&by_condition): this.
2827         Sort in a human pleasant order.
2828         Use it everywhere a human can see conditions.
2829         (&variable_conditions_reduce): Don't sort conditions, that's
2830         pointless.
2831         * tests/cond.test, ctarget1.test, pluseq3.test: Strengthen.
2833 2001-02-25  Akim Demaille  <akim@epita.fr>
2835         * automake.in: `my' the globals.
2837 2001-02-25  Akim Demaille  <akim@epita.fr>
2839         * automake.in (&initialize_per_input): %targets_conditionals is
2840         new.
2841         (&read_am_file): When slurping a rule, set the target related
2842         variable, and no variable related variable.
2843         (&file_contents): Likewise.
2844         * tests/vartar.test, tests/ctarget1.test: New.
2846 2001-02-25  Akim Demaille  <akim@epita.fr>
2848         * automake.in (&variable_defined, &variable_value_as_list_worker):
2849         If $VAR is effectively a variable, don't die if it's also a
2850         target.
2851         Plus some formatting changes.
2853 2001-02-25  Akim Demaille  <akim@epita.fr>
2855         * automake.in: Mying changes.
2856         * Makefile.am (maintainer-check): Check the stability of the
2857         number of uses of `local'.
2859 2001-02-25  Akim Demaille  <akim@epita.fr>
2861         * automake.in: Mying changes.
2863 2001-02-25  Akim Demaille  <akim@epita.fr>
2865         * automake.in: Mying changes.
2867 2001-02-25  Akim Demaille  <akim@epita.fr>
2869         * automake.in: Mying changes.
2870         (&handle_tags): Fix a bug uncovered by the previous mying changes:
2871         transform CONFIG into $config, not $xform.
2873 2001-02-25  Akim Demaille  <akim@epita.fr>
2875         * automake.in (&handle_texinfo, &handle_man_pages, &am_install_var):
2876         Don't deal with install-data-am, install-exec-am and unstall-am.
2877         (&initialize_per_input): Add them to %dependencies.
2878         Remove %exec_dir_p since the *.am files are now in charge of it.
2879         Remove @uninstall, @install_data, @install_exec.
2880         (&handle_merge_targets): Adjust to these removals.
2881         (&file_contents): Also &transform_cond for --no-installman and
2882         --no-installinfo.
2883         (&do_one_merge_target): Add some magic to install hooks on
2884         %dependencies' targets.
2885         (%required_targets): New.
2886         (&handle_factored_dependencies): Output required targets.
2887         * data.am, header.am, java.am, libs.am, lisp.am, ltlib.am,
2888         * mans-vars.am, mans.am, progs.am, python.am, scripts.am,
2889         * texinfos.am: Declare your dependencies on install-data-am,
2890         install-exec-am and uninstall-am.
2891         * tests/instdata2.test (incldata_HEADERS): New test.
2893 2001-02-24  Tom Tromey  <tromey@redhat.com>
2895         * Makefile.am (amfiles): Added texibuild.am.
2896         * texibuild.am: New file.
2897         * tests/Makefile.am (TESTS): Added texinfo9.test.
2898         * tests/texinfo9.test: New file.
2899         * automake.in (handle_texinfo): Keep track of suffixes used.  Give
2900         error if suffix unrecognized.  Removed extraneous newline.
2902 2001-02-23  Akim Demaille  <akim@epita.fr>
2904         * automake.in (&am_install_var): Don't hook on the clean targets
2905         and .PHONY.
2906         * data-clean.am, java-clean.am, libs-clean.am, lisp-clean.am,
2907         * ltlib-clean.am, progs-clean.am, python-clean.am, tags-clean.am:
2908         Do it.
2910 2001-02-23  Akim Demaille  <akim@epita.fr>
2912         * automake.in: Promote local `my' over `local'.
2914 2001-02-23  Akim Demaille  <akim@epita.fr>
2916         * automake.in: Formatting and mying changes.
2918 2001-02-23  Akim Demaille  <akim@epita.fr>
2920         * automake.in: Formatting and mying changes.
2922 2001-02-23  Akim Demaille  <akim@epita.fr>
2924         * automake.in (&handle_man_pages): Let install-man and
2925         uninstall-man be handled by the dependency tracker.
2926         (&initialize_per_input): Let %dependencies track them.
2927         * mans.am: Add the needed hooks with the proper dependencies.
2929 2001-02-22  Pavel Roskin  <proski@gnu.org>
2931         * tests/target-cflags.test: Don't use subshell to configure in
2932         subdirectory. Typo fix - run `./foo', not `/foo'.
2934 2001-02-22  Akim Demaille  <akim@epita.fr>
2936         * automake.in: Formatting and mying changes.
2938 2001-02-21  Tom Tromey  <tromey@redhat.com>
2940         * automake.in (handle_dist): Introduce new variable to avoid extra
2941         keys in %dist_dirs.  Fixes distdir.test.
2943         * automake.in (handle_texinfo): Only remove suffixes we can
2944         handle.
2946         * tests/distdir.test: Check to make sure directory isn't made in
2947         build directory.
2949         * automake.in (handle_dist): Do nothing in Cygnus mode.
2951 2001-02-21  Pavel Roskin  <proski@gnu.org>
2953         * header-vars.am: Remove tabs before variable definitions.
2955 2001-02-21  Akim Demaille  <akim@epita.fr>
2957         * tests/distdir.test (EXTRA_DIST): Use a finer pattern to avoid
2958         false diagnostics.
2960 2001-02-21  Akim Demaille  <akim@epita.fr>
2962         * automake.in (&dist_cmp, &target_cmp): Be sure to return a
2963         numeric value as required by Perl 5.6.
2965 2001-02-21  Akim Demaille  <akim@epita.fr>
2967         * dist-vars.am: Remove, merge into...
2968         * distdir.am: this.
2969         * automake.in (dirname, basename, backname): Move to the top of
2970         the file so that prototypes are checked,
2971         Use them without `&'.
2972         (&handle_dist): Adjust.
2974 2001-02-21  Akim Demaille  <akim@epita.fr>
2976         * automake.in (&check_ambiguous_conditional, &read_main_am_file):
2977         Use a uniform naming scheme.
2978         (&quote_cond_val, &unquote_cond_val): Delete, dead code.
2979         (&read_am_file): Fix conditional definition of backslash continued
2980         items.
2982 2001-02-21  Akim Demaille  <akim@epita.fr>
2984         Change the handling of conditionals: instead of using an ad-hoc
2985         encoding to store a hash in a string, use hashes.
2987         * automake.in (&conditional_dump): New.
2988         (&check_ambiguous_conditional, &variable_defined)
2989         (&variable_conditions_sub, &variable_value_as_list_worker)
2990         (&define_variable, read_am_file, &read_main_am_file): Be sure to
2991         handle `$conditional{$vars}' as a hash instead of a plain string.
2993 2001-02-21  Akim Demaille  <akim@epita.fr>
2995         * automake.in (&conditional_true_when): Modernize, simplify.
2996         Warning: `$comp' is now private (my), while it used to be
2997         `inherited' from a `local' elsewhere in the code.  AFAICT it was
2998         wrong, but some dirty side effect might show up.
2999         (&conditionals_true_when): New.
3000         (&variable_conditions_sub, &variable_conditions_reduce): Use it.
3002 2001-02-21  Akim Demaille  <akim@epita.fr>
3004         * automake.in ($top_builddir): Remove, used in one place.
3005         (&define_standard_variables): Adjust.
3006         Move the definition of triplet variables into...
3007         * header-vars.am: here.
3009 2001-02-21  Akim Demaille  <akim@epita.fr>
3011         * automake.in (&initialize_global_constants): Don't define $USAGE.
3012         (&usage): Handle the former content of $USAGE.
3013         Don't pretend autoconf cares about Makefile.in.
3014         Classify the options.
3015         (&handle_tests): Formatting and mying changes.
3017 2001-02-21  Akim Demaille  <akim@epita.fr>
3019         * automake.in (&handle_tests_dejagnu): Move the definition of a
3020         default `site.exp' into...
3021         * dejagnu.am (site.exp): here.
3022         Use DOS compliant file names.
3024 2001-02-21  Akim Demaille  <akim@epita.fr>
3026         * automake.in (&dist_cmp): New.
3027         (&handle_dist): Use it.
3028         Promote `my' over `local'.
3030 2001-02-21  Akim Demaille  <akim@epita.fr>
3032         * dist.am: Remove, merge into...
3033         * distdir.am: here.  Use the neat sed snippet for banners.
3034         BTW, distcheck is phony.
3035         * automake.in (&handle_dist_worker): Remove, merge into...
3036         (&handle_dist): this.
3037         (&file_contents): Strip leading new lines.
3038         Be sure to end comments with new lines.
3040 2001-02-21  Akim Demaille  <akim@epita.fr>
3042         * distdir.am (GZIP_ENV): Define.
3043         * automake.in (&handle_dist): Don't.
3044         (&uniq): New.
3045         (&handle_dist_worker, &am_install_var): Use it.
3047 2001-02-21  Akim Demaille  <akim@epita.fr>
3049         * distdir.am (distdir): Handle the DIST-TARGETS.
3050         * automake.in (&handle_dist_worker): Don't.
3052 2001-02-21  Akim Demaille  <akim@epita.fr>
3054         * automake.in (&file_contents): Transform the global options (such
3055         as CYGNUS).
3056         (&handle_texinfo, &handle_dist_worker, &handle_tests_dejagnu): Don't.
3058 2001-02-21  Akim Demaille  <akim@epita.fr>
3060         * distdir.am (distdir): Be sure to have permissive rights on its
3061         contents.
3062         (dist-all, dist-bzip2, dist-zip, dist-tarZ): New conditional
3063         targets.
3064         And BTW, all these guys are phony.
3065         * automake.in (&handle_dist_worker): As its name doesn't indicate,
3066         output distributions.
3067         (&handle_dist): As its name doesn't indicate, don't.
3068         (&initialize_global_constants): Don't define variables which
3069         content is now handled by distdir.am.
3070         But register `dist-all' as a factored target.
3071         (&handle_factored_dependencies): Don't output empty targets.
3073 2001-02-20  Tom Tromey  <tromey@redhat.com>
3075         * m4/init.m4 (AM_INIT_AUTOMAKE): Simplify m4_pattern_allow
3076         invocation.
3078 2001-02-18  Tom Tromey  <tromey@redhat.com>
3080         * m4/strip.m4 (AM_PROG_INSTALL_STRIP): Don't call AM_PROG_STRIP.
3081         Set INSTALL_STRIP_PROGRAM_ENV to `$(STRIP)', not `$STRIP'.
3082         (AM_PROG_STRIP): Commented out.
3084 2001-02-17  Raja R Harinath  <harinath@cs.umn.edu>
3086         * depcomp (gcc3): Protect against the compiler deleting
3087         the dependency output file.
3089 2001-02-17  Tom Tromey  <tromey@redhat.com>
3091         * automake.in (handle_merge_targets): Use double quotes around
3092         setting of INSTALL_STRIP_PROGRAM.
3093         * m4/strip.m4 (AM_PROG_INSTALL_STRIP): Set INSTALL_STRIP_PROGRAM
3094         to absolute path at runtime.
3095         (AM_PROG_STRIP): Don't explicitly test $STRIP.
3097 2001-01-28  Alexandre Duret-Lutz  <duret_g@epita.fr>
3099         * m4/strip.m4: New file.
3100         * m4/Makefile.am (m4data_DATA): Add strip.m4.
3101         * m4/init.m4: Call AM_PROG_INSTALL_STRIP.
3102         * m4/missing.m4 (AM_AUX_DIR_EXPAND): New function.
3103         * automake.in (handle_merge_targets): In the install-strip rule,
3104         set INSTALL_PROGRAM to INSTALL_STRIP_PROGRAM, and INSTALL_PROGRAM_ENV
3105         to INSTALL_STRIP_PROGRAM_ENV; don't use INSTALL_STRIP_FLAG.
3106         * progs.am (install-@DIR@PROGRAMS): Adapt to use INSTALL_PROGRAM_ENV,
3107         don't use INSTALL_STRIP_FLAG any longer.
3109 2001-02-16  Alexandre Duret-Lutz  <duret_g@epita.fr>
3111         * automake.in (scan_one_configure_file): Unquote AC_CONFIG_AUX_DIR's
3112         argument.
3114 2001-02-16  Alexandre Duret-Lutz  <duret_g@epita.fr>
3116         * automake.in (unquote_m4_arg): New function.
3117         (scan_one_configure_file): Call unquote_m4_arg on
3118         AM_CONFIG_HEADER argument, so that AM_CONFIG_HEADER([foobar.h])
3119         works.
3121 2001-02-15  Tom Tromey  <tromey@redhat.com>
3123         * config.guess, config.sub: New versions from FSF.
3125         * Makefile.am (WGET): New macro.
3126         (FETCHFILES): New macro.
3127         (fetch): New target.
3129         * tests/subobj3.test: Exit with status 77 if gcc not found.
3130         * tests/pr9.test: Exit with status 77 if gzip not found.
3131         * tests/pr87.test: Exit with status 77 if gcc not found.
3132         * tests/pr19.test: Exit with status 77 if gzip or gcc not found.
3133         * tests/install2.test: Exit with status 77 if gzip not found.
3134         * tests/exsource.test: Exit with status 77 if GNU make not found.
3135         * tests/ansi3.test: Exit with status 77 if gcc not found.
3137         * tests/target-cflags.test: Require GNU make.  Exit with status 77
3138         if gcc or make not found.  Fixes PR automake/121.
3140         * configure.in: Require Perl 5.005.
3141         * automake.in: Require 5.005.
3143         * automake.texi (Top): Conditionalize on `nottex', not `info'.
3144         Fixes PR automake/122.
3146 2001-02-14  Tom Tromey  <tromey@redhat.com>
3148         * automake.in (add_depend2): Only emit a given object rule once.
3149         Fixes specflags6.test.
3151 2001-02-14  Richard Boulton  <richard@tartarus.org>
3153         * tests/specflags6.test: New file.
3155 2001-02-14  Tom Tromey  <tromey@redhat.com>
3157         * automake.texi (A Shared Library): Mention -module.
3159 2001-02-13  Tom Tromey  <tromey@redhat.com>
3161         * automake.in (do_one_merge_target): Always register $name and
3162         $name-am as phony.
3164         * automake.in (do_one_merge_target): Register `all' as phony
3165         target.
3167         * configure.in: Updated to 1.4e for cvs.
3169 2001-02-12  Tom Tromey  <tromey@redhat.com>
3171         * configure.in: Updated to 1.4d and released.
3173         * m4/init.m4 (AM_INIT_AUTOMAKE): Explicitly allow various AM_*
3174         names through autoconf.
3176         Fix for subdirbuiltsources.test:
3177         * automake.in (initialize_per_input): [all_target] Initialize to
3178         empty string.
3179         (handle_merge_targets): Use all-redirect target to handle built
3180         sources.
3181         (do_one_merge_target): Don't generate all-redirect rule.
3183 2001-02-11  Peter Muir  <iyhi@yahoo.com>
3185         * tests/subdirbuiltsources.test: New file.
3186         * tests/Makefile.am (TESTS): Added new file.
3188 2001-02-10  Tom Tromey  <tromey@redhat.com>
3190         * tests/condlib.test: New file.
3191         * tests/Makefile.am (TESTS): Added new file.
3193 2001-02-10  Lars J. Aas  <larsa@sim.no>
3195         * automake.in ($MACRO_PATTERN): Include '@' in name regex.
3196         (&canonicalize): New. Includes '@' in canonical range.
3197         (&check_canonical_spelling, &handle_programs, &handle_libraries,
3198         &handle_ltlibraries, &handle_texinfo): Use &canonicalize.
3200 2001-02-10  Raja R Harinath  <harinath@cs.umn.edu>
3202         * automake.in (handle_configure): Revert part of
3203         '2001-02-04  Kevin Ryde <user42@zip.com.au>'.  Don't
3204         set CONFIG_COMMANDS explicitly.
3206 2001-02-09  Raja R Harinath  <harinath@cs.umn.edu>
3208         * depcomp (gcc3): Propagate exit code.
3210 2001-02-09  Lars J. Aas  <larsa@sim.no>
3212         * header.am (install-@DIR@HEADERS): s,?!NOBASE?,?!BASE?, (typo)
3214 2001-02-09  Tom Tromey  <tromey@redhat.com>
3216         Clean up maintainer-check warnings:
3217         * Makefile.am (maintainer-check): Ignore comment lines in CDPATH
3218         check.
3219         * automake.in (handle_dist_worker): Removed redundant `my $xform'.
3221 2001-02-09  Akim Demaille  <akim@epita.fr>
3223         * automake.in (&file_contents): Remove a dead branch.
3225 2001-02-09  Akim Demaille  <akim@epita.fr>
3227         * automake.in (&transform): Use `my', not `local'.
3228         (&transform_cond): New.
3229         (&get_object_extension, &handle_texinfo, &handle_tags)
3230         (&handle_dist_worker, &handle_dist, &add_depend2, &handle_clean)
3231         (&handle_tests_dejagnu): Use it.
3232         * texinfos.am, lisp.am, header.am, dist.am, distdir.am, depend2.am
3233         * dejagnu.am, data.am, clean.am: Adjust to the new syntax.
3235 2001-02-09  Akim Demaille  <akim@epita.fr>
3237         * automake.in: Various formatting changes, and modernization of
3238         Perl constructs.
3239         (&backname): New.
3240         (&handle_configure, define_standard_variables): Use it.
3242 2001-02-08  Tom Tromey  <tromey@redhat.com>
3244         * automake.in (file_contents): Only add $actions if any are
3245         found.  Fixes new failure in pr87.test.
3247 2001-02-08  Pavel Roskin  <proski@gnu.org>
3249         * tests/pr87.test: Check foo/Makfile.in after it is created.
3251 2001-02-08  Tom Tromey  <tromey@redhat.com>
3253         * tests/pr87.test: Added check for blank line after `.c.o' rule.
3254         Report from Lars J. Aas.
3256 2001-02-07  Lars J. Aas  <larsa@sim.no>
3258         * lisp.am (install-@DIR@LISP): Removed extra space.
3259         * header.am (install-@DIR@HEADERS): Removed extra space.
3260         * data.am (install-@DIR@DATA): Removed extra space.
3262 2001-02-07  Tom Tromey  <tromey@redhat.com>
3264         * m4/init.m4 (AM_INIT_AUTOMAKE): Use \", not ".
3266         * automake.in (handle_dependencies): Use _am_include, not
3267         AMINCLUDE.
3268         * tests/exsource.test: Use _am_include, not AMINCLUDE.
3269         * m4/make.m4 (AM_MAKE_INCLUDE): Use _am_include, not AMINCLUDE.
3271         * tests/Makefile.am (XFAIL_TESTS): Removed distcommon.test.
3273         * tests/Makefile.am (EXTRA_DIST): Added ChangeLog-old.
3275         * automake.in (handle_configure): Handle case where output file is
3276         in subdir with no Makefile of its own.  Fixes remake3.test,
3277         distcommon.test.
3279 2001-02-06  Pavel Roskin  <proski@gnu.org>
3281         * automake.in (handle_dependencies): Rename AM_INCLUDE to
3282         AMINCLUDE.
3283         * m4/make.m4 (AM_MAKE_INCLUDE): Likewise.
3284         * tests/exsource.test: Likewise.
3286 2001-02-06  Derek Price  <derek.price@openavenue.com>
3288         * automake.in (handle_configure): Fix syntax error.
3290 2001-02-06  Akim Demaille  <akim@epita.fr>
3292         * subdirs.am: This file is the exception: clean recursive targets
3293         are called by the clean targets, not the clean-am targets.
3294         Otherwise we have a circular dependency: clean -> clean-am ->
3295         clean-recursive -> clean.
3296         * automake.in (handle_clean): Bind `-local' targets to `-am'
3297         targets, not top targets.
3298         Don't declare -recursive dependencies of the clean targets:
3299         `subdirs.am' did it.  Less hard coded knowledge, transfered
3300         into...
3301         * clean.am: here.
3303 2001-02-06  Akim Demaille  <akim@epita.fr>
3305         Monstro unsplitable patch.
3307         The aim is to remove hard coded knowledge about clean targets from
3308         automake.in, leaving them in the *.am files.
3309         In addition to the mechanic needed to factor some dependencies, it
3310         appears some rules (most notably distclean and maintainer-clean)
3311         need factored actions.  So first, be ready to catch factored
3312         rules.
3314         * automake.in (&file_contents): For the time being, use an extended
3315         $RULE_PATTERN which is able to match any kind of rules, with or
3316         without dependency, with or without actions.
3317         Handle all the rules uniformly, storing in %actions the factored
3318         actions.
3319         (&flatten, &target_cmp): New.
3320         (&handle_factored_dependencies): Output the %actions.
3321         No longer special case `clean'.
3322         Output the rules in alphabetical order, but keeping `.PHONY' last.
3324         Now we must not use &push_phony_cleaners, which is doing all sort
3325         of magic to push a bit of everything in all the clean targets.
3326         The biggest problem being that, making a Cartesian product, it
3327         requires many useless targets.  The `*.am' file know better.
3328         But first, register the new factored rules.
3330         * automake.in (&initialize_per_input): Include clean, mostlyclean,
3331         maintainer-clean, distclean and their `*-am' counterpart in
3332         %dependencies.
3333         Initialize %actions.
3334         (get_object_extension, handle_texinfo, handle_tags, handle_multilib)
3335         handle_dependencies, handle_subdirs, handle_configure, handle_clean)
3336         (handle_emacs_lisp, handle_python): Don't play with
3337         &push_phony_cleaners nor &depend and `clean'.
3338         * texinfos.am, texi-vers.am, tags-clean.am:
3339         * subdirs.am,python-clean.am, multilib.am, lisp-clean.am:
3340         * libtool.am, kr-extra.am, depend.am, compile.am, clean.am:
3341         * clean-kr.am, clean-hdr.am: Do it.
3342         Whenever a target is empty, just remove it, it will no longer be
3343         called.
3345         There is still some magic about clean to hard code.  But really,
3346         that's the end of &do_one_clean_target.
3348         * automake.in (&do_one_clean_target): Kaboom out.
3349         (&handle_clean): Rewrite the magic code.
3350         (&am_install_var): No longer use &push_phony_cleaners, nor depend
3351         on `clean'.
3352         (&push_phony_cleaners): Kaboom too.
3354 2001-02-06  Akim Demaille  <akim@epita.fr>
3356         * automake.in (do_one_clean_target): Don't hard code knowledge
3357         about libtool, and maintainer-clean.
3358         * clean.am, libtool.am: Handle these.
3360 2001-02-05  Akim Demaille  <akim@epita.fr>
3362         * automake.in (handle_texinfo): No longer hard code the clean
3363         targets.
3364         (texinfos.am): Include them.
3366 2001-02-05  Akim Demaille  <akim@epita.fr>
3368         * Makefile.am (perl4-check): Remove, we now require Perl 5.
3369         (maintainer-check): Don't be silent when you find a problem, and
3370         actually, even specify the locations.
3371         Also check that @_ is assigned to arrays.
3373 2001-02-05  Akim Demaille  <akim@epita.fr>
3375         * m4/regex.m4: Use AC_LIBSOURCES.
3376         * automake.in (scan_autoconf_traces): Trace AC_LIBSOURCE, not
3377         _AC_LIBOBJ_DECL.
3379 2001-02-04  Tom Tromey  <tromey@redhat.com>
3381         * m4/Makefile.am (m4data_DATA): Added make.m4.
3382         * automake.in (handle_dependencies): Use @AM_INCLUDE@ to include
3383         dependency files.
3384         * m4/depend.m4 (AM_DEPNDENCIES): Require AM_MAKE_INCLUDE.
3385         Copy depcomp to subdir.
3386         * m4/make.m4: New file.
3388 2001-02-04  Pavel Roskin  <proski@gnu.org>
3390         * automake.in (handle_dist_worker): Remove a line that is now
3391         in distdir.am.
3393 2001-02-04  Kevin Ryde  <user42@zip.com.au>
3395         * automake.in (handle_configure): Call config.status with empty
3396         CONFIG_LINKS and CONFIG_COMMANDS when regenerating a file.
3398 2001-02-04  Tom Tromey  <tromey@redhat.com>
3400         * depcomp (ddashmd): Removed case.
3401         (sgi): Handle failure exit correctly
3402         (aix): Likewise.  Also, add dummy `.h' targets.
3404 2001-02-04  Akim Demaille  <akim@epita.fr>
3406         * distdir.am (distdir): New file, extracted from...
3407         * automake.in (handle_dist_worker): here.
3408         Adjust.
3410 2001-02-04  Akim Demaille  <akim@epita.fr>
3412         * automake.in (@clean): Remove, replaced by...
3413         ($dependencies{'clean'}): this.
3414         Use `&depend' instead of push'ing into @clean.
3415         (handle_factored_dependencies): For the time being, skip 'clean'.
3416         (do_one_clean_target): Don't ask for argument 1 and 4 as they are
3417         always `clean', and `@clean'.
3419 2001-02-04  Akim Demaille  <akim@epita.fr>
3421         * automake.in (%dependencies): Don't be initialize globally for
3422         all the files, but in...
3423         (&initialize_per_input): here.
3424         (&depend): New.
3425         (@phony): Replace all occurrences with the corresponding &depend
3426         invocation.
3428 2001-02-03  Tom Tromey  <tromey@redhat.com>
3430         * header.am (install-@DIR@HEADERS): Use INSTALL_HEADER.
3431         * header-vars.am (INSTALL_HEADER): New macro.
3433         * automake.texi (Rebuilding): New node.