Blink roll 25b6bd3a7a131ffe68d809546ad1a20707915cdc:3a503f41ae42e5b79cfcd2ff10e65afde...
[chromium-blink-merge.git] / mojo / edk / mojo_edk.gyp
blob05bde042f76bc885086e88384052784d517768cb
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.
6   'includes': [
7     '../mojo_variables.gypi',
8   ],
9   'targets': [
10     {
11       # GN version: //mojo/edk/system
12       'target_name': 'mojo_system_impl',
13       'type': '<(component)',
14       'dependencies': [
15         '../../base/base.gyp:base',
16         '../../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
17       ],
18       'defines': [
19         'MOJO_SYSTEM_IMPL_IMPLEMENTATION',
20         'MOJO_SYSTEM_IMPLEMENTATION',
21         'MOJO_USE_SYSTEM_IMPL',
22       ],
23       'sources': [
24         'embedder/configuration.h',
25         'embedder/channel_info_forward.h',
26         'embedder/channel_init.cc',
27         'embedder/channel_init.h',
28         'embedder/embedder.cc',
29         'embedder/embedder.h',
30         'embedder/embedder_internal.h',
31         'embedder/entrypoints.cc',
32         'embedder/platform_channel_pair.cc',
33         'embedder/platform_channel_pair.h',
34         'embedder/platform_channel_pair_posix.cc',
35         'embedder/platform_channel_pair_win.cc',
36         'embedder/platform_channel_utils_posix.cc',
37         'embedder/platform_channel_utils_posix.h',
38         'embedder/platform_handle.cc',
39         'embedder/platform_handle.h',
40         'embedder/platform_handle_utils.h',
41         'embedder/platform_handle_utils_posix.cc',
42         'embedder/platform_handle_utils_win.cc',
43         'embedder/platform_handle_vector.h',
44         'embedder/platform_shared_buffer.h',
45         'embedder/platform_support.h',
46         'embedder/scoped_platform_handle.h',
47         'embedder/simple_platform_shared_buffer.cc',
48         'embedder/simple_platform_shared_buffer.h',
49         'embedder/simple_platform_shared_buffer_posix.cc',
50         'embedder/simple_platform_shared_buffer_win.cc',
51         'embedder/simple_platform_support.cc',
52         'embedder/simple_platform_support.h',
53         'system/channel.cc',
54         'system/channel.h',
55         'system/channel_endpoint.cc',
56         'system/channel_endpoint.h',
57         'system/channel_endpoint_id.cc',
58         'system/channel_endpoint_id.h',
59         'system/channel_info.cc',
60         'system/channel_info.h',
61         'system/channel_manager.cc',
62         'system/channel_manager.h',
63         'system/configuration.cc',
64         'system/configuration.h',
65         'system/core.cc',
66         'system/core.h',
67         'system/data_pipe.cc',
68         'system/data_pipe.h',
69         'system/data_pipe_consumer_dispatcher.cc',
70         'system/data_pipe_consumer_dispatcher.h',
71         'system/data_pipe_producer_dispatcher.cc',
72         'system/data_pipe_producer_dispatcher.h',
73         'system/dispatcher.cc',
74         'system/dispatcher.h',
75         'system/handle_signals_state.h',
76         'system/handle_table.cc',
77         'system/handle_table.h',
78         'system/local_data_pipe.cc',
79         'system/local_data_pipe.h',
80         'system/local_message_pipe_endpoint.cc',
81         'system/local_message_pipe_endpoint.h',
82         'system/mapping_table.cc',
83         'system/mapping_table.h',
84         'system/memory.cc',
85         'system/memory.h',
86         'system/message_in_transit.cc',
87         'system/message_in_transit.h',
88         'system/message_in_transit_queue.cc',
89         'system/message_in_transit_queue.h',
90         'system/message_pipe.cc',
91         'system/message_pipe.h',
92         'system/message_pipe_dispatcher.cc',
93         'system/message_pipe_dispatcher.h',
94         'system/message_pipe_endpoint.cc',
95         'system/message_pipe_endpoint.h',
96         'system/options_validation.h',
97         'system/platform_handle_dispatcher.cc',
98         'system/platform_handle_dispatcher.h',
99         'system/proxy_message_pipe_endpoint.cc',
100         'system/proxy_message_pipe_endpoint.h',
101         'system/raw_channel.cc',
102         'system/raw_channel.h',
103         'system/raw_channel_posix.cc',
104         'system/raw_channel_win.cc',
105         'system/shared_buffer_dispatcher.cc',
106         'system/shared_buffer_dispatcher.h',
107         'system/simple_dispatcher.cc',
108         'system/simple_dispatcher.h',
109         'system/transport_data.cc',
110         'system/transport_data.h',
111         'system/waiter.cc',
112         'system/waiter.h',
113         'system/waiter_list.cc',
114         'system/waiter_list.h',
115         # Test-only code:
116         # TODO(vtl): It's a little unfortunate that these end up in the same
117         # component as non-test-only code. In the static build, this code should
118         # hopefully be dead-stripped.
119         'embedder/test_embedder.cc',
120         'embedder/test_embedder.h',
121       ],
122       'all_dependent_settings': {
123         # Ensures that dependent projects import the core functions on Windows.
124         'defines': ['MOJO_USE_SYSTEM_IMPL'],
125       }
126     },
127     {
128       # GN version: //mojo/edk/js
129       'target_name': 'mojo_js_lib',
130       'type': 'static_library',
131       'dependencies': [
132         '../../base/base.gyp:base',
133         '../../gin/gin.gyp:gin',
134         '../../v8/tools/gyp/v8.gyp:v8',
135       ],
136       'export_dependent_settings': [
137         '../../base/base.gyp:base',
138         '../../gin/gin.gyp:gin',
139       ],
140       'sources': [
141         # Sources list duplicated in GN build.
142         'js/core.cc',
143         'js/core.h',
144         'js/drain_data.cc',
145         'js/drain_data.h',
146         'js/handle.cc',
147         'js/handle.h',
148         'js/handle_close_observer.h',
149         'js/mojo_runner_delegate.cc',
150         'js/mojo_runner_delegate.h',
151         'js/support.cc',
152         'js/support.h',
153         'js/threading.cc',
154         'js/threading.h',
155         'js/waiting_callback.cc',
156         'js/waiting_callback.h',
157       ],
158     },
159     {
160       # GN version: //mojo/edk/test:test_support_impl
161       'target_name': 'mojo_test_support_impl',
162       'type': 'static_library',
163       'dependencies': [
164         '../../base/base.gyp:base',
165       ],
166       'sources': [
167         'test/test_support_impl.cc',
168         'test/test_support_impl.h',
169       ],
170     },
171     {
172       # GN version: //mojo/edk/test:test_support
173       'target_name': 'mojo_common_test_support',
174       'type': 'static_library',
175       'dependencies': [
176         '../../base/base.gyp:base',
177         '../../base/base.gyp:test_support_base',
178         '../../testing/gtest.gyp:gtest',
179         'mojo_system_impl',
180       ],
181       'sources': [
182         'test/multiprocess_test_helper.cc',
183         'test/multiprocess_test_helper.h',
184         'test/test_utils.h',
185         'test/test_utils_posix.cc',
186         'test/test_utils_win.cc',
187       ],
188       'conditions': [
189         ['OS=="ios"', {
190           'sources!': [
191             'test/multiprocess_test_helper.cc',
192           ],
193         }],
194       ],
195     },
196     {
197       # GN version: //mojo/edk/test:run_all_unittests
198       'target_name': 'mojo_run_all_unittests',
199       'type': 'static_library',
200       'dependencies': [
201         '../../base/base.gyp:base',
202         '../../base/base.gyp:test_support_base',
203         '../../testing/gtest.gyp:gtest',
204         'mojo_system_impl',
205         'mojo_test_support_impl',
206         '../public/mojo_public.gyp:mojo_test_support',
207       ],
208       'sources': [
209         'test/run_all_unittests.cc',
210       ],
211     },
212     {
213       # GN version: //mojo/edk/test:run_all_perftests
214       'target_name': 'mojo_run_all_perftests',
215       'type': 'static_library',
216       'dependencies': [
217         '../../base/base.gyp:test_support_base',
218         'mojo_edk.gyp:mojo_system_impl',
219         'mojo_test_support_impl',
220         '../public/mojo_public.gyp:mojo_test_support',
221       ],
222       'sources': [
223         'test/run_all_perftests.cc',
224       ],
225     },
226   ],