RunCMakeTest.cmake 803 B

1234567891011121314151617
  1. include(RunCMake)
  2. function(install_test test parallel install_target check_script)
  3. set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/${test}-install)
  4. set(RunCMake_TEST_OPTIONS -DINSTALL_PARALLEL=${parallel})
  5. if (NOT RunCMake_GENERATOR_IS_MULTI_CONFIG)
  6. list(APPEND RunCMake_TEST_OPTIONS -DCMAKE_BUILD_TYPE=Debug)
  7. endif()
  8. run_cmake(install)
  9. set(RunCMake_TEST_NO_CLEAN 1)
  10. run_cmake_command(${test}-install ${CMAKE_COMMAND} --build . --config Debug -t ${install_target})
  11. set(RunCMake_TEST_COMMAND_WORKING_DIRECTORY ${RunCMake_SOURCE_DIR})
  12. run_cmake_command(verify-parallel ${CMAKE_COMMAND} -P ${check_script} ${RunCMake_TEST_BINARY_DIR}/.ninja_log)
  13. endfunction()
  14. install_test(parallel 1 install/parallel check-parallel.cmake)
  15. install_test(no-parallel 0 install check-single.cmake)