Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] Qt6 6.4.2
@ 2023-02-19  2:04 sgn
  2023-02-21  0:59 ` [PR PATCH] [Updated] " sgn
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: sgn @ 2023-02-19  2:04 UTC (permalink / raw)
  To: ml

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

There is a new 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: 69137 bytes --]

From 9de37c3e16faf89659e5fd1aab8f19353413413f 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-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                     | 41 ++++++++-----------
 9 files changed, 45 insertions(+), 69 deletions(-)
 delete mode 100644 srcpkgs/qt6-base/patches/complex-text.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-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..4e9f2310d58f 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
@@ -30,7 +30,7 @@ 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
@@ -47,47 +47,42 @@ 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"
+	# failing_tests+=" tst_qvectornd"
 	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
+	rm -rf ${DESTDIR}/usr/lib/*.a
 }
 
 qt6-gui_package() {

From 335c6f92b55e32ea93feea671891f76137c8084e 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.

---
 .../patches/bin-qml-location.patch            | 205 ++++++++++--------
 .../patches/qml-broken-test.patch             |   6 +-
 srcpkgs/qt6-declarative/template              |  34 +--
 3 files changed, 131 insertions(+), 114 deletions(-)

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..3e9c19ce8c9e 100644
--- a/srcpkgs/qt6-declarative/template
+++ b/srcpkgs/qt6-declarative/template
@@ -1,6 +1,6 @@
 # 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
@@ -11,7 +11,7 @@ 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
@@ -27,44 +27,46 @@ 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
+	rm -rf ${DESTDIR}/usr/lib/*.a
+}
+
 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
+		vmove "usr/lib/qt6/bin/qqmldebug*"
 	}
 }
 
@@ -81,7 +83,9 @@ qt6-declarative-devel_package() {
 		vmove usr/lib/qt6/mkspecs
 		vmove "usr/lib/libQt6QuickTest.so.*"
 		vmove usr/lib/qt6/qml/QtTest
+		vmove usr/lib/qt6/qml/Qt/test
 		vmove usr/lib/qt6/bin/qmltestrunner
+		vmove usr/lib/qt6/bin/testapp
 		vmove "usr/lib/*.so"
 		vmove "usr/lib/*.prl"
 		vmove usr/share/qt6/modules

From c39367702b5c49c595e9c9bc6a1c73e9af405ada 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                    |  8 ++++++--
 2 files changed, 16 insertions(+), 2 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..1dd429b22c45 100644
--- a/srcpkgs/qt6-location/template
+++ b/srcpkgs/qt6-location/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,12 +10,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/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 cb74033707a1a27c72bb62b71b0f346222671898 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 | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-multimedia/template b/srcpkgs/qt6-multimedia/template
index f6d37be9ca5f..c251fd134561 100644
--- a/srcpkgs/qt6-multimedia/template
+++ b/srcpkgs/qt6-multimedia/template
@@ -1,19 +1,19 @@
 # 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
+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 +30,11 @@ do_check() {
 	ctest -E "($broken)"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+	rm -rf ${DESTDIR}/usr/lib/*.a
+}
+
 qt6-multimedia-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"
 	short_desc+=" - development files"
@@ -42,6 +47,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 37cfd001ca47627b84e7af1a2878d5c27cb56092 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-lottie/template b/srcpkgs/qt6-lottie/template
index a5056833afe9..e3b33ac8d8ab 100644
--- a/srcpkgs/qt6-lottie/template
+++ b/srcpkgs/qt6-lottie/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 943151c1a2c16073a836d75f529fb0635f57fb54 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 | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-qt5compat/template b/srcpkgs/qt6-qt5compat/template
index 82c735a9893e..cc0241fc565f 100644
--- a/srcpkgs/qt6-qt5compat/template
+++ b/srcpkgs/qt6-qt5compat/template
@@ -1,8 +1,10 @@
 # Template file for 'qt6-qt5compat'
 pkgname=qt6-qt5compat
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
+configure_args="-DQT_FEATURE_textcodec=ON -DQT_FEATURE_codecs=ON
+ -DQT_FEATURE_iconv=ON -DQT_FEATURE_big_codecs=ON"
 hostmakedepends="qt6-base-devel qt6-declarative-devel perl pkg-config"
 makedepends="qt6-base-devel qt6-declarative-devel qt6-shadertools-devel"
 short_desc="Cross-platform application and UI framework - Qt5 Compatibilty Component"
@@ -10,12 +12,16 @@ 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 0202be9c8b2fdcd83f87a6fe5af56262e9965062 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.

---
 srcpkgs/qt6-tools/patches/no-litehtml-test.patch | 11 +++++++++++
 srcpkgs/qt6-tools/patches/qdoc-location.patch    | 14 ++++++++++++++
 srcpkgs/qt6-tools/template                       |  9 +++++----
 3 files changed, 30 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/qt6-tools/patches/no-litehtml-test.patch
 create mode 100644 srcpkgs/qt6-tools/patches/qdoc-location.patch

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..ae7ff7b3b6c6 100644
--- a/srcpkgs/qt6-tools/template
+++ b/srcpkgs/qt6-tools/template
@@ -1,19 +1,19 @@
 # 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"
+hostmakedepends="qt6-base-devel perl qt6-plugin-sqlite clang llvm clang-tools-extra"
 makedepends="qt6-base-devel libatomic-devel qt6-plugin-sqlite
- gumbo-parser-devel icu-devel"
+ gumbo-parser-devel icu-devel clang llvm"
 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"
@@ -31,6 +31,7 @@ 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)'

From f74ad0fa042bdeca46ada1e4e2de00be3e5820b7 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-3d/template b/srcpkgs/qt6-3d/template
index fe6c6216f40e..ab98967b7ed5 100644
--- a/srcpkgs/qt6-3d/template
+++ b/srcpkgs/qt6-3d/template
@@ -1,6 +1,6 @@
 # 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"
@@ -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 8906f020b19af58a620b302afa445a24477b14a5 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-webchannel/template b/srcpkgs/qt6-webchannel/template
index add93ba4826c..774a96a05cd7 100644
--- a/srcpkgs/qt6-webchannel/template
+++ b/srcpkgs/qt6-webchannel/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,12 +10,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/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 245f872a03340ed7a5165bbedc886667d534c51d 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-websockets/template b/srcpkgs/qt6-websockets/template
index f350b39d14b1..1b00ed4b0aa9 100644
--- a/srcpkgs/qt6-websockets/template
+++ b/srcpkgs/qt6-websockets/template
@@ -1,6 +1,6 @@
 # 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"
@@ -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 81ae8a6a60026033e0b846c7944c1120fc0908b4 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-networkauth/template b/srcpkgs/qt6-networkauth/template
index 52cdbff96cee..ecd8e891b747 100644
--- a/srcpkgs/qt6-networkauth/template
+++ b/srcpkgs/qt6-networkauth/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 6bf1a99becbb14dd86dc2fc50ad49ba0a2ba135d 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-svg/template b/srcpkgs/qt6-svg/template
index 1e81a5f20948..898917a9742e 100644
--- a/srcpkgs/qt6-svg/template
+++ b/srcpkgs/qt6-svg/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 d109a672d34be31eef5aac489c970799b140c730 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/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-wayland/template b/srcpkgs/qt6-wayland/template
index 5c0449472484..d8980d208a0f 100644
--- a/srcpkgs/qt6-wayland/template
+++ b/srcpkgs/qt6-wayland/template
@@ -1,6 +1,6 @@
 # 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
@@ -15,7 +15,7 @@ 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
 
 if [ "$CROSS_BUILD" ]; then
 	configure_args="-DQT_FORCE_BUILD_TOOLS=true"

From 43ccbf7cd5e5b6d229002e8502506571addff488 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-virtualkeyboard/template b/srcpkgs/qt6-virtualkeyboard/template
index 695b96a14c1d..b2c27914ec29 100644
--- a/srcpkgs/qt6-virtualkeyboard/template
+++ b/srcpkgs/qt6-virtualkeyboard/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 dcff965bfc5937cbcf311b5146d54374600fc682 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-connectivity/template b/srcpkgs/qt6-connectivity/template
index de851f3d77bc..7da19f426612 100644
--- a/srcpkgs/qt6-connectivity/template
+++ b/srcpkgs/qt6-connectivity/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 5e000d4af8f10a6b6362318de5774ec128b7a8ba 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.

---
 srcpkgs/qt6-shadertools/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-shadertools/template b/srcpkgs/qt6-shadertools/template
index f27848f6de2b..78544b97a1fd 100644
--- a/srcpkgs/qt6-shadertools/template
+++ b/srcpkgs/qt6-shadertools/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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"

From 573d98366e6f4cb7e6ac4b5d84c296c84d0b7cd9 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-serialport/template b/srcpkgs/qt6-serialport/template
index c3ee41ad3b0b..dc942bf29b84 100644
--- a/srcpkgs/qt6-serialport/template
+++ b/srcpkgs/qt6-serialport/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,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/qtserialport-everywhere-src-${version}.tar.xz"
-checksum=f148cc9e87ce2228e82bff7a64d9521339ece66c4c66aa43b91bac614f4a4483
+checksum=336d95919037800184b3c3de8ccb6f62954b20f3756c05adce8d5010504340fa
 
 qt6-serialport-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"

From ea26c795149f8c6f3aee8026c970b6b1d4a3f1ee 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-imageformats/template b/srcpkgs/qt6-imageformats/template
index d101faacfc4f..22f4d4e84fe9 100644
--- a/srcpkgs/qt6-imageformats/template
+++ b/srcpkgs/qt6-imageformats/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,4 +10,4 @@ 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 b9a0e763505731f7fa411e1e1751a9436ae7bfb7 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-translations/template b/srcpkgs/qt6-translations/template
index ca8488702858..f92c27bc2cfb 100644
--- a/srcpkgs/qt6-translations/template
+++ b/srcpkgs/qt6-translations/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,4 +10,4 @@ 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 dc3b11605cf5f0c91f28d215b7fb857444446579 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/template | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-quick3d/template b/srcpkgs/qt6-quick3d/template
index 608fabb75569..86b84bcd80b4 100644
--- a/srcpkgs/qt6-quick3d/template
+++ b/srcpkgs/qt6-quick3d/template
@@ -1,6 +1,6 @@
 # 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"
@@ -11,7 +11,7 @@ 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
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" qt6-quick3d-devel"
@@ -23,6 +23,11 @@ if [ "$XBPS_TARGET_ENDIAN" = "be" ]; then
 	broken="Shader baking failed: Cannot resolve expression type."
 fi
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+	rm -fr ${DESTDIR}/usr/lib/*.a
+}
+
 qt6-quick3d-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel"
 	short_desc+=" - development files"

From 75bf38da0c0c5d91a5365e6aac25a504fc999378 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-quicktimeline/template b/srcpkgs/qt6-quicktimeline/template
index 5d796c01bd5f..de267f4e37c3 100644
--- a/srcpkgs/qt6-quicktimeline/template
+++ b/srcpkgs/qt6-quicktimeline/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 e0dae3d63db09dc3f8c0abad49667ec152947042 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-remoteobjects/template b/srcpkgs/qt6-remoteobjects/template
index 8afad8982005..c6add33cec9e 100644
--- a/srcpkgs/qt6-remoteobjects/template
+++ b/srcpkgs/qt6-remoteobjects/template
@@ -1,6 +1,6 @@
 # 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"
@@ -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 801510899f69ed5019bd1be4001d1aa15dc93d9f 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/template | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-scxml/template b/srcpkgs/qt6-scxml/template
index 89eee1b06d0c..8991e5be19bf 100644
--- a/srcpkgs/qt6-scxml/template
+++ b/srcpkgs/qt6-scxml/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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
 
 if [ "$CROSS_BUILD" ]; then
 	configure_args="-DQT_FORCE_BUILD_TOOLS=true"
@@ -21,6 +21,10 @@ pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-scxml-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"

From 926957ec0aa5e84b1d69ba88f6af758fdab5be69 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-sensors/template b/srcpkgs/qt6-sensors/template
index 6b0befd4b36c..d7d4a2937e9c 100644
--- a/srcpkgs/qt6-sensors/template
+++ b/srcpkgs/qt6-sensors/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,11 @@ 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 ba5298066735808222cce93997f2c86190afec91 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-charts/template b/srcpkgs/qt6-charts/template
index e60068039c61..cb36f3fcdcc7 100644
--- a/srcpkgs/qt6-charts/template
+++ b/srcpkgs/qt6-charts/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,12 +10,16 @@ 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"

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PR PATCH] [Updated] Qt6 6.4.2
  2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
@ 2023-02-21  0:59 ` sgn
  2023-02-21 16:16 ` sgn
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: sgn @ 2023-02-21  0:59 UTC (permalink / raw)
  To: ml

[-- 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: 70777 bytes --]

From c2245fa3e5ec2d86a3b901a9b5c0d3f432feb753 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                     | 48 +++++++++----------
 10 files changed, 70 insertions(+), 70 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..09e844acdc2c 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
@@ -30,7 +30,7 @@ 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
@@ -47,47 +47,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() {

From 371b430f696c5aab97d580ac03e1c493e4381a3e 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.

---
 .../patches/bin-qml-location.patch            | 205 ++++++++++--------
 .../patches/qml-broken-test.patch             |   6 +-
 srcpkgs/qt6-declarative/template              |  38 ++--
 3 files changed, 135 insertions(+), 114 deletions(-)

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..c08c32f01963 100644
--- a/srcpkgs/qt6-declarative/template
+++ b/srcpkgs/qt6-declarative/template
@@ -1,6 +1,6 @@
 # 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
@@ -11,7 +11,7 @@ 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
@@ -27,44 +27,47 @@ 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-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
 	}
 }
 
@@ -81,9 +84,14 @@ qt6-declarative-devel_package() {
 		vmove usr/lib/qt6/mkspecs
 		vmove "usr/lib/libQt6QuickTest.so.*"
 		vmove usr/lib/qt6/qml/QtTest
+		vmove usr/lib/qt6/qml/Qt/test
 		vmove usr/lib/qt6/bin/qmltestrunner
 		vmove "usr/lib/*.so"
+		vmove "usr/lib/*.a"
 		vmove "usr/lib/*.prl"
 		vmove usr/share/qt6/modules
+		if [ ! "$CROSS_BUILD" ]; then
+			vmove usr/lib/qt6/bin/testapp
+		fi
 	}
 }

From 24258e7b91b7a2092072cea31643448a683d7686 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                    |  8 ++++++--
 2 files changed, 16 insertions(+), 2 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..1dd429b22c45 100644
--- a/srcpkgs/qt6-location/template
+++ b/srcpkgs/qt6-location/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,12 +10,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/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 d61cdcd860680a8244e7a633ad2ce4d99869d7b7 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 | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/qt6-multimedia/template b/srcpkgs/qt6-multimedia/template
index f6d37be9ca5f..8b5fb9a398d0 100644
--- a/srcpkgs/qt6-multimedia/template
+++ b/srcpkgs/qt6-multimedia/template
@@ -1,19 +1,19 @@
 # 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
+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 +30,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 +46,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 94159cfbfef10bf1c8da80122ed491d0c3cbc80d 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-lottie/template b/srcpkgs/qt6-lottie/template
index a5056833afe9..e3b33ac8d8ab 100644
--- a/srcpkgs/qt6-lottie/template
+++ b/srcpkgs/qt6-lottie/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 fa23824d01f3bca3860972c755eb52bc1561cbfb 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 | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-qt5compat/template b/srcpkgs/qt6-qt5compat/template
index 82c735a9893e..cc0241fc565f 100644
--- a/srcpkgs/qt6-qt5compat/template
+++ b/srcpkgs/qt6-qt5compat/template
@@ -1,8 +1,10 @@
 # Template file for 'qt6-qt5compat'
 pkgname=qt6-qt5compat
-version=6.4.0
+version=6.4.2
 revision=1
 build_style=cmake
+configure_args="-DQT_FEATURE_textcodec=ON -DQT_FEATURE_codecs=ON
+ -DQT_FEATURE_iconv=ON -DQT_FEATURE_big_codecs=ON"
 hostmakedepends="qt6-base-devel qt6-declarative-devel perl pkg-config"
 makedepends="qt6-base-devel qt6-declarative-devel qt6-shadertools-devel"
 short_desc="Cross-platform application and UI framework - Qt5 Compatibilty Component"
@@ -10,12 +12,16 @@ 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 93c2cfab0e2524bf0f2c1470f8bc7149eeee1d15 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.

---
 srcpkgs/qt6-tools/patches/no-litehtml-test.patch | 11 +++++++++++
 srcpkgs/qt6-tools/patches/qdoc-location.patch    | 14 ++++++++++++++
 srcpkgs/qt6-tools/template                       | 15 +++++++++------
 3 files changed, 34 insertions(+), 6 deletions(-)
 create mode 100644 srcpkgs/qt6-tools/patches/no-litehtml-test.patch
 create mode 100644 srcpkgs/qt6-tools/patches/qdoc-location.patch

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..304799250c3c 100644
--- a/srcpkgs/qt6-tools/template
+++ b/srcpkgs/qt6-tools/template
@@ -1,19 +1,21 @@
 # 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-devel 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"
@@ -31,6 +33,7 @@ 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)'

From 19cad1b53335c4dd3f210530bf0ab4eff489957e 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-3d/template b/srcpkgs/qt6-3d/template
index fe6c6216f40e..ab98967b7ed5 100644
--- a/srcpkgs/qt6-3d/template
+++ b/srcpkgs/qt6-3d/template
@@ -1,6 +1,6 @@
 # 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"
@@ -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 0bb98412b2bcbca76c24a9b0ab64600e71a924d7 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-webchannel/template b/srcpkgs/qt6-webchannel/template
index add93ba4826c..774a96a05cd7 100644
--- a/srcpkgs/qt6-webchannel/template
+++ b/srcpkgs/qt6-webchannel/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,12 +10,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/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 d72513585a4936e78826e07e4fd013d12e03f8d4 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-websockets/template b/srcpkgs/qt6-websockets/template
index f350b39d14b1..1b00ed4b0aa9 100644
--- a/srcpkgs/qt6-websockets/template
+++ b/srcpkgs/qt6-websockets/template
@@ -1,6 +1,6 @@
 # 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"
@@ -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 1554aa299e7d0b4cd04548c737893fa4482d1753 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-networkauth/template b/srcpkgs/qt6-networkauth/template
index 52cdbff96cee..ecd8e891b747 100644
--- a/srcpkgs/qt6-networkauth/template
+++ b/srcpkgs/qt6-networkauth/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 00468267fca0c1400e20d75facd9f5f8c1d3746b 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-svg/template b/srcpkgs/qt6-svg/template
index 1e81a5f20948..898917a9742e 100644
--- a/srcpkgs/qt6-svg/template
+++ b/srcpkgs/qt6-svg/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 da31e7acd1ff141109f25f6c835233e676f479cd 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/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-wayland/template b/srcpkgs/qt6-wayland/template
index 5c0449472484..d8980d208a0f 100644
--- a/srcpkgs/qt6-wayland/template
+++ b/srcpkgs/qt6-wayland/template
@@ -1,6 +1,6 @@
 # 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
@@ -15,7 +15,7 @@ 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
 
 if [ "$CROSS_BUILD" ]; then
 	configure_args="-DQT_FORCE_BUILD_TOOLS=true"

From 76b74190d7117027321ada0d707eacad897dae0a 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-virtualkeyboard/template b/srcpkgs/qt6-virtualkeyboard/template
index 695b96a14c1d..b2c27914ec29 100644
--- a/srcpkgs/qt6-virtualkeyboard/template
+++ b/srcpkgs/qt6-virtualkeyboard/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 ae7288cacbbf090aeea90958a6995cc829b820fd 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-connectivity/template b/srcpkgs/qt6-connectivity/template
index de851f3d77bc..7da19f426612 100644
--- a/srcpkgs/qt6-connectivity/template
+++ b/srcpkgs/qt6-connectivity/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 73fa186b81f9f86bdcce94abfd45742dbefe3f26 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.

---
 srcpkgs/qt6-shadertools/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-shadertools/template b/srcpkgs/qt6-shadertools/template
index f27848f6de2b..78544b97a1fd 100644
--- a/srcpkgs/qt6-shadertools/template
+++ b/srcpkgs/qt6-shadertools/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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"

From a2ac3e22691fe04132e996d2f8e70d7bdd7ab5e7 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-serialport/template b/srcpkgs/qt6-serialport/template
index c3ee41ad3b0b..dc942bf29b84 100644
--- a/srcpkgs/qt6-serialport/template
+++ b/srcpkgs/qt6-serialport/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,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/qtserialport-everywhere-src-${version}.tar.xz"
-checksum=f148cc9e87ce2228e82bff7a64d9521339ece66c4c66aa43b91bac614f4a4483
+checksum=336d95919037800184b3c3de8ccb6f62954b20f3756c05adce8d5010504340fa
 
 qt6-serialport-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel>=${version}_1"

From a6e5f964c58353f02382018211514a3e31cec765 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-imageformats/template b/srcpkgs/qt6-imageformats/template
index d101faacfc4f..22f4d4e84fe9 100644
--- a/srcpkgs/qt6-imageformats/template
+++ b/srcpkgs/qt6-imageformats/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,4 +10,4 @@ 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 f2600aab9b4374605b99cffe51c0104304c294a9 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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-translations/template b/srcpkgs/qt6-translations/template
index ca8488702858..f92c27bc2cfb 100644
--- a/srcpkgs/qt6-translations/template
+++ b/srcpkgs/qt6-translations/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,4 +10,4 @@ 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 0c3c7afb199b9e2d3435dee66d0fc6afecb19c60 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/template | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-quick3d/template b/srcpkgs/qt6-quick3d/template
index 608fabb75569..8bc3b0d2bfc3 100644
--- a/srcpkgs/qt6-quick3d/template
+++ b/srcpkgs/qt6-quick3d/template
@@ -1,6 +1,6 @@
 # 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"
@@ -11,7 +11,7 @@ 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
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" qt6-quick3d-devel"
@@ -23,6 +23,17 @@ 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-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} qt6-base-devel"
 	short_desc+=" - development files"

From 76f1a3098f0180d3aac0dc552f058ed1ecbde9ec 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-quicktimeline/template b/srcpkgs/qt6-quicktimeline/template
index 5d796c01bd5f..de267f4e37c3 100644
--- a/srcpkgs/qt6-quicktimeline/template
+++ b/srcpkgs/qt6-quicktimeline/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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 30e5d7743cb6db1f2a165dcb5d220b2bebfbfd92 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-remoteobjects/template b/srcpkgs/qt6-remoteobjects/template
index 8afad8982005..c6add33cec9e 100644
--- a/srcpkgs/qt6-remoteobjects/template
+++ b/srcpkgs/qt6-remoteobjects/template
@@ -1,6 +1,6 @@
 # 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"
@@ -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 7aabff6c7be8ab7e040f7b2cf0dd438c2aeb3654 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/template | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-scxml/template b/srcpkgs/qt6-scxml/template
index 89eee1b06d0c..8991e5be19bf 100644
--- a/srcpkgs/qt6-scxml/template
+++ b/srcpkgs/qt6-scxml/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,7 @@ 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
 
 if [ "$CROSS_BUILD" ]; then
 	configure_args="-DQT_FORCE_BUILD_TOOLS=true"
@@ -21,6 +21,10 @@ pre_check() {
 	export QML2_IMPORT_PATH="$wrksrc/build/lib/qt6/qml"
 }
 
+post_install() {
+	rm -rf ${DESTDIR}/usr/tests
+}
+
 qt6-scxml-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"

From 140f3b448ccf6d250912f96214441d390949deaf 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-sensors/template b/srcpkgs/qt6-sensors/template
index 6b0befd4b36c..d7d4a2937e9c 100644
--- a/srcpkgs/qt6-sensors/template
+++ b/srcpkgs/qt6-sensors/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,7 +10,11 @@ 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 3fcaade07e849eb720485042df043ab64596b571 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 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/qt6-charts/template b/srcpkgs/qt6-charts/template
index e60068039c61..cb36f3fcdcc7 100644
--- a/srcpkgs/qt6-charts/template
+++ b/srcpkgs/qt6-charts/template
@@ -1,6 +1,6 @@
 # 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"
@@ -10,12 +10,16 @@ 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"

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PR PATCH] [Updated] Qt6 6.4.2
  2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
  2023-02-21  0:59 ` [PR PATCH] [Updated] " sgn
@ 2023-02-21 16:16 ` sgn
  2023-02-21 16:31 ` sgn
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: sgn @ 2023-02-21 16:16 UTC (permalink / raw)
  To: ml

[-- 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"

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt6 6.4.2
  2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
  2023-02-21  0:59 ` [PR PATCH] [Updated] " sgn
  2023-02-21 16:16 ` sgn
@ 2023-02-21 16:31 ` sgn
  2023-02-22 13:50 ` [PR PATCH] [Updated] " sgn
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: sgn @ 2023-02-21 16:31 UTC (permalink / raw)
  To: ml

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

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/42348#issuecomment-1438773823

Comment:
@Johnnynator I've moving some files around (mainly cmake) to reduce `hostmakedepends`, basicly remove `qt6-*-devel` with its binaries and/or libexec.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PR PATCH] [Updated] Qt6 6.4.2
  2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
                   ` (2 preceding siblings ...)
  2023-02-21 16:31 ` sgn
@ 2023-02-22 13:50 ` sgn
  2023-02-22 15:06 ` sgn
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: sgn @ 2023-02-22 13:50 UTC (permalink / raw)
  To: ml

[-- 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: 85687 bytes --]

From 3cf285ab9514bdf7f8bbd14339fa03015041d52e 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 637a374b249c58089bf3c33cc3d5b9474f338c71 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              |  78 ++++---
 srcpkgs/qt6-quick-test                        |   1 +
 6 files changed, 166 insertions(+), 127 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..a3d921f9ea19 100644
--- a/srcpkgs/qt6-declarative/template
+++ b/srcpkgs/qt6-declarative/template
@@ -1,64 +1,75 @@
 # 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"
+configure_args="-DQT_BUILD_TESTS=ON"
+hostmakedepends="qt6-base perl pkg-config wayland-devel qt6-shadertools python3"
 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"
+	configure_args+=" -DQT_FORCE_BUILD_TOOLS=true"
+	hostmakedepends+=" qt6-declarative-host-tools"
 fi
 
-if [ "$XBPS_CHECK_PKGS" ]; then
-	configure_args+=" -DQT_BUILD_TESTS=ON"
-fi
 
 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
+	# Only build in -DQT_BUILD_TESTS=ON, for self-test
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/testapp
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/qqmldebug*
+}
+
+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-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
@@ -68,22 +79,35 @@ qt6-declarative-tools_package() {
 	}
 }
 
+qt6-declarative-host-tools_package() {
+	# The CMake for Tools requires all binaries to be available
+	depends="qt6-quick-test>=${version}_${revision} qt6-base>=${version}
+	 qt6-declarative-tools>=${version}_${revision}"
+	short_desc+=" - host tools"
+	pkg_install() {
+		vmove "usr/lib/cmake/*Tools"
+	}
+}
+
 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 5e952912a306b8dbe8a1dba4e20526af8ba0c7ba 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 41489489a2d4f4a625f35a13ce6f81aa5c6710a2 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 3c0e40ba466d277bd99a6c1799d03a4e692e3a16 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 371a706e007fec60fa4de38f4d3cee87a0650d0f 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 c35c3e4164dc697f59e0e9accc45b99925b65c44 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                    | 47 +++++++++++++++----
 srcpkgs/qt6-ui-tools                          |  1 +
 7 files changed, 71 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..cdbb96b43514 100644
--- a/srcpkgs/qt6-tools/template
+++ b/srcpkgs/qt6-tools/template
@@ -1,23 +1,26 @@
 # 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
+ qt6-declarative-host-tools"
+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 +34,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|*/Qt6LinguistTools) ;;
+			*)	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 c485f2a453d36e108b258b82970accb709931086 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 1b36f51818116e50a6f1b48125d02f973cc72ac8 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 66b456bd801de4f1d1f65233540836e75d5cd63b 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 439b82c2cc35a0bd0b6a5783c62faa34f6f9be46 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 bb8dbad858c3d3b421f35a991f7171a48ae84156 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 7e5b75ff45adf272a7d2608893b5f375f7ef0261 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 e9924a5a317f70e0ee1e674aa17285335f3ab137 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 ed9769cbbbf20c35623169d1c8f9e7f0645cd012 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 e92fdd056c1b53d0d1b8b9971618e0c8342f6810 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 ab4221464f0ce6a4ca702a628403c347a6929aed 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 e1240c66d38217a757f079757bf54c1d3861a876 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 e31980c9914ecbc78d9d721d57596f4261992d69 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 99611267d72f6cce261a988f22794281684d3d73 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..e5ef91c9053c 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-declarative-host-tools 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 962347ffe8e1a160395c30c57f0f63201c0432ef 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 7a79201134dda9cc0712a729ce6f2b2a3aa5f88d 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..062736349442 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-host-tools 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 17de4b4d26ae8f99ca5e5804089fece5238a6078 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 4a831797b8d9b70a6ecf4a365f1770e889dac061 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 d9db6b755d942e146e9efe4500c299b9eb60d463 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"

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PR PATCH] [Updated] Qt6 6.4.2
  2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
                   ` (3 preceding siblings ...)
  2023-02-22 13:50 ` [PR PATCH] [Updated] " sgn
@ 2023-02-22 15:06 ` sgn
  2023-02-22 16:52 ` sgn
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: sgn @ 2023-02-22 15:06 UTC (permalink / raw)
  To: ml

[-- 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: 85770 bytes --]

From 3cf285ab9514bdf7f8bbd14339fa03015041d52e 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 637a374b249c58089bf3c33cc3d5b9474f338c71 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              |  78 ++++---
 srcpkgs/qt6-quick-test                        |   1 +
 6 files changed, 166 insertions(+), 127 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..a3d921f9ea19 100644
--- a/srcpkgs/qt6-declarative/template
+++ b/srcpkgs/qt6-declarative/template
@@ -1,64 +1,75 @@
 # 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"
+configure_args="-DQT_BUILD_TESTS=ON"
+hostmakedepends="qt6-base perl pkg-config wayland-devel qt6-shadertools python3"
 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"
+	configure_args+=" -DQT_FORCE_BUILD_TOOLS=true"
+	hostmakedepends+=" qt6-declarative-host-tools"
 fi
 
-if [ "$XBPS_CHECK_PKGS" ]; then
-	configure_args+=" -DQT_BUILD_TESTS=ON"
-fi
 
 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
+	# Only build in -DQT_BUILD_TESTS=ON, for self-test
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/testapp
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/qqmldebug*
+}
+
+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-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
@@ -68,22 +79,35 @@ qt6-declarative-tools_package() {
 	}
 }
 
+qt6-declarative-host-tools_package() {
+	# The CMake for Tools requires all binaries to be available
+	depends="qt6-quick-test>=${version}_${revision} qt6-base>=${version}
+	 qt6-declarative-tools>=${version}_${revision}"
+	short_desc+=" - host tools"
+	pkg_install() {
+		vmove "usr/lib/cmake/*Tools"
+	}
+}
+
 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 5e952912a306b8dbe8a1dba4e20526af8ba0c7ba 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 41489489a2d4f4a625f35a13ce6f81aa5c6710a2 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 3c0e40ba466d277bd99a6c1799d03a4e692e3a16 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 371a706e007fec60fa4de38f4d3cee87a0650d0f 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 c35c3e4164dc697f59e0e9accc45b99925b65c44 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                    | 47 +++++++++++++++----
 srcpkgs/qt6-ui-tools                          |  1 +
 7 files changed, 71 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..cdbb96b43514 100644
--- a/srcpkgs/qt6-tools/template
+++ b/srcpkgs/qt6-tools/template
@@ -1,23 +1,26 @@
 # 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
+ qt6-declarative-host-tools"
+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 +34,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|*/Qt6LinguistTools) ;;
+			*)	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 c485f2a453d36e108b258b82970accb709931086 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 1b36f51818116e50a6f1b48125d02f973cc72ac8 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 66b456bd801de4f1d1f65233540836e75d5cd63b 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 439b82c2cc35a0bd0b6a5783c62faa34f6f9be46 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 bb8dbad858c3d3b421f35a991f7171a48ae84156 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 7e5b75ff45adf272a7d2608893b5f375f7ef0261 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 e9924a5a317f70e0ee1e674aa17285335f3ab137 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 ed9769cbbbf20c35623169d1c8f9e7f0645cd012 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 e92fdd056c1b53d0d1b8b9971618e0c8342f6810 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 ab4221464f0ce6a4ca702a628403c347a6929aed 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 f33bd4ec77cb9602ab0fbf262c86661014cc08cb 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 | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/qt6-imageformats/template b/srcpkgs/qt6-imageformats/template
index d101faacfc4f..3ed63f6e98cd 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"
-makedepends="qt6-base-devel"
+hostmakedepends="perl qt6-base"
+makedepends="qt6-base-devel jasper-devel libmng-devel tiff-devel libwebp-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 36f90f9caddd675a65bb5040f67b6b8c0648efc4 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 d03db8db00f740e592a10516cecaddacab5d8233 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..e5ef91c9053c 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-declarative-host-tools 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 bcc02078ec7edc06cb6f388c6515ce5b9301c0d3 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 7d0480117cb4e4a977344df87ba1f822536f1c5e 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..062736349442 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-host-tools 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 2b7961a1f0519e6ca5f7cb3257f2cccbb5d04b28 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 ff5dddefd0c46f48aada76b0875163cc621021a4 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 c67687251fb5e5d8b3ef1a1e2c2abeb43b78add0 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"

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PR PATCH] [Updated] Qt6 6.4.2
  2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
                   ` (4 preceding siblings ...)
  2023-02-22 15:06 ` sgn
@ 2023-02-22 16:52 ` sgn
  2023-02-22 16:58 ` sgn
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: sgn @ 2023-02-22 16:52 UTC (permalink / raw)
  To: ml

[-- 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: 87000 bytes --]

From 0fe658faf9ffa4a630392aa88dfa8a751785b259 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                     | 84 ++++++++++++-------
 10 files changed, 100 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..a0c4ab998db6 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,66 @@ 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
+	cat <<-EOF >${DESTDIR}/usr/lib/qt6/bin/target_qt.conf
+	[Paths]
+	Prefix=../../../
+	HostPrefix=/usr
+	Binaries=lib/qt6/bin
+	HostBinaries=lib/qt6/bin
+	Libraries=lib
+	HostLibraries=lib
+	LibraryExecutables=lib/qt6/libexec
+	HostLibraryExecutables=lib/qt6/libexec
+	ArchData=lib/qt6
+	HostArchData=lib/qt6
+	Data=share/qt6
+	HostData=share/qt6
+	Sysroot=
+	SysrootifyPrefix=false
+	TargetSpec=linux-g++
+	HostSpec=linux-g++
+	EOF
 }
 
 qt6-gui_package() {
@@ -231,11 +251,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 +279,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 +288,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 fecc8909171e170bfd5afd194179008eaa5bda58 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              |  78 ++++---
 srcpkgs/qt6-quick-test                        |   1 +
 6 files changed, 166 insertions(+), 127 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..a3d921f9ea19 100644
--- a/srcpkgs/qt6-declarative/template
+++ b/srcpkgs/qt6-declarative/template
@@ -1,64 +1,75 @@
 # 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"
+configure_args="-DQT_BUILD_TESTS=ON"
+hostmakedepends="qt6-base perl pkg-config wayland-devel qt6-shadertools python3"
 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"
+	configure_args+=" -DQT_FORCE_BUILD_TOOLS=true"
+	hostmakedepends+=" qt6-declarative-host-tools"
 fi
 
-if [ "$XBPS_CHECK_PKGS" ]; then
-	configure_args+=" -DQT_BUILD_TESTS=ON"
-fi
 
 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
+	# Only build in -DQT_BUILD_TESTS=ON, for self-test
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/testapp
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/qqmldebug*
+}
+
+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-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
@@ -68,22 +79,35 @@ qt6-declarative-tools_package() {
 	}
 }
 
+qt6-declarative-host-tools_package() {
+	# The CMake for Tools requires all binaries to be available
+	depends="qt6-quick-test>=${version}_${revision} qt6-base>=${version}
+	 qt6-declarative-tools>=${version}_${revision}"
+	short_desc+=" - host tools"
+	pkg_install() {
+		vmove "usr/lib/cmake/*Tools"
+	}
+}
+
 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 42ccfd4ba20eeb3b92507cce095f95bffcddf626 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 61794961427461374e3f04ab5b3af961b0799d6c 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.

---
 .../qt6-multimedia/patches/musl-timeval.patch    | 10 ++++++++++
 srcpkgs/qt6-multimedia/template                  | 16 ++++++++++------
 2 files changed, 20 insertions(+), 6 deletions(-)
 create mode 100644 srcpkgs/qt6-multimedia/patches/musl-timeval.patch

diff --git a/srcpkgs/qt6-multimedia/patches/musl-timeval.patch b/srcpkgs/qt6-multimedia/patches/musl-timeval.patch
new file mode 100644
index 000000000000..af7b4dd7fb57
--- /dev/null
+++ b/srcpkgs/qt6-multimedia/patches/musl-timeval.patch
@@ -0,0 +1,10 @@
+--- qt6-multimedia-6.4.2.orig/src/plugins/multimedia/ffmpeg/qv4l2camera_p.h
++++ qt6-multimedia-6.4.2/src/plugins/multimedia/ffmpeg/qv4l2camera_p.h
+@@ -22,6 +22,7 @@
+ #include <qfilesystemwatcher.h>
+ #include <qsocketnotifier.h>
+ #include <qmutex.h>
++#include <sys/time.h>
+ 
+ QT_BEGIN_NAMESPACE
+ 
diff --git a/srcpkgs/qt6-multimedia/template b/srcpkgs/qt6-multimedia/template
index f6d37be9ca5f..d89e7d54eb5a 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
- qt6-shadertools-devel libglib-devel gst-plugins-base1-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 qt6-quick3d-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 b094f1fb2f6cbb34b8bcc038277fd27a924c5a42 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 2267527bcf130e21e97c045e01a3308de0933ea2 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 8d4a284f0e898e4ac0d69f056216b662244f513f 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                    | 47 +++++++++++++++----
 srcpkgs/qt6-ui-tools                          |  1 +
 7 files changed, 71 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..cdbb96b43514 100644
--- a/srcpkgs/qt6-tools/template
+++ b/srcpkgs/qt6-tools/template
@@ -1,23 +1,26 @@
 # 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
+ qt6-declarative-host-tools"
+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 +34,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|*/Qt6LinguistTools) ;;
+			*)	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 3de77f3ec7c68e33c88b63e2064cd611cdae0481 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 81473900842879674bb524794e815e2c6f213282 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 992fbdd02fe7374916b294e534a971b92ea83542 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 3a62e9b498554d1c2178adac8a9c0e38dc7cddbc 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 a92feb0ffc3eb2bbab84039333f3fde0c0775cdd 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 b85b8cab68ad9bf350659bb287275b9698213068 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 4be91d7a1b65f724e2be1456213659eb58e0f473 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 fed0867cc401fd5eaf93e61f7ae4d51082cf977c 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 33de14891acaf45815fd45218062c7e82190b1e9 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 bdd725b6ca2ba74ab6e673e83588489be87daa98 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 4dd0468ff3ab22ed0d3587b3c77e91f64832677c 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 | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/qt6-imageformats/template b/srcpkgs/qt6-imageformats/template
index d101faacfc4f..3ed63f6e98cd 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"
-makedepends="qt6-base-devel"
+hostmakedepends="perl qt6-base"
+makedepends="qt6-base-devel jasper-devel libmng-devel tiff-devel libwebp-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 b00aa969e80ea61a3b100c8ff9f5dadb2c0829a3 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 8ed15b52643b8ea3cc08026f02d5bf3ab18fd355 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..e5ef91c9053c 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-declarative-host-tools 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 a20ad789e6394ec7ebec03e9baca0e478c58468f 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 2c3f1dfed4a7c56f4c30286939140e3034b11407 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..062736349442 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-host-tools 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 a58e2829f7f3dee6c96b42b4a92deb33ca733d54 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 05c617cd36b55a794d159de321f258c8eb279cc4 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 4ee3212d64f04ffa858b0cdf133f7a491b9211d3 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"

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PR PATCH] [Updated] Qt6 6.4.2
  2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
                   ` (5 preceding siblings ...)
  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
  8 siblings, 0 replies; 10+ messages in thread
From: sgn @ 2023-02-22 16:58 UTC (permalink / raw)
  To: ml

[-- 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: 87135 bytes --]

From dfd9582a817d736d596c201fb4c3aace8b5b886d 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                     | 87 ++++++++++++-------
 10 files changed, 102 insertions(+), 77 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..204d2c68ae01 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,8 @@ configure_args="-DINSTALL_DATADIR=share/qt6
  -DINSTALL_SYSCONFDIR=/etc/xdg
  -DQT_FEATURE_openssl_linked=ON
  -DQT_FEATURE_system_sqlite=ON
+ -DQT_FEATURE_libproxy=ON
+ -DQT_FEATURE_qmake=ON
  -DBUILD_WITH_PCH=OFF"
 hostmakedepends="perl pkg-config xmlstarlet"
 makedepends="zlib-devel libzstd-devel dbus-devel
@@ -30,13 +32,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/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"
+	configure_args+=" -DQT_FORCE_BUILD_TOOLS=true"
 fi
 
 # It is currently expected that quite a few patches do fail
@@ -47,47 +49,66 @@ 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
+	cat <<-EOF >${DESTDIR}/usr/lib/qt6/bin/target_qt.conf
+	[Paths]
+	Prefix=../../../
+	HostPrefix=/usr
+	Binaries=lib/qt6/bin
+	HostBinaries=lib/qt6/bin
+	Libraries=lib
+	HostLibraries=lib
+	LibraryExecutables=lib/qt6/libexec
+	HostLibraryExecutables=lib/qt6/libexec
+	ArchData=lib/qt6
+	HostArchData=lib/qt6
+	Data=share/qt6
+	HostData=share/qt6
+	Sysroot=
+	SysrootifyPrefix=false
+	TargetSpec=linux-g++
+	HostSpec=linux-g++
+	EOF
 }
 
 qt6-gui_package() {
@@ -231,11 +252,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 +280,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 +289,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 472fedb71235f604591d4d5e6b8da5513842eaab 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              |  78 ++++---
 srcpkgs/qt6-quick-test                        |   1 +
 6 files changed, 166 insertions(+), 127 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..a3d921f9ea19 100644
--- a/srcpkgs/qt6-declarative/template
+++ b/srcpkgs/qt6-declarative/template
@@ -1,64 +1,75 @@
 # 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"
+configure_args="-DQT_BUILD_TESTS=ON"
+hostmakedepends="qt6-base perl pkg-config wayland-devel qt6-shadertools python3"
 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"
+	configure_args+=" -DQT_FORCE_BUILD_TOOLS=true"
+	hostmakedepends+=" qt6-declarative-host-tools"
 fi
 
-if [ "$XBPS_CHECK_PKGS" ]; then
-	configure_args+=" -DQT_BUILD_TESTS=ON"
-fi
 
 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
+	# Only build in -DQT_BUILD_TESTS=ON, for self-test
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/testapp
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/qqmldebug*
+}
+
+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-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
@@ -68,22 +79,35 @@ qt6-declarative-tools_package() {
 	}
 }
 
+qt6-declarative-host-tools_package() {
+	# The CMake for Tools requires all binaries to be available
+	depends="qt6-quick-test>=${version}_${revision} qt6-base>=${version}
+	 qt6-declarative-tools>=${version}_${revision}"
+	short_desc+=" - host tools"
+	pkg_install() {
+		vmove "usr/lib/cmake/*Tools"
+	}
+}
+
 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 6ee51f44b19e0f58eaec5d05c32b10e6e008cd65 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 418d61080ec59c3adec39e1abd99e670efcbccc8 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.

---
 .../qt6-multimedia/patches/musl-timeval.patch    | 10 ++++++++++
 srcpkgs/qt6-multimedia/template                  | 16 ++++++++++------
 2 files changed, 20 insertions(+), 6 deletions(-)
 create mode 100644 srcpkgs/qt6-multimedia/patches/musl-timeval.patch

diff --git a/srcpkgs/qt6-multimedia/patches/musl-timeval.patch b/srcpkgs/qt6-multimedia/patches/musl-timeval.patch
new file mode 100644
index 000000000000..af7b4dd7fb57
--- /dev/null
+++ b/srcpkgs/qt6-multimedia/patches/musl-timeval.patch
@@ -0,0 +1,10 @@
+--- qt6-multimedia-6.4.2.orig/src/plugins/multimedia/ffmpeg/qv4l2camera_p.h
++++ qt6-multimedia-6.4.2/src/plugins/multimedia/ffmpeg/qv4l2camera_p.h
+@@ -22,6 +22,7 @@
+ #include <qfilesystemwatcher.h>
+ #include <qsocketnotifier.h>
+ #include <qmutex.h>
++#include <sys/time.h>
+ 
+ QT_BEGIN_NAMESPACE
+ 
diff --git a/srcpkgs/qt6-multimedia/template b/srcpkgs/qt6-multimedia/template
index f6d37be9ca5f..d89e7d54eb5a 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
- qt6-shadertools-devel libglib-devel gst-plugins-base1-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 qt6-quick3d-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 2db52349eabb857ee8b3af06789e54a7119fc6c9 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 849633f90732e1767188da3d2c4578c661c96f08 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 203db794a9fac6fdf071dab4504debbd2fe40750 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                    | 47 +++++++++++++++----
 srcpkgs/qt6-ui-tools                          |  1 +
 7 files changed, 71 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..cdbb96b43514 100644
--- a/srcpkgs/qt6-tools/template
+++ b/srcpkgs/qt6-tools/template
@@ -1,23 +1,26 @@
 # 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
+ qt6-declarative-host-tools"
+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 +34,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|*/Qt6LinguistTools) ;;
+			*)	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 eb02f962d680c0165f34f2fbc06d1ffdfd02d5a4 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 c7885d4cbeb0bc0c0e6b6339efb35ddd6657c5cd 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 37dce7ff0b7bc0c7ad0cbd89348f08a00558cc48 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 ee580cc9c467fc1ee9fc253eef3a3e07f188dcc6 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 8f51e9343486e315cb115a2f511eb63762ab6306 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 a61e12b0ec2dcdffed4eb1708a4cad62bdd71490 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 bec2bd648bf2030aded48b299bcaa1137dd04073 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 4cdb88d5bcfab3c691ce221ed5117487b6366632 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 b30e2cb00279dbf371635d3d2a40f8ebd33df095 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 201b68704f7a1829969cec50f23abb82c2d96ef8 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 9e3ee500b66471ef2c14cf3e61d7379b2ed32bfc 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 | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/qt6-imageformats/template b/srcpkgs/qt6-imageformats/template
index d101faacfc4f..3ed63f6e98cd 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"
-makedepends="qt6-base-devel"
+hostmakedepends="perl qt6-base"
+makedepends="qt6-base-devel jasper-devel libmng-devel tiff-devel libwebp-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 d2b68fc37e4c4487549441bc841de792e679563c 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 e7473dd079323594f881625e2c2b15a8e26fd4b4 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..e5ef91c9053c 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-declarative-host-tools 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 4173f8fbc01ead8ddfaf1f5396dad78425663b52 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 2ebc82916f69ab6e0d2c3e87974a1babe318fa35 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..062736349442 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-host-tools 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 131f6a6e6c150ab763c0f1e9ab2654f2225aebd5 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 e0a1d2019d94772ac98a753cf4ce91480d803797 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 a1e9404428e55ad9d6f23450fdc4a8372ef28fca 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"

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PR PATCH] [Updated] Qt6 6.4.2
  2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
                   ` (6 preceding siblings ...)
  2023-02-22 16:58 ` sgn
@ 2023-02-23  0:27 ` sgn
  2023-02-23  0:28 ` [PR PATCH] [Merged]: " sgn
  8 siblings, 0 replies; 10+ messages in thread
From: sgn @ 2023-02-23  0:27 UTC (permalink / raw)
  To: ml

[-- 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: 87135 bytes --]

From 61ca21f8ee1a039833ed06edb7865d4aff0ab9e7 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                     | 87 ++++++++++++-------
 10 files changed, 102 insertions(+), 77 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..204d2c68ae01 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,8 @@ configure_args="-DINSTALL_DATADIR=share/qt6
  -DINSTALL_SYSCONFDIR=/etc/xdg
  -DQT_FEATURE_openssl_linked=ON
  -DQT_FEATURE_system_sqlite=ON
+ -DQT_FEATURE_libproxy=ON
+ -DQT_FEATURE_qmake=ON
  -DBUILD_WITH_PCH=OFF"
 hostmakedepends="perl pkg-config xmlstarlet"
 makedepends="zlib-devel libzstd-devel dbus-devel
@@ -30,13 +32,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/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"
+	configure_args+=" -DQT_FORCE_BUILD_TOOLS=true"
 fi
 
 # It is currently expected that quite a few patches do fail
@@ -47,47 +49,66 @@ 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
+	cat <<-EOF >${DESTDIR}/usr/lib/qt6/bin/target_qt.conf
+	[Paths]
+	Prefix=../../../
+	HostPrefix=/usr
+	Binaries=lib/qt6/bin
+	HostBinaries=lib/qt6/bin
+	Libraries=lib
+	HostLibraries=lib
+	LibraryExecutables=lib/qt6/libexec
+	HostLibraryExecutables=lib/qt6/libexec
+	ArchData=lib/qt6
+	HostArchData=lib/qt6
+	Data=share/qt6
+	HostData=share/qt6
+	Sysroot=
+	SysrootifyPrefix=false
+	TargetSpec=linux-g++
+	HostSpec=linux-g++
+	EOF
 }
 
 qt6-gui_package() {
@@ -231,11 +252,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 +280,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 +289,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 38e4410a206a385e7e8c3bf6fc10cdd5484c7198 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              |  78 ++++---
 srcpkgs/qt6-quick-test                        |   1 +
 6 files changed, 166 insertions(+), 127 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..a3d921f9ea19 100644
--- a/srcpkgs/qt6-declarative/template
+++ b/srcpkgs/qt6-declarative/template
@@ -1,64 +1,75 @@
 # 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"
+configure_args="-DQT_BUILD_TESTS=ON"
+hostmakedepends="qt6-base perl pkg-config wayland-devel qt6-shadertools python3"
 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"
+	configure_args+=" -DQT_FORCE_BUILD_TOOLS=true"
+	hostmakedepends+=" qt6-declarative-host-tools"
 fi
 
-if [ "$XBPS_CHECK_PKGS" ]; then
-	configure_args+=" -DQT_BUILD_TESTS=ON"
-fi
 
 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
+	# Only build in -DQT_BUILD_TESTS=ON, for self-test
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/testapp
+	rm -f ${DESTDIR}/usr/lib/qt6/bin/qqmldebug*
+}
+
+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-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
@@ -68,22 +79,35 @@ qt6-declarative-tools_package() {
 	}
 }
 
+qt6-declarative-host-tools_package() {
+	# The CMake for Tools requires all binaries to be available
+	depends="qt6-quick-test>=${version}_${revision} qt6-base>=${version}
+	 qt6-declarative-tools>=${version}_${revision}"
+	short_desc+=" - host tools"
+	pkg_install() {
+		vmove "usr/lib/cmake/*Tools"
+	}
+}
+
 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 ec487dd2a4d360e95057bd229d95eacf6507bb49 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 57c6fba882b7b01881760bd7cde110b36097862f 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.

---
 .../qt6-multimedia/patches/musl-timeval.patch    | 10 ++++++++++
 srcpkgs/qt6-multimedia/template                  | 16 ++++++++++------
 2 files changed, 20 insertions(+), 6 deletions(-)
 create mode 100644 srcpkgs/qt6-multimedia/patches/musl-timeval.patch

diff --git a/srcpkgs/qt6-multimedia/patches/musl-timeval.patch b/srcpkgs/qt6-multimedia/patches/musl-timeval.patch
new file mode 100644
index 000000000000..af7b4dd7fb57
--- /dev/null
+++ b/srcpkgs/qt6-multimedia/patches/musl-timeval.patch
@@ -0,0 +1,10 @@
+--- qt6-multimedia-6.4.2.orig/src/plugins/multimedia/ffmpeg/qv4l2camera_p.h
++++ qt6-multimedia-6.4.2/src/plugins/multimedia/ffmpeg/qv4l2camera_p.h
+@@ -22,6 +22,7 @@
+ #include <qfilesystemwatcher.h>
+ #include <qsocketnotifier.h>
+ #include <qmutex.h>
++#include <sys/time.h>
+ 
+ QT_BEGIN_NAMESPACE
+ 
diff --git a/srcpkgs/qt6-multimedia/template b/srcpkgs/qt6-multimedia/template
index f6d37be9ca5f..d89e7d54eb5a 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
- qt6-shadertools-devel libglib-devel gst-plugins-base1-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 qt6-quick3d-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 0fcfb15f8bdd4cb0e60a7fb2b886cb36a467061f 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 0500f42843faaa64f4596990826e85c15ed6a177 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 9bcb7e6bc7146bd1699718eb6516bb354c6bdfe8 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                    | 47 +++++++++++++++----
 srcpkgs/qt6-ui-tools                          |  1 +
 7 files changed, 71 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..cdbb96b43514 100644
--- a/srcpkgs/qt6-tools/template
+++ b/srcpkgs/qt6-tools/template
@@ -1,23 +1,26 @@
 # 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
+ qt6-declarative-host-tools"
+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 +34,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|*/Qt6LinguistTools) ;;
+			*)	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 3b3b1f6f53e91e0d861dcdcc424a1e315f41701d 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 1b284b0679c816f6439fa9edc08c5f802741216a 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 a65c332d39098e3c46d1d449a5b07febd7eb8a60 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 5cbd97b4adeb0e097652086dac1c047af784d81b 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 8d340daa72d02bc5484b8c61d0dfac02922ab984 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 cbbd500360a8ca8db39fefcfccd3d150bc8aab21 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 ace79f7debe2838265f02ccf290d113c506382a1 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 87801f4cf9afe703d8b4979b78f7cc2367d6cc7c 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 deb1da93ca5645b908fcdef714983cfaa8036a27 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 81610c11c374115f223b29ad47b4f8c369e90731 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 626fb552dcf9f0aee5470325a3f427c824bab9e8 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 | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/qt6-imageformats/template b/srcpkgs/qt6-imageformats/template
index d101faacfc4f..3ed63f6e98cd 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"
-makedepends="qt6-base-devel"
+hostmakedepends="perl qt6-base"
+makedepends="qt6-base-devel jasper-devel libmng-devel tiff-devel libwebp-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 7f18164a53880715d5776bf584c3d560d01bdbf8 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 ec34c6fb990b58458e6f7c78e5e5112fa27bf772 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..e5ef91c9053c 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-declarative-host-tools 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 b25bdb8be8e2b729ec0b27ee89b37a2ad186a8e6 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 3000bf0827b1d095c6fa7e5bba096bebd2dff447 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..062736349442 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-host-tools 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 77f52826f64406f17b3f6f04ae691b180f298a4d 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 3c8575ce4a6ee4e6eab72d75a58dee9d10cca696 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 cfba0c669b7931ed5279a2bd3383fdce75cc5ab3 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"

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PR PATCH] [Merged]: Qt6 6.4.2
  2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
                   ` (7 preceding siblings ...)
  2023-02-23  0:27 ` sgn
@ 2023-02-23  0:28 ` sgn
  8 siblings, 0 replies; 10+ messages in thread
From: sgn @ 2023-02-23  0:28 UTC (permalink / raw)
  To: ml

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

There's a merged pull request on the void-packages repository

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

Description:
<!-- 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
-->


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-02-23  0:28 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-19  2:04 [PR PATCH] Qt6 6.4.2 sgn
2023-02-21  0:59 ` [PR PATCH] [Updated] " sgn
2023-02-21 16:16 ` sgn
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

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).