Akim Demaille [Mon, 5 Mar 2001 14:33:37 +0000 (14:33 +0000)]
* automake.in ($am_relative_dir): Global.
(&initialize_per_input): Init it.
(%make_list, @make_input_list): My them from
(&scan_autoconf_files): here.
(&require_file_internal): Mying changes.
Akim Demaille [Mon, 5 Mar 2001 14:30:28 +0000 (14:30 +0000)]
* automake.in (%am_vars, @var_list, %def_type): Globals.
(&initialize_per_input): Initialize them.
(&read_main_am_file): Don't local them.
(&get_object_extension): $objext is private.
(&handle_single_transform_list): $lang is.
(&handle_ltlibraries): $libname_rx is.
(&scan_autoconf_config_files): How about actually paying attention
to your arguments, instead of working on $_? (this is no Perl
variable, it's a Perl variable followed by a question mark).
(&file_contents): $contents and $separator are private.
(&am_install_var): Declare @condvals, not $condvals.
(%make_dirs): My.
Akim Demaille [Mon, 5 Mar 2001 13:21:33 +0000 (13:21 +0000)]
Let's make it run ten times faster...
* automake.in (&transform): Be sure to remove the `n' with ?FOO?
transformations.
(&file_contents): Let `$command' remove the Automake commands, and
normalize the series of `n'.
Slurp the file and apply $command in a single step.
No longer apply the `@MAINTAINER_MODE_TRUE@' transformation which
is already normalized to be handled by &transform.
Tom Tromey [Mon, 5 Mar 2001 07:49:42 +0000 (07:49 +0000)]
* automake.in (register_language): Add entry for `-pure'.
Added `pure=yes' entries for cxx, objc, f77, ppf77, ratfor, java.
(finish_languages): Use `-pure' field of language map.
Tom Tromey [Sun, 4 Mar 2001 21:05:09 +0000 (21:05 +0000)]
* tests/yaccvpath.test: No need to remove dummy files.
* tests/subobj3.test: No need to remove dummy files.
* tests/pr9.test: No need to remove dummy files.
* tests/pr87.test: No need to remove dummy files.
* tests/pr19.test: No need to remove dummy files.
* tests/install2.test: No need to remove dummy files.
* tests/defs: Actually copy in install-sh, mkinstalldirs, missing,
and depcomp.
Pavel Roskin [Sat, 3 Mar 2001 07:13:04 +0000 (07:13 +0000)]
* tests/yaccvpath.test: Add a delay to make parse.c really out
of date. Detect the problem earlier, after `make distdir'. Drop
dependency on flex. Always use the `-y' flag for bison. Comment
changes.
* tests/Makefile.am: Add yaccvpath.test to XFAIL_TESTS.
Akim Demaille [Wed, 28 Feb 2001 09:53:10 +0000 (09:53 +0000)]
* automake.in (&add_depend2): Transform `GENERIC'.
Get rid of the ad hoc transformation of `@EXT@.o:' which in
addition was broken by the `@ -> %' patch.
* depend2.am: Adjust to use ?GENERIC?.
Akim Demaille [Tue, 27 Feb 2001 09:12:41 +0000 (09:12 +0000)]
Distinguish automake substitutions from config.status
substitutions.
* automake.in (&add_depend2): Transform AMDEP.
(&handle_clean): Transform MCFILES and MFILES.
(&file_contents): Transform MAINTAINER_MODE.
(&transform, &am_install_var): Use `%', not `@'.
Adjust all the *.am files.
* clean.am: Use ?MFILES? instead of ad hoc MAINTAINERCLEAN.
* depend2.am: Display the double dependency on both ?AMDEP? and
@AMDEP@.
Akim Demaille [Mon, 26 Feb 2001 09:30:01 +0000 (09:30 +0000)]
* automake.in (&handle_merge_targets, &do_one_merge_target): Don't
work on targets handled by %dependencies.
(&handle_factored_dependencies): Do it.
* install.am: Install install-exec, install-data and uninstall's
suites.
Akim Demaille [Sun, 25 Feb 2001 18:42:41 +0000 (18:42 +0000)]
Internally just store the conditionals as space separated lists of
CONDITIONS (instead of @CONDITIONS@).
* automake.in (&conditional_true_when, &variable_conditions_sub):
Split conditions at spaces.
(&handle_dependencies, &variable_conditions_permutations): Don't
put @ around conditions.
(&variable_conditions_cmp): There are no @ to strip.
(&make_condition): New.
(&define_pretty_variable, &read_main_am_file, &read_am_file): Use
it.
(&read_main_am_file, &read_am_file): Stop playing with @ by hand.
Join @conditional_stack with spaces.
(&read_main_am_file): Adjust the output of variables.
Output `TRUE = true' under the condition `TEST' as `@TEST@TRUE =
true' and no longer `@TEST@TRUE = @TEST@true'.
(&variable_conditions_cmp): Rename as...
(&by_condition): this.
Sort in a human pleasant order.
Use it everywhere a human can see conditions.
(&variable_conditions_reduce): Don't sort conditions, that's
pointless.
* tests/cond.test, ctarget1.test, pluseq3.test: Strengthen.
Akim Demaille [Sun, 25 Feb 2001 18:37:40 +0000 (18:37 +0000)]
* automake.in (&initialize_per_input): %targets_conditionals is
new.
(&read_am_file): When slurping a rule, set the target related
variable, and no variable related variable.
(&file_contents): Likewise.
* tests/vartar.test, tests/ctarget1.test: New.
Akim Demaille [Sun, 25 Feb 2001 18:17:57 +0000 (18:17 +0000)]
* automake.in (&initialize_per_input): %targets_conditionals is
new.
(&read_am_file): When slurping a rule, set the target related
variable, and no variable related variable.
(&file_contents): Likewise.
* tests/vartar.test, tests/ctarget1.test: New.
Akim Demaille [Sun, 25 Feb 2001 18:16:07 +0000 (18:16 +0000)]
* automake.in (&variable_defined, &variable_value_as_list_worker):
If $VAR is effectively a variable, don't die if it's also a
target.
Plus some formatting changes.
Akim Demaille [Sun, 25 Feb 2001 18:04:29 +0000 (18:04 +0000)]
* automake.in (&handle_texinfo, &handle_man_pages, &am_install_var):
Don't deal with install-data-am, install-exec-am and unstall-am.
(&initialize_per_input): Add them to %dependencies.
Remove %exec_dir_p since the *.am files are now in charge of it.
Remove @uninstall, @install_data, @install_exec.
(&handle_merge_targets): Adjust to these removals.
(&file_contents): Also &transform_cond for --no-installman and
--no-installinfo.
(&do_one_merge_target): Add some magic to install hooks on
%dependencies' targets.
(%required_targets): New.
(&handle_factored_dependencies): Output required targets.
* data.am, header.am, java.am, libs.am, lisp.am, ltlib.am,
* mans-vars.am, mans.am, progs.am, python.am, scripts.am,
* texinfos.am: Declare your dependencies on install-data-am,
install-exec-am and uninstall-am.
* tests/instdata2.test (incldata_HEADERS): New test.
Akim Demaille [Fri, 23 Feb 2001 15:11:18 +0000 (15:11 +0000)]
* automake.in (&am_install_var): Don't hook on the clean targets
and .PHONY.
* data-clean.am, java-clean.am, libs-clean.am, lisp-clean.am,
* ltlib-clean.am, progs-clean.am, python-clean.am, tags-clean.am:
Do it.
Akim Demaille [Fri, 23 Feb 2001 15:03:51 +0000 (15:03 +0000)]
* automake.in (&handle_man_pages): Let install-man and
uninstall-man be handled by the dependency tracker.
(&initialize_per_input): Let %dependencies track them.
* mans.am: Add the needed hooks with the proper dependencies.
Akim Demaille [Wed, 21 Feb 2001 08:35:51 +0000 (08:35 +0000)]
* dist-vars.am: Remove, merge into...
* distdir.am: this.
* automake.in (dirname, basename, backname): Move at the top of
the file so that prototypes are checked,
Use them without `&'.
(&handle_dist): Adjust.
Akim Demaille [Wed, 21 Feb 2001 08:35:02 +0000 (08:35 +0000)]
* automake.in (&check_ambiguous_conditional, &read_main_am_file):
Use a uniform naming scheme.
("e_cond_val, &unquote_cond_val): Delete, dead code.
(&read_am_file): Fix conditioned definition of backslash continued
items.
Akim Demaille [Wed, 21 Feb 2001 08:32:03 +0000 (08:32 +0000)]
Change the handling of conditionals: instead of using an ad-hoc
encoding to store a hash in a string, use hashes.
* automake.in (&conditional_dump): New.
(&check_ambiguous_conditional, &variable_defined)
(&variable_conditions_sub, &variable_value_as_list_worker)
(&define_variable, read_am_file, &read_main_am_file): Be sure to
handle `$conditional{$vars}' as a hash instead of a plain string.
Akim Demaille [Wed, 21 Feb 2001 08:31:40 +0000 (08:31 +0000)]
* automake.in (&conditional_true_when): Modernize, simplify.
Warning: `$comp' is now private (my), while it used to be
`inherited' from a `local' elsewhere in the code. AFAICT it was
wrong, but some dirty side effect might show up.
(&conditionals_true_when): New.
(&variable_conditions_sub, &variable_conditions_reduce): Use it.
Akim Demaille [Wed, 21 Feb 2001 08:30:55 +0000 (08:30 +0000)]
* automake.in ($top_builddir): Remove, used in one place.
(&define_standard_variables): Adjust.
Move the definition of triplet variables into...
* header-vars.am: here.
Akim Demaille [Wed, 21 Feb 2001 08:30:39 +0000 (08:30 +0000)]
* automake.in (&initialize_global_constants): Don't define $USAGE.
(&usage): Handle the former content of $USAGE.
Don't pretend autoconf cares about Makefile.in.
Classify the options.
(&handle_tests): Formatting and mying changes.
Akim Demaille [Wed, 21 Feb 2001 08:28:02 +0000 (08:28 +0000)]
* automake.in (&handle_tests_dejagnu): Move the definition of a
default `site.exp' into...
* dejagnu.am (site.exp): here.
Use DOS compliant file names.
Akim Demaille [Wed, 21 Feb 2001 08:26:34 +0000 (08:26 +0000)]
* dist.am: Remove, merge into...
* distdir.am: here. Use the neat sed snippet for banners.
BTW, distcheck is phony.
* automake.in (&handle_dist_worker): Remove, merge into...
(&handle_dist): this.
(&file_contents): Strip leading new lines.
Be sure to end comments with new lines.