summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorNicholas Corgan <n.corgan@gmail.com>2016-08-01 13:16:42 -0700
committerJohnathan Corgan <johnathan@corganlabs.com>2016-08-01 13:16:59 -0700
commit3d9ccb49432e6ff33c568c89e88fc431111abb3f (patch)
tree1e431e926f08f0abae2bd4d4df86f118d9a01d3b /cmake
parent7087b029b3d77efe2f4430cc6281eda99d3e4586 (diff)
cmake: fix for when tree is git but git describe fails
Diffstat (limited to 'cmake')
-rw-r--r--cmake/Modules/GrVersion.cmake21
1 files changed, 14 insertions, 7 deletions
diff --git a/cmake/Modules/GrVersion.cmake b/cmake/Modules/GrVersion.cmake
index dceac67bab..414c34d64f 100644
--- a/cmake/Modules/GrVersion.cmake
+++ b/cmake/Modules/GrVersion.cmake
@@ -33,6 +33,16 @@ set(MAINT_VERSION ${VERSION_INFO_MAINT_VERSION})
########################################################################
find_package(Git)
+MACRO(create_manual_git_describe)
+ if(NOT GR_GIT_COUNT)
+ set(GR_GIT_COUNT "compat-xxx")
+ endif()
+ if(NOT GR_GIT_HASH)
+ set(GR_GIT_HASH "xunknown")
+ endif()
+ set(GIT_DESCRIBE "v${MAJOR_VERSION}.${API_COMPAT}-${GR_GIT_COUNT}-${GR_GIT_HASH}")
+ENDMACRO()
+
if(GIT_FOUND AND EXISTS ${CMAKE_SOURCE_DIR}/.git)
message(STATUS "Extracting version information from git describe...")
execute_process(
@@ -40,14 +50,11 @@ if(GIT_FOUND AND EXISTS ${CMAKE_SOURCE_DIR}/.git)
OUTPUT_VARIABLE GIT_DESCRIBE OUTPUT_STRIP_TRAILING_WHITESPACE
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
)
-else()
- if(NOT GR_GIT_COUNT)
- set(GR_GIT_COUNT "compat-xxx")
- endif()
- if(NOT GR_GIT_HASH)
- set(GR_GIT_HASH "xunknown")
+ if(GIT_DESCRIBE STREQUAL "")
+ create_manual_git_describe()
endif()
- set(GIT_DESCRIBE "v${MAJOR_VERSION}.${API_COMPAT}-${GR_GIT_COUNT}-${GR_GIT_HASH}")
+else()
+ create_manual_git_describe()
endif()
########################################################################