Title: [164865] trunk/Tools
- Revision
- 164865
- Author
- [email protected]
- Date
- 2014-02-28 09:53:30 -0800 (Fri, 28 Feb 2014)
Log Message
[iOS] DumpRenderTree Perl Support may build against wrong SDK and toolchain
https://bugs.webkit.org/show_bug.cgi?id=129163
Reviewed by David Kilzer.
Fixes an issue where DumpRenderTree Perl Support may build with the specified
iOS Simulator SDK and toolchain instead of using the OS X SDK and toolchain.
This issue manifests itself in a build failure when building the IPhoneSimulatorNotification
bundle.
Currently we build DumpRenderTree Perl Support with respect to the variable SDKROOT,
which is specified either explicitly when building with MAKE(1) or implicitly by
build-{dumprendertree, webkit}. Instead we should always build Perl Support using
the OS X SDK and toolchain since the built products are only applicable to OS X.
* DumpRenderTree/ios/PerlSupport/Makefile:
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (164864 => 164865)
--- trunk/Tools/ChangeLog 2014-02-28 17:46:12 UTC (rev 164864)
+++ trunk/Tools/ChangeLog 2014-02-28 17:53:30 UTC (rev 164865)
@@ -1,3 +1,22 @@
+2014-02-28 Daniel Bates <[email protected]>
+
+ [iOS] DumpRenderTree Perl Support may build against wrong SDK and toolchain
+ https://bugs.webkit.org/show_bug.cgi?id=129163
+
+ Reviewed by David Kilzer.
+
+ Fixes an issue where DumpRenderTree Perl Support may build with the specified
+ iOS Simulator SDK and toolchain instead of using the OS X SDK and toolchain.
+ This issue manifests itself in a build failure when building the IPhoneSimulatorNotification
+ bundle.
+
+ Currently we build DumpRenderTree Perl Support with respect to the variable SDKROOT,
+ which is specified either explicitly when building with MAKE(1) or implicitly by
+ build-{dumprendertree, webkit}. Instead we should always build Perl Support using
+ the OS X SDK and toolchain since the built products are only applicable to OS X.
+
+ * DumpRenderTree/ios/PerlSupport/Makefile:
+
2014-02-28 Commit Queue <[email protected]>
Unreviewed, rolling out r164859.
Modified: trunk/Tools/DumpRenderTree/ios/PerlSupport/Makefile (164864 => 164865)
--- trunk/Tools/DumpRenderTree/ios/PerlSupport/Makefile 2014-02-28 17:46:12 UTC (rev 164864)
+++ trunk/Tools/DumpRenderTree/ios/PerlSupport/Makefile 2014-02-28 17:53:30 UTC (rev 164865)
@@ -40,6 +40,13 @@
# FIXME: We shouldn't hard code these architectures. See <rdar://problem/9047171> for more discussion on why we have to.
ARCHS=i386 x86_64
+# The DumpRenderTreeSupport dylib and the IPhoneSimulatorNotification bundle are OS X-specific components that
+# are needed to run DumpRenderTree in iOS Simulator. We explicitly unexport environment variables SDKROOT and
+# TOOLCHAINS and then override them to use the OS X SDK and toolchain when building these components.
+unexport SDKROOT
+unexport TOOLCHAINS
+SDKROOT=macosx
+TOOLCHAINS=osx
all: $(DYLIB) $(PERL_MODULE)
@@ -51,7 +58,7 @@
cp DumpRenderTreeSupportPregenerated.pm $(PERL_MODULE)
$(DYLIB): DumpRenderTreeSupport.c $(WRAPPER)
- xcrun -sdk macosx clang -g -dynamiclib -o $(DYLIB) `$(PERL) -MExtUtils::Embed -eperl_inc` `$(PERL) -MExtUtils::Embed -e'my $$opts = ldopts(0); $$opts =~ s/-arch [^ ]*( |$$)//g; print $$opts, " -arch ", join(" -arch ", split(" ",$$ENV{ARCHS}))'` $^
+ xcrun clang -g -dynamiclib -o $(DYLIB) `$(PERL) -MExtUtils::Embed -eperl_inc` `$(PERL) -MExtUtils::Embed -e'my $$opts = ldopts(0); $$opts =~ s/-arch [^ ]*( |$$)//g; print $$opts, " -arch ", join(" -arch ", split(" ",$$ENV{ARCHS}))'` $^
IPHONE_SIMULATOR_NOTIFCATION_BUNDLE=$(OUTPUT_DIR)/lib/perl5/darwin-thread-multi-2level/auto/IPhoneSimulatorNotification/IPhoneSimulatorNotification.bundle
IPHONE_SIMULATOR_NOTIFCATION_MODULE=$(OUTPUT_DIR)/lib/perl5/darwin-thread-multi-2level/IPhoneSimulatorNotification.pm
@@ -59,7 +66,7 @@
all: $(IPHONE_SIMULATOR_NOTIFCATION_BUNDLE) $(IPHONE_SIMULATOR_NOTIFCATION_MODULE)
$(IPHONE_SIMULATOR_NOTIFCATION_BUNDLE) $(IPHONE_SIMULATOR_NOTIFCATION_MODULE): IPhoneSimulatorNotification/IPhoneSimulatorNotification.xs IPhoneSimulatorNotification/Makefile.PL IPhoneSimulatorNotification/lib/IPhoneSimulatorNotification.pm IPhoneSimulatorNotification/ppport.h IPhoneSimulatorNotification/t/IPhoneSimulatorNotification.t
- cd IPhoneSimulatorNotification && SDKROOT=iphonesimulator perl Makefile.PL INSTALL_BASE=$(OUTPUT_DIR)
+ cd IPhoneSimulatorNotification && perl Makefile.PL INSTALL_BASE=$(OUTPUT_DIR)
make -C IPhoneSimulatorNotification test
make -C IPhoneSimulatorNotification install
make -C IPhoneSimulatorNotification realclean
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes