From: Jordan Rose Date: Fri, 8 Feb 2013 07:28:25 +0000 (+0000) Subject: CMake: Include Clang unit tests in check-clang target in standalone builds. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=08bf4fd345db86218dea3412b6fdb5463d9248ad;p=platform%2Fupstream%2Fllvm.git CMake: Include Clang unit tests in check-clang target in standalone builds. Also, remove CLANG_BUILD_TESTS option. It won't have consistent behavior between standalone and non-standalone builds, so I'm not going to bother hooking it up for standalone builds. LLVM_BUILD_TESTS will continue to control unit test inclusion in the "all" target in non-standalone builds. Finally, fix the default value of CLANG_INCLUDE_TESTS, which was being set to the boolean value of "LLVM_INCLUDE_TESTS", i.e. OFF, rather than actually reading the variable ${LLVM_INCLUDE_TESTS}! If you picked up my earlier commit, YOU WILL HAVE TO MANUALLY SET THIS OPTION BACK ON. My apologies! Part two of r174691 (allow the unit tests to be built in standalone mode). llvm-svn: 174698 --- diff --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt index d1c8cec..14fe46f 100644 --- a/clang/CMakeLists.txt +++ b/clang/CMakeLists.txt @@ -279,17 +279,12 @@ add_subdirectory(examples) # TODO: docs. add_subdirectory(test) -option(CLANG_BUILD_TESTS - "Build Clang unit tests. If OFF, just generate build targets." - LLVM_BUILD_TESTS) option(CLANG_INCLUDE_TESTS "Generate build targets for the Clang unit tests." - LLVM_INCLUDE_TESTS) + ${LLVM_INCLUDE_TESTS}) if( CLANG_INCLUDE_TESTS ) add_subdirectory(unittests) -elseif( CLANG_BUILD_TESTS ) - message(FATAL_ERROR "CLANG_BUILD_TESTS requires CLANG_INCLUDE_TESTS") endif() # Workaround for MSVS10 to avoid the Dialog Hell diff --git a/clang/test/CMakeLists.txt b/clang/test/CMakeLists.txt index b8bec62..8da2ba4 100644 --- a/clang/test/CMakeLists.txt +++ b/clang/test/CMakeLists.txt @@ -26,24 +26,27 @@ if(CLANG_TEST_USE_VG) set(CLANG_TEST_EXTRA_ARGS ${CLANG_TEST_EXTRA_ARGS} "--vg") endif () -if( NOT CLANG_BUILT_STANDALONE ) +set(CLANG_TEST_DEPS + clang clang-headers + c-index-test diagtool arcmt-test c-arcmt-test + clang-check + ) +set(CLANG_TEST_PARAMS + clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg + ) - set(CLANG_TEST_DEPS - clang clang-headers - c-index-test diagtool arcmt-test c-arcmt-test - clang-check - llc opt FileCheck count not +if(CLANG_INCLUDE_TESTS) + list(APPEND CLANG_TEST_DEPS ClangUnitTests) + list(APPEND CLANG_TEST_PARAMS + clang_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg ) - set(CLANG_TEST_PARAMS - clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg +endif() + +if( NOT CLANG_BUILT_STANDALONE ) + list(APPEND CLANG_TEST_DEPS + llc opt FileCheck count not ) - if(LLVM_INCLUDE_TESTS) - list(APPEND CLANG_TEST_DEPS ClangUnitTests) - list(APPEND CLANG_TEST_PARAMS - clang_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg - ) - endif() add_lit_testsuite(check-clang "Running the Clang regression tests" ${CMAKE_CURRENT_BINARY_DIR} PARAMS ${CLANG_TEST_PARAMS} @@ -68,18 +71,21 @@ else() set(LIT_ARGS "${CLANG_TEST_EXTRA_ARGS} ${LLVM_LIT_ARGS}") separate_arguments(LIT_ARGS) + + list(APPEND CLANG_TEST_PARAMS build_mode=${CMAKE_CFG_INTDIR}) + + foreach(param ${CLANG_TEST_PARAMS}) + list(APPEND LIT_ARGS --param ${param}) + endforeach() add_custom_target(check-clang COMMAND ${PYTHON_EXECUTABLE} ${LIT} - --param clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg - --param build_mode=${CMAKE_CFG_INTDIR} ${LIT_ARGS} ${CMAKE_CURRENT_BINARY_DIR} + ${CLANG_TEST_EXTRA_ARGS} COMMENT "Running Clang regression tests" - DEPENDS clang clang-headers - c-index-test diagtool arcmt-test c-arcmt-test - clang-check + DEPENDS ${CLANG_TEST_DEPS} ) set_target_properties(check-clang PROPERTIES FOLDER "Clang tests") endif()