+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.
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()) {
return "make";
}
-sub buildQMakeProject(@)
+sub buildQMakeProject($@)
{
- my @buildArgs = @_;
- my $clean = 0;
+ my ($clean, @buildArgs) = @_;
push @buildArgs, "-r";
$qmakebin = $1;
} elsif ($opt =~ /^--qmakearg=(.*)/i ) {
push @buildArgs, $1;
- } elsif ($opt eq "--clean") {
- $clean = 1;
}
}
}
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";
my @buildArgs = ("CONFIG+=gtk-port");
push @buildArgs, "CONFIG-=qt";
- return buildQMakeProject(@buildArgs);
+ return buildQMakeProject($clean, @buildArgs);
}
sub setPathForRunningWebKitApp