aboutsummaryrefslogtreecommitdiff
path: root/audio/clementine/make-git-rev-detection-optional.patch
blob: f5f55c06de87b9e6f457143f73df4df565b301a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
From b6276044940361b2da09b41a878e507374a85377 Mon Sep 17 00:00:00 2001
From: Jeremy Hansen <bassmadrigal@users.noreply.github.com>
Date: Wed, 30 Oct 2024 16:55:51 -0700
Subject: [PATCH] Make git revision detection optional

Potentially fixes clementine-player/Clementine#7355
---
 cmake/Version.cmake | 58 +++++++++++++++++++++++----------------------
 1 file changed, 30 insertions(+), 28 deletions(-)

diff --git a/cmake/Version.cmake b/cmake/Version.cmake
index ee99f6abce..8fdb523544 100644
--- a/cmake/Version.cmake
+++ b/cmake/Version.cmake
@@ -119,39 +119,41 @@ else(CLEMENTINE_VERSION_PRERELEASE)
 endif(CLEMENTINE_VERSION_PRERELEASE)
 
 # Add git revision
-if(FORCE_GIT_REVISION)
-  set(GIT_REV ${FORCE_GIT_REVISION})
-  set(GIT_INFO_RESULT 0)
-else(FORCE_GIT_REVISION)
-  find_program(GIT_EXECUTABLE git)
-  message(STATUS "Found git: ${GIT_EXECUTABLE}")
-
-  if(NOT GIT_EXECUTABLE-NOTFOUND)
-    execute_process(COMMAND ${GIT_EXECUTABLE} describe
-        WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
-        RESULT_VARIABLE GIT_INFO_RESULT
-        OUTPUT_VARIABLE GIT_REV
-        OUTPUT_STRIP_TRAILING_WHITESPACE)
-    if(NOT ${GIT_INFO_RESULT} EQUAL 0)
-      message(SEND_ERROR "git describe failed with code ${GIT_INFO_RESULT}: ${GIT_REV}")
+if(INCLUDE_GIT_REVISION)
+  if(FORCE_GIT_REVISION)
+    set(GIT_REV ${FORCE_GIT_REVISION})
+    set(GIT_INFO_RESULT 0)
+  else(FORCE_GIT_REVISION)
+    find_program(GIT_EXECUTABLE git)
+    message(STATUS "Found git: ${GIT_EXECUTABLE}")
+
+    if(NOT GIT_EXECUTABLE-NOTFOUND)
+      execute_process(COMMAND ${GIT_EXECUTABLE} describe
+          WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
+          RESULT_VARIABLE GIT_INFO_RESULT
+          OUTPUT_VARIABLE GIT_REV
+          OUTPUT_STRIP_TRAILING_WHITESPACE)
+      if(NOT ${GIT_INFO_RESULT} EQUAL 0)
+        message(SEND_ERROR "git describe failed with code ${GIT_INFO_RESULT}: ${GIT_REV}")
+      endif()
     endif()
   endif()
-endif()
 
-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)
+  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()
 
 if(INCLUDE_GIT_REVISION AND HAS_GIT_REVISION)
   set(CLEMENTINE_VERSION_DISPLAY "${GIT_REV}")