From 3d9ccb49432e6ff33c568c89e88fc431111abb3f Mon Sep 17 00:00:00 2001
From: Nicholas Corgan <n.corgan@gmail.com>
Date: Mon, 1 Aug 2016 13:16:42 -0700
Subject: cmake: fix for when tree is git but git describe fails

---
 cmake/Modules/GrVersion.cmake | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

(limited to 'cmake')

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()
 
 ########################################################################
-- 
cgit v1.2.3