diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2014-11-24 09:15:30 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2014-11-24 09:15:30 +0000 |
commit | 9f4dbff6669c8037f3b036bcf580d14f1a4f12a5 (patch) | |
tree | 47df2c12b57214af6c31e47404b005675b8b7ffc /test/CMakeLists.txt | |
parent | f73d5f23a889b93d89ddef61ac0995df40286bb8 (diff) | |
download | src-9f4dbff6669c8037f3b036bcf580d14f1a4f12a5.tar.gz src-9f4dbff6669c8037f3b036bcf580d14f1a4f12a5.zip |
Vendor import of clang RELEASE_350/final tag r216957 (effectively, 3.5.0 release):vendor/clang/clang-release_350-r216957
Notes
Notes:
svn path=/vendor/clang/dist/; revision=274958
svn path=/vendor/clang/clang-release_350-r216957/; revision=274959; tag=vendor/clang/clang-release_350-r216957
Diffstat (limited to 'test/CMakeLists.txt')
-rw-r--r-- | test/CMakeLists.txt | 103 |
1 files changed, 41 insertions, 62 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index a11b83a854cb..591a9272ae6d 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,11 +1,13 @@ # Test runner infrastructure for Clang. This configures the Clang test trees # for use by Lit, and delegates to LLVM's lit test handlers. -# -# If this is a stand-alone Clang build, we fake up our own Lit support here -# rather than relying on LLVM's. -set(CLANG_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/..") -set(CLANG_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/..") +if (CMAKE_CFG_INTDIR STREQUAL ".") + set(LLVM_BUILD_MODE ".") +else () + set(LLVM_BUILD_MODE "%(build_mode)s") +endif () + +string(REPLACE ${CMAKE_CFG_INTDIR} ${LLVM_BUILD_MODE} CLANG_TOOLS_DIR ${LLVM_RUNTIME_OUTPUT_INTDIR}) configure_lit_site_cfg( ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in @@ -17,81 +19,58 @@ configure_lit_site_cfg( ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg ) -if( PATH_TO_LLVM_BUILD ) - set(CLANG_TEST_EXTRA_ARGS "--path=${CLANG_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}") -endif() - option(CLANG_TEST_USE_VG "Run Clang tests under Valgrind" OFF) if(CLANG_TEST_USE_VG) set(CLANG_TEST_EXTRA_ARGS ${CLANG_TEST_EXTRA_ARGS} "--vg") endif () -set(CLANG_TEST_DEPS +list(APPEND CLANG_TEST_DEPS clang clang-headers - c-index-test diagtool arcmt-test c-arcmt-test clang-check clang-format - ) -set(CLANG_TEST_PARAMS - clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg + c-index-test diagtool + clang-tblgen ) -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 - ) -endif() +if (CLANG_ENABLE_ARCMT) + list(APPEND CLANG_TEST_DEPS + arcmt-test + c-arcmt-test + ) +endif () -if( NOT CLANG_BUILT_STANDALONE ) +if (ENABLE_CLANG_EXAMPLES) list(APPEND CLANG_TEST_DEPS - llc opt FileCheck count not llvm-symbolizer + clang-interpreter + PrintFunctionNames ) +endif () - add_lit_testsuite(check-clang "Running the Clang regression tests" - ${CMAKE_CURRENT_BINARY_DIR} - PARAMS ${CLANG_TEST_PARAMS} - DEPENDS ${CLANG_TEST_DEPS} - ARGS ${CLANG_TEST_EXTRA_ARGS} +if (ENABLE_CLANG_STATIC_ANALYZER AND ENABLE_CLANG_EXAMPLES) + list(APPEND CLANG_TEST_DEPS + SampleAnalyzerPlugin ) - set_target_properties(check-clang PROPERTIES FOLDER "Clang tests") - -else() - - include(FindPythonInterp) - if(PYTHONINTERP_FOUND) - if( LLVM_MAIN_SRC_DIR ) - set(LIT "${LLVM_MAIN_SRC_DIR}/utils/lit/lit.py") - else() - set(LIT "${PATH_TO_LLVM_BUILD}/bin/${CMAKE_CFG_INTDIR}/llvm-lit") - # Installed LLVM does not contain ${CMAKE_CFG_INTDIR} in paths. - if( NOT EXISTS ${LIT} ) - set(LIT "${PATH_TO_LLVM_BUILD}/bin/llvm-lit") - endif() - endif() - - 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() +endif () - add_custom_target(check-clang - COMMAND ${PYTHON_EXECUTABLE} - ${LIT} - ${LIT_ARGS} - ${CMAKE_CURRENT_BINARY_DIR} - ${CLANG_TEST_EXTRA_ARGS} - COMMENT "Running Clang regression tests" - DEPENDS ${CLANG_TEST_DEPS} - ) - set_target_properties(check-clang PROPERTIES FOLDER "Clang tests") - endif() +set(CLANG_TEST_PARAMS + clang_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg + ) +if( NOT CLANG_BUILT_STANDALONE ) + list(APPEND CLANG_TEST_DEPS + llvm-config + llc opt FileCheck count not llvm-symbolizer llvm-profdata + ) endif() +add_lit_testsuite(check-clang "Running the Clang regression tests" + ${CMAKE_CURRENT_BINARY_DIR} + #LIT ${LLVM_LIT} + PARAMS ${CLANG_TEST_PARAMS} + DEPENDS ${CLANG_TEST_DEPS} + ARGS ${CLANG_TEST_EXTRA_ARGS} + ) +set_target_properties(check-clang PROPERTIES FOLDER "Clang tests") + # Add a legacy target spelling: clang-test add_custom_target(clang-test) add_dependencies(clang-test check-clang) |