| # Copyright 2018 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("//build/buildflag_header.gni") |
| import("//build/config/nacl/config.gni") |
| import("//services/service_manager/zygote/common/zygote_features.gni") |
| |
| if (is_linux) { |
| component("zygote") { |
| if (is_nacl_nonsfi) { |
| # When running the nacl toolchain is_linux is false so *_linux.cc files are |
| # excluded. Reset the filter so they are included. |
| set_sources_assignment_filter([]) |
| } |
| |
| sources = [ |
| "common/common_sandbox_support_linux.cc", |
| "common/common_sandbox_support_linux.h", |
| "common/zygote_fork_delegate_linux.h", |
| "common/zygote_handle.h", |
| "host/zygote_communication_linux.cc", |
| "host/zygote_communication_linux.h", |
| "host/zygote_host_impl_linux.cc", |
| "host/zygote_host_impl_linux.h", |
| "zygote_linux.cc", |
| "zygote_linux.h", |
| "zygote_main.h", |
| "zygote_main_linux.cc", |
| ] |
| |
| if (use_zygote_handle) { |
| sources += [ |
| "common/zygote_handle.h", |
| "host/zygote_handle_linux.cc", |
| ] |
| } |
| |
| public_deps = [ |
| ":zygote_buildflags", |
| ":zygote_util", |
| ] |
| |
| deps = [ |
| "//base", |
| "//base:i18n", |
| "//ipc", |
| "//sandbox", |
| "//services/service_manager/embedder", |
| "//services/service_manager/sandbox", |
| "//third_party/icu", |
| ] |
| |
| defines = [ "IS_SERVICE_MANAGER_ZYGOTE_IMPL" ] |
| } |
| } |
| |
| source_set("zygote_util") { |
| if (is_nacl_nonsfi) { |
| # When running the nacl toolchain is_linux is false so *_linux.cc files are |
| # excluded. Reset the filter so they are included. |
| set_sources_assignment_filter([]) |
| } |
| |
| sources = [ |
| "common/send_zygote_child_ping_linux.cc", |
| "common/send_zygote_child_ping_linux.h", |
| "common/zygote_commands_linux.h", |
| ] |
| |
| deps = [ |
| "//base", |
| "//services/service_manager/sandbox:sanitizer_buildflags", |
| ] |
| |
| defines = [ "IS_SERVICE_MANAGER_ZYGOTE_IMPL" ] |
| } |
| |
| buildflag_header("zygote_buildflags") { |
| header = "common/zygote_buildflags.h" |
| flags = [ "USE_ZYGOTE_HANDLE=$use_zygote_handle" ] |
| } |