Reviewed by Darin Adler.
Add "64" and "64u" make rules to allow easy building of 64-bit versions.
make 64: will build Intel-only 64-bit.
make 64u: will build 4-way universal for PPC and Intel.
* Makefile:
* Makefile.shared:
WebKitTools:
Reviewed by Darin Adler.
* Scripts/build-webkit: Add --universal and --64-bit flags to make building
64-bit architectures easy. Combine the two flags to build 4-way universal.
* Makefile: Add "64" and "64u" make rules. Fix the universal rule to return
non-zero when the build failes.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30597
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2008-02-26 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Add "64" and "64u" make rules to allow easy building of 64-bit versions.
+
+ make 64: will build Intel-only 64-bit.
+ make 64u: will build 4-way universal for PPC and Intel.
+
+ * Makefile:
+ * Makefile.shared:
+
2008-02-23 Jan Michael Alonzo <jmalonzo@unpluggable.com>
Rubber stamped by Darin.
debug d development dev develop:
@for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
-
+
release r deployment dep deploy:
@for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
-
+
universal u:
@for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
-clean:
+64:
@for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
+64u:
+ @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
+ if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
+
+clean:
+ @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
+ if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
universal u: force
( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) 'ARCHS=ppc i386' | grep -v setenv && exit $${PIPESTATUS[0]} )
+64: force
+ ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) 'ARCHS=i386 x86_64' | grep -v setenv && exit $${PIPESTATUS[0]} )
+
+64u: force
+ ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) 'ARCHS=ppc ppc64 i386 x86_64' | grep -v setenv && exit $${PIPESTATUS[0]} )
+
clean:
( xcodebuild $(OTHER_OPTIONS) -alltargets clean $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} )
+2008-02-26 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Darin Adler.
+
+ * Scripts/build-webkit: Add --universal and --64-bit flags to make building
+ 64-bit architectures easy. Combine the two flags to build 4-way universal.
+ * Makefile: Add "64" and "64u" make rules. Fix the universal rule to return
+ non-zero when the build failes.
+
2008-02-26 Jessica Kahn <jess@apple.com>
Reviewed by Darin.
if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
universal u:
- @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; if [ $$? -ne 0 ]; then break; fi; done
+ @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
+ if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
+
+64:
+ @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
+ if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
+
+64u:
+ @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
+ if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
clean:
@for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
my $videoSupport = isOSX() || isCygwin(); # Enable by default on OSX and Windows
my $showHelp = 0;
my $clean = 0;
+my $buildUniversal = 0;
+my $buildSixtyFourBit = 0;
my $programName = basename($0);
my $usage = <<EOF;
Usage: $programName [options] [options to pass to build system]
--help Show this help message
+ --clean Perform a clean build
+ --universal Build 2-way universal (PPC and Intel 32-bit)
+ --64-bit Build 64-bit, combine with --universal to build 4-way universal
--[no-]cross-document-messaging Toggle cross-document messaging support (default: $crossDocumentMessagingSupport)
--[no-]database Toggle Database Support (default: $databaseSupport)
--[no-]icon-database Toggle Icon database support (default: $iconDatabaseSupport)
'video!' => \$videoSupport,
'coverage!' => \$coverageSupport,
'help' => \$showHelp,
+ 'universal' => \$buildUniversal,
+ '64-bit' => \$buildSixtyFourBit,
'clean' => \$clean);
if ($showHelp) {
push(@options, "clean");
}
+if ($buildSixtyFourBit && isOSX()) {
+ my $cpuVendor = `sysctl -n machdep.cpu.vendor`;
+ chomp $cpuVendor;
+
+ if ($buildUniversal) {
+ push(@options, "ARCHS=ppc ppc64 i386 x86_64");
+ } elsif ($cpuVendor eq "GenuineIntel") {
+ push(@options, "ARCHS=i386 x86_64");
+ } else {
+ push(@options, "ARCHS=ppc ppc64");
+ }
+} elsif ($buildUniversal && isOSX()) {
+ push(@options, "ARCHS=ppc i386");
+}
+
# enable autotool options accordingly
if ($ENV{WEBKITAUTOTOOLS}) {
push @options, autotoolsFlag($crossDocumentMessagingSupport, "cross-document-messaging");