diff --git a/package/qt6/Config.in b/package/qt6/Config.in index 81682af476..625134d281 100644 --- a/package/qt6/Config.in +++ b/package/qt6/Config.in @@ -45,6 +45,7 @@ if BR2_PACKAGE_QT6 source "package/qt6/qt6base/Config.in" source "package/qt6/qt6core5compat/Config.in" +source "package/qt6/qt6declarative/Config.in" source "package/qt6/qt6languageserver/Config.in" source "package/qt6/qt6serialbus/Config.in" source "package/qt6/qt6serialport/Config.in" diff --git a/package/qt6/qt6declarative/0001-Fix-build-with--no-feature-network.patch b/package/qt6/qt6declarative/0001-Fix-build-with--no-feature-network.patch new file mode 100644 index 0000000000..bef5794229 --- /dev/null +++ b/package/qt6/qt6declarative/0001-Fix-build-with--no-feature-network.patch @@ -0,0 +1,28 @@ +From 8377691a0998fd84e6fc8349a5db450bf2d79164 Mon Sep 17 00:00:00 2001 +From: Tasuku Suzuki +Date: Tue, 21 Nov 2023 23:58:43 +0900 +Subject: Fix build with -no-feature-network + +Change-Id: Ib21012301da6afb5458f707b39a9a8079d93eb93 +Reviewed-by: Ulf Hermann +Upstream: https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=8377691a0998fd84e6fc8349a5db450bf2d79164 +Signed-off-by: Roy Kollen Svendsen +--- + src/qml/configure.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/qml/configure.cmake b/src/qml/configure.cmake +index 2d0434643a..d1ff90bd54 100644 +--- a/src/qml/configure.cmake ++++ b/src/qml/configure.cmake +@@ -82,7 +82,7 @@ qt_feature("qml-ssl" PUBLIC + SECTION "QML" + LABEL "QML SSL support" + PURPOSE "Provides ssl support in QML." +- CONDITION QT_FEATURE_ssl ++ CONDITION QT_FEATURE_qml_network AND QT_FEATURE_ssl + ) + + # On arm and arm64 we need a specialization of cacheFlush() for each OS to be +-- +cgit v1.2.3 diff --git a/package/qt6/qt6declarative/Config.in b/package/qt6/qt6declarative/Config.in new file mode 100644 index 0000000000..0a977ed808 --- /dev/null +++ b/package/qt6/qt6declarative/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_QT6DECLARATIVE + bool "qt6declarative" + # Enable host test module to ensure that qmltestrunner is built + help + Qt is a cross-platform application and UI framework for + developers using C++. + + This package corresponds to the qt6declarative module. + + https://doc.qt.io/qt-6/qtdeclarative-index.html + +if BR2_PACKAGE_QT6DECLARATIVE + +config BR2_PACKAGE_QT6DECLARATIVE_QUICK + bool "quick module" + select BR2_PACKAGE_HOST_QT6BASE_TEST if BR2_PACKAGE_QT6BASE_TEST # qmltestrunner + select BR2_PACKAGE_HOST_QT6BASE_NETWORK if BR2_PACKAGE_QT6BASE_NETWORK # qmlprofiler + select BR2_PACKAGE_QT6BASE_GUI + select BR2_PACKAGE_QT6BASE_OPENGL if BR2_PACKAGE_QT6_GL_SUPPORTS + select BR2_PACKAGE_QT6SHADERTOOLS + +endif diff --git a/package/qt6/qt6declarative/qt6declarative.hash b/package/qt6/qt6declarative/qt6declarative.hash new file mode 100644 index 0000000000..006b49e4b1 --- /dev/null +++ b/package/qt6/qt6declarative/qt6declarative.hash @@ -0,0 +1,11 @@ +# Hash from: https://download.qt.io/official_releases/qt/6.7/6.7.2/submodules/qtdeclarative-everywhere-src-6.7.2.tar.xz.sha256 +sha256 4c29cba1af8c42d425d8eb6e01bad24cb80f4b983d71eef566a0542dfdb9b999 qtdeclarative-everywhere-src-6.7.2.tar.xz + +# Hashes for license files: +sha256 9f0490f18656c6f2435bd14f603ef0c96434d1825615363dce43abb42ed1dcce LICENSES/BSD-3-Clause.txt +sha256 110535522396708cea37c72a802c5e7e81391139f5f7985631c93ef242b206a4 LICENSES/GFDL-1.3-no-invariants-only.txt +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSES/GPL-2.0-only.txt +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSES/GPL-3.0-only.txt +sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 LICENSES/LGPL-3.0-only.txt +sha256 9b1f50aae6267f9d5e0ceb6775ee86450262c25ec7c0573e151fe5d3f18a4700 LICENSES/LicenseRef-Qt-Commercial.txt +sha256 40678d338ce53cd93f8b22b281a2ecbcaa3ee65ce60b25ffb0c462b0530846b2 LICENSES/Qt-GPL-exception-1.0.txt diff --git a/package/qt6/qt6declarative/qt6declarative.mk b/package/qt6/qt6declarative/qt6declarative.mk new file mode 100644 index 0000000000..57a89a3b6e --- /dev/null +++ b/package/qt6/qt6declarative/qt6declarative.mk @@ -0,0 +1,67 @@ +################################################################################ +# +# qt6declaratve +# +################################################################################ + +QT6DECLARATIVE_VERSION = $(QT6_VERSION) +QT6DECLARATIVE_SITE = $(QT6_SITE) +QT6DECLARATIVE_SOURCE = qtdeclarative-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6DECLARATIVE_VERSION).tar.xz +QT6DECLARATIVE_INSTALL_STAGING = YES + +QT6DECLARATIVE_SUPPORTS_IN_SOURCE_BUILD = NO + +QT6DECLARATIVE_CMAKE_BACKEND = ninja + +QT6DECLARATIVE_LICENSE = \ + LGPL-3.0 or GPL-3.0 or GPL-2.0, \ + BSD-3-Clause (docs), \ + GFDL-1.3 no invariants (docs), \ + BSD-3-Clause (examples), \ + GPL-3.0 (tests), \ + GPL-3.0 WITH Qt-GPL-exception-1.0 (tools) + +QT6DECLARATIVE_LICENSE_FILES = \ + LICENSES/BSD-3-Clause.txt \ + LICENSES/GPL-2.0-only.txt \ + LICENSES/GPL-3.0-only.txt \ + LICENSES/LGPL-3.0-only.txt \ + LICENSES/GFDL-1.3-no-invariants-only.txt \ + LICENSES/Qt-GPL-exception-1.0.txt + +QT6DECLARATIVE_CONF_OPTS = \ + -DQT_HOST_PATH=$(HOST_DIR) \ + -DBUILD_WITH_PCH=OFF \ + -DQT_BUILD_EXAMPLES=OFF \ + -DQT_BUILD_TESTS=OFF + +HOST_QT6DECLARATIVE_CONF_OPTS = \ + -DQT_HOST_PATH=$(HOST_DIR) \ + -DBUILD_WITH_PCH=OFF \ + -DQT_BUILD_EXAMPLES=OFF \ + -DQT_BUILD_TESTS=OFF + +HOST_QT6DECLARATIVE_DEPENDENCIES = \ + host-qt6base + +QT6DECLARATIVE_DEPENDENCIES = \ + host-qt6declarative \ + qt6base + +ifeq ($(BR2_PACKAGE_QT6DECLARATIVE_QUICK),y) +HOST_QT6DECLARATIVE_DEPENDENCIES += \ + host-qt6shadertools +QT6DECLARATIVE_DEPENDENCIES += \ + host-qt6base \ + qt6shadertools + +# We need host-qt6svg, when qt6svg is available to build the required +# svgtoqml host tool +ifeq ($(BR2_PACKAGE_QT6SVG),y) +HOST_QT6DECLARATIVE_DEPENDENCIES += host-qt6svg +endif + +endif + +$(eval $(cmake-package)) +$(eval $(host-cmake-package))