summaryrefslogtreecommitdiff
path: root/cmake/QtBuildInternals
diff options
context:
space:
mode:
authorAlexey Edelev <alexey.edelev@qt.io>2023-01-04 17:48:11 +0100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2023-01-06 10:25:26 +0000
commitfc439731145b35e23c3130ce0b29a34a07971ece (patch)
tree1c88d540e307f5417b7e3cfe670126ce8981067f /cmake/QtBuildInternals
parent16fa77991fc5fc475c05731c344ac9d77d688aff (diff)
downloadqtbase-fc439731145b35e23c3130ce0b29a34a07971ece.tar.gz
Allow specifying CMakeLists.txt as the argument for qt-cmake-standalone-test
qt-cmake-standalone-test uses add_subdirectory call when evaluating the project. This leads to an error if users try to use path to CMakeLists.txt as an argument, instead of directory when configuring standalone tests with qt-cmake-standalone-test. It makes sense to check if the user-specified path points to CMakeLists.txt and cut the filename part when calling add_subdirectory. Change-Id: I6b9ac0ca8323eaf11f219eb1e6bed3057120a231 Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 90806123e961d469c36ee3b19ac0960524abb9e2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'cmake/QtBuildInternals')
-rw-r--r--cmake/QtBuildInternals/QtStandaloneTestTemplateProject/CMakeLists.txt9
1 files changed, 9 insertions, 0 deletions
diff --git a/cmake/QtBuildInternals/QtStandaloneTestTemplateProject/CMakeLists.txt b/cmake/QtBuildInternals/QtStandaloneTestTemplateProject/CMakeLists.txt
index 6a06747bdc..73ed57c1da 100644
--- a/cmake/QtBuildInternals/QtStandaloneTestTemplateProject/CMakeLists.txt
+++ b/cmake/QtBuildInternals/QtStandaloneTestTemplateProject/CMakeLists.txt
@@ -18,5 +18,14 @@ else()
set(absolute_project_path "${QT_STANDALONE_TEST_PATH}")
endif()
+if(NOT IS_DIRECTORY "${absolute_project_path}")
+ get_filename_component(filename "${absolute_project_path}" NAME)
+ get_filename_component(directory "${absolute_project_path}" DIRECTORY)
+
+ if(filename STREQUAL "CMakeLists.txt")
+ set(absolute_project_path "${directory}")
+ endif()
+endif()
+
# Add the test project path as a subdirectory project.
add_subdirectory("${absolute_project_path}" "build_dir")