Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(646)

Side by Side Diff: Source/bindings/derived_sources.gyp

Issue 24053003: Support partial interface for test support idls (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: patch Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | Source/bindings/scripts/compute_dependencies.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 19 matching lines...) Expand all
30 30
31 { 31 {
32 'includes': [ 32 'includes': [
33 '../build/win/precompile.gypi', 33 '../build/win/precompile.gypi',
34 '../core/core.gypi', 34 '../core/core.gypi',
35 '../modules/modules.gypi', 35 '../modules/modules.gypi',
36 'bindings.gypi', 36 'bindings.gypi',
37 ], 37 ],
38 38
39 'variables': { 39 'variables': {
40 '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': [
46 '<@(webcore_testing_support_idl_files)',
47 ],
48 'testing_support_idl_files': [
49 '<@(webcore_testing_support_idl_files)',
50 '<@(generated_webcore_testing_support_idl_files)',
51 ],
45 'compiler_module_files': [ 52 'compiler_module_files': [
46 'scripts/idl_compiler.py', 53 'scripts/idl_compiler.py',
47 '<(DEPTH)/third_party/ply/lex.py', 54 '<(DEPTH)/third_party/ply/lex.py',
48 '<(DEPTH)/third_party/ply/yacc.py', 55 '<(DEPTH)/third_party/ply/yacc.py',
49 # jinja2/__init__.py contains version string, so sufficient for package 56 # jinja2/__init__.py contains version string, so sufficient for package
50 '<(DEPTH)/third_party/jinja2/__init__.py', 57 '<(DEPTH)/third_party/jinja2/__init__.py',
51 '<(DEPTH)/third_party/markupsafe/__init__.py', # jinja2 dep 58 '<(DEPTH)/third_party/markupsafe/__init__.py', # jinja2 dep
52 '<(DEPTH)/tools/idl_parser/idl_lexer.py', 59 '<(DEPTH)/tools/idl_parser/idl_lexer.py',
53 '<(DEPTH)/tools/idl_parser/idl_node.py', 60 '<(DEPTH)/tools/idl_parser/idl_node.py',
54 '<(DEPTH)/tools/idl_parser/idl_parser.py', 61 '<(DEPTH)/tools/idl_parser/idl_parser.py',
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 }, 140 },
134 141
135 'targets': [{ 142 'targets': [{
136 'target_name': 'interface_dependencies', 143 'target_name': 'interface_dependencies',
137 'type': 'none', 144 'type': 'none',
138 'actions': [{ 145 'actions': [{
139 'action_name': 'compute_interface_dependencies', 146 'action_name': 'compute_interface_dependencies',
140 'variables': { 147 'variables': {
141 # Write sources into a file, so that the action command line won't 148 # Write sources into a file, so that the action command line won't
142 # exceed OS limits. 149 # exceed OS limits.
143 'idl_files_list': '<|(idl_files_list.tmp <@(idl_files))', 150 'main_idl_files_list': '<|(main_idl_files_list.tmp <@(main_idl_files))',
151 'support_idl_files_list': '<|(support_idl_files_list.tmp <@(support_idl_ files))',
144 }, 152 },
145 'inputs': [ 153 'inputs': [
146 'scripts/compute_dependencies.py', 154 'scripts/compute_dependencies.py',
147 '<(idl_files_list)', 155 '<(main_idl_files_list)',
148 '<@(idl_files)', 156 '<!@(cat <(main_idl_files_list))',
157 '<(support_idl_files_list)',
158 '<!@(cat <(support_idl_files_list))',
149 ], 159 ],
150 'outputs': [ 160 'outputs': [
151 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', 161 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt',
162 '<(SHARED_INTERMEDIATE_DIR)/blink/BindingsDerivedSources.txt',
152 '<@(generated_global_constructors_idl_files)', 163 '<@(generated_global_constructors_idl_files)',
153 '<(SHARED_INTERMEDIATE_DIR)/blink/EventInterfaces.in', 164 '<(SHARED_INTERMEDIATE_DIR)/blink/EventInterfaces.in',
154 ], 165 ],
155 'msvs_cygwin_shell': 0, 166 'msvs_cygwin_shell': 0,
156 'action': [ 167 'action': [
157 'python', 168 'python',
158 'scripts/compute_dependencies.py', 169 'scripts/compute_dependencies.py',
159 '--idl-files-list', 170 '--main-idl-files-list',
160 '<(idl_files_list)', 171 '<(main_idl_files_list)',
172 '--support-idl-files-list',
173 '<(support_idl_files_list)',
161 '--interface-dependencies-file', 174 '--interface-dependencies-file',
162 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', 175 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt',
176 '--bindings-derived-sources-file',
177 '<(SHARED_INTERMEDIATE_DIR)/blink/BindingsDerivedSources.txt',
163 '--window-constructors-file', 178 '--window-constructors-file',
164 '<(SHARED_INTERMEDIATE_DIR)/blink/WindowConstructors.idl', 179 '<(SHARED_INTERMEDIATE_DIR)/blink/WindowConstructors.idl',
165 '--workerglobalscope-constructors-file', 180 '--workerglobalscope-constructors-file',
166 '<(SHARED_INTERMEDIATE_DIR)/blink/WorkerGlobalScopeConstructors.idl', 181 '<(SHARED_INTERMEDIATE_DIR)/blink/WorkerGlobalScopeConstructors.idl',
167 '--sharedworkerglobalscope-constructors-file', 182 '--sharedworkerglobalscope-constructors-file',
168 '<(SHARED_INTERMEDIATE_DIR)/blink/SharedWorkerGlobalScopeConstructors.i dl', 183 '<(SHARED_INTERMEDIATE_DIR)/blink/SharedWorkerGlobalScopeConstructors.i dl',
169 '--dedicatedworkerglobalscope-constructors-file', 184 '--dedicatedworkerglobalscope-constructors-file',
170 '<(SHARED_INTERMEDIATE_DIR)/blink/DedicatedWorkerGlobalScopeConstructor s.idl', 185 '<(SHARED_INTERMEDIATE_DIR)/blink/DedicatedWorkerGlobalScopeConstructor s.idl',
171 '--event-names-file', 186 '--event-names-file',
172 '<(SHARED_INTERMEDIATE_DIR)/blink/EventInterfaces.in', 187 '<(SHARED_INTERMEDIATE_DIR)/blink/EventInterfaces.in',
173 '<@(write_file_only_if_changed)', 188 '<@(write_file_only_if_changed)',
174 ], 189 ],
175 'message': 'Resolving partial interfaces dependencies in all IDL files', 190 'message': 'Resolving partial interfaces dependencies in all IDL files',
176 }] 191 }]
177 }, 192 },
178 { 193 {
179 'target_name': 'bindings_sources', 194 'target_name': 'bindings_sources',
180 'type': 'none', 195 'type': 'none',
181 # The 'binding' rule generates .h files, so mark as hard_dependency, per: 196 # The 'binding' rule generates .h files, so mark as hard_dependency, per:
182 # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependen cies 197 # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependen cies
183 'hard_dependency': 1, 198 'hard_dependency': 1,
184 'dependencies': [ 199 'dependencies': [
185 'interface_dependencies', 200 'interface_dependencies',
186 '../core/core_derived_sources.gyp:generate_test_support_idls', 201 '../core/core_derived_sources.gyp:generate_test_support_idls',
187 ], 202 ],
188 'sources': [ 203 'sources': [
189 '<@(idl_files)', 204 '<@(main_idl_files)',
190 '<@(webcore_test_support_idl_files)', 205 '<@(testing_support_idl_files)',
191 ], 206 ],
192 'rules': [{ 207 'rules': [{
193 'rule_name': 'binding', 208 'rule_name': 'binding',
194 'extension': 'idl', 209 'extension': 'idl',
195 'msvs_external_rule': 1, 210 'msvs_external_rule': 1,
196 'inputs': [ 211 'inputs': [
197 'scripts/generate_bindings.pl', 212 'scripts/generate_bindings.pl',
198 'scripts/code_generator_v8.pm', 213 'scripts/code_generator_v8.pm',
199 'scripts/idl_parser.pm', 214 'scripts/idl_parser.pm',
200 'scripts/idl_serializer.pm', 215 'scripts/idl_serializer.pm',
201 '../build/scripts/preprocessor.pm', 216 '../build/scripts/preprocessor.pm',
202 'scripts/IDLAttributes.txt', 217 'scripts/IDLAttributes.txt',
203 # FIXME: If the dependency structure changes, we rebuild all files, 218 # FIXME: If the dependency structure changes, we rebuild all files,
204 # 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.
205 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', 220 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt',
206 # FIXME: Similarly, if any partial interface changes, rebuild 221 # FIXME: Similarly, if any partial interface changes, rebuild
207 # everything, since every IDL potentially depends on them, because 222 # everything, since every IDL potentially depends on them, because
208 # we're not computing dependencies file-by-file. 223 # we're not computing dependencies file-by-file.
209 # 224 #
210 # 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
211 # dependencies, as these are computed statically at gyp runtime. 226 # dependencies, as these are computed statically at gyp runtime.
212 '<!@pymod_do_main(list_idl_files_with_partial_interface <@(idl_files)) ', 227 '<!@pymod_do_main(list_idl_files_with_partial_interface <@(main_idl_fi les))',
213 # Generated IDLs are all partial interfaces, hence everything 228 # Generated IDLs are all partial interfaces, hence everything
214 # potentially depends on them. 229 # potentially depends on them.
215 '<@(generated_global_constructors_idl_files)', 230 '<@(generated_global_constructors_idl_files)',
216 ], 231 ],
217 'outputs': [ 232 'outputs': [
218 '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).cpp', 233 '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).cpp',
219 '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).h', 234 '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).h',
220 ], 235 ],
221 'variables': { 236 'variables': {
222 # 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
242 'scripts/generate_bindings.pl', 257 'scripts/generate_bindings.pl',
243 '--outputDir', 258 '--outputDir',
244 '<(bindings_output_dir)', 259 '<(bindings_output_dir)',
245 '--idlAttributesFile', 260 '--idlAttributesFile',
246 'scripts/IDLAttributes.txt', 261 'scripts/IDLAttributes.txt',
247 '<@(generator_include_dirs)', 262 '<@(generator_include_dirs)',
248 '<@(extra_blink_generator_include_dirs)', 263 '<@(extra_blink_generator_include_dirs)',
249 '--interfaceDependenciesFile', 264 '--interfaceDependenciesFile',
250 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', 265 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt',
251 '--additionalIdlFiles', 266 '--additionalIdlFiles',
252 '<(webcore_test_support_idl_files)', 267 '<(testing_support_idl_files)',
253 '<@(preprocessor)', 268 '<@(preprocessor)',
254 '<@(write_file_only_if_changed)', 269 '<@(write_file_only_if_changed)',
255 '<(RULE_INPUT_PATH)', 270 '<(RULE_INPUT_PATH)',
256 ], 271 ],
257 'message': 'Generating binding from <(RULE_INPUT_PATH)', 272 'message': 'Generating binding from <(RULE_INPUT_PATH)',
258 }], 273 }],
259 }, 274 },
260 { 275 {
261 'target_name': 'bindings_derived_sources', 276 'target_name': 'bindings_derived_sources',
262 'type': 'none', 277 'type': 'none',
263 'dependencies': [ 278 'dependencies': [
264 'interface_dependencies', 279 'interface_dependencies',
265 'bindings_sources', 280 'bindings_sources',
266 ], 281 ],
267 'actions': [{ 282 'actions': [{
268 'action_name': 'derived_sources_all_in_one', 283 'action_name': 'derived_sources_all_in_one',
269 'inputs': [ 284 'inputs': [
270 '../build/scripts/action_derivedsourcesallinone.py', 285 '../build/scripts/action_derivedsourcesallinone.py',
271 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', 286 '<(SHARED_INTERMEDIATE_DIR)/blink/BindingsDerivedSources.txt',
272 ], 287 ],
273 'outputs': [ 288 'outputs': [
274 '<@(derived_sources_aggregate_files)', 289 '<@(derived_sources_aggregate_files)',
275 ], 290 ],
276 'action': [ 291 'action': [
277 'python', 292 'python',
278 '../build/scripts/action_derivedsourcesallinone.py', 293 '../build/scripts/action_derivedsourcesallinone.py',
279 '<(SHARED_INTERMEDIATE_DIR)/blink/InterfaceDependencies.txt', 294 '<(SHARED_INTERMEDIATE_DIR)/blink/BindingsDerivedSources.txt',
280 '--', 295 '--',
281 '<@(derived_sources_aggregate_files)', 296 '<@(derived_sources_aggregate_files)',
282 ], 297 ],
283 'message': 'Generating bindings derived sources', 298 'message': 'Generating bindings derived sources',
284 }], 299 }],
285 }, 300 },
286 ], 301 ],
287 } 302 }
OLDNEW
« no previous file with comments | « no previous file | Source/bindings/scripts/compute_dependencies.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698