Tom Tromey [Fri, 30 Apr 1999 22:18:59 +0000 (22:18 +0000)]
* automake.in (finish_languages): Always use `-o $@' with
libtool. Define ltcompile and ltlink at outermost scope in
function.
* libtool.am (.c.lo): Removed.
Tom Tromey [Fri, 30 Apr 1999 10:45:28 +0000 (10:45 +0000)]
* automake.in (finish_languages): Put `.' before extension in
suffix list, `.obj' rule, and `.lo' rule. Look at `-flags', not
`-flag'. From Pavel Roskin.
Tom Tromey [Tue, 27 Apr 1999 13:56:59 +0000 (13:56 +0000)]
* automake.in (handle_lib_objects_cond): Prefer `$1' over `\1'.
Minor rewrite for clarity.
(check_canonical_spelling): Prefer `$1' over `\1'.
* depend2.am (@OBJ@): Renamed. Use @SOURCE@, @COMPILE@. Always
use `-o $@'.
(@LTOBJ@): Likewise.
* automake.in (handle_single_transform_list): Don't print rule if
doing dependency tracking and the file's language supports it.
(initialize_per_input): Initialize lang_specific_files.
(add_depend2): New function.
(handle_dependencies): Use it.
* automake.in (lang_ppf77_finish): Use lang_f77_finish.
ratfor compiler name is `RCOMPILE'. ppf77 compiler name changed
to `PPF77COMPILE' to allow use of f77 and ppf77 in the same
directory.
(lang_ratfor_finish): Use lang_f77_finish.
* compile.am (NOTDEPEND.c.o): Removed.
(OBJEXT.c.obj): Likewise.
* automake.in: Added `flags' attribute to all relevant languages.
(handle_single_transform_list): Handle per-derived-object flags.
Changed interface and all callers.
(handle_built_sources): Don't call handle_single_transform_list.
Added `compile' and `compiler-name' attribute to all relevant
languages.
(finish_languages): Define compiler variables here.
(lang_cxx_finish): Don't call define_compiler_variable. Don't
define flag variable or .o rules. Don't add to @suffixes.
(lang_f77_finish): Likewise.
(lang_ppf77_finish): Likewise.
(lang_objc_finish): Likewise.
(lang_java_finish): Likewise.
(finish_languages): Define flag variable here.
Added `output-arg' attribute to all relevant languages.
(finish_languages): Define `.o' rules here.
(finish_languages): Put extension on @suffixes.
(get_object_extension): Don't transform NOTDEPEND or MINUSO.
Tom Tromey [Tue, 27 Apr 1999 13:46:40 +0000 (13:46 +0000)]
* specflags3.test: New file.
* Makefile.am (TESTS): Added specflags3.test.
(TESTS): Now lists one file per line, for simpler maintenance.
* specflags2.test: New file.
* specflags.test: New file.
* Makefile.am (TESTS): Added specflags.test, specflags2.test.
Tom Tromey [Sat, 24 Apr 1999 16:30:44 +0000 (16:30 +0000)]
* automake.in (generate_makefile): Define `subdir' after reading
.am file.
(read_main_am_file): Give programming error if variable defined
before invocation.
* m4/lispdir.m4: Do not override lispdir if it's already defined.
Run some emacs-lisp to find out the site-lisp directory, but
relocate it into prefix.
* m4/mktime.m4 (bigtime_test, main): Move alarm from
bigtime_test to main, since Solaris 7 (64-bit) mktime loops
even outside of bigtime_test. Use a time limit of 60 seconds
for the whole test, not 10 seconds per iteration.
Tom Tromey [Fri, 16 Apr 1999 14:02:15 +0000 (14:02 +0000)]
From Brian Ford:
* progs.am (install-@DIR@PROGRAMS, uninstall-@DIR@PROGRAMS):
Invoke `sed' only once per program.
* scripts.am (install-@DIR@SCRIPTS, uninstall-@DIR@SCRIPTS):
Invoke `sed' only once per program.
Tom Tromey [Sun, 11 Apr 1999 21:16:22 +0000 (21:16 +0000)]
* automake.in (lang_sub_obj): New function.
(lang_cxx_rewrite): Use it.
(lang_asm_rewrite): Likewise.
(lang_objc_rewrite): Likewise.
(lang_cxx_finish): Add `-o $@' to all C++ rules.
(lang_asm_finish): Add `-o' to suffix rules when appropriate.
(lang_objc_finish): Add `-o $@' to all ObjC rules.
(lang_java_finish): Likewise.
Tom Tromey [Sun, 11 Apr 1999 13:02:35 +0000 (13:02 +0000)]
First cut at allowing objects in subdirectories:
* m4/Makefile.am (m4data_DATA): Added minuso.m4.
* Makefile.am (dist_script_DATA): Added compile.
* m4/minuso.m4: New file.
* automake.in (initialize_global_constants): Added compile to
common_files.
(seen_cc_c_o): New global.
(scan_one_configure_file): Set it when AM_PROG_CC_C_O seen.
(handle_options): Recognize `subdir-objects' option.
(lang_c_rewrite): Added directory argument.
(lang_yacc_rewrite): Likewise.
(lang_yaccxx_rewrite): Likewise.
(lang_lex_rewrite): Likewise.
(lang_lexxx_rewrite): Likewise.
(handle_single_transform_list): Pass directory to _rewrite
function. Generate dependencies for dirstamp files for each .o;
it is just the rules we want to create once.
(lang_c_rewrite): Handle `subdir-objects' option.
(lang_c_rewrite): Require `compile' program.
* compile: New file.
Tom Tromey [Sat, 10 Apr 1999 23:29:40 +0000 (23:29 +0000)]
Fix for confh.test:
* automake.in (configure_input_files): New global.
(scan_configure): Set it.
(handle_configure): Use configure_input_files when determining
which subdirs have a Makefile.am. Fixes confh.test.
(handle_configure): Only recognize acconfig.h in top srcdir.
Tom Tromey [Sat, 10 Apr 1999 23:27:03 +0000 (23:27 +0000)]
* confh.test: Use `sed' to extract full definition of
DIST_COMMON. Look for stamp-h.in rule in include/Makefile.in.
* Makefile.am (XFAIL_TESTS): Removed confh.test.
Tom Tromey [Sat, 10 Apr 1999 22:08:12 +0000 (22:08 +0000)]
* automake.in (handle_single_transform_list): Handle dependency
tracking when files are created in subdirs. Error if object in
subdir has `..' component.
* automake.in (handle_source_transform): Add a pfx to used_pfx
only if it's conditional or non-empty, to reduce the number of
empty variables. Emit _OBJECS variable based on program name if
no SOURCES were explicitly specified.
* remake-hdr.am: Create the stamp file before the header file,
and just rename it after, so that the timestamps will be correct.
Reported by Marc Horowitz <marc@mit.edu>
* automake.in (lang_yacc_finish): Generate and dist a `.h' for a
`.y' iff YFLAGS or AM_YFLAGS contain `-d'.
Reported by Jim Meyering <meyering@ascend.com>
Tom Tromey [Fri, 9 Apr 1999 12:01:27 +0000 (12:01 +0000)]
* automake.in: Register the `java' language.
(resolve_linker): Handle GCJLINK.
(lang_java_rewrite): New function.
(LANG_IGNORE, LANG_PROCESS, LANG_SUBDIR): New constants.
(lang_c_rewrite): Use new constants.
(lang_cxx_rewrite): Likewise.
(lang_header_rewrite): Likewise.
(lang_yacc_rewrite): Likewise.
(lang_yaccxx_rewrite): Likewise.
(lang_lex_rewrite): Likewise.
(lang_lexxx_rewrite): Likewise.
(lang_asm_rewrite): Likewise.
(lang_f77_rewrite): Likewise.
(lang_ppf77_rewrite): Likewise.
(lang_ratfor_rewrite): Likewise.
(lang_objc_rewrite): Likewise.
(handle_single_transform_list): Likewise. Handle LANG_SUBDIR
return from rewrite function.
(lang_java_finish): New function.
(register_language): Changed interface and all calls. Added
`autodep' settings to various languages.
(handle_dependencies): Use `autodep' property of language when
including dependency-tracking code.
* automake.in (handle_texinfo): Add texinfo.tex to config_aux_dir
when appropriate.
Reported by Per Cederqvist <ceder@lysator.liu.se>
(handle_texinfo): Do not define texinfo_tex='.', use
'$(srcdir)/texinfo.tex' instead; the directory name will be
properly extracted.
(require_conf_file_with_line): Fixed typo.
Tom Tromey [Wed, 31 Mar 1999 13:54:10 +0000 (13:54 +0000)]
* automake.in (quote_cond_val): Quote \n.
(unquote_cond_val): Unquote \n.
(read_am_file): If line ends with `\', preserve it and add a
newline.
(read_main_am_file): In conditional case, put conditional text at
beginning of each generated line.