Removed unused icon resources from app_list.
[chromium-blink-merge.git] / mojo / public / mojo_public.gyp
blobf19e263065d1c398f896d127842bb7dd269a3979
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       'target_name': 'mojo_public',
12       'type': 'none',
13       'dependencies': [
14         'mojo_js_bindings',
15         'mojo_public_test_interfaces',
16         'mojo_public_test_utils',
17         'mojo_system',
18         'mojo_utility',
19       ],
20     },
21     {
22       'target_name': 'mojo_none',
23       'type': 'none',
24     },
25     {
26       # GN version: //mojo/public/c/system
27       'target_name': 'mojo_system',
28       'type': 'static_library',
29       'defines': [
30         'MOJO_SYSTEM_IMPLEMENTATION',
31       ],
32       'include_dirs': [
33         '../..',
34       ],
35       'direct_dependent_settings': {
36         'include_dirs': [
37           '../..',
38         ],
39       },
40       'all_dependent_settings': {
41         'conditions': [
42           # We need to be able to call the MojoSetSystemThunks() function in
43           # system_thunks.cc
44           ['OS=="android"', {
45             'ldflags!': [
46               '-Wl,--exclude-libs=ALL',
47             ],
48           }],
49         ],
50       },
51       'sources': [
52         'c/system/buffer.h',
53         'c/system/core.h',
54         'c/system/data_pipe.h',
55         'c/system/functions.h',
56         'c/system/macros.h',
57         'c/system/message_pipe.h',
58         'c/system/system_export.h',
59         'c/system/types.h',
60         'platform/native/system_thunks.cc',
61         'platform/native/system_thunks.h',
62       ],
63     },
64     {
65       # GN version: //mojo/public/cpp/bindings
66       'target_name': 'mojo_cpp_bindings',
67       'type': 'static_library',
68       'include_dirs': [
69         '../..'
70       ],
71       'sources': [
72         'cpp/bindings/array.h',
73         'cpp/bindings/binding.h',
74         'cpp/bindings/callback.h',
75         'cpp/bindings/error_handler.h',
76         'cpp/bindings/interface_impl.h',
77         'cpp/bindings/interface_ptr.h',
78         'cpp/bindings/interface_request.h',
79         'cpp/bindings/message.h',
80         'cpp/bindings/message_filter.h',
81         'cpp/bindings/no_interface.h',
82         'cpp/bindings/string.h',
83         'cpp/bindings/strong_binding.h',
84         'cpp/bindings/type_converter.h',
85         'cpp/bindings/lib/array_internal.h',
86         'cpp/bindings/lib/array_internal.cc',
87         'cpp/bindings/lib/array_serialization.h',
88         'cpp/bindings/lib/bindings_internal.h',
89         'cpp/bindings/lib/bindings_serialization.cc',
90         'cpp/bindings/lib/bindings_serialization.h',
91         'cpp/bindings/lib/bounds_checker.cc',
92         'cpp/bindings/lib/bounds_checker.h',
93         'cpp/bindings/lib/buffer.h',
94         'cpp/bindings/lib/callback_internal.h',
95         'cpp/bindings/lib/connector.cc',
96         'cpp/bindings/lib/connector.h',
97         'cpp/bindings/lib/filter_chain.cc',
98         'cpp/bindings/lib/filter_chain.h',
99         'cpp/bindings/lib/fixed_buffer.cc',
100         'cpp/bindings/lib/fixed_buffer.h',
101         'cpp/bindings/lib/interface_ptr_internal.h',
102         'cpp/bindings/lib/map_data_internal.h',
103         'cpp/bindings/lib/map_internal.h',
104         'cpp/bindings/lib/map_serialization.h',
105         'cpp/bindings/lib/message.cc',
106         'cpp/bindings/lib/message_builder.cc',
107         'cpp/bindings/lib/message_builder.h',
108         'cpp/bindings/lib/message_filter.cc',
109         'cpp/bindings/lib/message_header_validator.cc',
110         'cpp/bindings/lib/message_header_validator.h',
111         'cpp/bindings/lib/message_internal.h',
112         'cpp/bindings/lib/message_queue.cc',
113         'cpp/bindings/lib/message_queue.h',
114         'cpp/bindings/lib/no_interface.cc',
115         'cpp/bindings/lib/router.cc',
116         'cpp/bindings/lib/router.h',
117         'cpp/bindings/lib/shared_data.h',
118         'cpp/bindings/lib/shared_ptr.h',
119         'cpp/bindings/lib/string_serialization.h',
120         'cpp/bindings/lib/string_serialization.cc',
121         'cpp/bindings/lib/validate_params.h',
122         'cpp/bindings/lib/validation_errors.cc',
123         'cpp/bindings/lib/validation_errors.h',
124       ],
125     },
126     {
127       # GN version: //mojo/public/js
128       'target_name': 'mojo_js_bindings',
129       'type': 'static_library',
130       'include_dirs': [
131         '../..'
132       ],
133       'sources': [
134         'js/constants.cc',
135         'js/constants.h',
136       ],
137     },
138     {
139       # GN version: //mojo/public/cpp/environment:standalone
140       'target_name': 'mojo_environment_standalone',
141       'type': 'static_library',
142       'sources': [
143         'c/environment/async_waiter.h',
144         'c/environment/logger.h',
145         'cpp/environment/async_waiter.h',
146         'cpp/environment/environment.h',
147         'cpp/environment/lib/async_waiter.cc',
148         'cpp/environment/lib/default_async_waiter.cc',
149         'cpp/environment/lib/default_async_waiter.h',
150         'cpp/environment/lib/default_logger.cc',
151         'cpp/environment/lib/default_logger.h',
152         'cpp/environment/lib/environment.cc',
153         'cpp/environment/lib/logging.cc',
154         'cpp/environment/logging.h',
155       ],
156       'include_dirs': [
157         '../..',
158       ],
159     },
160     {
161       # GN version: //mojo/public/cpp/utility
162       'target_name': 'mojo_utility',
163       'type': 'static_library',
164       'sources': [
165         'cpp/utility/mutex.h',
166         'cpp/utility/run_loop.h',
167         'cpp/utility/run_loop_handler.h',
168         'cpp/utility/thread.h',
169         'cpp/utility/lib/mutex.cc',
170         'cpp/utility/lib/run_loop.cc',
171         'cpp/utility/lib/thread.cc',
172         'cpp/utility/lib/thread_local.h',
173         'cpp/utility/lib/thread_local_posix.cc',
174         'cpp/utility/lib/thread_local_win.cc',
175       ],
176       'conditions': [
177         # See crbug.com/342893:
178         ['OS=="win"', {
179           'sources!': [
180             'cpp/utility/mutex.h',
181             'cpp/utility/thread.h',
182             'cpp/utility/lib/mutex.cc',
183             'cpp/utility/lib/thread.cc',
184           ],
185         }],
186       ],
187       'include_dirs': [
188         '../..',
189       ],
190     },
191     {
192       'target_name': 'mojo_application_bindings_mojom',
193       'type': 'none',
194       'variables': {
195         'mojom_files': [
196           'interfaces/application/application.mojom',
197           'interfaces/application/service_provider.mojom',
198           'interfaces/application/shell.mojom',
199         ],
200       },
201       'includes': [ 'tools/bindings/mojom_bindings_generator_explicit.gypi' ],
202     },
203     {
204       # GN version: //mojo/public/interfaces/application:application
205       'target_name': 'mojo_application_bindings',
206       'type': 'static_library',
207       'dependencies': [
208         'mojo_application_bindings_mojom',
209         'mojo_cpp_bindings',
210       ],
211       'export_dependent_settings': [
212         'mojo_cpp_bindings',
213       ],
214     },
215     {
216       # GN version: //mojo/public/cpp/application
217       'target_name': 'mojo_application_base',
218       'type': 'static_library',
219       'sources': [
220         'cpp/application/application_connection.h',
221         'cpp/application/application_delegate.h',
222         'cpp/application/application_impl.h',
223         'cpp/application/connect.h',
224         'cpp/application/interface_factory.h',
225         'cpp/application/interface_factory_impl.h',
226         'cpp/application/lib/application_connection.cc',
227         'cpp/application/lib/application_delegate.cc',
228         'cpp/application/lib/application_impl.cc',
229         'cpp/application/lib/service_provider_impl.cc',
230         'cpp/application/lib/service_connector.cc',
231         'cpp/application/lib/service_connector.h',
232         'cpp/application/lib/service_registry.cc',
233         'cpp/application/lib/service_registry.h',
234         'cpp/application/lib/weak_service_provider.cc',
235         'cpp/application/lib/weak_service_provider.h',
236         'cpp/application/service_provider_impl.h',
237       ],
238       'dependencies': [
239         'mojo_application_bindings',
240         'mojo_application_bindings_mojom',
241       ],
242       'export_dependent_settings': [
243         'mojo_application_bindings',
244         'mojo_application_bindings_mojom',
245       ],
246     },
247     {
248       # GN version: //mojo/public/cpp/application:standalone"
249       'target_name': 'mojo_application_standalone',
250       'type': 'static_library',
251       'sources': [
252         'cpp/application/lib/application_runner.cc',
253         'cpp/application/application_runner.h',
254       ],
255       'dependencies': [
256         'mojo_application_base',
257         'mojo_environment_standalone',
258       ],
259       'export_dependent_settings': [
260         'mojo_application_base',
261       ],
262     },
263     {
264       # GN version: //mojo/public/c/test_support
265       'target_name': 'mojo_test_support',
266       'defines': [
267         'MOJO_TEST_SUPPORT_IMPLEMENTATION',
268       ],
269       'include_dirs': [
270         '../..',
271       ],
272       'direct_dependent_settings': {
273         'include_dirs': [
274           '../..',
275         ],
276       },
277       'sources': [
278         'c/test_support/test_support.h',
279         'c/test_support/test_support_export.h',
280         # TODO(vtl): Convert this to thunks http://crbug.com/386799
281         'tests/test_support_private.cc',
282         'tests/test_support_private.h',
283       ],
284       'conditions': [
285         ['OS=="ios"', {
286           'type': 'static_library',
287         }, {
288           'type': 'shared_library',
289         }],
290         ['OS=="mac"', {
291           'xcode_settings': {
292             # Make it a run-path dependent library.
293             'DYLIB_INSTALL_NAME_BASE': '@loader_path',
294           },
295         }],
296       ],
297     },
298     {
299       # GN version: //mojo/public/cpp/test_support:test_utils
300       'target_name': 'mojo_public_test_utils',
301       'type': 'static_library',
302       'dependencies': [
303         '../../base/base.gyp:base',
304         '../../testing/gtest.gyp:gtest',
305         'mojo_test_support',
306       ],
307       'sources': [
308         'cpp/test_support/lib/test_support.cc',
309         'cpp/test_support/lib/test_utils.cc',
310         'cpp/test_support/test_utils.h',
311       ],
312     },
313     {
314       # GN version: //mojo/public/cpp/bindings/tests:mojo_public_bindings_test_utils
315       'target_name': 'mojo_public_bindings_test_utils',
316       'type': 'static_library',
317       'dependencies': [
318         '../../base/base.gyp:base',
319       ],
320       'sources': [
321         'cpp/bindings/tests/validation_test_input_parser.cc',
322         'cpp/bindings/tests/validation_test_input_parser.h',
323       ],
324     },
325     {
326       'target_name': 'mojo_public_test_interfaces_mojom',
327       'type': 'none',
328       'variables': {
329         'mojom_files': [
330           'interfaces/bindings/tests/math_calculator.mojom',
331           'interfaces/bindings/tests/no_module.mojom',
332           'interfaces/bindings/tests/rect.mojom',
333           'interfaces/bindings/tests/regression_tests.mojom',
334           'interfaces/bindings/tests/sample_factory.mojom',
335           'interfaces/bindings/tests/sample_import.mojom',
336           'interfaces/bindings/tests/sample_import2.mojom',
337           'interfaces/bindings/tests/sample_interfaces.mojom',
338           'interfaces/bindings/tests/sample_service.mojom',
339           'interfaces/bindings/tests/serialization_test_structs.mojom',
340           'interfaces/bindings/tests/test_structs.mojom',
341           'interfaces/bindings/tests/validation_test_interfaces.mojom',
342         ],
343       },
344       'includes': [ 'tools/bindings/mojom_bindings_generator_explicit.gypi' ],
345     },
346     {
347       # GN version: //mojo/public/interfaces/bindings/tests:test_interfaces
348       'target_name': 'mojo_public_test_interfaces',
349       'type': 'static_library',
350       'export_dependent_settings': [
351         'mojo_cpp_bindings',
352       ],
353       'dependencies': [
354         'mojo_public_test_interfaces_mojom',
355         'mojo_cpp_bindings',
356       ],
357     },
358   ],
359   'conditions': [
360     ['OS == "android"', {
361       'targets': [
362         {
363           # GN version: //mojo/public/java_system
364           'target_name': 'mojo_public_java',
365           'type': 'none',
366           'variables': {
367             'java_in_dir': 'java/system',
368           },
369           'includes': [ '../../build/java.gypi' ],
370         },
371         {
372         # GN version: //mojo/public/java_bindings
373           'target_name': 'mojo_bindings_java',
374           'type': 'none',
375           'variables': {
376             'java_in_dir': 'java/bindings',
377            },
378            'dependencies': [
379              'mojo_public_java',
380            ],
381            'includes': [ '../../build/java.gypi' ],
382         },
383       ],
384     }],
385   ],