Tom Tromey [Tue, 13 Oct 1998 18:57:09 +0000 (18:57 +0000)]
F77 additions from Matthew D Langston
* m4/f77.m4: New file.
* m4/Makefile.am (m4data_DATA): Added f77.m4.
* automake.in (resolve_linker): Put the Fortran 77 linker where it
needs to be.
* automake.in (lang_f77_finish): Add support for Fortran 77.
* automake.in (f77_extensions): New helper function for function
`lang_f77_finish'.
* automake.in (lang_f77_rewrite): Change to return success.
* automake.in (scan_one_configure_file): Add test for the Fortran
77 compiler.
* automake.in (finish_languages): Changed tests for "C++ only" to
"C++ and/or Fortran 77 only", and renamed `all_cxx' to `non_c'.
* automake.in: Registered the ppf77 language (`.F' extension) for
preprocessed Fortran 77.
* automake.in: Registered the ratfor language (`.r' extension).
* automake.in: Registered Fortran 77 header files with the "header
language" (`.inc' extension).
* automake.texi: Added several new index entries.
* automake.texi:
- Add `@ovindex' (output variable index).
- Merge `@defmac' (Autoconf macros) and `@ovindex' to the General
Index.
* automake.texi (Macros):
- Changed the `@table @code' list of macros to `@defmac'.
- Add `AC_PROG_FC' and `MDL_F77_LIBRARY_LDFLAGS' to the list.
* automake.texi (C++): Change `@table' to `@vtable'.
* automake.texi (Fortran 77): Add Fortran 77 documentation.
Tom Tromey [Tue, 13 Oct 1998 18:51:23 +0000 (18:51 +0000)]
F77 changes + some random fixes
* libobj7.test: Updated to reflect minor change in automake (test
wasn't resilient enough).
* instman.test: Updated to reflect fact that mkinstalldirs will be
in distribution.
* cxxonly.test: Removed.
* Makefile.am (TESTS): Added compile_f_c_cxx.test.
* compile_f_c_cxx.test: New file.
* Makefile.am (TESTS): Added flink.test link_c_cxx.test
link_f_c.test link_f_c_cxx.test link_f_cxx.test link_f_only.test.
Removed flink.test.
* flibs.test: New File.
* link_c_cxx.test: New file.
* link_f_c.test: New file.
* link_f_c_cxx.test: New file.
* link_f_cxx.test: New file.
* link_f_only.test: New file.
* Makefile.am (TESTS): Add cxxonly.test, fonly.test, flink.test,
fnoc.test and fo.test.
* cxxonly.test: New file.
* fonly.test: New file.
* flink.test: New file.
* fnoc.test: New file.
* fo.test: New file.
Tom Tromey [Fri, 9 Oct 1998 11:10:16 +0000 (11:10 +0000)]
* m4/winsz.m4 (AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL): Use
3-argument form of AC_DEFINE.
* m4/regex.m4 (AM_WITH_REGEX): Use 3-argument form of AC_DEFINE.
* m4/ptrdiff.m4 (AM_TYPE_PTRDIFF_T): Use 3-argument form of
AC_DEFINE.
* m4/protos.m4 (AM_C_PROTOTYPES):Use 3-argument form of
AC_DEFINE.
* m4/obstack.m4 (AM_FUNC_OBSTACK): Use 3-argument form of
AC_DEFINE.
* m4/init.m4 (AM_INIT_AUTOMAKE): Use 3-argument form of
AC_DEFINE.
* m4/dmalloc.m4 (AM_WITH_DMALLOC): Use 3-argument form of
AC_DEFINE.
Tom Tromey [Mon, 5 Oct 1998 23:11:10 +0000 (23:11 +0000)]
* depend2.am (%.lo): Handle case where compiler does not put space
before ":". From Raja R Harinath.
* automake.in (scan_one_configure_file): AC_CONFIG_HEADER is not
obsolete; it simply isn't preferred with automake.
(scan_one_configure_file): Likewise for AC_DECL_YYTEXT and
AC_PROG_LEX.
* automake.in (am_line_error): Handle case where variable defined
in configure.in. Fixes test badline.test.
(%configure_vars): Redefined meaning of values.
(scan_one_configure_file): Set $configure_vars values
appropriately.
Tom Tromey [Sat, 3 Oct 1998 11:28:00 +0000 (11:28 +0000)]
Bug fix from Jim Blandy:
* depend2.am (%.lo): When editing the dependency file to add the
.lo file to the targets, allow for whitespace between the end of
the filename and the colon. Some compilers (notably the Cygnus
release of GCC 2.7-97r1) put space there: "alist.o : ..."
Tom Tromey [Thu, 1 Oct 1998 00:23:33 +0000 (00:23 +0000)]
Some bug fixes, plus a complete rewrite of source file handling:
* texinfos.am (install-info-am): Handle case where INFO_DEPS is
empty. Reported by Andrew Cagney.
(uninstall-info): Likewise.
(dist-info): Likewise.
* automake.in (handle_texinfo): Error if user tries to generate
HTML.
* automake.in (do_one_clean_target): Don't push previous clean
target if this target is `mostly'. Report from Raja R Harinath.
* subdirs.am (mostlyclean-recursive ...): Build local_target, not
target. From Raja R Harinath.
Completely changed how languages and source files are handled:
* automake.in: Call register_language for each language.
(lang_c_rewrite): New function.
(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_fortran_rewrite): Likewise.
(register_language): Likewise.
(extension_map): New global.
(language_map): Likewise.
(resolve_linker): New function.
(handle_single_transform_list): Rewrote to use lang_X_rewrite
functions. Changed meaning of first argument.
(initialize_per_input): Removed seen_any_source. Initialize
language_scratch, extension_seen. Removed cxx_extensions,
seen_c_source, dir_holds_headers, dir_holds_sources.
(handle_source_transform): Don't compute $objpat. Pass $obj
directly to handle_single_transform_list.
(handle_built_sources): Fixed call to
handle_single_transform_list.
(lang_c_finish): New function.
(lang_cxx_finish): Likewise.
(lang_header_finish): Likewise.
(lang_yacc_finish): Likewise.
(lang_yaccxx_finish): Likewise.
(lang_lex_finish): Likewise.
(lang_lexxx_finish): Likewise..
(lang_asm_finish): Likewise.
(lang_fortran_finish): Likewise.
(yacc_lex_finish_helper): Likewise.
(libtool_compiler): Likewise.
(saw_extension): New function.
(handle_lib_objects_cond): Use saw_extension, not old variables.
(handle_yacc_lex_cxx): Removed.
(finish_languages): New function.
(get_object_extension): Don't set dir_holds_sources.
(handle_headers): Don't set dir_holds_headers. Instead, call
saw_extension.
(saw_sources_p): New function.
(handle_tags): Use it.
(handle_dependencies): Likewise.
(cxx_extensions): New function.
(handle_dependencies): Use it.
(generate_makefile): Call finish_languages, not
handle_yacc_lex_cxx.
Tom Tromey [Tue, 29 Sep 1998 22:47:57 +0000 (22:47 +0000)]
A couple bug fixes from Andreas Schwab:
* texi-vers.am: Use the correct target names. Fix generation of
stamp file.
* automake.in (handle_tests): In commands generating site.exp copy
the old contents from site.exp, not site.bak, which does not
exist.
Tom Tromey [Tue, 29 Sep 1998 01:28:42 +0000 (01:28 +0000)]
Fixes for recurs2.test. Report from Jim Meyering.
* automake.in (vars_scanned): Define globally.
(variable_value_as_list_worker): Delete $var entry in
%vars_scanned after local work is done.
Tom Tromey [Mon, 28 Sep 1998 02:03:28 +0000 (02:03 +0000)]
`include' handling from Marcus Daniels:
* automake.in: New pattern: INCLUDE_PATTERN.
(read_am_file): Make AM_FILE a local filehandle.
For INCLUDE_PATTERN, store included paths on @include_stack and call
read_am_file with argument.
(handle_configure): When printing the dependencies for
Makefile.in, print the items on include_stack (if any) as
dependencies, too.
* automake.texi: Make a command index `cm' that goes into the
concept index. Put if, endif, else, and include in the command index.
(Include): Show usage of include directive.
Tom Tromey [Mon, 28 Sep 1998 01:51:04 +0000 (01:51 +0000)]
`.' in SUBDIRS changes order of builds:
* Makefile.am (SUBDIRS): Added `.'. Put tests last.
* tags.am (TAGS): Don't look for TAGS file in `.'.
* automake.texi (Top level): Document SUBDIRS change.
* automake.in (handle_installdirs): Create separate installdirs-am
target.
(handle_merge_targets): Don't put all-am onto @all. Fixed error
message. Correctly handle install-info. Give error if
install-info-local inappropriately defined. Don't special-case
install-data, install-exec, install, uninstall, or all.
(handle_subdirs): Don't push `-recursive' target names onto
corresponding lists.
(do_one_merge_target): Always define `-am' form of rule, and point
ordinary form to `-am' or `-recursive' as appropriate.
Special-case `all'.
(do_check_merge_target): Generate check-am target.
(handle_dist_worker): Use target_defined.
(handle_dist): Likewise.
(handle_merge_targets): Likewise.
(do_one_merge_target): Likewise.
(do_check_merge_target): Likewise.
(do_one_clean_target): Likewise.
(initialize_per_input): Initialize $all_target.
(do_one_clean_target): Always generate -am form of rule; other
changes for new SUBDIRS change.
(handle_clean): Always generate clean-am form of rule.
(handle_tags): Only build subdir if not `.'.
(handle_dist_worker): Skip `.' directory.
* subdirs.am: Allow `.' to be specified in SUBDIRS.
Tom Tromey [Mon, 28 Sep 1998 01:47:02 +0000 (01:47 +0000)]
* Makefile.am (TESTS): Added clean.am.
* clean.test: New file.
* ansi2.test: Updated test for new SUBDIRS change.
* noinst.test: Updated test for new SUBDIRS change.
* checkall.test: Added check to make sure check-local is handled.
Updated test for new SUBDIRS change.
* java.test: Updated test for new SUBDIRS change.
Tom Tromey [Sat, 26 Sep 1998 19:06:03 +0000 (19:06 +0000)]
* aclocal.test: Put AM_INIT_AUTOMAKE into configure.in.
* library.test: Use AC_EXEEXT.
* texinfo5.test: Use AC_EXEEXT.
* Many files: use AC_PROG_INSTALL, not AM_PROG_INSTALL.
Tom Tromey [Sat, 26 Sep 1998 18:32:21 +0000 (18:32 +0000)]
Test suite updates for the @SHELL@ change:
* exsource.test: Set SHELL on `make' command line.
* ansi.test: Set SHELL on `make' command line.
* texinfo.test: Set SHELL on `make' command line.
* insh2.test: Set SHELL on `make' command line.
* empty.test: Rewrite @SHELL@ to /bin/sh.