diff options
| author | Francis Ricci <francisjricci@gmail.com> | 2017-06-27 19:32:39 +0000 |
|---|---|---|
| committer | Francis Ricci <francisjricci@gmail.com> | 2017-06-27 19:32:39 +0000 |
| commit | d379d1c2eec7db42e6ee0bafc4105512011dde95 (patch) | |
| tree | fb4739e7cd8caab41f29a1823a4e34e2bbdeb9ae | |
| parent | 352e60556e23086dc35f2db9f7860e367257e321 (diff) | |
| download | bcm5719-llvm-d379d1c2eec7db42e6ee0bafc4105512011dde95.tar.gz bcm5719-llvm-d379d1c2eec7db42e6ee0bafc4105512011dde95.zip | |
Loop directly over sanitizers to build in cmake
Summary: Cleaner than computing the intersection for each possible sanitizer
Reviewers: compnerd, beanz
Subscribers: llvm-commits, mgorny
Differential Revision: https://reviews.llvm.org/D34693
llvm-svn: 306453
| -rw-r--r-- | compiler-rt/lib/CMakeLists.txt | 25 | ||||
| -rw-r--r-- | compiler-rt/test/CMakeLists.txt | 18 |
2 files changed, 9 insertions, 34 deletions
diff --git a/compiler-rt/lib/CMakeLists.txt b/compiler-rt/lib/CMakeLists.txt index 7000efb6bf8..83a5acde7fb 100644 --- a/compiler-rt/lib/CMakeLists.txt +++ b/compiler-rt/lib/CMakeLists.txt @@ -21,17 +21,6 @@ function(compiler_rt_build_runtime runtime) string(TOUPPER ${runtime} runtime_uppercase) if(COMPILER_RT_HAS_${runtime_uppercase}) add_subdirectory(${runtime}) - foreach(directory ${ARGN}) - add_subdirectory(${directory}) - endforeach() - endif() -endfunction() - -function(compiler_rt_build_sanitizer sanitizer) - string(TOLOWER ${sanitizer} sanitizer_lowercase) - list(FIND COMPILER_RT_SANITIZERS_TO_BUILD ${sanitizer_lowercase} result) - if(NOT ${result} EQUAL -1) - compiler_rt_build_runtime(${sanitizer} ${ARGN}) endif() endfunction() @@ -44,14 +33,12 @@ if(COMPILER_RT_BUILD_SANITIZERS) add_subdirectory(ubsan) endif() - compiler_rt_build_sanitizer(asan) - compiler_rt_build_sanitizer(dfsan) - compiler_rt_build_sanitizer(msan) - compiler_rt_build_sanitizer(tsan tsan/dd) - compiler_rt_build_sanitizer(safestack) - compiler_rt_build_sanitizer(cfi) - compiler_rt_build_sanitizer(esan) - compiler_rt_build_sanitizer(scudo) + foreach(sanitizer ${COMPILER_RT_SANITIZERS_TO_BUILD}) + compiler_rt_build_runtime(${sanitizer}) + if(${sanitizer} STREQUAL tsan) + add_subdirectory(tsan/dd) + endif() + endforeach() compiler_rt_build_runtime(profile) endif() diff --git a/compiler-rt/test/CMakeLists.txt b/compiler-rt/test/CMakeLists.txt index 040d19bcc3b..0a6c11c34c5 100644 --- a/compiler-rt/test/CMakeLists.txt +++ b/compiler-rt/test/CMakeLists.txt @@ -45,14 +45,6 @@ function(compiler_rt_test_runtime runtime) endif() endfunction() -function(compiler_rt_test_sanitizer sanitizer) - string(TOLOWER ${sanitizer} sanitizer_lowercase) - list(FIND COMPILER_RT_SANITIZERS_TO_BUILD ${sanitizer_lowercase} result) - if(NOT ${result} EQUAL -1) - compiler_rt_test_runtime(${sanitizer} ${ARGN}) - endif() -endfunction() - # Run sanitizer tests only if we're sure that clang would produce # working binaries. if(COMPILER_RT_CAN_EXECUTE_TESTS) @@ -67,13 +59,9 @@ if(COMPILER_RT_CAN_EXECUTE_TESTS) compiler_rt_test_runtime(ubsan cfi) compiler_rt_test_runtime(sanitizer_common) - compiler_rt_test_sanitizer(asan) - compiler_rt_test_sanitizer(dfsan) - compiler_rt_test_sanitizer(msan) - compiler_rt_test_sanitizer(tsan) - compiler_rt_test_sanitizer(safestack) - compiler_rt_test_sanitizer(esan) - compiler_rt_test_sanitizer(scudo) + foreach(sanitizer ${COMPILER_RT_SANITIZERS_TO_BUILD}) + compiler_rt_test_runtime(${sanitizer}) + endforeach() compiler_rt_test_runtime(profile) endif() |

