scripts/package-metadata.pl: fix handling of virtual (PROVIDES) depends

Currently the code emitting dependencies for provide candidates is overwriting
the specification calculated by the previous conditional dependency handling
code, rendering dependencies on virtual PROVIDES packages in conjunction with
conditional dependencies unusable.

Instead of overwriting, append the PROVIDES dependency spec in order to fix
using DEPENDS on virtual provider packages in conjunction with conditions.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
v19.07.3_mercusys_ac12_duma
Jo-Philipp Wich 8 years ago
parent b7f7e9fe42
commit f64360c7ca

@ -179,9 +179,9 @@ sub mconf_depends {
my @vdeps = @$vdep;
$depend = shift @vdeps;
if (@vdeps > 1) {
$condition = '!('.join("||", map { "PACKAGE_".$_ } @vdeps).')';
$condition = ($condition ? "$condition && " : '') . '!('.join("||", map { "PACKAGE_".$_ } @vdeps).')';
} elsif (@vdeps > 0) {
$condition = '!PACKAGE_'.$vdeps[0];
$condition = ($condition ? "$condition && " : '') . '!PACKAGE_'.$vdeps[0];
}
}

Loading…
Cancel
Save