mirror of
https://github.com/RetroDECK/RetroDECK.git
synced 2024-11-23 06:25:39 +00:00
56 lines
2.2 KiB
Diff
56 lines
2.2 KiB
Diff
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||
|
index 710f3fcfb..e5f4f4687 100644
|
||
|
--- a/CMakeLists.txt
|
||
|
+++ b/CMakeLists.txt
|
||
|
@@ -94,7 +94,11 @@ function(check_submodules_present)
|
||
|
endif()
|
||
|
endforeach()
|
||
|
endfunction()
|
||
|
-check_submodules_present()
|
||
|
+
|
||
|
+if (EXISTS "${PROJECT_SOURCE_DIR}/.git/objects")
|
||
|
+ # only check submodules when source is obtained via Git
|
||
|
+ check_submodules_present()
|
||
|
+endif()
|
||
|
|
||
|
configure_file(${PROJECT_SOURCE_DIR}/dist/compatibility_list/compatibility_list.qrc
|
||
|
${PROJECT_BINARY_DIR}/dist/compatibility_list/compatibility_list.qrc
|
||
|
diff --git a/CMakeModules/GenerateSCMRev.cmake b/CMakeModules/GenerateSCMRev.cmake
|
||
|
index a011c6cbf..87e9eef35 100644
|
||
|
--- a/CMakeModules/GenerateSCMRev.cmake
|
||
|
+++ b/CMakeModules/GenerateSCMRev.cmake
|
||
|
@@ -6,15 +6,27 @@ endfunction()
|
||
|
|
||
|
list(APPEND CMAKE_MODULE_PATH "${SRC_DIR}/externals/cmake-modules")
|
||
|
|
||
|
-# Find the package here with the known path so that the GetGit commands can find it as well
|
||
|
-find_package(Git QUIET PATHS "${GIT_EXECUTABLE}")
|
||
|
-
|
||
|
# generate git/build information
|
||
|
-include(GetGitRevisionDescription)
|
||
|
-get_git_head_revision(GIT_REF_SPEC GIT_REV)
|
||
|
-git_describe(GIT_DESC --always --long --dirty)
|
||
|
-git_branch_name(GIT_BRANCH)
|
||
|
get_timestamp(BUILD_DATE)
|
||
|
+if (EXISTS "${SRC_DIR}/.git/objects")
|
||
|
+ # Find the package here with the known path so that the GetGit commands can find it as well
|
||
|
+ find_package(Git QUIET PATHS "${GIT_EXECUTABLE}")
|
||
|
+ # only use Git to check revision info when source is obtained via Git
|
||
|
+ include(GetGitRevisionDescription)
|
||
|
+ get_git_head_revision(GIT_REF_SPEC GIT_REV)
|
||
|
+ git_describe(GIT_DESC --always --long --dirty)
|
||
|
+ git_branch_name(GIT_BRANCH)
|
||
|
+elseif(EXISTS "${SRC_DIR}/GIT-COMMIT" AND EXISTS "${SRC_DIR}/GIT-TAG")
|
||
|
+ # unified source archive
|
||
|
+ file(READ "${SRC_DIR}/GIT-COMMIT" GIT_REV_RAW LIMIT 64)
|
||
|
+ string(STRIP "${GIT_REV_RAW}" GIT_REV)
|
||
|
+ string(SUBSTRING "${GIT_REV_RAW}" 0 9 GIT_DESC)
|
||
|
+ set(GIT_BRANCH "HEAD")
|
||
|
+else()
|
||
|
+ # self-packed archive?
|
||
|
+ set(GIT_DESC "UNKNOWN")
|
||
|
+ set(GIT_BRANCH "UNKNOWN")
|
||
|
+endif()
|
||
|
|
||
|
# Generate cpp with Git revision from template
|
||
|
# Also if this is a CI build, add the build name (ie: Nightly, Canary) to the scm_rev file as well
|