summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Engelhardt <jengelh@inai.de>2021-09-10 15:45:29 -0700
committerKarl Berry <karl@freefriends.org>2021-09-10 15:45:29 -0700
commit4ffbab9337430131b21ce784a10aed67dbd35373 (patch)
treef326c938909c288470246e3c519ca799808c5898
parentf4a3a70f69e1dbccb6578f39ef47835098a04624 (diff)
downloadautomake-4ffbab9337430131b21ce784a10aed67dbd35373.tar.gz
automake: consistently depend on install-libLTLIBRARIES.
Report and patch: https://lists.gnu.org/archive/html/automake/2021-08/msg00016.html * bin/automake.in (generate_makefile): depend on install-libLTLIBRARIES for all PROGRAMS and LTLIBRARIES, such as install-pkglibLTLIBRARIES. * NEWS: mention this.
-rw-r--r--NEWS4
-rw-r--r--bin/automake.in25
2 files changed, 23 insertions, 6 deletions
diff --git a/NEWS b/NEWS
index bb3e3ae47..fe66a06f3 100644
--- a/NEWS
+++ b/NEWS
@@ -5,6 +5,10 @@ please see NEWS-2.0 and start following the advice there now.
New in ?.?.?:
+* Bugs fixed
+
+ - consistently depend on install-libLTLIBRARIES.
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
New in 1.16.4:
diff --git a/bin/automake.in b/bin/automake.in
index f04f5d5f5..30babd607 100644
--- a/bin/automake.in
+++ b/bin/automake.in
@@ -8042,13 +8042,26 @@ sub generate_makefile
handle_all ($makefile);
# FIXME: Gross!
- if (var ('lib_LTLIBRARIES') && var ('bin_PROGRAMS'))
+ my $have_lt1 = !!var("lib_LTLIBRARIES");
+ my $have_lt2 = !!var("nobase_lib_LTLIBRARIES");
+ for my $var (variables("PROGRAMS"), variables("LTLIBRARIES"))
{
- $output_rules .= "install-binPROGRAMS: install-libLTLIBRARIES\n\n";
- }
- if (var ('nobase_lib_LTLIBRARIES') && var ('bin_PROGRAMS'))
- {
- $output_rules .= "install-binPROGRAMS: install-nobase_libLTLIBRARIES\n\n";
+ if ($var->name eq "lib_LTLIBRARIES"
+ || $var->name eq "nobase_lib_LTLIBRARIES"
+ || substr($var->name, 0, 7) eq "noinst_")
+ {
+ next;
+ }
+ my $shortname = $var->name;
+ $shortname =~ tr{_}{}d;
+ if ($have_lt1)
+ {
+ $output_rules .= "install-$shortname: install-libLTLIBRARIES\n\n";
+ }
+ if ($have_lt2)
+ {
+ $output_rules .= "install-$shortname: install-nobase_libLTLIBRARIES\n\n";
+ }
}
handle_install;