eigen/scripts/cdashtesting.cmake.in
2019-12-04 11:24:06 +01:00

50 lines
1.5 KiB
CMake

set(CTEST_SOURCE_DIRECTORY "@CMAKE_SOURCE_DIR@")
set(CTEST_BINARY_DIRECTORY "@CMAKE_BINARY_DIR@")
set(CTEST_CMAKE_GENERATOR "@CMAKE_GENERATOR@")
set(CTEST_BUILD_NAME "@BUILDNAME@")
set(CTEST_SITE "@SITE@")
set(MODEL Experimental)
if(${CTEST_SCRIPT_ARG} MATCHES Nightly)
set(MODEL Nightly)
elseif(${CTEST_SCRIPT_ARG} MATCHES Continuous)
set(MODEL Continuous)
endif()
find_program(CTEST_GIT_COMMAND NAMES git)
set(CTEST_UPDATE_COMMAND "${CTEST_GIT_COMMAND}")
ctest_start(${MODEL} ${CTEST_SOURCE_DIRECTORY} ${CTEST_BINARY_DIRECTORY})
ctest_update(SOURCE "${CTEST_SOURCE_DIRECTORY}")
ctest_submit(PARTS Update Notes)
# to get CTEST_PROJECT_SUBPROJECTS definition:
include("${CTEST_SOURCE_DIRECTORY}/CTestConfig.cmake")
foreach(subproject ${CTEST_PROJECT_SUBPROJECTS})
message("")
message("Process ${subproject}")
set_property(GLOBAL PROPERTY SubProject ${subproject})
set_property(GLOBAL PROPERTY Label ${subproject})
ctest_configure(BUILD ${CTEST_BINARY_DIRECTORY} SOURCE ${CTEST_SOURCE_DIRECTORY} )
ctest_submit(PARTS Configure)
set(CTEST_BUILD_TARGET "Build${subproject}")
message("Build ${CTEST_BUILD_TARGET}")
ctest_build(BUILD "${CTEST_BINARY_DIRECTORY}" APPEND)
# builds target ${CTEST_BUILD_TARGET}
ctest_submit(PARTS Build)
ctest_test(BUILD "${CTEST_BINARY_DIRECTORY}" INCLUDE_LABEL "${subproject}" )
# runs only tests that have a LABELS property matching "${subproject}"
ctest_coverage(BUILD "${CTEST_BINARY_DIRECTORY}" LABELS "${subproject}" )
ctest_submit(PARTS Test)
endforeach()