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.
13 'direct_dependent_settings': {
21 'target_name': 'mojo_public',
25 'mojo_public_test_interfaces',
26 'mojo_public_test_utils',
32 # Targets that (a) need to obtain the settings that mojo_system passes on
33 # to its direct dependents but (b) are not themselves in a position to
34 # hardcode a dependency to mojo_system vs. mojo_system_impl (e.g.,
35 # because they are components) should depend on this target.
36 'target_name': 'mojo_system_placeholder',
40 # GN version: //mojo/public/c/system
41 'target_name': 'mojo_system',
42 'type': 'static_library',
44 'MOJO_SYSTEM_IMPLEMENTATION',
46 'all_dependent_settings': {
48 # We need to be able to call the MojoSetSystemThunks() function in
52 '-Wl,--exclude-libs=ALL',
58 'src/mojo/public/c/system/buffer.h',
59 'src/mojo/public/c/system/core.h',
60 'src/mojo/public/c/system/data_pipe.h',
61 'src/mojo/public/c/system/functions.h',
62 'src/mojo/public/c/system/macros.h',
63 'src/mojo/public/c/system/message_pipe.h',
64 'src/mojo/public/c/system/system_export.h',
65 'src/mojo/public/c/system/types.h',
66 'src/mojo/public/platform/native/system_thunks.cc',
67 'src/mojo/public/platform/native/system_thunks.h',
71 # GN version: //mojo/public/cpp/bindings
72 'target_name': 'mojo_cpp_bindings',
73 'type': 'static_library',
78 'src/mojo/public/cpp/bindings/array.h',
79 'src/mojo/public/cpp/bindings/binding.h',
80 'src/mojo/public/cpp/bindings/callback.h',
81 'src/mojo/public/cpp/bindings/error_handler.h',
82 'src/mojo/public/cpp/bindings/interface_impl.h',
83 'src/mojo/public/cpp/bindings/interface_ptr.h',
84 'src/mojo/public/cpp/bindings/interface_request.h',
85 'src/mojo/public/cpp/bindings/message.h',
86 'src/mojo/public/cpp/bindings/message_filter.h',
87 'src/mojo/public/cpp/bindings/no_interface.h',
88 'src/mojo/public/cpp/bindings/string.h',
89 'src/mojo/public/cpp/bindings/strong_binding.h',
90 'src/mojo/public/cpp/bindings/type_converter.h',
91 'src/mojo/public/cpp/bindings/lib/array_internal.h',
92 'src/mojo/public/cpp/bindings/lib/array_internal.cc',
93 'src/mojo/public/cpp/bindings/lib/array_serialization.h',
94 'src/mojo/public/cpp/bindings/lib/bindings_internal.h',
95 'src/mojo/public/cpp/bindings/lib/bindings_serialization.cc',
96 'src/mojo/public/cpp/bindings/lib/bindings_serialization.h',
97 'src/mojo/public/cpp/bindings/lib/bounds_checker.cc',
98 'src/mojo/public/cpp/bindings/lib/bounds_checker.h',
99 'src/mojo/public/cpp/bindings/lib/buffer.h',
100 'src/mojo/public/cpp/bindings/lib/callback_internal.h',
101 'src/mojo/public/cpp/bindings/lib/connector.cc',
102 'src/mojo/public/cpp/bindings/lib/connector.h',
103 'src/mojo/public/cpp/bindings/lib/control_message_handler.cc',
104 'src/mojo/public/cpp/bindings/lib/control_message_handler.h',
105 'src/mojo/public/cpp/bindings/lib/control_message_proxy.cc',
106 'src/mojo/public/cpp/bindings/lib/control_message_proxy.h',
107 'src/mojo/public/cpp/bindings/lib/filter_chain.cc',
108 'src/mojo/public/cpp/bindings/lib/filter_chain.h',
109 'src/mojo/public/cpp/bindings/lib/fixed_buffer.cc',
110 'src/mojo/public/cpp/bindings/lib/fixed_buffer.h',
111 'src/mojo/public/cpp/bindings/lib/interface_ptr_internal.h',
112 'src/mojo/public/cpp/bindings/lib/map_data_internal.h',
113 'src/mojo/public/cpp/bindings/lib/map_internal.h',
114 'src/mojo/public/cpp/bindings/lib/map_serialization.h',
115 'src/mojo/public/cpp/bindings/lib/message.cc',
116 'src/mojo/public/cpp/bindings/lib/message_builder.cc',
117 'src/mojo/public/cpp/bindings/lib/message_builder.h',
118 'src/mojo/public/cpp/bindings/lib/message_filter.cc',
119 'src/mojo/public/cpp/bindings/lib/message_header_validator.cc',
120 'src/mojo/public/cpp/bindings/lib/message_header_validator.h',
121 'src/mojo/public/cpp/bindings/lib/message_internal.h',
122 'src/mojo/public/cpp/bindings/lib/message_queue.cc',
123 'src/mojo/public/cpp/bindings/lib/message_queue.h',
124 'src/mojo/public/cpp/bindings/lib/no_interface.cc',
125 'src/mojo/public/cpp/bindings/lib/router.cc',
126 'src/mojo/public/cpp/bindings/lib/router.h',
127 'src/mojo/public/cpp/bindings/lib/shared_data.h',
128 'src/mojo/public/cpp/bindings/lib/shared_ptr.h',
129 'src/mojo/public/cpp/bindings/lib/string_serialization.h',
130 'src/mojo/public/cpp/bindings/lib/string_serialization.cc',
131 'src/mojo/public/cpp/bindings/lib/validate_params.h',
132 'src/mojo/public/cpp/bindings/lib/validation_errors.cc',
133 'src/mojo/public/cpp/bindings/lib/validation_errors.h',
134 'src/mojo/public/cpp/bindings/lib/validation_util.cc',
135 'src/mojo/public/cpp/bindings/lib/validation_util.h',
136 # This comes from the mojo_interface_bindings_cpp_sources dependency.
137 '>@(mojom_generated_sources)',
140 'mojo_interface_bindings_cpp_sources',
144 # GN version: //mojo/public/js
145 'target_name': 'mojo_js_bindings',
146 'type': 'static_library',
151 'src/mojo/public/js/constants.cc',
152 'src/mojo/public/js/constants.h',
156 # GN version: //mojo/public/cpp/environment:standalone
157 'target_name': 'mojo_environment_standalone',
158 'type': 'static_library',
160 'src/mojo/public/c/environment/async_waiter.h',
161 'src/mojo/public/c/environment/logger.h',
162 'src/mojo/public/cpp/environment/async_waiter.h',
163 'src/mojo/public/cpp/environment/environment.h',
164 'src/mojo/public/cpp/environment/lib/async_waiter.cc',
165 'src/mojo/public/cpp/environment/lib/default_async_waiter.cc',
166 'src/mojo/public/cpp/environment/lib/default_async_waiter.h',
167 'src/mojo/public/cpp/environment/lib/default_logger.cc',
168 'src/mojo/public/cpp/environment/lib/default_logger.h',
169 'src/mojo/public/cpp/environment/lib/default_task_tracker.cc',
170 'src/mojo/public/cpp/environment/lib/default_task_tracker.h',
171 'src/mojo/public/cpp/environment/lib/environment.cc',
172 'src/mojo/public/cpp/environment/lib/logging.cc',
173 'src/mojo/public/cpp/environment/lib/scoped_task_tracking.cc',
174 'src/mojo/public/cpp/environment/lib/scoped_task_tracking.h',
175 'src/mojo/public/cpp/environment/logging.h',
176 'src/mojo/public/cpp/environment/task_tracker.h',
183 # GN version: //mojo/public/cpp/utility
184 'target_name': 'mojo_utility',
185 'type': 'static_library',
187 'src/mojo/public/cpp/utility/mutex.h',
188 'src/mojo/public/cpp/utility/run_loop.h',
189 'src/mojo/public/cpp/utility/run_loop_handler.h',
190 'src/mojo/public/cpp/utility/thread.h',
191 'src/mojo/public/cpp/utility/lib/mutex.cc',
192 'src/mojo/public/cpp/utility/lib/run_loop.cc',
193 'src/mojo/public/cpp/utility/lib/thread.cc',
194 'src/mojo/public/cpp/utility/lib/thread_local.h',
195 'src/mojo/public/cpp/utility/lib/thread_local_posix.cc',
196 'src/mojo/public/cpp/utility/lib/thread_local_win.cc',
199 # See crbug.com/342893:
202 'src/mojo/public/cpp/utility/mutex.h',
203 'src/mojo/public/cpp/utility/thread.h',
204 'src/mojo/public/cpp/utility/lib/mutex.cc',
205 'src/mojo/public/cpp/utility/lib/thread.cc',
214 'target_name': 'mojo_interface_bindings_mojom',
217 'require_interface_bindings': 0,
219 'src/mojo/public/interfaces/bindings/interface_control_messages.mojom',
222 'includes': [ 'mojom_bindings_generator_explicit.gypi' ],
225 'target_name': 'mojo_interface_bindings_cpp_sources',
228 'mojo_interface_bindings_mojom',
232 # This target can be used to introduce a dependency on interface bindings
233 # generation without introducing any side-effects in the dependent
234 # target's configuration.
235 'target_name': 'mojo_interface_bindings_generation',
238 'mojo_interface_bindings_cpp_sources',
242 # GN version: //mojo/public/c/test_support
243 'target_name': 'mojo_test_support',
245 'MOJO_TEST_SUPPORT_IMPLEMENTATION',
250 'direct_dependent_settings': {
256 'src/mojo/public/c/test_support/test_support.h',
257 'src/mojo/public/c/test_support/test_support_export.h',
258 # TODO(vtl): Convert this to thunks http://crbug.com/386799
259 'src/mojo/public/tests/test_support_private.cc',
260 'src/mojo/public/tests/test_support_private.h',
264 'type': 'static_library',
266 'type': 'shared_library',
270 # Make it a run-path dependent library.
271 'DYLIB_INSTALL_NAME_BASE': '@loader_path',
277 # GN version: //mojo/public/cpp/test_support:test_utils
278 'target_name': 'mojo_public_test_utils',
279 'type': 'static_library',
281 '../../base/base.gyp:base',
282 '../../testing/gtest.gyp:gtest',
286 'src/mojo/public/cpp/test_support/lib/test_support.cc',
287 'src/mojo/public/cpp/test_support/lib/test_utils.cc',
288 'src/mojo/public/cpp/test_support/test_utils.h',
292 # GN version: //mojo/public/cpp/bindings/tests:mojo_public_bindings_test_utils
293 'target_name': 'mojo_public_bindings_test_utils',
294 'type': 'static_library',
296 '../../base/base.gyp:base',
299 'src/mojo/public/cpp/bindings/tests/validation_test_input_parser.cc',
300 'src/mojo/public/cpp/bindings/tests/validation_test_input_parser.h',
304 'target_name': 'mojo_public_test_interfaces_mojom',
308 'src/mojo/public/interfaces/bindings/tests/math_calculator.mojom',
309 'src/mojo/public/interfaces/bindings/tests/no_module.mojom',
310 'src/mojo/public/interfaces/bindings/tests/rect.mojom',
311 'src/mojo/public/interfaces/bindings/tests/regression_tests.mojom',
312 'src/mojo/public/interfaces/bindings/tests/sample_factory.mojom',
313 'src/mojo/public/interfaces/bindings/tests/sample_import.mojom',
314 'src/mojo/public/interfaces/bindings/tests/sample_import2.mojom',
315 'src/mojo/public/interfaces/bindings/tests/sample_interfaces.mojom',
316 'src/mojo/public/interfaces/bindings/tests/sample_service.mojom',
317 'src/mojo/public/interfaces/bindings/tests/serialization_test_structs.mojom',
318 'src/mojo/public/interfaces/bindings/tests/test_structs.mojom',
319 'src/mojo/public/interfaces/bindings/tests/validation_test_interfaces.mojom',
322 'includes': [ 'mojom_bindings_generator_explicit.gypi' ],
325 # GN version: //mojo/public/interfaces/bindings/tests:test_interfaces
326 'target_name': 'mojo_public_test_interfaces',
327 'type': 'static_library',
328 'export_dependent_settings': [
332 'mojo_public_test_interfaces_mojom',
338 ['OS == "android"', {
341 # GN version: //mojo/public/java:system
342 'target_name': 'mojo_public_java',
345 'java_in_dir': 'src/mojo/public/java/system',
347 'includes': [ '../../build/java.gypi' ],
350 'target_name': 'mojo_interface_bindings_java_sources',
353 'mojo_interface_bindings_mojom',
357 # GN version: //mojo/public/java:bindings
358 'target_name': 'mojo_bindings_java',
361 'java_in_dir': 'src/mojo/public/java/bindings',
364 'mojo_interface_bindings_java_sources',
367 'includes': [ '../../build/java.gypi' ],