summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKuba Mracek <mracek@apple.com>2017-07-12 21:02:48 +0000
committerKuba Mracek <mracek@apple.com>2017-07-12 21:02:48 +0000
commit835fb5484f8b11c84eeb366cbc2cd4f60eff1a47 (patch)
treed81b7fcdf673bd9eb5669d88c17ec466a4574e62
parentb6742fdee94a488c5152e67bc7e0c84afade5236 (diff)
downloadcompiler-rt-835fb5484f8b11c84eeb366cbc2cd4f60eff1a47.tar.gz
Add explicit CMake targets for ASan/TSan iOS Simulator testing and update the instructions how to run them.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@307844 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/asan/CMakeLists.txt17
-rw-r--r--test/tsan/CMakeLists.txt17
2 files changed, 26 insertions, 8 deletions
diff --git a/test/asan/CMakeLists.txt b/test/asan/CMakeLists.txt
index 87fa9d138..8bfc15b5c 100644
--- a/test/asan/CMakeLists.txt
+++ b/test/asan/CMakeLists.txt
@@ -84,12 +84,13 @@ foreach(arch ${ASAN_TEST_ARCH})
endforeach()
# iOS and iOS simulator test suites
-# These are not added into "check-all", in order to run these tests, you have to
-# manually call (from the build directory). They also require that an extra env
+# These are not added into "check-all", in order to run these tests, use
+# "check-asan-iossim-x86_64" and similar. They also require that an extra env
# variable to select which iOS device or simulator to use, e.g.:
-# $ SANITIZER_IOSSIM_TEST_DEVICE_IDENTIFIER=BBE44C1C-8AAA-4000-8D06-91C89ED58172
-# $ ./bin/llvm-lit ./projects/compiler-rt/test/asan/IOSSimI386Config
+# SANITIZER_IOSSIM_TEST_DEVICE_IDENTIFIER="iPhone 6"
if(APPLE)
+ set(EXCLUDE_FROM_ALL ON)
+
set(ASAN_TEST_TARGET_CC ${COMPILER_RT_TEST_COMPILER})
set(ASAN_TEST_IOS "1")
pythonize_bool(ASAN_TEST_IOS)
@@ -108,6 +109,9 @@ if(APPLE)
${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/lit.site.cfg
)
+ add_lit_testsuite(check-asan-iossim-${arch} "AddressSanitizer iOS Simulator ${arch} tests"
+ ${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/
+ DEPENDS ${ASAN_TEST_DEPS})
endforeach()
foreach (arch ${DARWIN_ios_ARCHS})
@@ -123,7 +127,12 @@ if(APPLE)
${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/lit.site.cfg
)
+ add_lit_testsuite(check-asan-ios-${arch} "AddressSanitizer iOS ${arch} tests"
+ ${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/
+ DEPENDS ${ASAN_TEST_DEPS})
endforeach()
+
+ set(EXCLUDE_FROM_ALL OFF)
endif()
# Add unit tests.
diff --git a/test/tsan/CMakeLists.txt b/test/tsan/CMakeLists.txt
index 37b309d64..a68908612 100644
--- a/test/tsan/CMakeLists.txt
+++ b/test/tsan/CMakeLists.txt
@@ -43,12 +43,13 @@ foreach(arch ${TSAN_TEST_ARCH})
endforeach()
# iOS and iOS simulator test suites
-# These are not added into "check-all", in order to run these tests, you have to
-# manually call (from the build directory). They also require that an extra env
+# These are not added into "check-all", in order to run these tests, use
+# "check-tsan-iossim-x86_64" and similar. They also require an extra environment
# variable to select which iOS device or simulator to use, e.g.:
-# $ SANITIZER_IOSSIM_TEST_DEVICE_IDENTIFIER=BBE44C1C-8AAA-4000-8D06-91C89ED58172
-# $ ./bin/llvm-lit ./projects/compiler-rt/test/tsan/IOSSimX86_64Config
+# SANITIZER_IOSSIM_TEST_DEVICE_IDENTIFIER="iPhone 6"
if(APPLE)
+ set(EXCLUDE_FROM_ALL ON)
+
set(TSAN_TEST_TARGET_CC ${COMPILER_RT_TEST_COMPILER})
set(TSAN_TEST_IOS "1")
pythonize_bool(TSAN_TEST_IOS)
@@ -65,6 +66,9 @@ if(APPLE)
${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/lit.site.cfg
)
+ add_lit_testsuite(check-tsan-iossim-${arch} "ThreadSanitizer iOS Simulator ${arch} tests"
+ ${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/
+ DEPENDS ${TSAN_TEST_DEPS})
set(arch "arm64")
set(TSAN_TEST_IOSSIM "0")
@@ -78,6 +82,11 @@ if(APPLE)
${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/lit.site.cfg
)
+ add_lit_testsuite(check-tsan-ios-${arch} "ThreadSanitizer iOS Simulator ${arch} tests"
+ ${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/
+ DEPENDS ${TSAN_TEST_DEPS})
+
+ set(EXCLUDE_FROM_ALL OFF)
endif()
if(COMPILER_RT_INCLUDE_TESTS)