1
0
Эх сурвалжийг харах

cmake/libobs: Set OBS_COMMIT based on git describe

derrod 3 жил өмнө
parent
commit
cdc9313829

+ 7 - 0
cmake/Modules/VersionConfig.cmake

@@ -32,6 +32,13 @@ if(NOT DEFINED OBS_VERSION_OVERRIDE)
         string(REPLACE "." ";" _CANONICAL_SPLIT ${_CANONICAL_SPLIT})
         string(REPLACE "." ";" _CANONICAL_SPLIT ${_CANONICAL_SPLIT})
         list(GET _CANONICAL_SPLIT 0 1 2 _OBS_VERSION_CANONICAL)
         list(GET _CANONICAL_SPLIT 0 1 2 _OBS_VERSION_CANONICAL)
         string(REPLACE "." ";" _OBS_VERSION ${_OBS_VERSION})
         string(REPLACE "." ";" _OBS_VERSION ${_OBS_VERSION})
+        # Get 8-character commit hash without "g" prefix
+        foreach(VERSION_PART ${_CANONICAL_SPLIT})
+          if(VERSION_PART MATCHES "^g")
+            string(SUBSTRING ${VERSION_PART}, 1, 8, OBS_COMMIT)
+            break()
+          endif()
+        endforeach()
       endif()
       endif()
     endif()
     endif()
   endif()
   endif()

+ 1 - 0
libobs/obsconfig.h.in

@@ -16,6 +16,7 @@
 #define OBS_PLUGIN_DESTINATION "@OBS_PLUGIN_DESTINATION@"
 #define OBS_PLUGIN_DESTINATION "@OBS_PLUGIN_DESTINATION@"
 #define OBS_QT_VERSION @_QT_VERSION@
 #define OBS_QT_VERSION @_QT_VERSION@
 
 
+#cmakedefine OBS_COMMIT "@OBS_COMMIT@"
 #cmakedefine LINUX_PORTABLE
 #cmakedefine LINUX_PORTABLE
 #cmakedefine GIO_FOUND
 #cmakedefine GIO_FOUND
 #cmakedefine PULSEAUDIO_FOUND
 #cmakedefine PULSEAUDIO_FOUND