Move parseFontFaceDescriptor to CSSPropertyParser.cpp
[chromium-blink-merge.git] / third_party / WebKit / Source / core / core_generated.gyp
blobea2e60c5b8465668c85b993b1dfce6b158d33986
2 # Copyright (C) 2013 Google Inc. All rights reserved.
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions are
6 # met:
8 #     * Redistributions of source code must retain the above copyright
9 # notice, this list of conditions and the following disclaimer.
10 #     * Redistributions in binary form must reproduce the above
11 # copyright notice, this list of conditions and the following disclaimer
12 # in the documentation and/or other materials provided with the
13 # distribution.
14 #     * Neither the name of Google Inc. nor the names of its
15 # contributors may be used to endorse or promote products derived from
16 # this software without specific prior written permission.
18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32   'includes': [
33     'core.gypi',
34     '../bindings/scripts/scripts.gypi',
35     '../build/features.gypi',
36     '../build/scripts/scripts.gypi',
37   ],
39   'targets': [
40     {
41       # GN version: //third_party/WebKit/Source/core:core_event_interfaces
42       'target_name': 'core_event_interfaces',
43       'type': 'none',
44       'actions': [
45         {
46           'action_name': 'make_core_event_interfaces',
47           'variables': {
48             'event_idl_files': [
49               '<@(core_event_idl_files)',
50             ],
51             'event_idl_files_list':
52                 '<|(event_idl_files_list.tmp <@(event_idl_files))',
53           },
54           'inputs': [
55             # FIXME: should be in build/scripts, not bindings/scripts
56             '../bindings/scripts/generate_event_interfaces.py',
57             '../bindings/scripts/utilities.py',
58             '<(event_idl_files_list)',
59             '<@(event_idl_files)',
60           ],
61           'outputs': [
62             '<(blink_core_output_dir)/EventInterfaces.in',
63           ],
64           'action': [
65             'python',
66             '../bindings/scripts/generate_event_interfaces.py',
67             '--event-idl-files-list',
68             '<(event_idl_files_list)',
69             '--event-interfaces-file',
70             '<(blink_core_output_dir)/EventInterfaces.in',
71             '--write-file-only-if-changed',
72             '<(write_file_only_if_changed)',
73           ],
74         },
75       ],
76     },
77     {
78       # GN version: //third_party/WebKit/Sources/core:generated_testing_idls
79       'target_name': 'generated_testing_idls',
80       'type': 'none',
81       'actions': [
82         {
83           'action_name': 'Settings',
84           'inputs': [
85             '<@(scripts_for_in_files)',
86             '../build/scripts/make_settings.py',
87             '../build/scripts/templates/SettingsMacros.h.tmpl',
88             'frame/Settings.in',
89           ],
90           'outputs': [
91             '<(blink_core_output_dir)/SettingsMacros.h',
92           ],
93           'action': [
94             'python',
95             '../build/scripts/make_settings.py',
96             'frame/Settings.in',
97             '--output_dir',
98             '<(blink_core_output_dir)',
99           ],
100         },
101         {
102           'action_name': 'InternalSettings',
103           'inputs': [
104             '<@(scripts_for_in_files)',
105             '../build/scripts/make_internal_settings.py',
106             '../build/scripts/templates/InternalSettingsGenerated.idl.tmpl',
107             '../build/scripts/templates/InternalSettingsGenerated.cpp.tmpl',
108             '../build/scripts/templates/InternalSettingsGenerated.h.tmpl',
109             'frame/Settings.in',
110           ],
111           'outputs': [
112             '<(blink_core_output_dir)/testing/InternalSettingsGenerated.idl',
113             '<(blink_core_output_dir)/testing/InternalSettingsGenerated.cpp',
114             '<(blink_core_output_dir)/testing/InternalSettingsGenerated.h',
115           ],
116           'action': [
117             'python',
118             '../build/scripts/make_internal_settings.py',
119             'frame/Settings.in',
120             '--output_dir',
121             '<(blink_core_output_dir)/testing',
122           ],
123         },
124         {
125           'action_name': 'InternalRuntimeFlags',
126           'inputs': [
127             '<@(scripts_for_in_files)',
128             '../build/scripts/make_internal_runtime_flags.py',
129             '../platform/RuntimeEnabledFeatures.in',
130             '../build/scripts/templates/InternalRuntimeFlags.h.tmpl',
131             '../build/scripts/templates/InternalRuntimeFlags.idl.tmpl',
132           ],
133           'outputs': [
134             '<(blink_core_output_dir)/testing/InternalRuntimeFlags.idl',
135             '<(blink_core_output_dir)/testing/InternalRuntimeFlags.h',
136           ],
137           'action': [
138             'python',
139             '../build/scripts/make_internal_runtime_flags.py',
140             '../platform/RuntimeEnabledFeatures.in',
141             '--output_dir',
142             '<(blink_core_output_dir)/testing',
143           ],
144         },
145       ]
146     },
147     {
148       # GN version: //third_party/WebKit/Source/core:make_core_generated
149       'target_name': 'make_core_generated',
150       'type': 'none',
151       'hard_dependency': 1,
152       'dependencies': [
153         'generated_testing_idls',
154         'core_event_interfaces',
155         '../config.gyp:config',
156       ],
157       'sources': [
158         # bison rule
159         'xml/XPathGrammar.y',
160       ],
161       'actions': [
162         {
163           'action_name': 'generatePrivateScript',
164           # FIXME: The implementation of Blink-in-JS is not yet mature.
165           # You can use Blink-in-JS in your local experiment, but don't ship it.
166           # crbug.com/341031
167           'private_script_files': [
168              '../bindings/core/v8/PrivateScriptRunner.js',
169              'html/HTMLMarqueeElement.js',
170              'xml/DocumentXMLTreeViewer.js',
171           ],
172           'inputs': [
173              '../build/scripts/make_private_script_source.py',
174              '<@(_private_script_files)',
175           ],
176           'outputs': [
177             '<(blink_core_output_dir)/PrivateScriptSources.h',
178           ],
179           'action': [
180             'python',
181             '../build/scripts/make_private_script_source.py',
182             '<@(_outputs)',
183             '<@(_private_script_files)'
184           ],
185         },
186         {
187           'action_name': 'generatePrivateScriptForTesting',
188           'private_script_files': [
189             'testing/PartialPrivateScriptTest.js',
190             'testing/PrivateScriptTest.js',
191            ],
192           'inputs': [
193              '../build/scripts/make_private_script_source.py',
194              '<@(_private_script_files)',
195            ],
196            'outputs': [
197              '<(blink_core_output_dir)/PrivateScriptSourcesForTesting.h',
198            ],
199            'action': [
200              'python',
201              '../build/scripts/make_private_script_source.py',
202              '--for-testing',
203              '<@(_outputs)',
204              '<@(_private_script_files)'
205            ],
206         },
207         {
208           'action_name': 'HTMLEntityTable',
209           'inputs': [
210             'html/parser/create-html-entity-table',
211             'html/parser/HTMLEntityNames.in',
212           ],
213           'outputs': [
214             '<(blink_core_output_dir)/HTMLEntityTable.cpp'
215           ],
216           'action': [
217             'python',
218             'html/parser/create-html-entity-table',
219             '-o',
220             '<@(_outputs)',
221             '<@(_inputs)'
222           ],
223         },
224         {
225           'action_name': 'CSSPropertyNames',
226           'inputs': [
227             '<@(css_properties_files)',
228             '../build/scripts/make_css_property_names.py',
229           ],
230           'outputs': [
231             '<(blink_core_output_dir)/CSSPropertyNames.cpp',
232             '<(blink_core_output_dir)/CSSPropertyNames.h',
233           ],
234           'action': [
235             'python',
236             '../build/scripts/make_css_property_names.py',
237             'css/CSSProperties.in',
238             '--output_dir',
239             '<(blink_core_output_dir)',
240             '--gperf', '<(gperf_exe)',
241           ],
242         },
243         {
244           'action_name': 'MediaFeatureNames',
245           'variables': {
246             'in_files': [
247               'css/MediaFeatureNames.in',
248             ],
249           },
250           'inputs': [
251             '<@(make_names_files)',
252             '../build/scripts/make_media_feature_names.py',
253             '<@(in_files)'
254           ],
255           'outputs': [
256             '<(blink_core_output_dir)/MediaFeatureNames.cpp',
257             '<(blink_core_output_dir)/MediaFeatureNames.h',
258           ],
259           'action': [
260             'python',
261             '../build/scripts/make_media_feature_names.py',
262             '<@(in_files)',
263             '--output_dir',
264             '<(blink_core_output_dir)',
265           ],
266         },
267         {
268           'action_name': 'MediaFeatures',
269           'variables': {
270             'in_files': [
271               'css/MediaFeatureNames.in',
272             ],
273           },
274           'inputs': [
275             '<@(scripts_for_in_files)',
276             '../build/scripts/make_media_features.py',
277             '../build/scripts/templates/MediaFeatures.h.tmpl',
278             '<@(in_files)'
279           ],
280           'outputs': [
281             '<(blink_core_output_dir)/MediaFeatures.h',
282           ],
283           'action': [
284             'python',
285             '../build/scripts/make_media_features.py',
286             '<@(in_files)',
287             '--output_dir',
288             '<(blink_core_output_dir)',
289           ],
290         },
291         {
292           'action_name': 'MediaTypeNames',
293           'variables': {
294             'in_files': [
295               'css/MediaTypeNames.in',
296             ],
297           },
298           'inputs': [
299             '<@(make_names_files)',
300             '<@(in_files)'
301           ],
302           'outputs': [
303             '<(blink_core_output_dir)/MediaTypeNames.cpp',
304             '<(blink_core_output_dir)/MediaTypeNames.h',
305           ],
306           'action': [
307             'python',
308             '../build/scripts/make_names.py',
309             '<@(in_files)',
310             '--output_dir',
311             '<(blink_core_output_dir)',
312           ],
313         },
314         {
315           'action_name': 'CSSTokenizerCodepoints',
316           'inputs': [
317             '../build/scripts/make_css_tokenizer_codepoints.py',
318           ],
319           'outputs': [
320             '<(blink_core_output_dir)/CSSTokenizerCodepoints.cpp',
321           ],
322           'action': [
323             'python',
324             '../build/scripts/make_css_tokenizer_codepoints.py',
325             '--output_dir',
326             '<(blink_core_output_dir)',
327           ],
328         },
329         {
330           'action_name': 'StylePropertyShorthand',
331           'inputs': [
332             '<@(css_properties_files)',
333             '../build/scripts/make_style_shorthands.py',
334             '../build/scripts/templates/StylePropertyShorthand.cpp.tmpl',
335             '../build/scripts/templates/StylePropertyShorthand.h.tmpl',
336           ],
337           'outputs': [
338             '<(blink_core_output_dir)/StylePropertyShorthand.cpp',
339             '<(blink_core_output_dir)/StylePropertyShorthand.h',
340           ],
341           'action': [
342             'python',
343             '../build/scripts/make_style_shorthands.py',
344             'css/CSSProperties.in',
345             '--output_dir',
346             '<(blink_core_output_dir)',
347           ],
348         },
349         {
350           'action_name': 'StyleBuilder',
351           'inputs': [
352             '<@(css_properties_files)',
353             '../build/scripts/make_style_builder.py',
354             '../build/scripts/templates/StyleBuilder.cpp.tmpl',
355             '../build/scripts/templates/StyleBuilderFunctions.cpp.tmpl',
356             '../build/scripts/templates/StyleBuilderFunctions.h.tmpl',
357           ],
358           'outputs': [
359             '<(blink_core_output_dir)/StyleBuilder.cpp',
360             '<(blink_core_output_dir)/StyleBuilderFunctions.h',
361             '<(blink_core_output_dir)/StyleBuilderFunctions.cpp',
362           ],
363           'action': [
364             'python',
365             '../build/scripts/make_style_builder.py',
366             'css/CSSProperties.in',
367             '--output_dir',
368             '<(blink_core_output_dir)',
369           ],
370         },
371         {
372           'action_name': 'CSSPropertyMetadata',
373           'inputs': [
374             '<@(css_properties_files)',
375             '../build/scripts/make_css_property_metadata.py',
376             '../build/scripts/templates/CSSPropertyMetadata.cpp.tmpl',
377           ],
378           'outputs': [
379             '<(blink_core_output_dir)/CSSPropertyMetadata.cpp',
380           ],
381           'action': [
382             'python',
383             '../build/scripts/make_css_property_metadata.py',
384             'css/CSSProperties.in',
385             '--output_dir',
386             '<(blink_core_output_dir)',
387           ],
388         },
389         {
390           'action_name': 'CSSValueKeywords',
391           'variables': {
392             'in_files': [
393               'css/CSSValueKeywords.in',
394               'css/SVGCSSValueKeywords.in',
395             ],
396           },
397           'inputs': [
398             '<@(scripts_for_in_files)',
399             '../build/scripts/make_css_value_keywords.py',
400             '<@(in_files)'
401           ],
402           'outputs': [
403             '<(blink_core_output_dir)/CSSValueKeywords.cpp',
404             '<(blink_core_output_dir)/CSSValueKeywords.h',
405           ],
406           'action': [
407              'python',
408              '../build/scripts/make_css_value_keywords.py',
409              '<@(in_files)',
410              '--output_dir',
411              '<(blink_core_output_dir)',
412             '--gperf', '<(gperf_exe)',
413           ],
414         },
415         {
416           'action_name': 'HTMLElementFactory',
417           'inputs': [
418             '<@(make_element_factory_files)',
419             'html/HTMLTagNames.in',
420             'html/HTMLAttributeNames.in',
421           ],
422           'outputs': [
423             '<(blink_core_output_dir)/HTMLElementFactory.cpp',
424             '<(blink_core_output_dir)/HTMLElementFactory.h',
425             '<(blink_core_output_dir)/HTMLNames.cpp',
426             '<(blink_core_output_dir)/HTMLNames.h',
427           ],
428           'action': [
429             'python',
430             '../build/scripts/make_element_factory.py',
431             'html/HTMLTagNames.in',
432             'html/HTMLAttributeNames.in',
433             '--output_dir',
434             '<(blink_core_output_dir)',
435           ],
436         },
437         {
438           'action_name': 'HTMLElementTypeHelpers',
439           'inputs': [
440             '<@(make_element_type_helpers_files)',
441             'html/HTMLTagNames.in',
442           ],
443           'outputs': [
444             '<(blink_core_output_dir)/HTMLElementTypeHelpers.h',
445           ],
446           'action': [
447             'python',
448             '../build/scripts/make_element_type_helpers.py',
449             'html/HTMLTagNames.in',
450             '--output_dir',
451             '<(blink_core_output_dir)',
452           ],
453         },
454         {
455           'action_name': 'SVGNames',
456           'inputs': [
457             '<@(make_element_factory_files)',
458             'svg/SVGTagNames.in',
459             'svg/SVGAttributeNames.in',
460           ],
461           'outputs': [
462             '<(blink_core_output_dir)/SVGElementFactory.cpp',
463             '<(blink_core_output_dir)/SVGElementFactory.h',
464             '<(blink_core_output_dir)/SVGNames.cpp',
465             '<(blink_core_output_dir)/SVGNames.h',
466           ],
467           'action': [
468             'python',
469             '../build/scripts/make_element_factory.py',
470             'svg/SVGTagNames.in',
471             'svg/SVGAttributeNames.in',
472             '--output_dir',
473             '<(blink_core_output_dir)',
474           ],
475         },
476         {
477           'action_name': 'SVGElementTypeHelpers',
478           'inputs': [
479             '<@(make_element_type_helpers_files)',
480             'svg/SVGTagNames.in',
481           ],
482           'outputs': [
483             '<(blink_core_output_dir)/SVGElementTypeHelpers.h',
484           ],
485           'action': [
486             'python',
487             '../build/scripts/make_element_type_helpers.py',
488             'svg/SVGTagNames.in',
489             '--output_dir',
490             '<(blink_core_output_dir)',
491           ],
492         },
493         {
494           'action_name': 'EventFactory',
495           'inputs': [
496             '<@(make_event_factory_files)',
497             '<(blink_core_output_dir)/EventInterfaces.in',
498             'events/EventAliases.in',
499           ],
500           'outputs': [
501             '<(blink_core_output_dir)/Event.cpp',
502             '<(blink_core_output_dir)/EventHeaders.h',
503           ],
504           'action': [
505             'python',
506             '../build/scripts/make_event_factory.py',
507             '<(blink_core_output_dir)/EventInterfaces.in',
508             'events/EventAliases.in',
509             '--output_dir',
510             '<(blink_core_output_dir)',
511           ],
512         },
513         {
514           'action_name': 'EventNames',
515           'inputs': [
516             '<@(make_names_files)',
517             '<(blink_core_output_dir)/EventInterfaces.in',
518           ],
519           'outputs': [
520             '<(blink_core_output_dir)/EventNames.cpp',
521             '<(blink_core_output_dir)/EventNames.h',
522           ],
523           'action': [
524             'python',
525             '../build/scripts/make_names.py',
526             '<(blink_core_output_dir)/EventInterfaces.in',
527             '--output_dir',
528             '<(blink_core_output_dir)',
529           ],
530         },
531         {
532           'action_name': 'EventTargetNames',
533           'inputs': [
534             '<@(make_names_files)',
535             'events/EventTargetFactory.in',
536           ],
537           'outputs': [
538             '<(blink_core_output_dir)/EventTargetNames.cpp',
539             '<(blink_core_output_dir)/EventTargetNames.h',
540           ],
541           'action': [
542             'python',
543             '../build/scripts/make_names.py',
544             'events/EventTargetFactory.in',
545             '--output_dir',
546             '<(blink_core_output_dir)',
547           ],
548         },
549         {
550           'action_name': 'MathMLNames',
551           'inputs': [
552             '<@(make_qualified_names_files)',
553             'html/parser/MathMLTagNames.in',
554             'html/parser/MathMLAttributeNames.in',
555           ],
556           'outputs': [
557             '<(blink_core_output_dir)/MathMLNames.cpp',
558             '<(blink_core_output_dir)/MathMLNames.h',
559           ],
560           'action': [
561             'python',
562             '../build/scripts/make_qualified_names.py',
563             'html/parser/MathMLTagNames.in',
564             'html/parser/MathMLAttributeNames.in',
565             '--output_dir',
566             '<(blink_core_output_dir)',
567           ],
568         },
569         {
570           'action_name': 'FetchInitiatorTypeNames',
571           'inputs': [
572             '<@(make_names_files)',
573             'fetch/FetchInitiatorTypeNames.in',
574           ],
575           'outputs': [
576             '<(blink_core_output_dir)/fetch/FetchInitiatorTypeNames.cpp',
577             '<(blink_core_output_dir)/fetch/FetchInitiatorTypeNames.h',
578           ],
579           'action': [
580             'python',
581             '../build/scripts/make_names.py',
582             'fetch/FetchInitiatorTypeNames.in',
583             '--output_dir',
584             '<(blink_core_output_dir)/fetch',
585           ],
586         },
587         {
588           'action_name': 'EventTypeNames',
589           'inputs': [
590             '<@(make_names_files)',
591             'events/EventTypeNames.in',
592           ],
593           'outputs': [
594             '<(blink_core_output_dir)/EventTypeNames.cpp',
595             '<(blink_core_output_dir)/EventTypeNames.h',
596           ],
597           'action': [
598             'python',
599             '../build/scripts/make_names.py',
600             'events/EventTypeNames.in',
601             '--output_dir',
602             '<(blink_core_output_dir)',
603           ],
604         },
605         {
606           'action_name': 'HTMLTokenizerNames',
607           'inputs': [
608             '<@(make_names_files)',
609             'html/parser/HTMLTokenizerNames.in',
610           ],
611           'outputs': [
612             '<(blink_core_output_dir)/HTMLTokenizerNames.cpp',
613             '<(blink_core_output_dir)/HTMLTokenizerNames.h',
614           ],
615           'action': [
616             'python',
617             '../build/scripts/make_names.py',
618             'html/parser/HTMLTokenizerNames.in',
619             '--output_dir',
620             '<(blink_core_output_dir)',
621           ],
622         },
623         {
624           'action_name': 'InputTypeNames',
625           'inputs': [
626             '<@(make_names_files)',
627             'html/forms/InputTypeNames.in',
628           ],
629           'outputs': [
630             '<(blink_core_output_dir)/InputTypeNames.cpp',
631             '<(blink_core_output_dir)/InputTypeNames.h',
632           ],
633           'action': [
634             'python',
635             '../build/scripts/make_names.py',
636             'html/forms/InputTypeNames.in',
637             '--output_dir',
638             '<(blink_core_output_dir)',
639           ],
640         },
641         {
642           'action_name': 'XLinkNames',
643           'inputs': [
644             '<@(make_qualified_names_files)',
645             'svg/xlinkattrs.in',
646           ],
647           'outputs': [
648             '<(blink_core_output_dir)/XLinkNames.cpp',
649             '<(blink_core_output_dir)/XLinkNames.h',
650           ],
651           'action': [
652             'python',
653             '../build/scripts/make_qualified_names.py',
654             'svg/xlinkattrs.in',
655             '--output_dir',
656             '<(blink_core_output_dir)',
657           ],
658         },
659         {
660           'action_name': 'XMLNSNames',
661           'inputs': [
662             '<@(make_qualified_names_files)',
663             'xml/xmlnsattrs.in',
664           ],
665           'outputs': [
666             '<(blink_core_output_dir)/XMLNSNames.cpp',
667             '<(blink_core_output_dir)/XMLNSNames.h',
668           ],
669           'action': [
670             'python',
671             '../build/scripts/make_qualified_names.py',
672             'xml/xmlnsattrs.in',
673             '--output_dir',
674             '<(blink_core_output_dir)',
675           ],
676         },
677         {
678           'action_name': 'XMLNames',
679           'inputs': [
680             '<@(make_qualified_names_files)',
681             'xml/xmlattrs.in',
682           ],
683           'outputs': [
684             '<(blink_core_output_dir)/XMLNames.cpp',
685             '<(blink_core_output_dir)/XMLNames.h',
686           ],
687           'action': [
688             'python',
689             '../build/scripts/make_qualified_names.py',
690             'xml/xmlattrs.in',
691             '--output_dir',
692             '<(blink_core_output_dir)',
693           ],
694         },
695         {
696           'action_name': 'MakeTokenMatcherForViewport',
697           'inputs': [
698             '<@(scripts_for_in_files)',
699             '../build/scripts/make_token_matcher.py',
700             '../core/html/HTMLMetaElement-in.cpp',
701           ],
702           'outputs': [
703             '<(blink_core_output_dir)/HTMLMetaElement.cpp',
704           ],
705           'action': [
706             'python',
707             '../build/scripts/make_token_matcher.py',
708             '../core/html/HTMLMetaElement-in.cpp',
709             '<(blink_core_output_dir)/HTMLMetaElement.cpp',
710           ],
711         },
712         {
713           'action_name': 'HTMLElementLookupTrie',
714           'inputs': [
715             '<@(scripts_for_in_files)',
716             '../build/scripts/make_element_lookup_trie.py',
717             '../build/scripts/templates/ElementLookupTrie.cpp.tmpl',
718             '../build/scripts/templates/ElementLookupTrie.h.tmpl',
719             'html/HTMLTagNames.in',
720           ],
721           'outputs': [
722             '<(blink_core_output_dir)/HTMLElementLookupTrie.cpp',
723             '<(blink_core_output_dir)/HTMLElementLookupTrie.h',
724           ],
725           'action': [
726             'python',
727             '../build/scripts/make_element_lookup_trie.py',
728             'html/HTMLTagNames.in',
729             '--output_dir',
730             '<(blink_core_output_dir)',
731           ],
732         },
733       ],
734       'rules': [
735         {
736           'rule_name': 'bison',
737           'extension': 'y',
738           'outputs': [
739             '<(blink_core_output_dir)/<(RULE_INPUT_ROOT).cpp',
740             '<(blink_core_output_dir)/<(RULE_INPUT_ROOT).h'
741           ],
742           'action': [
743             'python',
744             '../build/scripts/rule_bison.py',
745             '<(RULE_INPUT_PATH)',
746             '<(blink_core_output_dir)',
747             '<(bison_exe)',
748           ],
749         },
750       ],
751     },
752   ],