| # Copyright 2016 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. |
| |
| source_set("support") { |
| sources = [ |
| "service_executable_environment.cc", |
| "service_executable_environment.h", |
| ] |
| |
| deps = [ |
| ":switches", |
| "//mojo/core/embedder", |
| "//mojo/public/cpp/platform", |
| "//mojo/public/cpp/system", |
| "//services/service_manager/public/cpp", |
| "//services/service_manager/sandbox", |
| ] |
| |
| public_deps = [ |
| "//base", |
| "//services/service_manager/public/mojom", |
| ] |
| |
| if (is_linux) { |
| deps += [ |
| "//sandbox/linux:sandbox", |
| "//sandbox/linux:sandbox_services", |
| "//sandbox/linux:seccomp_bpf", |
| ] |
| } |
| } |
| |
| source_set("switches") { |
| sources = [ |
| "switches.cc", |
| "switches.h", |
| ] |
| } |
| |
| # Service executable targets should link against this to get a boilerplate entry |
| # point which accepts canonical command-line arguments to establish a connection |
| # to the Service Manager. In order to link properly, dependents must ensure that |
| # they define a ServiceMain() symbol which matches the signature in |
| # //services/service_manager/public/cpp/service_executable/service_main.h. |
| # |
| # Note that GN targets based on the service_executable() template defined in |
| # service_executable.gni implicitly link against this. |
| source_set("main") { |
| public = [ "service_main.h" ] |
| |
| sources = [ "main.cc" ] |
| |
| public_deps = [ "//services/service_manager/public/mojom" ] |
| |
| deps = [ |
| ":support", |
| "//base", |
| "//base:base_static", |
| "//base:i18n", |
| ] |
| } |