Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/owncloud/client.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorHannah von Reth <hannah.vonreth@owncloud.com>2020-11-23 15:04:45 +0300
committerHannah von Reth <vonreth@kde.org>2020-11-23 22:52:49 +0300
commitb01319f893c5ed3a4e20f8bc3471a667be888d58 (patch)
treecb12ad6136e19c1fb385af1acc7b2eddcfe86d94 /cmake
parentba341cd54bed6a9e230a4e7f304148763655e303 (diff)
Don't recurse the whole tree looking for a git dir, use PROJECT_SOURCE_DIR
Diffstat (limited to 'cmake')
-rw-r--r--cmake/modules/GetGitRevisionDescription.cmake26
1 files changed, 6 insertions, 20 deletions
diff --git a/cmake/modules/GetGitRevisionDescription.cmake b/cmake/modules/GetGitRevisionDescription.cmake
index c8d27f2e8..1f9005b69 100644
--- a/cmake/modules/GetGitRevisionDescription.cmake
+++ b/cmake/modules/GetGitRevisionDescription.cmake
@@ -40,26 +40,12 @@ set(__get_git_revision_description YES)
get_filename_component(_gitdescmoddir ${CMAKE_CURRENT_LIST_FILE} PATH)
function(get_git_head_revision _refspecvar _hashvar)
- set(GIT_PARENT_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
- set(GIT_DIR "${GIT_PARENT_DIR}/.git")
- while(NOT EXISTS "${GIT_DIR}") # .git dir not found, search parent directories
- set(GIT_PREVIOUS_PARENT "${GIT_PARENT_DIR}")
- get_filename_component(GIT_PARENT_DIR ${GIT_PARENT_DIR} PATH)
- if(GIT_PARENT_DIR STREQUAL GIT_PREVIOUS_PARENT)
- # We have reached the root directory, we are not in git
- set(${_refspecvar} "GITDIR-NOTFOUND" PARENT_SCOPE)
- set(${_hashvar} "GITDIR-NOTFOUND" PARENT_SCOPE)
- return()
- endif()
- set(GIT_DIR "${GIT_PARENT_DIR}/.git")
- endwhile()
- # check if this is a submodule
- if(NOT IS_DIRECTORY ${GIT_DIR})
- file(READ ${GIT_DIR} submodule)
- string(REGEX REPLACE "gitdir: (.*)\n$" "\\1" GIT_DIR_RELATIVE ${submodule})
- get_filename_component(SUBMODULE_DIR ${GIT_DIR} PATH)
- get_filename_component(GIT_DIR ${SUBMODULE_DIR}/${GIT_DIR_RELATIVE} ABSOLUTE)
- endif()
+ set(GIT_DIR "${PROJECT_SOURCE_DIR}/.git")
+ if (NOT EXISTS "${GIT_DIR}") # .git dir not found, search parent directories
+ set(${_hashvar} "GITDIR-NOTFOUND" PARENT_SCOPE)
+ set(${_refspecvar} "GITDIR-NOTFOUND" PARENT_SCOPE)
+ return()
+ endif()
set(GIT_DATA "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/git-data")
if(NOT EXISTS "${GIT_DATA}")
file(MAKE_DIRECTORY "${GIT_DATA}")