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 sandbox2::client 155 sandbox2::comms 156 sandbox2::util 157 sapi::base 158) 159 160# sandboxed_api/sandbox2/testcases:sandbox_detection 161add_executable(sandbox2_testcase_sandbox_detection 162 sandbox_detection.cc 163) 164add_executable(sandbox2::testcase_policy ALIAS sandbox2_testcase_sandbox_detection) 165set_target_properties(sandbox2_testcase_sandbox_detection PROPERTIES 166 OUTPUT_NAME sandbox_detection 167) 168target_link_libraries(sandbox2_testcase_sandbox_detection PRIVATE 169 -static 170 absl::statusor 171 sandbox2::client 172 sandbox2::comms 173 sandbox2::util 174 sapi::base 175) 176 177# sandboxed_api/sandbox2/testcases:sanitizer 178add_executable(sandbox2_testcase_sanitizer 179 sanitizer.cc 180) 181add_executable(sandbox2::testcase_sanitizer ALIAS sandbox2_testcase_sanitizer) 182set_target_properties(sandbox2_testcase_sanitizer PROPERTIES 183 OUTPUT_NAME sanitizer 184) 185target_link_libraries(sandbox2_testcase_sanitizer PRIVATE 186 -static 187 sapi::base 188) 189 190# sandboxed_api/sandbox2/testcases:close_fds 191add_executable(sandbox2_testcase_close_fds 192 close_fds.cc 193) 194add_executable(sandbox2::testcase_close_fds ALIAS sandbox2_testcase_close_fds) 195set_target_properties(sandbox2_testcase_close_fds PROPERTIES 196 OUTPUT_NAME close_fds 197) 198target_link_libraries(sandbox2_testcase_close_fds PRIVATE 199 sapi::base 200 absl::check 201 absl::status 202 absl::strings 203 absl::flat_hash_set 204 sandbox2::sanitizer 205) 206 207 208# sandboxed_api/sandbox2/testcases:sleep 209add_executable(sandbox2_testcase_sleep 210 sleep.cc 211) 212add_executable(sandbox2::testcase_sleep ALIAS sandbox2_testcase_sleep) 213set_target_properties(sandbox2_testcase_sleep PROPERTIES 214 OUTPUT_NAME sleep 215) 216target_link_libraries(sandbox2_testcase_sleep PRIVATE 217 -static 218 sapi::base 219) 220 221# sandboxed_api/sandbox2/testcases:symbolize 222add_executable(sandbox2_testcase_symbolize 223 symbolize.cc 224) 225add_executable(sandbox2::testcase_symbolize ALIAS sandbox2_testcase_symbolize) 226set_target_properties(sandbox2_testcase_symbolize PROPERTIES 227 OUTPUT_NAME symbolize 228) 229target_link_libraries(sandbox2_testcase_symbolize PRIVATE 230 -static 231 absl::core_headers 232 absl::strings 233 sapi::base 234 sapi::raw_logging 235 sandbox2::testcase_symbolize_lib 236) 237 238# sandboxed_api/sandbox2/testcases:symbolize_lib 239add_library(sandbox2_testcase_symbolize_lib 240 symbolize_lib.cc 241 symbolize_lib.h 242) 243add_library(sandbox2::testcase_symbolize_lib ALIAS sandbox2_testcase_symbolize_lib) 244target_link_libraries(sandbox2_testcase_symbolize_lib PRIVATE 245 -static 246 absl::core_headers 247 sapi::base 248) 249target_compile_options(sandbox2_testcase_symbolize_lib PRIVATE 250 -fno-omit-frame-pointer 251 -fno-unwind-tables 252 -fno-asynchronous-unwind-tables 253) 254 255# sandboxed_api/sandbox2/testcases:starve 256add_executable(sandbox2_testcase_starve 257 starve.cc 258) 259add_executable(sandbox2::testcase_starve ALIAS sandbox2_testcase_starve) 260set_target_properties(sandbox2_testcase_starve PROPERTIES 261 OUTPUT_NAME starve 262) 263target_link_libraries(sandbox2_testcase_starve PRIVATE 264 -static 265 sapi::base 266) 267 268# sandboxed_api/sandbox2/testcases:tsync 269add_executable(sandbox2_testcase_tsync 270 tsync.cc 271) 272add_executable(sandbox2::testcase_tsync ALIAS sandbox2_testcase_tsync) 273set_target_properties(sandbox2_testcase_tsync PROPERTIES 274 OUTPUT_NAME tsync 275) 276target_link_libraries(sandbox2_testcase_tsync PRIVATE 277 -static 278 sandbox2::client 279 sandbox2::comms 280 sapi::base 281) 282 283# sandboxed_api/sandbox2/testcases:limits 284add_executable(sandbox2_testcase_limits 285 limits.cc 286) 287add_executable(sandbox2::testcase_limits ALIAS sandbox2_testcase_limits) 288set_target_properties(sandbox2_testcase_limits PROPERTIES 289 OUTPUT_NAME limits 290) 291target_link_libraries(sandbox2_testcase_limits PRIVATE 292 -static 293 sapi::base 294) 295 296# sandboxed_api/sandbox2/testcases:namespace 297add_executable(sandbox2_testcase_namespace 298 namespace.cc 299) 300add_executable(sandbox2::testcase_namespace ALIAS sandbox2_testcase_namespace) 301set_target_properties(sandbox2_testcase_namespace PROPERTIES 302 OUTPUT_NAME namespace 303) 304target_link_libraries(sandbox2_testcase_namespace PRIVATE 305 -static 306 absl::check 307 absl::flat_hash_set 308 absl::strings 309 sandbox2::comms 310 sapi::base 311 sapi::file_base 312 sapi::fileops 313) 314 315# sandboxed_api/sandbox2/testcases:network_proxy 316add_executable(sandbox2_testcase_network_proxy 317 network_proxy.cc 318) 319add_executable(sandbox2::testcase_network_proxy ALIAS sandbox2_testcase_network_proxy) 320set_target_properties(sandbox2_testcase_network_proxy PROPERTIES 321 OUTPUT_NAME network_proxy 322) 323target_link_libraries(sandbox2_testcase_network_proxy PRIVATE 324 absl::check 325 absl::flags 326 absl::flags_parse 327 absl::log 328 absl::log_globals 329 absl::log_initialize 330 absl::log_severity 331 absl::status 332 absl::statusor 333 absl::strings 334 absl::str_format 335 sandbox2::client 336 sandbox2::comms 337 sandbox2::network_proxy_client 338 sapi::base 339 sapi::file_base 340 sapi::fileops 341 sapi::status 342) 343 344# sandboxed_api/sandbox2/testcases:custom_fork 345add_executable(sandbox2_testcase_custom_fork 346 custom_fork.cc 347) 348add_executable(sandbox2::testcase_custom_fork ALIAS sandbox2_testcase_custom_fork) 349set_target_properties(sandbox2_testcase_custom_fork PROPERTIES 350 OUTPUT_NAME custom_fork 351) 352target_link_libraries(sandbox2_testcase_custom_fork PRIVATE 353 sandbox2::comms 354 sandbox2::forkingclient 355 sapi::base 356 sapi::raw_logging 357) 358 359# sandboxed_api/sandbox2/testcases:util_communicate 360add_executable(sandbox2_testcase_util_communicate 361 util_communicate.cc 362) 363add_executable(sandbox2::testcase_util_communicate ALIAS sandbox2_testcase_util_communicate) 364set_target_properties(sandbox2_testcase_util_communicate PROPERTIES 365 OUTPUT_NAME util_communicate 366) 367target_link_libraries(sandbox2_testcase_util_communicate PRIVATE 368 sapi::base 369) 370 371# sandboxed_api/sandbox2/testcases:posix_timers 372add_executable(sandbox2_testcase_posix_timers 373 posix_timers.cc 374) 375add_executable(sandbox2::testcase_posix_timers ALIAS sandbox2_testcase_posix_timers) 376set_target_properties(sandbox2_testcase_posix_timers PROPERTIES 377 OUTPUT_NAME posix_timers 378) 379target_link_libraries(sandbox2_testcase_posix_timers PRIVATE 380 -static 381 -lrt 382 absl::check 383 absl::flags 384 absl::flags_parse 385 absl::log 386 absl::log_globals 387 absl::log_initialize 388 absl::log_severity 389 absl::strings 390 absl::time 391 sapi::base 392) 393