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.
8 ['mojo_shell_debug_url != ""', {
11 'MOJO_SHELL_DEBUG_URL="<(mojo_shell_debug_url)"',
18 'mojo_shell_debug_url%': "",
28 'target_name': 'mojo',
31 'mojo_apps_js_unittests',
32 'mojo_compositor_app',
34 'mojo_common_unittests',
40 'mojo_message_generator',
41 'mojo_native_viewport_service',
42 'mojo_network_service',
43 'mojo_pepper_container_app',
44 'mojo_public_test_utils',
45 'mojo_public_bindings_unittests',
46 'mojo_public_environment_unittests',
47 'mojo_public_system_perftests',
48 'mojo_public_system_unittests',
49 'mojo_public_utility_unittests',
51 'mojo_service_manager',
52 'mojo_service_manager_unittests',
58 'mojo_system_unittests',
61 'mojo_view_manager_lib',
62 'mojo_view_manager_lib_unittests',
69 'mojo_aura_demo_init',
74 'mojo_window_manager',
76 'mojo_view_manager_unittests',
84 'libmojo_system_java',
91 'mojo_dbus_echo_service',
97 'target_name': 'mojo_external_service_bindings',
98 'type': 'static_library',
100 'shell/external_service.mojom',
102 'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
103 'export_dependent_settings': [
111 'target_name': 'mojo_run_all_unittests',
112 'type': 'static_library',
114 '../base/base.gyp:base',
115 '../base/base.gyp:test_support_base',
116 '../testing/gtest.gyp:gtest',
119 'mojo_test_support_impl',
122 'common/test/run_all_unittests.cc',
126 'target_name': 'mojo_run_all_perftests',
127 'type': 'static_library',
129 '../base/base.gyp:test_support_base',
132 'mojo_test_support_impl',
135 'common/test/run_all_perftests.cc',
139 'target_name': 'mojo_system_impl',
140 'type': '<(component)',
142 '../base/base.gyp:base',
143 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
146 'MOJO_SYSTEM_IMPL_IMPLEMENTATION',
147 'MOJO_SYSTEM_IMPLEMENTATION',
148 'MOJO_USE_SYSTEM_IMPL',
151 'embedder/embedder.cc',
152 'embedder/embedder.h',
153 'embedder/platform_channel_pair.cc',
154 'embedder/platform_channel_pair.h',
155 'embedder/platform_channel_pair_posix.cc',
156 'embedder/platform_channel_pair_win.cc',
157 'embedder/platform_channel_utils_posix.cc',
158 'embedder/platform_channel_utils_posix.h',
159 'embedder/platform_handle.cc',
160 'embedder/platform_handle.h',
161 'embedder/platform_handle_utils.h',
162 'embedder/platform_handle_utils_posix.cc',
163 'embedder/platform_handle_utils_win.cc',
164 'embedder/platform_handle_vector.h',
165 'embedder/scoped_platform_handle.h',
168 'system/constants.h',
171 'system/data_pipe.cc',
172 'system/data_pipe.h',
173 'system/data_pipe_consumer_dispatcher.cc',
174 'system/data_pipe_consumer_dispatcher.h',
175 'system/data_pipe_producer_dispatcher.cc',
176 'system/data_pipe_producer_dispatcher.h',
177 'system/dispatcher.cc',
178 'system/dispatcher.h',
179 'system/entrypoints.cc',
180 'system/handle_table.cc',
181 'system/handle_table.h',
182 'system/local_data_pipe.cc',
183 'system/local_data_pipe.h',
184 'system/local_message_pipe_endpoint.cc',
185 'system/local_message_pipe_endpoint.h',
186 'system/mapping_table.cc',
187 'system/mapping_table.h',
190 'system/message_in_transit.cc',
191 'system/message_in_transit.h',
192 'system/message_in_transit_queue.cc',
193 'system/message_in_transit_queue.h',
194 'system/message_pipe.cc',
195 'system/message_pipe.h',
196 'system/message_pipe_dispatcher.cc',
197 'system/message_pipe_dispatcher.h',
198 'system/message_pipe_endpoint.cc',
199 'system/message_pipe_endpoint.h',
200 'system/options_validation.h',
201 'system/platform_handle_dispatcher.cc',
202 'system/platform_handle_dispatcher.h',
203 'system/proxy_message_pipe_endpoint.cc',
204 'system/proxy_message_pipe_endpoint.h',
205 'system/raw_channel.cc',
206 'system/raw_channel.h',
207 'system/raw_channel_posix.cc',
208 'system/raw_channel_win.cc',
209 'system/raw_shared_buffer.cc',
210 'system/raw_shared_buffer.h',
211 'system/raw_shared_buffer_posix.cc',
212 'system/raw_shared_buffer_win.cc',
213 'system/shared_buffer_dispatcher.cc',
214 'system/shared_buffer_dispatcher.h',
215 'system/simple_dispatcher.cc',
216 'system/simple_dispatcher.h',
217 'system/transport_data.cc',
218 'system/transport_data.h',
221 'system/waiter_list.cc',
222 'system/waiter_list.h',
224 # TODO(vtl): It's a little unfortunate that these end up in the same
225 # component as non-test-only code. In the static build, this code should
226 # hopefully be dead-stripped.
227 'embedder/test_embedder.cc',
228 'embedder/test_embedder.h',
230 'all_dependent_settings': {
231 # Ensures that dependent projects import the core functions on Windows.
232 'defines': ['MOJO_USE_SYSTEM_IMPL'],
236 'target_name': 'mojo_system_unittests',
237 'type': 'executable',
239 '../base/base.gyp:base',
240 '../base/base.gyp:run_all_unittests',
241 '../testing/gtest.gyp:gtest',
242 'mojo_common_test_support',
246 'embedder/embedder_unittest.cc',
247 'embedder/platform_channel_pair_posix_unittest.cc',
248 'system/channel_unittest.cc',
249 'system/core_unittest.cc',
250 'system/core_test_base.cc',
251 'system/core_test_base.h',
252 'system/data_pipe_unittest.cc',
253 'system/dispatcher_unittest.cc',
254 'system/local_data_pipe_unittest.cc',
255 'system/memory_unittest.cc',
256 'system/message_pipe_dispatcher_unittest.cc',
257 'system/message_pipe_unittest.cc',
258 'system/multiprocess_message_pipe_unittest.cc',
259 'system/options_validation_unittest.cc',
260 'system/platform_handle_dispatcher_unittest.cc',
261 'system/raw_channel_unittest.cc',
262 'system/raw_shared_buffer_unittest.cc',
263 'system/remote_message_pipe_unittest.cc',
264 'system/shared_buffer_dispatcher_unittest.cc',
265 'system/simple_dispatcher_unittest.cc',
266 'system/test_utils.cc',
267 'system/test_utils.h',
268 'system/waiter_list_unittest.cc',
269 'system/waiter_test_utils.cc',
270 'system/waiter_test_utils.h',
271 'system/waiter_unittest.cc',
275 'target_name': 'mojo_gles2_impl',
276 'type': '<(component)',
278 '../base/base.gyp:base',
279 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
280 '../gpu/gpu.gyp:command_buffer_client',
281 '../gpu/gpu.gyp:command_buffer_common',
282 '../gpu/gpu.gyp:gles2_cmd_helper',
283 '../gpu/gpu.gyp:gles2_implementation',
285 'mojo_gles2_bindings',
286 'mojo_environment_chromium',
290 'MOJO_GLES2_IMPL_IMPLEMENTATION',
293 'gles2/command_buffer_client_impl.cc',
294 'gles2/command_buffer_client_impl.h',
295 'gles2/gles2_impl_export.h',
296 'gles2/gles2_support_impl.cc',
297 'gles2/gles2_support_impl.h',
298 'gles2/gles2_context.cc',
299 'gles2/gles2_context.h',
303 'target_name': 'mojo_test_support_impl',
304 'type': 'static_library',
306 '../base/base.gyp:base',
309 'common/test/test_support_impl.cc',
310 'common/test/test_support_impl.h',
314 'target_name': 'mojo_common_lib',
315 'type': '<(component)',
317 'MOJO_COMMON_IMPLEMENTATION',
320 '../base/base.gyp:base',
321 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
324 'export_dependent_settings': [
325 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
329 'common/channel_init.cc',
330 'common/channel_init.h',
331 'common/common_type_converters.cc',
332 'common/common_type_converters.h',
333 'common/data_pipe_utils.cc',
334 'common/data_pipe_utils.h',
335 'common/environment_data.cc',
336 'common/environment_data.h',
337 'common/handle_watcher.cc',
338 'common/handle_watcher.h',
339 'common/message_pump_mojo.cc',
340 'common/message_pump_mojo.h',
341 'common/message_pump_mojo_handler.h',
342 'common/time_helper.cc',
343 'common/time_helper.h',
347 'target_name': 'mojo_common_test_support',
348 'type': 'static_library',
350 '../base/base.gyp:base',
351 '../base/base.gyp:test_support_base',
352 '../testing/gtest.gyp:gtest',
356 'common/test/multiprocess_test_helper.cc',
357 'common/test/multiprocess_test_helper.h',
358 'common/test/test_utils.h',
359 'common/test/test_utils_posix.cc',
360 'common/test/test_utils_win.cc',
364 'target_name': 'mojo_common_unittests',
365 'type': 'executable',
367 '../base/base.gyp:base',
368 '../base/base.gyp:base_message_loop_tests',
369 '../testing/gtest.gyp:gtest',
371 'mojo_environment_chromium',
373 'mojo_common_test_support',
374 'mojo_public_test_utils',
375 'mojo_run_all_unittests',
378 'common/common_type_converters_unittest.cc',
379 'common/handle_watcher_unittest.cc',
380 'common/message_pump_mojo_unittest.cc',
381 'common/test/multiprocess_test_helper_unittest.cc',
385 'target_name': 'mojo_environment_chromium',
386 'type': 'static_library',
389 'mojo_environment_chromium_impl',
392 'environment/default_async_waiter.cc',
393 'environment/environment.cc',
398 'export_dependent_settings': [
399 'mojo_environment_chromium_impl',
403 'target_name': 'mojo_environment_chromium_impl',
404 'type': '<(component)',
406 'MOJO_ENVIRONMENT_IMPL_IMPLEMENTATION',
409 '../base/base.gyp:base',
410 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
414 'environment/default_async_waiter_impl.cc',
415 'environment/default_async_waiter_impl.h',
422 'target_name': 'mojo_service_manager',
423 'type': '<(component)',
425 'MOJO_SERVICE_MANAGER_IMPLEMENTATION',
428 '../base/base.gyp:base',
429 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
430 '../net/net.gyp:net',
431 '../url/url.gyp:url_lib',
433 'mojo_environment_chromium',
434 'mojo_service_provider_bindings',
438 'service_manager/background_service_loader.cc',
439 'service_manager/background_service_loader.h',
440 'service_manager/service_loader.h',
441 'service_manager/service_manager.cc',
442 'service_manager/service_manager.h',
443 'service_manager/service_manager_export.h',
445 'export_dependent_settings': [
446 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
447 'mojo_service_provider_bindings',
451 'target_name': 'mojo_spy',
452 'type': 'static_library',
454 '../base/base.gyp:base',
455 '../base/base.gyp:base_static',
456 '../net/net.gyp:http_server',
457 '../url/url.gyp:url_lib',
458 'mojo_service_manager',
463 'spy/websocket_server.cc',
464 'spy/websocket_server.h',
468 'target_name': 'mojo_shell_lib',
469 'type': 'static_library',
471 '../base/base.gyp:base',
472 '../base/base.gyp:base_static',
473 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
474 '../net/net.gyp:net',
475 '../url/url.gyp:url_lib',
476 'mojo_external_service_bindings',
478 'mojo_native_viewport_service',
479 'mojo_network_bindings',
480 'mojo_service_manager',
481 'mojo_service_provider_bindings',
485 'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
487 'shell/app_child_process.cc',
488 'shell/app_child_process.h',
489 'shell/app_child_process.mojom',
490 'shell/app_child_process_host.cc',
491 'shell/app_child_process_host.h',
492 'shell/child_process.cc',
493 'shell/child_process.h',
494 'shell/child_process_host.cc',
495 'shell/child_process_host.h',
498 'shell/dbus_service_loader_linux.cc',
499 'shell/dbus_service_loader_linux.h',
500 'shell/dynamic_service_loader.cc',
501 'shell/dynamic_service_loader.h',
502 'shell/dynamic_service_runner.h',
505 'shell/in_process_dynamic_service_runner.cc',
506 'shell/in_process_dynamic_service_runner.h',
507 'shell/keep_alive.cc',
508 'shell/keep_alive.h',
509 'shell/mojo_url_resolver.cc',
510 'shell/mojo_url_resolver.h',
511 'shell/out_of_process_dynamic_service_runner.cc',
512 'shell/out_of_process_dynamic_service_runner.h',
517 'shell/task_runners.cc',
518 'shell/task_runners.h',
519 'shell/test_child_process.cc',
520 'shell/test_child_process.h',
521 'shell/view_manager_loader.cc',
522 'shell/view_manager_loader.h',
527 '../build/linux/system.gyp:dbus',
528 '../dbus/dbus.gyp:dbus',
533 # These are only necessary as long as we hard code use of ViewManager.
534 '../skia/skia.gyp:skia',
538 'mojo_view_manager_bindings',
542 'shell/view_manager_loader.cc',
543 'shell/view_manager_loader.h',
549 'target_name': 'mojo_shell_test_support',
550 'type': 'static_library',
552 '../base/base.gyp:base',
553 '../base/base.gyp:base_static',
554 '../url/url.gyp:url_lib',
555 'mojo_service_manager',
560 'shell/shell_test_helper.cc',
561 'shell/shell_test_helper.h',
565 'target_name': 'mojo_shell',
566 'type': 'executable',
568 '../base/base.gyp:base',
569 '../ui/gl/gl.gyp:gl',
570 '../url/url.gyp:url_lib',
572 'mojo_environment_chromium',
573 'mojo_service_manager',
578 'shell/desktop/mojo_main.cc',
582 'target_name': 'mojo_shell_tests',
583 'type': 'executable',
585 '../base/base.gyp:base',
586 '../base/base.gyp:test_support_base',
587 '../testing/gtest.gyp:gtest',
588 # TODO(vtl): We don't currently need this, but I imagine we will soon.
589 # '../ui/gl/gl.gyp:gl',
590 '../url/url.gyp:url_lib',
592 'mojo_environment_chromium',
593 'mojo_service_manager',
596 'mojo_test_service_bindings',
599 'shell/child_process_host_unittest.cc',
600 'shell/shell_test_base.cc',
601 'shell/shell_test_base.h',
602 'shell/shell_test_base_unittest.cc',
603 'shell/shell_test_main.cc',
607 'target_name': 'mojo_service_manager_unittests',
608 'type': 'executable',
610 '../base/base.gyp:base',
611 '../testing/gtest.gyp:gtest',
612 '../url/url.gyp:url_lib',
615 'mojo_environment_chromium',
616 'mojo_run_all_unittests',
617 'mojo_service_manager',
620 'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
622 'service_manager/service_manager_unittest.cc',
623 'service_manager/test.mojom',
627 'target_name': 'mojo_js_bindings_lib',
628 'type': 'static_library',
630 '../base/base.gyp:base',
631 '../gin/gin.gyp:gin',
632 '../v8/tools/gyp/v8.gyp:v8',
635 'export_dependent_settings': [
636 '../base/base.gyp:base',
637 '../gin/gin.gyp:gin',
641 'bindings/js/core.cc',
642 'bindings/js/core.h',
643 'bindings/js/handle.cc',
644 'bindings/js/handle.h',
645 'bindings/js/support.cc',
646 'bindings/js/support.h',
647 'bindings/js/waiting_callback.cc',
648 'bindings/js/waiting_callback.h',
652 'target_name': 'mojo_js_unittests',
653 'type': 'executable',
655 '../gin/gin.gyp:gin_test',
656 'mojo_common_test_support',
657 'mojo_js_bindings_lib',
658 'mojo_run_all_unittests',
659 'mojo_public_test_interfaces',
662 'bindings/js/run_js_tests.cc',
666 'target_name': 'mojo_message_generator',
667 'type': 'executable',
669 '../base/base.gyp:base',
670 '../testing/gtest.gyp:gtest',
673 'mojo_environment_chromium',
677 'tools/message_generator.cc',
681 'target_name': 'mojo_cc_support',
682 'type': 'static_library',
684 '../base/base.gyp:base',
686 '../skia/skia.gyp:skia',
687 '../gpu/gpu.gyp:gles2_implementation',
691 'cc/context_provider_mojo.cc',
692 'cc/context_provider_mojo.h',
700 'target_name': 'mojo_jni_headers',
703 'mojo_java_set_jni_headers',
706 'android/javatests/src/org/chromium/mojo/MojoTestCase.java',
707 'android/system/src/org/chromium/mojo/system/impl/CoreImpl.java',
708 'services/native_viewport/android/src/org/chromium/mojo/NativeViewportAndroid.java',
709 'shell/android/apk/src/org/chromium/mojo_shell_apk/MojoMain.java',
712 'jni_gen_package': 'mojo',
714 'includes': [ '../build/jni_generator.gypi' ],
717 'target_name': 'mojo_system_java',
720 '../base/base.gyp:base_java',
724 'java_in_dir': '<(DEPTH)/mojo/android/system',
726 'includes': [ '../build/java.gypi' ],
729 'target_name': 'libmojo_system_java',
730 'type': 'static_library',
732 '../base/base.gyp:base',
733 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
735 'mojo_environment_chromium',
737 'mojo_service_provider_bindings',
741 'android/system/core_impl.cc',
742 'android/system/core_impl.h',
746 'target_name': 'libmojo_java_unittest',
747 'type': 'shared_library',
749 '../base/base.gyp:base',
750 '../base/base.gyp:test_support_base',
751 'libmojo_system_java',
755 'android/javatests/mojo_test_case.cc',
756 'android/javatests/mojo_test_case.h',
757 'android/javatests/init_library.cc',
761 'target_name': 'mojo_test_apk',
764 'mojo_bindings_java',
765 'mojo_public_test_interfaces',
767 '../base/base.gyp:base_java_test_support',
770 'apk_name': 'MojoTest',
771 'java_in_dir': '<(DEPTH)/mojo/android/javatests',
772 'resource_dir': '<(DEPTH)/mojo/android/javatests/apk',
773 'native_lib_target': 'libmojo_java_unittest',
775 # Given that this apk tests itself, it needs to bring emma with it
778 ['emma_coverage != 0', {
779 'emma_instrument': 1,
783 'includes': [ '../build/java_apk.gypi' ],
786 'target_name': 'mojo_native_viewport_java',
789 '../base/base.gyp:base_java',
792 'java_in_dir': '<(DEPTH)/mojo/services/native_viewport/android',
794 'includes': [ '../build/java.gypi' ],
797 'target_name': 'mojo_java_set_jni_headers',
800 'jni_gen_package': 'mojo',
801 'input_java_class': 'java/util/HashSet.class',
803 'includes': [ '../build/jar_file_jni_generator.gypi' ],
806 'target_name': 'libmojo_shell',
807 'type': 'shared_library',
809 '../base/base.gyp:base',
810 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
811 '../ui/gfx/gfx.gyp:gfx',
812 '../ui/gfx/gfx.gyp:gfx_geometry',
813 '../ui/gl/gl.gyp:gl',
815 'mojo_environment_chromium',
817 'mojo_service_provider_bindings',
821 'shell/android/library_loader.cc',
822 'shell/android/mojo_main.cc',
823 'shell/android/mojo_main.h',
827 'target_name': 'mojo_shell_apk',
830 '../base/base.gyp:base_java',
831 '../net/net.gyp:net_java',
832 'mojo_native_viewport_java',
836 'apk_name': 'MojoShell',
837 'java_in_dir': '<(DEPTH)/mojo/shell/android/apk',
838 'resource_dir': '<(DEPTH)/mojo/shell/android/apk/res',
839 'native_lib_target': 'libmojo_shell',
841 'includes': [ '../build/java_apk.gypi' ],
848 'target_name': 'mojo_dbus_service',
849 'type': 'static_library',
851 '../base/base.gyp:base',
852 '../build/linux/system.gyp:dbus',
853 '../dbus/dbus.gyp:dbus',
855 'mojo_external_service_bindings',
860 'dbus/dbus_external_service.h',
861 'dbus/dbus_external_service.cc',
866 ['test_isolation_mode != "noop"', {
869 'target_name': 'mojo_js_unittests_run',
875 '../build/isolate.gypi',
876 'mojo_js_unittests.isolate',
879 'mojo_js_unittests.isolate',
887 'target_name': 'mojo_aura_support',
888 'type': 'static_library',
891 '../ui/aura/aura.gyp:aura',
892 '../ui/compositor/compositor.gyp:compositor',
893 '../ui/events/events.gyp:events',
894 '../ui/events/events.gyp:events_base',
895 '../ui/gl/gl.gyp:gl',
896 '../webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',
899 'mojo_native_viewport_bindings',
904 'aura/context_factory_mojo.cc',
905 'aura/context_factory_mojo.h',
906 'aura/screen_mojo.cc',
907 'aura/screen_mojo.h',
908 'aura/window_tree_host_mojo.cc',
909 'aura/window_tree_host_mojo.h',
910 'aura/window_tree_host_mojo_delegate.h',
914 'target_name': 'mojo_views_support',
915 'type': 'static_library',
917 '../base/base.gyp:base',
918 '../base/base.gyp:base_i18n',
919 '../skia/skia.gyp:skia',
920 '../skia/skia.gyp:skia',
921 '../third_party/icu/icu.gyp:icui18n',
922 '../third_party/icu/icu.gyp:icuuc',
923 '../ui/aura/aura.gyp:aura',
924 '../ui/base/ui_base.gyp:ui_base',
925 '../ui/views/views.gyp:views',
926 '../ui/wm/wm.gyp:wm',
930 'views/native_widget_view_manager.cc',
931 'views/native_widget_view_manager.h',
932 'views/views_init.cc',
933 'views/views_init.h',