Ignore exclude packages in parsing phrase
authorZhang Qiang <qiang.z.zhang@intel.com>
Sat, 8 Sep 2012 05:44:40 +0000 (13:44 +0800)
committerZhang Qiang <qiang.z.zhang@intel.com>
Mon, 10 Sep 2012 22:43:26 +0000 (06:43 +0800)
skip exclude packages while parsing packs, and don't need care about
exclude packages in build scheduler, and make scheduler more clear.

Change-Id: I02be218bf0c329d6953feea5b61759dd5e0c2a3d

depanneur

index 8236129..e177861 100755 (executable)
--- a/depanneur
+++ b/depanneur
@@ -452,6 +452,9 @@ sub parse_packs {
         my $release = $pack->{release};
         my @buildrequires = $pack->{deps};
         my @subpacks = $pack->{subpacks};
+        if ( (grep $_ eq $name, @exclude) ) {
+            next;
+        }
         $packs{$name} = {
             name => $name,
             version => $version,
@@ -922,18 +925,16 @@ if ( ! -e "$localrepo/$dist/$arch/RPMS" ) {
 }
 
 foreach my $name (keys %to_build) {
-    if( ! (grep $_ eq $name, @done) && ! (grep $_ eq $name, @exclude)) {
-        my $fn = $to_build{$name}->{filename};
-        my $version = $to_build{$name}->{version};
-        my $release = $to_build{$name}->{release};
-        my $pattern = "$localrepo/$dist/src/SRPMS/$name-$version-$release.*.rpm";
-        my @binaries = glob $pattern;
-        if (@binaries != 0 && ! $overwrite) {
-            info("skipping $name-$version-$release $arch ");
-            push(@skipped, $name);
-        } elsif (@binaries != 0 && $overwrite) {
-            info("*** overwriting $name-$version-$release $arch ***");
-        }
+    my $fn = $to_build{$name}->{filename};
+    my $version = $to_build{$name}->{version};
+    my $release = $to_build{$name}->{release};
+    my $pattern = "$localrepo/$dist/src/SRPMS/$name-$version-$release.*.rpm";
+    my @binaries = glob $pattern;
+    if (@binaries != 0 && ! $overwrite) {
+        info("skipping $name-$version-$release $arch ");
+        push(@skipped, $name);
+    } elsif (@binaries != 0 && $overwrite) {
+        info("*** overwriting $name-$version-$release $arch ***");
     }
 }
 
@@ -951,7 +952,6 @@ while (! $TERM) {
     #print " " . $_ . "\n" foreach (@o);
     foreach my $name (keys %to_build) {
         if( ! (grep $_ eq $name, @done) && 
-            ! (grep $_ eq $name, @exclude) && 
             ! (grep $_ eq $name, @skipped)) 
         {
             my $fn = $to_build{$name}->{filename};