• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2014 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5component("sandbox") {
6  sources = [
7    "bootstrap_sandbox.cc",
8    "bootstrap_sandbox.h",
9    "launchd_interception_server.cc",
10    "launchd_interception_server.h",
11    "mach_message_server.cc",
12    "mach_message_server.h",
13    "os_compatibility.cc",
14    "os_compatibility.h",
15    "policy.cc",
16    "policy.h",
17    "xpc.h",
18  ]
19
20  defines = [ "SANDBOX_IMPLEMENTATION" ]
21  libs = [ "bsm" ]
22
23  deps = [
24    "//base",
25    ":generate_stubs",
26  ]
27}
28
29generate_stubs_script = "//tools/generate_stubs/generate_stubs.py"
30generate_stubs_header = "xpc_stubs_header.fragment"
31generate_stubs_sig_public = "xpc_stubs.sig"
32generate_stubs_sig_private = "xpc_private_stubs.sig"
33generate_stubs_project = "sandbox/mac"
34generate_stubs_output_stem = "xpc_stubs"
35
36action("generate_stubs") {
37  script = generate_stubs_script
38  sources = [ generate_stubs_sig_public, generate_stubs_sig_private ]
39  source_prereqs = [ generate_stubs_header ]
40  outputs = [
41    "$target_gen_dir/$generate_stubs_output_stem.cc",
42    "$target_gen_dir/$generate_stubs_output_stem.h",
43  ]
44  args = [
45    "-i", rebase_path(target_gen_dir, root_build_dir),
46    "-o", rebase_path(target_gen_dir, root_build_dir),
47    "-t", "posix_stubs",
48    "-e", rebase_path(generate_stubs_header, root_build_dir),
49    "-s", generate_stubs_output_stem,
50    "-p", generate_stubs_project,
51  ]
52  args += rebase_path(sources, root_build_dir)
53}
54
55test("sandbox_mac_unittests") {
56  sources = [
57    "bootstrap_sandbox_unittest.mm",
58    "policy_unittest.cc",
59  ]
60
61  libs = [
62    "CoreFoundation.framework",
63    "Foundation.framework",
64  ]
65
66  deps = [
67    ":sandbox",
68    "//base",
69    "//base/test:run_all_unittests",
70    "//testing/gtest",
71  ]
72}
73