• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2016 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5{
6  'includes': [
7    '../../../mojom_bindings_generator_variables.gypi',
8  ],
9  'targets': [
10    {
11      'target_name': 'precompile_mojom_bindings_generator_templates',
12      'type': 'none',
13      'actions': [
14        {
15          'action_name': 'precompile_mojom_bindings_generator_templates',
16          'inputs': [
17            '<@(mojom_bindings_generator_sources)',
18            'generators/cpp_templates/enum_macros.tmpl',
19            'generators/cpp_templates/enum_serialization_declaration.tmpl',
20            'generators/cpp_templates/interface_declaration.tmpl',
21            'generators/cpp_templates/interface_definition.tmpl',
22            'generators/cpp_templates/interface_macros.tmpl',
23            'generators/cpp_templates/interface_proxy_declaration.tmpl',
24            'generators/cpp_templates/interface_request_validator_declaration.tmpl',
25            'generators/cpp_templates/interface_response_validator_declaration.tmpl',
26            'generators/cpp_templates/interface_stub_declaration.tmpl',
27            'generators/cpp_templates/module.cc.tmpl',
28            'generators/cpp_templates/module.h.tmpl',
29            'generators/cpp_templates/module-internal.h.tmpl',
30            'generators/cpp_templates/struct_data_view_declaration.tmpl',
31            'generators/cpp_templates/struct_data_view_definition.tmpl',
32            'generators/cpp_templates/struct_declaration.tmpl',
33            'generators/cpp_templates/struct_definition.tmpl',
34            'generators/cpp_templates/struct_macros.tmpl',
35            'generators/cpp_templates/struct_serialization_declaration.tmpl',
36            'generators/cpp_templates/struct_serialization_definition.tmpl',
37            'generators/cpp_templates/union_declaration.tmpl',
38            'generators/cpp_templates/union_definition.tmpl',
39            'generators/cpp_templates/union_serialization_declaration.tmpl',
40            'generators/cpp_templates/union_serialization_definition.tmpl',
41            'generators/cpp_templates/validation_macros.tmpl',
42            'generators/cpp_templates/wrapper_class_declaration.tmpl',
43            'generators/cpp_templates/wrapper_class_definition.tmpl',
44            'generators/cpp_templates/wrapper_class_template_definition.tmpl',
45            'generators/cpp_templates/wrapper_union_class_declaration.tmpl',
46            'generators/cpp_templates/wrapper_union_class_definition.tmpl',
47            'generators/cpp_templates/wrapper_union_class_template_definition.tmpl',
48            'generators/java_templates/constant_definition.tmpl',
49            'generators/java_templates/constants.java.tmpl',
50            'generators/java_templates/data_types_definition.tmpl',
51            'generators/java_templates/enum_definition.tmpl',
52            'generators/java_templates/enum.java.tmpl',
53            'generators/java_templates/header.java.tmpl',
54            'generators/java_templates/interface_definition.tmpl',
55            'generators/java_templates/interface_internal.java.tmpl',
56            'generators/java_templates/interface.java.tmpl',
57            'generators/java_templates/struct.java.tmpl',
58            'generators/java_templates/union.java.tmpl',
59            'generators/js_templates/enum_definition.tmpl',
60            'generators/js_templates/interface_definition.tmpl',
61            'generators/js_templates/module_definition.tmpl',
62            'generators/js_templates/module.amd.tmpl',
63            'generators/js_templates/struct_definition.tmpl',
64            'generators/js_templates/union_definition.tmpl',
65            'generators/js_templates/validation_macros.tmpl',
66          ],
67          'outputs': [
68            '<(SHARED_INTERMEDIATE_DIR)/mojo/public/tools/bindings/cpp_templates.zip',
69            '<(SHARED_INTERMEDIATE_DIR)/mojo/public/tools/bindings/java_templates.zip',
70            '<(SHARED_INTERMEDIATE_DIR)/mojo/public/tools/bindings/js_templates.zip',
71          ],
72          'action': [
73            'python', '<@(mojom_bindings_generator)',
74            '--use_bundled_pylibs', 'precompile',
75            '-o', '<(SHARED_INTERMEDIATE_DIR)/mojo/public/tools/bindings',
76          ],
77        }
78      ],
79      'hard_dependency': 1,
80    },
81  ],
82}
83
84