mirror of https://github.com/hak5/openwrt.git
build: extend ABI_VERSION suffixing to provides
When a library package specifies additional provides, e.g. libncurses which provides libncursesw, we should also append the abi version suffix to each provide, since there may be more than one package providing the virtual library. Signed-off-by: Jo-Philipp Wich <jo@mein.io>openwrt-19.07
parent
68b29a7a95
commit
60558790a2
|
@ -162,7 +162,7 @@ Package: $(1)$$(ABIV_$(1))
|
|||
Version: $(VERSION)
|
||||
$$(call addfield,Depends,$$(Package/$(1)/DEPENDS)
|
||||
)$$(call addfield,Conflicts,$$(call mergelist,$(CONFLICTS))
|
||||
)$$(call addfield,Provides,$$(call mergelist,$(PROVIDES)$$(if $$(ABIV_$(1)), $(1)))
|
||||
)$$(call addfield,Provides,$$(call mergelist,$(PROVIDES)$$(if $$(ABIV_$(1)), $(1) $(foreach provide,$(PROVIDES),$(provide)$$(ABIV_$(1)))))
|
||||
)$$(call addfield,Alternatives,$$(call mergelist,$(ALTERNATIVES))
|
||||
)$$(call addfield,Source,$(SOURCE)
|
||||
)$$(call addfield,SourceName,$(1)
|
||||
|
|
|
@ -516,13 +516,19 @@ sub gen_package_auxiliary() {
|
|||
if ($pkg->{name} && $pkg->{repository}) {
|
||||
print "Package/$name/subdir = $pkg->{repository}\n";
|
||||
}
|
||||
if ($pkg->{name} && defined($pkg->{abiversion})) {
|
||||
if ($pkg->{name} && defined($pkg->{abiversion}) && length($pkg->{abiversion})) {
|
||||
my $abiv;
|
||||
|
||||
if ($pkg->{abiversion} =~ m!^(\d{4})-(\d{2})-(\d{2})-[0-9a-f]{7,40}$!) {
|
||||
print STDERR "WARNING: Reducing ABI version '$pkg->{abiversion}' of package '$name' to '$1$2$3'\n";
|
||||
print "Package/$name/abiversion = $1$2$3\n";
|
||||
$abiv = "$1$2$3";
|
||||
}
|
||||
elsif (length $pkg->{abiversion}) {
|
||||
print "Package/$name/abiversion = $pkg->{abiversion}\n";
|
||||
else {
|
||||
$abiv = $pkg->{abiversion};
|
||||
}
|
||||
|
||||
foreach my $n (@{$pkg->{provides}}) {
|
||||
print "Package/$n/abiversion = $abiv\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue