Browse Source

metadata.pl: fix handling of multiple conditional depends that reference the same package (exposed by previous hotplug2 changes), also kill duplicate dependency specs while we're at it

SVN-Revision: 27267
Jo-Philipp Wich 14 years ago
parent
commit
e745fc762b
1 changed files with 4 additions and 4 deletions
  1. 4 4
      scripts/metadata.pl

+ 4 - 4
scripts/metadata.pl

@@ -696,10 +696,10 @@ sub gen_package_mk() {
 				my $depstr = "\$(curdir)/$idx$suffix/compile";
 				my $depline = get_conditional_dep($condition, $depstr);
 				if ($depline) {
-					$deplines{$dep} = $depline;
+					$deplines{$depline}++;
 				}
 			}
-			my $depline = join(" ", values %deplines);
+			my $depline = join(" ", sort keys %deplines);
 			if ($depline) {
 				$line .= "\$(curdir)/".$pkg->{subdir}."$pkg->{src}/$type/compile += $depline\n";
 			}
@@ -756,12 +756,12 @@ sub gen_package_mk() {
 					}
 					$depline = get_conditional_dep($condition, $depstr);
 					if ($depline) {
-						$deplines{$idx.$dep} = $depline;
+						$deplines{$depline}++;
 					}
 				}
 			}
 		}
-		my $depline = join(" ", values %deplines);
+		my $depline = join(" ", sort keys %deplines);
 		if ($depline) {
 			$line .= "\$(curdir)/".$pkg->{subdir}."$pkg->{src}/compile += $depline\n";
 		}