aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias C. Berner <tcberner@FreeBSD.org>2021-12-18 09:11:53 +0000
committerTobias C. Berner <tcberner@FreeBSD.org>2022-01-02 08:47:54 +0000
commit6b3bece75ad5a3d03e2751e5cdf78ae8aeb0abf9 (patch)
tree274b8a7c1de1b060b55e801fb2e68d14168af9c2
parent877cceb2366ec51535ac0ad1ba0765dd16227fcd (diff)
downloadports-6b3bece75ad5a3d03e2751e5cdf78ae8aeb0abf9.tar.gz
ports-6b3bece75ad5a3d03e2751e5cdf78ae8aeb0abf9.zip
Qt: Switch Qt5 to use KDE's Qt patch collection
From [1] What's this? This is a set of git repositories based on the last public commits available for Qt 5.15 branches with a curated collection of patches on top to ensure open source products can be used comfortably until users transition to their Qt 6-based ports. Which patches does it include? This collection of patches includes patches that fix at least one of the following: * Security issues * Crashes * Functional defects We only include patches that have been approved upstream in the Qt project. If a patch cannot be merged upstream for technical reasons (e.g. the class no longer exists), it can also be merged. The patches to merge will be decided based on their relevance towards Open Source products and their viability. PR: 260548 Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D33446 [1] https://community.kde.org/Qt5PatchCollection
-rw-r--r--Mk/Uses/qt-dist.mk79
-rw-r--r--accessibility/qt5-speech/Makefile6
-rw-r--r--accessibility/qt5-speech/distinfo3
-rw-r--r--comms/qt5-connectivity/Makefile3
-rw-r--r--comms/qt5-connectivity/distinfo3
-rw-r--r--comms/qt5-sensors/Makefile3
-rw-r--r--comms/qt5-sensors/distinfo3
-rw-r--r--comms/qt5-serialbus/Makefile6
-rw-r--r--comms/qt5-serialbus/distinfo3
-rw-r--r--comms/qt5-serialport/Makefile6
-rw-r--r--comms/qt5-serialport/distinfo3
-rw-r--r--databases/qt5-sql/Makefile6
-rw-r--r--databases/qt5-sql/distinfo3
-rw-r--r--databases/qt5-sqldrivers-ibase/Makefile2
-rw-r--r--databases/qt5-sqldrivers-ibase/distinfo3
-rw-r--r--databases/qt5-sqldrivers-mysql/Makefile2
-rw-r--r--databases/qt5-sqldrivers-mysql/distinfo3
-rw-r--r--databases/qt5-sqldrivers-odbc/distinfo3
-rw-r--r--databases/qt5-sqldrivers-pgsql/distinfo3
-rw-r--r--databases/qt5-sqldrivers-sqlite2/distinfo3
-rw-r--r--databases/qt5-sqldrivers-sqlite3/distinfo3
-rw-r--r--databases/qt5-sqldrivers-tds/distinfo3
-rw-r--r--devel/qt5-assistant/Makefile2
-rw-r--r--devel/qt5-assistant/distinfo3
-rw-r--r--devel/qt5-buildtools/Makefile4
-rw-r--r--devel/qt5-buildtools/distinfo3
-rw-r--r--devel/qt5-concurrent/Makefile6
-rw-r--r--devel/qt5-concurrent/distinfo3
-rw-r--r--devel/qt5-concurrent/files/patch-gcc1115
-rw-r--r--devel/qt5-core/Makefile6
-rw-r--r--devel/qt5-core/distinfo3
-rw-r--r--devel/qt5-core/files/patch-src_corelib_io_qiodevice.cpp17
-rw-r--r--devel/qt5-dbus/Makefile6
-rw-r--r--devel/qt5-dbus/distinfo3
-rw-r--r--devel/qt5-designer/Makefile3
-rw-r--r--devel/qt5-designer/distinfo3
-rw-r--r--devel/qt5-help/Makefile3
-rw-r--r--devel/qt5-help/distinfo3
-rw-r--r--devel/qt5-linguist/Makefile2
-rw-r--r--devel/qt5-linguist/distinfo3
-rw-r--r--devel/qt5-linguisttools/Makefile3
-rw-r--r--devel/qt5-linguisttools/distinfo3
-rw-r--r--devel/qt5-location/Makefile3
-rw-r--r--devel/qt5-location/distinfo3
-rw-r--r--devel/qt5-qdbus/Makefile3
-rw-r--r--devel/qt5-qdbus/distinfo3
-rw-r--r--devel/qt5-qdbusviewer/Makefile2
-rw-r--r--devel/qt5-qdbusviewer/distinfo3
-rw-r--r--devel/qt5-qdoc-data/Makefile1
-rw-r--r--devel/qt5-qdoc-data/distinfo3
-rw-r--r--devel/qt5-qdoc/Makefile2
-rw-r--r--devel/qt5-qdoc/distinfo3
-rw-r--r--devel/qt5-qmake/Makefile6
-rw-r--r--devel/qt5-qmake/distinfo3
-rw-r--r--devel/qt5-remoteobjects/Makefile3
-rw-r--r--devel/qt5-remoteobjects/distinfo3
-rw-r--r--devel/qt5-script/Makefile6
-rw-r--r--devel/qt5-script/distinfo3
-rw-r--r--devel/qt5-scripttools/Makefile3
-rw-r--r--devel/qt5-scripttools/distinfo3
-rw-r--r--devel/qt5-scxml/Makefile3
-rw-r--r--devel/qt5-scxml/distinfo3
-rw-r--r--devel/qt5-testlib/Makefile6
-rw-r--r--devel/qt5-testlib/distinfo3
-rw-r--r--devel/qt5-uitools/Makefile3
-rw-r--r--devel/qt5-uitools/distinfo3
-rw-r--r--devel/qt5/Makefile.sqldrivers5
-rw-r--r--devel/qt5/distinfo86
-rw-r--r--devel/qt5/files/create_kde-qt_release.sh54
-rw-r--r--devel/qt5/files/extrapatch-sync.profiles12
-rw-r--r--graphics/qt5-3d/Makefile6
-rw-r--r--graphics/qt5-3d/distinfo3
-rw-r--r--graphics/qt5-3d/pkg-plist3
-rw-r--r--graphics/qt5-graphicaleffects/Makefile2
-rw-r--r--graphics/qt5-graphicaleffects/distinfo3
-rw-r--r--graphics/qt5-imageformats/Makefile2
-rw-r--r--graphics/qt5-imageformats/distinfo3
-rw-r--r--graphics/qt5-opengl/Makefile6
-rw-r--r--graphics/qt5-opengl/distinfo3
-rw-r--r--graphics/qt5-pixeltool/Makefile2
-rw-r--r--graphics/qt5-pixeltool/distinfo3
-rw-r--r--graphics/qt5-svg/Makefile3
-rw-r--r--graphics/qt5-svg/distinfo3
-rw-r--r--graphics/qt5-wayland/Makefile3
-rw-r--r--graphics/qt5-wayland/distinfo3
-rw-r--r--misc/qt5-doc/Makefile2
-rw-r--r--misc/qt5-examples/Makefile2
-rw-r--r--misc/qt5-l10n/Makefile2
-rw-r--r--misc/qt5-l10n/distinfo3
-rw-r--r--misc/qt5-l10n/pkg-plist64
-rw-r--r--multimedia/qt5-multimedia/Makefile3
-rw-r--r--multimedia/qt5-multimedia/distinfo3
-rw-r--r--net/qt5-network/Makefile6
-rw-r--r--net/qt5-network/distinfo3
-rw-r--r--net/qt5-networkauth/Makefile6
-rw-r--r--net/qt5-networkauth/distinfo3
-rw-r--r--print/qt5-printsupport/Makefile6
-rw-r--r--print/qt5-printsupport/distinfo3
-rw-r--r--sysutils/qt5-qtdiag/Makefile2
-rw-r--r--sysutils/qt5-qtdiag/distinfo3
-rw-r--r--sysutils/qt5-qtpaths/Makefile2
-rw-r--r--sysutils/qt5-qtpaths/distinfo3
-rw-r--r--sysutils/qt5-qtplugininfo/Makefile2
-rw-r--r--sysutils/qt5-qtplugininfo/distinfo3
-rw-r--r--textproc/qt5-xml/Makefile6
-rw-r--r--textproc/qt5-xml/distinfo3
-rw-r--r--textproc/qt5-xmlpatterns/Makefile2
-rw-r--r--textproc/qt5-xmlpatterns/distinfo3
-rw-r--r--www/qt5-webchannel/Makefile3
-rw-r--r--www/qt5-webchannel/distinfo3
-rw-r--r--www/qt5-webglplugin/Makefile3
-rw-r--r--www/qt5-webglplugin/distinfo3
-rw-r--r--www/qt5-websockets-qml/Makefile3
-rw-r--r--www/qt5-websockets-qml/distinfo3
-rw-r--r--www/qt5-websockets/Makefile6
-rw-r--r--www/qt5-websockets/distinfo3
-rw-r--r--www/qt5-webview/Makefile3
-rw-r--r--www/qt5-webview/distinfo3
-rw-r--r--x11-toolkits/qt5-charts/Makefile2
-rw-r--r--x11-toolkits/qt5-charts/distinfo3
-rw-r--r--x11-toolkits/qt5-datavis3d/Makefile3
-rw-r--r--x11-toolkits/qt5-datavis3d/distinfo3
-rw-r--r--x11-toolkits/qt5-declarative-test/Makefile2
-rw-r--r--x11-toolkits/qt5-declarative-test/distinfo3
-rw-r--r--x11-toolkits/qt5-declarative/Makefile3
-rw-r--r--x11-toolkits/qt5-declarative/distinfo3
-rw-r--r--x11-toolkits/qt5-declarative/pkg-plist2
-rw-r--r--x11-toolkits/qt5-gamepad/Makefile3
-rw-r--r--x11-toolkits/qt5-gamepad/distinfo3
-rw-r--r--x11-toolkits/qt5-gui/Makefile6
-rw-r--r--x11-toolkits/qt5-gui/distinfo3
-rw-r--r--x11-toolkits/qt5-gui/files/patch-git_73fc1f93-add_timeout_control_when_reading_incr_property59
-rw-r--r--x11-toolkits/qt5-quick3d/Makefile6
-rw-r--r--x11-toolkits/qt5-quick3d/distinfo3
-rw-r--r--x11-toolkits/qt5-quick3d/files/patch-arch_qt5-quick3d-assimp-5.117
-rw-r--r--x11-toolkits/qt5-quick3d/pkg-plist3
-rw-r--r--x11-toolkits/qt5-quickcontrols/Makefile3
-rw-r--r--x11-toolkits/qt5-quickcontrols/distinfo3
-rw-r--r--x11-toolkits/qt5-quickcontrols2/Makefile3
-rw-r--r--x11-toolkits/qt5-quickcontrols2/distinfo3
-rw-r--r--x11-toolkits/qt5-quicktimeline/Makefile3
-rw-r--r--x11-toolkits/qt5-quicktimeline/distinfo3
-rw-r--r--x11-toolkits/qt5-uiplugin/Makefile8
-rw-r--r--x11-toolkits/qt5-uiplugin/distinfo3
-rw-r--r--x11-toolkits/qt5-virtualkeyboard/Makefile3
-rw-r--r--x11-toolkits/qt5-virtualkeyboard/distinfo3
-rw-r--r--x11-toolkits/qt5-widgets/Makefile6
-rw-r--r--x11-toolkits/qt5-widgets/distinfo3
-rw-r--r--x11/qt5-qev/Makefile2
-rw-r--r--x11/qt5-qev/distinfo3
-rw-r--r--x11/qt5-x11extras/Makefile9
-rw-r--r--x11/qt5-x11extras/distinfo3
152 files changed, 553 insertions, 331 deletions
diff --git a/Mk/Uses/qt-dist.mk b/Mk/Uses/qt-dist.mk
index 3611e949b00b..40b109ee4a9e 100644
--- a/Mk/Uses/qt-dist.mk
+++ b/Mk/Uses/qt-dist.mk
@@ -57,9 +57,6 @@ IGNORE= Unsupported qt-dist ${_QT_DIST} for qt:${_QT_VER}
################################################################################
# Set standard bsd.port.mk variables
-MASTER_SITES= ${MASTER_SITE_QT}
-DISTINFO_FILE?= ${PORTSDIR}/devel/${_QT_RELNAME}/distinfo
-
LICENSE?= LGPL21
. if !exists(${PKGDIR}/pkg-descr)
@@ -70,13 +67,57 @@ DESCR?= ${PORTSDIR}/devel/${_QT_RELNAME}/pkg-descr
DESTDIRNAME= INSTALL_ROOT
. if ${_QT_VER:M5}
-MASTER_SITE_SUBDIR?= official_releases/qt/${_QT_VERSION:R}/${_QT_VERSION}/submodules/
-# www/qt5-webengine hackery: The tarballs of 5.9.5 had a different naming scheme.
-. if ${QT5_VERSION} == "5.9.5"
-DISTNAME= ${_QT_DIST:S,^,qt,:S,$,-opensource-src-${DISTVERSION},}
+
+# KDE maintains a repository with a patched Qt5 distribution.
+_KDE_3d= 39
+_KDE_base= 263
+_KDE_charts= 2
+_KDE_connectivity= 1
+_KDE_datavis3d= 2
+_KDE_declarative= 41
+_KDE_gamepad= 2
+_KDE_graphicaleffects= 2
+_KDE_imageformats= 3
+_KDE_location= 6
+_KDE_multimedia= 3
+_KDE_networkauth= 2
+_KDE_quick3d= 19
+_KDE_quickcontrols= 3
+_KDE_quickcontrols2= 8
+_KDE_quicktimeline= 3
+_KDE_remoteobjects= 3
+_KDE_script= 4
+_KDE_scxml= 1
+_KDE_sensors= 2
+_KDE_serialbus= 2
+_KDE_serialport= 2
+_KDE_speech= 2
+_KDE_svg= 13
+_KDE_tools= 17
+_KDE_translations= 22
+_KDE_virtualkeyboard= 4
+_KDE_wayland= 37
+_KDE_webchannel= 2
+_KDE_webglplugin= 2
+_KDE_websockets= 4
+_KDE_webview= 2
+_KDE_x11extras= 1
+_KDE_xmlpatterns= 2
+
+. if defined(_KDE_${_QT_DIST})
+# KDE patched Qt parts
+QT5_KDE_PATCH= p${_KDE_${_QT_DIST}}
+MASTER_SITES= LOCAL/tcberner/KDE/Qt/${_QT_VERSION}
+DISTNAME= ${_QT_DIST:S,^,kde-qt,:S,$,-${DISTVERSION},}
+COMMENT+= (KDE patched)
. else
+# non KDE patched Qt parts
+QT5_KDE_PATCH= #
+MASTER_SITES= ${MASTER_SITE_QT}
+MASTER_SITE_SUBDIR?= official_releases/qt/${_QT_VERSION:R}/${_QT_VERSION}/submodules/
DISTNAME= ${_QT_DIST:S,^,qt,:S,$,-everywhere-src-${DISTVERSION},}
. endif
+
DISTFILES= ${DISTNAME:S,$,${EXTRACT_SUFX},}
DIST_SUBDIR= KDE/Qt/${_QT_VERSION}
@@ -91,9 +132,6 @@ LDFLAGS+= -Wl,--as-needed
defined(DISABLE_SIZE) && defined(NO_CHECKSUM)
# Ensure that the "makesum" target (with its inner "fetch" one) uses
# devel/qt*/distinfo for every port.
-. if ${DISTINFO_FILE:H} == ${PORTSDIR}/devel/${_QT_RELNAME}
-_QT_DIST= ${_QT5_DISTS}
-. endif
. endif
# Qt5's tarballs are xz compressed.
@@ -183,6 +221,7 @@ _EXTRA_PATCHES_QT5+= ${PORTSDIR}/devel/${_QT_RELNAME}/files/extra-patch-mkspecs_
${PORTSDIR}/devel/${_QT_RELNAME}/files/extrapatch-mkspecs_freebsd-g++_qmake.conf
. endif
EXTRA_PATCHES?= ${PORTSDIR}/devel/${_QT_RELNAME}/files/extrapatch-configure \
+ ${PORTSDIR}/devel/${_QT_RELNAME}/files/extrapatch-sync.profiles \
${_EXTRA_PATCHES_QT5}
. endif # ${_QT_DIST} == "base"
@@ -208,8 +247,8 @@ QMAKE_ARGS+= QT_CONFIG+="${QT_CONFIG:N-*:O:u}"
QMAKE_ARGS+= QT_CONFIG-="${QT_CONFIG:M-*:O:u:C/^-//}"
. endif
-PLIST_SUB+= SHORTVER=${DISTVERSION:R} \
- FULLVER=${DISTVERSION:C/-.*//}
+PLIST_SUB+= SHORTVER=${_QT_VERSION:R} \
+ FULLVER=${_QT_VERSION:C/-.*//}
# Handle additional PLIST directories, which should only be used for Qt-dist ports.
. for dir in CMAKE ETC
@@ -312,7 +351,15 @@ qt5-pre-configure:
# value through to the configure script in qtbase).
${MKDIR} ${CONFIGURE_WRKSRC}
${ECHO_CMD} 'CMAKE_MODULE_TESTS = -' > ${CONFIGURE_WRKSRC}/.qmake.cache
-#
+
+ # configure will run syncqt.pl if it finds a .git entry in the working directory
+ touch ${WRKSRC}/.git
+ # As the patch collection was created after a version bump, all module verisions
+ # are tagged as 5.15.3
+ touch ${WRKSRC}/.qmake.conf # easier than to -f before the sed
+ ${REINPLACE_CMD} -e '/MODULE_VERSION/s|5\.15\.[0-9]|${_QT_VERSION}|g' \
+ ${WRKSRC}/.qmake.conf
+
# **** THIS PART IS OBSOLETE FOR THE NEXT QT UPGRADE ****
#
# We piggyback on QMAKE_LIBDIR_FLAGS to make sure -L${WRKSRC}/lib is passed to
@@ -409,4 +456,10 @@ qt-post-install:
>> ${TMPPLIST}
. endif # ${QT_CONFIG:N-*}
. endif # M5
+
+qt-create-kde-distfile:
+ ${SH} ${PORTSDIR}/devel/${_QT_RELNAME}/files/create_kde-qt_release.sh \
+ ${_QT_DIST} \
+ ${DISTDIR}/${DIST_SUBDIR}
+
.endif # defined(_QT_DIST_MK_INCLUDED)
diff --git a/accessibility/qt5-speech/Makefile b/accessibility/qt5-speech/Makefile
index f78c49fdea3a..c999092c5cc1 100644
--- a/accessibility/qt5-speech/Makefile
+++ b/accessibility/qt5-speech/Makefile
@@ -1,15 +1,15 @@
PORTNAME= speech
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= accessibility
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Accessibilty features for Qt5
-USES= compiler:c++11-lang gl pkgconfig qmake:outsource,norecursive \
+USES= compiler:c++11-lang gl pkgconfig perl5 qmake:outsource,norecursive \
qt-dist:5,speech xorg
USE_GL= gl
+USE_PERL5= extract
USE_QT= core gui buildtools_build qmake_build
OPTIONS_DEFINE= ALSA
diff --git a/accessibility/qt5-speech/distinfo b/accessibility/qt5-speech/distinfo
new file mode 100644
index 000000000000..dc27ac3c85c7
--- /dev/null
+++ b/accessibility/qt5-speech/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423750
+SHA256 (KDE/Qt/5.15.2/kde-qtspeech-5.15.2p2.tar.xz) = 83f3543ef261b7603615fd07a3f9d938ba1377aa2a955e449b0cc87efd543989
+SIZE (KDE/Qt/5.15.2/kde-qtspeech-5.15.2p2.tar.xz) = 80208
diff --git a/comms/qt5-connectivity/Makefile b/comms/qt5-connectivity/Makefile
index ee21ba931939..e0d37eed3eab 100644
--- a/comms/qt5-connectivity/Makefile
+++ b/comms/qt5-connectivity/Makefile
@@ -1,6 +1,5 @@
PORTNAME= connectivity
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= comms
PKGNAMEPREFIX= qt5-
diff --git a/comms/qt5-connectivity/distinfo b/comms/qt5-connectivity/distinfo
new file mode 100644
index 000000000000..bd6f9d81063d
--- /dev/null
+++ b/comms/qt5-connectivity/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423751
+SHA256 (KDE/Qt/5.15.2/kde-qtconnectivity-5.15.2p1.tar.xz) = 768324678b18c535c34d10a304124352b6befc7be6f0496bbb7b6ed6376f382e
+SIZE (KDE/Qt/5.15.2/kde-qtconnectivity-5.15.2p1.tar.xz) = 2784408
diff --git a/comms/qt5-sensors/Makefile b/comms/qt5-sensors/Makefile
index 714b5a110fa3..41c9e62151b6 100644
--- a/comms/qt5-sensors/Makefile
+++ b/comms/qt5-sensors/Makefile
@@ -1,6 +1,5 @@
PORTNAME= sensors
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= comms
PKGNAMEPREFIX= qt5-
diff --git a/comms/qt5-sensors/distinfo b/comms/qt5-sensors/distinfo
new file mode 100644
index 000000000000..30da2f69b490
--- /dev/null
+++ b/comms/qt5-sensors/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423751
+SHA256 (KDE/Qt/5.15.2/kde-qtsensors-5.15.2p2.tar.xz) = ad17bde11441d00f5a0db4ecf87a40833953981ac3a8039243c8de1b0d2122de
+SIZE (KDE/Qt/5.15.2/kde-qtsensors-5.15.2p2.tar.xz) = 2030628
diff --git a/comms/qt5-serialbus/Makefile b/comms/qt5-serialbus/Makefile
index e0e429ab82eb..ba8702ac3a8b 100644
--- a/comms/qt5-serialbus/Makefile
+++ b/comms/qt5-serialbus/Makefile
@@ -1,13 +1,13 @@
PORTNAME= serialbus
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= comms
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt functions to access industrial bus systems
-USES= compiler:c++11-lib qmake qt-dist:5,serialbus
+USES= compiler:c++11-lib perl5 qmake qt-dist:5,serialbus
+USE_PERL5= extract
USE_QT= core network serialport buildtools_build
QT_BINARIES= yes
diff --git a/comms/qt5-serialbus/distinfo b/comms/qt5-serialbus/distinfo
new file mode 100644
index 000000000000..ae74f66d9194
--- /dev/null
+++ b/comms/qt5-serialbus/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423752
+SHA256 (KDE/Qt/5.15.2/kde-qtserialbus-5.15.2p2.tar.xz) = 0d0befb361f18e4b46a3f8ed6ceebc94d34c3266a609720e3ff980a459e26715
+SIZE (KDE/Qt/5.15.2/kde-qtserialbus-5.15.2p2.tar.xz) = 333156
diff --git a/comms/qt5-serialport/Makefile b/comms/qt5-serialport/Makefile
index ae63f5c1514b..59b1509c0960 100644
--- a/comms/qt5-serialport/Makefile
+++ b/comms/qt5-serialport/Makefile
@@ -1,13 +1,13 @@
PORTNAME= serialport
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= comms
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt functions to access serial ports
-USES= compiler:c++11-lang libtool qmake qt-dist:5,serialport
+USES= compiler:c++11-lang libtool perl5 qmake qt-dist:5,serialport
+USE_PERL5= extract
USE_QT= core buildtools_build
.include <bsd.port.mk>
diff --git a/comms/qt5-serialport/distinfo b/comms/qt5-serialport/distinfo
new file mode 100644
index 000000000000..fb41f11fd71e
--- /dev/null
+++ b/comms/qt5-serialport/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423754
+SHA256 (KDE/Qt/5.15.2/kde-qtserialport-5.15.2p2.tar.xz) = 767e7b817b01ad747346c2c9bcccd26a652d8ca73915c68dd47386815eef445b
+SIZE (KDE/Qt/5.15.2/kde-qtserialport-5.15.2p2.tar.xz) = 300200
diff --git a/databases/qt5-sql/Makefile b/databases/qt5-sql/Makefile
index 950da5757e3d..673754c7b302 100644
--- a/databases/qt5-sql/Makefile
+++ b/databases/qt5-sql/Makefile
@@ -1,13 +1,13 @@
PORTNAME= sql
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= databases
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt SQL database integration module
-USES= compiler:c++11-lang qmake:no_env qt-dist:5,base
+USES= compiler:c++11-lang perl5 qmake:no_env qt-dist:5,base
+USE_PERL5= extract
USE_QT= core qmake_build buildtools_build
HAS_CONFIGURE= yes
CONFIGURE_ARGS= -no-gui -no-xcb
diff --git a/databases/qt5-sql/distinfo b/databases/qt5-sql/distinfo
new file mode 100644
index 000000000000..bcdb973c77d3
--- /dev/null
+++ b/databases/qt5-sql/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423756
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/databases/qt5-sqldrivers-ibase/Makefile b/databases/qt5-sqldrivers-ibase/Makefile
index 10f0e65da56c..7c1ea8d32520 100644
--- a/databases/qt5-sqldrivers-ibase/Makefile
+++ b/databases/qt5-sqldrivers-ibase/Makefile
@@ -1,4 +1,4 @@
-PORTREVISION= 1
+PORTREVISION= 0
DB= IBase
DB_DESC= InterBase/Firebird
diff --git a/databases/qt5-sqldrivers-ibase/distinfo b/databases/qt5-sqldrivers-ibase/distinfo
new file mode 100644
index 000000000000..edd4b2c0b72c
--- /dev/null
+++ b/databases/qt5-sqldrivers-ibase/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423854
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/databases/qt5-sqldrivers-mysql/Makefile b/databases/qt5-sqldrivers-mysql/Makefile
index 04a43c5fb77d..28aecaf37530 100644
--- a/databases/qt5-sqldrivers-mysql/Makefile
+++ b/databases/qt5-sqldrivers-mysql/Makefile
@@ -1,4 +1,4 @@
-PORTREVISION= 1
+PORTREVISION= 0
DB= MYSQL
DB_DESC= MySQL
diff --git a/databases/qt5-sqldrivers-mysql/distinfo b/databases/qt5-sqldrivers-mysql/distinfo
new file mode 100644
index 000000000000..dd3005449d03
--- /dev/null
+++ b/databases/qt5-sqldrivers-mysql/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423852
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/databases/qt5-sqldrivers-odbc/distinfo b/databases/qt5-sqldrivers-odbc/distinfo
new file mode 100644
index 000000000000..b86d11580e62
--- /dev/null
+++ b/databases/qt5-sqldrivers-odbc/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423853
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/databases/qt5-sqldrivers-pgsql/distinfo b/databases/qt5-sqldrivers-pgsql/distinfo
new file mode 100644
index 000000000000..edd4b2c0b72c
--- /dev/null
+++ b/databases/qt5-sqldrivers-pgsql/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423854
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/databases/qt5-sqldrivers-sqlite2/distinfo b/databases/qt5-sqldrivers-sqlite2/distinfo
new file mode 100644
index 000000000000..742bb0954b08
--- /dev/null
+++ b/databases/qt5-sqldrivers-sqlite2/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423856
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/databases/qt5-sqldrivers-sqlite3/distinfo b/databases/qt5-sqldrivers-sqlite3/distinfo
new file mode 100644
index 000000000000..9e2135710150
--- /dev/null
+++ b/databases/qt5-sqldrivers-sqlite3/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423857
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/databases/qt5-sqldrivers-tds/distinfo b/databases/qt5-sqldrivers-tds/distinfo
new file mode 100644
index 000000000000..d9b36e06ab9c
--- /dev/null
+++ b/databases/qt5-sqldrivers-tds/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423858
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/devel/qt5-assistant/Makefile b/devel/qt5-assistant/Makefile
index 9738b62bd85e..fe9a167bb187 100644
--- a/devel/qt5-assistant/Makefile
+++ b/devel/qt5-assistant/Makefile
@@ -1,5 +1,5 @@
PORTNAME= assistant
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-assistant/distinfo b/devel/qt5-assistant/distinfo
new file mode 100644
index 000000000000..0d4531b45bb2
--- /dev/null
+++ b/devel/qt5-assistant/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423860
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/devel/qt5-buildtools/Makefile b/devel/qt5-buildtools/Makefile
index 0f7ad4d0a3be..e9264a322ef4 100644
--- a/devel/qt5-buildtools/Makefile
+++ b/devel/qt5-buildtools/Makefile
@@ -1,6 +1,5 @@
PORTNAME= buildtools
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
@@ -8,6 +7,7 @@ MAINTAINER= kde@FreeBSD.org
COMMENT= Qt build tools
USES= compiler:c++11-lang libtool perl5 qmake:no_env qt-dist:5,base
+USE_PERL5= extract
HAS_CONFIGURE= yes
CONFIGURE_ARGS= -no-gui -no-xcb
QT_BINARIES= yes
diff --git a/devel/qt5-buildtools/distinfo b/devel/qt5-buildtools/distinfo
new file mode 100644
index 000000000000..ad7fd12014dd
--- /dev/null
+++ b/devel/qt5-buildtools/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423861
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/devel/qt5-concurrent/Makefile b/devel/qt5-concurrent/Makefile
index 5cc46363ff2a..6f3a42df0736 100644
--- a/devel/qt5-concurrent/Makefile
+++ b/devel/qt5-concurrent/Makefile
@@ -1,13 +1,13 @@
PORTNAME= concurrent
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt multi-threading module
-USES= compiler:c++11-lang qmake:no_env qt-dist:5,base
+USES= compiler:c++11-lang perl5 qmake:no_env qt-dist:5,base
+USE_PERL5= extract
USE_QT= core qmake_build buildtools_build
HAS_CONFIGURE= yes
CONFIGURE_ARGS= -no-gui -no-xcb
diff --git a/devel/qt5-concurrent/distinfo b/devel/qt5-concurrent/distinfo
new file mode 100644
index 000000000000..5c3758be8f88
--- /dev/null
+++ b/devel/qt5-concurrent/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423862
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/devel/qt5-concurrent/files/patch-gcc11 b/devel/qt5-concurrent/files/patch-gcc11
deleted file mode 100644
index 3198f6ed38ca..000000000000
--- a/devel/qt5-concurrent/files/patch-gcc11
+++ /dev/null
@@ -1,15 +0,0 @@
-https://codereview.qt-project.org/c/qt/qtbase/+/339417
-
---- src/concurrent/qtconcurrentthreadengine.h.orig 2020-10-27 08:02:11 UTC
-+++ src/concurrent/qtconcurrentthreadengine.h
-@@ -247,8 +247,8 @@ template <>
- class ThreadEngineStarter<void> : public ThreadEngineStarterBase<void>
- {
- public:
-- ThreadEngineStarter<void>(ThreadEngine<void> *_threadEngine)
-- :ThreadEngineStarterBase<void>(_threadEngine) {}
-+ ThreadEngineStarter(ThreadEngine<void> *_threadEngine)
-+ : ThreadEngineStarterBase<void>(_threadEngine) {}
-
- void startBlocking()
- {
diff --git a/devel/qt5-core/Makefile b/devel/qt5-core/Makefile
index 846ea77ff07b..d2b938e1f768 100644
--- a/devel/qt5-core/Makefile
+++ b/devel/qt5-core/Makefile
@@ -1,6 +1,5 @@
PORTNAME= core
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 6
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
@@ -12,8 +11,9 @@ LIB_DEPENDS= libdouble-conversion.so:devel/double-conversion \
libpcre2-posix.so:devel/pcre2 \
libzstd.so:archivers/zstd
-USES= compiler:c++11-lang gnome qmake:no_env qt-dist:5,base
+USES= compiler:c++11-lang gnome perl5 qmake:no_env qt-dist:5,base
USE_GNOME= glib20
+USE_PERL5= extract
USE_QT= qmake_build buildtools_build
HAS_CONFIGURE= yes
# Disable (almost) everything to install minimal qconfig.h.
diff --git a/devel/qt5-core/distinfo b/devel/qt5-core/distinfo
new file mode 100644
index 000000000000..afc62138a969
--- /dev/null
+++ b/devel/qt5-core/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423864
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/devel/qt5-core/files/patch-src_corelib_io_qiodevice.cpp b/devel/qt5-core/files/patch-src_corelib_io_qiodevice.cpp
deleted file mode 100644
index 3a35ca2b1259..000000000000
--- a/devel/qt5-core/files/patch-src_corelib_io_qiodevice.cpp
+++ /dev/null
@@ -1,17 +0,0 @@
---- src/corelib/io/qiodevice.cpp.orig 2020-05-11 08:15:08 UTC
-+++ src/corelib/io/qiodevice.cpp
-@@ -1480,10 +1480,12 @@ QByteArray QIODevice::readLine(qint64 maxSize)
- } else
- readBytes = readLine(result.data(), result.size());
-
-- if (readBytes <= 0)
-+ if (readBytes <= 0) {
- result.clear();
-- else
-+ } else {
- result.resize(readBytes);
-+ result.squeeze();
-+ }
-
- return result;
- }
diff --git a/devel/qt5-dbus/Makefile b/devel/qt5-dbus/Makefile
index 47b0fa12f107..48334177fa16 100644
--- a/devel/qt5-dbus/Makefile
+++ b/devel/qt5-dbus/Makefile
@@ -1,6 +1,5 @@
PORTNAME= dbus
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
@@ -9,7 +8,8 @@ COMMENT= Qt D-Bus inter-process communication module
LIB_DEPENDS= libdbus-1.so:devel/dbus
-USES= compiler:c++11-lang qmake:no_env qt-dist:5,base
+USES= compiler:c++11-lang perl5 qmake:no_env qt-dist:5,base
+USE_PERL5= extract
USE_QT= core qmake_build buildtools_build
HAS_CONFIGURE= yes
CONFIGURE_ARGS= -no-gui -no-xcb
diff --git a/devel/qt5-dbus/distinfo b/devel/qt5-dbus/distinfo
new file mode 100644
index 000000000000..0e99e5287fd0
--- /dev/null
+++ b/devel/qt5-dbus/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423865
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/devel/qt5-designer/Makefile b/devel/qt5-designer/Makefile
index 6d2a3f163331..08ee9e3742cf 100644
--- a/devel/qt5-designer/Makefile
+++ b/devel/qt5-designer/Makefile
@@ -1,6 +1,5 @@
PORTNAME= designer
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-designer/distinfo b/devel/qt5-designer/distinfo
new file mode 100644
index 000000000000..3bf6e6575462
--- /dev/null
+++ b/devel/qt5-designer/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423866
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/devel/qt5-help/Makefile b/devel/qt5-help/Makefile
index c06d5b565895..b1c5f0c525ca 100644
--- a/devel/qt5-help/Makefile
+++ b/devel/qt5-help/Makefile
@@ -1,6 +1,5 @@
PORTNAME= help
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-help/distinfo b/devel/qt5-help/distinfo
new file mode 100644
index 000000000000..18887f18a435
--- /dev/null
+++ b/devel/qt5-help/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423867
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/devel/qt5-linguist/Makefile b/devel/qt5-linguist/Makefile
index 5b407debb3fe..6a8fc0357cf0 100644
--- a/devel/qt5-linguist/Makefile
+++ b/devel/qt5-linguist/Makefile
@@ -1,5 +1,5 @@
PORTNAME= linguist
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-linguist/distinfo b/devel/qt5-linguist/distinfo
new file mode 100644
index 000000000000..984afb95baa4
--- /dev/null
+++ b/devel/qt5-linguist/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423868
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/devel/qt5-linguisttools/Makefile b/devel/qt5-linguisttools/Makefile
index 0311af3064e6..6d2865306381 100644
--- a/devel/qt5-linguisttools/Makefile
+++ b/devel/qt5-linguisttools/Makefile
@@ -1,6 +1,5 @@
PORTNAME= linguisttools
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-linguisttools/distinfo b/devel/qt5-linguisttools/distinfo
new file mode 100644
index 000000000000..f1d1ebf9f91a
--- /dev/null
+++ b/devel/qt5-linguisttools/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423869
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/devel/qt5-location/Makefile b/devel/qt5-location/Makefile
index 159f88895ccb..1353a8619338 100644
--- a/devel/qt5-location/Makefile
+++ b/devel/qt5-location/Makefile
@@ -1,6 +1,5 @@
PORTNAME= location
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-location/distinfo b/devel/qt5-location/distinfo
new file mode 100644
index 000000000000..705ae54f3698
--- /dev/null
+++ b/devel/qt5-location/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423870
+SHA256 (KDE/Qt/5.15.2/kde-qtlocation-5.15.2p6.tar.xz) = 82bcf791ce0651b24c43a2875e629a1500f7a9a29378d49100ea5050cd2fa076
+SIZE (KDE/Qt/5.15.2/kde-qtlocation-5.15.2p6.tar.xz) = 4212420
diff --git a/devel/qt5-qdbus/Makefile b/devel/qt5-qdbus/Makefile
index 811103590a7f..7453bb6f64ee 100644
--- a/devel/qt5-qdbus/Makefile
+++ b/devel/qt5-qdbus/Makefile
@@ -1,6 +1,5 @@
PORTNAME= qdbus
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-qdbus/distinfo b/devel/qt5-qdbus/distinfo
new file mode 100644
index 000000000000..a9b350ab4e08
--- /dev/null
+++ b/devel/qt5-qdbus/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423871
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/devel/qt5-qdbusviewer/Makefile b/devel/qt5-qdbusviewer/Makefile
index 3f84dc4726ad..c2f155acb4dd 100644
--- a/devel/qt5-qdbusviewer/Makefile
+++ b/devel/qt5-qdbusviewer/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qdbusviewer
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-qdbusviewer/distinfo b/devel/qt5-qdbusviewer/distinfo
new file mode 100644
index 000000000000..551e04498568
--- /dev/null
+++ b/devel/qt5-qdbusviewer/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423872
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/devel/qt5-qdoc-data/Makefile b/devel/qt5-qdoc-data/Makefile
index 020dc9f6083d..ae92b05fa7ac 100644
--- a/devel/qt5-qdoc-data/Makefile
+++ b/devel/qt5-qdoc-data/Makefile
@@ -26,7 +26,6 @@ NO_ARCH= yes
NO_BUILD= yes
DESCR= ${.CURDIR:H:H}/devel/qt5/pkg-descr
-DISTINFO_FILE= ${.CURDIR:H:H}/devel/qt5/distinfo
do-install:
${MKDIR} ${STAGEDIR}${QT_DOCDIR} && \
diff --git a/devel/qt5-qdoc-data/distinfo b/devel/qt5-qdoc-data/distinfo
new file mode 100644
index 000000000000..69871b4e830c
--- /dev/null
+++ b/devel/qt5-qdoc-data/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639505201
+SHA256 (KDE/Qt/5.15.2/qtbase-everywhere-src-5.15.2.tar.xz) = 909fad2591ee367993a75d7e2ea50ad4db332f05e1c38dd7a5a274e156a4e0f8
+SIZE (KDE/Qt/5.15.2/qtbase-everywhere-src-5.15.2.tar.xz) = 50179672
diff --git a/devel/qt5-qdoc/Makefile b/devel/qt5-qdoc/Makefile
index 533643cf0830..f954b602e778 100644
--- a/devel/qt5-qdoc/Makefile
+++ b/devel/qt5-qdoc/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qdoc
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel textproc
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-qdoc/distinfo b/devel/qt5-qdoc/distinfo
new file mode 100644
index 000000000000..79fad251e6a4
--- /dev/null
+++ b/devel/qt5-qdoc/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423873
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/devel/qt5-qmake/Makefile b/devel/qt5-qmake/Makefile
index c73de40c0aef..147f7b17cb93 100644
--- a/devel/qt5-qmake/Makefile
+++ b/devel/qt5-qmake/Makefile
@@ -1,13 +1,12 @@
PORTNAME= qmake
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt Makefile generator
-USES= compiler:c++11-lib gmake pkgconfig \
+USES= compiler:c++11-lib gmake perl5 pkgconfig \
python:build qmake:no_env qt-dist:5,base shebangfix
SHEBANG_FILES= util/harfbuzz/update-harfbuzz \
util/unicode/x11/makeencodings \
@@ -15,6 +14,7 @@ SHEBANG_FILES= util/harfbuzz/update-harfbuzz \
mkspecs/features/data/mac/objc_namespace.sh \
mkspecs/features/uikit/devices.py \
mkspecs/features/uikit/device_destinations.sh
+USE_PERL5= extract
REINPLACE_ARGS= -i ""
HAS_CONFIGURE= yes
diff --git a/devel/qt5-qmake/distinfo b/devel/qt5-qmake/distinfo
new file mode 100644
index 000000000000..526e93f5af27
--- /dev/null
+++ b/devel/qt5-qmake/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639421182
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/devel/qt5-remoteobjects/Makefile b/devel/qt5-remoteobjects/Makefile
index c1a022298f0c..b53a0437ac90 100644
--- a/devel/qt5-remoteobjects/Makefile
+++ b/devel/qt5-remoteobjects/Makefile
@@ -1,6 +1,5 @@
PORTNAME= remoteobjects
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-remoteobjects/distinfo b/devel/qt5-remoteobjects/distinfo
new file mode 100644
index 000000000000..640350bfd20f
--- /dev/null
+++ b/devel/qt5-remoteobjects/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423876
+SHA256 (KDE/Qt/5.15.2/kde-qtremoteobjects-5.15.2p3.tar.xz) = f1c2d5d2346fdac017b2a40be80468d9ed50c50bfbdefc7e57f88ea1d111e6dd
+SIZE (KDE/Qt/5.15.2/kde-qtremoteobjects-5.15.2p3.tar.xz) = 350464
diff --git a/devel/qt5-script/Makefile b/devel/qt5-script/Makefile
index 02c9fbe74ce9..20419d33b32a 100644
--- a/devel/qt5-script/Makefile
+++ b/devel/qt5-script/Makefile
@@ -1,13 +1,13 @@
PORTNAME= script
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt 4-compatible scripting module
-USES= compiler:c++11-lang qmake qt-dist:5,script
+USES= compiler:c++11-lang perl5 qmake qt-dist:5,script
+USE_PERL5= extract
USE_QT= core buildtools_build
# Keep make(1) from descending into src/script/obj/ (qmake:outsource
# doesn't work).
diff --git a/devel/qt5-script/distinfo b/devel/qt5-script/distinfo
new file mode 100644
index 000000000000..e1fc1ff6c2fc
--- /dev/null
+++ b/devel/qt5-script/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423877
+SHA256 (KDE/Qt/5.15.2/kde-qtscript-5.15.2p4.tar.xz) = 66671e9516df5b099cef4f0440db97d96d07990665c9311321ccfaaf0687b129
+SIZE (KDE/Qt/5.15.2/kde-qtscript-5.15.2p4.tar.xz) = 2623560
diff --git a/devel/qt5-scripttools/Makefile b/devel/qt5-scripttools/Makefile
index 4090a424224b..0f03a044087a 100644
--- a/devel/qt5-scripttools/Makefile
+++ b/devel/qt5-scripttools/Makefile
@@ -1,6 +1,5 @@
PORTNAME= scripttools
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-scripttools/distinfo b/devel/qt5-scripttools/distinfo
new file mode 100644
index 000000000000..ac9463e8ab1d
--- /dev/null
+++ b/devel/qt5-scripttools/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423878
+SHA256 (KDE/Qt/5.15.2/kde-qtscript-5.15.2p4.tar.xz) = 66671e9516df5b099cef4f0440db97d96d07990665c9311321ccfaaf0687b129
+SIZE (KDE/Qt/5.15.2/kde-qtscript-5.15.2p4.tar.xz) = 2623560
diff --git a/devel/qt5-scxml/Makefile b/devel/qt5-scxml/Makefile
index 1fe3a138ad78..68027aa886bf 100644
--- a/devel/qt5-scxml/Makefile
+++ b/devel/qt5-scxml/Makefile
@@ -1,6 +1,5 @@
PORTNAME= scxml
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-scxml/distinfo b/devel/qt5-scxml/distinfo
new file mode 100644
index 000000000000..00cf9c478371
--- /dev/null
+++ b/devel/qt5-scxml/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423879
+SHA256 (KDE/Qt/5.15.2/kde-qtscxml-5.15.2p1.tar.xz) = e99d34a972c0bf84ad692edac47b4928e89053d692950a153535c7fc17011f4b
+SIZE (KDE/Qt/5.15.2/kde-qtscxml-5.15.2p1.tar.xz) = 408532
diff --git a/devel/qt5-testlib/Makefile b/devel/qt5-testlib/Makefile
index d3e352b97636..e41d1fb4eb9f 100644
--- a/devel/qt5-testlib/Makefile
+++ b/devel/qt5-testlib/Makefile
@@ -1,13 +1,13 @@
PORTNAME= testlib
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt unit testing module
-USES= compiler:c++11-lang qmake:no_env qt-dist:5,base
+USES= compiler:c++11-lang perl5 qmake:no_env qt-dist:5,base
+USE_PERL5= extract
USE_QT= core qmake_build buildtools_build
HAS_CONFIGURE= yes
CONFIGURE_ARGS= -no-gui -no-xcb
diff --git a/devel/qt5-testlib/distinfo b/devel/qt5-testlib/distinfo
new file mode 100644
index 000000000000..38f97651ea3c
--- /dev/null
+++ b/devel/qt5-testlib/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423880
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/devel/qt5-uitools/Makefile b/devel/qt5-uitools/Makefile
index ae9fc5cd928c..f461ff941f07 100644
--- a/devel/qt5-uitools/Makefile
+++ b/devel/qt5-uitools/Makefile
@@ -1,6 +1,5 @@
PORTNAME= uitools
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= devel
PKGNAMEPREFIX= qt5-
diff --git a/devel/qt5-uitools/distinfo b/devel/qt5-uitools/distinfo
new file mode 100644
index 000000000000..74e7ddfd2617
--- /dev/null
+++ b/devel/qt5-uitools/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423881
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/devel/qt5/Makefile.sqldrivers b/devel/qt5/Makefile.sqldrivers
index 72f77fa9bc1d..b5b2ec9a5429 100644
--- a/devel/qt5/Makefile.sqldrivers
+++ b/devel/qt5/Makefile.sqldrivers
@@ -1,12 +1,13 @@
PORTNAME?= ${DB:tl}
-DISTVERSION?= ${QT5_VERSION}
+PORTVERSION?= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES?= databases
PKGNAMEPREFIX?= qt5-sqldrivers-
MAINTAINER?= kde@FreeBSD.org
COMMENT?= Qt ${DB_DESC} database plugin
-USES+= compiler:c++11-lang qmake:no_env qt-dist:5,base
+USES+= compiler:c++11-lang perl5 qmake:no_env qt-dist:5,base
+USE_PERL5+= extract
USE_QT+= core sql qmake_build buildtools_build
HAS_CONFIGURE= yes
CONFIGURE_ARGS+=-no-gui -no-xcb
diff --git a/devel/qt5/distinfo b/devel/qt5/distinfo
index d7bbf5673fe8..eb6bfbef0c6c 100644
--- a/devel/qt5/distinfo
+++ b/devel/qt5/distinfo
@@ -1,85 +1 @@
-TIMESTAMP = 1605899522
-SHA256 (KDE/Qt/5.15.2/qt3d-everywhere-src-5.15.2.tar.xz) = 03ed6a48c813c75296c19f5d721184ab168280b69d2656cf16f877d3d4c55c1d
-SIZE (KDE/Qt/5.15.2/qt3d-everywhere-src-5.15.2.tar.xz) = 81925416
-SHA256 (KDE/Qt/5.15.2/qtactiveqt-everywhere-src-5.15.2.tar.xz) = 868161fee0876d17079cd5bed58d1667bf19ffd0018cbe515129f11510ad2a5c
-SIZE (KDE/Qt/5.15.2/qtactiveqt-everywhere-src-5.15.2.tar.xz) = 268380
-SHA256 (KDE/Qt/5.15.2/qtandroidextras-everywhere-src-5.15.2.tar.xz) = 5813278690d89a9c232eccf697fc280034de6f9f02a7c40d95ad5fcf8ac8dabd
-SIZE (KDE/Qt/5.15.2/qtandroidextras-everywhere-src-5.15.2.tar.xz) = 276344
-SHA256 (KDE/Qt/5.15.2/qtbase-everywhere-src-5.15.2.tar.xz) = 909fad2591ee367993a75d7e2ea50ad4db332f05e1c38dd7a5a274e156a4e0f8
-SIZE (KDE/Qt/5.15.2/qtbase-everywhere-src-5.15.2.tar.xz) = 50179672
-SHA256 (KDE/Qt/5.15.2/qtcharts-everywhere-src-5.15.2.tar.xz) = e0750e4195bd8a8b9758ab4d98d437edbe273cd3d289dd6a8f325df6d13f3d11
-SIZE (KDE/Qt/5.15.2/qtcharts-everywhere-src-5.15.2.tar.xz) = 4251992
-SHA256 (KDE/Qt/5.15.2/qtconnectivity-everywhere-src-5.15.2.tar.xz) = 0380327871f76103e5b8c2a305988d76d352b6a982b3e7b3bc3cdc184c64bfa0
-SIZE (KDE/Qt/5.15.2/qtconnectivity-everywhere-src-5.15.2.tar.xz) = 2815492
-SHA256 (KDE/Qt/5.15.2/qtdatavis3d-everywhere-src-5.15.2.tar.xz) = 226a6575d573ad78aca459709722c496c23aee526aa0c38eb7c93b0bea1eb6fd
-SIZE (KDE/Qt/5.15.2/qtdatavis3d-everywhere-src-5.15.2.tar.xz) = 5191436
-SHA256 (KDE/Qt/5.15.2/qtdeclarative-everywhere-src-5.15.2.tar.xz) = c600d09716940f75d684f61c5bdaced797f623a86db1627da599027f6c635651
-SIZE (KDE/Qt/5.15.2/qtdeclarative-everywhere-src-5.15.2.tar.xz) = 21559880
-SHA256 (KDE/Qt/5.15.2/qtdoc-everywhere-src-5.15.2.tar.xz) = a47809f00f1bd690ca4e699cb32ffe7717d43da84e0167d1f562210da7714ce4
-SIZE (KDE/Qt/5.15.2/qtdoc-everywhere-src-5.15.2.tar.xz) = 5746492
-SHA256 (KDE/Qt/5.15.2/qtgamepad-everywhere-src-5.15.2.tar.xz) = c77611f7898326d69176ad67a9b886f617cdedc368ec29f223d63537d25b075c
-SIZE (KDE/Qt/5.15.2/qtgamepad-everywhere-src-5.15.2.tar.xz) = 387084
-SHA256 (KDE/Qt/5.15.2/qtgraphicaleffects-everywhere-src-5.15.2.tar.xz) = ec8d67f64967d5046410490b549c576f9b9e8b47ec68594ae84aa8870173dfe4
-SIZE (KDE/Qt/5.15.2/qtgraphicaleffects-everywhere-src-5.15.2.tar.xz) = 14040900
-SHA256 (KDE/Qt/5.15.2/qtimageformats-everywhere-src-5.15.2.tar.xz) = bf8285c7ce04284527ab823ddc7cf48a1bb79131db3a7127342167f4814253d7
-SIZE (KDE/Qt/5.15.2/qtimageformats-everywhere-src-5.15.2.tar.xz) = 1806740
-SHA256 (KDE/Qt/5.15.2/qtlocation-everywhere-src-5.15.2.tar.xz) = 984fcb09e108df49a8dac35d5ce6dffc49caafd2acb1c2f8a5173a6a21f392a0
-SIZE (KDE/Qt/5.15.2/qtlocation-everywhere-src-5.15.2.tar.xz) = 6556764
-SHA256 (KDE/Qt/5.15.2/qtlottie-everywhere-src-5.15.2.tar.xz) = cec6095ab8f714e609d2ad3ea8c4fd819461ce8793adc42abe37d0f6dc432517
-SIZE (KDE/Qt/5.15.2/qtlottie-everywhere-src-5.15.2.tar.xz) = 82424
-SHA256 (KDE/Qt/5.15.2/qtmacextras-everywhere-src-5.15.2.tar.xz) = 6959b0f2cec71cd66800f36cab797430860e55fa33c9c23698d6a08fc2b8776e
-SIZE (KDE/Qt/5.15.2/qtmacextras-everywhere-src-5.15.2.tar.xz) = 69484
-SHA256 (KDE/Qt/5.15.2/qtmultimedia-everywhere-src-5.15.2.tar.xz) = 0c3758810e5131aabcf76e4965e4c18b8911af54d9edd9305d2a8278d8346df5
-SIZE (KDE/Qt/5.15.2/qtmultimedia-everywhere-src-5.15.2.tar.xz) = 3828172
-SHA256 (KDE/Qt/5.15.2/qtnetworkauth-everywhere-src-5.15.2.tar.xz) = fcc2ec42faa68561efa8f00cd72e662fbc06563ebc6de1dc42d96bb2997acd85
-SIZE (KDE/Qt/5.15.2/qtnetworkauth-everywhere-src-5.15.2.tar.xz) = 141688
-SHA256 (KDE/Qt/5.15.2/qtpurchasing-everywhere-src-5.15.2.tar.xz) = 87120d319ff2f8106e78971f7296d72a66dfe91e763d213199aea55046e93227
-SIZE (KDE/Qt/5.15.2/qtpurchasing-everywhere-src-5.15.2.tar.xz) = 208804
-SHA256 (KDE/Qt/5.15.2/qtquick3d-everywhere-src-5.15.2.tar.xz) = 5b0546323365ce34e4716f22f305ebb4902e222c1a0910b65ee448443c2f94bb
-SIZE (KDE/Qt/5.15.2/qtquick3d-everywhere-src-5.15.2.tar.xz) = 55767288
-SHA256 (KDE/Qt/5.15.2/qtquickcontrols-everywhere-src-5.15.2.tar.xz) = c393fb7384b1f047f10e91a6832cf3e6a4c2a41408b8cb2d05af2283e8549fb5
-SIZE (KDE/Qt/5.15.2/qtquickcontrols-everywhere-src-5.15.2.tar.xz) = 5982344
-SHA256 (KDE/Qt/5.15.2/qtquickcontrols2-everywhere-src-5.15.2.tar.xz) = 671b6ce5f4b8ecc94db622d5d5fb29ef4ff92819be08e5ea55bfcab579de8919
-SIZE (KDE/Qt/5.15.2/qtquickcontrols2-everywhere-src-5.15.2.tar.xz) = 8284692
-SHA256 (KDE/Qt/5.15.2/qtquicktimeline-everywhere-src-5.15.2.tar.xz) = b9c247227607437acec7c7dd18ad46179d20369c9d22bdb1e9fc128dfb832a28
-SIZE (KDE/Qt/5.15.2/qtquicktimeline-everywhere-src-5.15.2.tar.xz) = 102624
-SHA256 (KDE/Qt/5.15.2/qtremoteobjects-everywhere-src-5.15.2.tar.xz) = 6781b6bc90888254ea77ce812736dac00c67fa4eeb3095f5cd65e4b9c15dcfc2
-SIZE (KDE/Qt/5.15.2/qtremoteobjects-everywhere-src-5.15.2.tar.xz) = 374740
-SHA256 (KDE/Qt/5.15.2/qtscript-everywhere-src-5.15.2.tar.xz) = a299715369afbd1caa4d7fa2875d442eab91adcaacafce54a36922442624673e
-SIZE (KDE/Qt/5.15.2/qtscript-everywhere-src-5.15.2.tar.xz) = 2663016
-SHA256 (KDE/Qt/5.15.2/qtscxml-everywhere-src-5.15.2.tar.xz) = 60b9590b9a41c60cee7b8a8c8410ee4625f0389c1ff8d79883ec5a985638a7dc
-SIZE (KDE/Qt/5.15.2/qtscxml-everywhere-src-5.15.2.tar.xz) = 434204
-SHA256 (KDE/Qt/5.15.2/qtsensors-everywhere-src-5.15.2.tar.xz) = 3f0011f9e9942cad119146b54d960438f4568a22a274cdad4fae06bb4e0e4839
-SIZE (KDE/Qt/5.15.2/qtsensors-everywhere-src-5.15.2.tar.xz) = 2056944
-SHA256 (KDE/Qt/5.15.2/qtserialbus-everywhere-src-5.15.2.tar.xz) = aeeb7e5c0d3f8503215b22e1a84c0002ca67cf63862f6e3c6ef44a67ca31bd88
-SIZE (KDE/Qt/5.15.2/qtserialbus-everywhere-src-5.15.2.tar.xz) = 356360
-SHA256 (KDE/Qt/5.15.2/qtserialport-everywhere-src-5.15.2.tar.xz) = 59c559d748417306bc1b2cf2315c1e63eed011ace38ad92946af71f23e2ef79d
-SIZE (KDE/Qt/5.15.2/qtserialport-everywhere-src-5.15.2.tar.xz) = 321496
-SHA256 (KDE/Qt/5.15.2/qtspeech-everywhere-src-5.15.2.tar.xz) = c810fb9eecb08026434422a32e79269627f3bc2941be199e86ec410bdfe883f5
-SIZE (KDE/Qt/5.15.2/qtspeech-everywhere-src-5.15.2.tar.xz) = 101940
-SHA256 (KDE/Qt/5.15.2/qtsvg-everywhere-src-5.15.2.tar.xz) = 8bc3c2c1bc2671e9c67d4205589a8309b57903721ad14c60ea21a5d06acb585e
-SIZE (KDE/Qt/5.15.2/qtsvg-everywhere-src-5.15.2.tar.xz) = 1886268
-SHA256 (KDE/Qt/5.15.2/qttools-everywhere-src-5.15.2.tar.xz) = c189d0ce1ff7c739db9a3ace52ac3e24cb8fd6dbf234e49f075249b38f43c1cc
-SIZE (KDE/Qt/5.15.2/qttools-everywhere-src-5.15.2.tar.xz) = 8894728
-SHA256 (KDE/Qt/5.15.2/qttranslations-everywhere-src-5.15.2.tar.xz) = d5788e86257b21d5323f1efd94376a213e091d1e5e03b45a95dd052b5f570db8
-SIZE (KDE/Qt/5.15.2/qttranslations-everywhere-src-5.15.2.tar.xz) = 1419504
-SHA256 (KDE/Qt/5.15.2/qtvirtualkeyboard-everywhere-src-5.15.2.tar.xz) = 9a3193913be30f09a896e3b8c2f9696d2e9b3f88a63ae9ca8c97a2786b68cf55
-SIZE (KDE/Qt/5.15.2/qtvirtualkeyboard-everywhere-src-5.15.2.tar.xz) = 10955076
-SHA256 (KDE/Qt/5.15.2/qtwayland-everywhere-src-5.15.2.tar.xz) = 193732229ff816f3aaab9a5e2f6bed71ddddbf1988ce003fe8dd84a92ce9aeb5
-SIZE (KDE/Qt/5.15.2/qtwayland-everywhere-src-5.15.2.tar.xz) = 564884
-SHA256 (KDE/Qt/5.15.2/qtwebchannel-everywhere-src-5.15.2.tar.xz) = 127fe79c43b386713f151ed7d411cd81e45e29f9c955584f29736f78c9303ec1
-SIZE (KDE/Qt/5.15.2/qtwebchannel-everywhere-src-5.15.2.tar.xz) = 209208
-SHA256 (KDE/Qt/5.15.2/qtwebengine-everywhere-src-5.15.2.tar.xz) = c8afca0e43d84f7bd595436fbe4d13a5bbdb81ec5104d605085d07545b6f91e0
-SIZE (KDE/Qt/5.15.2/qtwebengine-everywhere-src-5.15.2.tar.xz) = 280142544
-SHA256 (KDE/Qt/5.15.2/qtwebglplugin-everywhere-src-5.15.2.tar.xz) = 81e782b517ed29e10bea1aa90c9f59274c98a910f2c8b105fa78368a36b41446
-SIZE (KDE/Qt/5.15.2/qtwebglplugin-everywhere-src-5.15.2.tar.xz) = 74144
-SHA256 (KDE/Qt/5.15.2/qtwebsockets-everywhere-src-5.15.2.tar.xz) = a0b42d85dd34ff6e2d23400e02f83d8b85bcd80e60efd1521d12d9625d4a233f
-SIZE (KDE/Qt/5.15.2/qtwebsockets-everywhere-src-5.15.2.tar.xz) = 259000
-SHA256 (KDE/Qt/5.15.2/qtwebview-everywhere-src-5.15.2.tar.xz) = be9f46167e4977ead5ef5ecf883fdb812a4120f2436383583792f65557e481e7
-SIZE (KDE/Qt/5.15.2/qtwebview-everywhere-src-5.15.2.tar.xz) = 133428
-SHA256 (KDE/Qt/5.15.2/qtwinextras-everywhere-src-5.15.2.tar.xz) = 65b8272005dec00791ab7d81ab266d1e3313a3bbd8e54e546d984cf4c4ab550e
-SIZE (KDE/Qt/5.15.2/qtwinextras-everywhere-src-5.15.2.tar.xz) = 763948
-SHA256 (KDE/Qt/5.15.2/qtx11extras-everywhere-src-5.15.2.tar.xz) = 7014702ee9a644a5a93da70848ac47c18851d4f8ed622b29a72eed9282fc6e3e
-SIZE (KDE/Qt/5.15.2/qtx11extras-everywhere-src-5.15.2.tar.xz) = 143972
-SHA256 (KDE/Qt/5.15.2/qtxmlpatterns-everywhere-src-5.15.2.tar.xz) = 76ea2162a7c349188d7e7e4f6c77b78e8a205494c90fee3cea3487a1ae2cf2fa
-SIZE (KDE/Qt/5.15.2/qtxmlpatterns-everywhere-src-5.15.2.tar.xz) = 5209380
+TIMESTAMP = 1639414463
diff --git a/devel/qt5/files/create_kde-qt_release.sh b/devel/qt5/files/create_kde-qt_release.sh
new file mode 100644
index 000000000000..8624cd456ac8
--- /dev/null
+++ b/devel/qt5/files/create_kde-qt_release.sh
@@ -0,0 +1,54 @@
+#!/bin/sh
+
+# Creates and updates a git checkout in ${BASE_DIRECTORY}
+# for the given KDE Qt repository ${PROJECT}.
+# After that, a new distfile for the ports tree is created.
+
+DIST="$1"
+PROJECT=qt"${DIST}"
+BASE_DIRECTORY="$2"
+
+# Remote KDE git repository
+REPO="https://invent.kde.org/qt/qt/${PROJECT}.git"
+# Local checkout
+CHECKOUT="${BASE_DIRECTORY}/${PROJECT}"
+
+# Version of Qt we want
+VERSION=5.15.2
+# KDE-Qt branch
+BRANCH=kde/5.15
+
+# Make sure we can use ${BASE_DIRECTORY}
+if [ ! -d "${BASE_DIRECTORY}" ] || [ ! -w "${BASE_DIRECTORY}" ] ; then
+ echo "Directory '${BASE_DIRECTORY}' does not exist"
+ exit 1
+fi
+
+# Init a new git checkout if it is missing
+if [ ! -d "${CHECKOUT}" ] ; then
+ git -C "${BASE_DIRECTORY}" clone "${REPO}"
+fi
+
+# Update the checkout of the required branch
+git -C "${CHECKOUT}" checkout "${BRANCH}" && git -C "${CHECKOUT}" pull --ff-only --rebase --autostash
+if [ $? -ne 0 ] ; then
+ echo "Failed to update ${CHECKOUT}"
+ exit 1
+fi
+
+# Count number of patches added by KDE
+PATCH_COUNT=$(git -C ${CHECKOUT} rev-list --count origin/${VERSION}..origin/${BRANCH})
+
+# Setup information for the distfile
+DISTNAME="kde-${PROJECT}-${VERSION}p${PATCH_COUNT}"
+DISTFILE="${BASE_DIRECTORY}/${DISTNAME}.tar.xz"
+
+# Tar and compress distfile
+git -C ${CHECKOUT} archive --format=tar --prefix="${DISTNAME}/" HEAD | xz > "${DISTFILE}"
+if [ $? -ne 0 ] ; then
+ echo "Failed to create tarball ${DISTFILE}"
+ exit 1
+fi
+
+# Printout information required in qt-dist.mk
+echo -e "Distfile:\t${DISTFILE}\n_KDE_${DIST}=\t${PATCH_COUNT}"
diff --git a/devel/qt5/files/extrapatch-sync.profiles b/devel/qt5/files/extrapatch-sync.profiles
new file mode 100644
index 000000000000..b1fb62520247
--- /dev/null
+++ b/devel/qt5/files/extrapatch-sync.profiles
@@ -0,0 +1,12 @@
+--- sync.profile.orig 2021-12-13 20:02:18.219921000 +0100
++++ sync.profile 2021-12-13 20:03:45.430880000 +0100
+@@ -37,9 +37,6 @@
+ "QtZlib" => "!>$basedir/src/corelib;$basedir/src/3rdparty/zlib",
+ "QtOpenGLExtensions" => "$basedir/src/openglextensions",
+ "QtEglFSDeviceIntegration" => "$basedir/src/plugins/platforms/eglfs",
+- "QtMockPlugins1" => "$basedir/tests/auto/cmake/mockplugins/mockplugins1",
+- "QtMockPlugins2" => "$basedir/tests/auto/cmake/mockplugins/mockplugins2",
+- "QtMockPlugins3" => "$basedir/tests/auto/cmake/mockplugins/mockplugins3",
+ );
+ %moduleheaders = ( # restrict the module headers to those found in relative path
+ "QtEglFSDeviceIntegration" => "api",
diff --git a/graphics/qt5-3d/Makefile b/graphics/qt5-3d/Makefile
index cbcda61880d6..84dcf5ff7e6f 100644
--- a/graphics/qt5-3d/Makefile
+++ b/graphics/qt5-3d/Makefile
@@ -1,6 +1,5 @@
PORTNAME= 3d
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 4
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= graphics
PKGNAMEPREFIX= qt5-
@@ -9,7 +8,8 @@ COMMENT= Qt3D module
LIB_DEPENDS= libassimp.so:multimedia/assimp
-USES= compiler:c++11-lang pkgconfig qmake:norecursive qt-dist:5,3d
+USES= compiler:c++11-lang perl5 pkgconfig qmake:norecursive qt-dist:5,3d
+USE_PERL5= extract
USE_QT= concurrent core declarative gui network buildtools_build
OPTIONS_DEFINE_amd64= AVX
diff --git a/graphics/qt5-3d/distinfo b/graphics/qt5-3d/distinfo
new file mode 100644
index 000000000000..01c40a8f40b0
--- /dev/null
+++ b/graphics/qt5-3d/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639431403
+SHA256 (KDE/Qt/5.15.2/kde-qt3d-5.15.2p39.tar.xz) = 9a3f92cb460eb5e36d80624a177cf073a56ae189aed7ac615e8940286c56c8b8
+SIZE (KDE/Qt/5.15.2/kde-qt3d-5.15.2p39.tar.xz) = 81860360
diff --git a/graphics/qt5-3d/pkg-plist b/graphics/qt5-3d/pkg-plist
index 029e54a305c0..ec2c0e8ec825 100644
--- a/graphics/qt5-3d/pkg-plist
+++ b/graphics/qt5-3d/pkg-plist
@@ -1185,6 +1185,7 @@
%%QT_CMAKEDIR%%/Qt53DQuickScene2D/Qt53DQuickScene2DConfigVersion.cmake
%%QT_CMAKEDIR%%/Qt53DRender/Qt53DRenderConfig.cmake
%%QT_CMAKEDIR%%/Qt53DRender/Qt53DRenderConfigVersion.cmake
+%%QT_CMAKEDIR%%/Qt53DRender/Qt53DRender_AssimpSceneImportPlugin.cmake
%%QT_CMAKEDIR%%/Qt53DRender/Qt53DRender_DefaultGeometryLoaderPlugin.cmake
%%QT_CMAKEDIR%%/Qt53DRender/Qt53DRender_GLTFGeometryLoaderPlugin.cmake
%%QT_CMAKEDIR%%/Qt53DRender/Qt53DRender_GLTFSceneExportPlugin.cmake
@@ -1297,6 +1298,8 @@
%%DEBUG%%%%QT_PLUGINDIR%%/renderers/libopenglrenderer.so.debug
%%QT_PLUGINDIR%%/renderplugins/libscene2d.so
%%DEBUG%%%%QT_PLUGINDIR%%/renderplugins/libscene2d.so.debug
+%%QT_PLUGINDIR%%/sceneparsers/libassimpsceneimport.so
+%%DEBUG%%%%QT_PLUGINDIR%%/sceneparsers/libassimpsceneimport.so.debug
%%QT_PLUGINDIR%%/sceneparsers/libgltfsceneexport.so
%%DEBUG%%%%QT_PLUGINDIR%%/sceneparsers/libgltfsceneexport.so.debug
%%QT_PLUGINDIR%%/sceneparsers/libgltfsceneimport.so
diff --git a/graphics/qt5-graphicaleffects/Makefile b/graphics/qt5-graphicaleffects/Makefile
index a384cca90b2e..8da4ad88ab9a 100644
--- a/graphics/qt5-graphicaleffects/Makefile
+++ b/graphics/qt5-graphicaleffects/Makefile
@@ -1,5 +1,5 @@
PORTNAME= graphicaleffects
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= graphics
PKGNAMEPREFIX= qt5-
diff --git a/graphics/qt5-graphicaleffects/distinfo b/graphics/qt5-graphicaleffects/distinfo
new file mode 100644
index 000000000000..928ff72ea78b
--- /dev/null
+++ b/graphics/qt5-graphicaleffects/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423883
+SHA256 (KDE/Qt/5.15.2/kde-qtgraphicaleffects-5.15.2p2.tar.xz) = 36786c7aaa7e0418a6c5c45771821c5b037c42aadcba332151b41a0dd68a71c1
+SIZE (KDE/Qt/5.15.2/kde-qtgraphicaleffects-5.15.2p2.tar.xz) = 14019160
diff --git a/graphics/qt5-imageformats/Makefile b/graphics/qt5-imageformats/Makefile
index ed0695ba1f7d..f341aee8eaf5 100644
--- a/graphics/qt5-imageformats/Makefile
+++ b/graphics/qt5-imageformats/Makefile
@@ -1,5 +1,5 @@
PORTNAME= imageformats
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= graphics
PKGNAMEPREFIX= qt5-
diff --git a/graphics/qt5-imageformats/distinfo b/graphics/qt5-imageformats/distinfo
new file mode 100644
index 000000000000..d693ee9069a1
--- /dev/null
+++ b/graphics/qt5-imageformats/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423884
+SHA256 (KDE/Qt/5.15.2/kde-qtimageformats-5.15.2p3.tar.xz) = a55d3cbd1f51550d1c8ed3924567e095e88c7a323793d1978803350e3223549e
+SIZE (KDE/Qt/5.15.2/kde-qtimageformats-5.15.2p3.tar.xz) = 1788056
diff --git a/graphics/qt5-opengl/Makefile b/graphics/qt5-opengl/Makefile
index c681e221d04b..5194184c2245 100644
--- a/graphics/qt5-opengl/Makefile
+++ b/graphics/qt5-opengl/Makefile
@@ -1,14 +1,14 @@
PORTNAME= opengl
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= graphics
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt 5-compatible OpenGL support module
-USES= compiler:c++11-lang gl qmake:no_env qt-dist:5,base
+USES= compiler:c++11-lang gl perl5 qmake:no_env qt-dist:5,base
USE_GL= gl
+USE_PERL5= extract
USE_QT= core gui widgets qmake_build buildtools_build
HAS_CONFIGURE= yes
diff --git a/graphics/qt5-opengl/distinfo b/graphics/qt5-opengl/distinfo
new file mode 100644
index 000000000000..0e177b2b97d3
--- /dev/null
+++ b/graphics/qt5-opengl/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423885
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/graphics/qt5-pixeltool/Makefile b/graphics/qt5-pixeltool/Makefile
index 0dd0f82af908..8c8c280adb74 100644
--- a/graphics/qt5-pixeltool/Makefile
+++ b/graphics/qt5-pixeltool/Makefile
@@ -1,5 +1,5 @@
PORTNAME= pixeltool
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= graphics
PKGNAMEPREFIX= qt5-
diff --git a/graphics/qt5-pixeltool/distinfo b/graphics/qt5-pixeltool/distinfo
new file mode 100644
index 000000000000..266df2e5461c
--- /dev/null
+++ b/graphics/qt5-pixeltool/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423887
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/graphics/qt5-svg/Makefile b/graphics/qt5-svg/Makefile
index 6dcc1b38803e..a30943019569 100644
--- a/graphics/qt5-svg/Makefile
+++ b/graphics/qt5-svg/Makefile
@@ -1,6 +1,5 @@
PORTNAME= svg
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= graphics
PKGNAMEPREFIX= qt5-
diff --git a/graphics/qt5-svg/distinfo b/graphics/qt5-svg/distinfo
new file mode 100644
index 000000000000..c81459068f62
--- /dev/null
+++ b/graphics/qt5-svg/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423888
+SHA256 (KDE/Qt/5.15.2/kde-qtsvg-5.15.2p13.tar.xz) = 665a35b4916d9406c221709d11529dc5bbeed6b674abd1c99cb48db1ad205d6c
+SIZE (KDE/Qt/5.15.2/kde-qtsvg-5.15.2p13.tar.xz) = 1864320
diff --git a/graphics/qt5-wayland/Makefile b/graphics/qt5-wayland/Makefile
index 7ee0e16dc648..a037689f5659 100644
--- a/graphics/qt5-wayland/Makefile
+++ b/graphics/qt5-wayland/Makefile
@@ -1,6 +1,5 @@
PORTNAME= wayland
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 3
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= graphics
PKGNAMEPREFIX= qt5-
diff --git a/graphics/qt5-wayland/distinfo b/graphics/qt5-wayland/distinfo
new file mode 100644
index 000000000000..a5cfd67bc6b4
--- /dev/null
+++ b/graphics/qt5-wayland/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423889
+SHA256 (KDE/Qt/5.15.2/kde-qtwayland-5.15.2p37.tar.xz) = de116b90858923bd96e6fa541170dbfb208c845263a3301e861086a3b93f5467
+SIZE (KDE/Qt/5.15.2/kde-qtwayland-5.15.2p37.tar.xz) = 533864
diff --git a/misc/qt5-doc/Makefile b/misc/qt5-doc/Makefile
index a3ec0516fb5a..35785d677004 100644
--- a/misc/qt5-doc/Makefile
+++ b/misc/qt5-doc/Makefile
@@ -8,7 +8,7 @@
QT5_VERSION= 5.12.2
PORTNAME= doc
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= misc
MASTER_SITES= QT/online/qtsdkrepository/linux_x64/desktop/qt5_${QT5_VERSION:S/.//g}_src_doc_examples/qt.qt5.${QT5_VERSION:S/.//g}.doc/
PKGNAMEPREFIX= qt5-
diff --git a/misc/qt5-examples/Makefile b/misc/qt5-examples/Makefile
index bc6e0d3b92c2..940fe5715eb3 100644
--- a/misc/qt5-examples/Makefile
+++ b/misc/qt5-examples/Makefile
@@ -1,7 +1,7 @@
# Created by: Marie Loise Nolden <loise@kde.org>
PORTNAME= examples
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= misc
MASTER_SITES= QT/official_releases/qt/${QT5_VERSION:R}/${QT5_VERSION}/single
PKGNAMEPREFIX= qt5-
diff --git a/misc/qt5-l10n/Makefile b/misc/qt5-l10n/Makefile
index 2755b86c4b30..294cb5aa7a72 100644
--- a/misc/qt5-l10n/Makefile
+++ b/misc/qt5-l10n/Makefile
@@ -1,5 +1,5 @@
PORTNAME= l10n
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= misc
PKGNAMEPREFIX= qt5-
diff --git a/misc/qt5-l10n/distinfo b/misc/qt5-l10n/distinfo
new file mode 100644
index 000000000000..cac011b27486
--- /dev/null
+++ b/misc/qt5-l10n/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423897
+SHA256 (KDE/Qt/5.15.2/kde-qttranslations-5.15.2p22.tar.xz) = 4293399b69dfc98026925d9acecbeafe1e2df180857f67d180534fde91b2105d
+SIZE (KDE/Qt/5.15.2/kde-qttranslations-5.15.2p22.tar.xz) = 1594464
diff --git a/misc/qt5-l10n/pkg-plist b/misc/qt5-l10n/pkg-plist
index e5e70dd89297..f5352aba4c0e 100644
--- a/misc/qt5-l10n/pkg-plist
+++ b/misc/qt5-l10n/pkg-plist
@@ -6,10 +6,13 @@
%%QT_L10NDIR%%/assistant_en.qm
%%QT_L10NDIR%%/assistant_es.qm
%%QT_L10NDIR%%/assistant_fr.qm
+%%QT_L10NDIR%%/assistant_hr.qm
%%QT_L10NDIR%%/assistant_hu.qm
%%QT_L10NDIR%%/assistant_ja.qm
%%QT_L10NDIR%%/assistant_ko.qm
+%%QT_L10NDIR%%/assistant_nl.qm
%%QT_L10NDIR%%/assistant_pl.qm
+%%QT_L10NDIR%%/assistant_pt_BR.qm
%%QT_L10NDIR%%/assistant_ru.qm
%%QT_L10NDIR%%/assistant_sk.qm
%%QT_L10NDIR%%/assistant_sl.qm
@@ -25,9 +28,11 @@
%%QT_L10NDIR%%/designer_en.qm
%%QT_L10NDIR%%/designer_es.qm
%%QT_L10NDIR%%/designer_fr.qm
+%%QT_L10NDIR%%/designer_hr.qm
%%QT_L10NDIR%%/designer_hu.qm
%%QT_L10NDIR%%/designer_ja.qm
%%QT_L10NDIR%%/designer_ko.qm
+%%QT_L10NDIR%%/designer_nl.qm
%%QT_L10NDIR%%/designer_pl.qm
%%QT_L10NDIR%%/designer_ru.qm
%%QT_L10NDIR%%/designer_sk.qm
@@ -44,10 +49,12 @@
%%QT_L10NDIR%%/linguist_en.qm
%%QT_L10NDIR%%/linguist_es.qm
%%QT_L10NDIR%%/linguist_fr.qm
+%%QT_L10NDIR%%/linguist_hr.qm
%%QT_L10NDIR%%/linguist_hu.qm
%%QT_L10NDIR%%/linguist_it.qm
%%QT_L10NDIR%%/linguist_ja.qm
%%QT_L10NDIR%%/linguist_ko.qm
+%%QT_L10NDIR%%/linguist_nl.qm
%%QT_L10NDIR%%/linguist_pl.qm
%%QT_L10NDIR%%/linguist_ru.qm
%%QT_L10NDIR%%/linguist_sk.qm
@@ -81,11 +88,15 @@
%%QT_L10NDIR%%/qt_help_es.qm
%%QT_L10NDIR%%/qt_help_fr.qm
%%QT_L10NDIR%%/qt_help_gl.qm
+%%QT_L10NDIR%%/qt_help_hr.qm
%%QT_L10NDIR%%/qt_help_hu.qm
%%QT_L10NDIR%%/qt_help_it.qm
%%QT_L10NDIR%%/qt_help_ja.qm
%%QT_L10NDIR%%/qt_help_ko.qm
+%%QT_L10NDIR%%/qt_help_nl.qm
+%%QT_L10NDIR%%/qt_help_nn.qm
%%QT_L10NDIR%%/qt_help_pl.qm
+%%QT_L10NDIR%%/qt_help_pt_BR.qm
%%QT_L10NDIR%%/qt_help_ru.qm
%%QT_L10NDIR%%/qt_help_sk.qm
%%QT_L10NDIR%%/qt_help_sl.qm
@@ -93,14 +104,18 @@
%%QT_L10NDIR%%/qt_help_uk.qm
%%QT_L10NDIR%%/qt_help_zh_CN.qm
%%QT_L10NDIR%%/qt_help_zh_TW.qm
+%%QT_L10NDIR%%/qt_hr.qm
%%QT_L10NDIR%%/qt_hu.qm
%%QT_L10NDIR%%/qt_it.qm
%%QT_L10NDIR%%/qt_ja.qm
%%QT_L10NDIR%%/qt_ko.qm
%%QT_L10NDIR%%/qt_lt.qm
%%QT_L10NDIR%%/qt_lv.qm
+%%QT_L10NDIR%%/qt_nl.qm
+%%QT_L10NDIR%%/qt_nn.qm
%%QT_L10NDIR%%/qt_pl.qm
-%%QT_L10NDIR%%/qt_pt.qm
+%%QT_L10NDIR%%/qt_pt_BR.qm
+%%QT_L10NDIR%%/qt_pt_PT.qm
%%QT_L10NDIR%%/qt_ru.qm
%%QT_L10NDIR%%/qt_sk.qm
%%QT_L10NDIR%%/qt_sl.qm
@@ -117,20 +132,26 @@
%%QT_L10NDIR%%/qtbase_de.qm
%%QT_L10NDIR%%/qtbase_en.qm
%%QT_L10NDIR%%/qtbase_es.qm
+%%QT_L10NDIR%%/qtbase_fa.qm
%%QT_L10NDIR%%/qtbase_fi.qm
%%QT_L10NDIR%%/qtbase_fr.qm
%%QT_L10NDIR%%/qtbase_gd.qm
%%QT_L10NDIR%%/qtbase_he.qm
+%%QT_L10NDIR%%/qtbase_hr.qm
%%QT_L10NDIR%%/qtbase_hu.qm
%%QT_L10NDIR%%/qtbase_it.qm
%%QT_L10NDIR%%/qtbase_ja.qm
%%QT_L10NDIR%%/qtbase_ko.qm
%%QT_L10NDIR%%/qtbase_lv.qm
+%%QT_L10NDIR%%/qtbase_nl.qm
+%%QT_L10NDIR%%/qtbase_nn.qm
%%QT_L10NDIR%%/qtbase_pl.qm
+%%QT_L10NDIR%%/qtbase_pt_BR.qm
%%QT_L10NDIR%%/qtbase_ru.qm
%%QT_L10NDIR%%/qtbase_sk.qm
%%QT_L10NDIR%%/qtbase_tr.qm
%%QT_L10NDIR%%/qtbase_uk.qm
+%%QT_L10NDIR%%/qtbase_zh_CN.qm
%%QT_L10NDIR%%/qtbase_zh_TW.qm
%%QT_L10NDIR%%/qtconnectivity_bg.qm
%%QT_L10NDIR%%/qtconnectivity_ca.qm
@@ -138,28 +159,37 @@
%%QT_L10NDIR%%/qtconnectivity_de.qm
%%QT_L10NDIR%%/qtconnectivity_en.qm
%%QT_L10NDIR%%/qtconnectivity_es.qm
+%%QT_L10NDIR%%/qtconnectivity_hr.qm
%%QT_L10NDIR%%/qtconnectivity_hu.qm
%%QT_L10NDIR%%/qtconnectivity_ko.qm
+%%QT_L10NDIR%%/qtconnectivity_nl.qm
%%QT_L10NDIR%%/qtconnectivity_pl.qm
+%%QT_L10NDIR%%/qtconnectivity_pt_BR.qm
%%QT_L10NDIR%%/qtconnectivity_ru.qm
%%QT_L10NDIR%%/qtconnectivity_tr.qm
%%QT_L10NDIR%%/qtconnectivity_uk.qm
+%%QT_L10NDIR%%/qtconnectivity_zh_CN.qm
%%QT_L10NDIR%%/qtdeclarative_bg.qm
%%QT_L10NDIR%%/qtdeclarative_da.qm
%%QT_L10NDIR%%/qtdeclarative_de.qm
%%QT_L10NDIR%%/qtdeclarative_en.qm
%%QT_L10NDIR%%/qtdeclarative_es.qm
+%%QT_L10NDIR%%/qtdeclarative_fa.qm
%%QT_L10NDIR%%/qtdeclarative_fi.qm
%%QT_L10NDIR%%/qtdeclarative_fr.qm
+%%QT_L10NDIR%%/qtdeclarative_hr.qm
%%QT_L10NDIR%%/qtdeclarative_hu.qm
%%QT_L10NDIR%%/qtdeclarative_ja.qm
%%QT_L10NDIR%%/qtdeclarative_ko.qm
%%QT_L10NDIR%%/qtdeclarative_lv.qm
+%%QT_L10NDIR%%/qtdeclarative_nl.qm
%%QT_L10NDIR%%/qtdeclarative_pl.qm
+%%QT_L10NDIR%%/qtdeclarative_pt_BR.qm
%%QT_L10NDIR%%/qtdeclarative_ru.qm
%%QT_L10NDIR%%/qtdeclarative_sk.qm
%%QT_L10NDIR%%/qtdeclarative_tr.qm
%%QT_L10NDIR%%/qtdeclarative_uk.qm
+%%QT_L10NDIR%%/qtdeclarative_zh_CN.qm
%%QT_L10NDIR%%/qtlocation_bg.qm
%%QT_L10NDIR%%/qtlocation_ca.qm
%%QT_L10NDIR%%/qtlocation_da.qm
@@ -168,12 +198,16 @@
%%QT_L10NDIR%%/qtlocation_es.qm
%%QT_L10NDIR%%/qtlocation_fi.qm
%%QT_L10NDIR%%/qtlocation_fr.qm
+%%QT_L10NDIR%%/qtlocation_hr.qm
%%QT_L10NDIR%%/qtlocation_hu.qm
%%QT_L10NDIR%%/qtlocation_ko.qm
+%%QT_L10NDIR%%/qtlocation_nl.qm
%%QT_L10NDIR%%/qtlocation_pl.qm
+%%QT_L10NDIR%%/qtlocation_pt_BR.qm
%%QT_L10NDIR%%/qtlocation_ru.qm
%%QT_L10NDIR%%/qtlocation_tr.qm
%%QT_L10NDIR%%/qtlocation_uk.qm
+%%QT_L10NDIR%%/qtlocation_zh_CN.qm
%%QT_L10NDIR%%/qtmultimedia_ar.qm
%%QT_L10NDIR%%/qtmultimedia_bg.qm
%%QT_L10NDIR%%/qtmultimedia_ca.qm
@@ -182,27 +216,38 @@
%%QT_L10NDIR%%/qtmultimedia_de.qm
%%QT_L10NDIR%%/qtmultimedia_en.qm
%%QT_L10NDIR%%/qtmultimedia_es.qm
+%%QT_L10NDIR%%/qtmultimedia_fa.qm
%%QT_L10NDIR%%/qtmultimedia_fi.qm
%%QT_L10NDIR%%/qtmultimedia_fr.qm
+%%QT_L10NDIR%%/qtmultimedia_hr.qm
%%QT_L10NDIR%%/qtmultimedia_hu.qm
%%QT_L10NDIR%%/qtmultimedia_it.qm
%%QT_L10NDIR%%/qtmultimedia_ja.qm
%%QT_L10NDIR%%/qtmultimedia_ko.qm
+%%QT_L10NDIR%%/qtmultimedia_nl.qm
+%%QT_L10NDIR%%/qtmultimedia_nn.qm
%%QT_L10NDIR%%/qtmultimedia_pl.qm
+%%QT_L10NDIR%%/qtmultimedia_pt_BR.qm
%%QT_L10NDIR%%/qtmultimedia_ru.qm
%%QT_L10NDIR%%/qtmultimedia_sk.qm
%%QT_L10NDIR%%/qtmultimedia_tr.qm
%%QT_L10NDIR%%/qtmultimedia_uk.qm
+%%QT_L10NDIR%%/qtmultimedia_zh_CN.qm
%%QT_L10NDIR%%/qtmultimedia_zh_TW.qm
%%QT_L10NDIR%%/qtquickcontrols2_ar.qm
%%QT_L10NDIR%%/qtquickcontrols2_bg.qm
%%QT_L10NDIR%%/qtquickcontrols2_ca.qm
%%QT_L10NDIR%%/qtquickcontrols2_da.qm
%%QT_L10NDIR%%/qtquickcontrols2_en.qm
+%%QT_L10NDIR%%/qtquickcontrols2_hr.qm
%%QT_L10NDIR%%/qtquickcontrols2_hu.qm
%%QT_L10NDIR%%/qtquickcontrols2_ko.qm
+%%QT_L10NDIR%%/qtquickcontrols2_nl.qm
+%%QT_L10NDIR%%/qtquickcontrols2_nn.qm
+%%QT_L10NDIR%%/qtquickcontrols2_pt_BR.qm
%%QT_L10NDIR%%/qtquickcontrols2_tr.qm
%%QT_L10NDIR%%/qtquickcontrols2_uk.qm
+%%QT_L10NDIR%%/qtquickcontrols2_zh_CN.qm
%%QT_L10NDIR%%/qtquickcontrols2_zh_TW.qm
%%QT_L10NDIR%%/qtquickcontrols_bg.qm
%%QT_L10NDIR%%/qtquickcontrols_ca.qm
@@ -211,11 +256,16 @@
%%QT_L10NDIR%%/qtquickcontrols_en.qm
%%QT_L10NDIR%%/qtquickcontrols_fi.qm
%%QT_L10NDIR%%/qtquickcontrols_fr.qm
+%%QT_L10NDIR%%/qtquickcontrols_hr.qm
%%QT_L10NDIR%%/qtquickcontrols_ja.qm
%%QT_L10NDIR%%/qtquickcontrols_ko.qm
+%%QT_L10NDIR%%/qtquickcontrols_nl.qm
+%%QT_L10NDIR%%/qtquickcontrols_nn.qm
+%%QT_L10NDIR%%/qtquickcontrols_pt_BR.qm
%%QT_L10NDIR%%/qtquickcontrols_ru.qm
%%QT_L10NDIR%%/qtquickcontrols_tr.qm
%%QT_L10NDIR%%/qtquickcontrols_uk.qm
+%%QT_L10NDIR%%/qtquickcontrols_zh_CN.qm
%%QT_L10NDIR%%/qtquickcontrols_zh_TW.qm
%%QT_L10NDIR%%/qtscript_ar.qm
%%QT_L10NDIR%%/qtscript_bg.qm
@@ -225,19 +275,25 @@
%%QT_L10NDIR%%/qtscript_de.qm
%%QT_L10NDIR%%/qtscript_en.qm
%%QT_L10NDIR%%/qtscript_es.qm
+%%QT_L10NDIR%%/qtscript_fa.qm
%%QT_L10NDIR%%/qtscript_fi.qm
%%QT_L10NDIR%%/qtscript_fr.qm
%%QT_L10NDIR%%/qtscript_he.qm
+%%QT_L10NDIR%%/qtscript_hr.qm
%%QT_L10NDIR%%/qtscript_hu.qm
%%QT_L10NDIR%%/qtscript_it.qm
%%QT_L10NDIR%%/qtscript_ja.qm
%%QT_L10NDIR%%/qtscript_ko.qm
%%QT_L10NDIR%%/qtscript_lv.qm
+%%QT_L10NDIR%%/qtscript_nl.qm
+%%QT_L10NDIR%%/qtscript_nn.qm
%%QT_L10NDIR%%/qtscript_pl.qm
+%%QT_L10NDIR%%/qtscript_pt_BR.qm
%%QT_L10NDIR%%/qtscript_ru.qm
%%QT_L10NDIR%%/qtscript_sk.qm
%%QT_L10NDIR%%/qtscript_tr.qm
%%QT_L10NDIR%%/qtscript_uk.qm
+%%QT_L10NDIR%%/qtscript_zh_CN.qm
%%QT_L10NDIR%%/qtserialport_de.qm
%%QT_L10NDIR%%/qtserialport_en.qm
%%QT_L10NDIR%%/qtserialport_es.qm
@@ -271,13 +327,19 @@
%%QT_L10NDIR%%/qtxmlpatterns_de.qm
%%QT_L10NDIR%%/qtxmlpatterns_en.qm
%%QT_L10NDIR%%/qtxmlpatterns_es.qm
+%%QT_L10NDIR%%/qtxmlpatterns_fa.qm
%%QT_L10NDIR%%/qtxmlpatterns_fr.qm
+%%QT_L10NDIR%%/qtxmlpatterns_hr.qm
%%QT_L10NDIR%%/qtxmlpatterns_hu.qm
%%QT_L10NDIR%%/qtxmlpatterns_it.qm
%%QT_L10NDIR%%/qtxmlpatterns_ja.qm
%%QT_L10NDIR%%/qtxmlpatterns_ko.qm
+%%QT_L10NDIR%%/qtxmlpatterns_nl.qm
+%%QT_L10NDIR%%/qtxmlpatterns_nn.qm
%%QT_L10NDIR%%/qtxmlpatterns_pl.qm
+%%QT_L10NDIR%%/qtxmlpatterns_pt_BR.qm
%%QT_L10NDIR%%/qtxmlpatterns_ru.qm
%%QT_L10NDIR%%/qtxmlpatterns_sk.qm
%%QT_L10NDIR%%/qtxmlpatterns_uk.qm
+%%QT_L10NDIR%%/qtxmlpatterns_zh_CN.qm
%%QT_L10NDIR%%/qtxmlpatterns_zh_TW.qm
diff --git a/multimedia/qt5-multimedia/Makefile b/multimedia/qt5-multimedia/Makefile
index f6ae01be8222..ad01509bef9c 100644
--- a/multimedia/qt5-multimedia/Makefile
+++ b/multimedia/qt5-multimedia/Makefile
@@ -1,6 +1,5 @@
PORTNAME= multimedia
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 3
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= multimedia
PKGNAMEPREFIX= qt5-
diff --git a/multimedia/qt5-multimedia/distinfo b/multimedia/qt5-multimedia/distinfo
new file mode 100644
index 000000000000..8c0134e6959c
--- /dev/null
+++ b/multimedia/qt5-multimedia/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423899
+SHA256 (KDE/Qt/5.15.2/kde-qtmultimedia-5.15.2p3.tar.xz) = 4eee6b7d15d88a0bff9285687196a2e7703f18927995443c1de7fb82c47f03ec
+SIZE (KDE/Qt/5.15.2/kde-qtmultimedia-5.15.2p3.tar.xz) = 3788908
diff --git a/net/qt5-network/Makefile b/net/qt5-network/Makefile
index a101981df7f5..959ecb987f0a 100644
--- a/net/qt5-network/Makefile
+++ b/net/qt5-network/Makefile
@@ -1,6 +1,5 @@
PORTNAME= network
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= net
PKGNAMEPREFIX= qt5-
@@ -9,7 +8,8 @@ COMMENT= Qt network module
RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss
-USES= compiler:c++11-lang qmake:no_env qt-dist:5,base ssl
+USES= compiler:c++11-lang perl5 qmake:no_env qt-dist:5,base ssl
+USE_PERL5= extract
USE_QT= core buildtools_build
HAS_CONFIGURE= yes
CONFIGURE_ARGS= -no-gui -no-xcb
diff --git a/net/qt5-network/distinfo b/net/qt5-network/distinfo
new file mode 100644
index 000000000000..bb17af30e4b6
--- /dev/null
+++ b/net/qt5-network/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423900
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/net/qt5-networkauth/Makefile b/net/qt5-networkauth/Makefile
index 5c45c72d5df9..d3a3422d3636 100644
--- a/net/qt5-networkauth/Makefile
+++ b/net/qt5-networkauth/Makefile
@@ -1,13 +1,13 @@
PORTNAME= networkauth
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= net
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt network auth module
-USES= compiler:c++11-lang qmake:no_env qt-dist:5
+USES= compiler:c++11-lang perl5 qmake:no_env qt-dist:5
+USE_PERL5= extract
USE_QT= core network \
buildtools_build
diff --git a/net/qt5-networkauth/distinfo b/net/qt5-networkauth/distinfo
new file mode 100644
index 000000000000..240951061f10
--- /dev/null
+++ b/net/qt5-networkauth/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423902
+SHA256 (KDE/Qt/5.15.2/kde-qtnetworkauth-5.15.2p2.tar.xz) = 73a747463be53741087836abbe07f7ba7cb787721d3a9dad713fd6552ac1068d
+SIZE (KDE/Qt/5.15.2/kde-qtnetworkauth-5.15.2p2.tar.xz) = 119968
diff --git a/print/qt5-printsupport/Makefile b/print/qt5-printsupport/Makefile
index 12a9b53fe5b8..38fe74a6cafb 100644
--- a/print/qt5-printsupport/Makefile
+++ b/print/qt5-printsupport/Makefile
@@ -1,13 +1,13 @@
PORTNAME= printsupport
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= print
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt print support module
-USES= compiler:c++11-lang qmake:no_env qt-dist:5,base
+USES= compiler:c++11-lang perl5 qmake:no_env qt-dist:5,base
+USE_PERL5= extract
USE_QT= core gui widgets qmake_build buildtools_build
HAS_CONFIGURE= yes
diff --git a/print/qt5-printsupport/distinfo b/print/qt5-printsupport/distinfo
new file mode 100644
index 000000000000..83c44140cebd
--- /dev/null
+++ b/print/qt5-printsupport/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423903
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/sysutils/qt5-qtdiag/Makefile b/sysutils/qt5-qtdiag/Makefile
index cd96bef68d93..bdf8ab40980f 100644
--- a/sysutils/qt5-qtdiag/Makefile
+++ b/sysutils/qt5-qtdiag/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qtdiag
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= sysutils
PKGNAMEPREFIX= qt5-
diff --git a/sysutils/qt5-qtdiag/distinfo b/sysutils/qt5-qtdiag/distinfo
new file mode 100644
index 000000000000..f34bce8fad74
--- /dev/null
+++ b/sysutils/qt5-qtdiag/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423904
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/sysutils/qt5-qtpaths/Makefile b/sysutils/qt5-qtpaths/Makefile
index 6f7544aaad4f..c2400aba338b 100644
--- a/sysutils/qt5-qtpaths/Makefile
+++ b/sysutils/qt5-qtpaths/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qtpaths
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= sysutils
PKGNAMEPREFIX= qt5-
diff --git a/sysutils/qt5-qtpaths/distinfo b/sysutils/qt5-qtpaths/distinfo
new file mode 100644
index 000000000000..4b127a8d177c
--- /dev/null
+++ b/sysutils/qt5-qtpaths/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423905
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/sysutils/qt5-qtplugininfo/Makefile b/sysutils/qt5-qtplugininfo/Makefile
index d6a605c5a763..98a46a66d4de 100644
--- a/sysutils/qt5-qtplugininfo/Makefile
+++ b/sysutils/qt5-qtplugininfo/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qtplugininfo
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= sysutils
PKGNAMEPREFIX= qt5-
diff --git a/sysutils/qt5-qtplugininfo/distinfo b/sysutils/qt5-qtplugininfo/distinfo
new file mode 100644
index 000000000000..8db00dbe0f5b
--- /dev/null
+++ b/sysutils/qt5-qtplugininfo/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423906
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/textproc/qt5-xml/Makefile b/textproc/qt5-xml/Makefile
index e82431c60434..4af46d33a536 100644
--- a/textproc/qt5-xml/Makefile
+++ b/textproc/qt5-xml/Makefile
@@ -1,13 +1,13 @@
PORTNAME= xml
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= textproc
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt SAX and DOM implementations
-USES= compiler:c++11-lang qmake:no_env qt-dist:5,base
+USES= compiler:c++11-lang perl5 qmake:no_env qt-dist:5,base
+USE_PERL5= extract
USE_QT= core qmake_build buildtools_build
HAS_CONFIGURE= yes
CONFIGURE_ARGS= -no-gui -no-xcb
diff --git a/textproc/qt5-xml/distinfo b/textproc/qt5-xml/distinfo
new file mode 100644
index 000000000000..709058187011
--- /dev/null
+++ b/textproc/qt5-xml/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423907
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/textproc/qt5-xmlpatterns/Makefile b/textproc/qt5-xmlpatterns/Makefile
index 5241dfad96e6..0fecf854476b 100644
--- a/textproc/qt5-xmlpatterns/Makefile
+++ b/textproc/qt5-xmlpatterns/Makefile
@@ -1,5 +1,5 @@
PORTNAME= xmlpatterns
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= textproc
PKGNAMEPREFIX= qt5-
diff --git a/textproc/qt5-xmlpatterns/distinfo b/textproc/qt5-xmlpatterns/distinfo
new file mode 100644
index 000000000000..09aa3f237f6f
--- /dev/null
+++ b/textproc/qt5-xmlpatterns/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423908
+SHA256 (KDE/Qt/5.15.2/kde-qtxmlpatterns-5.15.2p2.tar.xz) = 519880b344bd108df382437cc987eaafb3fbfb055ea25edeff82d6fb38abd381
+SIZE (KDE/Qt/5.15.2/kde-qtxmlpatterns-5.15.2p2.tar.xz) = 1376128
diff --git a/www/qt5-webchannel/Makefile b/www/qt5-webchannel/Makefile
index f089fdb2d94d..583bc556f052 100644
--- a/www/qt5-webchannel/Makefile
+++ b/www/qt5-webchannel/Makefile
@@ -1,6 +1,5 @@
PORTNAME= webchannel
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= www
PKGNAMEPREFIX= qt5-
diff --git a/www/qt5-webchannel/distinfo b/www/qt5-webchannel/distinfo
new file mode 100644
index 000000000000..38d2732b3e91
--- /dev/null
+++ b/www/qt5-webchannel/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639423909
+SHA256 (KDE/Qt/5.15.2/kde-qtwebchannel-5.15.2p2.tar.xz) = ec97632456edacb2449ca178750a3fdc03a2561a6ca536c15593d729e33ec9cf
+SIZE (KDE/Qt/5.15.2/kde-qtwebchannel-5.15.2p2.tar.xz) = 187764
diff --git a/www/qt5-webglplugin/Makefile b/www/qt5-webglplugin/Makefile
index 9f86fa28d8f6..69e9a96afaf3 100644
--- a/www/qt5-webglplugin/Makefile
+++ b/www/qt5-webglplugin/Makefile
@@ -1,6 +1,5 @@
PORTNAME= webglplugin
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= www
PKGNAMEPREFIX= qt5-
diff --git a/www/qt5-webglplugin/distinfo b/www/qt5-webglplugin/distinfo
new file mode 100644
index 000000000000..140dca493577
--- /dev/null
+++ b/www/qt5-webglplugin/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424003
+SHA256 (KDE/Qt/5.15.2/kde-qtwebglplugin-5.15.2p2.tar.xz) = 54d0692ca4fdd487b53959a2895b098c03519965095b510d0750ea0358d71892
+SIZE (KDE/Qt/5.15.2/kde-qtwebglplugin-5.15.2p2.tar.xz) = 53640
diff --git a/www/qt5-websockets-qml/Makefile b/www/qt5-websockets-qml/Makefile
index e6567d2fda0b..fe16e7d19d6f 100644
--- a/www/qt5-websockets-qml/Makefile
+++ b/www/qt5-websockets-qml/Makefile
@@ -1,6 +1,5 @@
PORTNAME= websockets-qml
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= www
PKGNAMEPREFIX= qt5-
diff --git a/www/qt5-websockets-qml/distinfo b/www/qt5-websockets-qml/distinfo
new file mode 100644
index 000000000000..495f78323362
--- /dev/null
+++ b/www/qt5-websockets-qml/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424005
+SHA256 (KDE/Qt/5.15.2/kde-qtwebsockets-5.15.2p4.tar.xz) = f2c686efc7ecd2943af70d80303e20aecf7b7116cb11cf84fc83ce791552f48e
+SIZE (KDE/Qt/5.15.2/kde-qtwebsockets-5.15.2p4.tar.xz) = 237052
diff --git a/www/qt5-websockets/Makefile b/www/qt5-websockets/Makefile
index b59f69d7ee34..56ca500451ca 100644
--- a/www/qt5-websockets/Makefile
+++ b/www/qt5-websockets/Makefile
@@ -1,13 +1,13 @@
PORTNAME= websockets
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= www
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt implementation of WebSocket protocol
-USES= compiler:c++11-lang qmake:norecursive qt-dist:5,websockets
+USES= compiler:c++11-lang perl5 qmake:norecursive qt-dist:5,websockets
+USE_PERL5= extract
USE_QT= buildtools_build core network
.include <bsd.port.mk>
diff --git a/www/qt5-websockets/distinfo b/www/qt5-websockets/distinfo
new file mode 100644
index 000000000000..60c6219d79a8
--- /dev/null
+++ b/www/qt5-websockets/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424004
+SHA256 (KDE/Qt/5.15.2/kde-qtwebsockets-5.15.2p4.tar.xz) = f2c686efc7ecd2943af70d80303e20aecf7b7116cb11cf84fc83ce791552f48e
+SIZE (KDE/Qt/5.15.2/kde-qtwebsockets-5.15.2p4.tar.xz) = 237052
diff --git a/www/qt5-webview/Makefile b/www/qt5-webview/Makefile
index f02190e1fbf7..983f64ee4f12 100644
--- a/www/qt5-webview/Makefile
+++ b/www/qt5-webview/Makefile
@@ -1,6 +1,5 @@
PORTNAME= webview
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= www
PKGNAMEPREFIX= qt5-
diff --git a/www/qt5-webview/distinfo b/www/qt5-webview/distinfo
new file mode 100644
index 000000000000..16129cf2677a
--- /dev/null
+++ b/www/qt5-webview/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424006
+SHA256 (KDE/Qt/5.15.2/kde-qtwebview-5.15.2p2.tar.xz) = 6750b8d0ce61d900a56b2ca9fa4cb1bca25a728ddffce22c3037f38a3cf47e9c
+SIZE (KDE/Qt/5.15.2/kde-qtwebview-5.15.2p2.tar.xz) = 112016
diff --git a/x11-toolkits/qt5-charts/Makefile b/x11-toolkits/qt5-charts/Makefile
index 79e71b0e07fb..14c58462c082 100644
--- a/x11-toolkits/qt5-charts/Makefile
+++ b/x11-toolkits/qt5-charts/Makefile
@@ -1,5 +1,5 @@
PORTNAME= charts
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
diff --git a/x11-toolkits/qt5-charts/distinfo b/x11-toolkits/qt5-charts/distinfo
new file mode 100644
index 000000000000..ae06d5898498
--- /dev/null
+++ b/x11-toolkits/qt5-charts/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424007
+SHA256 (KDE/Qt/5.15.2/kde-qtcharts-5.15.2p2.tar.xz) = bcc66d1f67d4be893aa1e952657735c63780ac2bcc49d6ec981c38612466b934
+SIZE (KDE/Qt/5.15.2/kde-qtcharts-5.15.2p2.tar.xz) = 4218592
diff --git a/x11-toolkits/qt5-datavis3d/Makefile b/x11-toolkits/qt5-datavis3d/Makefile
index e876b87d45e8..0c12da08eb89 100644
--- a/x11-toolkits/qt5-datavis3d/Makefile
+++ b/x11-toolkits/qt5-datavis3d/Makefile
@@ -1,6 +1,5 @@
PORTNAME= datavis3d
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
diff --git a/x11-toolkits/qt5-datavis3d/distinfo b/x11-toolkits/qt5-datavis3d/distinfo
new file mode 100644
index 000000000000..2cef9773166f
--- /dev/null
+++ b/x11-toolkits/qt5-datavis3d/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424008
+SHA256 (KDE/Qt/5.15.2/kde-qtdatavis3d-5.15.2p2.tar.xz) = 48c33c37c3a8053403169a00c93bb9ddebfdcfda65ee736c25d6ef355c2b24ce
+SIZE (KDE/Qt/5.15.2/kde-qtdatavis3d-5.15.2p2.tar.xz) = 5159608
diff --git a/x11-toolkits/qt5-declarative-test/Makefile b/x11-toolkits/qt5-declarative-test/Makefile
index d5bd137e6969..5f4145b1e7aa 100644
--- a/x11-toolkits/qt5-declarative-test/Makefile
+++ b/x11-toolkits/qt5-declarative-test/Makefile
@@ -1,5 +1,5 @@
PORTNAME= declarative-test
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
diff --git a/x11-toolkits/qt5-declarative-test/distinfo b/x11-toolkits/qt5-declarative-test/distinfo
new file mode 100644
index 000000000000..17f2d376c03b
--- /dev/null
+++ b/x11-toolkits/qt5-declarative-test/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424011
+SHA256 (KDE/Qt/5.15.2/kde-qtdeclarative-5.15.2p41.tar.xz) = 67821e7f3ae5aac78bc82001394b2bef6f952c9607d281dd4a33e3c040d652ec
+SIZE (KDE/Qt/5.15.2/kde-qtdeclarative-5.15.2p41.tar.xz) = 18992128
diff --git a/x11-toolkits/qt5-declarative/Makefile b/x11-toolkits/qt5-declarative/Makefile
index afad220bb9a6..0ad36a26d97d 100644
--- a/x11-toolkits/qt5-declarative/Makefile
+++ b/x11-toolkits/qt5-declarative/Makefile
@@ -1,6 +1,5 @@
PORTNAME= declarative
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 5
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
diff --git a/x11-toolkits/qt5-declarative/distinfo b/x11-toolkits/qt5-declarative/distinfo
new file mode 100644
index 000000000000..356f1b291022
--- /dev/null
+++ b/x11-toolkits/qt5-declarative/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424010
+SHA256 (KDE/Qt/5.15.2/kde-qtdeclarative-5.15.2p41.tar.xz) = 67821e7f3ae5aac78bc82001394b2bef6f952c9607d281dd4a33e3c040d652ec
+SIZE (KDE/Qt/5.15.2/kde-qtdeclarative-5.15.2p41.tar.xz) = 18992128
diff --git a/x11-toolkits/qt5-declarative/pkg-plist b/x11-toolkits/qt5-declarative/pkg-plist
index 991767ac1cbd..23d393db77f2 100644
--- a/x11-toolkits/qt5-declarative/pkg-plist
+++ b/x11-toolkits/qt5-declarative/pkg-plist
@@ -1,3 +1,5 @@
+%%QT_BINDIR%%/qmltime
+%%DEBUG%%%%QT_BINDIR%%/qmltime.debug
%%QT_INCDIR%%/QtPacketProtocol/%%FULLVER%%/QtPacketProtocol/private/qpacket_p.h
%%QT_INCDIR%%/QtPacketProtocol/%%FULLVER%%/QtPacketProtocol/private/qpacketprotocol_p.h
%%QT_INCDIR%%/QtPacketProtocol/%%FULLVER%%/QtPacketProtocol/private/qversionedpacket_p.h
diff --git a/x11-toolkits/qt5-gamepad/Makefile b/x11-toolkits/qt5-gamepad/Makefile
index d49c7f65bcca..0178a9a388b3 100644
--- a/x11-toolkits/qt5-gamepad/Makefile
+++ b/x11-toolkits/qt5-gamepad/Makefile
@@ -1,6 +1,5 @@
PORTNAME= gamepad
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 2
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
diff --git a/x11-toolkits/qt5-gamepad/distinfo b/x11-toolkits/qt5-gamepad/distinfo
new file mode 100644
index 000000000000..267b81d560b1
--- /dev/null
+++ b/x11-toolkits/qt5-gamepad/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424012
+SHA256 (KDE/Qt/5.15.2/kde-qtgamepad-5.15.2p2.tar.xz) = 96b18f044fbd38fd81422f2386c084ccf180f999d46f24b361bec1d8a7b0dfa7
+SIZE (KDE/Qt/5.15.2/kde-qtgamepad-5.15.2p2.tar.xz) = 365384
diff --git a/x11-toolkits/qt5-gui/Makefile b/x11-toolkits/qt5-gui/Makefile
index 1663bcb08e98..bfa46c4a8acd 100644
--- a/x11-toolkits/qt5-gui/Makefile
+++ b/x11-toolkits/qt5-gui/Makefile
@@ -1,6 +1,5 @@
PORTNAME= gui
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 7
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits graphics
PKGNAMEPREFIX= qt5-
@@ -33,9 +32,10 @@ RUN_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:graphics/vulkan-headers \
xdg-open:devel/xdg-utils
USES= compiler:c++11-lang gl gnome jpeg localbase \
- qmake:no_env qt-dist:5,base
+ perl5 qmake:no_env qt-dist:5,base
USE_GL= egl gl
USE_GNOME= glib20
+USE_PERL5= extract
USE_QT= core dbus network buildtools_build qmake_build
QT_BINARIES= yes
QT_CONFIG= accessibility accessibility-atspi-bridge dbus \
diff --git a/x11-toolkits/qt5-gui/distinfo b/x11-toolkits/qt5-gui/distinfo
new file mode 100644
index 000000000000..27cf2cdba087
--- /dev/null
+++ b/x11-toolkits/qt5-gui/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424013
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/x11-toolkits/qt5-gui/files/patch-git_73fc1f93-add_timeout_control_when_reading_incr_property b/x11-toolkits/qt5-gui/files/patch-git_73fc1f93-add_timeout_control_when_reading_incr_property
deleted file mode 100644
index 6f6dec7d35ec..000000000000
--- a/x11-toolkits/qt5-gui/files/patch-git_73fc1f93-add_timeout_control_when_reading_incr_property
+++ /dev/null
@@ -1,59 +0,0 @@
-From 73fc1f93e8bea1c493ed16655ad6fd68ae270e38 Mon Sep 17 00:00:00 2001
-From: Liang Qi <liang.qi@qt.io>
-Date: Wed, 7 Jul 2021 13:19:14 +0200
-Subject: [PATCH] xcb: add a timeout control when reading INCR property
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf8
-Content-Transfer-Encoding: 8bit
-
-For the first call of QXcbClipboard::clipboardReadProperty()
-inside of clipboardReadIncrementalProperty() in getSelection(),
-it will get a XCB_NONE reply before the contents arrived via
-property change. Then we give a chance to read more.
-
-Manually tested with following setups:
-* examples/widgets/mainwindows/application with gvim(gtk3)
-* examples/widgets/widgets/imageviewer with GIMP 2.10.18(based on
-gtk2) and GIMP 2.99.6(based on gtk3 via flatpak)
-
-Fixes: QTBUG-56595
-Done-With: JiDe Zhang <zhangjide@uniontech.com>
-Change-Id: Ib45f08464d39ad79137b1da99808c89b7dca2d08
-Reviewed-by: JiDe Zhang <zhangjide@uniontech.com>
-Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
-(cherry picked from commit 02248eea5562c1df39ee23f195011afacc6759b0)
-Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
----
- src/plugins/platforms/xcb/qxcbclipboard.cpp | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/src/plugins/platforms/xcb/qxcbclipboard.cpp b/src/plugins/platforms/xcb/qxcbclipboard.cpp
-index 725c0e4d514..a4940f1c491 100644
---- src/plugins/platforms/xcb/qxcbclipboard.cpp
-+++ src/plugins/platforms/xcb/qxcbclipboard.cpp
-@@ -841,6 +841,8 @@ QByteArray QXcbClipboard::clipboardReadIncrementalProperty(xcb_window_t win, xcb
- alloc_error = buf.size() != nbytes+1;
- }
-
-+ QElapsedTimer timer;
-+ timer.start();
- for (;;) {
- connection()->flush();
- xcb_generic_event_t *ge = waitForClipboardEvent(win, XCB_PROPERTY_NOTIFY);
-@@ -876,9 +878,11 @@ QByteArray QXcbClipboard::clipboardReadIncrementalProperty(xcb_window_t win, xcb
- tmp_buf.resize(0);
- offset += length;
- }
-- } else {
-- break;
- }
-+
-+ const auto elapsed = timer.elapsed();
-+ if (elapsed > clipboard_timeout)
-+ break;
- }
-
- // timed out ... create a new requestor window, otherwise the requestor
---
-2.16.3
-
diff --git a/x11-toolkits/qt5-quick3d/Makefile b/x11-toolkits/qt5-quick3d/Makefile
index 7d1b8dfeae02..8cde6a481c6b 100644
--- a/x11-toolkits/qt5-quick3d/Makefile
+++ b/x11-toolkits/qt5-quick3d/Makefile
@@ -1,17 +1,17 @@
PORTNAME= quick3d
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 3
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Set of controls for building complete interfaces in Qt Quick3D
+LIB_DEPENDS= libassimp.so:multimedia/assimp
+
USES= compiler:c++11-lang qmake qt-dist:5
USE_QT= core declarative gui network opengl \
buildtools_build
-QMAKE_CONFIGURE_ARGS= --quick3d-assimp=qt
QT_BINARIES= yes
.include <bsd.port.mk>
diff --git a/x11-toolkits/qt5-quick3d/distinfo b/x11-toolkits/qt5-quick3d/distinfo
new file mode 100644
index 000000000000..cb4b6cad90b7
--- /dev/null
+++ b/x11-toolkits/qt5-quick3d/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424014
+SHA256 (KDE/Qt/5.15.2/kde-qtquick3d-5.15.2p19.tar.xz) = 40c9ec702df6f1ce429144c78b53210e876590318b6a463855269c8d98071b6a
+SIZE (KDE/Qt/5.15.2/kde-qtquick3d-5.15.2p19.tar.xz) = 18253072
diff --git a/x11-toolkits/qt5-quick3d/files/patch-arch_qt5-quick3d-assimp-5.1 b/x11-toolkits/qt5-quick3d/files/patch-arch_qt5-quick3d-assimp-5.1
new file mode 100644
index 000000000000..c6ed41c4bf20
--- /dev/null
+++ b/x11-toolkits/qt5-quick3d/files/patch-arch_qt5-quick3d-assimp-5.1
@@ -0,0 +1,17 @@
+Obtained from: https://github.com/archlinux/svntogit-packages/blob/packages/qt5-quick3d/trunk/qt5-quick3d-assimp-5.1.patch
+
+diff --git src/plugins/assetimporters/assimp/assimpimporter.cpp src/plugins/assetimporters/assimp/assimpimporter.cpp
+index f3660fdd..0f5fc901 100644
+--- src/plugins/assetimporters/assimp/assimpimporter.cpp
++++ src/plugins/assetimporters/assimp/assimpimporter.cpp
+@@ -1082,9 +1082,7 @@ void AssimpImporter::generateMaterial(aiMaterial *material, QTextStream &output,
+ }
+
+ // SpecularGlossiness Properties
+- bool hasSpecularGlossiness;
+- result = material->Get(AI_MATKEY_GLTF_PBRSPECULARGLOSSINESS, hasSpecularGlossiness);
+- if (result == aiReturn_SUCCESS && hasSpecularGlossiness) {
++ {
+
+ // diffuseFactor (color) // not used (yet), but ends up being diffuseColor
+ // {
diff --git a/x11-toolkits/qt5-quick3d/pkg-plist b/x11-toolkits/qt5-quick3d/pkg-plist
index d6d0ef0ad6e5..a0396a8d374c 100644
--- a/x11-toolkits/qt5-quick3d/pkg-plist
+++ b/x11-toolkits/qt5-quick3d/pkg-plist
@@ -305,6 +305,7 @@
%%QT_QMLDIR%%/QtQuick3D/Effects/designer/images/effect.png
%%QT_QMLDIR%%/QtQuick3D/Effects/designer/images/effect16.png
%%QT_QMLDIR%%/QtQuick3D/Effects/designer/images/effect@2x.png
+%%QT_QMLDIR%%/QtQuick3D/Effects/designer/source/effect_default_shader.frag
%%QT_QMLDIR%%/QtQuick3D/Effects/designer/source/effect_template.qml
%%QT_QMLDIR%%/QtQuick3D/Effects/libqtquick3deffectplugin.so
%%DEBUG%%%%QT_QMLDIR%%/QtQuick3D/Effects/libqtquick3deffectplugin.so.debug
@@ -372,6 +373,8 @@
%%QT_QMLDIR%%/QtQuick3D/Materials/designer/images/custommaterial16.png
%%QT_QMLDIR%%/QtQuick3D/Materials/designer/images/custommaterial@2x.png
%%QT_QMLDIR%%/QtQuick3D/Materials/designer/materiallib.metainfo
+%%QT_QMLDIR%%/QtQuick3D/Materials/designer/source/custom_material_default_shader.frag
+%%QT_QMLDIR%%/QtQuick3D/Materials/designer/source/custom_material_default_shader.vert
%%QT_QMLDIR%%/QtQuick3D/Materials/designer/source/custommaterial_template.qml
%%QT_QMLDIR%%/QtQuick3D/Materials/libqtquick3dmaterialplugin.so
%%DEBUG%%%%QT_QMLDIR%%/QtQuick3D/Materials/libqtquick3dmaterialplugin.so.debug
diff --git a/x11-toolkits/qt5-quickcontrols/Makefile b/x11-toolkits/qt5-quickcontrols/Makefile
index 1720e91d6eef..5d316783c830 100644
--- a/x11-toolkits/qt5-quickcontrols/Makefile
+++ b/x11-toolkits/qt5-quickcontrols/Makefile
@@ -1,6 +1,5 @@
PORTNAME= quickcontrols
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
diff --git a/x11-toolkits/qt5-quickcontrols/distinfo b/x11-toolkits/qt5-quickcontrols/distinfo
new file mode 100644
index 000000000000..5dc3bf1ee3ed
--- /dev/null
+++ b/x11-toolkits/qt5-quickcontrols/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424015
+SHA256 (KDE/Qt/5.15.2/kde-qtquickcontrols-5.15.2p3.tar.xz) = c70376eded8bf247d3bc6575a8b1eecf509a40f9e0a2e425c999c26ae83cbf40
+SIZE (KDE/Qt/5.15.2/kde-qtquickcontrols-5.15.2p3.tar.xz) = 5956452
diff --git a/x11-toolkits/qt5-quickcontrols2/Makefile b/x11-toolkits/qt5-quickcontrols2/Makefile
index 044411683504..195a8676eabb 100644
--- a/x11-toolkits/qt5-quickcontrols2/Makefile
+++ b/x11-toolkits/qt5-quickcontrols2/Makefile
@@ -1,6 +1,5 @@
PORTNAME= quickcontrols2
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
diff --git a/x11-toolkits/qt5-quickcontrols2/distinfo b/x11-toolkits/qt5-quickcontrols2/distinfo
new file mode 100644
index 000000000000..3a32889d03b9
--- /dev/null
+++ b/x11-toolkits/qt5-quickcontrols2/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424016
+SHA256 (KDE/Qt/5.15.2/kde-qtquickcontrols2-5.15.2p8.tar.xz) = b250a5c0755fd5f0a6692e3272e6e82525991a5fdfea0a73a9457d88da1117e5
+SIZE (KDE/Qt/5.15.2/kde-qtquickcontrols2-5.15.2p8.tar.xz) = 8242136
diff --git a/x11-toolkits/qt5-quicktimeline/Makefile b/x11-toolkits/qt5-quicktimeline/Makefile
index 3d9b407030a7..b982c9cada13 100644
--- a/x11-toolkits/qt5-quicktimeline/Makefile
+++ b/x11-toolkits/qt5-quicktimeline/Makefile
@@ -1,6 +1,5 @@
PORTNAME= quicktimeline
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
diff --git a/x11-toolkits/qt5-quicktimeline/distinfo b/x11-toolkits/qt5-quicktimeline/distinfo
new file mode 100644
index 000000000000..8da0352703aa
--- /dev/null
+++ b/x11-toolkits/qt5-quicktimeline/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424017
+SHA256 (KDE/Qt/5.15.2/kde-qtquicktimeline-5.15.2p3.tar.xz) = 5170b45bf2ef94d27eb5363376817baabffb720c3f864ce2f61fd27452d812b0
+SIZE (KDE/Qt/5.15.2/kde-qtquicktimeline-5.15.2p3.tar.xz) = 82136
diff --git a/x11-toolkits/qt5-uiplugin/Makefile b/x11-toolkits/qt5-uiplugin/Makefile
index c2bc3f3110ca..511279c2913c 100644
--- a/x11-toolkits/qt5-uiplugin/Makefile
+++ b/x11-toolkits/qt5-uiplugin/Makefile
@@ -1,13 +1,15 @@
PORTNAME= uiplugin
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits devel
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Custom Qt widget plugin interface for Qt Designer
-USES= compiler:c++17-lang qmake qt-dist:5,tools
-USE_QT= core gui widgets
+USES= compiler:c++17-lang perl5 qmake qt-dist:5,tools
+USE_PERL5= extract
+USE_QT= core gui widgets \
+ buildtools_build # syncqt
BUILD_WRKSRC= ${WRKSRC}/src/designer/src/${PORTNAME}
INSTALL_WRKSRC= ${WRKSRC}/src/designer/src/${PORTNAME}
diff --git a/x11-toolkits/qt5-uiplugin/distinfo b/x11-toolkits/qt5-uiplugin/distinfo
new file mode 100644
index 000000000000..df5549373835
--- /dev/null
+++ b/x11-toolkits/qt5-uiplugin/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424018
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/x11-toolkits/qt5-virtualkeyboard/Makefile b/x11-toolkits/qt5-virtualkeyboard/Makefile
index 2bf560f62ed5..e6b402ae5ba6 100644
--- a/x11-toolkits/qt5-virtualkeyboard/Makefile
+++ b/x11-toolkits/qt5-virtualkeyboard/Makefile
@@ -1,6 +1,5 @@
PORTNAME= virtualkeyboard
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
diff --git a/x11-toolkits/qt5-virtualkeyboard/distinfo b/x11-toolkits/qt5-virtualkeyboard/distinfo
new file mode 100644
index 000000000000..a2f774825236
--- /dev/null
+++ b/x11-toolkits/qt5-virtualkeyboard/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424019
+SHA256 (KDE/Qt/5.15.2/kde-qtvirtualkeyboard-5.15.2p4.tar.xz) = c310615cd5be3f4e89716ab4f92225f73a1ed21e0c3238b3db37f752ef031028
+SIZE (KDE/Qt/5.15.2/kde-qtvirtualkeyboard-5.15.2p4.tar.xz) = 10929208
diff --git a/x11-toolkits/qt5-widgets/Makefile b/x11-toolkits/qt5-widgets/Makefile
index 494138b058ae..bbd1812627d7 100644
--- a/x11-toolkits/qt5-widgets/Makefile
+++ b/x11-toolkits/qt5-widgets/Makefile
@@ -1,13 +1,13 @@
PORTNAME= widgets
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 3
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11-toolkits
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt C++ widgets module
-USES= compiler:c++11-lang qmake:no_env qt-dist:5,base xorg
+USES= compiler:c++11-lang perl5 qmake:no_env qt-dist:5,base xorg
+USE_PERL5= extract
USE_QT= core gui qmake_build buildtools_build
USE_XORG= x11
HAS_CONFIGURE= yes
diff --git a/x11-toolkits/qt5-widgets/distinfo b/x11-toolkits/qt5-widgets/distinfo
new file mode 100644
index 000000000000..0b641234e3cf
--- /dev/null
+++ b/x11-toolkits/qt5-widgets/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424021
+SHA256 (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = a516b110cc8c3ae1627711cf3f7fdfffcd300e75cca6c97aa037ea940780ad1e
+SIZE (KDE/Qt/5.15.2/kde-qtbase-5.15.2p263.tar.xz) = 49709048
diff --git a/x11/qt5-qev/Makefile b/x11/qt5-qev/Makefile
index 01e151ee8ac0..9f594db8d13f 100644
--- a/x11/qt5-qev/Makefile
+++ b/x11/qt5-qev/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qev
-DISTVERSION= ${QT5_VERSION}
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11
PKGNAMEPREFIX= qt5-
diff --git a/x11/qt5-qev/distinfo b/x11/qt5-qev/distinfo
new file mode 100644
index 000000000000..71a4c8d5c715
--- /dev/null
+++ b/x11/qt5-qev/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424022
+SHA256 (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 51281e37f5b140eeff242dfefe525bd7fca0223f8da5f33a2cf79e32745eb11a
+SIZE (KDE/Qt/5.15.2/kde-qttools-5.15.2p17.tar.xz) = 8842464
diff --git a/x11/qt5-x11extras/Makefile b/x11/qt5-x11extras/Makefile
index d5a5e91b73e4..d83132e409e5 100644
--- a/x11/qt5-x11extras/Makefile
+++ b/x11/qt5-x11extras/Makefile
@@ -1,13 +1,14 @@
PORTNAME= x11extras
-DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 1
+PORTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH}
CATEGORIES= x11
PKGNAMEPREFIX= qt5-
MAINTAINER= kde@FreeBSD.org
COMMENT= Qt platform-specific features for X11-based systems
-USES= compiler:c++11-lang qmake qt-dist:5,x11extras perl5
-USE_QT= core gui
+USES= compiler:c++11-lang perl5 qmake qt-dist:5,x11extras perl5
+USE_PERL5= extract
+USE_QT= core gui \
+ buildtools_build # syncqt
.include <bsd.port.mk>
diff --git a/x11/qt5-x11extras/distinfo b/x11/qt5-x11extras/distinfo
new file mode 100644
index 000000000000..0182c88dbcf9
--- /dev/null
+++ b/x11/qt5-x11extras/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1639424023
+SHA256 (KDE/Qt/5.15.2/kde-qtx11extras-5.15.2p1.tar.xz) = 6e22063b26a86c59dd577bfd34d9f9b49e11ba3c7fb50e2a5509b8e2bac2b8f5
+SIZE (KDE/Qt/5.15.2/kde-qtx11extras-5.15.2p1.tar.xz) = 123360