diff --git a/CMake/GetGitRevisionDescription.cmake b/CMake/GetGitRevisionDescription.cmake index a99610c43..b56558209 100644 --- a/CMake/GetGitRevisionDescription.cmake +++ b/CMake/GetGitRevisionDescription.cmake @@ -58,10 +58,12 @@ endfunction() function(get_git_head_revision _refspecvar _hashvar) _git_find_closest_git_dir("${CMAKE_CURRENT_SOURCE_DIR}" GIT_DIR) - file(RELATIVE_PATH _relative_to_source_dir "${CMAKE_CURRENT_SOURCE_DIR}" "${GIT_DIR}") - if (_relative_to_source_dir MATCHES "^[.][.]") - # We've gone above the CMake root dir. - set(GIT_DIR "") + if (NOT GIT_DIR STREQUAL "") + file(RELATIVE_PATH _relative_to_source_dir "${CMAKE_CURRENT_SOURCE_DIR}" "${GIT_DIR}") + if (_relative_to_source_dir MATCHES "^[.][.]") + # We've gone above the CMake root dir. + set(GIT_DIR "") + endif() endif() if (GIT_DIR STREQUAL "") set(${_refspecvar} "GITDIR-NOTFOUND" PARENT_SCOPE)