Bug 145319 - [iOS] Cannot run run-webkit-tests with public SDK; LayoutTestRelay fails to build
Summary: [iOS] Cannot run run-webkit-tests with public SDK; LayoutTestRelay fails to b...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified OS X 10.10
: P2 Normal
Assignee: Daniel Bates
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-05-22 14:09 PDT by Boris Dušek
Modified: 2015-06-11 15:31 PDT (History)
3 users (show)

See Also:


Attachments
Patch (6.39 KB, patch)
2015-06-10 18:13 PDT, Daniel Bates
ddkilzer: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Boris Dušek 2015-05-22 14:09:42 PDT
Steps to reproduce:
1. Checkout webkit
2. Tools/Scripts/build-webkit --debug --ios-simulator
3. Tools/Scripts/run-webkit-tests --debug --ios-simulator

Expected Results:
Tests would run.

Actual Results:
Tests do not start to run due to LayoutTestRelay missing, which fails to compile due to CoreSimulator/CoreSimulator.h missing:

$ Tools/Scripts/run-webkit-tests --debug --ios-simulator
Using port 'ios-simulator-wk2'
Test configuration: <, x86_64, debug>
Placing test results in /path/to/webkit/WebKitBuild/Debug-iphonesimulator/layout-test-results
Baseline search path: ios-simulator-wk2 -> ios-simulator -> wk2 -> generic
Using Debug build
Pixel tests disabled
Regular timeout: 30000, slow test timeout: 150000
Command line: /path/to/webkit/WebKitBuild/Debug/LayoutTestRelay -runtime com.apple.CoreSimulator.SimRuntime.iOS-8-3 -deviceType com.apple.CoreSimulator.SimDeviceType.iPhone-5s -suffix 0 -productDir /path/to/webkit/WebKitBuild/Debug-iphonesimulator -app /path/to/webkit/WebKitBuild/Debug-iphonesimulator/WebKitTestRunnerApp.app -- -

--lint-test-files warnings:
LayoutTests/TestExpectations:526 More specific entry for js/regress-141098.html on line LayoutTests/TestExpectations:526 overrides line LayoutTests/TestExpectations:520. js/regress-141098.html

Found 39665 tests; running 33918, skipping 5747.
Failed to run "['Tools/Scripts/build-layouttestrelay', '--debug']" exit_code: 65 cwd: /path/to/webkit

2015-05-22 22:49:54.084 xcodebuild[37287:1390676] [MT] PluginLoading: Required plug-in compatibility UUID E969541F-E6F9-4D25-8158-72DC3545A6C6 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/VVDocumenter-Xcode.xcplugin' not present in DVTPlugInCompatibilityUUIDs
2015-05-22 22:49:54.085 xcodebuild[37287:1390676] [MT] PluginLoading: Required plug-in compatibility UUID E969541F-E6F9-4D25-8158-72DC3545A6C6 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/Lin.xcplugin' not present in DVTPlugInCompatibilityUUIDs
2015-05-22 22:49:54.086 xcodebuild[37287:1390676] [MT] PluginLoading: Required plug-in compatibility UUID E969541F-E6F9-4D25-8158-72DC3545A6C6 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/ClangFormat.xcplugin' not present in DVTPlugInCompatibilityUUIDs
2015-05-22 22:49:54.086 xcodebuild[37287:1390676] [MT] PluginLoading: Required plug-in compatibility UUID E969541F-E6F9-4D25-8158-72DC3545A6C6 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcplugin' not present in DVTPlugInCompatibilityUUIDs
2015-05-22 22:49:54.087 xcodebuild[37287:1390676] [MT] PluginLoading: Required plug-in compatibility UUID E969541F-E6F9-4D25-8158-72DC3545A6C6 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/AdjustFontSize.xcplugin' not present in DVTPlugInCompatibilityUUIDs
Build settings from command line:
    ARCHS = x86_64
    OBJROOT = /path/to/webkit/WebKitBuild
    SHARED_PRECOMPS_DIR = /path/to/webkit/WebKitBuild/PrecompiledHeaders
    SYMROOT = /path/to/webkit/WebKitBuild

=== BUILD TARGET LayoutTestRelay OF PROJECT LayoutTestRelay WITH CONFIGURATION Debug ===

Check dependencies

CompileC /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/LTRelayController.o LayoutTestRelay/LTRelayController.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler
    cd /path/to/webkit/Tools/LayoutTestRelay
    export LANG=en_US.US-ASCII
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c -arch x86_64 -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=gnu99 -fobjc-arc -Wno-trigraphs -fpascal-strings -Os -Werror -Wno-missing-field-initializers -Wno-missing-prototypes -Wno-return-type -Wno-implicit-atomic-properties -Wno-receiver-is-weak -Wno-arc-repeated-use-of-weak -Wno-missing-braces -Wparentheses -Wswitch -Wunused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-empty-body -Wno-uninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wno-constant-conversion -Wno-int-conversion -Wno-bool-conversion -Wno-enum-conversion -Wno-shorten-64-to-32 -Wpointer-sign -Wno-newline-eof -Wno-selector -Wno-strict-selector-match -Wno-undeclared-selector -Wno-deprecated-implementations -DNDEBUG -DENABLE_DASHBOARD_SUPPORT -DWEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -fasm-blocks -fstrict-aliasing -Wprotocol -Wno-deprecated-declarations -mmacosx-version-min=10.10 -g -fvisibility=hidden -Wno-sign-conversion -I/path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/LayoutTestRelay.hmap -I/path/to/webkit/WebKitBuild/Debug/include -I/path/to/webkit/WebKitBuild/Debug/usr/local/include -I/ForwardingHeaders -I/path/to/webkit/Tools/LayoutTestRelay/../../Source/JavaScriptCore/icu -I/usr/local/include/WebCoreTestSupport -I/path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/DerivedSources/x86_64 -I/path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/DerivedSources -Wall -W -Wno-unused-parameter -Wundef -F/path/to/webkit/WebKitBuild/Debug -F/Applications/Xcode.app/Contents/Developer/Library/PrivateFrameworks -MMD -MT dependencies -MF /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/LTRelayController.d --serialize-diagnostics /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/LTRelayController.dia -c /path/to/webkit/Tools/LayoutTestRelay/LayoutTestRelay/LTRelayController.m -o /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/LTRelayController.o

CompileC /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/LTPipeRelay.o LayoutTestRelay/LTPipeRelay.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler
    cd /path/to/webkit/Tools/LayoutTestRelay
    export LANG=en_US.US-ASCII
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c -arch x86_64 -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=gnu99 -fobjc-arc -Wno-trigraphs -fpascal-strings -Os -Werror -Wno-missing-field-initializers -Wno-missing-prototypes -Wno-return-type -Wno-implicit-atomic-properties -Wno-receiver-is-weak -Wno-arc-repeated-use-of-weak -Wno-missing-braces -Wparentheses -Wswitch -Wunused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-empty-body -Wno-uninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wno-constant-conversion -Wno-int-conversion -Wno-bool-conversion -Wno-enum-conversion -Wno-shorten-64-to-32 -Wpointer-sign -Wno-newline-eof -Wno-selector -Wno-strict-selector-match -Wno-undeclared-selector -Wno-deprecated-implementations -DNDEBUG -DENABLE_DASHBOARD_SUPPORT -DWEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -fasm-blocks -fstrict-aliasing -Wprotocol -Wno-deprecated-declarations -mmacosx-version-min=10.10 -g -fvisibility=hidden -Wno-sign-conversion -I/path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/LayoutTestRelay.hmap -I/path/to/webkit/WebKitBuild/Debug/include -I/path/to/webkit/WebKitBuild/Debug/usr/local/include -I/ForwardingHeaders -I/path/to/webkit/Tools/LayoutTestRelay/../../Source/JavaScriptCore/icu -I/usr/local/include/WebCoreTestSupport -I/path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/DerivedSources/x86_64 -I/path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/DerivedSources -Wall -W -Wno-unused-parameter -Wundef -F/path/to/webkit/WebKitBuild/Debug -F/Applications/Xcode.app/Contents/Developer/Library/PrivateFrameworks -MMD -MT dependencies -MF /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/LTPipeRelay.d --serialize-diagnostics /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/LTPipeRelay.dia -c /path/to/webkit/Tools/LayoutTestRelay/LayoutTestRelay/LTPipeRelay.m -o /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/LTPipeRelay.o

CompileC /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/main.o LayoutTestRelay/main.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler
    cd /path/to/webkit/Tools/LayoutTestRelay
    export LANG=en_US.US-ASCII
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c -arch x86_64 -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=gnu99 -fobjc-arc -Wno-trigraphs -fpascal-strings -Os -Werror -Wno-missing-field-initializers -Wno-missing-prototypes -Wno-return-type -Wno-implicit-atomic-properties -Wno-receiver-is-weak -Wno-arc-repeated-use-of-weak -Wno-missing-braces -Wparentheses -Wswitch -Wunused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-empty-body -Wno-uninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wno-constant-conversion -Wno-int-conversion -Wno-bool-conversion -Wno-enum-conversion -Wno-shorten-64-to-32 -Wpointer-sign -Wno-newline-eof -Wno-selector -Wno-strict-selector-match -Wno-undeclared-selector -Wno-deprecated-implementations -DNDEBUG -DENABLE_DASHBOARD_SUPPORT -DWEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -fasm-blocks -fstrict-aliasing -Wprotocol -Wno-deprecated-declarations -mmacosx-version-min=10.10 -g -fvisibility=hidden -Wno-sign-conversion -I/path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/LayoutTestRelay.hmap -I/path/to/webkit/WebKitBuild/Debug/include -I/path/to/webkit/WebKitBuild/Debug/usr/local/include -I/ForwardingHeaders -I/path/to/webkit/Tools/LayoutTestRelay/../../Source/JavaScriptCore/icu -I/usr/local/include/WebCoreTestSupport -I/path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/DerivedSources/x86_64 -I/path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/DerivedSources -Wall -W -Wno-unused-parameter -Wundef -F/path/to/webkit/WebKitBuild/Debug -F/Applications/Xcode.app/Contents/Developer/Library/PrivateFrameworks -MMD -MT dependencies -MF /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/main.d --serialize-diagnostics /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/main.dia -c /path/to/webkit/Tools/LayoutTestRelay/LayoutTestRelay/main.m -o /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/main.o
/path/to/webkit/Tools/LayoutTestRelay/LayoutTestRelay/main.m:28:9: fatal error: 'CoreSimulator/CoreSimulator.h' file not found
#import <CoreSimulator/CoreSimulator.h>
        ^
1 error generated.

** BUILD FAILED **


The following build commands failed:
	CompileC /path/to/webkit/WebKitBuild/LayoutTestRelay.build/Debug/LayoutTestRelay.build/Objects-normal/x86_64/main.o LayoutTestRelay/main.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
Build check failed


Configuration:
$ sw_vers
ProductName:	Mac OS X
ProductVersion:	10.10.3
BuildVersion:	14D136
$ clang -v
Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.3.0
Thread model: posix

Xcode: 6.3.2 (6D2105)

WebKit: r182888 (37f81cd45f2296206e45ea101e912f8cf273f390)
Comment 1 Boris Dušek 2015-05-23 07:02:50 PDT
Obviously forgot to mention one step in Steps reproduce, between 1. and 2.:

1.b.: sudo Tools/Scripts/configure-xcode-for-ios-development
Comment 2 Boris Dušek 2015-05-23 08:10:49 PDT
Finally, for the record, building LayoutTestRelay fails with identical error when building manually with this command-line:

Tools/Scripts/build-layouttestrelay --debug --ios-simulator
Comment 3 Daniel Bates 2015-06-10 18:13:22 PDT
Created attachment 254697 [details]
Patch
Comment 4 Boris Dušek 2015-06-11 13:58:25 PDT
I can confirm that after applying the patch, the issue is no longer present, i.e. the tests run:

$ Tools/Scripts/run-webkit-tests --debug --ios-simulator LayoutTests/fast/events/pageshow-pagehide-on-back-cached.html 
Using port 'ios-simulator-wk2'
Test configuration: <, x86_64, debug>
Placing test results in path/to/webkit/WebKitBuild/Debug-iphonesimulator/layout-test-results
Baseline search path: ios-simulator-wk2 -> ios-simulator -> wk2 -> generic
Using Debug build
Pixel tests disabled
Regular timeout: 30000, slow test timeout: 150000
Command line: path/to/webkit/WebKitBuild/Debug/LayoutTestRelay -runtime com.apple.CoreSimulator.SimRuntime.iOS-8-3 -deviceType com.apple.CoreSimulator.SimDeviceType.iPhone-5s -suffix 0 -productDir path/to/webkit/WebKitBuild/Debug-iphonesimulator -app path/to/webkit/WebKitBuild/Debug-iphonesimulator/WebKitTestRunnerApp.app -- -

--lint-test-files warnings:
LayoutTests/platform/ios-simulator/TestExpectations:241 Path does not exist. compositing/animation/filling-animation-overlap-at-end.html
LayoutTests/platform/ios-simulator/TestExpectations:242 Path does not exist. compositing/animation/filling-animation-overlap.html
LayoutTests/platform/ios-simulator/TestExpectations:2647 Path does not exist. fast/dom/timer-throttle-on-scrolling-iframe-away.html

Found 1 test; running 1, skipping 0.
Running 1 WebKitTestRunnerApp.app.

The test ran as expected.                              
$ <shell prompt>
Comment 5 David Kilzer (:ddkilzer) 2015-06-11 15:28:10 PDT
Comment on attachment 254697 [details]
Patch

r=me
Comment 6 Daniel Bates 2015-06-11 15:31:28 PDT
Committed r185478: <http://trac.webkit.org/changeset/185478>