don't check dependencies of packages already done
authorZhang Qiang <qiang.z.zhang@intel.com>
Fri, 20 Jun 2014 12:53:11 +0000 (20:53 +0800)
committerZhang Qiang <qiang.z.zhang@intel.com>
Sun, 22 Jun 2014 00:00:54 +0000 (08:00 +0800)
This can avoid detecting circle during building

Change-Id: I2d60299014551081a071eb69c408e2510c3e7aae
Signed-off-by: Zhang Qiang <qiang.z.zhang@intel.com>
depanneur

index c6b24cda2620eef3f1c5ad84b554a9b98423dd18..62a42978dc06c2735cd863f465931e640d9de30b 100755 (executable)
--- a/depanneur
+++ b/depanneur
@@ -1115,7 +1115,8 @@ sub update_pkgdeps
 
 sub update_pkgddeps {
     foreach my $name (keys %to_build) {
-        if(! (grep $_ eq $name, @skipped)) {
+        if(! (grep $_ eq $name, @skipped) &&
+           ! (grep $_ eq $name, @done)) {
             my $fn = $to_build{$name}->{filename};
             my @bdeps = get_deps($fn);
             my @deps;
@@ -1123,6 +1124,7 @@ sub update_pkgddeps {
                 my $so = source_of($depp, %to_build);
                 if (defined($so) && $name ne $so
                     && (! grep($_ eq $so, @skipped))
+                    && (! grep($_ eq $so, @done))
                     && (! grep($_ eq $so, @deps))) {
                     push (@deps, $so);
                 }