From e4d6cbcfa023e8ad5c71565af038fb3056328b4a Mon Sep 17 00:00:00 2001 From: Alessandro Portale Date: Wed, 8 Jan 2025 12:27:32 +0100 Subject: [PATCH] QmlDesigner: Fix Qt Creator build without Qt::Quick Task-number: QTCREATORBUG-32299 Change-Id: I8bc98f8bdca9a7f985ea6f4848db6cd00cc12cc7 Reviewed-by: Tim Jenssen --- CMakeLists.txt | 6 +++--- cmake/Utils.cmake | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 36ac23e0f3b..224ff3b6de3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -77,6 +77,9 @@ find_package(Qt6 REQUIRED ) +find_package(Qt6 OPTIONAL_COMPONENTS Quick QuickWidgets Designer DesignerComponentsPrivate + Help SerialPort Svg Tools LinguistTools QUIET) + # depending on Qt version and compiler version enable or disable Qml Designer # can be overwritten by variable WITH_QMLDESIGNER / QTC_WITH_QMLDESIGNER (env) configure_qml_designer(${Qt6_VERSION}) @@ -106,9 +109,6 @@ if (MSVC AND QT_FEATURE_static_runtime) set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") endif() -find_package(Qt6 OPTIONAL_COMPONENTS Quick QuickWidgets Designer DesignerComponentsPrivate - Help SerialPort Svg Tools LinguistTools QUIET) - find_package(Threads) find_package(Clang QUIET) diff --git a/cmake/Utils.cmake b/cmake/Utils.cmake index 9c4b95af990..53c8f9f8012 100644 --- a/cmake/Utils.cmake +++ b/cmake/Utils.cmake @@ -89,6 +89,10 @@ function(configure_qml_designer Qt6_VERSION) set(QTC_WITH_QMLDESIGNER_DEFAULT OFF) endif() + if(NOT TARGET Qt::Quick) + set(QTC_WITH_QMLDESIGNER_DEFAULT OFF) + endif() + env_with_default("QTC_WITH_QMLDESIGNER" ENV_QTC_WITH_QMLDESIGNER ${QTC_WITH_QMLDESIGNER_DEFAULT}) option(WITH_QMLDESIGNER "Build QmlDesigner" ${ENV_QTC_WITH_QMLDESIGNER}) add_feature_info("WITH_QMLDESIGNER" ${WITH_QMLDESIGNER} "${QMLDESIGNER_FEATURE_DESC}")