Title: [105258] trunk/Tools
Revision
105258
Author
ves...@webkit.org
Date
2012-01-18 03:32:33 -0800 (Wed, 18 Jan 2012)

Log Message

[Qt] Allow building only a subset of the WebKit sub-projects

Fixes build-jsc, broken in r104825.

We no longer need the intermediate buildQMakeQtProject(), as we're the
only port using qmake, and buildQMakeProject is now highly Qt specific.

<http://webkit.org/b/76179>

Reviewed by Simon Hausmann.

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (105257 => 105258)


--- trunk/Tools/ChangeLog	2012-01-18 11:25:21 UTC (rev 105257)
+++ trunk/Tools/ChangeLog	2012-01-18 11:32:33 UTC (rev 105258)
@@ -1,3 +1,21 @@
+2012-01-18  Tor Arne Vestbø  <tor.arne.ves...@nokia.com>
+
+        [Qt] Allow building only a subset of the WebKit sub-projects
+
+        Fixes build-jsc, broken in r104825.
+
+        We no longer need the intermediate buildQMakeQtProject(), as we're the
+        only port using qmake, and buildQMakeProject is now highly Qt specific.
+
+        <http://webkit.org/b/76179>
+
+        Reviewed by Simon Hausmann.
+
+        * Scripts/build-jsc:
+        * Scripts/build-webkit:
+        * Scripts/webkitdirs.pm:
+        (buildQMakeProjects):
+
 2012-01-18  Ryosuke Niwa  <rn...@webkit.org>
 
         run-perf-tests should generate a json file that summaries the result

Modified: trunk/Tools/Scripts/build-jsc (105257 => 105258)


--- trunk/Tools/Scripts/build-jsc	2012-01-18 11:25:21 UTC (rev 105257)
+++ trunk/Tools/Scripts/build-jsc	2012-01-18 11:32:33 UTC (rev 105258)
@@ -73,7 +73,8 @@
 } elsif (isQt()) {
     # Remove duplicated --qt options to avoid passing them to qmake
     checkForArgumentAndRemoveFromARGV("--qt");
-    $result = buildQMakeProject("_javascript_Core", 0, @ARGV);
+    my @projects = ("WTF", "_javascript_Core");
+    $result = buildQMakeProjects(\@projects, 0, @ARGV);
 } elsif (isWx()) {
     # Builds everything in one-shot. No need to build anything here.
     $result = 0;

Modified: trunk/Tools/Scripts/build-webkit (105257 => 105258)


--- trunk/Tools/Scripts/build-webkit	2012-01-18 11:25:21 UTC (rev 105257)
+++ trunk/Tools/Scripts/build-webkit	2012-01-18 11:32:33 UTC (rev 105258)
@@ -655,13 +655,19 @@
     buildCMakeProjectOrExit($clean, "BlackBerry", $prefixPath, $makeArgs, (cmakeBasedPortArguments(), cMakeArgsFromFeatures()));
 }
 
+if (isQt()) {
+    @projects = (); # An empty projects list will build the default projects
+    my $result = buildQMakeProjects(\@projects, $clean, @options);
+    exit exitStatus($result) if exitStatus($result);
+}
+
 # Build, and abort if the build fails.
 for my $dir (@projects) {
     chdir $dir or die;
     my $result = 0;
 
-    # For Gtk and Qt the WebKit project builds all others
-    if ((isGtk() || isQt()) && $dir ne "Source/WebKit") {
+    # For Gtk the WebKit project builds all others
+    if (isGtk() && $dir ne "Source/WebKit") {
         chdirWebKit();
         next;
     }
@@ -672,9 +678,6 @@
             unshift(@options, "--enable-webkit2");
         }
         $result = buildGtkProject($project, $clean, @options);
-    } elsif (isQt()) {
-        #FIXME: $dir should probably be $project.
-        $result = buildQMakeQtProject($dir, $clean, @options);
     } elsif (isAppleMacWebKit()) {
         my @local_options = @options;
         push @local_options, XcodeCoverageSupportOptions() if $coverageSupport && $project ne "ANGLE";

Modified: trunk/Tools/Scripts/webkitdirs.pm (105257 => 105258)


--- trunk/Tools/Scripts/webkitdirs.pm	2012-01-18 11:25:21 UTC (rev 105257)
+++ trunk/Tools/Scripts/webkitdirs.pm	2012-01-18 11:32:33 UTC (rev 105258)
@@ -2012,9 +2012,9 @@
     return $input ? $input : $default;
 }
 
-sub buildQMakeProject($@)
+sub buildQMakeProjects
 {
-    my ($project, $clean, @buildParams) = @_;
+    my ($projects, $clean, @buildParams) = @_;
 
     my @buildArgs = ();
 
@@ -2134,9 +2134,7 @@
 
     my $makefile = File::Spec->catfile($dir, "Makefile");
     if (! -e $makefile) {
-        if ($project) {
-            push @buildArgs, "-after OVERRIDE_SUBDIRS=" . $project;
-        }
+        push @buildArgs, "-after OVERRIDE_SUBDIRS=\"@{$projects}\"" if @{$projects};
 
         push @buildArgs, File::Spec->catfile(sourceDir(), "WebKit.pro");
         my $command = "$qmakecommand @buildArgs";
@@ -2148,10 +2146,6 @@
         if ($result ne 0) {
            die "Failed to setup build environment using $qmakebin!\n";
         }
-    } elsif ($project) {
-        $dir = File::Spec->catfile($dir, "Source", $project);
-        chdir $dir or die "Failed to cd into " . $dir . "\n";
-        $make = "$make -f Makefile.$project";
     }
 
     my $command = "$make $makeargs";
@@ -2170,13 +2164,6 @@
     return $result;
 }
 
-sub buildQMakeQtProject($$@)
-{
-    my ($project, $clean, @buildArgs) = @_;
-
-    return buildQMakeProject("", $clean, @buildArgs);
-}
-
 sub buildGtkProject
 {
     my ($project, $clean, @buildArgs) = @_;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to