OLD | NEW |
1 # | 1 # |
2 # Copyright (C) 2013 Google Inc. All rights reserved. | 2 # Copyright (C) 2013 Google Inc. All rights reserved. |
3 # | 3 # |
4 # Redistribution and use in source and binary forms, with or without | 4 # Redistribution and use in source and binary forms, with or without |
5 # modification, are permitted provided that the following conditions are | 5 # modification, are permitted provided that the following conditions are |
6 # met: | 6 # met: |
7 # | 7 # |
8 # * Redistributions of source code must retain the above copyright | 8 # * Redistributions of source code must retain the above copyright |
9 # notice, this list of conditions and the following disclaimer. | 9 # notice, this list of conditions and the following disclaimer. |
10 # * Redistributions in binary form must reproduce the above | 10 # * Redistributions in binary form must reproduce the above |
(...skipping 27 matching lines...) Expand all Loading... |
38 | 38 |
39 'variables': { | 39 'variables': { |
40 'main_idl_files': [ | 40 'main_idl_files': [ |
41 '<@(core_idl_files)', | 41 '<@(core_idl_files)', |
42 '<@(modules_idl_files)', | 42 '<@(modules_idl_files)', |
43 '<@(svg_idl_files)', | 43 '<@(svg_idl_files)', |
44 ], | 44 ], |
45 'support_idl_files': [ | 45 'support_idl_files': [ |
46 '<@(webcore_testing_support_idl_files)', | 46 '<@(webcore_testing_support_idl_files)', |
47 ], | 47 ], |
48 'testing_support_idl_files': [ | 48 'generated_support_idl_files': [ |
49 '<@(webcore_testing_support_idl_files)', | |
50 '<@(generated_webcore_testing_support_idl_files)', | 49 '<@(generated_webcore_testing_support_idl_files)', |
51 ], | 50 ], |
52 'compiler_module_files': [ | 51 'compiler_module_files': [ |
53 'scripts/idl_compiler.py', | 52 'scripts/idl_compiler.py', |
54 '<(DEPTH)/third_party/ply/lex.py', | 53 '<(DEPTH)/third_party/ply/lex.py', |
55 '<(DEPTH)/third_party/ply/yacc.py', | 54 '<(DEPTH)/third_party/ply/yacc.py', |
56 # jinja2/__init__.py contains version string, so sufficient for package | 55 # jinja2/__init__.py contains version string, so sufficient for package |
57 '<(DEPTH)/third_party/jinja2/__init__.py', | 56 '<(DEPTH)/third_party/jinja2/__init__.py', |
58 '<(DEPTH)/third_party/markupsafe/__init__.py', # jinja2 dep | 57 '<(DEPTH)/third_party/markupsafe/__init__.py', # jinja2 dep |
59 '<(DEPTH)/tools/idl_parser/idl_lexer.py', | 58 '<(DEPTH)/tools/idl_parser/idl_lexer.py', |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
195 'type': 'none', | 194 'type': 'none', |
196 # The 'binding' rule generates .h files, so mark as hard_dependency, per: | 195 # The 'binding' rule generates .h files, so mark as hard_dependency, per: |
197 # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependen
cies | 196 # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependen
cies |
198 'hard_dependency': 1, | 197 'hard_dependency': 1, |
199 'dependencies': [ | 198 'dependencies': [ |
200 'interface_dependencies', | 199 'interface_dependencies', |
201 '../core/core_derived_sources.gyp:generate_test_support_idls', | 200 '../core/core_derived_sources.gyp:generate_test_support_idls', |
202 ], | 201 ], |
203 'sources': [ | 202 'sources': [ |
204 '<@(main_idl_files)', | 203 '<@(main_idl_files)', |
205 '<@(testing_support_idl_files)', | 204 '<@(support_idl_files)', |
| 205 '<@(generated_support_idl_files)', |
206 ], | 206 ], |
207 'rules': [{ | 207 'rules': [{ |
208 'rule_name': 'binding', | 208 'rule_name': 'binding', |
209 'extension': 'idl', | 209 'extension': 'idl', |
210 'msvs_external_rule': 1, | 210 'msvs_external_rule': 1, |
211 'inputs': [ | 211 'inputs': [ |
212 'scripts/generate_bindings.pl', | 212 'scripts/generate_bindings.pl', |
213 'scripts/code_generator_v8.pm', | 213 'scripts/code_generator_v8.pm', |
214 'scripts/idl_parser.pm', | 214 'scripts/idl_parser.pm', |
215 'scripts/idl_serializer.pm', | 215 'scripts/idl_serializer.pm', |
216 '../build/scripts/preprocessor.pm', | 216 '../build/scripts/preprocessor.pm', |
217 'scripts/IDLAttributes.txt', | 217 'scripts/IDLAttributes.txt', |
218 # FIXME: If the dependency structure changes, we rebuild all files, | 218 # FIXME: If the dependency structure changes, we rebuild all files, |
219 # since we're not computing dependencies file-by-file in the build. | 219 # since we're not computing dependencies file-by-file in the build. |
220 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', | 220 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', |
221 # FIXME: Similarly, if any partial interface changes, rebuild | 221 # FIXME: Similarly, if any partial interface changes, rebuild |
222 # everything, since every IDL potentially depends on them, because | 222 # everything, since every IDL potentially depends on them, because |
223 # we're not computing dependencies file-by-file. | 223 # we're not computing dependencies file-by-file. |
224 # | 224 # |
225 # If a new partial interface is added, need to regyp to update these | 225 # If a new partial interface is added, need to regyp to update these |
226 # dependencies, as these are computed statically at gyp runtime. | 226 # dependencies, as these are computed statically at gyp runtime. |
227 '<!@pymod_do_main(list_idl_files_with_partial_interface <@(main_idl_fi
les))', | 227 '<!@pymod_do_main(list_idl_files_with_partial_interface <@(main_idl_fi
les) <@(support_idl_files))', |
228 # Generated IDLs are all partial interfaces, hence everything | 228 # Generated IDLs are all partial interfaces, hence everything |
229 # potentially depends on them. | 229 # potentially depends on them. |
230 '<@(generated_global_constructors_idl_files)', | 230 '<@(generated_global_constructors_idl_files)', |
231 ], | 231 ], |
232 'outputs': [ | 232 'outputs': [ |
233 '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).cpp', | 233 '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).cpp', |
234 '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).h', | 234 '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).h', |
235 ], | 235 ], |
236 'variables': { | 236 'variables': { |
237 # IDL include paths. The generator will search recursively for IDL | 237 # IDL include paths. The generator will search recursively for IDL |
(...skipping 19 matching lines...) Expand all Loading... |
257 'scripts/generate_bindings.pl', | 257 'scripts/generate_bindings.pl', |
258 '--outputDir', | 258 '--outputDir', |
259 '<(bindings_output_dir)', | 259 '<(bindings_output_dir)', |
260 '--idlAttributesFile', | 260 '--idlAttributesFile', |
261 'scripts/IDLAttributes.txt', | 261 'scripts/IDLAttributes.txt', |
262 '<@(generator_include_dirs)', | 262 '<@(generator_include_dirs)', |
263 '<@(extra_blink_generator_include_dirs)', | 263 '<@(extra_blink_generator_include_dirs)', |
264 '--interfaceDependenciesFile', | 264 '--interfaceDependenciesFile', |
265 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', | 265 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', |
266 '--additionalIdlFiles', | 266 '--additionalIdlFiles', |
267 '<(testing_support_idl_files)', | 267 # Generated IDL files aren't listed in InterfaceDependencies.txt, |
| 268 # b/c they aren't available at GYP run time, so we need to sort them |
| 269 # manually, depending on whether they are (main) interface files, |
| 270 # for which we generate bindings, or dependencies, for which we don't. |
| 271 # generated_support_idl_files are main interfaces, so generate |
| 272 # bindings, but generated_global_constructors_idl_files are all |
| 273 # partial interfaces, so don't (b/c generated by dependents). |
| 274 '<(generated_support_idl_files)', |
268 '<@(preprocessor)', | 275 '<@(preprocessor)', |
269 '<@(write_file_only_if_changed)', | 276 '<@(write_file_only_if_changed)', |
270 '<(RULE_INPUT_PATH)', | 277 '<(RULE_INPUT_PATH)', |
271 ], | 278 ], |
272 'message': 'Generating binding from <(RULE_INPUT_PATH)', | 279 'message': 'Generating binding from <(RULE_INPUT_PATH)', |
273 }], | 280 }], |
274 }, | 281 }, |
275 { | 282 { |
276 'target_name': 'bindings_derived_sources', | 283 'target_name': 'bindings_derived_sources', |
277 'type': 'none', | 284 'type': 'none', |
(...skipping 15 matching lines...) Expand all Loading... |
293 '../build/scripts/action_derivedsourcesallinone.py', | 300 '../build/scripts/action_derivedsourcesallinone.py', |
294 '<(SHARED_INTERMEDIATE_DIR)/blink/BindingsDerivedSources.txt', | 301 '<(SHARED_INTERMEDIATE_DIR)/blink/BindingsDerivedSources.txt', |
295 '--', | 302 '--', |
296 '<@(derived_sources_aggregate_files)', | 303 '<@(derived_sources_aggregate_files)', |
297 ], | 304 ], |
298 'message': 'Generating bindings derived sources', | 305 'message': 'Generating bindings derived sources', |
299 }], | 306 }], |
300 }, | 307 }, |
301 ], | 308 ], |
302 } | 309 } |
OLD | NEW |