OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 { | 5 { |
6 'variables': { | 6 'variables': { |
7 'mac_deployment_target': '10.9', | 7 'mac_deployment_target': '10.9', |
8 'mac_sdk_min': '10.9', | 8 'mac_sdk_min': '10.9', |
| 9 'class_dump_bin': '<(PRODUCT_DIR)/class-dump', |
| 10 'class_dump_py': '<(DEPTH)/third_party/class-dump/class-dump.py', |
9 }, | 11 }, |
10 'conditions': [ | 12 'conditions': [ |
11 ['OS!="ios" or "<(GENERATOR)"!="xcode" or "<(GENERATOR_FLAVOR)"=="ninja"', { | 13 ['OS!="ios" or "<(GENERATOR)"!="xcode" or "<(GENERATOR_FLAVOR)"=="ninja"', { |
12 'targets': [ | 14 'targets': [ |
13 { | 15 { |
14 'target_name': 'iossim', | 16 'target_name': 'iossim', |
15 'toolsets': ['host'], | 17 'toolsets': ['host'], |
16 'type': 'executable', | 18 'type': 'executable', |
17 'variables': { | 19 'variables': { |
18 'developer_dir': '<!(xcode-select -print-path)', | 20 'developer_dir': '<!(xcode-select -print-path)', |
19 'iphone_sim_path': '<(developer_dir)/../SharedFrameworks', | 21 'iphone_sim_path': '<(developer_dir)/../SharedFrameworks', |
20 }, | 22 }, |
21 'dependencies': [ | 23 'dependencies': [ |
22 '<(DEPTH)/third_party/class-dump/class-dump.gyp:class-dump#host', | 24 '<(DEPTH)/third_party/class-dump/class-dump.gyp:class-dump#host', |
23 ], | 25 ], |
24 'include_dirs': [ | 26 'include_dirs': [ |
25 '<(INTERMEDIATE_DIR)/iossim', | 27 '<(INTERMEDIATE_DIR)/iossim', |
26 ], | 28 ], |
27 'sources': [ | 29 'sources': [ |
28 'iossim.mm', | 30 'iossim.mm', |
29 '<(INTERMEDIATE_DIR)/iossim/iPhoneSimulatorRemoteClient.h', | 31 '<(INTERMEDIATE_DIR)/iossim/iPhoneSimulatorRemoteClient.h', |
30 ], | 32 ], |
31 'libraries': [ | 33 'libraries': [ |
32 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', | 34 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', |
33 ], | 35 ], |
34 'actions': [ | 36 'actions': [ |
35 { | 37 { |
| 38 'action_name': 'generate_dvt_core_simulator', |
| 39 'inputs': [ |
| 40 '<(class_dump_bin)', |
| 41 '<(class_dump_py)', |
| 42 '<(developer_dir)/Library/PrivateFrameworks/CoreSimulator.framew
ork/Versions/Current/CoreSimulator', |
| 43 ], |
| 44 'outputs': [ |
| 45 '<(INTERMEDIATE_DIR)/iossim/CoreSimulator.h' |
| 46 ], |
| 47 'action': [ |
| 48 'python', |
| 49 '<(class_dump_py)', |
| 50 '-t', '<(class_dump_bin)', |
| 51 '-o', '<(INTERMEDIATE_DIR)/iossim/CoreSimulator.h', |
| 52 '--', |
| 53 '-CSim', |
| 54 '<(developer_dir)/Library/PrivateFrameworks/CoreSimulator.framew
ork', |
| 55 ], |
| 56 'message': 'Generating CoreSimulator.h', |
| 57 }, |
| 58 { |
36 'action_name': 'generate_dvt_foundation_header', | 59 'action_name': 'generate_dvt_foundation_header', |
37 'inputs': [ | 60 'inputs': [ |
| 61 '<(class_dump_bin)', |
| 62 '<(class_dump_py)', |
38 '<(iphone_sim_path)/DVTFoundation.framework/Versions/Current/DVT
Foundation', | 63 '<(iphone_sim_path)/DVTFoundation.framework/Versions/Current/DVT
Foundation', |
39 '<(PRODUCT_DIR)/class-dump', | |
40 ], | 64 ], |
41 'outputs': [ | 65 'outputs': [ |
42 '<(INTERMEDIATE_DIR)/iossim/DVTFoundation.h' | 66 '<(INTERMEDIATE_DIR)/iossim/DVTFoundation.h' |
43 ], | 67 ], |
44 'action': [ | 68 'action': [ |
45 # Actions don't provide a way to redirect stdout, so a custom | 69 'python', |
46 # script is invoked that will execute the first argument and | 70 '<(class_dump_py)', |
47 # write the output to the file specified as the second argument. | 71 '-t', '<(class_dump_bin)', |
48 # -I sorts classes, categories, and protocols by inheritance. | 72 '-o', '<(INTERMEDIATE_DIR)/iossim/DVTFoundation.h', |
49 # -C <regex> only displays classes matching regular expression. | 73 '--', |
50 './redirect-stdout.sh', | 74 '-CDVTStackBacktrace|DVTInvalidation|DVTMixIn', |
51 '<(PRODUCT_DIR)/class-dump -CDVTStackBacktrace|DVTInvalidation|D
VTMixIn <(iphone_sim_path)/DVTFoundation.framework', | 75 '<(iphone_sim_path)/DVTFoundation.framework', |
52 '<(INTERMEDIATE_DIR)/iossim/DVTFoundation.h', | |
53 ], | 76 ], |
54 'message': 'Generating DVTFoundation.h', | 77 'message': 'Generating DVTFoundation.h', |
55 }, | 78 }, |
56 { | 79 { |
57 'action_name': 'generate_dvt_core_simulator', | |
58 'inputs': [ | |
59 '<(developer_dir)/Library/PrivateFrameworks/CoreSimulator.framew
ork/Versions/Current/CoreSimulator', | |
60 '<(PRODUCT_DIR)/class-dump', | |
61 ], | |
62 'outputs': [ | |
63 '<(INTERMEDIATE_DIR)/iossim/CoreSimulator.h' | |
64 ], | |
65 'action': [ | |
66 # Actions don't provide a way to redirect stdout, so a custom | |
67 # script is invoked that will execute the first argument and | |
68 # write the output to the file specified as the second argument. | |
69 # -I sorts classes, categories, and protocols by inheritance. | |
70 # -C <regex> only displays classes matching regular expression. | |
71 './redirect-stdout.sh', | |
72 '<(PRODUCT_DIR)/class-dump -CSim <(developer_dir)/Library/Privat
eFrameworks/CoreSimulator.framework', | |
73 '<(INTERMEDIATE_DIR)/iossim/CoreSimulator.h', | |
74 ], | |
75 'message': 'Generating CoreSimulator.h', | |
76 }, | |
77 { | |
78 'action_name': 'generate_dvt_iphone_sim_header', | 80 'action_name': 'generate_dvt_iphone_sim_header', |
79 'inputs': [ | 81 'inputs': [ |
| 82 '<(class_dump_bin)', |
| 83 '<(class_dump_py)', |
80 '<(iphone_sim_path)/DVTiPhoneSimulatorRemoteClient.framework/Ver
sions/Current/DVTiPhoneSimulatorRemoteClient', | 84 '<(iphone_sim_path)/DVTiPhoneSimulatorRemoteClient.framework/Ver
sions/Current/DVTiPhoneSimulatorRemoteClient', |
81 '<(PRODUCT_DIR)/class-dump', | |
82 ], | 85 ], |
83 'outputs': [ | 86 'outputs': [ |
84 '<(INTERMEDIATE_DIR)/iossim/DVTiPhoneSimulatorRemoteClient.h' | 87 '<(INTERMEDIATE_DIR)/iossim/DVTiPhoneSimulatorRemoteClient.h' |
85 ], | 88 ], |
86 'action': [ | 89 'action': [ |
87 # Actions don't provide a way to redirect stdout, so a custom | 90 'python', |
88 # script is invoked that will execute the first argument and | 91 '<(class_dump_py)', |
89 # write the output to the file specified as the second argument. | 92 '-t', '<(class_dump_bin)', |
90 # -I sorts classes, categories, and protocols by inheritance. | 93 '-o', '<(INTERMEDIATE_DIR)/iossim/DVTiPhoneSimulatorRemoteClient
.h', |
91 # -C <regex> only displays classes matching regular expression. | 94 '--', |
92 './redirect-stdout.sh', | 95 '-I', |
93 '<(PRODUCT_DIR)/class-dump -I -CiPhoneSimulator <(iphone_sim_pat
h)/DVTiPhoneSimulatorRemoteClient.framework', | 96 '-CiPhoneSimulator', |
94 '<(INTERMEDIATE_DIR)/iossim/DVTiPhoneSimulatorRemoteClient.h', | 97 '<(iphone_sim_path)/DVTiPhoneSimulatorRemoteClient.framework', |
95 ], | 98 ], |
96 'message': 'Generating DVTiPhoneSimulatorRemoteClient.h', | 99 'message': 'Generating DVTiPhoneSimulatorRemoteClient.h', |
97 }, | 100 }, |
98 ], # actions | 101 ], # actions |
99 'xcode_settings': { | 102 'xcode_settings': { |
100 'ARCHS': ['x86_64'], | 103 'ARCHS': ['x86_64'], |
101 }, | 104 }, |
102 }, | 105 }, |
103 ], | 106 ], |
104 }, { # else, OS=="ios" and "<(GENERATOR)"=="xcode" and "<(GENERATOR_FLAVOR)
"!="ninja" | 107 }, { # else, OS=="ios" and "<(GENERATOR)"=="xcode" and "<(GENERATOR_FLAVOR)
"!="ninja" |
(...skipping 24 matching lines...) Expand all Loading... |
129 'iossim', | 132 'iossim', |
130 ], | 133 ], |
131 'message': 'Generating the iossim executable', | 134 'message': 'Generating the iossim executable', |
132 }, | 135 }, |
133 ], | 136 ], |
134 }, | 137 }, |
135 ], | 138 ], |
136 }], | 139 }], |
137 ], | 140 ], |
138 } | 141 } |
OLD | NEW |