From 60558790a2a832265ec041131e851b6648f514d4 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Mon, 21 Jan 2019 17:29:57 +0100 Subject: 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 --- scripts/package-metadata.pl | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'scripts') diff --git a/scripts/package-metadata.pl b/scripts/package-metadata.pl index b69ceb216a..e0cdff1e81 100755 --- a/scripts/package-metadata.pl +++ b/scripts/package-metadata.pl @@ -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"; + } + else { + $abiv = $pkg->{abiversion}; } - elsif (length $pkg->{abiversion}) { - print "Package/$name/abiversion = $pkg->{abiversion}\n"; + + foreach my $n (@{$pkg->{provides}}) { + print "Package/$n/abiversion = $abiv\n"; } } } -- cgit v1.2.3