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
commit89f1c2567039781c85fd384e36050ea232e49f71 (patch)
tree4634617ac8fa9dab82213ab436704bca833a5efc
parentdcedd88a65e9ca069284451e824ec2f086f24bbe (diff)
downloadqtapplicationmanager-89f1c2567039781c85fd384e36050ea232e49f71.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