brcm2708: convert to the new building system
[openwrt/staging/yousong.git] / scripts / metadata.pm
index 3b756216a5ee7fac5ba31497f75ff5741d1d4998..e2a739533cc963dc4eeab86e83ffb3313b0c8b9d 100644 (file)
@@ -89,11 +89,11 @@ sub parse_target_metadata($) {
                        };
                        push @{$target->{profiles}}, $profile;
                };
-               /^Target-Profile-Name:\s*(.+)\s*$/ and do {
+               /^Target-Profile-Name:\s*(.+)\s*$/ and $profile->{name} = $1;
+               /^Target-Profile-Priority:\s*(\d+)\s*$/ and do {
+                       $profile->{priority} = $1;
                        $target->{sort} = 1;
-                       $profile->{name} = $1;
                };
-               /^Target-Profile-Priority:\s*(\d+)\s*$/ and $profile->{priority} = $1;
                /^Target-Profile-Packages:\s*(.*)\s*$/ and $profile->{packages} = [ split(/\s+/, $1) ];
                /^Target-Profile-Description:\s*(.*)\s*/ and $profile->{desc} = get_multiline(*FILE);
                /^Target-Profile-Config:/ and $profile->{config} = get_multiline(*FILE, "\t");
@@ -112,6 +112,11 @@ sub parse_target_metadata($) {
                                packages => []
                        }
                ];
+
+               $target->{sort} and @{$target->{profiles}} = sort {
+                       $a->{priority} <=> $b->{priority} or
+                       $a->{name} cmp $b->{name};
+               } @{$target->{profiles}};
        }
        return @target;
 }