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 bindings for core, plus aggregate bindings files. | 5 # Generate IDL bindings for core, plus aggregate bindings files. |
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 '../../bindings.gypi', | 11 '../../bindings.gypi', |
12 '../../idl.gypi', | 12 '../../idl.gypi', |
13 '../../scripts/scripts.gypi', | 13 '../../scripts/scripts.gypi', |
14 'generated.gypi', | 14 'generated.gypi', |
15 ], | 15 ], |
16 | 16 |
17 'variables': { | 17 'variables': { |
18 # IDL file lists; see: http://www.chromium.org/developers/web-idl-interfaces | 18 # IDL file lists; see: http://www.chromium.org/developers/web-idl-interfaces |
19 # Interface IDL files: generate individual bindings (includes testing) | 19 # Interface IDL files: generate individual bindings (includes testing) |
20 'core_interface_idl_files': [ | 20 'core_interface_idl_files': [ |
21 '<@(core_idl_files)', | 21 '<@(core_idl_files)', |
22 '<@(webcore_testing_idl_files)', | 22 '<@(webcore_testing_idl_files)', |
23 '<@(generated_webcore_testing_idl_files)', | 23 '<@(generated_webcore_testing_idl_files)', |
24 ], | 24 ], |
25 }, | 25 }, |
26 | 26 |
27 'targets': [ | 27 'targets': [ |
28 ################################################################################ | 28 ################################################################################ |
29 { | 29 { |
| 30 # FIXME: Generate separate interfaces_info_individual_core and |
| 31 # interfaces_info_individual_modules http://crbug.com/358074 |
| 32 'target_name': 'interfaces_info_individual', |
| 33 'type': 'none', |
| 34 'dependencies': [ |
| 35 # Generated IDLs |
| 36 '../../../core/core_generated.gyp:generated_testing_idls', |
| 37 '<(bindings_dir)/generated.gyp:global_constructors_idls', |
| 38 ], |
| 39 'actions': [{ |
| 40 'action_name': 'compute_interfaces_info_individual', |
| 41 'inputs': [ |
| 42 '<(bindings_scripts_dir)/compute_interfaces_info_individual.py', |
| 43 '<(bindings_scripts_dir)/utilities.py', |
| 44 '<(static_idl_files_list)', |
| 45 '<@(static_idl_files)', |
| 46 '<@(generated_idl_files)', |
| 47 ], |
| 48 'outputs': [ |
| 49 '<(blink_output_dir)/InterfacesInfoIndividual.pickle', |
| 50 ], |
| 51 'action': [ |
| 52 'python', |
| 53 '<(bindings_scripts_dir)/compute_interfaces_info_individual.py', |
| 54 '--idl-files-list', |
| 55 '<(static_idl_files_list)', |
| 56 '--interfaces-info-file', |
| 57 '<(blink_output_dir)/InterfacesInfoIndividual.pickle', |
| 58 '--write-file-only-if-changed', |
| 59 '<(write_file_only_if_changed)', |
| 60 '--', |
| 61 # Generated files must be passed at command line |
| 62 '<@(generated_idl_files)', |
| 63 ], |
| 64 'message': 'Computing global information about individual IDL files', |
| 65 }] |
| 66 }, |
| 67 ################################################################################ |
| 68 { |
| 69 # FIXME: Generate separate interfaces_info_core and interfaces_info_modules |
| 70 # http://crbug.com/358074 |
| 71 'target_name': 'interfaces_info', |
| 72 'type': 'none', |
| 73 'dependencies': [ |
| 74 'interfaces_info_individual', |
| 75 ], |
| 76 'actions': [{ |
| 77 'action_name': 'compute_interfaces_info_overall', |
| 78 'inputs': [ |
| 79 '<(bindings_scripts_dir)/compute_interfaces_info_overall.py', |
| 80 '<(blink_output_dir)/InterfacesInfoIndividual.pickle', |
| 81 ], |
| 82 'outputs': [ |
| 83 '<(blink_output_dir)/InterfacesInfo.pickle', |
| 84 ], |
| 85 'action': [ |
| 86 'python', |
| 87 '<(bindings_scripts_dir)/compute_interfaces_info_overall.py', |
| 88 '--write-file-only-if-changed', |
| 89 '<(write_file_only_if_changed)', |
| 90 '--', |
| 91 '<(blink_output_dir)/InterfacesInfoIndividual.pickle', |
| 92 '<(blink_output_dir)/InterfacesInfo.pickle', |
| 93 ], |
| 94 'message': 'Computing overall global information about IDL files', |
| 95 }] |
| 96 }, |
| 97 ################################################################################ |
| 98 { |
30 'target_name': 'bindings_core_generated_individual', | 99 'target_name': 'bindings_core_generated_individual', |
31 'type': 'none', | 100 'type': 'none', |
32 # The 'binding' rule generates .h files, so mark as hard_dependency, per: | 101 # The 'binding' rule generates .h files, so mark as hard_dependency, per: |
33 # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependenci
es | 102 # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependenci
es |
34 'hard_dependency': 1, | 103 'hard_dependency': 1, |
35 'dependencies': [ | 104 'dependencies': [ |
36 '../../../core/core_generated.gyp:generated_testing_idls', | 105 '../../../core/core_generated.gyp:generated_testing_idls', |
37 '<(bindings_dir)/generated.gyp:interfaces_info', | |
38 '<(bindings_scripts_dir)/scripts.gyp:cached_jinja_templates', | 106 '<(bindings_scripts_dir)/scripts.gyp:cached_jinja_templates', |
39 '<(bindings_scripts_dir)/scripts.gyp:cached_lex_yacc_tables', | 107 '<(bindings_scripts_dir)/scripts.gyp:cached_lex_yacc_tables', |
| 108 # FIXME: should be interfaces_info_core (w/o modules) |
| 109 # http://crbug.com/358074 |
| 110 'interfaces_info', |
40 ], | 111 ], |
41 'sources': [ | 112 'sources': [ |
42 '<@(core_interface_idl_files)', | 113 '<@(core_interface_idl_files)', |
43 ], | 114 ], |
44 'rules': [{ | 115 'rules': [{ |
45 'rule_name': 'binding', | 116 'rule_name': 'binding', |
46 'extension': 'idl', | 117 'extension': 'idl', |
47 'msvs_external_rule': 1, | 118 'msvs_external_rule': 1, |
48 'inputs': [ | 119 'inputs': [ |
49 '<@(idl_lexer_parser_files)', # to be explicit (covered by parsetab) | 120 '<@(idl_lexer_parser_files)', # to be explicit (covered by parsetab) |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 'target_name': 'bindings_core_generated', | 188 'target_name': 'bindings_core_generated', |
118 'type': 'none', | 189 'type': 'none', |
119 'dependencies': [ | 190 'dependencies': [ |
120 'bindings_core_generated_aggregate', | 191 'bindings_core_generated_aggregate', |
121 'bindings_core_generated_individual', | 192 'bindings_core_generated_individual', |
122 ], | 193 ], |
123 }, | 194 }, |
124 ################################################################################ | 195 ################################################################################ |
125 ], # targets | 196 ], # targets |
126 } | 197 } |
OLD | NEW |