Github messages for voidlinux
 help / color / mirror / Atom feed
From: sgn <sgn@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] Qt6 6.4.2
Date: Tue, 21 Feb 2023 17:16:05 +0100	[thread overview]
Message-ID: <20230221161605.99GQAHVe3glM5MJlu84URxjOIe7FuTPnXdEHOaQEcZc@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-42348@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1244 bytes --]

There is an updated pull request by sgn against master on the void-packages repository

https://github.com/sgn/void-packages qt6-6.4.2
https://github.com/void-linux/void-packages/pull/42348

Qt6 6.4.2
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

[ci skip][skip ci]
<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/42348.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-qt6-6.4.2-42348.patch --]
[-- Type: text/x-diff, Size: 85526 bytes --]

From 87403d4dea51171afd124568d85081075e1660b7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 17 Feb 2023 11:43:09 +0700
Subject: [PATCH 01/25] qt6-base: update to 6.4.2.

---
 srcpkgs/qt6-base/patches/complex-text.patch   |  0
 srcpkgs/qt6-base/patches/feenableexcept.patch |  6 +-
 srcpkgs/qt6-base/patches/markdown-musl.patch  | 25 ++-----
 srcpkgs/qt6-base/patches/musl-limits.patch    | 12 ++--
 .../qt6-base/patches/musl-test-image.patch    | 19 ++++++
 .../qt6-base/patches/musl-usr-path-hack.patch | 10 ++-
 ...urce-root-dir-last-modified-is-valid.patch |  6 +-
 .../qt6-base/patches/x86-qround-passed.patch  |  8 +--
 srcpkgs/qt6-base/patches/zfs-storage.patch    |  6 +-
 srcpkgs/qt6-base/template                     | 65 ++++++++++---------
 10 files changed, 81 insertions(+), 76 deletions(-)
 delete mode 100644 srcpkgs/qt6-base/patches/complex-text.patch
 create mode 100644 srcpkgs/qt6-base/patches/musl-test-image.patch

diff --git a/srcpkgs/qt6-base/patches/complex-text.patch b/srcpkgs/qt6-base/patches/complex-text.patch
deleted file mode 100644
index e69de29bb2d1..000000000000
diff --git a/srcpkgs/qt6-base/patches/feenableexcept.patch b/srcpkgs/qt6-base/patches/feenableexcept.patch
index 1b561731b634..9b268bc95d3e 100644
--- a/srcpkgs/qt6-base/patches/feenableexcept.patch
+++ b/srcpkgs/qt6-base/patches/feenableexcept.patch
@@ -1,6 +1,6 @@
---- a/tests/auto/corelib/text/qlocale/tst_qlocale.cpp
-+++ b/tests/auto/corelib/text/qlocale/tst_qlocale.cpp
-@@ -1453,8 +1453,10 @@ void tst_QLocale::fpExceptions()
+--- qt6-base-6.4.2.orig/tests/auto/corelib/text/qlocale/tst_qlocale.cpp
++++ qt6-base-6.4.2/tests/auto/corelib/text/qlocale/tst_qlocale.cpp
+@@ -1502,8 +1502,10 @@ void tst_QLocale::fpExceptions()
      fenv_t envp;
      fegetenv(&envp);
      feclearexcept(FE_ALL_EXCEPT);
diff --git a/srcpkgs/qt6-base/patches/markdown-musl.patch b/srcpkgs/qt6-base/patches/markdown-musl.patch
index d29977b7d33a..5c16b3fbb3ea 100644
--- a/srcpkgs/qt6-base/patches/markdown-musl.patch
+++ b/srcpkgs/qt6-base/patches/markdown-musl.patch
@@ -1,10 +1,10 @@
---- a/tests/auto/gui/text/qtextmarkdownimporter/tst_qtextmarkdownimporter.cpp
-+++ b/tests/auto/gui/text/qtextmarkdownimporter/tst_qtextmarkdownimporter.cpp
-@@ -229,9 +229,11 @@ void tst_QTextMarkdownImporter::lists_da
+--- qt6-base-6.4.2.orig/tests/auto/gui/text/qtextmarkdownimporter/tst_qtextmarkdownimporter.cpp
++++ qt6-base-6.4.2/tests/auto/gui/text/qtextmarkdownimporter/tst_qtextmarkdownimporter.cpp
+@@ -204,9 +204,11 @@ void tst_QTextMarkdownImporter::lists_da
      QTest::newRow("numeric lists nested in empty lists")
              << "- \n    1.  a\n    2.  b\n- c\n  1.\n       + d\n" << 4 << false
              << "- \n    1.  a\n    2.  b\n- c 1. + d\n";
-+#if 0
++#ifdef __GLIC__
      QTest::newRow("styled spans in list items")
              << "1.  normal text\n2.  **bold** text\n3.  `code` in the item\n4.  *italic* text\n5.  _underlined_ text\n" << 5 << false
              << "1.  normal text\n2.  **bold** text\n3.  `code` in the item\n4.  *italic* text\n5.  _underlined_ text\n";
@@ -12,20 +12,3 @@
  }
  
  void tst_QTextMarkdownImporter::lists()
---- a/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp
-+++ b/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp
-@@ -1776,11 +1776,14 @@ void tst_QGraphicsWidget::updateFocusCha
-     const QPoint center(view.viewport()->width() / 2, view.viewport()->height() / 2);
-     QTest::mouseMove(view.viewport(), center);
-     QTest::mouseClick(view.viewport(), Qt::LeftButton, {}, center);
-+#if 0
-+    // Same sympton with QTBUG-23699
- #ifdef Q_OS_MAC
-     QEXPECT_FAIL("", "QTBUG-23699", Continue);
- #endif
-     QTRY_COMPARE(qApp->activeWindow(), static_cast<QWidget *>(&view));
-     QTRY_COMPARE(scene.focusItem(), static_cast<QGraphicsItem *>(w));
-+#endif
- }
- 
- void tst_QGraphicsWidget::sizeHint_data()
diff --git a/srcpkgs/qt6-base/patches/musl-limits.patch b/srcpkgs/qt6-base/patches/musl-limits.patch
index 5a75f4fe38a5..da6d272d99de 100644
--- a/srcpkgs/qt6-base/patches/musl-limits.patch
+++ b/srcpkgs/qt6-base/patches/musl-limits.patch
@@ -1,6 +1,6 @@
---- a/qmake/library/ioutils.cpp	2020-09-24 17:55:53.000000000 +0200
-+++ b/qmake/library/ioutils.cpp	2020-09-24 17:55:53.000000000 +0200
-@@ -40,6 +40,7 @@
+--- qt6-base-6.4.2.orig/qmake/library/ioutils.cpp
++++ qt6-base-6.4.2/qmake/library/ioutils.cpp
+@@ -15,6 +15,7 @@
  #  include <unistd.h>
  #  include <utime.h>
  #  include <fcntl.h>
@@ -8,9 +8,9 @@
  #  include <errno.h>
  #endif
  
---- a/src/corelib/io/qstorageinfo_unix.cpp	2020-09-24 17:55:53.000000000 +0200
-+++ b/src/corelib/io/qstorageinfo_unix.cpp	2020-09-24 17:55:53.000000000 +0200
-@@ -58,6 +58,7 @@
+--- qt6-base-6.4.2.orig/src/corelib/io/qstorageinfo_unix.cpp
++++ qt6-base-6.4.2/src/corelib/io/qstorageinfo_unix.cpp
+@@ -23,6 +23,7 @@
  #  include <sys/vfs.h>
  #  include <mntent.h>
  #elif defined(Q_OS_LINUX) || defined(Q_OS_HURD)
diff --git a/srcpkgs/qt6-base/patches/musl-test-image.patch b/srcpkgs/qt6-base/patches/musl-test-image.patch
new file mode 100644
index 000000000000..b966a22c12a7
--- /dev/null
+++ b/srcpkgs/qt6-base/patches/musl-test-image.patch
@@ -0,0 +1,19 @@
+--- qt6-base-6.4.2.orig/tests/auto/gui/image/qimage/tst_qimage.cpp
++++ qt6-base-6.4.2/tests/auto/gui/image/qimage/tst_qimage.cpp
+@@ -1806,6 +1806,8 @@ void tst_QImage::smoothScale2()
+     QRgb expected = opaque ? qRgb(63, 127, 255) : qRgba(31, 63, 127, 127);
+     img.fill(expected);
+ 
++#ifdef __GLIBC__
++    // broken on musl, unknown reason
+     // scale x down, y down
+     QImage scaled = img.scaled(QSize(1, 1), Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
+     QRgb pixel = scaled.pixel(0, 0);
+@@ -1869,6 +1871,7 @@ void tst_QImage::smoothScale2()
+             QCOMPARE(qBlue(pixel), qBlue(expected));
+         }
+     }
++#endif
+ }
+ 
+ static inline int rand8()
diff --git a/srcpkgs/qt6-base/patches/musl-usr-path-hack.patch b/srcpkgs/qt6-base/patches/musl-usr-path-hack.patch
index a2ec7550e7bb..92eae8431aea 100644
--- a/srcpkgs/qt6-base/patches/musl-usr-path-hack.patch
+++ b/srcpkgs/qt6-base/patches/musl-usr-path-hack.patch
@@ -6,11 +6,9 @@ This breaks qt6-webengine's search path for translations.
 Using realpath instead would probably be a more correct solution.
 
 ---
-diff --git qtbasesrc/corelib/global/qlibraryinfo.cpp qtbasesrc/corelib/global/qlibraryinfo.cpp
-index 8bcf67e73d..28d7355310 100644
---- a/src/corelib/global/qlibraryinfo.cpp
-+++ b/src/corelib/global/qlibraryinfo.cpp
-@@ -558,6 +558,12 @@ static QString getRelocatablePrefix()
+--- qt6-base-6.4.2.orig/src/corelib/global/qlibraryinfo.cpp
++++ qt6-base-6.4.2/src/corelib/global/qlibraryinfo.cpp
+@@ -358,6 +358,12 @@ static QString getRelocatablePrefix(QLib
      int result = dladdr(reinterpret_cast<void *>(&QLibraryInfo::isDebugBuild), &info);
      if (result > 0 && info.dli_fname)
          prefixPath = prefixFromQtCoreLibraryHelper(QString::fromLocal8Bit(info.dli_fname));
@@ -21,5 +19,5 @@ index 8bcf67e73d..28d7355310 100644
 +    }
 +#endif
  #elif defined(Q_OS_WIN)
+     Q_UNUSED(usageMode);
      HMODULE hModule = getWindowsModuleHandle();
-     const int kBufferSize = 4096;
diff --git a/srcpkgs/qt6-base/patches/resource-root-dir-last-modified-is-valid.patch b/srcpkgs/qt6-base/patches/resource-root-dir-last-modified-is-valid.patch
index f1436df42d8e..282b583330ce 100644
--- a/srcpkgs/qt6-base/patches/resource-root-dir-last-modified-is-valid.patch
+++ b/srcpkgs/qt6-base/patches/resource-root-dir-last-modified-is-valid.patch
@@ -1,6 +1,6 @@
---- a/tests/auto/corelib/io/qresourceengine/tst_qresourceengine.cpp
-+++ b/tests/auto/corelib/io/qresourceengine/tst_qresourceengine.cpp
-@@ -607,7 +607,10 @@ void tst_QResourceEngine::lastModified()
+--- qt6-base-6.4.2.orig/tests/auto/corelib/io/qresourceengine/tst_qresourceengine.cpp
++++ qt6-base-6.4.2/tests/auto/corelib/io/qresourceengine/tst_qresourceengine.cpp
+@@ -592,7 +592,10 @@ void tst_QResourceEngine::lastModified()
      {
          QFileInfo fi(":/");
          QVERIFY(fi.exists());
diff --git a/srcpkgs/qt6-base/patches/x86-qround-passed.patch b/srcpkgs/qt6-base/patches/x86-qround-passed.patch
index 9ff90d103eb3..f658ed833e4f 100644
--- a/srcpkgs/qt6-base/patches/x86-qround-passed.patch
+++ b/srcpkgs/qt6-base/patches/x86-qround-passed.patch
@@ -1,6 +1,6 @@
---- a/tests/auto/corelib/global/qglobal/tst_qglobal.cpp
-+++ b/tests/auto/corelib/global/qglobal/tst_qglobal.cpp
-@@ -624,18 +624,14 @@ void tst_QGlobal::qRoundFloats() {
+--- qt6-base-6.4.2.orig/tests/auto/corelib/global/qglobal/tst_qglobal.cpp
++++ qt6-base-6.4.2/tests/auto/corelib/global/qglobal/tst_qglobal.cpp
+@@ -599,18 +599,14 @@ void tst_QGlobal::qRoundFloats() {
      QFETCH(float, expected);
  
  #if !(defined(Q_PROCESSOR_ARM_64) && (__has_builtin(__builtin_round) || defined(Q_CC_GNU)) && !defined(Q_CC_CLANG))
@@ -23,7 +23,7 @@
  }
  
  void tst_QGlobal::qRoundDoubles_data() {
-@@ -653,18 +649,14 @@ void tst_QGlobal::qRoundDoubles() {
+@@ -628,18 +624,14 @@ void tst_QGlobal::qRoundDoubles() {
      QFETCH(double, expected);
  
  #if !(defined(Q_PROCESSOR_ARM_64) && (__has_builtin(__builtin_round) || defined(Q_CC_GNU)) && !defined(Q_CC_CLANG))
diff --git a/srcpkgs/qt6-base/patches/zfs-storage.patch b/srcpkgs/qt6-base/patches/zfs-storage.patch
index 3e772549451b..0473836ba7d6 100644
--- a/srcpkgs/qt6-base/patches/zfs-storage.patch
+++ b/srcpkgs/qt6-base/patches/zfs-storage.patch
@@ -1,6 +1,6 @@
---- a/tests/auto/corelib/io/qstorageinfo/tst_qstorageinfo.cpp	2022-11-03 00:05:49.281737775 +0100
-+++ -	2022-11-03 00:07:52.538145369 +0100
-@@ -165,6 +165,8 @@
+--- qt6-base-6.4.2.orig/tests/auto/corelib/io/qstorageinfo/tst_qstorageinfo.cpp
++++ qt6-base-6.4.2/tests/auto/corelib/io/qstorageinfo/tst_qstorageinfo.cpp
+@@ -165,6 +165,8 @@ void tst_QStorageInfo::tempFile()
  #ifdef Q_OS_LINUX
      if (storage1.fileSystemType() == "btrfs")
          QSKIP("This test doesn't work on btrfs, probably due to a btrfs bug");
diff --git a/srcpkgs/qt6-base/template b/srcpkgs/qt6-base/template
index c2d6443dddad..5a54c7a32d78 100644
--- a/srcpkgs/qt6-base/template
+++ b/srcpkgs/qt6-base/template
@@ -1,6 +1,6 @@
 # Template file for 'qt6-base'
 pkgname=qt6-base
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
 configure_args="-DINSTALL_DATADIR=share/qt6
@@ -13,6 +13,7 @@ configure_args="-DINSTALL_DATADIR=share/qt6
  -DINSTALL_SYSCONFDIR=/etc/xdg
  -DQT_FEATURE_openssl_linked=ON
  -DQT_FEATURE_system_sqlite=ON
+ -DQT_FEATURE_libproxy=ON
  -DBUILD_WITH_PCH=OFF"
 hostmakedepends="perl pkg-config xmlstarlet"
 makedepends="zlib-devel libzstd-devel dbus-devel
@@ -30,11 +31,11 @@ maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only WITH Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
 homepage="https://www.qt.io"
 distfiles="https://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtbase-everywhere-src-${version}.tar.xz"
-checksum=cb6475a0bd8567c49f7ffbb072a05516ee6671171bed55db75b22b94ead9b37d
+checksum=a88bc6cedbb34878a49a622baa79cace78cfbad4f95fdbd3656ddb21c705525d
 python_version=3
 
 if [ "$CROSS_BUILD" ]; then
-	hostmakedepends+=" qt6-base-devel"
+	hostmakedepends+=" qt6-base"
 	# QtSetup fails native builds if this is set
 	configure_args+="-DQT_FORCE_BUILD_TOOLS=true"
 fi
@@ -47,47 +48,47 @@ fi
 do_check() {
 	cd build
 	export QT_QPA_PLATFORM=offscreen
+	export QMAKESPEC=$wrksrc/mkspecs/linux-g++
 	local failing_tests="tst_selftests tst_qmake tst_moc
 		tst_rcc tst_qfile tst_qstandardpaths
 		tst_qtemporarydir tst_qtemporaryfile tst_qdir
 		tst_qpluginloader tst_qlibrary tst_qtextstream
-		tst_qdate tst_qdatetime tst_qtimezone
-		test_umbrella_config test_wrap_cpp_and_resources
-		test_dependent_modules test_needsquoting_dirname
-		test_add_resource_options test_wrap_cpp_options
-		test_platform_defs_include test_qtmainwin_library
-		test_dbus_module test_multiple_find_package
-		test_add_resources_delayed_file test_QTBUG-63422
-		test_add_binary_resources_delayed_file
-		test_private_includes test_private_targets
-		test_testlib_definitions test_json_plugin_includes
-		test_testlib_no_link_gui test_testlib_no_link_widgets
-		module_includes test_concurrent_module test_opengl_lib
+		test_build_simple_widget_app_qmake
 		test_interface test_interface_link_libraries
-		test_moc_macro_target test_add_big_resource
-		test_versionless_targets test_add_resources_binary_generated
-		test_plugin_flavor_static test_plugin_flavor_shared
-		test_plugin_flavor_derived_from_qt_type
-		tst_qaddpreroutine tst_qfont tst_qfontdatabase
+		tst_qfont tst_qfontdatabase
 		tst_qfontmetrics tst_qglyphrun tst_qrawfont
 		tst_qtextdocumentlayout	tst_qopenglconfig
-		tst_qopengl tst_qdnslookup tst_qfiledialog
+		tst_qopengl tst_qfiledialog
 		tst_qgraphicsview tst_qapplication tst_qfontcombobox
 		tst_qlineedit tst_qmenubar tst_qopenglwidget
 		tst_qx11info tst_qcomplextext
-		test_QFINDTESTDATA run_test_QFINDTESTDATA"
+		tst_qaddpreroutine tst_qtextcursor"
 	# Unknown platform linux-g++ :/
 	failing_tests+=" mockplugins test_import_plugins
-		test_static_resources test_generating_cpp_exports"
+	 test_static_resources test_generating_cpp_exports"
 	failing_tests+=" tst_qstorageinfo"
-	# broken with -O, passed with -O0, probably broken floating point code.
-	failing_tests+=" tst_qvectornd"
+	if [ "$XBPS_TARGET_LIBC" = musl ]; then
+		# Some glibc specific DNS Lookup
+		failing_tests+=" tst_qdnslookup"
+	fi
+	if [ "$XBPS_TARGET_WORDSIZE" = 32 ]; then
+		# failing on i686, not checked on arm
+		failing_tests+=" tst_qvectorrnd"
+	fi
 	local ctest_exclude="("
 	for failure in $failing_tests; do
 		ctest_exclude+="$failure|"
 	done
 	ctest_exclude="${ctest_exclude%|})"
+	if [ ! -e "$wrksrc/build/include/qt6" ]; then
+		ln -s .. "$wrksrc/build/include/qt6"
+	fi
 	ctest -E "$ctest_exclude"
+	rm "$wrksrc/build/include/qt6"
+}
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
 }
 
 qt6-gui_package() {
@@ -231,11 +232,9 @@ qt6-plugin-tls-qcertonly_package() {
 }
 
 qt6-plugin-networkinformation_package() {
-	short_desc+=" - Networkinformation plugin"
+	short_desc+=" - NetworkInformation plugin"
 	pkg_install() {
-		vmove usr/lib/qt6/plugins/networkinformation/libqnetworkmanager.so
-		vmove usr/lib/qt6/plugins/networkinformation/libqglib.so
-
+		vmove usr/lib/qt6/plugins/networkinformation
 	}
 }
 
@@ -261,8 +260,8 @@ qt6-base-devel_package() {
 	 qt6-plugin-networkinformation>=${version}_${revision}
 	 ${makedepends}"
 	pkg_install() {
+		local _f
 		vmove usr/include
-		vmove usr/lib/cmake
 		vmove usr/lib/metatypes
 		vmove usr/lib/pkgconfig
 		vmove usr/lib/qt6/mkspecs
@@ -270,5 +269,11 @@ qt6-base-devel_package() {
 		vmove "usr/lib/*.so"
 		vmove "usr/lib/*.prl"
 		vmove usr/share/qt6/modules
+		for _f in ${DESTDIR}/usr/lib/cmake/*; do
+			case "$_f" in
+			*Tools|*HostInfo) ;;
+			*)	vmove "usr/lib/cmake/${_f##*/}" ;;
+			esac
+		done
 	}
 }

From 3d6572245976e97dbaa13a1854475e8812bbf250 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 17 Feb 2023 11:44:09 +0700
Subject: [PATCH 02/25] qt6-declarative: update to 6.4.2.

---
 common/shlibs                                 |   2 +-
 srcpkgs/qt6-declarative-host-tools            |   1 +
 .../patches/bin-qml-location.patch            | 205 ++++++++++--------
 .../patches/qml-broken-test.patch             |   6 +-
 srcpkgs/qt6-declarative/template              |  75 +++++--
 srcpkgs/qt6-quick-test                        |   1 +
 6 files changed, 167 insertions(+), 123 deletions(-)
 create mode 120000 srcpkgs/qt6-declarative-host-tools
 create mode 120000 srcpkgs/qt6-quick-test

diff --git a/common/shlibs b/common/shlibs
index 2028226606bc..af78faa086a2 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2035,7 +2035,7 @@ libQt6LabsSharedImage.so.6 qt6-declarative-6.1.0_1
 libQt6LabsWavefrontMesh.so.6 qt6-declarative-6.1.0_1
 libQt6QmlLocalStorage.so.6 qt6-declarative-6.1.0_1
 libQt6QmlWorkerScript.so.6 qt6-declarative-6.0.0_1
-libQt6QuickTest.so.6 qt6-declarative-devel-6.2.0beta4_1
+libQt6QuickTest.so.6 qt6-quick-test-6.4.2_1
 libQt6QuickShapes.so.6 qt6-declarative-6.0.0_1
 libQt6QuickWidgets.so.6 qt6-declarative-6.0.0_1
 libQt6Quick.so.6 qt6-declarative-6.0.0_1
diff --git a/srcpkgs/qt6-declarative-host-tools b/srcpkgs/qt6-declarative-host-tools
new file mode 120000
index 000000000000..fd03a4809f3e
--- /dev/null
+++ b/srcpkgs/qt6-declarative-host-tools
@@ -0,0 +1 @@
+qt6-declarative
\ No newline at end of file
diff --git a/srcpkgs/qt6-declarative/patches/bin-qml-location.patch b/srcpkgs/qt6-declarative/patches/bin-qml-location.patch
index f92e34632502..9323aec00b64 100644
--- a/srcpkgs/qt6-declarative/patches/bin-qml-location.patch
+++ b/srcpkgs/qt6-declarative/patches/bin-qml-location.patch
@@ -1,193 +1,206 @@
---- a/tests/auto/qml/debugger/qqmldebugtranslationclient/tst_qqmldebugtranslationclient.cpp
-+++ b/tests/auto/qml/debugger/qqmldebugtranslationclient/tst_qqmldebugtranslationclient.cpp
-@@ -94,7 +94,11 @@ private:
-     {
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/debugger/qqmldebugtranslationclient/tst_qqmldebugtranslationclient.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/debugger/qqmldebugtranslationclient/tst_qqmldebugtranslationclient.cpp
+@@ -71,6 +71,9 @@ private:
          m_currentOutputLine = 0;
  
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+        auto executable = QT_DECLARATIVE_BIN_PATH "/qml";
-+#else
          auto executable = QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml";
-+#endif
++        char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++        if (build_bin_path && *build_bin_path)
++            executable = QString(build_bin_path) + "/qml";
          auto services = QQmlDebugTranslationServiceImpl::s_key;
          auto extraArgs = testFile(QMLFILE);
          auto block = true;
---- a/tests/auto/qml/debugger/qqmlinspector/tst_qqmlinspector.cpp
-+++ b/tests/auto/qml/debugger/qqmlinspector/tst_qqmlinspector.cpp
-@@ -72,7 +72,12 @@ tst_QQmlInspector::tst_QQmlInspector()
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/debugger/qqmlinspector/tst_qqmlinspector.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/debugger/qqmlinspector/tst_qqmlinspector.cpp
+@@ -47,7 +47,11 @@ tst_QQmlInspector::tst_QQmlInspector()
  QQmlDebugTest::ConnectResult tst_QQmlInspector::startQmlProcess(const QString &qmlFile,
                                                                  bool restrictServices)
  {
 -    return QQmlDebugTest::connectTo(QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml",
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+    auto executable = QT_DECLARATIVE_BIN_PATH "/qml";
-+#else
 +    auto executable = QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml";
-+#endif
++    char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin_path && *build_bin_path)
++        executable = QString(build_bin_path) + "/qml";
 +    return QQmlDebugTest::connectTo(executable,
                                    restrictServices ? QStringLiteral("QmlInspector") : QString(),
                                    testFile(qmlFile), true);
  }
---- a/tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp
-+++ b/tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp
-@@ -204,10 +204,16 @@ private:
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp
+@@ -179,10 +179,18 @@ private:
          CheckType = CheckMessageType | CheckDetailType | CheckLine | CheckColumn | CheckFileEndsWith
      };
  
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+#define QMLSCENE_PATH QT_DECLARATIVE_BIN_PATH "/qml"
-+#else
-+#define QMLSCENE_PATH QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qmlscene"
-+#endif
++    static QString QmlScenePath()
++    {
++        char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++        if (build_bin_path && *build_bin_path)
++            return QString(build_bin_path) + "/qmlscene";
++        return QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qmlscene";
++    }
 +
      ConnectResult connectTo(bool block, const QString &file, bool recordFromStart = true,
                            uint flushInterval = 0, bool restrictServices = true,
                            const QString &executable
 -            = QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qmlscene");
-+            = QMLSCENE_PATH);
++            = QmlScenePath());
      void checkProcessTerminated();
      void checkTraceReceived();
      void checkJsHeap();
---- a/tests/auto/qml/debugger/qqmldebuggingenabler/qqmldebuggingenabler/tst_qqmldebuggingenabler.cpp
-+++ b/tests/auto/qml/debugger/qqmldebuggingenabler/qqmldebuggingenabler/tst_qqmldebuggingenabler.cpp
-@@ -110,8 +110,13 @@ void tst_QQmlDebuggingEnabler::qmlscene(
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/debugger/qqmldebuggingenabler/qqmldebuggingenabler/tst_qqmldebuggingenabler.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/debugger/qqmldebuggingenabler/qqmldebuggingenabler/tst_qqmldebuggingenabler.cpp
+@@ -85,8 +85,12 @@ void tst_QQmlDebuggingEnabler::qmlscene(
      QFETCH(bool, blockMode);
      QFETCH(QStringList, services);
  
 -    m_process = new QQmlDebugProcess(
 -                QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qmlscene", this);
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+    auto executable = QT_DECLARATIVE_BIN_PATH "/qmlscene";
-+#else
 +    auto executable = QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qmlscene";
-+#endif
++    char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin_path && *build_bin_path)
++        executable = QString(build_bin_path) + "/qmlscene";
 +
 +    m_process = new QQmlDebugProcess(executable, this);
      m_process->setMaximumBindErrors(1);
      m_process->start(QStringList()
                       << QString::fromLatin1("-qmljsdebugger=connector:%1%2%3%4")
---- a/tests/auto/qml/debugger/qqmlenginecontrol/tst_qqmlenginecontrol.cpp
-+++ b/tests/auto/qml/debugger/qqmlenginecontrol/tst_qqmlenginecontrol.cpp
-@@ -91,7 +91,12 @@ tst_QQmlEngineControl::tst_QQmlEngineCon
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/debugger/qqmlenginecontrol/tst_qqmlenginecontrol.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/debugger/qqmlenginecontrol/tst_qqmlenginecontrol.cpp
+@@ -66,7 +66,11 @@ tst_QQmlEngineControl::tst_QQmlEngineCon
  QQmlDebugTest::ConnectResult tst_QQmlEngineControl::connectTo(const QString &file,
                                                              bool restrictServices)
  {
 -    return QQmlDebugTest::connectTo(QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qmlscene",
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+    auto executable = QT_DECLARATIVE_BIN_PATH "/qmlscene";
-+#else
 +    auto executable = QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qmlscene";
-+#endif
++    char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin_path && *build_bin_path)
++        executable = QString(build_bin_path) + "/qmlscene";
 +    return QQmlDebugTest::connectTo(executable,
                                    restrictServices ? QStringLiteral("EngineControl") : QString(),
                                    testFile(file), true);
  }
---- a/tests/auto/qml/debugger/qqmlenginedebuginspectorintegrationtest/tst_qqmlenginedebuginspectorintegration.cpp
-+++ b/tests/auto/qml/debugger/qqmlenginedebuginspectorintegrationtest/tst_qqmlenginedebuginspectorintegration.cpp
-@@ -96,7 +96,11 @@ tst_QQmlEngineDebugInspectorIntegration:
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/debugger/qqmlenginedebuginspectorintegrationtest/tst_qqmlenginedebuginspectorintegration.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/debugger/qqmlenginedebuginspectorintegrationtest/tst_qqmlenginedebuginspectorintegration.cpp
+@@ -70,8 +70,11 @@ tst_QQmlEngineDebugInspectorIntegration:
+ 
  QQmlDebugTest::ConnectResult tst_QQmlEngineDebugInspectorIntegration::init(bool restrictServices)
  {
-     return QQmlDebugTest::connectTo(
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+                QT_DECLARATIVE_BIN_PATH "/qml",
-+#else
-                 QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml",
-+#endif
+-    return QQmlDebugTest::connectTo(
+-                QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml",
++    auto executable = QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml";
++    char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin_path && *build_bin_path)
++        executable = QString(build_bin_path) + "/qml";
++    return QQmlDebugTest::connectTo(executable,
                  restrictServices ? QStringLiteral("QmlDebugger,QmlInspector") : QString(),
                  testFile("qtquick2.qml"), true);
  }
---- a/tests/auto/qml/debugger/qqmlpreview/tst_qqmlpreview.cpp
-+++ b/tests/auto/qml/debugger/qqmlpreview/tst_qqmlpreview.cpp
-@@ -81,7 +81,12 @@ tst_QQmlPreview::tst_QQmlPreview()
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/debugger/qqmlpreview/tst_qqmlpreview.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/debugger/qqmlpreview/tst_qqmlpreview.cpp
+@@ -56,7 +56,11 @@ tst_QQmlPreview::tst_QQmlPreview()
  
  QQmlDebugTest::ConnectResult tst_QQmlPreview::startQmlProcess(const QString &qmlFile)
  {
 -    return QQmlDebugTest::connectTo(QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml",
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+    auto executable = QT_DECLARATIVE_BIN_PATH "/qml";
-+#else
 +    auto executable = QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml";
-+#endif
++    char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin_path && *build_bin_path)
++        executable = QString(build_bin_path) + "/qml";
 +    return QQmlDebugTest::connectTo(executable,
                                    QStringLiteral("QmlPreview"), testFile(qmlFile), true);
  }
  
---- a/tests/auto/qml/qmlformat/tst_qmlformat.cpp
-+++ b/tests/auto/qml/qmlformat/tst_qmlformat.cpp
-@@ -88,7 +88,11 @@ TestQmlformat::TestQmlformat()
- void TestQmlformat::initTestCase()
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/qmlformat/tst_qmlformat.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/qmlformat/tst_qmlformat.cpp
+@@ -65,6 +65,9 @@ void TestQmlformat::initTestCase()
  {
      QQmlDataTest::initTestCase();
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+    m_qmlformatPath = QLatin1String(QT_DECLARATIVE_BIN_PATH "/qmlformat");
-+#else
      m_qmlformatPath = QLibraryInfo::path(QLibraryInfo::BinariesPath) + QLatin1String("/qmlformat");
-+#endif
++    char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin_path && *build_bin_path)
++        m_qmlformatPath = QLatin1String(build_bin_path) + "/qmlformat";
  #ifdef Q_OS_WIN
      m_qmlformatPath += QLatin1String(".exe");
  #endif
---- a/tests/auto/qml/qmlimportscanner/tst_qmlimportscanner.cpp
-+++ b/tests/auto/qml/qmlimportscanner/tst_qmlimportscanner.cpp
-@@ -63,8 +63,12 @@ TestQmlimportscanner::TestQmlimportscann
- void TestQmlimportscanner::initTestCase()
- {
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/qmlimportscanner/tst_qmlimportscanner.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/qmlimportscanner/tst_qmlimportscanner.cpp
+@@ -42,6 +42,9 @@ void TestQmlimportscanner::initTestCase(
      QQmlDataTest::initTestCase();
-+#ifdef QT_DECLARATIVE_LIBEXEC_PATH
-+    m_qmlimportscannerPath = QLatin1String(QT_DECLARATIVE_LIBEXEC_PATH "/qmlimportscanner");
-+#else
      m_qmlimportscannerPath = QLibraryInfo::path(QLibraryInfo::LibraryExecutablesPath)
              + QLatin1String("/qmlimportscanner");
-+#endif
++    char *build_libexec = getenv("QT_BUILD_LIBEXEC_PATH");
++    if (build_libexec && *build_libexec)
++        m_qmlimportscannerPath = QLatin1String(build_libexec) + "/qmlimportscanner";
  #ifdef Q_OS_WIN
      m_qmlimportscannerPath += QLatin1String(".exe");
  #endif
---- a/tests/auto/qml/qmllint/tst_qmllint.cpp
-+++ b/tests/auto/qml/qmllint/tst_qmllint.cpp
-@@ -136,11 +136,17 @@ TestQmllint::TestQmllint()
- void TestQmllint::initTestCase()
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/qmllint/tst_qmllint.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/qmllint/tst_qmllint.cpp
+@@ -159,10 +159,18 @@ void TestQmllint::initTestCase()
  {
      QQmlDataTest::initTestCase();
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+    m_qmllintPath = QLatin1String(QT_DECLARATIVE_BIN_PATH "/qmllint");
-+    m_qmljsrootgenPath = QLatin1String(QT_DECLARATIVE_BIN_PATH "/qmljsrootgen");
-+    m_qmltyperegistrarPath = QLatin1String(QT_DECLARATIVE_BIN_PATH "/qmltyperegistrar");
-+#else
      m_qmllintPath = QLibraryInfo::path(QLibraryInfo::BinariesPath) + QLatin1String("/qmllint");
++    char *build_bin = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin && *build_bin)
++        m_qmllintPath = QLatin1String(build_bin) + "/qmllint";
      m_qmljsrootgenPath = QLibraryInfo::path(QLibraryInfo::LibraryExecutablesPath)
              + QLatin1String("/qmljsrootgen");
      m_qmltyperegistrarPath = QLibraryInfo::path(QLibraryInfo::LibraryExecutablesPath)
              + QLatin1String("/qmltyperegistrar");
-+#endif
++    char *build_libexec = getenv("QT_BUILD_LIBEXEC_PATH");
++    if (build_libexec && *build_libexec) {
++        m_qmljsrootgenPath = QLatin1String(build_libexec) + "/qmljsrootgen";
++        m_qmltyperegistrarPath = QLatin1String(build_libexec) + "/qmltypesregistrar";
++    }
  #ifdef Q_OS_WIN
      m_qmllintPath += QLatin1String(".exe");
      m_qmljsrootgenPath += QLatin1String(".exe");
---- a/tests/auto/qml/debugger/qdebugmessageservice/tst_qdebugmessageservice.cpp
-+++ b/tests/auto/qml/debugger/qdebugmessageservice/tst_qdebugmessageservice.cpp
-@@ -143,7 +143,12 @@ tst_QDebugMessageService::tst_QDebugMess
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/debugger/qdebugmessageservice/tst_qdebugmessageservice.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/debugger/qdebugmessageservice/tst_qdebugmessageservice.cpp
+@@ -118,7 +118,11 @@ tst_QDebugMessageService::tst_QDebugMess
  
  void tst_QDebugMessageService::retrieveDebugOutput()
  {
 -    QCOMPARE(QQmlDebugTest::connectTo(QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml",
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+    auto executable = QT_DECLARATIVE_BIN_PATH "/qml";
-+#else
 +    auto executable = QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qml";
-+#endif
++    char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin_path && *build_bin_path)
++        executable = QString(build_bin_path) + "/qml";
 +    QCOMPARE(QQmlDebugTest::connectTo(executable,
                                      QString(), testFile(QMLFILE), true), ConnectSuccess);
  
      QTRY_VERIFY(m_client->logBuffer.size() >= 2);
---- a/tests/auto/qml/qmlplugindump/tst_qmlplugindump.cpp
-+++ b/tests/auto/qml/qmlplugindump/tst_qmlplugindump.cpp
-@@ -62,7 +62,11 @@ tst_qmlplugindump::tst_qmlplugindump()
- void tst_qmlplugindump::initTestCase()
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/qmlplugindump/tst_qmlplugindump.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/qmlplugindump/tst_qmlplugindump.cpp
+@@ -38,6 +38,9 @@ void tst_qmlplugindump::initTestCase()
  {
      QQmlDataTest::initTestCase();
-+#ifdef QT_DECLARATIVE_BIN_PATH
-+    qmlplugindumpPath = QT_DECLARATIVE_BIN_PATH;
-+#else
      qmlplugindumpPath = QLibraryInfo::path(QLibraryInfo::BinariesPath);
-+#endif
++    char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin_path && *build_bin_path)
++        qmlplugindumpPath = build_bin_path;
  
  #if defined(Q_OS_WIN)
      qmlplugindumpPath += QLatin1String("/qmlplugindump.exe");
+--- qt6-declarative-6.4.2.orig/tests/auto/qml/debugger/qqmldebugjs/tst_qqmldebugjs.cpp
++++ qt6-declarative-6.4.2/tests/auto/qml/debugger/qqmldebugjs/tst_qqmldebugjs.cpp
+@@ -163,11 +163,18 @@ void tst_QQmlDebugJS::initTestCase()
+     QQmlDebugTest::initTestCase();
+ }
+ #include <iostream>
++static QString qmlScenePath()
++{
++    char *build_bin_path = getenv("QT_BUILD_BIN_PATH");
++    if (build_bin_path && *build_bin_path)
++        return QString(build_bin_path) + "/qmlscene";
++    return QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qmlscene";
++}
+ QQmlDebugTest::ConnectResult tst_QQmlDebugJS::init(bool qmlscene, const QString &qmlFile,
+                                                    bool blockMode, bool restrictServices)
+ {
+     const QString executable = qmlscene
+-            ? QLibraryInfo::path(QLibraryInfo::BinariesPath) + "/qmlscene"
++            ? qmlScenePath()
+             : debugJsServerPath("qqmldebugjs");
+     return QQmlDebugTest::connectTo(
+                 executable, restrictServices ? QStringLiteral("V8Debugger") : QString(),
diff --git a/srcpkgs/qt6-declarative/patches/qml-broken-test.patch b/srcpkgs/qt6-declarative/patches/qml-broken-test.patch
index 4d44e90b678c..b16412fcd5e5 100644
--- a/srcpkgs/qt6-declarative/patches/qml-broken-test.patch
+++ b/srcpkgs/qt6-declarative/patches/qml-broken-test.patch
@@ -1,6 +1,6 @@
---- a/tests/auto/quickcontrols2/controls/data/tst_rangeslider.qml
-+++ b/tests/auto/quickcontrols2/controls/data/tst_rangeslider.qml
-@@ -649,61 +649,6 @@ TestCase {
+--- qt6-declarative-6.4.2.orig/tests/auto/quickcontrols2/controls/data/tst_rangeslider.qml
++++ qt6-declarative-6.4.2/tests/auto/quickcontrols2/controls/data/tst_rangeslider.qml
+@@ -602,61 +602,6 @@ TestCase {
      }
  
      function test_overlappingHandles() {
diff --git a/srcpkgs/qt6-declarative/template b/srcpkgs/qt6-declarative/template
index c69159f3b6e1..3ba408cb3bf2 100644
--- a/srcpkgs/qt6-declarative/template
+++ b/srcpkgs/qt6-declarative/template
@@ -1,22 +1,21 @@
 # Template file for 'qt6-declarative'
 pkgname=qt6-declarative
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="qt6-base-devel perl pkg-config wayland-devel
- qt6-shadertools-devel"
+hostmakedepends="qt6-base perl pkg-config wayland-devel qt6-shadertools"
 makedepends="qt6-base-devel Vulkan-Headers qt6-shadertools-devel"
 short_desc="Cross-platform application and UI framework - Declarative"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only with Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
 homepage="https://www.qt.io"
 distfiles="https://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtdeclarative-everywhere-src-${version}.tar.xz"
-checksum=3434e72fccfa0c929c326790723d05c155f5067746b1ab05cfd7a9ba632c4383
+checksum=a4bdd983de4e9cbca0f85b767dbdd8598711554e370a06da8f509ded4430f5bd
 replaces="qt6-quickcontrols2>=0"
 
 if [ "$CROSS_BUILD" ]; then
 	configure_args="-DQT_FORCE_BUILD_TOOLS=true"
-	hostmakedepends+=" qt6-declarative-devel"
+	hostmakedepends+=" qt6-declarative-host-tools"
 fi
 
 if [ "$XBPS_CHECK_PKGS" ]; then
@@ -27,63 +26,93 @@ if [ "$XBPS_TARGET_ENDIAN" = "be" ]; then
 	broken="shader compilation fails"
 fi
 
-pre_configure() {
-	CXXFLAGS+=" '-DQT_DECLARATIVE_BIN_PATH=\"${wrksrc}/build/lib/qt6/bin\"'"
-	CXXFLAGS+=" '-DQT_DECLARATIVE_LIBEXEC_PATH=\"${wrksrc}/build/lib/qt6/libexec\"'"
-}
-
-pre_check() {
-	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
-}
-
 do_check() {
 	cd build
+	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
+	export QT_BUILD_BIN_PATH=${wrksrc}/build/lib/qt6/bin
+	export QT_BUILD_LIBEXEC_PATH=${wrksrc}/build/lib/qt6/libexec
 	local broken="tst_qqmllocale|text|tst_qquickwidget"
 	# requires qt6-declarative installed
 	broken+="|module_includes|cmake_tooling_imports|empty_qmldir"
 	broken+="|qtquickcompiler|qmlquery"
-	# Could work if Qt6Quick.so.6 could be found by qml
-	broken+="|tst_qqmldebugjs|tst_qqmlinspector"
-	broken+="|tst_qqmlprofilerservice|tst_qqmljsscope"
-	broken+="|tst_qqmlpreview|tst_qmllint|tst_qmlformat"
+	# Need to investigate
+	broken+="|tst_qqmldebugjs|tst_qqmljsscope"
+	broken+="|tst_qqmlpreview|tst_qmllint"
 	# can't find the source
 	broken+="|tst_qmltc_qprocess"
 	broken+="|tst_qquickfiledialogimpl"
 	broken+="|tst_qquickfolderdialogimpl"
 	broken+="|tst_qmlimportscanner|tst_qqmlextensionplugin"
+	# unknown
+	broken+="|tst_qmldomitem|tst_dom_all"
 	ctest -E "($broken)"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
+qt6-quick-test_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - test"
+	pkg_install() {
+		vmove "usr/lib/libQt6QuickTest.so.*"
+		vmove usr/lib/qt6/qml/QtTest
+		vmove usr/lib/qt6/qml/Qt/test
+		vmove usr/lib/qt6/bin/qmltestrunner
+	}
+}
+
+qt6-declarative-host-tools_package() {
+	depends="qt6-quick-test>=${version}_${revision}
+	 qt6-declarative-tools>=${version}_${revision}"
+	short_desc+=" - host tools"
+	pkg_install() {
+		if [ ! "$CROSS_BUILD" ]; then
+			vmove usr/lib/qt6/bin/testapp
+		fi
+		# The CMake requires all binaries to be available
+		vmove "usr/lib/cmake/*Tools"
+	}
+}
+
 qt6-declarative-tools_package() {
 	depends="${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - tools"
 	pkg_install() {
 		vmove usr/lib/qt6/plugins/qmltooling
+		vmove usr/lib/qt6/plugins/qmllint
 		for bin in qmlcachegen qmlimportscanner qmltyperegistrar; do
 			vmove usr/lib/qt6/libexec/$bin
 		done
 		for bin in qmlformat qmllint qmlpreview qmlprofiler; do
 			vmove usr/lib/qt6/bin/$bin
 		done
+		if [ ! "$CROSS_BUILD" ]; then
+			vmove "usr/lib/qt6/bin/qqmldebug*"
+		fi
 	}
 }
 
 qt6-declarative-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1
-	 qt6-declarative-tools>=${version}_${revision}"
+	 qt6-declarative-host-tools>=${version}_${revision}"
 	short_desc+=" - development files"
 	replaces="qt6-quickcontrols2-devel>=0"
 	pkg_install() {
 		vmove usr/include
-		vmove usr/lib/cmake
 		vmove usr/lib/metatypes
 		vmove usr/lib/pkgconfig
 		vmove usr/lib/qt6/mkspecs
-		vmove "usr/lib/libQt6QuickTest.so.*"
-		vmove usr/lib/qt6/qml/QtTest
-		vmove usr/lib/qt6/bin/qmltestrunner
 		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
 		vmove "usr/lib/*.prl"
 		vmove usr/share/qt6/modules
+		for _f in ${DESTDIR}/usr/lib/cmake/*; do
+			case "$_f" in
+			*Tools) ;;
+			*)	vmove "usr/lib/cmake/${_f##*/}" ;;
+			esac
+		done
 	}
 }
diff --git a/srcpkgs/qt6-quick-test b/srcpkgs/qt6-quick-test
new file mode 120000
index 000000000000..fd03a4809f3e
--- /dev/null
+++ b/srcpkgs/qt6-quick-test
@@ -0,0 +1 @@
+qt6-declarative
\ No newline at end of file

From 1bec194acd767efcbfd1dbd4b8b545ee51192eb5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 17 Feb 2023 22:46:48 +0700
Subject: [PATCH 03/25] qt6-location: update to 6.4.2.

---
 srcpkgs/qt6-location/patches/no-cmake-test.patch | 10 ++++++++++
 srcpkgs/qt6-location/template                    | 10 +++++++---
 2 files changed, 17 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/qt6-location/patches/no-cmake-test.patch

diff --git a/srcpkgs/qt6-location/patches/no-cmake-test.patch b/srcpkgs/qt6-location/patches/no-cmake-test.patch
new file mode 100644
index 000000000000..85d519cef88c
--- /dev/null
+++ b/srcpkgs/qt6-location/patches/no-cmake-test.patch
@@ -0,0 +1,10 @@
+--- qt6-location-6.4.2.orig/tests/auto/CMakeLists.txt
++++ qt6-location-6.4.2/tests/auto/CMakeLists.txt
+@@ -14,7 +14,6 @@ add_subdirectory(qgeopositioninfo)
+ add_subdirectory(qgeosatelliteinfo)
+ add_subdirectory(qgeosatelliteinfosource)
+ add_subdirectory(qnmeasatelliteinfosource)
+-add_subdirectory(cmake)
+ if (QT6_IS_SHARED_LIBS_BUILD)
+     add_subdirectory(positionplugin)
+     add_subdirectory(positionplugintest)
diff --git a/srcpkgs/qt6-location/template b/srcpkgs/qt6-location/template
index 2cdeec383846..429e9e02db12 100644
--- a/srcpkgs/qt6-location/template
+++ b/srcpkgs/qt6-location/template
@@ -1,21 +1,25 @@
 # Template file for 'qt6-location'
 pkgname=qt6-location
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel qt6-declarative-devel"
+hostmakedepends="perl qt6-base qt6-declarative-host-tools"
 makedepends="qt6-serialport-devel qt6-declarative-devel GConf-devel"
 short_desc="Cross-platform application and UI framework - location"
 maintainer="John <me@johnnynator.dev>"
 license="(LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only) AND GPL-3.0-only with Qt-GPL-exception-1.0"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtpositioning-everywhere-src-${version}.tar.xz"
-checksum=2d1b5c5f6dab0108396fea37ca28ebfad21a48fa11d8c5d17622d6f6e5fba834
+checksum=7f01baf5ba877af5b211c9d32e6075019f00d9d7a2ba81bb0f10ca759e9aef82
 
 pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-location-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"
 	short_desc+=" - development files"

From 1cfa3cd16447e67cd2b9ca4c05ab21faadea8274 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 17 Feb 2023 22:46:56 +0700
Subject: [PATCH 04/25] qt6-multimedia: update to 6.4.2.

---
 srcpkgs/qt6-multimedia/template | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/qt6-multimedia/template b/srcpkgs/qt6-multimedia/template
index f6d37be9ca5f..05b77b87c2b5 100644
--- a/srcpkgs/qt6-multimedia/template
+++ b/srcpkgs/qt6-multimedia/template
@@ -1,19 +1,18 @@
 # Template file for 'qt6-multimedia'
 pkgname=qt6-multimedia
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
 configure_args="-DQT_FEATURE_gstreamer=ON"
-hostmakedepends="perl qt6-declarative-devel pkg-config
- qt6-shadertools-devel"
-makedepends="qt6-declarative-devel
+hostmakedepends="perl qt6-declarative-host-tools pkg-config qt6-shadertools"
+makedepends="qt6-declarative-devel pulseaudio-devel ffmpeg-devel libva-devel
  qt6-shadertools-devel libglib-devel gst-plugins-base1-devel"
 short_desc="Cross-platform application and UI framework - multimedia"
 maintainer="John <me@johnnynator.dev>"
 license="(LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only) AND GPL-3.0-only with Qt-GPL-exception-1.0"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtmultimedia-everywhere-src-${version}.tar.xz"
-checksum=e82e8e847cae2a951a11db05b6d10a22b21e3a1d72e06a7781cce4bd197e796f
+checksum=7f2b70deeada911c8e660e2801286657f297a5d1d543d1f6bfa856f28972c776
 
 if [ "$XBPS_MACHINE" = "i686" ]; then
 	CXXFLAGS="-DPFFFT_SIMD_DISABLE=1"
@@ -30,6 +29,10 @@ do_check() {
 	ctest -E "($broken)"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-multimedia-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"
 	short_desc+=" - development files"
@@ -42,6 +45,7 @@ qt6-multimedia-devel_package() {
 		vmove usr/lib/qt6/qml/QtMultimedia/plugins.qmltypes
 		vmove usr/lib/qt6/qml/QtMultimedia/qmldir
 		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
 		vmove "usr/lib/*.prl"
 	}
 }

From 5169c3e258e66d9b98e2b8f4fd1b1c90f343c18d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 17 Feb 2023 22:47:07 +0700
Subject: [PATCH 05/25] qt6-lottie: update to 6.4.2.

---
 srcpkgs/qt6-lottie/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-lottie/template b/srcpkgs/qt6-lottie/template
index a5056833afe9..0e246987d078 100644
--- a/srcpkgs/qt6-lottie/template
+++ b/srcpkgs/qt6-lottie/template
@@ -1,16 +1,16 @@
 # Template file for 'qt6-lottie'
 pkgname=qt6-lottie
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel"
+hostmakedepends="perl qt6-base qt6-declarative-host-tools"
 makedepends="qt6-declarative-devel"
 short_desc="Cross-platform application and UI framework - lottie"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtlottie-everywhere-src-${version}.tar.xz"
-checksum=1cfcbfca9e5c68e1317edf20caa0ead4e9c8f1f4f1de19a95a8c235f4576c6b4
+checksum=accc8869c72095ce5b373a30c362d21235145a79f9e270480712f861d1de1c56
 
 if [ "$XBPS_CHECK_PKGS" ]; then
 	configure_args="-DQT_BUILD_TESTS=ON"
@@ -20,6 +20,10 @@ pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-lottie-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"

From f6b999be7c7505fce44c8f4d497d9d8fe85aa706 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 17 Feb 2023 22:58:57 +0700
Subject: [PATCH 06/25] qt6-qt5compat: update to 6.4.2.

---
 srcpkgs/qt6-qt5compat/template | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-qt5compat/template b/srcpkgs/qt6-qt5compat/template
index 82c735a9893e..7dfee2a8748d 100644
--- a/srcpkgs/qt6-qt5compat/template
+++ b/srcpkgs/qt6-qt5compat/template
@@ -1,21 +1,27 @@
 # Template file for 'qt6-qt5compat'
 pkgname=qt6-qt5compat
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="qt6-base-devel qt6-declarative-devel perl pkg-config"
+configure_args="-DQT_FEATURE_textcodec=ON -DQT_FEATURE_codecs=ON
+ -DQT_FEATURE_iconv=ON -DQT_FEATURE_big_codecs=ON"
+hostmakedepends="qt6-base qt6-declarative-host-tools perl pkg-config"
 makedepends="qt6-base-devel qt6-declarative-devel qt6-shadertools-devel"
 short_desc="Cross-platform application and UI framework - Qt5 Compatibilty Component"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only with Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qt5compat-everywhere-src-${version}.tar.xz"
-checksum=73475d0837f78246d509199f211a35c71fc36cccf64b3de258ebc6387194a4c0
+checksum=f51f505c8e985b51b7d733e27d782c6fce181beef53364acb0368cc892c4b792
 
 if [ "$XBPS_CHECK_PKGS" ]; then
 	configure_args="-DQT_BUILD_TESTS=ON"
 fi
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-qt5compat-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel"
 	short_desc+=" - development files"

From 4709141d99eee85184d652fa17ab0125d339549c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 00:00:20 +0700
Subject: [PATCH 07/25] qt6-tools: update to 6.4.2.

---
 common/shlibs                                 |  8 ++--
 srcpkgs/qt6-designer                          |  1 +
 srcpkgs/qt6-help                              |  1 +
 .../qt6-tools/patches/no-litehtml-test.patch  | 11 +++++
 srcpkgs/qt6-tools/patches/qdoc-location.patch | 14 ++++++
 srcpkgs/qt6-tools/template                    | 46 +++++++++++++++----
 srcpkgs/qt6-ui-tools                          |  1 +
 7 files changed, 70 insertions(+), 12 deletions(-)
 create mode 120000 srcpkgs/qt6-designer
 create mode 120000 srcpkgs/qt6-help
 create mode 100644 srcpkgs/qt6-tools/patches/no-litehtml-test.patch
 create mode 100644 srcpkgs/qt6-tools/patches/qdoc-location.patch
 create mode 120000 srcpkgs/qt6-ui-tools

diff --git a/common/shlibs b/common/shlibs
index af78faa086a2..10a1233b9c6a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2075,10 +2075,10 @@ libQt63DQuickExtras.so.6 qt6-3d-6.1.0rc2_1
 libQt63DInput.so.6 qt6-3d-6.1.0rc2_1
 libQt63DQuick.so.6 qt6-3d-6.1.0rc2_1
 libQt6Charts.so.6 qt6-charts-6.1.0rc2_1
-libQt6Designer.so.6 qt6-tools-6.1.0_1
-libQt6DesignerComponents.so.6 qt6-tools-6.1.0_1
-libQt6Help.so.6 qt6-tools-6.1.0_1
-libQt6UiTools.so.6 qt6-tools-6.1.0_1
+libQt6Designer.so.6 qt6-designer-6.4.2_1
+libQt6DesignerComponents.so.6 qt6-designer-6.4.2_1
+libQt6Help.so.6 qt6-help-6.4.2_1
+libQt6UiTools.so.6 qt6-ui-tools-6.4.2_1
 libQt6Nfc.so.6 qt6-connectivity-6.3.1_1
 libQt6Bluetooth.so.6 qt6-connectivity-6.3.1_1
 libQt6RemoteObjects.so.6 qt6-remoteobjects-6.3.1_1
diff --git a/srcpkgs/qt6-designer b/srcpkgs/qt6-designer
new file mode 120000
index 000000000000..d2de59aba453
--- /dev/null
+++ b/srcpkgs/qt6-designer
@@ -0,0 +1 @@
+qt6-tools
\ No newline at end of file
diff --git a/srcpkgs/qt6-help b/srcpkgs/qt6-help
new file mode 120000
index 000000000000..d2de59aba453
--- /dev/null
+++ b/srcpkgs/qt6-help
@@ -0,0 +1 @@
+qt6-tools
\ No newline at end of file
diff --git a/srcpkgs/qt6-tools/patches/no-litehtml-test.patch b/srcpkgs/qt6-tools/patches/no-litehtml-test.patch
new file mode 100644
index 000000000000..2cbfac5de82d
--- /dev/null
+++ b/srcpkgs/qt6-tools/patches/no-litehtml-test.patch
@@ -0,0 +1,11 @@
+--- qt6-tools-6.4.2.orig/src/assistant/qlitehtml/src/3rdparty/litehtml/CMakeLists.txt
++++ qt6-tools-6.4.2/src/assistant/qlitehtml/src/3rdparty/litehtml/CMakeLists.txt
+@@ -191,7 +191,7 @@ set_source_files_properties(${CMAKE_CURR
+ 
+ # Tests
+ 
+-if (BUILD_TESTING)
++if (FALSE)
+     include(FetchContent)
+     FetchContent_Declare(
+       googletest
diff --git a/srcpkgs/qt6-tools/patches/qdoc-location.patch b/srcpkgs/qt6-tools/patches/qdoc-location.patch
new file mode 100644
index 000000000000..6d7c0ea34537
--- /dev/null
+++ b/srcpkgs/qt6-tools/patches/qdoc-location.patch
@@ -0,0 +1,14 @@
+--- qt6-tools-6.4.2.orig/tests/auto/qdoc/generatedoutput/tst_generatedoutput.cpp
++++ qt6-tools-6.4.2/tests/auto/qdoc/generatedoutput/tst_generatedoutput.cpp
+@@ -74,7 +74,10 @@ private:
+ void tst_generatedOutput::initTestCase()
+ {
+     // Build the path to the QDoc binary the same way moc tests do for moc.
+-    const auto binpath = QLibraryInfo::path(QLibraryInfo::BinariesPath);
++    auto binpath = QLibraryInfo::path(QLibraryInfo::BinariesPath);
++    char *build_binpath = getenv("QT_BUILD_BIN_PATH");
++    if (build_binpath && *build_binpath)
++    	    binpath = build_binpath;
+     const auto extension = QSysInfo::productType() == "windows" ? ".exe" : "";
+     m_qdoc = binpath + QLatin1String("/qdoc") + extension;
+     m_expectedDir.setPath(QFINDTESTDATA("expected_output"));
diff --git a/srcpkgs/qt6-tools/template b/srcpkgs/qt6-tools/template
index 755d2e96ea64..42a1a6c3b7b9 100644
--- a/srcpkgs/qt6-tools/template
+++ b/srcpkgs/qt6-tools/template
@@ -1,23 +1,25 @@
 # Template file for 'qt6-tools'
 pkgname=qt6-tools
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
 configure_args="-DEXTERNAL_GUMBO=ON -DLITEHTML_UTF8=ON -DUSE_ICU=ON
- -DQT_BUILD_SHARED_LIBS=ON -DQT_FEATURE_assistant=ON"
-hostmakedepends="qt6-base-devel perl qt6-plugin-sqlite"
-makedepends="qt6-base-devel libatomic-devel qt6-plugin-sqlite
- gumbo-parser-devel icu-devel"
+ -DQT_BUILD_SHARED_LIBS=ON -DQT_FEATURE_assistant=ON
+ -DQT_FEATURE_pixeltool=ON
+ -DQT_FEATURE_distancefieldgenerator=ON"
+hostmakedepends="qt6-base perl qt6-plugin-sqlite clang llvm clang-tools-extra"
+makedepends="qt6-base-devel libatomic-devel qt6-plugin-sqlite qt6-declarative-devel
+ gumbo-parser-devel icu-devel llvm clang-tools-extra"
 short_desc="Cross-platform application and UI framework (QT6) - qt6-tools component"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only with Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qttools-everywhere-src-${version}.tar.xz"
-checksum=97f3d5f88c458be7a8f7b7b08efc06c4ebad39ca51669476b18bf9e4c11afba2
+checksum=a31387916184e4a5ef522d3ea841e8e931cc0f88be0824a7a354a572d5826c68
 
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" -DQT_FORCE_BUILD_TOOLS=TRUE"
-	hostmakedepends+=" qt6-tools-devel"
+	hostmakedepends+=" qt6-tools"
 fi
 
 
@@ -31,22 +33,50 @@ post_build() {
 
 do_check() {
 	cd build
+	export QT_BUILD_BIN_PATH=$wrksrc/build/lib/qt6/bin
 	# Some of these tests expect that qt6-tools is already
 	# installed in /usr/lib/qt6
 	ctest -E 'tst_(lrelease|lconvert|lupdate|qtattributionsscanner|qhelpcontentmodel|qhelpenginecore|qhelpgenerator|qhelpindexmode)'
 }
 
+qt6-help_package() {
+	short_desc+=" - Help libraries"
+	pkg_install() {
+		vmove "usr/lib/libQt6Help.so.*"
+	}
+}
+
+qt6-designer_package() {
+	short_desc+=" - Designer libraries"
+	pkg_install() {
+		vmove "usr/lib/libQt6Designer*.so.*"
+	}
+}
+
+qt6-ui-tools_package() {
+	short_desc+=" - UI Tools libraries"
+	pkg_install() {
+		vmove "usr/lib/libQt6UiTools.so.*"
+	}
+}
+
 qt6-tools-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"
 	short_desc+=" - development files"
 	pkg_install() {
+		local _f
 		vmove usr/include
-		vmove usr/lib/cmake
 		vmove usr/lib/metatypes
 		vmove usr/lib/pkgconfig
 		vmove usr/lib/qt6/mkspecs
 		vmove "usr/lib/*.so"
 		vmove "usr/lib/*.prl"
 		vmove usr/share/qt6/modules
+		for _f in ${DESTDIR}/usr/lib/cmake/*; do
+			case "$_f" in
+			*ToolsTools) ;;
+			*)	vmove "usr/lib/cmake/${_f##*/}" ;;
+			esac
+		done
 	}
 }
diff --git a/srcpkgs/qt6-ui-tools b/srcpkgs/qt6-ui-tools
new file mode 120000
index 000000000000..d2de59aba453
--- /dev/null
+++ b/srcpkgs/qt6-ui-tools
@@ -0,0 +1 @@
+qt6-tools
\ No newline at end of file

From 16f4e4e949748e0723f17e7e72d4d90d0fa30345 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:37:59 +0700
Subject: [PATCH 08/25] qt6-3d: update to 6.4.2.

---
 srcpkgs/qt6-3d/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-3d/template b/srcpkgs/qt6-3d/template
index fe6c6216f40e..95519668d1cc 100644
--- a/srcpkgs/qt6-3d/template
+++ b/srcpkgs/qt6-3d/template
@@ -1,9 +1,9 @@
 # Template file for 'qt6-3d'
 pkgname=qt6-3d
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-declarative-devel"
+hostmakedepends="perl qt6-declarative-host-tools"
 makedepends="qt6-declarative-devel qt6-shadertools-devel libassimp-devel
  libatomic-devel"
 short_desc="Cross-platform application and UI framework - 3d"
@@ -11,7 +11,7 @@ maintainer="John <me@johnnynator.dev>"
 license="(LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only) AND GPL-3.0-only with Qt-GPL-exception-1.0"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qt3d-everywhere-src-${version}.tar.xz"
-checksum=6abdb5b421f4c90fec7492e51572caab6b497233608a7ee438c547f58ceabdeb
+checksum=456c24c3d3840273e720b79fe8fed452fa889b54cbae6b45db1d1ded4da37341
 
 qt6-3d-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision}"

From 3f086ef31df42382088cce592fed42135e2fafab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:38:17 +0700
Subject: [PATCH 09/25] qt6-webchannel: update to 6.4.2.

---
 srcpkgs/qt6-webchannel/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-webchannel/template b/srcpkgs/qt6-webchannel/template
index add93ba4826c..8f4b58cab240 100644
--- a/srcpkgs/qt6-webchannel/template
+++ b/srcpkgs/qt6-webchannel/template
@@ -1,21 +1,25 @@
 # Template file for 'qt6-webchannel'
 pkgname=qt6-webchannel
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel qt6-declarative-devel"
+hostmakedepends="perl qt6-base qt6-declarative-host-tools"
 makedepends="qt6-base-devel qt6-declarative-devel qt6-websockets-devel"
 short_desc="Cross-platform application and UI framework - webchannel"
 maintainer="John <me@johnnynator.dev>"
 license="(LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only) AND GPL-3.0-only with Qt-GPL-exception-1.0"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtwebchannel-everywhere-src-${version}.tar.xz"
-checksum=528f6d837cc58854deaddafbb76eb237f4dbd688a4407b438ab9c0db1613695a
+checksum=06657b2b2509f26c733b7c40da0dbb8571a215b97f99685a6fc3bc51dcbebd87
 
 pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-webchannel-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1
 	 qt6-websockets-devel>=${version}_1"

From 1447f176e0f48514d81f46a0b92d8f433e610c41 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:38:22 +0700
Subject: [PATCH 10/25] qt6-websockets: update to 6.4.2.

---
 srcpkgs/qt6-websockets/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-websockets/template b/srcpkgs/qt6-websockets/template
index f350b39d14b1..467083fcd44c 100644
--- a/srcpkgs/qt6-websockets/template
+++ b/srcpkgs/qt6-websockets/template
@@ -1,9 +1,9 @@
 # Template file for 'qt6-websockets'
 pkgname=qt6-websockets
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel qt6-declarative-devel"
+hostmakedepends="perl qt6-base qt6-declarative-host-tools"
 makedepends="qt6-base-devel qt6-declarative-devel"
 depends="qt6-plugin-tls-openssl"
 checkdepends="$depends"
@@ -12,12 +12,16 @@ maintainer="John <me@johnnynator.dev>"
 license="(LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only) AND GPL-3.0-only with Qt-GPL-exception-1.0"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtwebsockets-everywhere-src-${version}.tar.xz"
-checksum=ff3c6629cd6537266123c441709acdd67f231ff2a07216fc848448255bec9bca
+checksum=71cf857582db20c20103a56f67d51c33c4ab0b72448209c963d3b449a527c626
 
 pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-websockets-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"
 	short_desc+=" - development files"

From f7d37ac915cf05e9ea5557005b8767508ac2bf69 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:38:31 +0700
Subject: [PATCH 11/25] qt6-networkauth: update to 6.4.2.

---
 srcpkgs/qt6-networkauth/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-networkauth/template b/srcpkgs/qt6-networkauth/template
index 52cdbff96cee..35d7161a3288 100644
--- a/srcpkgs/qt6-networkauth/template
+++ b/srcpkgs/qt6-networkauth/template
@@ -1,16 +1,16 @@
 # Template file for 'qt6-networkauth'
 pkgname=qt6-networkauth
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel"
+hostmakedepends="perl qt6-base"
 makedepends="qt6-base-devel qt6-plugin-networkinformation"
 short_desc="Cross-platform application and UI framework - networkauth"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtnetworkauth-everywhere-src-${version}.tar.xz"
-checksum=609b77f8fd77f1cc1f0fafa7acdb0ca6bb8a8aea6fef42cbb76f8636ce0f17b3
+checksum=deab17bd957d0a493bd7757bc71270918147596fb9661a886b3f1d305047c2ee
 
 if [ "$XBPS_CHECK_PKGS" ]; then
 	configure_args="-DQT_BUILD_TESTS=ON"

From 9cbe5a12741e8f8db203403e55e8ba44fb10a95a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:38:43 +0700
Subject: [PATCH 12/25] qt6-svg: update to 6.4.2.

---
 srcpkgs/qt6-svg/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-svg/template b/srcpkgs/qt6-svg/template
index 1e81a5f20948..06c1fcc306c9 100644
--- a/srcpkgs/qt6-svg/template
+++ b/srcpkgs/qt6-svg/template
@@ -1,16 +1,16 @@
 # Template file for 'qt6-svg'
 pkgname=qt6-svg
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="qt6-base-devel perl"
+hostmakedepends="qt6-base perl"
 makedepends="qt6-base-devel"
 short_desc="Cross-platform application and UI framework (QT6) - qt6-svg component"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only with Qt-GPL-exception-1.0, GPL-2.0-or-later, LGPL-3.0-only"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtsvg-everywhere-src-${version}.tar.xz"
-checksum=03fdae9437d074dcfa387dc1f2c6e7e14fea0f989bf7e1aa265fd35ffc2c5b25
+checksum=b746af3cb1793621d8ed7eae38d9ad5a15541dc2742031069f2ae3fe87590314
 
 if [ "$XBPS_CHECK_PKGS" ]; then
 	configure_args="-DQT_BUILD_TESTS=ON"
@@ -21,6 +21,10 @@ do_check() {
 	ctest -E 'tst_qicon_svg'
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-svg-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel"
 	short_desc+=" - development files"

From d3c3ef212e26187ee599656bbfba8aa29ba887ba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:38:48 +0700
Subject: [PATCH 13/25] qt6-wayland: update to 6.4.2.

---
 srcpkgs/qt6-wayland-tools    |  1 +
 srcpkgs/qt6-wayland/template | 22 ++++++++++++++++------
 2 files changed, 17 insertions(+), 6 deletions(-)
 create mode 120000 srcpkgs/qt6-wayland-tools

diff --git a/srcpkgs/qt6-wayland-tools b/srcpkgs/qt6-wayland-tools
new file mode 120000
index 000000000000..c4dec18ea9a0
--- /dev/null
+++ b/srcpkgs/qt6-wayland-tools
@@ -0,0 +1 @@
+qt6-wayland
\ No newline at end of file
diff --git a/srcpkgs/qt6-wayland/template b/srcpkgs/qt6-wayland/template
index 5c0449472484..3b45f98bc7ce 100644
--- a/srcpkgs/qt6-wayland/template
+++ b/srcpkgs/qt6-wayland/template
@@ -1,10 +1,9 @@
 # Template file for 'qt6-wayland'
 pkgname=qt6-wayland
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="qt6-base-devel perl pkg-config wayland-devel
- qt6-declarative-devel"
+hostmakedepends="qt6-base perl pkg-config wayland-devel qt6-declarative-host-tools"
 # XXX: Qml as optional dep
 makedepends="qt6-base-devel wayland-devel libxkbcommon-devel
  qt6-declarative-devel
@@ -15,11 +14,13 @@ maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only with Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
 homepage="https://www.qt.io"
 distfiles="https://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtwayland-everywhere-src-${version}.tar.xz"
-checksum=f08ba8e14fbec34d57332ad897c5a9150453ed07a611abb18c89c6cc5e5b62fc
+checksum=24cf1a0af751ab1637b4815d5c5f3704483d5fa7bedbd3519e6fc020d8be135f
+
+subpackages="qt6-wayland-tools qt6-wayland-devel"
 
 if [ "$CROSS_BUILD" ]; then
 	configure_args="-DQT_FORCE_BUILD_TOOLS=true"
-	hostmakedepends+=" qt6-wayland-devel"
+	hostmakedepends+=" qt6-wayland-tools"
 fi
 
 do_check() {
@@ -27,8 +28,17 @@ do_check() {
 	dbus-run-session ctest -E 'tst_seatv4'
 }
 
+qt6-wayland-tools_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - Tools"
+	pkg_install() {
+		vmove usr/lib/qt6/libexec
+		vmove "usr/lib/cmake/*Tools"
+	}
+}
+
 qt6-wayland-devel_package() {
-	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"
+	depends="qt6-wayland-tools>=${version}_${revision} qt6-base-devel>=${version}_1"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include

From 530f6d05d1818951aa95b70b7dda3427995f6de5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:38:56 +0700
Subject: [PATCH 14/25] qt6-virtualkeyboard: update to 6.4.2.

---
 srcpkgs/qt6-virtualkeyboard/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-virtualkeyboard/template b/srcpkgs/qt6-virtualkeyboard/template
index 695b96a14c1d..3de6238c411f 100644
--- a/srcpkgs/qt6-virtualkeyboard/template
+++ b/srcpkgs/qt6-virtualkeyboard/template
@@ -1,16 +1,16 @@
 # Template file for 'qt6-virtualkeyboard'
 pkgname=qt6-virtualkeyboard
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl pkg-config qt6-declarative-devel"
+hostmakedepends="perl pkg-config qt6-declarative-host-tools"
 makedepends="qt6-declarative-devel qt6-svg-devel hunspell-devel"
 short_desc="Cross-platform application and UI framework - virtualkeyboard"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtvirtualkeyboard-everywhere-src-${version}.tar.xz"
-checksum=25ab09aba2afb001cbedd7ff16f874d0ef8c3e031d0b620baa754d490fa3fd20
+checksum=9c3c830f6e17896efaca5fdc7c191088eedd70b07490b38835856579346a4f28
 
 if [ "$XBPS_CHECK_PKGS" ]; then
 	configure_args="-DQT_BUILD_TESTS=ON"
@@ -24,6 +24,10 @@ do_check() {
 	# inputpanel hangs
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-virtualkeyboard-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} $makedepends"
 	short_desc+=" - development files"

From 66f1dd3863c70cec5e3ec9add92e0449510ba739 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:39:12 +0700
Subject: [PATCH 15/25] qt6-connectivity: update to 6.4.2.

---
 srcpkgs/qt6-connectivity/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-connectivity/template b/srcpkgs/qt6-connectivity/template
index de851f3d77bc..66fce5c0397b 100644
--- a/srcpkgs/qt6-connectivity/template
+++ b/srcpkgs/qt6-connectivity/template
@@ -1,16 +1,16 @@
 # Template file for 'qt6-connectivity'
 pkgname=qt6-connectivity
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-declarative-devel"
+hostmakedepends="perl qt6-declarative-host-tools"
 makedepends="qt6-declarative-devel"
 short_desc="Cross-platform application and UI framework - Connectivity"
 maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-3.0-only"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtconnectivity-everywhere-src-${version}.tar.xz"
-checksum=5adc177db5ea634cc7076afd82a63bc5d12ed3b55f9a1e0400eadcb56217c54e
+checksum=8c9b44b239e42b4c4d6fca5f427904e688890b2a1bfb6bcbe5e6e2afcdc5d7af
 
 qt6-connectivity-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision}

From 38464501be7a6e5f9c11dcebc51a74eb655ba1a8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:39:28 +0700
Subject: [PATCH 16/25] qt6-shadertools: update to 6.4.2.

---
 common/shlibs                    |  2 +-
 srcpkgs/libqt6shadertools        |  1 +
 srcpkgs/qt6-shadertools/template | 23 ++++++++++++++++++-----
 3 files changed, 20 insertions(+), 6 deletions(-)
 create mode 120000 srcpkgs/libqt6shadertools

diff --git a/common/shlibs b/common/shlibs
index 10a1233b9c6a..282f0583d2b1 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2043,7 +2043,7 @@ libQt6QmlModels.so.6 qt6-declarative-6.0.0_1
 libQt6QuickLayouts.so.6 qt6-declarative-6.1.0_1
 libQt6QuickParticles.so.6 qt6-declarative-6.0.0_1
 libQt6QmlCompiler.so.6 qt6-declarative-6.4.0_1
-libQt6ShaderTools.so.6 qt6-shadertools-6.0.0_1
+libQt6ShaderTools.so.6 libqt6shadertools-6.4.2_1
 libQt6Quick3D.so.6 qt6-quick3d-6.0.0_1
 libQt6Quick3DRuntimeRender.so.6 qt6-quick3d-6.0.0_1
 libQt6Quick3DUtils.so.6 qt6-quick3d-6.0.0_1
diff --git a/srcpkgs/libqt6shadertools b/srcpkgs/libqt6shadertools
new file mode 120000
index 000000000000..f1424d216cb3
--- /dev/null
+++ b/srcpkgs/libqt6shadertools
@@ -0,0 +1 @@
+qt6-shadertools
\ No newline at end of file
diff --git a/srcpkgs/qt6-shadertools/template b/srcpkgs/qt6-shadertools/template
index f27848f6de2b..fbb2fba7181f 100644
--- a/srcpkgs/qt6-shadertools/template
+++ b/srcpkgs/qt6-shadertools/template
@@ -1,34 +1,47 @@
 # Template file for 'qt6-shadertools'
 pkgname=qt6-shadertools
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel"
+hostmakedepends="perl qt6-base"
 makedepends="qt6-base-devel"
+depends="libqt6shadertools>=${version}_${revision}"
 short_desc="Cross-platform application and UI framework - shadertools"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-or-later"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtshadertools-everywhere-src-${version}.tar.xz"
-checksum=dbd6a5f00e8178cd2fea7e84c4eef3818de5287d34e20a68383929c754ae3b90
+checksum=fa65bff84d4e9c2cb4cbf6fb098207e0e23d863dbe675eb277034a29c226a217
 
 if [ "$CROSS_BUILD" ]; then
 	configure_args="-DQT_FORCE_BUILD_TOOLS=true"
-	hostmakedepends+=" qt6-shadertools-devel"
+	hostmakedepends+=" qt6-shadertools"
 fi
 
+libqt6shadertools_package() {
+	short_desc+=" - libraries"
+	pkg_install() {
+		vmove "usr/lib/libQt6ShaderTools.so.*"
+	}
+}
 
 qt6-shadertools-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"
 	short_desc+=" - development files"
 	pkg_install() {
+		local _f
 		vmove usr/include
-		vmove usr/lib/cmake
 		vmove usr/lib/metatypes
 		vmove usr/lib/pkgconfig
 		vmove usr/lib/qt6/mkspecs
 		vmove "usr/lib/*.so"
 		vmove "usr/lib/*.prl"
 		vmove usr/share/qt6/modules
+		for _f in ${DESTDIR}/usr/lib/cmake/*; do
+			case "$_f" in
+			*ToolsTools) ;;
+			*)	vmove "usr/lib/cmake/${_f##*/}" ;;
+			esac
+		done
 	}
 }

From d8c13c5d6acbe9f04eb670d48b6989873c328efe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:39:32 +0700
Subject: [PATCH 17/25] qt6-serialport: update to 6.4.2.

---
 srcpkgs/qt6-serialport/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-serialport/template b/srcpkgs/qt6-serialport/template
index c3ee41ad3b0b..c100f9686fcf 100644
--- a/srcpkgs/qt6-serialport/template
+++ b/srcpkgs/qt6-serialport/template
@@ -1,16 +1,16 @@
 # Template file for 'qt6-serialport'
 pkgname=qt6-serialport
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel pkg-config"
+hostmakedepends="perl qt6-base pkg-config"
 makedepends="qt6-base-devel"
 short_desc="Cross-platform application and UI framework - serialport"
 maintainer="John <me@johnnynator.dev>"
 license="(LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only) AND GPL-3.0-only with Qt-GPL-exception-1.0"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtserialport-everywhere-src-${version}.tar.xz"
-checksum=f148cc9e87ce2228e82bff7a64d9521339ece66c4c66aa43b91bac614f4a4483
+checksum=336d95919037800184b3c3de8ccb6f62954b20f3756c05adce8d5010504340fa
 
 qt6-serialport-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"

From 2b0c4f47c767139416866d799b3356f3ea4fa76e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:39:44 +0700
Subject: [PATCH 18/25] qt6-imageformats: update to 6.4.2.

---
 srcpkgs/qt6-imageformats/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-imageformats/template b/srcpkgs/qt6-imageformats/template
index d101faacfc4f..6715dd6f0a7c 100644
--- a/srcpkgs/qt6-imageformats/template
+++ b/srcpkgs/qt6-imageformats/template
@@ -1,13 +1,13 @@
 # Template file for 'qt6-imageformats'
 pkgname=qt6-imageformats
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel"
+hostmakedepends="perl qt6-base"
 makedepends="qt6-base-devel"
 short_desc="Cross-platform application and UI framework - imageformats"
 maintainer="John <me@johnnynator.dev>"
 license="LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtimageformats-everywhere-src-${version}.tar.xz"
-checksum=1419a7b75d03c1f098a85ff772a6baad38d36be1fd75633905f043af6e945f3c
+checksum=fc5f999ae0779a67d5507956d4dd315386eb81cf6ccba632de039bb9eee11707

From 609352fee037a5f8845c6be06ddad0975a2aa576 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:39:56 +0700
Subject: [PATCH 19/25] qt6-translations: update to 6.4.2.

---
 srcpkgs/qt6-translations/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-translations/template b/srcpkgs/qt6-translations/template
index ca8488702858..5669ab56dc20 100644
--- a/srcpkgs/qt6-translations/template
+++ b/srcpkgs/qt6-translations/template
@@ -1,13 +1,13 @@
 # Template file for 'qt6-translations'
 pkgname=qt6-translations
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="qt6-base-devel qt6-tools-devel perl"
+hostmakedepends="qt6-base qt6-tools perl"
 makedepends="qt6-base-devel qt6-tools-devel"
 short_desc="Cross-platform application and UI framework - translations"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only with Qt-GPL-exception-1.0"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qttranslations-everywhere-src-${version}.tar.xz"
-checksum=7ab93a930b693eeb53ab97b038b4e6e057d06374e6f49a3814d99145a276925f
+checksum=bbe0291502c2604b72fef730e1935bd22f8b921d8c473250f298a723b2a9c496

From d5cc34ad9da9c4d0e1e503aeac95ea61d4865fa9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:40:06 +0700
Subject: [PATCH 20/25] qt6-quick3d: update to 6.4.2.

---
 srcpkgs/qt6-quick3d-tools    |  1 +
 srcpkgs/qt6-quick3d/template | 32 ++++++++++++++++++++++++++------
 2 files changed, 27 insertions(+), 6 deletions(-)
 create mode 120000 srcpkgs/qt6-quick3d-tools

diff --git a/srcpkgs/qt6-quick3d-tools b/srcpkgs/qt6-quick3d-tools
new file mode 120000
index 000000000000..91ff6f03e479
--- /dev/null
+++ b/srcpkgs/qt6-quick3d-tools
@@ -0,0 +1 @@
+qt6-quick3d
\ No newline at end of file
diff --git a/srcpkgs/qt6-quick3d/template b/srcpkgs/qt6-quick3d/template
index 608fabb75569..e24f4238f943 100644
--- a/srcpkgs/qt6-quick3d/template
+++ b/srcpkgs/qt6-quick3d/template
@@ -1,9 +1,9 @@
 # Template file for 'qt6-quick3d'
 pkgname=qt6-quick3d
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel qt6-declarative-devel qt6-shadertools-devel"
+hostmakedepends="perl qt6-base qt6-declarative qt6-shadertools"
 makedepends="qt6-base-devel qt6-declarative-devel qt6-shadertools-devel
  qt6-quicktimeline libassimp-devel"
 short_desc="Cross-platform application and UI framework - Quick3d"
@@ -11,10 +11,11 @@ maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-or-later"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtquick3d-everywhere-src-${version}.tar.xz"
-checksum=f10a1660d4d4103f0749f258eddce4d4878fa7bbbc5e610a900bef28adf017ec
+checksum=953d3b6ca6dc00563ceea33d51f25e22b1788ab5aa861941100f6a1b652926a7
 
+subpackages="qt6-quick3d-tools qt6-quick3d-devel"
 if [ "$CROSS_BUILD" ]; then
-	hostmakedepends+=" qt6-quick3d-devel"
+	hostmakedepends+=" qt6-quick3d-tools"
 	configure_args="-DQT_FORCE_BUILD_TOOLS=true"
 fi
 
@@ -23,15 +24,34 @@ if [ "$XBPS_TARGET_ENDIAN" = "be" ]; then
 	broken="Shader baking failed: Cannot resolve expression type."
 fi
 
+do_check() {
+	cd build
+	ctest -E tst_qquick3drotationdata
+}
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+	# Maybe new package for embree?
+	rm -rf ${DESTDIR}/usr/lib/libQt6BundledEmbree.a
+}
+
+qt6-quick3d-tools_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - Tools"
+	pkg_install() {
+		vmove usr/lib/qt6/bin
+		vmove "usr/lib/cmake/*Tools"
+	}
+}
+
 qt6-quick3d-devel_package() {
-	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel"
+	depends="qt6-quick3d-tools>=${version}_${revision} qt6-base-devel"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/cmake
 		vmove usr/lib/metatypes
 		vmove usr/lib/pkgconfig
-		vmove usr/lib/qt6/bin
 		vmove usr/lib/qt6/mkspecs
 		vmove "usr/lib/*.so"
 		vmove "usr/lib/*.prl"

From fcd3ec4981d51b40f75cd93ffc5b39794e69aaca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:40:10 +0700
Subject: [PATCH 21/25] qt6-quicktimeline: update to 6.4.2.

---
 srcpkgs/qt6-quicktimeline/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-quicktimeline/template b/srcpkgs/qt6-quicktimeline/template
index 5d796c01bd5f..f2c8e16e621e 100644
--- a/srcpkgs/qt6-quicktimeline/template
+++ b/srcpkgs/qt6-quicktimeline/template
@@ -1,16 +1,16 @@
 # Template file for 'qt6-quicktimeline'
 pkgname=qt6-quicktimeline
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-base-devel qt6-declarative-devel"
+hostmakedepends="perl qt6-base qt6-declarative-host-tools"
 makedepends="qt6-base-devel qt6-declarative-devel"
 short_desc="Cross-platform application and UI framework - quicktimeline"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-or-later"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version/rc/-rc}/submodules/qtquicktimeline-everywhere-src-${version/rc/-rc}.tar.xz"
-checksum=70e8a28b5310c42a8d50d949b55c1d7238cf52ea778f9bb2e254835a0e054f57
+checksum=3088abb7f478362a354ea1509d1c3c3403e3f5adfb84f3e5cf30a1f2eff09a5e
 
 if [ "$XBPS_CHECK_PKGS" ]; then
 	configure_args="-DQT_BUILD_TESTS=ON"
@@ -20,6 +20,10 @@ pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 do_check() {
 	: # ignores QML2_IMPORT_PATH somewhere, misses test data in cwd
 }

From 39808b9a63441456b4d5697b82d8ee5599bda458 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:40:14 +0700
Subject: [PATCH 22/25] qt6-remoteobjects: update to 6.4.2.

---
 srcpkgs/qt6-remoteobjects/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-remoteobjects/template b/srcpkgs/qt6-remoteobjects/template
index 8afad8982005..9d74823d2625 100644
--- a/srcpkgs/qt6-remoteobjects/template
+++ b/srcpkgs/qt6-remoteobjects/template
@@ -1,9 +1,9 @@
 # Template file for 'qt6-remoteobjects'
 pkgname=qt6-remoteobjects
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-declarative-devel pkg-config"
+hostmakedepends="perl qt6-declarative pkg-config"
 makedepends="qt6-declarative-devel"
 # Not a strict dependency, but it's 2022, everyone should use TLS
 depends="qt6-plugin-tls-openssl"
@@ -13,7 +13,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="(LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only) AND GPL-3.0-only with Qt-GPL-exception-1.0"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtremoteobjects-everywhere-src-${version}.tar.xz"
-checksum=f51a7debee6fef86fbc444dece08e064f925f4d976947fc66f4100188956e1ce
+checksum=583c53640020d5d068eef7ae180d750120bb49e30249c2febdd173c5a7428812
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" qt6-remoteobjects"
@@ -24,6 +24,10 @@ pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-remoteobjects-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision}
 	 qt6-declarative-devel>=${version}_1"

From f18032f79cdc67d62ef9c7a4d94a52a491b628ed Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:40:18 +0700
Subject: [PATCH 23/25] qt6-scxml: update to 6.4.2.

---
 srcpkgs/qt6-scxml-tools    |  1 +
 srcpkgs/qt6-scxml/template | 24 +++++++++++++++++++-----
 2 files changed, 20 insertions(+), 5 deletions(-)
 create mode 120000 srcpkgs/qt6-scxml-tools

diff --git a/srcpkgs/qt6-scxml-tools b/srcpkgs/qt6-scxml-tools
new file mode 120000
index 000000000000..cd3032d5ed07
--- /dev/null
+++ b/srcpkgs/qt6-scxml-tools
@@ -0,0 +1 @@
+qt6-scxml
\ No newline at end of file
diff --git a/srcpkgs/qt6-scxml/template b/srcpkgs/qt6-scxml/template
index 89eee1b06d0c..0e53ba7cf506 100644
--- a/srcpkgs/qt6-scxml/template
+++ b/srcpkgs/qt6-scxml/template
@@ -1,28 +1,42 @@
 # Template file for 'qt6-scxml'
 pkgname=qt6-scxml
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-declarative-devel"
+hostmakedepends="perl qt6-declarative-host-tools"
 makedepends="qt6-declarative-devel"
 short_desc="Cross-platform application and UI framework - scxml"
 maintainer="John <me@johnnynator.dev>"
 license="LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtscxml-everywhere-src-${version}.tar.xz"
-checksum=d40773a5e6594829aca99ccc73aba3559f93301ea081ffb78668a9b616d97664
+checksum=13b0d43459394bed2481967a1feff02b63228a82c1136a62941c0eb83ef54e7f
 
+subpackages="qt6-scxml-tools qt6-scxml-devel"
 if [ "$CROSS_BUILD" ]; then
 	configure_args="-DQT_FORCE_BUILD_TOOLS=true"
-	hostmakedepends+=" qt6-scxml-devel"
+	hostmakedepends+=" qt6-scxml-tools"
 fi
 
 pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
-qt6-scxml-devel_package() {
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
+qt6-scxml-tools_package() {
 	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - Tools"
+	pkg_install() {
+		vmove usr/lib/qt6/libexec
+		vmove "usr/lib/cmake/*Tools"
+	}
+}
+
+qt6-scxml-devel_package() {
+	depends="qt6-scxml-tools>=${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include

From aea8eec773c8d1790676adaec0892cfc373def68 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:40:22 +0700
Subject: [PATCH 24/25] qt6-sensors: update to 6.4.2.

---
 srcpkgs/qt6-sensors/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-sensors/template b/srcpkgs/qt6-sensors/template
index 6b0befd4b36c..1dd0d0f3df13 100644
--- a/srcpkgs/qt6-sensors/template
+++ b/srcpkgs/qt6-sensors/template
@@ -1,16 +1,20 @@
 # Template file for 'qt6-sensors'
 pkgname=qt6-sensors
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-declarative-devel qt6-svg-devel pkg-config"
+hostmakedepends="perl qt6-declarative-host-tools pkg-config"
 makedepends="qt6-declarative-devel qt6-svg-devel"
 short_desc="Cross-platform application and UI framework - Sensors"
 maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="(LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only) AND GPL-3.0-only with Qt-GPL-exception-1.0"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtsensors-everywhere-src-${version}.tar.xz"
-checksum=f38c072f5b9f62631985f385de70cdc54c13f0b888d9496943342e3be1ca50da
+checksum=455619ff28a39f4caba49c9e1952fbcfafc8ffc893b437d653d5465a077ee656
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
 
 qt6-sensors-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision}

From b0cdd1f57c377f92134cc0f75fe07eb4df3b9345 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 18 Feb 2023 09:40:51 +0700
Subject: [PATCH 25/25] qt6-charts: update to 6.4.2.

---
 srcpkgs/qt6-charts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-charts/template b/srcpkgs/qt6-charts/template
index e60068039c61..57ce88143367 100644
--- a/srcpkgs/qt6-charts/template
+++ b/srcpkgs/qt6-charts/template
@@ -1,21 +1,25 @@
 # Template file for 'qt6-charts'
 pkgname=qt6-charts
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
-hostmakedepends="perl qt6-declarative-devel"
+hostmakedepends="perl qt6-declarative-host-tools"
 makedepends="qt6-declarative-devel"
 short_desc="Cross-platform application and UI framework - charts"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-only"
 homepage="https://qt.io/"
 distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtcharts-everywhere-src-${version}.tar.xz"
-checksum=28c3cace24515bdafe762174272281aebc97c136cb722eded964cd0ddb3940d3
+checksum=a1a7c0e08c8870cf97d1c3a2eb3f37681aaed00a63b5b2f70bdf2da878d0a9aa
 
 pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-charts-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"

  parent reply	other threads:[~2023-02-21 16:16 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-19  2:04 [PR PATCH] " sgn
2023-02-21  0:59 ` [PR PATCH] [Updated] " sgn
2023-02-21 16:16 ` sgn [this message]
2023-02-21 16:31 ` sgn
2023-02-22 13:50 ` [PR PATCH] [Updated] " sgn
2023-02-22 15:06 ` sgn
2023-02-22 16:52 ` sgn
2023-02-22 16:58 ` sgn
2023-02-23  0:27 ` sgn
2023-02-23  0:28 ` [PR PATCH] [Merged]: " sgn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230221161605.99GQAHVe3glM5MJlu84URxjOIe7FuTPnXdEHOaQEcZc@z \
    --to=sgn@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).