| # Copyright 2014 The Chromium Authors |
| # 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("//sandbox/features.gni") |
| import("//testing/libfuzzer/fuzzer_test.gni") |
| import("//testing/test.gni") |
| |
| # Several targets want to include this header file. We separate it out |
| # here so multiple targets can depend on it. |
| source_set("sandbox_export") { |
| sources = [ "sandbox_export.h" ] |
| } |
| |
| source_set("common") { |
| sources = [ |
| "constants.h", |
| "features.cc", |
| "features.h", |
| ] |
| |
| deps = [ |
| "//base:base", |
| "//sandbox:sandbox_buildflags", |
| ] |
| } |
| |
| test("sandbox_unittests") { |
| deps = [ |
| "//base/test:run_all_unittests", |
| "//sandbox/policy:tests", |
| "//testing/gtest", |
| ] |
| |
| if (is_mac) { |
| deps += [ "//sandbox/mac:sandbox_unittests" ] |
| } |
| } |
| |
| # Meta-target that forwards to the proper platform one. |
| group("sandbox") { |
| if (is_win) { |
| public_deps = [ "//sandbox/win:sandbox" ] |
| } else if (is_mac) { |
| public_deps = [ |
| "//sandbox/mac:seatbelt", |
| "//sandbox/mac:seatbelt_extension", |
| "//sandbox/mac:system_services", |
| "//sandbox/mac/mojom", |
| ] |
| } else if (is_linux || is_chromeos || is_android) { |
| public_deps = [ "//sandbox/linux:sandbox" ] |
| } |
| } |
| |
| buildflag_header("sandbox_buildflags") { |
| header = "sandbox_buildflags.h" |
| flags = [ |
| "USE_SECCOMP_BPF=$use_seccomp_bpf", |
| "DISABLE_SECCOMP_SSBD=$disable_seccomp_ssbd", |
| ] |
| } |