1 set(CLANG_TEST_DIRECTORIES
28 set(LLVM_SOURCE_DIR "${LLVM_MAIN_SRC_DIR}")
29 set(LLVM_BINARY_DIR "${LLVM_BINARY_DIR}")
30 set(LLVM_BUILD_MODE "%(build_mode)s")
31 set(LLVM_TOOLS_DIR "${LLVM_TOOLS_BINARY_DIR}/%(build_config)s")
32 set(LLVM_LIBS_DIR "${LLVM_BINARY_DIR}/lib/%(build_config)s")
33 set(CLANG_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/..")
34 set(CLANG_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/..")
39 endif(BUILD_SHARED_LIBS)
42 ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
43 ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg)
46 ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.in
47 ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
50 include(FindPythonInterp)
51 if(PYTHONINTERP_FOUND)
52 if( LLVM_MAIN_SRC_DIR )
53 set(LIT "${LLVM_SOURCE_DIR}/utils/lit/lit.py")
55 set(LIT "${PATH_TO_LLVM_BUILD}/bin/${CMAKE_CFG_INTDIR}/llvm-lit")
58 if( PATH_TO_LLVM_BUILD )
59 set(CLANG_TEST_EXTRA_ARGS "--path=${CLANG_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}")
62 option(CLANG_TEST_USE_VG "Run Clang tests under Valgrind" OFF)
64 set(CLANG_TEST_EXTRA_ARGS ${CLANG_TEST_EXTRA_ARGS} "--vg")
67 set(LIT_ARGS "${CLANG_TEST_EXTRA_ARGS} ${LLVM_LIT_ARGS}")
68 separate_arguments(LIT_ARGS)
70 add_custom_target(clang-test.deps)
72 foreach(testdir ${CLANG_TEST_DIRECTORIES})
73 add_custom_target(clang-test-${testdir}
74 COMMAND ${PYTHON_EXECUTABLE}
76 --param clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
77 --param build_config=${CMAKE_CFG_INTDIR}
79 ${CMAKE_CURRENT_BINARY_DIR}/${testdir}
80 DEPENDS clang c-index-test FileCheck not count
81 COMMENT "Running Clang regression tests in ${testdir}")
84 add_custom_target(clang-test
85 COMMAND ${PYTHON_EXECUTABLE}
87 --param clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
88 --param clang_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
89 --param build_config=${CMAKE_CFG_INTDIR}
90 --param build_mode=${RUNTIME_BUILD_MODE}
92 ${CMAKE_CURRENT_BINARY_DIR}
93 COMMENT "Running Clang regression tests")
95 add_custom_target(clang-c++tests
96 COMMAND ${PYTHON_EXECUTABLE}
98 --param clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
99 --param build_config=${CMAKE_CFG_INTDIR}
101 ${CMAKE_CURRENT_SOURCE_DIR}/../utils/C++Tests
102 DEPENDS clang c-index-test FileCheck not count
103 COMMENT "Running Clang regression tests")
105 if( NOT CLANG_BUILT_STANDALONE )
106 add_custom_target(check-all
107 COMMAND ${PYTHON_EXECUTABLE}
109 --param build_config=${CMAKE_CFG_INTDIR}
110 --param build_mode=${RUNTIME_BUILD_MODE}
112 ${LLVM_BINARY_DIR}/test
113 ${CMAKE_CURRENT_BINARY_DIR}
114 COMMENT "Running Clang and LLVM regression tests")
115 add_dependencies(check-all check.deps clang-test.deps)
116 add_dependencies(clang-test.deps ClangUnitTests)
119 add_dependencies(clang-test clang-test.deps)
120 add_dependencies(clang-test.deps
121 clang clang-headers c-index-test