You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
789 B
19 lines
789 B
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -129,7 +129,14 @@
|
|
ERROR_QUIET
|
|
)
|
|
ENDIF()
|
|
-IF((NOT ${ADD_GIT_INFO}) OR (${PROJECT_VERSION_GIT_RETURN_CODE}))
|
|
+# the version.h generation logic is tricky in a number of ways:
|
|
+# 1. git describe on a release tarball will always fail with
|
|
+# a non-zero return code, usually 128
|
|
+# 2. If git is not installed, PROJECT_VERSION_GIT_RETURN_CODE
|
|
+# will contain the string 'No such file or directory'
|
|
+# Hence fallback to PROJECT_VERSION when the return code is NOT 0.
|
|
+IF((NOT ${ADD_GIT_INFO}) OR (NOT ${PROJECT_VERSION_GIT_RETURN_CODE} STREQUAL "0"))
|
|
+ MESSAGE(STATUS "Setting fallback Git library version")
|
|
SET(PROJECT_VERSION_GIT "v${PROJECT_VERSION}")
|
|
ENDIF()
|
|
MESSAGE(STATUS "Setting Git library version to: " ${PROJECT_VERSION_GIT} )
|