+2004-08-05 Alexandre Duret-Lutz <adl@gnu.org>
+
+ * automake.in ($libtool_new_api): New variable.
+ (handle_libtool): Do not libtool's aux files if $libtool_new_api.
+ (scan_autoconf_traces) <LT_SUPPORTED_TAG>: Set $libtool_new_api.
+ (scan_autoconf_traces) <AC_REQUIRE_AUX_FILE>: Remember only the
+ first location for required files.
+
2004-08-04 Alexandre Duret-Lutz <adl@gnu.org>
Support AC_REQUIRE_AUX_FILE, and fix requirement of AM_PROG_CC_C_O.
# Lists of tags supported by Libtool.
my %libtool_tags = ();
+# 1 if Libtool uses LT_SUPPORTED_TAG. If it does, then it also
+# use AC_REQUIRE_AUX_FILE.
+my $libtool_new_api = 0;
# Most important AC_CANONICAL_* macro seen so far.
my $seen_canonical = 0;
# TRUE if we've seen AM_PROG_CC_C_O
my $seen_cc_c_o = 0;
-# Location of AC_REQUIRE_AUX_FILES calls, indexed by their argument.
+# Location of AC_REQUIRE_AUX_FILE calls, indexed by their argument.
my %required_aux_file = ();
# Where AM_INIT_AUTOMAKE is called;
return unless var ('LIBTOOL');
# Libtool requires some files, but only at top level.
+ # (Starting with Libtool 2.0 we do not have to bother. These
+ # requirements are done with AC_REQUIRE_AUX_FILE.)
require_conf_file_with_macro (TRUE, 'LIBTOOL', FOREIGN, @libtool_files)
- if $relative_dir eq '.';
+ if $relative_dir eq '.' && ! $libtool_new_api;
my @libtool_rms;
foreach my $item (sort keys %libtool_clean_directories)
}
elsif ($macro eq 'AC_REQUIRE_AUX_FILE')
{
- $required_aux_file{$args[1]} = $where;
+ # Only remember the first time a file is required.
+ $required_aux_file{$args[1]} = $where
+ unless exists $required_aux_file{$args[1]};
}
elsif ($macro eq 'm4_include'
|| $macro eq 'm4_sinclude'
elsif ($macro eq 'LT_SUPPORTED_TAG')
{
$libtool_tags{$args[1]} = 1;
+ $libtool_new_api = 1;
}
elsif ($macro eq '_LT_AC_TAGCONFIG')
{