From 9f805b5bf7dc61a032a7ec79fd514c932103f1de Mon Sep 17 00:00:00 2001 From: Cristian Le Date: Mon, 6 Jan 2025 17:53:45 +0100 Subject: [PATCH] Fixup: Add `*_check` build targets for auto cmake tests - `PARSE_ARGV` should have been 1. - `module_includes` target needs to be unique See gerrit comment of previous change, and https://gitlab.kitware.com/cmake/cmake/-/issues/26580 Amends: 8f2f4ad4688df4963982c489c80b84e115cda29d Pick-to: 6.8 6.9 Task-number: QTBUG-98640 Change-Id: I82b85813f282ba1d5b4c938e59558e32647d4d86 Reviewed-by: Alexey Edelev Reviewed-by: Alexandru Croitor --- cmake/QtPublicTestHelpers.cmake | 2 +- src/corelib/Qt6CTestMacros.cmake | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/cmake/QtPublicTestHelpers.cmake b/cmake/QtPublicTestHelpers.cmake index 1912ec95dfe..be5616fa43c 100644 --- a/cmake/QtPublicTestHelpers.cmake +++ b/cmake/QtPublicTestHelpers.cmake @@ -131,7 +131,7 @@ function(_qt_internal_make_check_target testname) set(singleOpts CTEST_TEST_NAME) set(multiOpts "") - cmake_parse_arguments(PARSE_ARGV 0 arg + cmake_parse_arguments(PARSE_ARGV 1 arg "${options}" "${singleOpts}" "${multiOpts}" ) if(NOT arg_CTEST_TEST_NAME) diff --git a/src/corelib/Qt6CTestMacros.cmake b/src/corelib/Qt6CTestMacros.cmake index 613bff9cabe..084959db49a 100644 --- a/src/corelib/Qt6CTestMacros.cmake +++ b/src/corelib/Qt6CTestMacros.cmake @@ -828,5 +828,11 @@ function(_qt_internal_test_module_includes) add_test(module_includes "${CMAKE_COMMAND}" "-P" "${wrapper_file}") set_tests_properties(module_includes PROPERTIES SKIP_REGULAR_EXPRESSION "${_qt_internal_skip_build_test_regex}") - _qt_internal_make_check_target(module_includes) + # We need a unique name for the targets + # TODO: CTest name clash would make multiple tests be run as long as they are + # defined in nested folders + string(TOLOWER "${PROJECT_NAME}" project_name_lower) + _qt_internal_make_check_target(${project_name_lower}_module_includes + CTEST_TEST_NAME module_includes + ) endfunction()