From cfd83555fc4f0bab18a26f6812da18e64df46ff3 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Wed, 11 Jan 2017 18:22:56 +0100 Subject: [PATCH] scripts/package-metadata.pl: fix overriding conditional dependencies with conditional select Conditional dependencies use the '(!cond) || dep' syntax, whereas conditional select uses 'dep if cond'. Add an extra check to suppress emitting a conditional if an equal conditional select already exists. Signed-off-by: Felix Fietkau --- scripts/package-metadata.pl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/package-metadata.pl b/scripts/package-metadata.pl index f8f16f07fa..2da32c770e 100755 --- a/scripts/package-metadata.pl +++ b/scripts/package-metadata.pl @@ -215,11 +215,13 @@ sub mconf_depends { $flags =~ /@/ or $depend = "PACKAGE_$depend"; } } + if ($condition) { if ($m =~ /select/) { next if $depend eq $condition; $depend = "$depend if $condition"; } else { + next if $dep->{"$depend if $condition"}; $depend = "!($condition) || $depend" unless $dep->{$condition} eq 'select'; } }