From 90909e9362dacb5ece17c7baaffe33b16d106ce7 Mon Sep 17 00:00:00 2001 From: Florian Walch Date: Tue, 29 Sep 2015 21:22:55 +0200 Subject: CMake: Force use of project directory to look for Git data. Before this change, building Neovim would recursively search parent directories for a .git directory. If Neovim was downloaded as a tarball (i.e. without a .git directory), but placed in a subdirectory of a Git repository, this caused a CMake error. Such a situation could occur when packaging Neovim, for example. Unfortunately, the previous attempt in #3317 did not fix this problem. --- cmake/GetGitRevisionDescription.cmake | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'cmake/GetGitRevisionDescription.cmake') diff --git a/cmake/GetGitRevisionDescription.cmake b/cmake/GetGitRevisionDescription.cmake index 1e0968ec3b..5044c682e4 100644 --- a/cmake/GetGitRevisionDescription.cmake +++ b/cmake/GetGitRevisionDescription.cmake @@ -42,7 +42,13 @@ set(__get_git_revision_description YES) get_filename_component(_gitdescmoddir ${CMAKE_CURRENT_LIST_FILE} PATH) function(get_git_dir _gitdir) - # check GIT_DIR in environment first + # check FORCED_GIT_DIR first + if(FORCED_GIT_DIR) + set(${_gitdir} ${FORCED_GIT_DIR} PARENT_SCOPE) + return() + endif() + + # check GIT_DIR in environment set(GIT_DIR $ENV{GIT_DIR}) if(NOT GIT_DIR) set(GIT_PARENT_DIR ${CMAKE_CURRENT_SOURCE_DIR}) -- cgit