This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "CMake".
The branch, master has been updated via 591899bc9643881610f665ac2e8787774a6b78b0 (commit) via cba5b22db34c73c32653894d39888b44b9f25558 (commit) via 6f5e4a53bca7ce5c15b1d030ef99bb2b3a1b0d2e (commit) via 9eaa6aa599ebc4f380fbc36e352fd5ad25c5bcd7 (commit) via bb735025dea634285a43b32b98af7ac25c5f8e76 (commit) via 91d98542d26318d8f51c434e689ccf6cddc2d3d0 (commit) via 062d21c36a57ad9c7528ea3f490595492853f1f8 (commit) via 17ac7c4024147386bd059523eff12951f3c0ef7d (commit) via 2df6d69014c8f8c0191dbf30d8c406225edbef3e (commit) via b598dfb65edd75e0da763d36dcdc3d19016a8d27 (commit) from 5107a84d46ad245221843adbef092118649e6dc7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=591899bc9643881610f665ac2e8787774a6b78b0 commit 591899bc9643881610f665ac2e8787774a6b78b0 Merge: 9eaa6aa cba5b22 Author: Brad King <brad.k...@kitware.com> AuthorDate: Thu Jan 31 16:01:35 2019 +0000 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Thu Jan 31 11:01:41 2019 -0500 Merge topic 'FindLAPACK-typo' cba5b22db3 Merge branch 'backport-FindLAPACK-typo' 6f5e4a53bc FindLAPACK: Distinguish check result variable name from FindBLAS bb735025de Find{BLAS,LAPACK}: Drop unnecessary mark_as_advanced calls Acked-by: Kitware Robot <kwro...@kitware.com> Merge-request: !2897 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cba5b22db34c73c32653894d39888b44b9f25558 commit cba5b22db34c73c32653894d39888b44b9f25558 Merge: bb73502 6f5e4a5 Author: Brad King <brad.k...@kitware.com> AuthorDate: Thu Jan 31 09:17:30 2019 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Thu Jan 31 10:59:53 2019 -0500 Merge branch 'backport-FindLAPACK-typo' Use the `-s ours` merge strategy to avoid conflicts. Our side was already fixed by commit 8b63265ea5 (FindLAPACK: Unify internal variables related to MKL, 2018-11-18) as part of other work. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6f5e4a53bca7ce5c15b1d030ef99bb2b3a1b0d2e commit 6f5e4a53bca7ce5c15b1d030ef99bb2b3a1b0d2e Author: Brad King <brad.k...@kitware.com> AuthorDate: Thu Jan 31 08:59:37 2019 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Thu Jan 31 10:59:25 2019 -0500 FindLAPACK: Distinguish check result variable name from FindBLAS Since commit 192a9182f8 (FindLAPACK: MKL clean up and fix for windows, 2013-10-08, v3.0.0-rc1~538^2), FindLAPACK accidentally used FindBLAS's `BLAS_` prefix for some of its check results. Since commit 5b8f69ebe9 (FindBLAS: Detect implicitly linked BLAS library, 2018-08-28, v3.13.0-rc1~150^2~2), FindBLAS stores a check result in a plain `BLAS_WORKS` variable. The typo in FindLAPACK happens to cause a collision with that name. The typo was already fixed in post-3.13 development as part of other work in commit 8b63265ea5 (FindLAPACK: Unify internal variables related to MKL, 2018-11-18). Fix the typo in the 3.13 version of FindLAPACK to avoid the collision. Otherwise it could cause FindLAPACK to incorrectly determine that a certain library combination does not work (or incrrectly that it works). Fixes: #18860 diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake index 2c6145a..dc94079 100644 --- a/Modules/FindLAPACK.cmake +++ b/Modules/FindLAPACK.cmake @@ -316,7 +316,7 @@ if (BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All") if (NOT ${_LIBRARIES}) check_lapack_libraries( ${_LIBRARIES} - BLAS + LAPACK ${LAPACK_mkl_SEARCH_SYMBOL} "" "" @@ -329,7 +329,7 @@ if (BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All") if (NOT ${_LIBRARIES}) check_lapack_libraries( ${_LIBRARIES} - BLAS + LAPACK ${LAPACK_mkl_SEARCH_SYMBOL} "" "${IT}" https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9eaa6aa599ebc4f380fbc36e352fd5ad25c5bcd7 commit 9eaa6aa599ebc4f380fbc36e352fd5ad25c5bcd7 Merge: 5107a84 91d9854 Author: Brad King <brad.k...@kitware.com> AuthorDate: Thu Jan 31 15:58:15 2019 +0000 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Thu Jan 31 10:58:23 2019 -0500 Merge topic 'autogen-qt-version-from-dirprops' 91d98542d2 Merge branch 'autogen-qt-version-from-dirprops-release' into autogen-qt-version-from-dirprops-master 062d21c36a Autogen: Read the Qt version from directory properties as well 17ac7c4024 Tests: add cases for providing Qt5Core_VERSION manually 2df6d69014 AutoGen: query Qt5 version from directory properties b598dfb65e Tests: add cases for providing Qt5Core_VERSION manually Acked-by: Kitware Robot <kwro...@kitware.com> Merge-request: !2883 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bb735025dea634285a43b32b98af7ac25c5f8e76 commit bb735025dea634285a43b32b98af7ac25c5f8e76 Author: Brad King <brad.k...@kitware.com> AuthorDate: Thu Jan 31 08:58:47 2019 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Thu Jan 31 09:11:03 2019 -0500 Find{BLAS,LAPACK}: Drop unnecessary mark_as_advanced calls Cache entries created by `try_compile` are already `INTERNAL`. diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake index b6348fd..33cc024 100644 --- a/Modules/FindBLAS.cmake +++ b/Modules/FindBLAS.cmake @@ -167,7 +167,6 @@ macro(Check_Fortran_Libraries LIBRARIES _prefix _name _flags _list _thread) check_function_exists("${_name}_" ${_prefix}${_combined_name}_WORKS) endif() set(CMAKE_REQUIRED_LIBRARIES) - mark_as_advanced(${_prefix}${_combined_name}_WORKS) set(_libraries_work ${${_prefix}${_combined_name}_WORKS}) endif() if(_libraries_work) diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake index 7619664..7b5f527 100644 --- a/Modules/FindLAPACK.cmake +++ b/Modules/FindLAPACK.cmake @@ -142,7 +142,6 @@ if(_libraries_work) check_fortran_function_exists(${_name} ${_prefix}${_combined_name}_WORKS) endif () set(CMAKE_REQUIRED_LIBRARIES) - mark_as_advanced(${_prefix}${_combined_name}_WORKS) set(_libraries_work ${${_prefix}${_combined_name}_WORKS}) #message("DEBUG: ${LIBRARIES} = ${${LIBRARIES}}") endif() https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=91d98542d26318d8f51c434e689ccf6cddc2d3d0 commit 91d98542d26318d8f51c434e689ccf6cddc2d3d0 Merge: 062d21c 2df6d69 Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Wed Jan 30 11:30:26 2019 -0500 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Wed Jan 30 11:30:26 2019 -0500 Merge branch 'autogen-qt-version-from-dirprops-release' into autogen-qt-version-from-dirprops-master * autogen-qt-version-from-dirprops-release: AutoGen: query Qt5 version from directory properties Tests: add cases for providing Qt5Core_VERSION manually https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=062d21c36a57ad9c7528ea3f490595492853f1f8 commit 062d21c36a57ad9c7528ea3f490595492853f1f8 Author: Sebastian Holtermann <sebh...@xwmw.org> AuthorDate: Wed Jan 30 17:01:02 2019 +0100 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Wed Jan 30 11:30:18 2019 -0500 Autogen: Read the Qt version from directory properties as well This lets AUTOGEN read the Qt version from directory properties as a fallback when the Qt version variables are empty or unset. diff --git a/Source/cmQtAutoGenInitializer.cxx b/Source/cmQtAutoGenInitializer.cxx index 1d7f6d1..caeed15 100644 --- a/Source/cmQtAutoGenInitializer.cxx +++ b/Source/cmQtAutoGenInitializer.cxx @@ -1370,7 +1370,7 @@ void cmQtAutoGenInitializer::AddGeneratedSource(std::string const& filename, this->Target->AddSource(filename, prepend); } -static unsigned int CharPtrToInt(const char* const input) +static unsigned int CharPtrToUInt(const char* const input) { unsigned long tmp = 0; if (input != nullptr && cmSystemTools::StringToULong(input, &tmp)) { @@ -1379,36 +1379,43 @@ static unsigned int CharPtrToInt(const char* const input) return 0; } -static unsigned int StringToInt(const std::string& input) -{ - return input.empty() ? 0 : CharPtrToInt(input.c_str()); -} - -static std::vector<cmQtAutoGenInitializer::IntegerVersion> GetKnownQtVersions( +static std::vector<cmQtAutoGen::IntegerVersion> GetKnownQtVersions( cmGeneratorTarget const* target) { cmMakefile* makefile = target->Target->GetMakefile(); - - std::vector<cmQtAutoGenInitializer::IntegerVersion> result; - for (const std::string& prefix : - std::vector<std::string>({ "Qt6Core", "Qt5Core", "QT" })) { - auto tmp = cmQtAutoGenInitializer::IntegerVersion( - StringToInt(makefile->GetSafeDefinition(prefix + "_VERSION_MAJOR")), - StringToInt(makefile->GetSafeDefinition(prefix + "_VERSION_MINOR"))); - if (tmp.Major != 0) { - result.push_back(tmp); + std::vector<cmQtAutoGen::IntegerVersion> result; + // Adds a version to the result (nullptr safe) + auto addVersion = [&result](const char* major, const char* minor) { + cmQtAutoGen::IntegerVersion ver(CharPtrToUInt(major), + CharPtrToUInt(minor)); + if (ver.Major != 0) { + result.emplace_back(ver); } + }; + // Qt version variable prefixes + std::array<std::string, 3> const prefixes{ { "Qt6Core", "Qt5Core", "QT" } }; + + // Read versions from variables + for (const std::string& prefix : prefixes) { + addVersion(makefile->GetDefinition(prefix + "_VERSION_MAJOR"), + makefile->GetDefinition(prefix + "_VERSION_MINOR")); + } + + // Read versions from directory properties + for (const std::string& prefix : prefixes) { + addVersion(makefile->GetProperty(prefix + "_VERSION_MAJOR"), + makefile->GetProperty(prefix + "_VERSION_MINOR")); } return result; } -std::pair<cmQtAutoGenInitializer::IntegerVersion, unsigned int> +std::pair<cmQtAutoGen::IntegerVersion, unsigned int> cmQtAutoGenInitializer::GetQtVersion(cmGeneratorTarget const* target) { std::pair<IntegerVersion, unsigned int> res( IntegerVersion(), - CharPtrToInt(target->GetLinkInterfaceDependentStringProperty( + CharPtrToUInt(target->GetLinkInterfaceDependentStringProperty( "QT_MAJOR_VERSION", ""))); auto knownQtVersions = GetKnownQtVersions(target); https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=17ac7c4024147386bd059523eff12951f3c0ef7d commit 17ac7c4024147386bd059523eff12951f3c0ef7d Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Wed Jan 30 10:45:41 2019 -0500 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Wed Jan 30 11:30:18 2019 -0500 Tests: add cases for providing Qt5Core_VERSION manually diff --git a/Tests/RunCMake/Autogen/QtInFunction.cmake b/Tests/RunCMake/Autogen/QtInFunction.cmake new file mode 100644 index 0000000..a44bc5a --- /dev/null +++ b/Tests/RunCMake/Autogen/QtInFunction.cmake @@ -0,0 +1,13 @@ +enable_language(CXX) + +function (use_autogen target) + find_package(Qt5 REQUIRED COMPONENTS Core Widgets) + set(Qt5Core_VERSION_MAJOR "${Qt5Core_VERSION_MAJOR}" PARENT_SCOPE) + set(Qt5Core_VERSION_MINOR "${Qt5Core_VERSION_MINOR}" PARENT_SCOPE) + set_property(TARGET "${target}" PROPERTY AUTOMOC 1) + set_property(TARGET "${target}" PROPERTY AUTORCC 1) + set_property(TARGET "${target}" PROPERTY AUTOUIC 1) +endfunction () + +add_executable(main empty.cpp) +use_autogen(main) diff --git a/Tests/RunCMake/Autogen/QtInFunctionNested-stderr.txt b/Tests/RunCMake/Autogen/QtInFunctionNested-stderr.txt new file mode 100644 index 0000000..1c6660a --- /dev/null +++ b/Tests/RunCMake/Autogen/QtInFunctionNested-stderr.txt @@ -0,0 +1,8 @@ +^CMake Warning \(dev\) in CMakeLists.txt: + AUTOGEN: No valid Qt version found for target main. AUTOMOC, AUTOUIC and + AUTORCC disabled. Consider adding: + + find_package\(Qt<QTVERSION> COMPONENTS Widgets\) + + to your CMakeLists.txt file. +This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/Autogen/QtInFunctionNested.cmake b/Tests/RunCMake/Autogen/QtInFunctionNested.cmake new file mode 100644 index 0000000..5421ba0 --- /dev/null +++ b/Tests/RunCMake/Autogen/QtInFunctionNested.cmake @@ -0,0 +1,17 @@ +enable_language(CXX) + +function (use_autogen target) + find_package(Qt5 REQUIRED COMPONENTS Core Widgets) + set(Qt5Core_VERSION_MAJOR "${Qt5Core_VERSION_MAJOR}" PARENT_SCOPE) + set(Qt5Core_VERSION_MINOR "${Qt5Core_VERSION_MINOR}" PARENT_SCOPE) + set_property(TARGET "${target}" PROPERTY AUTOMOC 1) + set_property(TARGET "${target}" PROPERTY AUTORCC 1) + set_property(TARGET "${target}" PROPERTY AUTOUIC 1) +endfunction () + +function (wrap_autogen target) + use_autogen("${target}") +endfunction () + +add_executable(main empty.cpp) +wrap_autogen(main) diff --git a/Tests/RunCMake/Autogen/QtInFunctionProperty.cmake b/Tests/RunCMake/Autogen/QtInFunctionProperty.cmake new file mode 100644 index 0000000..35f1cd1 --- /dev/null +++ b/Tests/RunCMake/Autogen/QtInFunctionProperty.cmake @@ -0,0 +1,21 @@ +enable_language(CXX) + +function (use_autogen target) + find_package(Qt5 REQUIRED COMPONENTS Core Widgets) + set_property(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + PROPERTY + Qt5Core_VERSION_MAJOR "${Qt5Core_VERSION_MAJOR}") + set_property(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + PROPERTY + Qt5Core_VERSION_MINOR "${Qt5Core_VERSION_MINOR}") + set_property(TARGET "${target}" PROPERTY AUTOMOC 1) + set_property(TARGET "${target}" PROPERTY AUTORCC 1) + set_property(TARGET "${target}" PROPERTY AUTOUIC 1) +endfunction () + +function (wrap_autogen target) + use_autogen("${target}") +endfunction () + +add_executable(main empty.cpp) +wrap_autogen(main) diff --git a/Tests/RunCMake/Autogen/RunCMakeTest.cmake b/Tests/RunCMake/Autogen/RunCMakeTest.cmake index e52f28d..a31b67c 100644 --- a/Tests/RunCMake/Autogen/RunCMakeTest.cmake +++ b/Tests/RunCMake/Autogen/RunCMakeTest.cmake @@ -1,3 +1,8 @@ include(RunCMake) run_cmake(NoQt) +if (with_qt5) + run_cmake(QtInFunction) + run_cmake(QtInFunctionNested) + run_cmake(QtInFunctionProperty) +endif () diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 2de90e7..1f3e5c3 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -150,7 +150,14 @@ if(NOT CMake_TEST_EXTERNAL_CMAKE) endif() add_RunCMake_test(AndroidTestUtilities) -add_RunCMake_test(Autogen) +set(autogen_with_qt5 FALSE) +if(CMake_TEST_Qt5) + find_package(Qt5Widgets QUIET NO_MODULE) +endif() +if(CMake_TEST_Qt5 AND Qt5Widgets_FOUND) + set(autogen_with_qt5 TRUE) +endif () +add_RunCMake_test(Autogen -Dwith_qt5=${autogen_with_qt5}) add_RunCMake_test(BuildDepends) if(UNIX AND "${CMAKE_GENERATOR}" MATCHES "Unix Makefiles|Ninja") add_RunCMake_test(Byproducts) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2df6d69014c8f8c0191dbf30d8c406225edbef3e commit 2df6d69014c8f8c0191dbf30d8c406225edbef3e Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Wed Jan 30 09:16:40 2019 -0500 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Wed Jan 30 10:46:40 2019 -0500 AutoGen: query Qt5 version from directory properties This allows functions which enable AutoGen to make the version variables available at generate time. See: #18732 diff --git a/Source/cmQtAutoGenInitializer.cxx b/Source/cmQtAutoGenInitializer.cxx index f9c8c7f..9011180 100644 --- a/Source/cmQtAutoGenInitializer.cxx +++ b/Source/cmQtAutoGenInitializer.cxx @@ -1281,6 +1281,12 @@ cmQtAutoGenInitializer::IntegerVersion cmQtAutoGenInitializer::GetQtVersion( if (qtMajor.empty()) { qtMajor = makefile->GetSafeDefinition("Qt5Core_VERSION_MAJOR"); } + if (qtMajor.empty()) { + const char* dirprop = makefile->GetProperty("Qt5Core_VERSION_MAJOR"); + if (dirprop) { + qtMajor = dirprop; + } + } { const char* targetQtVersion = target->GetLinkInterfaceDependentStringProperty("QT_MAJOR_VERSION", ""); @@ -1294,6 +1300,12 @@ cmQtAutoGenInitializer::IntegerVersion cmQtAutoGenInitializer::GetQtVersion( if (!qtMajor.empty()) { if (qtMajor == "5") { qtMinor = makefile->GetSafeDefinition("Qt5Core_VERSION_MINOR"); + if (qtMinor.empty()) { + const char* dirprop = makefile->GetProperty("Qt5Core_VERSION_MINOR"); + if (dirprop) { + qtMinor = dirprop; + } + } } if (qtMinor.empty()) { qtMinor = makefile->GetSafeDefinition("QT_VERSION_MINOR"); https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b598dfb65edd75e0da763d36dcdc3d19016a8d27 commit b598dfb65edd75e0da763d36dcdc3d19016a8d27 Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Wed Jan 30 10:45:41 2019 -0500 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Wed Jan 30 10:46:40 2019 -0500 Tests: add cases for providing Qt5Core_VERSION manually diff --git a/Tests/RunCMake/Autogen/QtInFunction.cmake b/Tests/RunCMake/Autogen/QtInFunction.cmake new file mode 100644 index 0000000..a44bc5a --- /dev/null +++ b/Tests/RunCMake/Autogen/QtInFunction.cmake @@ -0,0 +1,13 @@ +enable_language(CXX) + +function (use_autogen target) + find_package(Qt5 REQUIRED COMPONENTS Core Widgets) + set(Qt5Core_VERSION_MAJOR "${Qt5Core_VERSION_MAJOR}" PARENT_SCOPE) + set(Qt5Core_VERSION_MINOR "${Qt5Core_VERSION_MINOR}" PARENT_SCOPE) + set_property(TARGET "${target}" PROPERTY AUTOMOC 1) + set_property(TARGET "${target}" PROPERTY AUTORCC 1) + set_property(TARGET "${target}" PROPERTY AUTOUIC 1) +endfunction () + +add_executable(main empty.cpp) +use_autogen(main) diff --git a/Tests/RunCMake/Autogen/QtInFunctionNested-stderr.txt b/Tests/RunCMake/Autogen/QtInFunctionNested-stderr.txt new file mode 100644 index 0000000..6b4a933 --- /dev/null +++ b/Tests/RunCMake/Autogen/QtInFunctionNested-stderr.txt @@ -0,0 +1,8 @@ +^CMake Warning \(dev\) in CMakeLists.txt: + AUTOGEN: No valid Qt version found for target main. AUTOMOC, AUTOUIC, + AUTORCC disabled. Consider adding: + + find_package\(Qt5 COMPONENTS Widgets\) + + to your CMakeLists.txt file. +This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/Autogen/QtInFunctionNested.cmake b/Tests/RunCMake/Autogen/QtInFunctionNested.cmake new file mode 100644 index 0000000..5421ba0 --- /dev/null +++ b/Tests/RunCMake/Autogen/QtInFunctionNested.cmake @@ -0,0 +1,17 @@ +enable_language(CXX) + +function (use_autogen target) + find_package(Qt5 REQUIRED COMPONENTS Core Widgets) + set(Qt5Core_VERSION_MAJOR "${Qt5Core_VERSION_MAJOR}" PARENT_SCOPE) + set(Qt5Core_VERSION_MINOR "${Qt5Core_VERSION_MINOR}" PARENT_SCOPE) + set_property(TARGET "${target}" PROPERTY AUTOMOC 1) + set_property(TARGET "${target}" PROPERTY AUTORCC 1) + set_property(TARGET "${target}" PROPERTY AUTOUIC 1) +endfunction () + +function (wrap_autogen target) + use_autogen("${target}") +endfunction () + +add_executable(main empty.cpp) +wrap_autogen(main) diff --git a/Tests/RunCMake/Autogen/QtInFunctionProperty.cmake b/Tests/RunCMake/Autogen/QtInFunctionProperty.cmake new file mode 100644 index 0000000..35f1cd1 --- /dev/null +++ b/Tests/RunCMake/Autogen/QtInFunctionProperty.cmake @@ -0,0 +1,21 @@ +enable_language(CXX) + +function (use_autogen target) + find_package(Qt5 REQUIRED COMPONENTS Core Widgets) + set_property(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + PROPERTY + Qt5Core_VERSION_MAJOR "${Qt5Core_VERSION_MAJOR}") + set_property(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + PROPERTY + Qt5Core_VERSION_MINOR "${Qt5Core_VERSION_MINOR}") + set_property(TARGET "${target}" PROPERTY AUTOMOC 1) + set_property(TARGET "${target}" PROPERTY AUTORCC 1) + set_property(TARGET "${target}" PROPERTY AUTOUIC 1) +endfunction () + +function (wrap_autogen target) + use_autogen("${target}") +endfunction () + +add_executable(main empty.cpp) +wrap_autogen(main) diff --git a/Tests/RunCMake/Autogen/RunCMakeTest.cmake b/Tests/RunCMake/Autogen/RunCMakeTest.cmake index e52f28d..a31b67c 100644 --- a/Tests/RunCMake/Autogen/RunCMakeTest.cmake +++ b/Tests/RunCMake/Autogen/RunCMakeTest.cmake @@ -1,3 +1,8 @@ include(RunCMake) run_cmake(NoQt) +if (with_qt5) + run_cmake(QtInFunction) + run_cmake(QtInFunctionNested) + run_cmake(QtInFunctionProperty) +endif () diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 89102dd..27413dd 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -142,7 +142,14 @@ if(NOT CMake_TEST_EXTERNAL_CMAKE) endif() add_RunCMake_test(AndroidTestUtilities) -add_RunCMake_test(Autogen) +set(autogen_with_qt5 FALSE) +if(CMake_TEST_Qt5) + find_package(Qt5Widgets QUIET NO_MODULE) +endif() +if(CMake_TEST_Qt5 AND Qt5Widgets_FOUND) + set(autogen_with_qt5 TRUE) +endif () +add_RunCMake_test(Autogen -Dwith_qt5=${autogen_with_qt5}) add_RunCMake_test(BuildDepends) if(UNIX AND "${CMAKE_GENERATOR}" MATCHES "Unix Makefiles|Ninja") add_RunCMake_test(Byproducts) ----------------------------------------------------------------------- Summary of changes: Modules/FindBLAS.cmake | 1 - Modules/FindLAPACK.cmake | 1 - Source/cmQtAutoGenInitializer.cxx | 43 +++++++++++++--------- Tests/RunCMake/Autogen/QtInFunction.cmake | 13 +++++++ ...Qt-stderr.txt => QtInFunctionNested-stderr.txt} | 0 Tests/RunCMake/Autogen/QtInFunctionNested.cmake | 17 +++++++++ Tests/RunCMake/Autogen/QtInFunctionProperty.cmake | 21 +++++++++++ Tests/RunCMake/Autogen/RunCMakeTest.cmake | 5 +++ Tests/RunCMake/CMakeLists.txt | 9 ++++- 9 files changed, 89 insertions(+), 21 deletions(-) create mode 100644 Tests/RunCMake/Autogen/QtInFunction.cmake copy Tests/RunCMake/Autogen/{NoQt-stderr.txt => QtInFunctionNested-stderr.txt} (100%) create mode 100644 Tests/RunCMake/Autogen/QtInFunctionNested.cmake create mode 100644 Tests/RunCMake/Autogen/QtInFunctionProperty.cmake hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org https://cmake.org/mailman/listinfo/cmake-commits