diff options
| author | Alexey Samsonov <vonosmas@gmail.com> | 2015-03-23 23:14:16 +0000 |
|---|---|---|
| committer | Alexey Samsonov <vonosmas@gmail.com> | 2015-03-23 23:14:16 +0000 |
| commit | c4eb977b0f443a656e361bafdf9aa8abd96d38b0 (patch) | |
| tree | bcd035b49f3e9872ecf05bc3d2aedf3623cffef7 /compiler-rt/lib | |
| parent | 498f3c341699a5ecf9375e542f7ca337860f19d4 (diff) | |
| download | bcm5719-llvm-c4eb977b0f443a656e361bafdf9aa8abd96d38b0.tar.gz bcm5719-llvm-c4eb977b0f443a656e361bafdf9aa8abd96d38b0.zip | |
[UBSan] Use shared library for UBSan on OS X (compiler-rt part).
Summary:
Switch to shared library for UBSan. Add support for building
UBSan on OSX and iossim by cargo-culting ASan build rules.
Test Plan: regression test suite
Reviewers: zaks.anna, kubabrecka
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D8473
llvm-svn: 233036
Diffstat (limited to 'compiler-rt/lib')
| -rw-r--r-- | compiler-rt/lib/ubsan/CMakeLists.txt | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/compiler-rt/lib/ubsan/CMakeLists.txt b/compiler-rt/lib/ubsan/CMakeLists.txt index 07b163d65c5..8c2d30bad40 100644 --- a/compiler-rt/lib/ubsan/CMakeLists.txt +++ b/compiler-rt/lib/ubsan/CMakeLists.txt @@ -22,13 +22,19 @@ set(UBSAN_CXXFLAGS ${SANITIZER_COMMON_CFLAGS}) add_custom_target(ubsan) if(APPLE) - # Build universal binary on APPLE. - add_compiler_rt_osx_static_runtime(clang_rt.ubsan_osx - ARCH ${UBSAN_SUPPORTED_ARCH} - SOURCES ${UBSAN_SOURCES} ${UBSAN_CXX_SOURCES} - $<TARGET_OBJECTS:RTSanitizerCommon.osx> - CFLAGS ${UBSAN_CXXFLAGS}) - add_dependencies(ubsan clang_rt.ubsan_osx) + foreach(os ${SANITIZER_COMMON_SUPPORTED_DARWIN_OS}) + add_compiler_rt_darwin_object_library(RTUbsan ${os} + ARCH ${UBSAN_SUPPORTED_ARCH} + SOURCES ${UBSAN_SOURCES} ${UBSAN_CXX_SOURCES} + CFLAGS ${UBSAN_CXXFLAGS}) + + add_compiler_rt_darwin_dynamic_runtime(clang_rt.ubsan_${os}_dynamic ${os} + ARCH ${UBSAN_SUPPORTED_ARCH} + SOURCES $<TARGET_OBJECTS:RTUbsan.${os}> + $<TARGET_OBJECTS:RTSanitizerCommon.${os}>) + + add_dependencies(ubsan clang_rt.ubsan_${os}_dynamic) + endforeach() else() # Build separate libraries for each target. foreach(arch ${UBSAN_SUPPORTED_ARCH}) |

