| # Copyright 2014 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//mojo/public/tools/bindings/mojom.gni") |
| import("//build/config/ui.gni") |
| |
| executable("mojo_shell") { |
| deps = [ |
| ":lib", |
| "//base", |
| "//mojo/common", |
| "//mojo/environment:chromium", |
| "//mojo/application_manager", |
| "//mojo/system", |
| "//third_party/icu", |
| "//ui/gl", |
| "//url", |
| ] |
| |
| if (use_ozone) { |
| deps += [ "//ui/ozone" ] |
| } |
| |
| sources = [ |
| "desktop/mojo_main.cc" |
| ] |
| } |
| source_set("lib") { |
| deps = [ |
| ":app_child_process_bindings", |
| ":external_service_bindings", |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| "//base:base_static", |
| "//mojo/application_manager", |
| "//mojo/common", |
| "//mojo/gles2", |
| "//mojo/public/cpp/application:chromium", |
| "//mojo/public/gles2", |
| "//mojo/public/interfaces/application", |
| "//mojo/services/native_viewport", |
| "//mojo/services/public/interfaces/native_viewport", |
| "//mojo/services/public/interfaces/network", |
| "//mojo/spy", |
| "//mojo/system", |
| "//net", |
| "//url", |
| ] |
| |
| sources = [ |
| "app_child_process.cc", |
| "app_child_process.h", |
| "app_child_process_host.cc", |
| "app_child_process_host.h", |
| "child_process.cc", |
| "child_process.h", |
| "child_process_host.cc", |
| "child_process_host.h", |
| "context.cc", |
| "context.h", |
| "dbus_application_loader_linux.cc", |
| "dbus_application_loader_linux.h", |
| "dynamic_application_loader.cc", |
| "dynamic_application_loader.h", |
| "dynamic_service_runner.h", |
| "init.cc", |
| "init.h", |
| "in_process_dynamic_service_runner.cc", |
| "in_process_dynamic_service_runner.h", |
| "keep_alive.cc", |
| "keep_alive.h", |
| "mojo_url_resolver.cc", |
| "mojo_url_resolver.h", |
| "out_of_process_dynamic_service_runner.cc", |
| "out_of_process_dynamic_service_runner.h", |
| "run.cc", |
| "run.h", |
| "switches.cc", |
| "switches.h", |
| "task_runners.cc", |
| "task_runners.h", |
| "test_child_process.cc", |
| "test_child_process.h", |
| "ui_application_loader_android.cc", |
| "ui_application_loader_android.h", |
| ] |
| |
| if (is_linux) { |
| deps += [ |
| "//dbus" |
| ] |
| } else if (is_android) { |
| deps += [ |
| "//mojo/services/network", |
| ] |
| sources += [ |
| "network_application_loader.cc", |
| "network_application_loader.h", |
| ] |
| } |
| if (use_aura) { |
| deps += [ |
| # These are only necessary as long as we hard code use of ViewManager. |
| "//skia", |
| "//mojo/services/view_manager", |
| "//mojo/services/public/interfaces/view_manager", |
| ] |
| sources += [ |
| "view_manager_loader.cc", |
| "view_manager_loader.h", |
| ] |
| } |
| } |
| |
| mojom("app_child_process_bindings") { |
| sources = [ |
| "app_child_process.mojom" |
| ] |
| } |
| |
| mojom("external_service_bindings") { |
| sources = [ |
| "external_service.mojom" |
| ] |
| } |
| |
| test("mojo_shell_tests") { |
| deps = [ |
| ":lib", |
| "//base", |
| "//base:i18n", |
| "//base/test:test_support", |
| "//testing/gtest", |
| "//net:test_support", |
| "//url", |
| "//mojo/application_manager", |
| "//mojo/services/test_service:bindings", |
| "//mojo/common", |
| "//mojo/environment:chromium", |
| "//mojo/system", |
| ] |
| |
| datadeps = [ |
| "//mojo/services/test_service:mojo_test_app", |
| "//mojo/services/test_service:mojo_test_request_tracker_app", |
| ] |
| |
| sources = [ |
| "child_process_host_unittest.cc", |
| "dynamic_application_loader_unittest.cc", |
| "in_process_dynamic_service_runner_unittest.cc", |
| "shell_test_base.cc", |
| "shell_test_base.h", |
| "shell_test_base_unittest.cc", |
| "shell_test_main.cc", |
| ] |
| |
| if (is_android) { |
| deps += [ |
| # TODO(GYP): |
| #'../testing/android/native_test.gyp:native_test_native_code', |
| ] |
| } |
| } |