Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / bindings / scripts / scripts.gypi
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
3 # found in the LICENSE file.
4
5 {
6   'variables': {
7     'bindings_scripts_dir': '.',
8     'bindings_scripts_output_dir': '<(SHARED_INTERMEDIATE_DIR)/blink/bindings/scripts',
9     'jinja_module_files': [
10       # jinja2/__init__.py contains version string, so sufficient for package
11       '<(DEPTH)/third_party/jinja2/__init__.py',
12       '<(DEPTH)/third_party/markupsafe/__init__.py',  # jinja2 dep
13     ],
14     'idl_lexer_parser_files': [
15       # PLY (Python Lex-Yacc)
16       '<(DEPTH)/third_party/ply/lex.py',
17       '<(DEPTH)/third_party/ply/yacc.py',
18       # Web IDL lexer/parser (base parser)
19       '<(DEPTH)/tools/idl_parser/idl_lexer.py',
20       '<(DEPTH)/tools/idl_parser/idl_node.py',
21       '<(DEPTH)/tools/idl_parser/idl_parser.py',
22       # Blink IDL lexer/parser/constructor
23       'blink_idl_lexer.py',
24       'blink_idl_parser.py',
25     ],
26     'idl_compiler_files': [
27       'idl_compiler.py',
28       # Blink IDL front end (ex-lexer/parser)
29       'idl_definitions.py',
30       'idl_reader.py',
31       'idl_types.py',
32       'idl_validator.py',
33       'interface_dependency_resolver.py',
34       # V8 code generator
35       'code_generator_v8.py',
36       'v8_attributes.py',
37       'v8_callback_interface.py',
38       'v8_dictionary.py',
39       'v8_globals.py',
40       'v8_interface.py',
41       'v8_methods.py',
42       'v8_types.py',
43       'v8_utilities.py',
44     ],
45     'idl_cache_files': [
46       '<(bindings_scripts_output_dir)/lextab.py',
47       '<(bindings_scripts_output_dir)/parsetab.pickle',
48       '<(bindings_scripts_output_dir)/cached_jinja_templates.stamp',
49     ],
50
51     'conditions': [
52         # These scripts can skip writing generated files if they are identical
53         # to the already existing files, which avoids further build steps, like
54         # recompilation. However, a dependency (earlier build step) having a
55         # newer timestamp than an output (later build step) confuses some build
56         # systems, so only use this on ninja, which explicitly supports this use
57         # case (gyp turns all actions into ninja restat rules).
58         ['"<(GENERATOR)"=="ninja"', {
59           'write_file_only_if_changed': '1',
60         }, {
61           'write_file_only_if_changed': '0',
62         }],
63     ],
64   },
65 }