Modified: trunk/Tools/ChangeLog (100240 => 100241)
--- trunk/Tools/ChangeLog 2011-11-15 06:29:44 UTC (rev 100240)
+++ trunk/Tools/ChangeLog 2011-11-15 06:43:01 UTC (rev 100241)
@@ -1,3 +1,17 @@
+2011-11-14 Raphael Kubo da Costa <[email protected]>
+
+ build-webkit: Accept --cmakearg to pass additional arguments to CMake.
+ https://bugs.webkit.org/show_bug.cgi?id=72156
+
+ Reviewed by Daniel Bates.
+
+ Similar to --makearg and --qmakearg, --cmakearg lets one pass
+ additional arguments to CMake (eg. --cmakearg="-DFOO=bar").
+
+ * Scripts/build-webkit:
+ * Scripts/webkitdirs.pm:
+ (generateBuildSystemFromCMakeProject):
+
2011-11-14 Ryosuke Niwa <[email protected]>
Improve ChangeLogEntry's reviewer parsing algorithm part 2
Modified: trunk/Tools/Scripts/build-webkit (100240 => 100241)
--- trunk/Tools/Scripts/build-webkit 2011-11-15 06:29:44 UTC (rev 100240)
+++ trunk/Tools/Scripts/build-webkit 2011-11-15 06:43:01 UTC (rev 100241)
@@ -59,6 +59,7 @@
my $installLibs;
my $prefixPath;
my $makeArgs = "";
+my $cmakeArgs;
my $_onlyWebKitProject_ = 0;
my $noWebKit2 = 0;
my $startTime = time();
@@ -398,6 +399,7 @@
--prefix=<path> Set installation prefix to the given path (Gtk/Efl only)
--makeargs=<arguments> Optional Makefile flags
--qmakearg=<arguments> Optional qmake flags (Qt only, e.g. --qmakearg="CONFIG+=webkit2" to build WebKit2)
+ --cmakearg=<arguments> Optional CMake flags (e.g. --cmakearg="-DFOO=bar -DCMAKE_PREFIX_PATH=/usr/local")
--minimal No optional features, unless explicitly enabled
@@ -414,6 +416,7 @@
'install-libs=s' => \$installLibs,
'prefix=s' => \$prefixPath,
'makeargs=s' => \$makeArgs,
+ 'cmakeargs=s' => \$cmakeArgs,
'minimal' => \$minimal,
'v8' => \$v8,
'only-webkit' => \$onlyWebKitProject,
@@ -620,11 +623,11 @@
if (isEfl()) {
# By default we build using all of the available CPUs.
$makeArgs .= ($makeArgs ? " " : "") . "-j" . numberOfCPUs() if $makeArgs !~ /-j\s*\d+/;
- buildCMakeProjectOrExit($clean, "Efl", $prefixPath, $makeArgs, cMakeArgsFromFeatures());
+ buildCMakeProjectOrExit($clean, "Efl", $prefixPath, $makeArgs, cMakeArgsFromFeatures(), $cmakeArgs);
}
if (isWinCE()) {
- buildCMakeProjectOrExit($clean, "WinCE", $prefixPath, $makeArgs, ("-DCMAKE_WINCE_SDK=\"STANDARDSDK_500 (ARMV4I)\"", cMakeArgsFromFeatures()));
+ buildCMakeProjectOrExit($clean, "WinCE", $prefixPath, $makeArgs, ("-DCMAKE_WINCE_SDK=\"STANDARDSDK_500 (ARMV4I)\"", cMakeArgsFromFeatures()), $cmakeArgs);
}
# Build, and abort if the build fails.
Modified: trunk/Tools/Scripts/webkitdirs.pm (100240 => 100241)
--- trunk/Tools/Scripts/webkitdirs.pm 2011-11-15 06:29:44 UTC (rev 100240)
+++ trunk/Tools/Scripts/webkitdirs.pm 2011-11-15 06:43:01 UTC (rev 100241)
@@ -1639,7 +1639,7 @@
sub generateBuildSystemFromCMakeProject
{
- my ($port, $prefixPath, @cmakeArgs) = @_;
+ my ($port, $prefixPath, @cmakeArgs, $additionalCMakeArgs) = @_;
my $config = configuration();
my $buildPath = File::Spec->catdir(baseProductDir(), $config);
File::Path::mkpath($buildPath) unless -d $buildPath;
@@ -1655,6 +1655,8 @@
push @args, "-DCMAKE_BUILD_TYPE=Debug";
}
push @args, @cmakeArgs if @cmakeArgs;
+ push @args, $additionalCMakeArgs if $additionalCMakeArgs;
+
push @args, '"' . File::Spec->catdir(sourceDir(), "Source") . '"';
# We call system("cmake @args") instead of system("cmake", @args) so that @args is