From de7648117aba2a1c9d9d58ccb021a18f758aee1e Mon Sep 17 00:00:00 2001 From: Brad King Date: Sun, 16 Feb 2025 09:29:17 -0500 Subject: CMakeVersion: Make script independently loadable --- Source/CMakeVersion.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 249574f..badf52c 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -24,14 +24,15 @@ if(NOT CMake_VERSION_NO_GIT) set(git_info [==[$Format:%h %s$]==]) # Otherwise, try to identify the current development source version. + get_filename_component(git_toplevel "${CMAKE_CURRENT_LIST_DIR}" PATH) if(NOT git_info MATCHES "^([0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]?[0-9a-f]?)[0-9a-f]* " - AND EXISTS ${CMake_SOURCE_DIR}/.git) + AND EXISTS "${git_toplevel}/.git") find_package(Git QUIET) if(GIT_FOUND) macro(_git) execute_process( COMMAND ${GIT_EXECUTABLE} ${ARGN} - WORKING_DIRECTORY ${CMake_SOURCE_DIR} + WORKING_DIRECTORY "${git_toplevel}" RESULT_VARIABLE _git_res OUTPUT_VARIABLE _git_out OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE _git_err ERROR_STRIP_TRAILING_WHITESPACE -- cgit v0.12