Roll src/third_party/WebKit fc49b4d:b780d1b (svn 189364:189376)
[chromium-blink-merge.git] / gin / gin.gyp
blob096c120e10ba2ae2acedab04829a7974f14ca449
1 # Copyright 2013 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.
6   'variables': {
7     'chromium_code': 1,
8     'gin_gen_path': '<(SHARED_INTERMEDIATE_DIR)/gin/',
9   },
10   'targets': [
11     {
12       'target_name': 'gin',
13       'type': '<(component)',
14       'dependencies': [
15         '../base/base.gyp:base',
16         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
17         '../v8/tools/gyp/v8.gyp:v8',
18       ],
19       'export_dependent_settings': [
20         '../base/base.gyp:base',
21         '../v8/tools/gyp/v8.gyp:v8',
22       ],
23       'defines': [
24         'GIN_IMPLEMENTATION',
25       ],
26       'sources': [
27         'arguments.cc',
28         'arguments.h',
29         'array_buffer.cc',
30         'array_buffer.h',
31         'context_holder.cc',
32         'converter.cc',
33         'converter.h',
34         'debug_impl.cc',
35         'debug_impl.h',
36         'dictionary.cc',
37         'dictionary.h',
38         'function_template.cc',
39         'function_template.h',
40         'gin_export.h',
41         'handle.h',
42         'interceptor.cc',
43         'interceptor.h',
44         'isolate_holder.cc',
45         'modules/console.cc',
46         'modules/console.h',
47         'modules/file_module_provider.cc',
48         'modules/file_module_provider.h',
49         'modules/module_registry.cc',
50         'modules/module_registry.h',
51         'modules/module_registry_observer.h',
52         'modules/module_runner_delegate.cc',
53         'modules/module_runner_delegate.h',
54         'modules/timer.cc',
55         'modules/timer.h',
56         'object_template_builder.cc',
57         'object_template_builder.h',
58         'per_context_data.cc',
59         'per_context_data.h',
60         'per_isolate_data.cc',
61         'per_isolate_data.h',
62         'public/context_holder.h',
63         'public/debug.h',
64         'public/gin_embedders.h',
65         'public/isolate_holder.h',
66         'public/v8_platform.h',
67         'public/wrapper_info.h',
68         'runner.cc',
69         'runner.h',
70         'run_microtasks_observer.cc',
71         'run_microtasks_observer.h',
72         'shell_runner.cc',
73         'shell_runner.h',
74         'try_catch.cc',
75         'try_catch.h',
76         'v8_platform.cc',
77         'wrappable.cc',
78         'wrappable.h',
79         'wrapper_info.cc',
80       ],
81       'conditions': [
82         ['v8_use_external_startup_data==1 and OS=="win"', {
83           'dependencies': [
84             'gin_v8_snapshot_fingerprint',
85             '../crypto/crypto.gyp:crypto',
86           ],
87           'sources': [
88             '<(gin_gen_path)/v8_snapshot_fingerprint.cc',
89           ],
90           'defines': [
91             'V8_VERIFY_EXTERNAL_STARTUP_DATA',
92           ]
93         }],
94       ],
95     },
96     {
97       'target_name': 'gin_v8_snapshot_fingerprint',
98       'type': 'none',
99       'variables': {
100         'snapshot_file': '<(PRODUCT_DIR)/snapshot_blob.bin',
101         'natives_file': '<(PRODUCT_DIR)/natives_blob.bin',
102         'output_file': '<(gin_gen_path)/v8_snapshot_fingerprint.cc',
103       },
104       'includes': [ '../gin/fingerprint/fingerprint_v8_snapshot.gypi' ],
105     },
106     {
107       'target_name': 'gin_shell',
108       'type': 'executable',
109       'dependencies': [
110         '../base/base.gyp:base',
111         '../base/base.gyp:base_i18n',
112         '../v8/tools/gyp/v8.gyp:v8',
113         'gin',
114       ],
115       'sources': [
116         'shell/gin_main.cc',
117       ],
118       'msvs_settings': {
119         'VCLinkerTool': {
120           'SubSystem': '1', # /SUBSYSTEM:CONSOLE
121         },
122       },
123     },
124     {
125       'target_name': 'gin_test',
126       'type': 'static_library',
127       'dependencies': [
128         '../testing/gtest.gyp:gtest',
129         '../v8/tools/gyp/v8.gyp:v8',
130         'gin',
131       ],
132       'export_dependent_settings': [
133         '../testing/gtest.gyp:gtest',
134         'gin',
135       ],
136       'sources': [
137         'test/file.cc',
138         'test/file.h',
139         'test/file_runner.cc',
140         'test/file_runner.h',
141         'test/gc.cc',
142         'test/gc.h',
143         'test/gtest.cc',
144         'test/gtest.h',
145         'test/v8_test.cc',
146         'test/v8_test.h',
147       ],
148     },
149     {
150       'target_name': 'gin_unittests',
151       'type': 'executable',
152       'dependencies': [
153         '../base/base.gyp:test_support_base',
154         '../v8/tools/gyp/v8.gyp:v8',
155         'gin_test',
156       ],
157       'sources': [
158         'converter_unittest.cc',
159         'interceptor_unittest.cc',
160         'modules/module_registry_unittest.cc',
161         'modules/timer_unittest.cc',
162         'per_context_data_unittest.cc',
163         'shell_runner_unittest.cc',
164         'shell/gin_shell_unittest.cc',
165         'test/run_all_unittests.cc',
166         'test/run_js_tests.cc',
167         'wrappable_unittest.cc',
168       ],
169     },
170   ],