Add optional --qmake= and --qt arguments to force Qt builds and force with a
authorstaikos <staikos@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 6 Jul 2007 06:14:55 +0000 (06:14 +0000)
committerstaikos <staikos@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 6 Jul 2007 06:14:55 +0000 (06:14 +0000)
specific qmake binary

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

WebKitTools/ChangeLog
WebKitTools/Scripts/webkitdirs.pm

index 5eb94931b98c89e4c28bd70326ae0674cad4fd88..529401e87922b5fe3bdd5b3755217b251640ea4f 100644 (file)
@@ -1,3 +1,12 @@
+2007-07-05  George Staikos  <staikos@kde.org>
+
+        Reviewed by Maciej.
+
+        Add --qt and --qmake= to force Qt even when QTDIR isn't present and to
+        give a path to a specific qmake binary.  Both are optional.
+
+        * Scripts/webkitdirs.pm:
+
 2007-07-05  Adam Roben  <aroben@apple.com>
 
         Warn about tests in the Skipped file that succeeded
index 97b60f8b3ad62176eae392bc3ada9dce114ff1a4..39e69e2b792e516130c62b7dab729b6f4ebf3944 100644 (file)
@@ -375,6 +375,13 @@ sub checkWebCoreSVGSupport
 
 sub isQt()
 {
+    # Allow override in case QTDIR is not set.
+    for my $i (0 .. $#ARGV) {
+        my $opt = $ARGV[$i];
+        if ($opt =~ /^--qt/i ) {
+            return 1;
+        }
+    }
     return defined($ENV{'QTDIR'})
 }
 
@@ -515,6 +522,14 @@ sub buildQMakeProject($$)
 {
     my ($project, $colorize) = @_;
 
+    my $qmakebin = "qmake"; # Allow override of the qmake binary from $PATH
+    for my $i (0 .. $#ARGV) {
+        my $opt = $ARGV[$i];
+        if ($opt =~ /^--qmake=(.*)/i ) {
+            $qmakebin = $1;
+        }
+    }
+
     if ($project ne "WebKit") {
         die "Qt/Linux builds JavaScriptCore/WebCore/WebKitQt in one shot! Only call it for 'WebKit'.\n";
     }
@@ -527,15 +542,15 @@ sub buildQMakeProject($$)
     push @buildArgs, "CONFIG+=qt-port";
     push @buildArgs, sourceDir() . "/WebKit.pro";
 
-    print "Calling 'qmake @buildArgs' in " . baseProductDir() . "/$config ...\n\n";
+    print "Calling '$qmakebin @buildArgs' in " . baseProductDir() . "/$config ...\n\n";
     print "Installation directory: $prefix\n" if(defined($prefix));
 
     system "mkdir -p " . baseProductDir() . "/$config";
     chdir baseProductDir() . "/$config" or die "Failed to cd into " . baseProductDir() . "/$config \n";
 
-    my $result = system "qmake", @buildArgs;
+    my $result = system $qmakebin, @buildArgs;
     if($result ne 0) {
-       die "Failed to setup build environment using qmake!\n";
+       die "Failed to setup build environment using $qmakebin!\n";
     }
 
     my $clean = $ENV{"WEBKIT_FULLBUILD"};