summaryrefslogtreecommitdiffstats
path: root/testing/iossim/iossim.gyp
diff options
context:
space:
mode:
authorlliabraa@chromium.org <lliabraa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-20 19:07:08 +0000
committerlliabraa@chromium.org <lliabraa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-20 19:07:08 +0000
commit8176de1e9f4f9d1c1ad23e404a94545504811469 (patch)
tree307a9ae17005f992545e9a651a98f635f8463e51 /testing/iossim/iossim.gyp
parentdabfc8839c43d5a14b7443d458876b0447a69079 (diff)
downloadchromium_src-8176de1e9f4f9d1c1ad23e404a94545504811469.zip
chromium_src-8176de1e9f4f9d1c1ad23e404a94545504811469.tar.gz
chromium_src-8176de1e9f4f9d1c1ad23e404a94545504811469.tar.bz2
Get iossim to compile with Xcode 6.
Xcode 6 moved the location of the frameworks that iossim depends on and added a few new dependecies so new header files need to be generated by the gyp target. Note that this CL gets iossim to compile but iossim will not launch the Xcode 6 simulator. BUG=381213 NOTRY=true TBR=rohitrao@chromium.org Review URL: https://codereview.chromium.org/336773002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278786 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'testing/iossim/iossim.gyp')
-rw-r--r--testing/iossim/iossim.gyp68
1 files changed, 64 insertions, 4 deletions
diff --git a/testing/iossim/iossim.gyp b/testing/iossim/iossim.gyp
index af80adb..2c1bd83 100644
--- a/testing/iossim/iossim.gyp
+++ b/testing/iossim/iossim.gyp
@@ -12,9 +12,69 @@
'type': 'executable',
'variables': {
'developer_dir': '<!(xcode-select -print-path)',
- 'iphone_sim_path': '<(developer_dir)/Platforms/iPhoneSimulator.platform/Developer/Library/PrivateFrameworks',
- 'other_frameworks_path': '<(developer_dir)/../OtherFrameworks'
+ # TODO(lliabraa): Once all builders are on Xcode 6 this variable can
+ # be removed and the actions gated by this variable can be run by
+ # default (crbug.com/385030).
+ 'xcode_version': '<!(xcodebuild -version | grep Xcode | awk \'{print $2}\')',
},
+ 'conditions': [
+ ['xcode_version=="6.0"', {
+ 'variables': {
+ 'iphone_sim_path': '<(developer_dir)/../SharedFrameworks',
+ },
+ 'defines': [
+ 'IOSSIM_USE_XCODE_6',
+ ],
+ 'actions': [
+ {
+ 'action_name': 'generate_dvt_foundation_header',
+ 'inputs': [
+ '<(iphone_sim_path)/DVTFoundation.framework/Versions/Current/DVTFoundation',
+ '<(PRODUCT_DIR)/class-dump',
+ ],
+ 'outputs': [
+ '<(INTERMEDIATE_DIR)/iossim/DVTFoundation.h'
+ ],
+ 'action': [
+ # Actions don't provide a way to redirect stdout, so a custom
+ # script is invoked that will execute the first argument and
+ # write the output to the file specified as the second argument.
+ # -I sorts classes, categories, and protocols by inheritance.
+ # -C <regex> only displays classes matching regular expression.
+ './redirect-stdout.sh',
+ '<(PRODUCT_DIR)/class-dump -CDVTStackBacktrace|DVTInvalidation|DVTMixIn <(iphone_sim_path)/DVTFoundation.framework',
+ '<(INTERMEDIATE_DIR)/iossim/DVTFoundation.h',
+ ],
+ 'message': 'Generating DVTFoundation.h',
+ },
+ {
+ 'action_name': 'generate_dvt_core_simulator',
+ 'inputs': [
+ '<(developer_dir)/Library/PrivateFrameworks/CoreSimulator.framework/Versions/Current/CoreSimulator',
+ '<(PRODUCT_DIR)/class-dump',
+ ],
+ 'outputs': [
+ '<(INTERMEDIATE_DIR)/iossim/CoreSimulator.h'
+ ],
+ 'action': [
+ # Actions don't provide a way to redirect stdout, so a custom
+ # script is invoked that will execute the first argument and
+ # write the output to the file specified as the second argument.
+ # -I sorts classes, categories, and protocols by inheritance.
+ # -C <regex> only displays classes matching regular expression.
+ './redirect-stdout.sh',
+ '<(PRODUCT_DIR)/class-dump -CSim <(developer_dir)/Library/PrivateFrameworks/CoreSimulator.framework',
+ '<(INTERMEDIATE_DIR)/iossim/CoreSimulator.h',
+ ],
+ 'message': 'Generating CoreSimulator.h',
+ },
+ ], # actions
+ }, { # else: xcode_version!="6"
+ 'variables': {
+ 'iphone_sim_path': '<(developer_dir)/Platforms/iPhoneSimulator.platform/Developer/Library/PrivateFrameworks',
+ },
+ }], # xcode_version
+ ], # conditions
'dependencies': [
'third_party/class-dump/class-dump.gyp:class-dump#host',
],
@@ -48,9 +108,9 @@
'<(PRODUCT_DIR)/class-dump -I -CiPhoneSimulator <(iphone_sim_path)/DVTiPhoneSimulatorRemoteClient.framework',
'<(INTERMEDIATE_DIR)/iossim/DVTiPhoneSimulatorRemoteClient.h',
],
- 'message': 'Generating header',
+ 'message': 'Generating DVTiPhoneSimulatorRemoteClient.h',
},
- ],
+ ], # actions
'xcode_settings': {
'ARCHS': ['x86_64'],
'WARNING_CFLAGS': [