1 # Test runner infrastructure for Clang. This configures the Clang test trees
2 # for use by Lit, and delegates to LLVM's lit test handlers.
4 if (CMAKE_CFG_INTDIR STREQUAL ".")
5 set(LLVM_BUILD_MODE ".")
7 set(LLVM_BUILD_MODE "%(build_mode)s")
10 string(REPLACE ${CMAKE_CFG_INTDIR} ${LLVM_BUILD_MODE} CLANG_TOOLS_DIR ${LLVM_RUNTIME_OUTPUT_INTDIR})
12 configure_lit_site_cfg(
13 ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
14 ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
17 configure_lit_site_cfg(
18 ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.in
19 ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
22 option(CLANG_TEST_USE_VG "Run Clang tests under Valgrind" OFF)
24 set(CLANG_TEST_EXTRA_ARGS ${CLANG_TEST_EXTRA_ARGS} "--vg")
27 list(APPEND CLANG_TEST_DEPS
29 clang-check clang-format
34 if (CLANG_ENABLE_ARCMT)
35 list(APPEND CLANG_TEST_DEPS
41 if (ENABLE_CLANG_EXAMPLES)
42 list(APPEND CLANG_TEST_DEPS
48 if (ENABLE_CLANG_STATIC_ANALYZER AND ENABLE_CLANG_EXAMPLES)
49 list(APPEND CLANG_TEST_DEPS
55 clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
58 if( NOT CLANG_BUILT_STANDALONE )
59 list(APPEND CLANG_TEST_DEPS
61 llc opt FileCheck count not llvm-symbolizer llvm-profdata
65 add_lit_testsuite(check-clang "Running the Clang regression tests"
66 ${CMAKE_CURRENT_BINARY_DIR}
68 PARAMS ${CLANG_TEST_PARAMS}
69 DEPENDS ${CLANG_TEST_DEPS}
70 ARGS ${CLANG_TEST_EXTRA_ARGS}
72 set_target_properties(check-clang PROPERTIES FOLDER "Clang tests")
74 # Add a legacy target spelling: clang-test
75 add_custom_target(clang-test)
76 add_dependencies(clang-test check-clang)
77 set_target_properties(clang-test PROPERTIES FOLDER "Clang tests")