RunGit.cmake 817 B

123456789101112131415161718192021222324
  1. cmake_minimum_required(VERSION 3.12)
  2. function(run_git exe exe_display)
  3. execute_process(COMMAND ${exe} --version
  4. OUTPUT_VARIABLE output
  5. OUTPUT_STRIP_TRAILING_WHITESPACE
  6. RESULT_VARIABLE result
  7. )
  8. if(NOT result EQUAL 0)
  9. message(SEND_ERROR "Result of ${exe_display} --version is ${result}, should be 0")
  10. endif()
  11. if(NOT output STREQUAL "git version ${Git_VERSION}")
  12. message(SEND_ERROR "Output of ${exe_display} --version is \"${output}\", should be \"git version ${Git_VERSION}\"")
  13. endif()
  14. if(NOT Git_VERSION VERSION_EQUAL GIT_VERSION_STRING)
  15. message(SEND_ERROR "Git_VERSION=\"${Git_VERSION}\" is not equal to GIT_VERSION_STRING=\"${GIT_VERSION_STRING}\"")
  16. endif()
  17. endfunction()
  18. run_git("${GIT_EXECUTABLE}" "\${GIT_EXECUTABLE}")
  19. run_git("${GIT_EXECUTABLE_TARGET}" "Git::Git")