| Chandler Carruth | 8a62907 | 2012-06-30 10:14:27 +0000 | [diff] [blame] | 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. |
| Douglas Gregor | 0770532 | 2009-06-05 16:00:31 +0000 | [diff] [blame] | 3 | |
| NAKAMURA Takumi | 17645a4 | 2013-12-17 04:14:17 +0000 | [diff] [blame] | 4 | if (CMAKE_CFG_INTDIR STREQUAL ".") |
| 5 | set(LLVM_BUILD_MODE ".") |
| 6 | else () |
| 7 | set(LLVM_BUILD_MODE "%(build_mode)s") |
| 8 | endif () |
| 9 | |
| NAKAMURA Takumi | 462ba80 | 2013-12-18 15:08:56 +0000 | [diff] [blame] | 10 | string(REPLACE ${CMAKE_CFG_INTDIR} ${LLVM_BUILD_MODE} CLANG_TOOLS_DIR ${CLANG_RUNTIME_OUTPUT_INTDIR}) |
| NAKAMURA Takumi | 17645a4 | 2013-12-17 04:14:17 +0000 | [diff] [blame] | 11 | string(REPLACE ${CMAKE_CFG_INTDIR} ${LLVM_BUILD_MODE} LLVM_TOOLS_DIR ${LLVM_RUNTIME_OUTPUT_INTDIR}) |
| 12 | string(REPLACE ${CMAKE_CFG_INTDIR} ${LLVM_BUILD_MODE} LLVM_LIBS_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}) |
| 13 | |
| Chandler Carruth | 8279aa7 | 2012-06-29 00:39:23 +0000 | [diff] [blame] | 14 | configure_lit_site_cfg( |
| Daniel Dunbar | 0669670 | 2009-11-07 23:53:32 +0000 | [diff] [blame] | 15 | ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in |
| Chandler Carruth | 8279aa7 | 2012-06-29 00:39:23 +0000 | [diff] [blame] | 16 | ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg |
| 17 | ) |
| Daniel Dunbar | 0669670 | 2009-11-07 23:53:32 +0000 | [diff] [blame] | 18 | |
| Chandler Carruth | 8279aa7 | 2012-06-29 00:39:23 +0000 | [diff] [blame] | 19 | configure_lit_site_cfg( |
| NAKAMURA Takumi | 22ec660 | 2011-02-03 09:01:12 +0000 | [diff] [blame] | 20 | ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.in |
| 21 | ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg |
| Chandler Carruth | 8279aa7 | 2012-06-29 00:39:23 +0000 | [diff] [blame] | 22 | ) |
| NAKAMURA Takumi | 22ec660 | 2011-02-03 09:01:12 +0000 | [diff] [blame] | 23 | |
| Chandler Carruth | 8a62907 | 2012-06-30 10:14:27 +0000 | [diff] [blame] | 24 | option(CLANG_TEST_USE_VG "Run Clang tests under Valgrind" OFF) |
| 25 | if(CLANG_TEST_USE_VG) |
| 26 | set(CLANG_TEST_EXTRA_ARGS ${CLANG_TEST_EXTRA_ARGS} "--vg") |
| 27 | endif () |
| 28 | |
| NAKAMURA Takumi | 5de6b43 | 2013-12-19 16:05:39 +0000 | [diff] [blame] | 29 | list(APPEND CLANG_TEST_DEPS |
| Jordan Rose | 08bf4fd | 2013-02-08 07:28:25 +0000 | [diff] [blame] | 30 | clang clang-headers |
| 31 | c-index-test diagtool arcmt-test c-arcmt-test |
| Daniel Jasper | b7fb5e6 | 2013-03-25 09:14:25 +0000 | [diff] [blame] | 32 | clang-check clang-format |
| Jordan Rose | 08bf4fd | 2013-02-08 07:28:25 +0000 | [diff] [blame] | 33 | ) |
| 34 | set(CLANG_TEST_PARAMS |
| 35 | clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg |
| 36 | ) |
| Chandler Carruth | 8a62907 | 2012-06-30 10:14:27 +0000 | [diff] [blame] | 37 | |
| Jordan Rose | 08bf4fd | 2013-02-08 07:28:25 +0000 | [diff] [blame] | 38 | if( NOT CLANG_BUILT_STANDALONE ) |
| 39 | list(APPEND CLANG_TEST_DEPS |
| NAKAMURA Takumi | 67eade6 | 2013-12-04 03:40:56 +0000 | [diff] [blame] | 40 | llvm-config |
| Evgeniy Stepanov | eeabe82 | 2013-03-13 09:36:02 +0000 | [diff] [blame] | 41 | llc opt FileCheck count not llvm-symbolizer |
| Chandler Carruth | 8a62907 | 2012-06-30 10:14:27 +0000 | [diff] [blame] | 42 | ) |
| Daniel Dunbar | a3b52d7 | 2009-11-03 07:25:53 +0000 | [diff] [blame] | 43 | endif() |
| Chandler Carruth | 8a62907 | 2012-06-30 10:14:27 +0000 | [diff] [blame] | 44 | |
| NAKAMURA Takumi | e6d79ec | 2013-12-19 16:44:32 +0000 | [diff] [blame] | 45 | add_lit_testsuite(check-clang "Running the Clang regression tests" |
| 46 | ${CMAKE_CURRENT_BINARY_DIR} |
| NAKAMURA Takumi | ef4657e | 2013-12-19 17:10:30 +0000 | [diff] [blame^] | 47 | #LIT ${LLVM_LIT} |
| NAKAMURA Takumi | e6d79ec | 2013-12-19 16:44:32 +0000 | [diff] [blame] | 48 | PARAMS ${CLANG_TEST_PARAMS} |
| 49 | DEPENDS ${CLANG_TEST_DEPS} |
| 50 | ARGS ${CLANG_TEST_EXTRA_ARGS} |
| 51 | ) |
| 52 | set_target_properties(check-clang PROPERTIES FOLDER "Clang tests") |
| 53 | |
| Chandler Carruth | 8a62907 | 2012-06-30 10:14:27 +0000 | [diff] [blame] | 54 | # Add a legacy target spelling: clang-test |
| Chandler Carruth | dc2e4bc | 2012-07-02 21:46:03 +0000 | [diff] [blame] | 55 | add_custom_target(clang-test) |
| 56 | add_dependencies(clang-test check-clang) |
| Chandler Carruth | 8a62907 | 2012-06-30 10:14:27 +0000 | [diff] [blame] | 57 | set_target_properties(clang-test PROPERTIES FOLDER "Clang tests") |