Bug 129163

Summary: [iOS] DumpRenderTree Perl Support may build against wrong SDK and toolchain
Product: WebKit Reporter: Daniel Bates <dbates>
Component: Tools / TestsAssignee: Daniel Bates <dbates>
Status: RESOLVED FIXED    
Severity: Normal CC: ddkilzer, dfarler, mrowe
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: iPhone / iPad   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Daniel Bates 2014-02-21 12:45:27 PST
Perform a clean debug build of WebKit for iOS Simulator by running the following command in a terminal inside the WebKit checkout directory: Tools/Scripts/build-webkit --debug --simulator --clean && Tools/Scripts/build-webkit --debug --simulator

Then the DumpRenderTree Perl Support phase fails with following error output of the form:

/Applications/Xcode.app/.../usr/bin/clang  -arch i386 -arch x86_64 -bundle -undefined dynamic_lookup -L/usr/local/lib -fstack-protector IPhoneSimulatorNotification.o  -o blib/arch/auto/IPhoneSimulatorNotification/IPhoneSimulatorNotification.bundle 	\
	     	\
	  
ld: building for MacOSX, but linking against dylib built for iOS Simulator file '/Applications/Xcode.app/Contents/Developer/Platforms/.../usr/lib/libSystem.dylib' for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [blib/arch/auto/IPhoneSimulatorNotification/IPhoneSimulatorNotification.bundle] Error 1
make: *** [/WebKitDev/OpenSource/WebKitBuild/Debug-iphonesimulator/lib/perl5/darwin-thread-multi-2level/auto/IPhoneSimulatorNotification/IPhoneSimulatorNotification.bundle] Error 2
Command /usr/bin/make failed with exit code 2
Comment 1 Daniel Bates 2014-02-21 12:49:17 PST
Created attachment 224892 [details]
Patch
Comment 2 Daniel Bates 2014-02-21 12:58:13 PST
If you have an existing iOS Simulator build then it's sufficient to delete the following files, substituting the build configuration (e.g. Debug) of your existing build for "Debug":

WebKitBuild/Debug-iphonesimulator/DumpRenderTreeSupport.dylib
WebKitBuild/Debug-iphonesimulator/DumpRenderTreeSupport.dylib.dSYM
WebKitBuild/Debug-iphonesimulator/DumpRenderTreeSupport.pm
WebKitBuild/Debug-iphonesimulator/lib

Then build DumpRenderTree by running the script, substituting the build configuration (e.g. debug) of your existing build for "debug": Tools/Scripts/build-dumprendertree --debug --simulator
Comment 3 David Kilzer (:ddkilzer) 2014-02-26 09:14:02 PST
Comment on attachment 224892 [details]
Patch

r=me
Comment 4 Daniel Bates 2014-02-28 09:47:54 PST
Comment on attachment 224892 [details]
Patch

Clearing flags on attachment: 224892

Committed r164865: <http://trac.webkit.org/changeset/164865>
Comment 5 Daniel Bates 2014-02-28 09:47:55 PST
All reviewed patches have been landed.  Closing bug.