From 6d06df1b868deba8a1871d8425725b7bf442ddbb Mon Sep 17 00:00:00 2001 From: Christian Blichmann Date: Tue, 9 Jul 2019 01:53:31 -0700 Subject: [PATCH] Break out executor into its own build target PiperOrigin-RevId: 257147090 Change-Id: I34c5e86ca68f865fdae42e4077c52c6168672c06 --- sandboxed_api/sandbox2/BUILD.bazel | 32 ++++++++++++++++++++++----- sandboxed_api/sandbox2/CMakeLists.txt | 26 ++++++++++++++++++++-- 2 files changed, 50 insertions(+), 8 deletions(-) diff --git a/sandboxed_api/sandbox2/BUILD.bazel b/sandboxed_api/sandbox2/BUILD.bazel index 7e58d36..2f9f488 100644 --- a/sandboxed_api/sandbox2/BUILD.bazel +++ b/sandboxed_api/sandbox2/BUILD.bazel @@ -251,12 +251,32 @@ cc_library( ], ) +cc_library( + name = "executor", + srcs = ["executor.cc"], + hdrs = ["executor.h"], + copts = sapi_platform_copts(), + deps = [ + ":forkserver", + ":forkserver_proto", + ":global_forkserver", + ":ipc", + ":limits", + ":namespace", + ":util", + "//sandboxed_api/sandbox2/util:fileops", + "@com_google_absl//absl/base:core_headers", + "@com_google_absl//absl/memory", + "@com_google_absl//absl/strings", + "@org_kernel_libcap//:libcap", + ], +) + # Should not be used in sandboxee code if it only uses sandbox2::Comms and # sandbox2::Client objects cc_library( name = "sandbox2", srcs = [ - "executor.cc", "monitor.cc", "monitor.h", "policybuilder.cc", @@ -264,24 +284,24 @@ cc_library( "stack_trace.cc", ], hdrs = [ + "client.h", "executor.h", - "policybuilder.h", - "sandbox2.h", - "stack_trace.h", - # Workaround: reexporting the header files of our dependencies, see b/15420638 "ipc.h", "limits.h", "notify.h", "policy.h", + "policybuilder.h", "regs.h", "result.h", + "sandbox2.h", + "stack_trace.h", "syscall.h", - "client.h", ], copts = sapi_platform_copts(), visibility = ["//visibility:public"], deps = [ ":client", + ":executor", ":comms", ":violation_proto_cc", ":forkserver", diff --git a/sandboxed_api/sandbox2/CMakeLists.txt b/sandboxed_api/sandbox2/CMakeLists.txt index 277a03a..33104a5 100644 --- a/sandboxed_api/sandbox2/CMakeLists.txt +++ b/sandboxed_api/sandbox2/CMakeLists.txt @@ -268,10 +268,31 @@ target_link_libraries(sandbox2_global_forkserver PRIVATE sapi::raw_logging ) -# sandboxed_api/sandbox2:sandbox2 -add_library(sandbox2_sandbox2 STATIC +# sandboxed_api/sandbox2:executor +add_library(sandbox2_executor STATIC executor.cc executor.h +) +add_library(sandbox2::executor ALIAS sandbox2_executor) +target_link_libraries(sandbox2_executor PRIVATE + absl::core_headers + absl::memory + absl::strings + glog::glog + libcap::libcap + sandbox2::fileops + sandbox2::forkserver + sandbox2::forkserver_proto + sandbox2::global_forkserver + sandbox2::ipc + sandbox2::limits + sandbox2::namespace + sandbox2::util + sapi::base +) + +# sandboxed_api/sandbox2:sandbox2 +add_library(sandbox2_sandbox2 STATIC monitor.cc monitor.h policybuilder.cc @@ -296,6 +317,7 @@ target_link_libraries(sandbox2_sandbox2 sandbox2::bpf_helper sandbox2::client sandbox2::comms + sandbox2::executor sandbox2::file_base sandbox2::fileops sandbox2::forkserver