dashboard.cmake.in 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. set(_isMultiConfig "@_isMultiConfig@")
  2. set(CTEST_SOURCE_DIRECTORY "@CMake_SOURCE_DIR@/Tests/CTestConfig")
  3. set(CTEST_BINARY_DIRECTORY "@CMake_BINARY_DIR@/Tests/CTestConfig/@cfg@-dashboard")
  4. file(MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}")
  5. get_filename_component(dir "${CMAKE_COMMAND}" PATH)
  6. set(CMAKE_CTEST_COMMAND "${dir}/ctest")
  7. message("CMAKE_COMMAND='${CMAKE_COMMAND}'")
  8. message("CMAKE_CTEST_COMMAND='${CMAKE_CTEST_COMMAND}'")
  9. set(arg "")
  10. if(NOT _isMultiConfig)
  11. set(arg "-DCMAKE_BUILD_TYPE:STRING=@cfg@")
  12. else()
  13. set(arg "-DCMAKE_CONFIGURATION_TYPES=Debug\\;Release\\;MinSizeRel\\;RelWithDebInfo")
  14. endif()
  15. message("cmake initial configure")
  16. execute_process(COMMAND ${CMAKE_COMMAND}
  17. ${arg}
  18. -G "@CMAKE_GENERATOR@"
  19. -A "@CMAKE_GENERATOR_PLATFORM@"
  20. -T "@CMAKE_GENERATOR_TOOLSET@"
  21. ${CTEST_SOURCE_DIRECTORY}
  22. WORKING_DIRECTORY ${CTEST_BINARY_DIRECTORY}
  23. RESULT_VARIABLE rv)
  24. if(NOT rv STREQUAL 0)
  25. message(FATAL_ERROR "error calling cmake: rv='${rv}'")
  26. endif()
  27. function(call_ctest arg)
  28. message("call_ctest ${arg}")
  29. execute_process(COMMAND ${CMAKE_CTEST_COMMAND}
  30. -C "@cfg@" -D ${arg} -VV
  31. WORKING_DIRECTORY ${CTEST_BINARY_DIRECTORY}
  32. RESULT_VARIABLE rv)
  33. if(NOT rv STREQUAL 0)
  34. message(FATAL_ERROR "error calling ctest: rv='${rv}'")
  35. endif()
  36. endfunction()
  37. call_ctest(ExperimentalStart)
  38. call_ctest(ExperimentalConfigure)
  39. call_ctest(ExperimentalBuild)
  40. call_ctest(ExperimentalTest)