diff --git a/cmake/Version.cmake b/cmake/Version.cmake index 058cc5de1..ee99f6abc 100644 --- a/cmake/Version.cmake +++ b/cmake/Version.cmake @@ -132,26 +132,26 @@ else(FORCE_GIT_REVISION) RESULT_VARIABLE GIT_INFO_RESULT OUTPUT_VARIABLE GIT_REV OUTPUT_STRIP_TRAILING_WHITESPACE) - message(STATUS "git describe (${GIT_INFO_RESULT}) $ ${GIT_REV}") + if(NOT ${GIT_INFO_RESULT} EQUAL 0) + message(SEND_ERROR "git describe failed with code ${GIT_INFO_RESULT}: ${GIT_REV}") + endif() endif() endif() -if(${GIT_INFO_RESULT} EQUAL 0) - string(REGEX REPLACE "^(.+)-([0-9]+)-(g[a-f0-9]+)$" "\\1;\\2;\\3" - GIT_PARTS ${GIT_REV}) +string(REGEX REPLACE "^(.+)-([0-9]+)-(g[a-f0-9]+)$" "\\1;\\2;\\3" + GIT_PARTS ${GIT_REV}) - if(NOT GIT_PARTS) - message(FATAL_ERROR "Failed to parse git revision string '${GIT_REV}'") - endif(NOT GIT_PARTS) +if(NOT GIT_PARTS) + message(FATAL_ERROR "Failed to parse git revision string '${GIT_REV}'") +endif(NOT GIT_PARTS) - list(LENGTH GIT_PARTS GIT_PARTS_LENGTH) - if(GIT_PARTS_LENGTH EQUAL 3) - list(GET GIT_PARTS 0 GIT_TAGNAME) - list(GET GIT_PARTS 1 GIT_COMMITCOUNT) - list(GET GIT_PARTS 2 GIT_SHA1) - set(HAS_GIT_REVISION ON) - endif(GIT_PARTS_LENGTH EQUAL 3) -endif(${GIT_INFO_RESULT} EQUAL 0) +list(LENGTH GIT_PARTS GIT_PARTS_LENGTH) +if(GIT_PARTS_LENGTH EQUAL 3) + list(GET GIT_PARTS 0 GIT_TAGNAME) + list(GET GIT_PARTS 1 GIT_COMMITCOUNT) + list(GET GIT_PARTS 2 GIT_SHA1) + set(HAS_GIT_REVISION ON) +endif(GIT_PARTS_LENGTH EQUAL 3) if(INCLUDE_GIT_REVISION AND HAS_GIT_REVISION) set(CLEMENTINE_VERSION_DISPLAY "${GIT_REV}")