From: Chris Bieneman Date: Sat, 19 Nov 2016 01:32:09 +0000 (+0000) Subject: [CMake] Apply sandbox profile to target not directory X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e208042f07dc03edf3792aaf87d7cc8dd3238ea0;p=llvm [CMake] Apply sandbox profile to target not directory When LLVM_DEPENDENCY_DEBUGGING=On we should apply the sandbox only on the target, not the directory. This is important for directories that create more than one target, or for nested directories. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@287415 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake index ef0dbf4d10d..2603f0765f9 100644 --- a/cmake/modules/AddLLVM.cmake +++ b/cmake/modules/AddLLVM.cmake @@ -377,8 +377,6 @@ function(llvm_add_library name) endif() endif() - setup_dependency_debugging(${name} ${LLVM_COMMON_DEPENDS}) - # Generate objlib if((ARG_SHARED AND ARG_STATIC) OR ARG_OBJECT) # Generate an obj library for both targets. @@ -424,6 +422,8 @@ function(llvm_add_library name) add_library(${name} STATIC ${ALL_FILES}) endif() + setup_dependency_debugging(${name} ${LLVM_COMMON_DEPENDS}) + if(DEFINED windows_resource_file) set_windows_version_resource_properties(${name} ${windows_resource_file}) set(windows_resource_file ${windows_resource_file} PARENT_SCOPE) @@ -672,8 +672,6 @@ macro(add_llvm_executable name) # it forces Xcode to properly link the static library. list(APPEND ALL_FILES "${LLVM_MAIN_SRC_DIR}/cmake/dummy.cpp") endif() - - setup_dependency_debugging(${name} ${LLVM_COMMON_DEPENDS}) if( EXCLUDE_FROM_ALL ) add_executable(${name} EXCLUDE_FROM_ALL ${ALL_FILES}) @@ -681,6 +679,8 @@ macro(add_llvm_executable name) add_executable(${name} ${ALL_FILES}) endif() + setup_dependency_debugging(${name} ${LLVM_COMMON_DEPENDS}) + if(NOT ARG_NO_INSTALL_RPATH) llvm_setup_rpath(${name}) endif() @@ -1397,5 +1397,5 @@ function(setup_dependency_debugging name) set(deny_intrinsics_gen "(deny file* (literal \"${LLVM_BINARY_DIR}/include/llvm/IR/Intrinsics.gen\"))") set(sandbox_command "sandbox-exec -p '(version 1) (allow default) ${deny_attributes_gen} ${deny_intrinsics_gen}'") - set_property(DIRECTORY PROPERTY RULE_LAUNCH_COMPILE ${sandbox_command}) + set_target_properties(${name} PROPERTIES RULE_LAUNCH_COMPILE ${sandbox_command}) endfunction()