| # Copyright 2017 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. |
| |
| component("embedder") { |
| public = [ |
| "manifest_utils.h", |
| ] |
| |
| sources = [ |
| "manifest_utils.cc", |
| "service_manager_embedder_export.h", |
| ] |
| |
| # iOS embeds the Service Manager but does not use service_manager::Main() (and |
| # cannot use or even build it as-is). |
| if (!is_ios) { |
| public += [ |
| "main.h", |
| "main_delegate.h", |
| "process_type.h", |
| "set_process_title.h", |
| "set_process_title_linux.h", |
| "shared_file_util.h", |
| ] |
| sources += [ |
| "main.cc", |
| "main_delegate.cc", |
| "set_process_title.cc", |
| "set_process_title_linux.cc", |
| "shared_file_util.cc", |
| ] |
| } |
| |
| if (is_mac) { |
| sources += [ |
| "mac_init.h", |
| "mac_init.mm", |
| ] |
| |
| libs = [ "Foundation.framework" ] |
| } |
| |
| deps = [ |
| "//base:base_static", |
| "//base:i18n", |
| ] |
| |
| public_deps = [ |
| ":embedder_result_codes", |
| "//base", |
| "//services/service_manager/public/cpp", |
| ] |
| |
| if (!is_ios) { |
| # deps of ServiceManager::Main and related functionality. |
| deps += [ |
| "//base/allocator:buildflags", |
| "//components/tracing:startup_tracing", |
| ] |
| |
| if (!is_nacl) { |
| # NaCl stuff should not depend on skia as it would require platform and |
| # cpu properties set. |
| deps += [ "//ui/base" ] |
| } |
| |
| public_deps += [ |
| ":embedder_switches", |
| "//mojo/core/embedder", |
| "//services/service_manager/background:lib", |
| "//services/service_manager/public/cpp/standalone_service", |
| "//services/service_manager/runner:init", |
| "//services/service_manager/runner/common", |
| ] |
| } |
| |
| defines = [ "SERVICE_MANAGER_EMBEDDER_IMPL" ] |
| } |
| |
| component("embedder_switches") { |
| sources = [ |
| "service_manager_embedder_switches_export.h", |
| "switches.cc", |
| "switches.h", |
| ] |
| defines = [ "SERVICE_MANAGER_EMBEDDER_SWITCHES_IMPL" ] |
| } |
| |
| source_set("embedder_result_codes") { |
| sources = [ |
| "result_codes.h", |
| ] |
| } |
| |
| source_set("unittests") { |
| testonly = true |
| |
| sources = [ |
| "manifest_utils_unittest.cc", |
| ] |
| |
| # These headers are duplicated here so that they can remain private in the |
| # "embedder" target. See http://crbug.com/732993 for a way to make it |
| # unnecessary to do this. |
| sources += [ "service_manager_embedder_export.h" ] |
| |
| deps = [ |
| ":embedder", |
| "//base", |
| "//base/test:test_support", |
| "//testing/gtest", |
| ] |
| } |