summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2022-06-28 16:33:52 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2022-06-28 20:29:15 +0000
commitbad37e867da8f0cd79b705fbb39bac814ba3ec5c (patch)
treea2a82b4844a95fbff2fc4b0f4fd20302f0ef4a1b
parent41640d8eb55acbe461747c29797af5397a7532d2 (diff)
downloadqtapplicationmanager-bad37e867da8f0cd79b705fbb39bac814ba3ec5c.tar.gz
CMake: Check for .tag file existence before reading it
And also check for it in PROJECT_SOURCE_DIR rather than CMAKE_SOURCE_DIR, to ensure the repo .tag file is checked even when doing a top-level build. Change-Id: I63b0f5aae0b9111165fef9aeedd5e794db990da9 Reviewed-by: Robert Griebl <robert.griebl@qt.io> (cherry picked from commit 0b895aa93688926781e30fa5400832396e9c8bef) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--cmake/QtAppManBuildConfig.cmake28
1 files changed, 16 insertions, 12 deletions
diff --git a/cmake/QtAppManBuildConfig.cmake b/cmake/QtAppManBuildConfig.cmake
index 7facc2cc..b111c2df 100644
--- a/cmake/QtAppManBuildConfig.cmake
+++ b/cmake/QtAppManBuildConfig.cmake
@@ -6,19 +6,23 @@ function(qtam_internal_add_build_config target)
endif()
# get the git version, if available
- file(READ ${CMAKE_SOURCE_DIR}/.tag GIT_VERSION)
- STRING(REGEX REPLACE "\n" "" GIT_VERSION "${GIT_VERSION}")
- if(GIT_VERSION STREQUAL "\$Format:%H\$")
- set(GIT_VERSION "unknown")
- if(EXISTS ${CMAKE_SOURCE_DIR}/.git)
- execute_process(
- COMMAND git describe --tags --always --dirty
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
- OUTPUT_VARIABLE GIT_VERSION
- OUTPUT_STRIP_TRAILING_WHITESPACE
- ERROR_QUIET
- )
+ if(EXISTS "${PROJECT_SOURCE_DIR}/.tag")
+ file(READ ${PROJECT_SOURCE_DIR}/.tag GIT_VERSION)
+ STRING(REGEX REPLACE "\n" "" GIT_VERSION "${GIT_VERSION}")
+ if(GIT_VERSION STREQUAL "\$Format:%H\$")
+ set(GIT_VERSION "unknown")
+ if(EXISTS ${CMAKE_SOURCE_DIR}/.git)
+ execute_process(
+ COMMAND git describe --tags --always --dirty
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
+ OUTPUT_VARIABLE GIT_VERSION
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ ERROR_QUIET
+ )
+ endif()
endif()
+ else()
+ set(GIT_VERSION "")
endif()
# generate the necessary strings to be backward compatible with qmake