diff --git a/scripts/package-metadata.pl b/scripts/package-metadata.pl
index f8f16f07fa8bb67a037e86473233343e7d2ced0a..2da32c770ef3333bfcc18922ede556f9734510c7 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';
 			}
 		}