summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Samsonov <vonosmas@gmail.com>2015-03-25 23:26:49 +0000
committerAlexey Samsonov <vonosmas@gmail.com>2015-03-25 23:26:49 +0000
commitd462c25d1570a6e43725535a7077f21a6f0ff72f (patch)
treeba69cd9ccef894f9c53d93c9b867fcd3a4c54be0
parented1b30aeb319a3693888c3dccf03b927eb40fc44 (diff)
[LSan] Don't explicitly exclude LSan from Windows build - it should just produce dummy object files. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@233231 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--cmake/config-ix.cmake15
-rw-r--r--lib/CMakeLists.txt5
-rw-r--r--lib/asan/CMakeLists.txt8
3 files changed, 7 insertions, 21 deletions
diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake
index 1207f4c8c..f52639bdb 100644
--- a/cmake/config-ix.cmake
+++ b/cmake/config-ix.cmake
@@ -221,14 +221,14 @@ endfunction()
# Architectures supported by compiler-rt libraries.
filter_available_targets(SANITIZER_COMMON_SUPPORTED_ARCH
x86_64 i386 i686 powerpc64 powerpc64le arm aarch64 mips mips64 mipsel mips64el)
-filter_available_targets(ASAN_SUPPORTED_ARCH
- x86_64 i386 i686 powerpc64 powerpc64le arm mips mipsel mips64 mips64el)
-filter_available_targets(DFSAN_SUPPORTED_ARCH x86_64 mips64 mips64el)
-filter_available_targets(LSAN_SUPPORTED_ARCH x86_64 mips64 mips64el)
# LSan common files should be available on all architectures supported
# by other sanitizers (even if they build into dummy object files).
filter_available_targets(LSAN_COMMON_SUPPORTED_ARCH
${SANITIZER_COMMON_SUPPORTED_ARCH})
+filter_available_targets(ASAN_SUPPORTED_ARCH
+ x86_64 i386 i686 powerpc64 powerpc64le arm mips mipsel mips64 mips64el)
+filter_available_targets(DFSAN_SUPPORTED_ARCH x86_64 mips64 mips64el)
+filter_available_targets(LSAN_SUPPORTED_ARCH x86_64 mips64 mips64el)
filter_available_targets(MSAN_SUPPORTED_ARCH x86_64 mips64 mips64el)
filter_available_targets(PROFILE_SUPPORTED_ARCH x86_64 i386 i686 arm mips mips64
mipsel mips64el aarch64 powerpc64 powerpc64le)
@@ -277,13 +277,6 @@ else()
set(COMPILER_RT_HAS_LSAN FALSE)
endif()
-if (COMPILER_RT_HAS_SANITIZER_COMMON AND LSAN_COMMON_SUPPORTED_ARCH AND
- OS_NAME MATCHES "Darwin|Linux|FreeBSD|Android")
- set(COMPILER_RT_HAS_LSAN_COMMON TRUE)
-else()
- set(COMPILER_RT_HAS_LSAN_COMMON FALSE)
-endif()
-
if (COMPILER_RT_HAS_SANITIZER_COMMON AND MSAN_SUPPORTED_ARCH AND
OS_NAME MATCHES "Linux")
set(COMPILER_RT_HAS_MSAN TRUE)
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index 6929e682f..91a7037e3 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -7,6 +7,7 @@ include(SanitizerUtils)
if(COMPILER_RT_HAS_SANITIZER_COMMON)
add_subdirectory(interception)
add_subdirectory(sanitizer_common)
+ add_subdirectory(lsan)
endif()
if(COMPILER_RT_HAS_ASAN)
@@ -19,10 +20,6 @@ if(COMPILER_RT_HAS_DFSAN)
add_subdirectory(dfsan)
endif()
-if(COMPILER_RT_HAS_LSAN OR COMPILER_RT_HAS_LSAN_COMMON)
- add_subdirectory(lsan)
-endif()
-
if(COMPILER_RT_HAS_MSAN)
add_subdirectory(msan)
endif()
diff --git a/lib/asan/CMakeLists.txt b/lib/asan/CMakeLists.txt
index 90cb6f843..8b771fbe6 100644
--- a/lib/asan/CMakeLists.txt
+++ b/lib/asan/CMakeLists.txt
@@ -106,12 +106,8 @@ else()
set(ASAN_COMMON_RUNTIME_OBJECTS
$<TARGET_OBJECTS:RTInterception.${arch}>
$<TARGET_OBJECTS:RTSanitizerCommon.${arch}>
- $<TARGET_OBJECTS:RTSanitizerCommonLibc.${arch}>)
- if(NOT WIN32)
- # We can't build Leak Sanitizer on Windows yet.
- list(APPEND ASAN_COMMON_RUNTIME_OBJECTS
- $<TARGET_OBJECTS:RTLSanCommon.${arch}>)
- endif()
+ $<TARGET_OBJECTS:RTSanitizerCommonLibc.${arch}>
+ $<TARGET_OBJECTS:RTLSanCommon.${arch}>)
add_compiler_rt_runtime(clang_rt.asan-${arch} ${arch} STATIC
SOURCES $<TARGET_OBJECTS:RTAsan_preinit.${arch}>