1# Copyright 2019 Google LLC 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# https://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15# sandboxed_api/sandbox2/testcases:abort 16add_executable(sandbox2_testcase_abort 17 abort.cc 18) 19set_target_properties(sandbox2_testcase_abort PROPERTIES 20 OUTPUT_NAME abort) 21add_executable(sandbox2::testcase_abort ALIAS sandbox2_testcase_abort) 22target_link_libraries(sandbox2_testcase_abort PRIVATE 23 -static 24 sapi::base 25 sapi::raw_logging 26) 27 28# sandboxed_api/sandbox2/testcases:add_policy_on_syscalls 29add_executable(sandbox2_testcase_add_policy_on_syscalls 30 add_policy_on_syscalls.cc 31) 32add_executable(sandbox2::testcase_add_policy_on_syscalls 33 ALIAS sandbox2_testcase_add_policy_on_syscalls) 34set_target_properties(sandbox2_testcase_add_policy_on_syscalls PROPERTIES 35 OUTPUT_NAME add_policy_on_syscalls 36) 37target_link_libraries(sandbox2_testcase_add_policy_on_syscalls PRIVATE 38 -static 39 sapi::base 40) 41 42# sandboxed_api/sandbox2/testcases:buffer 43add_executable(sandbox2_testcase_buffer 44 buffer.cc 45) 46add_executable(sandbox2::testcase_buffer ALIAS sandbox2_testcase_buffer) 47set_target_properties(sandbox2_testcase_buffer PROPERTIES 48 OUTPUT_NAME buffer 49) 50target_link_libraries(sandbox2_testcase_buffer PRIVATE 51 -static 52 sandbox2::buffer 53 sapi::base 54) 55 56# sandboxed_api/sandbox2/testcases:ipc 57add_executable(sandbox2_testcase_ipc 58 ipc.cc 59) 60set_target_properties(sandbox2_testcase_ipc PROPERTIES 61 OUTPUT_NAME ipc 62) 63add_executable(sandbox2::testcase_ipc ALIAS sandbox2_testcase_ipc) 64target_link_libraries(sandbox2_testcase_ipc PRIVATE 65 -static 66 absl::strings 67 sandbox2::client 68 sandbox2::comms 69 sapi::base 70 sapi::raw_logging 71) 72 73# sandboxed_api/sandbox2/testcases:malloc_system 74add_executable(sandbox2_testcase_malloc_system 75 malloc.cc 76) 77add_executable(sandbox2::testcase_malloc_system ALIAS 78 sandbox2_testcase_malloc_system) 79set_target_properties(sandbox2_testcase_malloc_system PROPERTIES 80 OUTPUT_NAME malloc_system 81) 82target_link_libraries(sandbox2_testcase_malloc_system PRIVATE 83 -static 84 sapi::base 85) 86 87# sandboxed_api/sandbox2/testcases:minimal_dynamic 88add_executable(sandbox2_testcase_minimal_dynamic 89 minimal.cc 90) 91set_target_properties(sandbox2_testcase_minimal_dynamic PROPERTIES 92 OUTPUT_NAME minimal_dynamic 93) 94add_executable(sandbox2::testcase_minimal_dynamic ALIAS 95 sandbox2_testcase_minimal_dynamic) 96target_link_libraries(sandbox2_testcase_minimal_dynamic PRIVATE 97 sapi::base 98) 99 100# sandboxed_api/sandbox2/testcases:minimal 101add_executable(sandbox2_testcase_minimal 102 minimal.cc 103) 104add_executable(sandbox2::testcase_minimal ALIAS sandbox2_testcase_minimal) 105set_target_properties(sandbox2_testcase_minimal PROPERTIES 106 OUTPUT_NAME minimal 107) 108target_link_libraries(sandbox2_testcase_minimal PRIVATE 109 -static 110 sapi::base 111) 112 113# sandboxed_api/sandbox2/testcases:personality 114add_executable(sandbox2_testcase_personality 115 personality.cc 116) 117add_executable(sandbox2::testcase_personality ALIAS 118 sandbox2_testcase_personality) 119set_target_properties(sandbox2_testcase_personality PROPERTIES 120 OUTPUT_NAME personality 121) 122target_link_libraries(sandbox2_testcase_personality PRIVATE 123 -static 124 sapi::base 125) 126 127# sandboxed_api/sandbox2/testcases:pidcomms 128add_executable(sandbox2_testcase_pidcomms 129 pidcomms.cc 130) 131add_executable(sandbox2::testcase_pidcomms ALIAS sandbox2_testcase_pidcomms) 132set_target_properties(sandbox2_testcase_pidcomms PROPERTIES 133 OUTPUT_NAME pidcomms 134) 135target_link_libraries(sandbox2_testcase_pidcomms PRIVATE 136 -static 137 sandbox2::client 138 sandbox2::comms 139 sapi::base 140 sapi::raw_logging 141) 142 143# sandboxed_api/sandbox2/testcases:policy 144add_executable(sandbox2_testcase_policy 145 policy.cc 146) 147add_executable(sandbox2::testcase_policy ALIAS sandbox2_testcase_policy) 148set_target_properties(sandbox2_testcase_policy PROPERTIES 149 OUTPUT_NAME policy 150) 151target_link_libraries(sandbox2_testcase_policy PRIVATE 152 -static 153 absl::core_headers 154 sapi::base 155 sapi::config 156) 157 158# sandboxed_api/sandbox2/testcases:sanitizer 159add_executable(sandbox2_testcase_sanitizer 160 sanitizer.cc 161) 162add_executable(sandbox2::testcase_sanitizer ALIAS sandbox2_testcase_sanitizer) 163set_target_properties(sandbox2_testcase_sanitizer PROPERTIES 164 OUTPUT_NAME sanitizer 165) 166target_link_libraries(sandbox2_testcase_sanitizer PRIVATE 167 -static 168 sapi::base 169) 170 171# sandboxed_api/sandbox2/testcases:close_fds 172add_executable(sandbox2_testcase_close_fds 173 close_fds.cc 174) 175add_executable(sandbox2::testcase_close_fds ALIAS sandbox2_testcase_close_fds) 176set_target_properties(sandbox2_testcase_close_fds PROPERTIES 177 OUTPUT_NAME close_fds 178) 179target_link_libraries(sandbox2_testcase_close_fds PRIVATE 180 sapi::base 181 absl::check 182 absl::status 183 absl::strings 184 absl::flat_hash_set 185 sandbox2::sanitizer 186) 187 188 189# sandboxed_api/sandbox2/testcases:sleep 190add_executable(sandbox2_testcase_sleep 191 sleep.cc 192) 193add_executable(sandbox2::testcase_sleep ALIAS sandbox2_testcase_sleep) 194set_target_properties(sandbox2_testcase_sleep PROPERTIES 195 OUTPUT_NAME sleep 196) 197target_link_libraries(sandbox2_testcase_sleep PRIVATE 198 -static 199 sapi::base 200) 201 202# sandboxed_api/sandbox2/testcases:symbolize 203add_executable(sandbox2_testcase_symbolize 204 symbolize.cc 205) 206add_executable(sandbox2::testcase_symbolize ALIAS sandbox2_testcase_symbolize) 207set_target_properties(sandbox2_testcase_symbolize PROPERTIES 208 OUTPUT_NAME symbolize 209) 210target_link_libraries(sandbox2_testcase_symbolize PRIVATE 211 -static 212 absl::core_headers 213 absl::strings 214 sapi::base 215 sapi::raw_logging 216 sandbox2::testcase_symbolize_lib 217) 218 219# sandboxed_api/sandbox2/testcases:symbolize_lib 220add_library(sandbox2_testcase_symbolize_lib 221 symbolize_lib.cc 222 symbolize_lib.h 223) 224add_library(sandbox2::testcase_symbolize_lib ALIAS sandbox2_testcase_symbolize_lib) 225target_link_libraries(sandbox2_testcase_symbolize_lib PRIVATE 226 -static 227 absl::core_headers 228 sapi::base 229) 230target_compile_options(sandbox2_testcase_symbolize_lib PRIVATE 231 -fno-omit-frame-pointer 232 -fno-unwind-tables 233 -fno-asynchronous-unwind-tables 234) 235 236# sandboxed_api/sandbox2/testcases:starve 237add_executable(sandbox2_testcase_starve 238 starve.cc 239) 240add_executable(sandbox2::testcase_starve ALIAS sandbox2_testcase_starve) 241set_target_properties(sandbox2_testcase_starve PROPERTIES 242 OUTPUT_NAME starve 243) 244target_link_libraries(sandbox2_testcase_starve PRIVATE 245 -static 246 sapi::base 247) 248 249# sandboxed_api/sandbox2/testcases:tsync 250add_executable(sandbox2_testcase_tsync 251 tsync.cc 252) 253add_executable(sandbox2::testcase_tsync ALIAS sandbox2_testcase_tsync) 254set_target_properties(sandbox2_testcase_tsync PROPERTIES 255 OUTPUT_NAME tsync 256) 257target_link_libraries(sandbox2_testcase_tsync PRIVATE 258 -static 259 sandbox2::client 260 sandbox2::comms 261 sapi::base 262) 263 264# sandboxed_api/sandbox2/testcases:limits 265add_executable(sandbox2_testcase_limits 266 limits.cc 267) 268add_executable(sandbox2::testcase_limits ALIAS sandbox2_testcase_limits) 269set_target_properties(sandbox2_testcase_limits PROPERTIES 270 OUTPUT_NAME limits 271) 272target_link_libraries(sandbox2_testcase_limits PRIVATE 273 -static 274 sapi::base 275) 276 277# sandboxed_api/sandbox2/testcases:namespace 278add_executable(sandbox2_testcase_namespace 279 namespace.cc 280) 281add_executable(sandbox2::testcase_namespace ALIAS sandbox2_testcase_namespace) 282set_target_properties(sandbox2_testcase_namespace PROPERTIES 283 OUTPUT_NAME namespace 284) 285target_link_libraries(sandbox2_testcase_namespace PRIVATE 286 -static 287 absl::check 288 absl::flat_hash_set 289 absl::strings 290 sandbox2::comms 291 sapi::base 292 sapi::file_base 293 sapi::fileops 294) 295 296# sandboxed_api/sandbox2/testcases:network_proxy 297add_executable(sandbox2_testcase_network_proxy 298 network_proxy.cc 299) 300add_executable(sandbox2::testcase_network_proxy ALIAS sandbox2_testcase_network_proxy) 301set_target_properties(sandbox2_testcase_network_proxy PROPERTIES 302 OUTPUT_NAME network_proxy 303) 304target_link_libraries(sandbox2_testcase_network_proxy PRIVATE 305 absl::check 306 absl::flags 307 absl::flags_parse 308 absl::log 309 absl::log_globals 310 absl::log_initialize 311 absl::log_severity 312 absl::status 313 absl::statusor 314 absl::strings 315 absl::str_format 316 sandbox2::client 317 sandbox2::comms 318 sandbox2::network_proxy_client 319 sapi::base 320 sapi::file_base 321 sapi::fileops 322 sapi::status 323) 324 325# sandboxed_api/sandbox2/testcases:custom_fork 326add_executable(sandbox2_testcase_custom_fork 327 custom_fork.cc 328) 329add_executable(sandbox2::testcase_custom_fork ALIAS sandbox2_testcase_custom_fork) 330set_target_properties(sandbox2_testcase_custom_fork PROPERTIES 331 OUTPUT_NAME custom_fork 332) 333target_link_libraries(sandbox2_testcase_custom_fork PRIVATE 334 sandbox2::comms 335 sandbox2::forkingclient 336 sapi::base 337 sapi::raw_logging 338) 339 340 341