| # Copyright 2014 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("sandbox") { |
| sources = [ |
| "bootstrap_sandbox.cc", |
| "bootstrap_sandbox.h", |
| "launchd_interception_server.cc", |
| "launchd_interception_server.h", |
| "mach_message_server.cc", |
| "mach_message_server.h", |
| "os_compatibility.cc", |
| "os_compatibility.h", |
| "policy.cc", |
| "policy.h", |
| "xpc.h", |
| ] |
| |
| defines = [ "SANDBOX_IMPLEMENTATION" ] |
| libs = [ "bsm" ] |
| |
| deps = [ |
| "//base", |
| ":generate_stubs", |
| ] |
| } |
| |
| generate_stubs_script = "//tools/generate_stubs/generate_stubs.py" |
| generate_stubs_header = "xpc_stubs_header.fragment" |
| generate_stubs_sig_public = "xpc_stubs.sig" |
| generate_stubs_sig_private = "xpc_private_stubs.sig" |
| generate_stubs_project = "sandbox/mac" |
| generate_stubs_output_stem = "xpc_stubs" |
| |
| action("generate_stubs") { |
| script = generate_stubs_script |
| sources = [ generate_stubs_sig_public, generate_stubs_sig_private ] |
| source_prereqs = [ generate_stubs_header ] |
| outputs = [ |
| "$target_gen_dir/$generate_stubs_output_stem.cc", |
| "$target_gen_dir/$generate_stubs_output_stem.h", |
| ] |
| args = [ |
| "-i", rebase_path(target_gen_dir, root_build_dir), |
| "-o", rebase_path(target_gen_dir, root_build_dir), |
| "-t", "posix_stubs", |
| "-e", rebase_path(generate_stubs_header, root_build_dir), |
| "-s", generate_stubs_output_stem, |
| "-p", generate_stubs_project, |
| ] |
| args += rebase_path(sources, root_build_dir) |
| } |
| |
| test("sandbox_mac_unittests") { |
| sources = [ |
| "bootstrap_sandbox_unittest.mm", |
| "policy_unittest.cc", |
| ] |
| |
| libs = [ |
| "CoreFoundation.framework", |
| "Foundation.framework", |
| ] |
| |
| deps = [ |
| ":sandbox", |
| "//base", |
| "//base/test:run_all_unittests", |
| "//testing/gtest", |
| ] |
| } |