2007-11-20 Mark Rowe <mrowe@apple.com>
authormrowe@apple.com <mrowe@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 20 Nov 2007 15:53:35 +0000 (15:53 +0000)
committermrowe@apple.com <mrowe@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 20 Nov 2007 15:53:35 +0000 (15:53 +0000)
        Reviewed by Simon Hausmann.

        * Scripts/build-webkit:  Pass "clean" flag down into buildQMakeProject.
        * Scripts/webkitdirs.pm: Respect the "clean" flag passed down from build-webkit.
        Have it trigger a "make distclean" rather than "make clean" to ensure that the
        built product and generated Makefile's are removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27927 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKitTools/ChangeLog
WebKitTools/Scripts/build-webkit
WebKitTools/Scripts/webkitdirs.pm

index 4b14d7438a7e5328d2733b3cd46f0ccf94066bc5..216616b39833f2c8b4a0fe687b50043e83b4423e 100644 (file)
@@ -1,3 +1,12 @@
+2007-11-20  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Simon Hausmann.
+
+        * Scripts/build-webkit:  Pass "clean" flag down into buildQMakeProject.
+        * Scripts/webkitdirs.pm: Respect the "clean" flag passed down from build-webkit.
+        Have it trigger a "make distclean" rather than "make clean" to ensure that the
+        built product and generated Makefile's are removed.
+
 2007-11-19  Alp Toker  <alp@atoker.com>
 
         Reviewed by Mark Rowe.
index 1e84b7967500f0b12256868129fea88c3d9e993b..bab69c991d11e3cc6071487a5ac7ec5f3633d4cb 100755 (executable)
@@ -185,13 +185,13 @@ for my $dir (@projects) {
             next;
         }
 
-        $result = buildQMakeGtkProject($dir);
+        $result = buildQMakeGtkProject($dir, $clean);
     } elsif (isQt()) {
         if ($dir ne "WebKit") {
             chdir ".." or die;
             next;
         }
-        $result = buildQMakeQtProject($dir);
+        $result = buildQMakeQtProject($dir, $clean);
     } elsif (isOSX()) {
         $result = system "xcodebuild", "-project", "$dir.xcodeproj", @options, $overrideFeatureDefinesString, @coverageSupportOption, @ARGV;
     } elsif (isCygwin()) {
index 60874ee7281bc7dc830468c0033f4cb4bbb3297a..b1273fd91b4bee35bcfb71508afe5687dfcda95f 100644 (file)
@@ -689,10 +689,9 @@ sub qtMakeCommand($)
     return "make";
 }
 
-sub buildQMakeProject(@)
+sub buildQMakeProject($@)
 {
-    my @buildArgs = @_;
-    my $clean = 0;
+    my ($clean, @buildArgs) = @_;
 
     push @buildArgs, "-r";
 
@@ -703,8 +702,6 @@ sub buildQMakeProject(@)
             $qmakebin = $1;
         } elsif ($opt =~ /^--qmakearg=(.*)/i ) {
             push @buildArgs, $1;
-        } elsif ($opt eq "--clean") {
-            $clean = 1; 
         }
     }
 
@@ -742,30 +739,26 @@ sub buildQMakeProject(@)
     }
 
     if ($clean) {
-      system "$make clean";
+      system "$make distclean";
+    } else {
+      system "$make";
     }
 
-    # There is now a --clean option for build-webkit, but it doesn't build
-    # after cleaning, as WEBKIT_FULLBUILD does. For now, have WEBKIT_FULLBUILD
-    # continue to behave after before.
-    if (!$clean || defined($ENV{"WEBKIT_FULLBUILD"})) {
-        $result = system "$make";
-    }
     chdir ".." or die;
     return $result;
 }
 
-sub buildQMakeQtProject($)
+sub buildQMakeQtProject($$)
 {
-    my ($project) = @_;
+    my ($project, $clean) = @_;
 
     my @buildArgs = ("CONFIG+=qt-port");
-    return buildQMakeProject(@buildArgs);
+    return buildQMakeProject($clean, @buildArgs);
 }
 
-sub buildQMakeGtkProject($)
+sub buildQMakeGtkProject($$)
 {
-    my ($project) = @_;
+    my ($project, $clean) = @_;
 
     if ($project ne "WebKit") {
         die "The Gtk portbuilds JavaScriptCore/WebCore/WebKitQt in one shot! Only call it for 'WebKit'.\n";
@@ -774,7 +767,7 @@ sub buildQMakeGtkProject($)
     my @buildArgs = ("CONFIG+=gtk-port");
     push @buildArgs, "CONFIG-=qt";
 
-    return buildQMakeProject(@buildArgs);
+    return buildQMakeProject($clean, @buildArgs);
 }
 
 sub setPathForRunningWebKitApp