Commit 7e518c5b authored by timothy@apple.com's avatar 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:

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
parent 10ac6851
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.
......
......@@ -7,16 +7,23 @@ all:
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
......@@ -15,6 +15,12 @@ release r deployment dep deploy: force
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.
......
......@@ -13,7 +13,16 @@ release r deployment dep deploy:
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=$$?; \
......
......@@ -56,11 +56,16 @@ my $coverageSupport = 0;
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)
......@@ -95,6 +100,8 @@ GetOptions('cross-document-messaging!' => \$crossDocumentMessagingSupport,
'video!' => \$videoSupport,
'coverage!' => \$coverageSupport,
'help' => \$showHelp,
'universal' => \$buildUniversal,
'64-bit' => \$buildSixtyFourBit,
'clean' => \$clean);
if ($showHelp) {
......@@ -183,6 +190,21 @@ if ($clean && isOSX()) {
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");
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment