Add wxWebKit sample and build script, and integrate it with build-webkit. Also make...
[WebKit-https.git] / WebKitTools / Scripts / build-webkit
index 229c9f78107ec7bdfaf20e6940a35a3f04b55d19..e1707a0b42a9b0ec92bff10a3113c5326fd223e8 100755 (executable)
@@ -46,6 +46,7 @@ my $xsltSupport = 1;
 my $coverageSupport = 0;
 my $videoSupport = isOSX(); # Enable by default on OSX
 my $showHelp = 0;
+my $clean = 0;
 
 my $programName = basename($0);
 my $usage = <<EOF;
@@ -65,7 +66,8 @@ GetOptions('svg!' => \$svgSupport,
            'xslt!' => \$xsltSupport,
            'video!' => \$videoSupport,
            'coverage!' => \$coverageSupport,
-           'help' => \$showHelp);
+           'help' => \$showHelp,
+           'clean' => \$clean);
 
 if ($showHelp) {
    print STDERR $usage;
@@ -78,10 +80,31 @@ checkRequiredSystemConfig();
 setConfiguration();
 chdirWebKit();
 
+# FIXME: Migrate build-wxwebkit commands into build-webkit.
+if (isWx()) {
+    my @opts = ();
+    foreach (@ARGV) {
+        if ($_ eq "wxgc" || $_ eq "wxpython") {
+            push(@opts, $_);
+        }
+    }
+    if ($clean) {
+        push(@opts, "clean");
+    }
+    system "WebKitTools/wx/build-wxwebkit @opts";
+    exit 0;
+}
+
+
 my $productDir = productDir();
 my @options = XcodeOptions();
 my @overrideFeatureDefinesOption = ();
 
+if ($clean) {
+    push(@options, "-alltargets");
+    push(@options, "clean");
+}
+
 push @overrideFeatureDefinesOption, "ENABLE_DATABASE";
 push @overrideFeatureDefinesOption, "ENABLE_ICONDATABASE";
 push @overrideFeatureDefinesOption, "ENABLE_SVG" if $svgSupport;
@@ -172,7 +195,7 @@ for my $dir (@projects) {
         $result = system "xcodebuild", "-project", "$dir.xcodeproj", @options, $overrideFeatureDefinesString, @coverageSupportOption, @ARGV;
     } elsif (isCygwin()) {
         if ($dir eq "WebKit") {
-            $result = buildVisualStudioProject("win/WebKit.vcproj/WebKit.sln");
+            $result = buildVisualStudioProject("win/WebKit.vcproj/WebKit.sln", $clean);
         }
     }
 
@@ -189,6 +212,9 @@ for my $dir (@projects) {
     chdir ".." or die;
 }
 
+# Don't report the "WebKit is now built" message after a clean operation.
+exit if $clean;
+
 # Write out congratulations message.
 
 my $launcherPath = launcherPath();