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_converters.gypi',
20 'mojo_variables.gypi',
25 'target_name': 'mojo',
28 'edk/mojo_edk.gyp:mojo_edk',
29 'mojo_application_manager',
30 'mojo_application_manager_unittests',
31 'mojo_apps_js_unittests',
32 'mojo_base.gyp:mojo_base',
34 'mojo_clipboard_unittests',
37 'mojo_input_events_lib',
38 'mojo_js_content_handler',
41 'mojo_native_viewport_service',
42 'mojo_network_service',
47 'mojo_surfaces_lib_unittests',
48 'mojo_surfaces_service',
50 'mojo_test_request_tracker_app',
51 'mojo_view_manager_lib_unittests',
52 'services/public/mojo_services_public.gyp:mojo_services_public',
53 'public/mojo_public.gyp:mojo_public',
58 'mojo_core_window_manager',
59 'mojo_core_window_manager_unittests',
61 'mojo_view_manager_unittests',
66 'mojo_external_application_tests',
69 ['component != "shared_library" and OS == "linux"', {
71 'mojo_python_bindings',
72 'mojo_python_embedder',
80 # GN version: //mojo/shell:external_service_bindings
81 'target_name': 'mojo_external_service_bindings',
82 'type': 'static_library',
84 'shell/external_service.mojom',
86 'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
87 'export_dependent_settings': [
88 'public/mojo_public.gyp:mojo_cpp_bindings',
91 'public/mojo_public.gyp:mojo_cpp_bindings',
95 # GN version: //mojo/spy
96 'target_name': 'mojo_spy',
97 'type': 'static_library',
99 '../base/base.gyp:base',
100 '../net/net.gyp:http_server',
101 '../url/url.gyp:url_lib',
102 'mojo_application_manager',
105 'mojom_base_output_dir': 'mojo',
107 'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
109 'spy/public/spy.mojom',
113 'spy/spy_server_impl.h',
114 'spy/spy_server_impl.cc',
115 'spy/websocket_server.cc',
116 'spy/websocket_server.h',
120 # GN version: //mojo/shell:lib
121 'target_name': 'mojo_shell_lib',
122 'type': 'static_library',
124 '../base/base.gyp:base',
125 '../base/base.gyp:base_static',
126 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
127 'edk/mojo_edk.gyp:mojo_system_impl',
128 'mojo_application_manager',
129 'mojo_base.gyp:mojo_application_chromium',
130 'mojo_base.gyp:mojo_common_lib',
131 'mojo_external_service_bindings',
133 'services/public/mojo_services_public.gyp:mojo_network_bindings',
135 'public/mojo_public.gyp:mojo_application_bindings',
137 'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
139 'shell/app_child_process.cc',
140 'shell/app_child_process.h',
141 'shell/app_child_process.mojom',
142 'shell/app_child_process_host.cc',
143 'shell/app_child_process_host.h',
144 'shell/child_process.cc',
145 'shell/child_process.h',
146 'shell/child_process_host.cc',
147 'shell/child_process_host.h',
150 'shell/dynamic_application_loader.cc',
151 'shell/dynamic_application_loader.h',
152 'shell/dynamic_service_runner.h',
153 'shell/external_application_listener_posix.cc',
154 'shell/external_application_listener_win.cc',
155 'shell/external_application_listener.h',
156 'shell/external_application_registrar.mojom',
157 'shell/incoming_connection_listener_posix.cc',
158 'shell/incoming_connection_listener_posix.h',
161 'shell/in_process_dynamic_service_runner.cc',
162 'shell/in_process_dynamic_service_runner.h',
163 'shell/mojo_url_resolver.cc',
164 'shell/mojo_url_resolver.h',
165 'shell/out_of_process_dynamic_service_runner.cc',
166 'shell/out_of_process_dynamic_service_runner.h',
169 'shell/task_runners.cc',
170 'shell/task_runners.h',
171 'shell/test_child_process.cc',
172 'shell/test_child_process.h',
173 'shell/ui_application_loader_android.cc',
174 'shell/ui_application_loader_android.h',
177 ['component=="shared_library"', {
179 '../ui/gl/gl.gyp:gl',
184 'shell/external_application_registrar_connection.cc',
185 'shell/external_application_registrar_connection.h',
190 'mojo_network_service_lib',
191 'mojo_native_viewport_service_lib',
194 'shell/network_application_loader.cc',
195 'shell/network_application_loader.h',
201 # GN version: //mojo/shell:test_support
202 'target_name': 'mojo_shell_test_support',
203 'type': 'static_library',
205 'edk/mojo_edk.gyp:mojo_system_impl',
209 'shell/shell_test_helper.cc',
210 'shell/shell_test_helper.h',
214 # GN version: //mojo/shell
215 'target_name': 'mojo_shell',
216 'type': 'executable',
218 '../base/base.gyp:base',
219 'mojo_base.gyp:mojo_common_lib',
220 'mojo_base.gyp:mojo_environment_chromium',
224 'shell/desktop/mojo_main.cc',
227 ['component=="shared_library"', {
229 '../ui/gfx/gfx.gyp:gfx',
235 # GN version: //mojo/shell:mojo_shell_tests
236 'target_name': 'mojo_shell_tests',
237 'type': '<(gtest_target_type)',
239 '../base/base.gyp:base',
240 '../base/base.gyp:base_i18n',
241 '../base/base.gyp:test_support_base',
242 '../testing/gtest.gyp:gtest',
243 '../net/net.gyp:net_test_support',
244 '../url/url.gyp:url_lib',
245 'edk/mojo_edk.gyp:mojo_system_impl',
246 'mojo_application_manager',
247 'mojo_base.gyp:mojo_common_lib',
248 'mojo_base.gyp:mojo_environment_chromium',
251 'mojo_test_request_tracker_app',
252 'mojo_test_service_bindings',
255 'shell/child_process_host_unittest.cc',
256 'shell/dynamic_application_loader_unittest.cc',
257 'shell/in_process_dynamic_service_runner_unittest.cc',
258 'shell/mojo_url_resolver_unittest.cc',
259 'shell/shell_test_base.cc',
260 'shell/shell_test_base.h',
261 'shell/shell_test_base_unittest.cc',
262 'shell/shell_test_main.cc',
265 ['OS == "android"', {
267 '../testing/android/native_test.gyp:native_test_native_code',
273 # GN version: //mojo/application_manager
274 'target_name': 'mojo_application_manager',
275 'type': '<(component)',
277 'MOJO_APPLICATION_MANAGER_IMPLEMENTATION',
280 '../base/base.gyp:base',
281 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
282 '../url/url.gyp:url_lib',
283 'services/public/mojo_services_public.gyp:mojo_content_handler_bindings',
284 'services/public/mojo_services_public.gyp:mojo_network_bindings',
285 'mojo_base.gyp:mojo_common_lib',
286 'mojo_base.gyp:mojo_environment_chromium',
287 'public/mojo_public.gyp:mojo_application_bindings',
288 '<(mojo_system_for_component)',
291 'application_manager/application_loader.cc',
292 'application_manager/application_loader.h',
293 'application_manager/application_manager.cc',
294 'application_manager/application_manager.h',
295 'application_manager/application_manager_export.h',
296 'application_manager/background_shell_application_loader.cc',
297 'application_manager/background_shell_application_loader.h',
299 'export_dependent_settings': [
300 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
301 'public/mojo_public.gyp:mojo_application_bindings',
302 'services/public/mojo_services_public.gyp:mojo_network_bindings',
306 # GN version: //mojo/application_manager:mojo_application_manager_unittests
307 'target_name': 'mojo_application_manager_unittests',
308 'type': 'executable',
310 '../base/base.gyp:base',
311 '../testing/gtest.gyp:gtest',
312 '../url/url.gyp:url_lib',
313 'edk/mojo_edk.gyp:mojo_run_all_unittests',
314 'mojo_application_manager',
315 'mojo_base.gyp:mojo_application_chromium',
316 'mojo_base.gyp:mojo_common_lib',
317 'mojo_base.gyp:mojo_environment_chromium',
318 'public/mojo_public.gyp:mojo_cpp_bindings',
320 'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ],
322 'application_manager/application_manager_unittest.cc',
323 'application_manager/background_shell_application_loader_unittest.cc',
324 'application_manager/test.mojom',
328 # GN version: //mojo/cc
329 'target_name': 'mojo_cc_support',
330 'type': 'static_library',
332 '../base/base.gyp:base',
334 '../cc/cc.gyp:cc_surfaces',
335 '../skia/skia.gyp:skia',
336 '../gpu/gpu.gyp:gles2_implementation',
339 'services/public/mojo_services_public.gyp:mojo_surfaces_bindings',
342 'mojo_public_gles2_for_loadable_module.gypi',
344 'export_dependent_settings': [
345 'services/public/mojo_services_public.gyp:mojo_surfaces_bindings',
348 'cc/context_provider_mojo.cc',
349 'cc/context_provider_mojo.h',
350 'cc/direct_output_surface.cc',
351 'cc/direct_output_surface.h',
352 'cc/output_surface_mojo.cc',
353 'cc/output_surface_mojo.h',
357 # GN version: //mojo/gles2
358 'target_name': 'mojo_gles2_impl',
359 'type': '<(component)',
361 '../base/base.gyp:base',
362 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
363 '../gpu/gpu.gyp:command_buffer_client',
364 '../gpu/gpu.gyp:command_buffer_common',
365 '../gpu/gpu.gyp:gles2_cmd_helper',
366 '../gpu/gpu.gyp:gles2_implementation',
367 'mojo_base.gyp:mojo_environment_chromium',
369 'services/public/mojo_services_public.gyp:mojo_gpu_bindings',
370 '<(mojo_system_for_component)',
374 'GL_GLEXT_PROTOTYPES',
375 'MOJO_GLES2_IMPLEMENTATION',
376 'MOJO_GLES2_IMPL_IMPLEMENTATION',
377 'MOJO_USE_GLES2_IMPL'
379 'direct_dependent_settings': {
384 'export_dependent_settings': [
385 'services/public/mojo_services_public.gyp:mojo_gpu_bindings',
388 'gles2/command_buffer_client_impl.cc',
389 'gles2/command_buffer_client_impl.h',
390 'gles2/gles2_impl_export.h',
391 'gles2/gles2_impl.cc',
392 'gles2/gles2_context.cc',
393 'gles2/gles2_context.h',
395 'all_dependent_settings': {
396 # Ensures that dependent projects import the core functions on Windows.
397 'defines': ['MOJO_USE_GLES2_IMPL'],
401 # GN version: //mojo/bindings/js/tests:mojo_js_unittests
402 'target_name': 'mojo_js_unittests',
403 'type': 'executable',
405 '../gin/gin.gyp:gin_test',
406 'edk/mojo_edk.gyp:mojo_common_test_support',
407 'edk/mojo_edk.gyp:mojo_run_all_unittests',
408 'mojo_base.gyp:mojo_js_bindings_lib',
409 'public/mojo_public.gyp:mojo_environment_standalone',
410 'public/mojo_public.gyp:mojo_public_test_interfaces',
411 'public/mojo_public.gyp:mojo_utility',
414 'bindings/js/tests/run_js_tests.cc',
422 'target_name': 'mojo_native_viewport_java',
425 '../base/base.gyp:base_java',
428 'java_in_dir': '<(DEPTH)/mojo/services/native_viewport/android',
430 'includes': [ '../build/java.gypi' ],
433 'target_name': 'libmojo_shell',
434 'type': 'shared_library',
436 '../base/base.gyp:base',
437 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
438 '../ui/gfx/gfx.gyp:gfx',
439 '../ui/gfx/gfx.gyp:gfx_geometry',
440 '../ui/gl/gl.gyp:gl',
441 'mojo_base.gyp:mojo_common_lib',
442 'mojo_base.gyp:mojo_environment_chromium',
443 'mojo_base.gyp:mojo_jni_headers',
445 'public/mojo_public.gyp:mojo_application_bindings',
448 'shell/android/library_loader.cc',
449 'shell/android/mojo_main.cc',
450 'shell/android/mojo_main.h',
454 'target_name': 'mojo_shell_apk',
457 '../base/base.gyp:base_java',
458 '../net/net.gyp:net_java',
459 'mojo_native_viewport_java',
463 'apk_name': 'MojoShell',
464 'java_in_dir': '<(DEPTH)/mojo/shell/android/apk',
465 'resource_dir': '<(DEPTH)/mojo/shell/android/apk/res',
466 'native_lib_target': 'libmojo_shell',
468 'includes': [ '../build/java_apk.gypi' ],
475 # GN version: //mojo/shell:mojo_external_application_tests
476 'target_name': 'mojo_external_application_tests',
477 'type': '<(gtest_target_type)',
479 '../base/base.gyp:base',
480 '../base/base.gyp:test_support_base',
481 '../testing/gtest.gyp:gtest',
482 '../net/net.gyp:net_test_support',
483 '../url/url.gyp:url_lib',
484 'edk/mojo_edk.gyp:mojo_system_impl',
485 'mojo_application_manager',
486 'mojo_base.gyp:mojo_common_lib',
487 'mojo_base.gyp:mojo_environment_chromium',
491 'shell/incoming_connection_listener_unittest.cc',
492 'shell/external_application_listener_unittest.cc',
493 'shell/external_application_test_main.cc',
501 # GN version: //mojo/aura
502 'target_name': 'mojo_aura_support',
503 'type': 'static_library',
506 '../ui/aura/aura.gyp:aura',
507 '../ui/compositor/compositor.gyp:compositor',
508 '../ui/events/events.gyp:events',
509 '../ui/events/events.gyp:events_base',
513 'mojo_view_manager_lib',
514 'public/mojo_public.gyp:mojo_application_base',
515 'public/mojo_public.gyp:mojo_application_bindings',
516 'services/public/mojo_services_public.gyp:mojo_native_viewport_bindings',
519 'mojo_public_gles2_for_loadable_module.gypi',
524 'aura/screen_mojo.cc',
525 'aura/screen_mojo.h',
526 'aura/surface_binding.cc',
527 'aura/surface_binding.h',
528 'aura/surface_context_factory.cc',
529 'aura/surface_context_factory.h',
530 'aura/window_tree_host_mojo.cc',
531 'aura/window_tree_host_mojo.h',
535 # GN version: //mojo/views
536 'target_name': 'mojo_views_support',
537 'type': 'static_library',
539 '../base/base.gyp:base',
540 '../base/base.gyp:base_i18n',
541 '../skia/skia.gyp:skia',
542 '../third_party/icu/icu.gyp:icui18n',
543 '../third_party/icu/icu.gyp:icuuc',
544 '../ui/aura/aura.gyp:aura',
545 '../ui/base/ui_base.gyp:ui_base',
546 '../ui/views/views.gyp:views',
547 '../ui/wm/wm.gyp:wm',
549 'mojo_views_support_internal',
550 'mojo_view_manager_lib',
551 'services/public/mojo_services_public.gyp:mojo_view_manager_bindings',
554 'views/input_method_mojo_linux.cc',
555 'views/input_method_mojo_linux.h',
556 'views/native_widget_view_manager.cc',
557 'views/native_widget_view_manager.h',
558 'views/views_init.cc',
559 'views/views_init.h',
563 # GN version: //mojo/views:views_internal
564 'target_name': 'mojo_views_support_internal',
565 'type': '<(component)',
567 '../base/base.gyp:base',
568 '../base/base.gyp:base_i18n',
569 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
570 '../skia/skia.gyp:skia',
571 '../third_party/icu/icu.gyp:icui18n',
572 '../third_party/icu/icu.gyp:icuuc',
573 '../ui/base/ui_base.gyp:ui_base',
574 '../ui/gfx/gfx.gyp:gfx',
577 'views/mojo_views_export.h',
578 'views/views_init_internal.cc',
579 'views/views_init_internal.h',
582 'MOJO_VIEWS_IMPLEMENTATION',
586 # GN version: //mojo/services/public/cpp/view_manager/lib:run_unittests
587 'target_name': 'mojo_view_manager_run_unittests',
588 'type': 'static_library',
590 '../base/base.gyp:base',
591 '../base/base.gyp:test_support_base',
594 'services/public/cpp/view_manager/lib/view_manager_test_suite.cc',
595 'services/public/cpp/view_manager/lib/view_manager_test_suite.h',
596 'services/public/cpp/view_manager/lib/view_manager_unittests.cc',
601 '../ui/gfx/x/gfx_x11.gyp:gfx_x11',
608 ['component!="shared_library" and OS=="linux"', {
611 # GN version: //mojo/public/python:system
612 'target_name': 'mojo_python_system',
614 'python_base_module': 'mojo',
615 'python_cython_module': 'system',
618 'public/python/mojo/c_core.pxd',
619 'public/python/mojo/c_environment.pxd',
620 'public/python/mojo/system.pyx',
621 'public/python/src/python_system_helper.cc',
622 'public/python/src/python_system_helper.h',
625 'public/mojo_public.gyp:mojo_environment_standalone',
626 'public/mojo_public.gyp:mojo_system',
627 'public/mojo_public.gyp:mojo_utility',
629 'includes': [ '../third_party/cython/cython_compiler.gypi' ],
632 # GN version: //mojo/python:embedder
633 'target_name': 'mojo_python_embedder',
634 'type': 'loadable_module',
636 'python_base_module': 'mojo',
637 'python_cython_module': 'embedder',
640 'python/system/mojo/embedder.pyx',
643 'edk/mojo_edk.gyp:mojo_system_impl',
645 'includes': [ '../third_party/cython/cython_compiler.gypi' ],
648 # GN version: //mojo/public/python:bindings
649 'target_name': 'mojo_python_bindings',
652 'python_base_module': 'mojo/bindings',
655 'public/python/mojo/bindings/__init__.py',
656 'public/python/mojo/bindings/descriptor.py',
657 'public/python/mojo/bindings/messaging.py',
658 'public/python/mojo/bindings/promise.py',
659 'public/python/mojo/bindings/reflection.py',
660 'public/python/mojo/bindings/serialization.py',
663 'mojo_python_system',
665 'includes': [ '../third_party/cython/python_module.gypi' ],
668 # GN version: //mojo/python
669 'target_name': 'mojo_python',
672 'python_base_module': 'mojo',
675 'public/python/mojo/__init__.py',
678 'mojo_python_bindings',
679 'mojo_python_embedder',
680 'mojo_python_system',
682 # The python module need to be copied to their destinations
685 'action_name': 'Copy system module.',
687 '<(DEPTH)/build/cp.py',
688 '<(PRODUCT_DIR)/libmojo_python_system.so',
691 '<(PRODUCT_DIR)/python/mojo/system.so',
700 'action_name': 'Copy embedder module.',
702 '<(DEPTH)/build/cp.py',
703 '<(PRODUCT_DIR)/libmojo_python_embedder.so',
706 '<(PRODUCT_DIR)/python/mojo/embedder.so',
715 'includes': [ '../third_party/cython/python_module.gypi' ],
719 ['component!="shared_library" and OS=="linux" and test_isolation_mode!="noop"', {
722 'target_name': 'mojo_python_unittests_run',
726 'public/mojo_public.gyp:mojo_public_test_interfaces',
729 '../build/isolate.gypi',
732 'mojo_python_unittests.isolate',
737 ['test_isolation_mode != "noop"', {
740 'target_name': 'mojo_js_unittests_run',
746 '../build/isolate.gypi',
749 'mojo_js_unittests.isolate',