From 70f62578d956d416bfc8774edfdb481cb1221772 Mon Sep 17 00:00:00 2001
From: Jo-Philipp Wich <jow@openwrt.org>
Date: Thu, 23 Jun 2011 19:28:16 +0000
Subject: [scripts] 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

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27267 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 scripts/metadata.pl | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

(limited to 'scripts')

diff --git a/scripts/metadata.pl b/scripts/metadata.pl
index 7208e16a98..246520bf78 100755
--- a/scripts/metadata.pl
+++ b/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";
 		}
-- 
cgit v1.2.3