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': [ |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
44 ], | 44 ], |
45 'sources': [ | 45 'sources': [ |
46 '<@(core_interface_idl_files)', | 46 '<@(core_interface_idl_files)', |
47 ], | 47 ], |
48 'rules': [{ | 48 'rules': [{ |
49 'rule_name': 'binding', | 49 'rule_name': 'binding', |
50 'extension': 'idl', | 50 'extension': 'idl', |
51 'msvs_external_rule': 1, | 51 'msvs_external_rule': 1, |
52 'inputs': [ | 52 'inputs': [ |
53 '<@(idl_lexer_parser_files)', # to be explicit (covered by parsetab) | 53 '<@(idl_lexer_parser_files)', # to be explicit (covered by parsetab) |
| 54 '<@(idl_cache_files)', |
54 '<@(idl_compiler_files)', | 55 '<@(idl_compiler_files)', |
55 '<(bindings_scripts_output_dir)/lextab.py', | |
56 '<(bindings_scripts_output_dir)/parsetab.pickle', | |
57 '<(bindings_scripts_output_dir)/cached_jinja_templates.stamp', | |
58 '<(bindings_dir)/IDLExtendedAttributes.txt', | 56 '<(bindings_dir)/IDLExtendedAttributes.txt', |
59 # If the dependency structure or public interface info (e.g., | 57 # If the dependency structure or public interface info (e.g., |
60 # [ImplementedAs]) changes, we rebuild all files, since we're not | 58 # [ImplementedAs]) changes, we rebuild all files, since we're not |
61 # computing dependencies file-by-file in the build. | 59 # computing dependencies file-by-file in the build. |
62 # This data is generally stable. | 60 # This data is generally stable. |
63 '<(bindings_modules_output_dir)/InterfacesInfoModules.pickle', | 61 '<(bindings_modules_output_dir)/InterfacesInfoModules.pickle', |
64 # Further, if any dependency (partial interface or implemented | 62 # Further, if any dependency (partial interface or implemented |
65 # interface) changes, rebuild everything, since every IDL potentially | 63 # interface) changes, rebuild everything, since every IDL potentially |
66 # depends on them, because we're not computing dependencies | 64 # depends on them, because we're not computing dependencies |
67 # file-by-file. | 65 # file-by-file. |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
115 'core', | 113 'core', |
116 '<(core_idl_files_list)', | 114 '<(core_idl_files_list)', |
117 '--', | 115 '--', |
118 '<@(bindings_core_v8_generated_aggregate_files)', | 116 '<@(bindings_core_v8_generated_aggregate_files)', |
119 ], | 117 ], |
120 'message': 'Generating aggregate generated core V8 bindings files', | 118 'message': 'Generating aggregate generated core V8 bindings files', |
121 }], | 119 }], |
122 }, | 120 }, |
123 ################################################################################ | 121 ################################################################################ |
124 { | 122 { |
| 123 # GN version: //third_party/WebKit/Source/bindings/core/v8:bindings_core_dic
tionary_impl_generated |
| 124 # http://crbug.com/358074; See comments on |
| 125 # 'bindings_core_v8_generated_individual' target |
| 126 'target_name': 'bindings_core_dictionary_impl_generated', |
| 127 'type': 'none', |
| 128 'hard_dependency': 1, |
| 129 'dependencies': [ |
| 130 '<(bindings_scripts_dir)/scripts.gyp:cached_jinja_templates', |
| 131 '<(bindings_scripts_dir)/scripts.gyp:cached_lex_yacc_tables', |
| 132 '../../modules/generated.gyp:interfaces_info', |
| 133 ], |
| 134 'sources': [ |
| 135 # FIXME: Add '<@(core_dictionary_idl_files)', |
| 136 # See comment on core/core.gypi |
| 137 '<@(core_testing_dictionary_idl_files)', |
| 138 ], |
| 139 'actions': [{ |
| 140 'action_name': 'idl_dictionary', |
| 141 # Mark as explicit idl action to prevent MSVS emulation on Windows. |
| 142 'explicit_idl_action': 1, |
| 143 'msvs_cygwin_shell': 0, |
| 144 'inputs': [ |
| 145 '<@(core_testing_dictionary_idl_files)', |
| 146 '<@(idl_lexer_parser_files)', |
| 147 '<@(idl_cache_files)', |
| 148 '<@(idl_compiler_files)', |
| 149 '<(bindings_dir)/IDLExtendedAttributes.txt', |
| 150 '<(bindings_modules_output_dir)/InterfacesInfoModules.pickle', |
| 151 ], |
| 152 'outputs': [ |
| 153 # FIXME: Add '<@(generated_core_dictionary_files)', |
| 154 # See comment on core/core.gypi |
| 155 '<@(generated_core_testing_dictionary_files)', |
| 156 ], |
| 157 'action': [ |
| 158 'python', |
| 159 '<(bindings_scripts_dir)/idl_compiler.py', |
| 160 '--cache-dir', |
| 161 '<(bindings_scripts_output_dir)', |
| 162 '--output-dir', |
| 163 '<(SHARED_INTERMEDIATE_DIR)/blink/', |
| 164 '--interfaces-info', |
| 165 '<(bindings_modules_output_dir)/InterfacesInfoModules.pickle', |
| 166 '--write-file-only-if-changed', |
| 167 '<(write_file_only_if_changed)', |
| 168 '--generate-dictionary-impl', |
| 169 '<(core_dictionary_idl_files_list)', |
| 170 ], |
| 171 'message': 'Generating core IDL dictionary impl classes', |
| 172 }], |
| 173 }, |
| 174 ################################################################################ |
| 175 { |
125 # GN version: //third_party/WebKit/Source/bindings/core/v8:bindings_core_v8_
generated | 176 # GN version: //third_party/WebKit/Source/bindings/core/v8:bindings_core_v8_
generated |
126 'target_name': 'bindings_core_v8_generated', | 177 'target_name': 'bindings_core_v8_generated', |
127 'type': 'none', | 178 'type': 'none', |
128 'dependencies': [ | 179 'dependencies': [ |
| 180 'bindings_core_dictionary_impl_generated', |
129 'bindings_core_v8_generated_aggregate', | 181 'bindings_core_v8_generated_aggregate', |
130 'bindings_core_v8_generated_individual', | 182 'bindings_core_v8_generated_individual', |
131 ], | 183 ], |
132 }, | 184 }, |
133 ################################################################################ | 185 ################################################################################ |
134 ], # targets | 186 ], # targets |
135 } | 187 } |
OLD | NEW |