Added unit test for base/hash.
[chromium-blink-merge.git] / mojo / mojo_public.gypi
blobb4ad543e6cc6ee576495821d7131f5c000774bee
2   'targets': [
3     {
4       'target_name': 'mojo_system',
5       'type': 'shared_library',
6       'defines': [
7         'MOJO_SYSTEM_IMPLEMENTATION',
8       ],
9       'include_dirs': [
10         '..',
11       ],
12       'direct_dependent_settings': {
13         'include_dirs': [
14           '..',
15         ],
16       },
17       'sources': [
18         'public/system/async_waiter.h',
19         'public/system/core.h',
20         'public/system/core_cpp.h',
21         'public/system/core_private.cc',
22         'public/system/core_private.h',
23         'public/system/macros.h',
24         'public/system/system_export.h',
25       ],
26     },
27     {
28       'target_name': 'mojo_gles2',
29       'type': 'shared_library',
30       'defines': [
31         'MOJO_GLES2_IMPLEMENTATION',
32         'GLES2_USE_MOJO',
33       ],
34       'include_dirs': [
35         '..',
36       ],
37       'dependencies': [
38         '../third_party/khronos/khronos.gyp:khronos_headers'
39       ],
40       'direct_dependent_settings': {
41         'include_dirs': [
42           '..',
43         ],
44         'defines': [
45           'GLES2_USE_MOJO',
46         ],
47       },
48       'sources': [
49         'public/gles2/gles2.h',
50         'public/gles2/gles2_export.h',
51         'public/gles2/gles2_private.cc',
52         'public/gles2/gles2_private.h',
53       ],
54     },
55     {
56       'target_name': 'mojo_test_support',
57       'type': 'shared_library',
58       'defines': [
59         'MOJO_TEST_SUPPORT_IMPLEMENTATION',
60       ],
61       'include_dirs': [
62         '..',
63       ],
64       'direct_dependent_settings': {
65         'include_dirs': [
66           '..',
67         ],
68       },
69       'sources': [
70         'public/tests/test_support.h',
71         'public/tests/test_support_private.cc',
72         'public/tests/test_support_private.h',
73         'public/tests/test_support_export.h',
74       ],
75     },
76     {
77       'target_name': 'mojo_public_test_utils',
78       'type': 'static_library',
79       'dependencies': [
80         '../base/base.gyp:base',
81         '../testing/gtest.gyp:gtest',
82         'mojo_system',
83         'mojo_test_support',
84       ],
85       'sources': [
86         'public/tests/test_utils.cc',
87         'public/tests/test_utils.h',
88       ],
89     },
90     {
91       'target_name': 'mojo_public_bindings_unittests',
92       'type': 'executable',
93       'dependencies': [
94         '../testing/gtest.gyp:gtest',
95         'mojo_bindings',
96         'mojo_environment_standalone',
97         'mojo_public_test_utils',
98         'mojo_run_all_unittests',
99         'mojo_sample_service',
100         'mojo_system',
101         'mojo_utility',
102       ],
103       'sources': [
104         'public/bindings/tests/array_unittest.cc',
105         'public/bindings/tests/connector_unittest.cc',
106         'public/bindings/tests/handle_passing_unittest.cc',
107         'public/bindings/tests/remote_ptr_unittest.cc',
108         'public/bindings/tests/type_conversion_unittest.cc',
109         'public/bindings/tests/buffer_unittest.cc',
110         'public/bindings/tests/math_calculator.mojom',
111         'public/bindings/tests/sample_factory.mojom',
112         'public/bindings/tests/sample_service_unittest.cc',
113         'public/bindings/tests/test_structs.mojom',
114       ],
115       'includes': [ 'public/bindings/mojom_bindings_generator.gypi' ],
116     },
117     {
118       'target_name': 'mojo_public_environment_unittests',
119       'type': 'executable',
120       'dependencies': [
121         '../base/base.gyp:base',
122         '../testing/gtest.gyp:gtest',
123         'mojo_environment_standalone',
124         'mojo_public_test_utils',
125         'mojo_run_all_unittests',
126         'mojo_system',
127         'mojo_utility',
128       ],
129       'sources': [
130         'public/environment/tests/async_waiter_unittest.cc',
131       ],
132     },
133     {
134       'target_name': 'mojo_public_system_unittests',
135       'type': 'executable',
136       'dependencies': [
137         '../base/base.gyp:base',
138         '../testing/gtest.gyp:gtest',
139         'mojo_bindings',
140         'mojo_public_test_utils',
141         'mojo_run_all_unittests',
142         'mojo_system',
143       ],
144       'sources': [
145         'public/tests/system/core_cpp_unittest.cc',
146         'public/tests/system/core_unittest.cc',
147         'public/tests/system/core_unittest_pure_c.c',
148         'public/tests/system/macros_unittest.cc',
149       ],
150     },
151     {
152       'target_name': 'mojo_public_utility_unittests',
153       'type': 'executable',
154       'dependencies': [
155         '../base/base.gyp:base',
156         '../testing/gtest.gyp:gtest',
157         'mojo_bindings',
158         'mojo_public_test_utils',
159         'mojo_run_all_unittests',
160         'mojo_system',
161         'mojo_utility',
162       ],
163       'sources': [
164         'public/utility/tests/mutex_unittest.cc',
165         'public/utility/tests/run_loop_unittest.cc',
166         'public/utility/tests/thread_unittest.cc',
167       ],
168       'conditions': [
169         # See crbug.com/342893:
170         ['OS=="win"', {
171           'sources!': [
172             'public/utility/tests/mutex_unittest.cc',
173             'public/utility/tests/thread_unittest.cc',
174           ],
175         }],
176       ],
177     },
178     {
179       'target_name': 'mojo_public_system_perftests',
180       'type': 'executable',
181       'dependencies': [
182         '../base/base.gyp:base',
183         '../testing/gtest.gyp:gtest',
184         'mojo_public_test_utils',
185         'mojo_run_all_perftests',
186         'mojo_system',
187         'mojo_utility',
188       ],
189       'sources': [
190         'public/tests/system/core_perftest.cc',
191       ],
192     },
193     {
194       'target_name': 'mojo_bindings',
195       'type': 'static_library',
196       'include_dirs': [
197         '..'
198       ],
199       'sources': [
200         'public/bindings/allocation_scope.h',
201         'public/bindings/array.h',
202         'public/bindings/buffer.h',
203         'public/bindings/error_handler.h',
204         'public/bindings/interface.h',
205         'public/bindings/message.h',
206         'public/bindings/passable.h',
207         'public/bindings/remote_ptr.h',
208         'public/bindings/sync_dispatcher.h',
209         'public/bindings/type_converter.h',
210         'public/bindings/lib/array.cc',
211         'public/bindings/lib/array_internal.h',
212         'public/bindings/lib/array_internal.cc',
213         'public/bindings/lib/bindings_internal.h',
214         'public/bindings/lib/bindings_serialization.cc',
215         'public/bindings/lib/bindings_serialization.h',
216         'public/bindings/lib/buffer.cc',
217         'public/bindings/lib/connector.cc',
218         'public/bindings/lib/connector.h',
219         'public/bindings/lib/fixed_buffer.cc',
220         'public/bindings/lib/fixed_buffer.h',
221         'public/bindings/lib/interface.cc',
222         'public/bindings/lib/message.cc',
223         'public/bindings/lib/message_builder.cc',
224         'public/bindings/lib/message_builder.h',
225         'public/bindings/lib/message_queue.cc',
226         'public/bindings/lib/message_queue.h',
227         'public/bindings/lib/scratch_buffer.cc',
228         'public/bindings/lib/scratch_buffer.h',
229         'public/bindings/lib/sync_dispatcher.cc',
230       ],
231     },
232     {
233       'target_name': 'mojo_sample_service',
234       'type': 'static_library',
235       'sources': [
236         'public/bindings/tests/sample_service.mojom',
237         'public/bindings/tests/sample_import.mojom',
238         'public/bindings/tests/sample_import2.mojom',
239       ],
240       'includes': [ 'public/bindings/mojom_bindings_generator.gypi' ],
241       'export_dependent_settings': [
242         'mojo_bindings',
243         'mojo_system',
244       ],
245     },
246     {
247       'target_name': 'mojo_environment_standalone',
248       'type': 'static_library',
249       'sources': [
250         'public/environment/buffer_tls.h',
251         'public/environment/default_async_waiter.h',
252         'public/environment/environment.h',
253         'public/environment/lib/default_async_waiter.cc',
254         'public/environment/lib/buffer_tls.cc',
255         'public/environment/lib/buffer_tls_setup.h',
256         'public/environment/lib/environment.cc',
257       ],
258       'include_dirs': [
259         '..',
260       ],
261     },
262     {
263       'target_name': 'mojo_utility',
264       'type': 'static_library',
265       'sources': [
266         'public/utility/mutex.h',
267         'public/utility/run_loop.h',
268         'public/utility/run_loop_handler.h',
269         'public/utility/thread.h',
270         'public/utility/lib/mutex.cc',
271         'public/utility/lib/run_loop.cc',
272         'public/utility/lib/thread.cc',
273         'public/utility/lib/thread_local.h',
274         'public/utility/lib/thread_local_posix.cc',
275         'public/utility/lib/thread_local_win.cc',
276       ],
277       'conditions': [
278         # See crbug.com/342893:
279         ['OS=="win"', {
280           'sources!': [
281             'public/utility/mutex.h',
282             'public/utility/thread.h',
283             'public/utility/lib/mutex.cc',
284             'public/utility/lib/thread.cc',
285           ],
286         }],
287       ],
288       'include_dirs': [
289         '..',
290       ],
291     },
292     {
293       'target_name': 'mojo_shell_bindings',
294       'type': 'static_library',
295       'sources': [
296         'public/shell/lib/application.cc',
297         'public/shell/lib/service.cc',
298         'public/shell/application.h',
299         'public/shell/service.h',
300         'public/shell/shell.mojom',
301       ],
302       'includes': [ 'public/bindings/mojom_bindings_generator.gypi' ],
303       'export_dependent_settings': [
304         'mojo_bindings',
305         'mojo_system',
306       ],
307     },
308   ],