OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 # Generate IDL interfaces info for modules, used to generate bindings | 5 # Generate IDL interfaces info for modules, used to generate bindings |
6 # | 6 # |
7 # Design doc: http://www.chromium.org/developers/design-documents/idl-build | 7 # Design doc: http://www.chromium.org/developers/design-documents/idl-build |
8 | 8 |
9 { | 9 { |
10 'includes': [ | 10 'includes': [ |
11 # ../.. == Source | 11 # ../.. == Source |
12 '../../bindings/bindings.gypi', | 12 '../../bindings/bindings.gypi', |
13 '../../bindings/core/core.gypi', | 13 '../../bindings/core/core.gypi', |
14 '../../bindings/scripts/scripts.gypi', | 14 '../../bindings/scripts/scripts.gypi', |
15 '../../build/scripts/scripts.gypi', # FIXME: Needed for event files, should
be in modules, not bindings_modules http://crbug.com/358074 | 15 '../../build/scripts/scripts.gypi', # FIXME: Needed for event files, should
be in modules, not bindings_modules http://crbug.com/358074 |
16 '../../modules/modules.gypi', | 16 '../../modules/modules.gypi', |
17 'generated.gypi', | 17 'generated.gypi', |
18 'idl.gypi', | 18 'idl.gypi', |
19 'modules.gypi', | 19 'modules.gypi', |
20 ], | 20 ], |
21 | 21 |
22 'targets': [ | 22 'targets': [ |
23 ################################################################################ | 23 ################################################################################ |
24 { | 24 { |
| 25 # FIXME: Should be in modules, not bindings_modules http://crbug.com/358074 |
25 'target_name': 'modules_event_generated', | 26 'target_name': 'modules_event_generated', |
26 'type': 'none', | 27 'type': 'none', |
27 'actions': [ | 28 'actions': [ |
28 { | 29 { |
29 'action_name': 'event_interfaces', | 30 'action_name': 'event_interfaces', |
30 'variables': { | 31 'variables': { |
31 'event_idl_files': [ | 32 'event_idl_files': [ |
32 '<@(modules_event_idl_files)', | 33 '<@(modules_event_idl_files)', |
33 ], | 34 ], |
34 'event_idl_files_list': | 35 'event_idl_files_list': |
35 '<|(event_idl_files_list.tmp <@(event_idl_files))', | 36 '<|(event_idl_files_list.tmp <@(event_idl_files))', |
36 }, | 37 }, |
37 'inputs': [ | 38 'inputs': [ |
38 '<(bindings_scripts_dir)/generate_event_interfaces.py', | 39 '<(bindings_scripts_dir)/generate_event_interfaces.py', |
39 '<(bindings_scripts_dir)/utilities.py', | 40 '<(bindings_scripts_dir)/utilities.py', |
40 '<(event_idl_files_list)', | 41 '<(event_idl_files_list)', |
41 '<@(event_idl_files)', | 42 '<@(event_idl_files)', |
42 ], | 43 ], |
43 'outputs': [ | 44 'outputs': [ |
44 # FIXME: should output to bindings_modules_output_dir http://crbug.co
m/358074 | |
45 '<(blink_modules_output_dir)/EventModulesInterfaces.in', | 45 '<(blink_modules_output_dir)/EventModulesInterfaces.in', |
46 ], | 46 ], |
47 'action': [ | 47 'action': [ |
48 'python', | 48 'python', |
49 '<(bindings_scripts_dir)/generate_event_interfaces.py', | 49 '<(bindings_scripts_dir)/generate_event_interfaces.py', |
50 '--event-idl-files-list', | 50 '--event-idl-files-list', |
51 '<(event_idl_files_list)', | 51 '<(event_idl_files_list)', |
52 '--event-interfaces-file', | 52 '--event-interfaces-file', |
53 '<(blink_modules_output_dir)/EventModulesInterfaces.in', | 53 '<(blink_modules_output_dir)/EventModulesInterfaces.in', |
54 '--write-file-only-if-changed', | 54 '--write-file-only-if-changed', |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 '../../build/scripts/make_names.py', | 127 '../../build/scripts/make_names.py', |
128 '../../modules/EventTargetModulesFactory.in', | 128 '../../modules/EventTargetModulesFactory.in', |
129 '--output_dir', | 129 '--output_dir', |
130 '<(blink_modules_output_dir)', | 130 '<(blink_modules_output_dir)', |
131 ], | 131 ], |
132 }, | 132 }, |
133 ], | 133 ], |
134 }, | 134 }, |
135 ################################################################################ | 135 ################################################################################ |
136 { | 136 { |
| 137 'target_name': 'modules_global_objects', |
| 138 'type': 'none', |
| 139 'dependencies': [ |
| 140 '../core/generated.gyp:core_global_objects', |
| 141 ], |
| 142 'actions': [{ |
| 143 'action_name': 'compute_modules_global_objects', |
| 144 'inputs': [ |
| 145 '<(bindings_scripts_dir)/compute_global_objects.py', |
| 146 '<(bindings_scripts_dir)/utilities.py', |
| 147 # Only look in main IDL files (exclude dependencies and testing, |
| 148 # which should not define global objects). |
| 149 '<(modules_idl_files_list)', |
| 150 '<@(modules_idl_files)', |
| 151 ], |
| 152 'outputs': [ |
| 153 '<(bindings_modules_output_dir)/GlobalObjectsModules.pickle', |
| 154 ], |
| 155 'action': [ |
| 156 'python', |
| 157 '<(bindings_scripts_dir)/compute_global_objects.py', |
| 158 '--idl-files-list', |
| 159 '<(modules_idl_files_list)', |
| 160 '--write-file-only-if-changed', |
| 161 '<(write_file_only_if_changed)', |
| 162 '--', |
| 163 '<(bindings_core_output_dir)/GlobalObjectsCore.pickle', |
| 164 '<(bindings_modules_output_dir)/GlobalObjectsModules.pickle', |
| 165 ], |
| 166 'message': 'Computing global objects in modules', |
| 167 }] |
| 168 }, |
| 169 ################################################################################ |
| 170 { |
| 171 # Global constructors for global objects in modules (ServiceWorker) |
| 172 # but interfaces in core. |
| 173 'target_name': 'modules_core_global_constructors_idls', |
| 174 'type': 'none', |
| 175 'dependencies': [ |
| 176 'modules_global_objects', |
| 177 ], |
| 178 'actions': [{ |
| 179 'action_name': 'generate_modules_core_global_constructors_idls', |
| 180 'inputs': [ |
| 181 '<(bindings_scripts_dir)/generate_global_constructors.py', |
| 182 '<(bindings_scripts_dir)/utilities.py', |
| 183 # Only includes main IDL files (exclude dependencies and testing, |
| 184 # which should not appear on global objects). |
| 185 '<(core_idl_files_list)', |
| 186 '<@(core_idl_files)', |
| 187 '<(bindings_modules_output_dir)/GlobalObjectsModules.pickle', |
| 188 ], |
| 189 'outputs': [ |
| 190 '<@(modules_core_global_constructors_generated_idl_files)', |
| 191 '<@(modules_core_global_constructors_generated_header_files)', |
| 192 ], |
| 193 'action': [ |
| 194 'python', |
| 195 '<(bindings_scripts_dir)/generate_global_constructors.py', |
| 196 '--idl-files-list', |
| 197 '<(core_idl_files_list)', |
| 198 '--global-objects-file', |
| 199 '<(bindings_modules_output_dir)/GlobalObjectsModules.pickle', |
| 200 '--write-file-only-if-changed', |
| 201 '<(write_file_only_if_changed)', |
| 202 '--', |
| 203 'ServiceWorkerGlobalScope', |
| 204 '<(blink_modules_output_dir)/ServiceWorkerGlobalScopeCoreConstructors.id
l', |
| 205 ], |
| 206 'message': |
| 207 'Generating IDL files for constructors for interfaces in core, on globa
l objects from modules', |
| 208 }] |
| 209 }, |
| 210 ################################################################################ |
| 211 { |
137 'target_name': 'modules_global_constructors_idls', | 212 'target_name': 'modules_global_constructors_idls', |
138 'type': 'none', | 213 'type': 'none', |
139 'dependencies': [ | 214 'dependencies': [ |
140 '../core/generated.gyp:modules_global_objects', | 215 'modules_global_objects', |
141 ], | 216 ], |
142 'actions': [{ | 217 'actions': [{ |
143 'action_name': 'generate_modules_global_constructors_idls', | 218 'action_name': 'generate_modules_global_constructors_idls', |
144 'inputs': [ | 219 'inputs': [ |
145 '<(bindings_scripts_dir)/generate_global_constructors.py', | 220 '<(bindings_scripts_dir)/generate_global_constructors.py', |
146 '<(bindings_scripts_dir)/utilities.py', | 221 '<(bindings_scripts_dir)/utilities.py', |
147 # Only includes main IDL files (exclude dependencies and testing, | 222 # Only includes main IDL files (exclude dependencies and testing, |
148 # which should not appear on global objects). | 223 # which should not appear on global objects). |
149 '<(modules_idl_files_list)', | 224 '<(modules_idl_files_list)', |
150 '<@(modules_idl_files)', | 225 '<@(modules_idl_files)', |
(...skipping 24 matching lines...) Expand all Loading... |
175 ], | 250 ], |
176 'message': | 251 'message': |
177 'Generating IDL files for constructors on global objects from modules', | 252 'Generating IDL files for constructors on global objects from modules', |
178 }] | 253 }] |
179 }, | 254 }, |
180 ################################################################################ | 255 ################################################################################ |
181 { | 256 { |
182 'target_name': 'interfaces_info_individual_modules', | 257 'target_name': 'interfaces_info_individual_modules', |
183 'type': 'none', | 258 'type': 'none', |
184 'dependencies': [ | 259 'dependencies': [ |
| 260 'modules_core_global_constructors_idls', |
185 'modules_global_constructors_idls', | 261 'modules_global_constructors_idls', |
186 ], | 262 ], |
187 'actions': [{ | 263 'actions': [{ |
188 'action_name': 'compute_interfaces_info_individual_modules', | 264 'action_name': 'compute_interfaces_info_individual_modules', |
189 'inputs': [ | 265 'inputs': [ |
190 '<(bindings_scripts_dir)/compute_interfaces_info_individual.py', | 266 '<(bindings_scripts_dir)/compute_interfaces_info_individual.py', |
191 '<(bindings_scripts_dir)/utilities.py', | 267 '<(bindings_scripts_dir)/utilities.py', |
192 '<(modules_static_idl_files_list)', | 268 '<(modules_static_idl_files_list)', |
193 '<@(modules_static_idl_files)', | 269 '<@(modules_static_idl_files)', |
194 '<@(modules_generated_idl_files)', | 270 '<@(modules_generated_idl_files)', |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
241 '<(bindings_core_output_dir)/InterfacesInfoCoreIndividual.pickle', | 317 '<(bindings_core_output_dir)/InterfacesInfoCoreIndividual.pickle', |
242 '<(bindings_modules_output_dir)/InterfacesInfoModulesIndividual.pickle', | 318 '<(bindings_modules_output_dir)/InterfacesInfoModulesIndividual.pickle', |
243 '<(bindings_modules_output_dir)/InterfacesInfoModules.pickle', | 319 '<(bindings_modules_output_dir)/InterfacesInfoModules.pickle', |
244 ], | 320 ], |
245 'message': 'Computing overall global information about IDL files', | 321 'message': 'Computing overall global information about IDL files', |
246 }] | 322 }] |
247 }, | 323 }, |
248 ################################################################################ | 324 ################################################################################ |
249 ], # targets | 325 ], # targets |
250 } | 326 } |
OLD | NEW |