Index: test/CMakeLists.txt =================================================================== --- test/CMakeLists.txt +++ test/CMakeLists.txt @@ -45,6 +45,9 @@ if(COMPILER_RT_HAS_DFSAN) add_subdirectory(dfsan) endif() + if (COMPILER_RT_HAS_INTERCEPTION) + add_subdirectory(interception) + endif() if(COMPILER_RT_HAS_LSAN) add_subdirectory(lsan) endif() Index: test/interception/CMakeLists.txt =================================================================== --- /dev/null +++ test/interception/CMakeLists.txt @@ -0,0 +1,16 @@ +set(INTERCEPTION_TEST_DEPS ${SANITIZER_COMMON_LIT_TEST_DEPS}) +set(INTERCEPTION_TESTSUITES) + +# Unit tests. +if(COMPILER_RT_INCLUDE_TESTS) + configure_lit_site_cfg( + ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.in + ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg) + list(APPEND INTERCEPTION_TESTSUITES ${CMAKE_CURRENT_BINARY_DIR}/Unit) + list(APPEND INTERCEPTION_TEST_DEPS InterceptionUnitTests) +endif() + +add_lit_testsuite(check-interception "Running the Interception tests" + ${INTERCEPTION_TESTSUITES} + DEPENDS ${INTERCEPTION_TEST_DEPS}) +set_target_properties(check-interception PROPERTIES FOLDER "Compiler-RT Misc") Index: test/interception/Unit/lit.site.cfg.in =================================================================== --- /dev/null +++ test/interception/Unit/lit.site.cfg.in @@ -0,0 +1,14 @@ +@LIT_SITE_CFG_IN_HEADER@ + +# Load common config for all compiler-rt unit tests. +lit_config.load_config(config, "@COMPILER_RT_BINARY_DIR@/unittests/lit.common.unit.configured") + +# Setup config name. +config.name = 'Interception-Unit' + +# Setup test source and exec root. For unit tests, we define +# it as build directory with interception tests. +# FIXME: De-hardcode this path. +config.test_exec_root = os.path.join("@COMPILER_RT_BINARY_DIR@", "lib", + "interception", "tests") +config.test_source_root = config.test_exec_root