Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] WIP: PyQt6
@ 2021-05-24 15:57 sgn
  2021-05-24 15:58 ` [PR PATCH] [Updated] " sgn
                   ` (14 more replies)
  0 siblings, 15 replies; 16+ messages in thread
From: sgn @ 2021-05-24 15:57 UTC (permalink / raw)
  To: ml

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

There is a new pull request by sgn against master on the void-packages repository

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 6428 bytes --]

From c01551a6520c391c63a3b4f32918e3e707f2d8f2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 21:41:13 +0700
Subject: [PATCH 1/4] python3-sip-PyQt5: add update pattern

---
 srcpkgs/python3-sip-PyQt5/update | 2 ++
 1 file changed, 2 insertions(+)
 create mode 100644 srcpkgs/python3-sip-PyQt5/update

diff --git a/srcpkgs/python3-sip-PyQt5/update b/srcpkgs/python3-sip-PyQt5/update
new file mode 100644
index 000000000000..656adf47509e
--- /dev/null
+++ b/srcpkgs/python3-sip-PyQt5/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt5-sip
+pattern='PyQt5_sip-\K([\d.]+)(?=.tar.gz)'

From 0ea55e40ae8320b5643e339b58e6dade0b06a644 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 2/4] New package: python3-PyQt6-sip-13.1.0

---
 srcpkgs/python3-PyQt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-PyQt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-PyQt6-sip/template
 create mode 100644 srcpkgs/python3-PyQt6-sip/update

diff --git a/srcpkgs/python3-PyQt6-sip/template b/srcpkgs/python3-PyQt6-sip/template
new file mode 100644
index 000000000000..a0edac5be594
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-PyQt6-sip'
+pkgname=python3-PyQt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-PyQt6-sip/update b/srcpkgs/python3-PyQt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From 7d239e6022fe4d479e4563b7205f6587e1d9810c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 3/4] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh             | 65 +++++++++++++++++++++
 common/environment/build-style/sip-build.sh |  6 ++
 2 files changed, 71 insertions(+)
 create mode 100644 common/build-style/sip-build.sh
 create mode 100644 common/environment/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..1cde601ee82e
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,65 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _qmake=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	: "${sip_builddir:=build}"
+	mkdir -p "${sip_builddir}"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+	case "$_build_help" in
+	*--qmake*)
+		if [ "$QMAKE" ]; then
+			_qmake="$QMAKE"
+		elif [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qmake=/usr/lib/qt6/bin/qmake
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qmake=/usr/lib/qt5/bin/qmake
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qmake:+--qmake "$_qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		--build-dir "${sip_builddir}"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "${sip_builddir}" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}
diff --git a/common/environment/build-style/sip-build.sh b/common/environment/build-style/sip-build.sh
new file mode 100644
index 000000000000..ffaefc90ce47
--- /dev/null
+++ b/common/environment/build-style/sip-build.sh
@@ -0,0 +1,6 @@
+hostmakedepends+=" python3-PyQt-builder pkg-config"
+makedepends+=" python3-devel"
+lib32disabled=yes
+
+CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
+CXXFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"

From d1eeb91ab13c3b402743ac89eaed5517c89227d3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 4/4] New package: python3-PyQt6-6.1.0

---
 srcpkgs/python3-PyQt6/template | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
 create mode 100644 srcpkgs/python3-PyQt6/template

diff --git a/srcpkgs/python3-PyQt6/template b/srcpkgs/python3-PyQt6/template
new file mode 100644
index 000000000000..ee0ffc944f59
--- /dev/null
+++ b/srcpkgs/python3-PyQt6/template
@@ -0,0 +1,19 @@
+# Template file for 'python3-PyQt6'
+pkgname=python3-PyQt6
+version=6.1.0
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+#make_build_args=""
+#make_install_args=""
+#conf_files=""
+#make_dirs="/var/log/dir 0755 root root"
+hostmakedepends="qt6-base"
+makedepends="qt6-base-devel python3-dbus-devel"
+depends="python3-PyQt6-sip"
+short_desc="Python 3 bindings for the Qt6 application toolkit"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=9b45df6c404d7297598b91378d1e3f9bdf0970553ebb53c192a9051576098f9b

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

* Re: [PR PATCH] [Updated] WIP: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
@ 2021-05-24 15:58 ` sgn
  2021-05-28 16:09 ` sgn
                   ` (13 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-05-24 15:58 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 6418 bytes --]

From c01551a6520c391c63a3b4f32918e3e707f2d8f2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 21:41:13 +0700
Subject: [PATCH 1/4] python3-sip-PyQt5: add update pattern

---
 srcpkgs/python3-sip-PyQt5/update | 2 ++
 1 file changed, 2 insertions(+)
 create mode 100644 srcpkgs/python3-sip-PyQt5/update

diff --git a/srcpkgs/python3-sip-PyQt5/update b/srcpkgs/python3-sip-PyQt5/update
new file mode 100644
index 000000000000..656adf47509e
--- /dev/null
+++ b/srcpkgs/python3-sip-PyQt5/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt5-sip
+pattern='PyQt5_sip-\K([\d.]+)(?=.tar.gz)'

From 0ea55e40ae8320b5643e339b58e6dade0b06a644 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 2/4] New package: python3-PyQt6-sip-13.1.0

---
 srcpkgs/python3-PyQt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-PyQt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-PyQt6-sip/template
 create mode 100644 srcpkgs/python3-PyQt6-sip/update

diff --git a/srcpkgs/python3-PyQt6-sip/template b/srcpkgs/python3-PyQt6-sip/template
new file mode 100644
index 000000000000..a0edac5be594
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-PyQt6-sip'
+pkgname=python3-PyQt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-PyQt6-sip/update b/srcpkgs/python3-PyQt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From 614ffee6c2af9b8538cc94802b8a1854c53aeb85 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 3/4] build-style: introduce sip-build

---
 common/build-style/sip-build.sh             | 65 +++++++++++++++++++++
 common/environment/build-style/sip-build.sh |  6 ++
 2 files changed, 71 insertions(+)
 create mode 100644 common/build-style/sip-build.sh
 create mode 100644 common/environment/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..1cde601ee82e
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,65 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _qmake=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	: "${sip_builddir:=build}"
+	mkdir -p "${sip_builddir}"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+	case "$_build_help" in
+	*--qmake*)
+		if [ "$QMAKE" ]; then
+			_qmake="$QMAKE"
+		elif [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qmake=/usr/lib/qt6/bin/qmake
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qmake=/usr/lib/qt5/bin/qmake
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qmake:+--qmake "$_qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		--build-dir "${sip_builddir}"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "${sip_builddir}" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}
diff --git a/common/environment/build-style/sip-build.sh b/common/environment/build-style/sip-build.sh
new file mode 100644
index 000000000000..ffaefc90ce47
--- /dev/null
+++ b/common/environment/build-style/sip-build.sh
@@ -0,0 +1,6 @@
+hostmakedepends+=" python3-PyQt-builder pkg-config"
+makedepends+=" python3-devel"
+lib32disabled=yes
+
+CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
+CXXFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"

From 1ee5149f638fd1c3eacf4dac37af1a1cbd426614 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 4/4] New package: python3-PyQt6-6.1.0

---
 srcpkgs/python3-PyQt6/template | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
 create mode 100644 srcpkgs/python3-PyQt6/template

diff --git a/srcpkgs/python3-PyQt6/template b/srcpkgs/python3-PyQt6/template
new file mode 100644
index 000000000000..ee0ffc944f59
--- /dev/null
+++ b/srcpkgs/python3-PyQt6/template
@@ -0,0 +1,19 @@
+# Template file for 'python3-PyQt6'
+pkgname=python3-PyQt6
+version=6.1.0
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+#make_build_args=""
+#make_install_args=""
+#conf_files=""
+#make_dirs="/var/log/dir 0755 root root"
+hostmakedepends="qt6-base"
+makedepends="qt6-base-devel python3-dbus-devel"
+depends="python3-PyQt6-sip"
+short_desc="Python 3 bindings for the Qt6 application toolkit"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=9b45df6c404d7297598b91378d1e3f9bdf0970553ebb53c192a9051576098f9b

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

* Re: [PR PATCH] [Updated] WIP: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
  2021-05-24 15:58 ` [PR PATCH] [Updated] " sgn
@ 2021-05-28 16:09 ` sgn
  2021-05-28 16:19 ` sgn
                   ` (12 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-05-28 16:09 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 21771 bytes --]

From c4b1f2c6fa3b396e8b4c7ebc120041f12ea134cb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:03:09 +0700
Subject: [PATCH 1/6] python3-PyQt-builder: update to 1.10.0.

---
 srcpkgs/python3-PyQt-builder/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-PyQt-builder/template b/srcpkgs/python3-PyQt-builder/template
index befe99aae73a..58d5ad28db8b 100644
--- a/srcpkgs/python3-PyQt-builder/template
+++ b/srcpkgs/python3-PyQt-builder/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-PyQt-builder'
 pkgname=python3-PyQt-builder
-version=1.9.1
+version=1.10.0
 revision=1
 wrksrc=PyQt-builder-$version
 build_style=python3-module
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://www.riverbankcomputing.com/software/pyqt/"
 distfiles="$PYPI_SITE/P/PyQt-builder/PyQt-builder-$version.tar.gz"
-checksum=8d669fe8fa434a3e47abde3b40d924d91932e8e19d88b20c778a3e1c77621ebc
+checksum=86bd19fde83d92beaefacdeac1e26c6e1918c300ff78d7ec2a19973bf2cf21b5
 
 post_install() {
 	rm -rf $DESTDIR/$py3_sitelib/pyqtbuild/bundle

From 6afc9009c9c55a10fdcf4209b638f3ebc354b9c4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:04:05 +0700
Subject: [PATCH 2/6] sip: update to 6.1.0.

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

diff --git a/srcpkgs/sip/template b/srcpkgs/sip/template
index 1227e754298f..2aa5a5cc4fe5 100644
--- a/srcpkgs/sip/template
+++ b/srcpkgs/sip/template
@@ -1,6 +1,6 @@
 # Template file for 'sip'
 pkgname=sip
-version=6.0.3
+version=6.1.0
 revision=1
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools python3-packaging python3-toml"
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/s/sip/sip-${version}.tar.gz"
-checksum=929e3515428ea962003ccf6795244a5fe4fa6e2c94dc9ab8cb2c58fcd368c34c
+checksum=f069d550dd819609e019e5dc58fc5193e081c7f3fb4f7dc8f9be734e34d4e56e
 lib32disabled=yes
 replaces="sip5<=${version}_${revision}"
 provides="sip5-${version}_${revision}"

From 246b883df5807b963a43734b2612ae99e2927d4a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 26 May 2021 08:20:10 +0700
Subject: [PATCH 3/6] python3-sip-PyQt5: update to 12.9.0.

---
 srcpkgs/python3-sip-PyQt5/template | 8 ++++----
 srcpkgs/python3-sip-PyQt5/update   | 2 ++
 2 files changed, 6 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/python3-sip-PyQt5/update

diff --git a/srcpkgs/python3-sip-PyQt5/template b/srcpkgs/python3-sip-PyQt5/template
index 6ef05a2e0b1d..efc715a7f910 100644
--- a/srcpkgs/python3-sip-PyQt5/template
+++ b/srcpkgs/python3-sip-PyQt5/template
@@ -1,18 +1,18 @@
 # Template file for 'python3-sip-PyQt5'
 pkgname=python3-sip-PyQt5
-version=12.8.1
-revision=2
+version=12.9.0
+revision=1
 wrksrc="PyQt5_sip-$version"
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools sip"
 makedepends="python3-devel"
 depends="python3"
 short_desc="Python 3 PyQt5 SIP bindings with C and C++"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/P/PyQt5_sip/PyQt5_sip-${version}.tar.gz"
-checksum=30e944db9abee9cc757aea16906d4198129558533eb7fadbe48c5da2bd18e0bd
+checksum=d3e4489d7c2b0ece9d203ae66e573939f7f60d4d29e089c9f11daa17cfeaae32
 lib32disabled=yes
 
 post_extract() {
diff --git a/srcpkgs/python3-sip-PyQt5/update b/srcpkgs/python3-sip-PyQt5/update
new file mode 100644
index 000000000000..656adf47509e
--- /dev/null
+++ b/srcpkgs/python3-sip-PyQt5/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt5-sip
+pattern='PyQt5_sip-\K([\d.]+)(?=.tar.gz)'

From 0bc440ee1cae698d1e7d9004c355d4de97ae56ea Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 4/6] New package: python3-PyQt6-sip-13.1.0

---
 srcpkgs/python3-PyQt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-PyQt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-PyQt6-sip/template
 create mode 100644 srcpkgs/python3-PyQt6-sip/update

diff --git a/srcpkgs/python3-PyQt6-sip/template b/srcpkgs/python3-PyQt6-sip/template
new file mode 100644
index 000000000000..826a31719992
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-PyQt6-sip'
+pkgname=python3-PyQt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-PyQt6-sip/update b/srcpkgs/python3-PyQt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From 31631058da96963ca8428d6c18ec5728d6d9b701 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 5/6] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh             | 163 ++++++++++++++++++++
 common/environment/build-style/sip-build.sh |   6 +
 2 files changed, 169 insertions(+)
 create mode 100644 common/build-style/sip-build.sh
 create mode 100644 common/environment/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..d7cd3789c7a6
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,163 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	local _qt=
+	local _spec=
+	local _mkspec=
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	case "$_build_help" in
+	*--qmake*)
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<_EOF
+MAKEFILE_GENERATOR      = UNIX
+CONFIG                 += incremental no_qt_rpath
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(/$_mkspec/common/linux.conf)
+include(/$_mkspec/common/gcc-base-unix.conf)
+include(/$_mkspec/common/g++-unix.conf)
+
+QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+QMAKE_CC                = $CC
+QMAKE_CXX               = $CXX
+QMAKE_LINK              = $CXX
+QMAKE_LINK_C            = $CC
+QMAKE_LINK_SHLIB        = $CXX
+
+QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+QMAKE_OBJCOPY           = $OBJCOPY
+QMAKE_NM                = $NM -P
+QMAKE_STRIP             = $STRIP
+
+QMAKE_CFLAGS            = $CFLAGS
+QMAKE_CXXFLAGS          = $CXXFLAGS
+QMAKE_LFLAGS            = $LDFLAGS
+load(qt_config)
+_EOF
+		echo "#include \"$XBPS_CROSS_BASE/$_mkspec/linux-g++/qplatformdefs.h\"" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<_EOF
+[Paths]
+Sysroot=$XBPS_CROSS_BASE
+Prefix=$XBPS_CROSS_BASE/usr
+ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+Data=$XBPS_CROSS_BASE/usr/share/$_qt
+Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+Libraries=$XBPS_CROSS_BASE/usr/lib
+LibraryExecutables=/usr/lib/$_qt/libexec
+Binaries=/usr/lib/$_qt/bin
+Tests=$XBPS_CROSS_BASE/usr/tests
+Plugins=/usr/lib/$_qt/plugins
+Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+Settings=$XBPS_CROSS_BASE/etc/xdg
+Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+HostPrefix=/usr
+HostData=/usr/lib/$_qt
+HostBinaries=/usr/lib/$_qt/bin
+HostLibraries=/usr/lib
+HostLibraryExecutables=/usr/lib/$_qt/libexec
+Spec=linux-g++
+TargetSpec=$_spec
+_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake "\$@" -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+	QMAKE_CFLAGS+="\$CFLAGS" \\
+	QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+	QMAKE_LFLAGS+="\$LDFLAGS"
+_EOF
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake \\
+	"\$@" \\
+	PREFIX=/usr \\
+	QT_INSTALL_PREFIX=/usr \\
+	LIB=/usr/lib \\
+	QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+	QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+	QMAKE_CFLAGS+="$CFLAGS" \\
+	QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+	QMAKE_LFLAGS+="$LDFLAGS" \\
+	CONFIG+=no_qt_rpath
+_EOF
+	fi
+	chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}
diff --git a/common/environment/build-style/sip-build.sh b/common/environment/build-style/sip-build.sh
new file mode 100644
index 000000000000..ffaefc90ce47
--- /dev/null
+++ b/common/environment/build-style/sip-build.sh
@@ -0,0 +1,6 @@
+hostmakedepends+=" python3-PyQt-builder pkg-config"
+makedepends+=" python3-devel"
+lib32disabled=yes
+
+CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
+CXXFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"

From 49ccd197e89858d764429426376149479d3adacf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 6/6] New package: python3-PyQt6-6.1.0

---
 srcpkgs/python3-PyQt6-core                    |   1 +
 srcpkgs/python3-PyQt6-dbus                    |   1 +
 srcpkgs/python3-PyQt6-devel                   |   1 +
 srcpkgs/python3-PyQt6-devel-tools             |   1 +
 srcpkgs/python3-PyQt6-gui                     |   1 +
 srcpkgs/python3-PyQt6-network                 |   1 +
 srcpkgs/python3-PyQt6-opengl-widgets          |   1 +
 srcpkgs/python3-PyQt6-printsupport            |   1 +
 srcpkgs/python3-PyQt6-sql                     |   1 +
 srcpkgs/python3-PyQt6-test                    |   1 +
 srcpkgs/python3-PyQt6-widgets                 |   1 +
 srcpkgs/python3-PyQt6-xml                     |   1 +
 .../patches/pyproject-cross.patch             |  20 +++
 srcpkgs/python3-PyQt6/template                | 142 ++++++++++++++++++
 14 files changed, 174 insertions(+)
 create mode 120000 srcpkgs/python3-PyQt6-core
 create mode 120000 srcpkgs/python3-PyQt6-dbus
 create mode 120000 srcpkgs/python3-PyQt6-devel
 create mode 120000 srcpkgs/python3-PyQt6-devel-tools
 create mode 120000 srcpkgs/python3-PyQt6-gui
 create mode 120000 srcpkgs/python3-PyQt6-network
 create mode 120000 srcpkgs/python3-PyQt6-opengl-widgets
 create mode 120000 srcpkgs/python3-PyQt6-printsupport
 create mode 120000 srcpkgs/python3-PyQt6-sql
 create mode 120000 srcpkgs/python3-PyQt6-test
 create mode 120000 srcpkgs/python3-PyQt6-widgets
 create mode 120000 srcpkgs/python3-PyQt6-xml
 create mode 100644 srcpkgs/python3-PyQt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-PyQt6/template

diff --git a/srcpkgs/python3-PyQt6-core b/srcpkgs/python3-PyQt6-core
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-core
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-dbus b/srcpkgs/python3-PyQt6-dbus
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-dbus
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-devel b/srcpkgs/python3-PyQt6-devel
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-devel
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-devel-tools b/srcpkgs/python3-PyQt6-devel-tools
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-devel-tools
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-gui b/srcpkgs/python3-PyQt6-gui
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-gui
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-network b/srcpkgs/python3-PyQt6-network
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-network
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-opengl-widgets b/srcpkgs/python3-PyQt6-opengl-widgets
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-opengl-widgets
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-printsupport b/srcpkgs/python3-PyQt6-printsupport
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-printsupport
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-sql b/srcpkgs/python3-PyQt6-sql
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sql
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-test b/srcpkgs/python3-PyQt6-test
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-test
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-widgets b/srcpkgs/python3-PyQt6-widgets
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-widgets
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-xml b/srcpkgs/python3-PyQt6-xml
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-xml
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6/patches/pyproject-cross.patch b/srcpkgs/python3-PyQt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-PyQt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-PyQt6/template b/srcpkgs/python3-PyQt6/template
new file mode 100644
index 000000000000..54f1035637ae
--- /dev/null
+++ b/srcpkgs/python3-PyQt6/template
@@ -0,0 +1,142 @@
+# Template file for 'python3-PyQt6'
+pkgname=python3-PyQt6
+version=6.1.0
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+hostmakedepends="qt6-base-devel"
+makedepends="qt6-base-devel python3-dbus-devel"
+depends="python3-PyQt6-sip"
+short_desc="Python 3 bindings for the Qt6 application toolkit"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=9b45df6c404d7297598b91378d1e3f9bdf0970553ebb53c192a9051576098f9b
+lib32disabled=yes
+patch_args=-Np1
+
+python3-PyQt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-PyQt6-devel_package() {
+	depends="sip>=6.0.0
+	 python3-PyQt6-dbus>=${version}_${revision}
+	 python3-PyQt6-gui>=${version}_${revision}
+	 python3-PyQt6-opengl-widgets>=${version}_${revision}
+	 python3-PyQt6-core>=${version}_${revision}
+	 python3-PyQt6-printsupport>=${version}_${revision}
+	 python3-PyQt6-widgets>=${version}_${revision}
+	 python3-PyQt6-network>=${version}_${revision}
+	 python3-PyQt6-sql>=${version}_${revision}
+	 python3-PyQt6-test>=${version}_${revision}
+	 python3-PyQt6-xml>=${version}_${revision}
+	 python3-PyQt6-devel-tools>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
+
+# Split like qt6
+
+python3-PyQt6-dbus_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - dbus support"
+	pkg_install() {
+		vmove ${py3_sitelib}/dbus
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-PyQt6-gui_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-PyQt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-PyQt6-core_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Core"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+	}
+}
+
+python3-PyQt6-printsupport_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-PyQt6-widgets_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-PyQt6-network_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-PyQt6-sql_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-PyQt6-test_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-PyQt6-xml_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}

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

* Re: [PR PATCH] [Updated] WIP: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
  2021-05-24 15:58 ` [PR PATCH] [Updated] " sgn
  2021-05-28 16:09 ` sgn
@ 2021-05-28 16:19 ` sgn
  2021-05-29 16:47 ` sgn
                   ` (11 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-05-28 16:19 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 21784 bytes --]

From c4b1f2c6fa3b396e8b4c7ebc120041f12ea134cb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:03:09 +0700
Subject: [PATCH 1/6] python3-PyQt-builder: update to 1.10.0.

---
 srcpkgs/python3-PyQt-builder/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-PyQt-builder/template b/srcpkgs/python3-PyQt-builder/template
index befe99aae73a..58d5ad28db8b 100644
--- a/srcpkgs/python3-PyQt-builder/template
+++ b/srcpkgs/python3-PyQt-builder/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-PyQt-builder'
 pkgname=python3-PyQt-builder
-version=1.9.1
+version=1.10.0
 revision=1
 wrksrc=PyQt-builder-$version
 build_style=python3-module
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://www.riverbankcomputing.com/software/pyqt/"
 distfiles="$PYPI_SITE/P/PyQt-builder/PyQt-builder-$version.tar.gz"
-checksum=8d669fe8fa434a3e47abde3b40d924d91932e8e19d88b20c778a3e1c77621ebc
+checksum=86bd19fde83d92beaefacdeac1e26c6e1918c300ff78d7ec2a19973bf2cf21b5
 
 post_install() {
 	rm -rf $DESTDIR/$py3_sitelib/pyqtbuild/bundle

From 6afc9009c9c55a10fdcf4209b638f3ebc354b9c4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:04:05 +0700
Subject: [PATCH 2/6] sip: update to 6.1.0.

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

diff --git a/srcpkgs/sip/template b/srcpkgs/sip/template
index 1227e754298f..2aa5a5cc4fe5 100644
--- a/srcpkgs/sip/template
+++ b/srcpkgs/sip/template
@@ -1,6 +1,6 @@
 # Template file for 'sip'
 pkgname=sip
-version=6.0.3
+version=6.1.0
 revision=1
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools python3-packaging python3-toml"
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/s/sip/sip-${version}.tar.gz"
-checksum=929e3515428ea962003ccf6795244a5fe4fa6e2c94dc9ab8cb2c58fcd368c34c
+checksum=f069d550dd819609e019e5dc58fc5193e081c7f3fb4f7dc8f9be734e34d4e56e
 lib32disabled=yes
 replaces="sip5<=${version}_${revision}"
 provides="sip5-${version}_${revision}"

From 246b883df5807b963a43734b2612ae99e2927d4a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 26 May 2021 08:20:10 +0700
Subject: [PATCH 3/6] python3-sip-PyQt5: update to 12.9.0.

---
 srcpkgs/python3-sip-PyQt5/template | 8 ++++----
 srcpkgs/python3-sip-PyQt5/update   | 2 ++
 2 files changed, 6 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/python3-sip-PyQt5/update

diff --git a/srcpkgs/python3-sip-PyQt5/template b/srcpkgs/python3-sip-PyQt5/template
index 6ef05a2e0b1d..efc715a7f910 100644
--- a/srcpkgs/python3-sip-PyQt5/template
+++ b/srcpkgs/python3-sip-PyQt5/template
@@ -1,18 +1,18 @@
 # Template file for 'python3-sip-PyQt5'
 pkgname=python3-sip-PyQt5
-version=12.8.1
-revision=2
+version=12.9.0
+revision=1
 wrksrc="PyQt5_sip-$version"
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools sip"
 makedepends="python3-devel"
 depends="python3"
 short_desc="Python 3 PyQt5 SIP bindings with C and C++"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/P/PyQt5_sip/PyQt5_sip-${version}.tar.gz"
-checksum=30e944db9abee9cc757aea16906d4198129558533eb7fadbe48c5da2bd18e0bd
+checksum=d3e4489d7c2b0ece9d203ae66e573939f7f60d4d29e089c9f11daa17cfeaae32
 lib32disabled=yes
 
 post_extract() {
diff --git a/srcpkgs/python3-sip-PyQt5/update b/srcpkgs/python3-sip-PyQt5/update
new file mode 100644
index 000000000000..656adf47509e
--- /dev/null
+++ b/srcpkgs/python3-sip-PyQt5/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt5-sip
+pattern='PyQt5_sip-\K([\d.]+)(?=.tar.gz)'

From 0bc440ee1cae698d1e7d9004c355d4de97ae56ea Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 4/6] New package: python3-PyQt6-sip-13.1.0

---
 srcpkgs/python3-PyQt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-PyQt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-PyQt6-sip/template
 create mode 100644 srcpkgs/python3-PyQt6-sip/update

diff --git a/srcpkgs/python3-PyQt6-sip/template b/srcpkgs/python3-PyQt6-sip/template
new file mode 100644
index 000000000000..826a31719992
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-PyQt6-sip'
+pkgname=python3-PyQt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-PyQt6-sip/update b/srcpkgs/python3-PyQt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From 31631058da96963ca8428d6c18ec5728d6d9b701 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 5/6] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh             | 163 ++++++++++++++++++++
 common/environment/build-style/sip-build.sh |   6 +
 2 files changed, 169 insertions(+)
 create mode 100644 common/build-style/sip-build.sh
 create mode 100644 common/environment/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..d7cd3789c7a6
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,163 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	local _qt=
+	local _spec=
+	local _mkspec=
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	case "$_build_help" in
+	*--qmake*)
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<_EOF
+MAKEFILE_GENERATOR      = UNIX
+CONFIG                 += incremental no_qt_rpath
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(/$_mkspec/common/linux.conf)
+include(/$_mkspec/common/gcc-base-unix.conf)
+include(/$_mkspec/common/g++-unix.conf)
+
+QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+QMAKE_CC                = $CC
+QMAKE_CXX               = $CXX
+QMAKE_LINK              = $CXX
+QMAKE_LINK_C            = $CC
+QMAKE_LINK_SHLIB        = $CXX
+
+QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+QMAKE_OBJCOPY           = $OBJCOPY
+QMAKE_NM                = $NM -P
+QMAKE_STRIP             = $STRIP
+
+QMAKE_CFLAGS            = $CFLAGS
+QMAKE_CXXFLAGS          = $CXXFLAGS
+QMAKE_LFLAGS            = $LDFLAGS
+load(qt_config)
+_EOF
+		echo "#include \"$XBPS_CROSS_BASE/$_mkspec/linux-g++/qplatformdefs.h\"" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<_EOF
+[Paths]
+Sysroot=$XBPS_CROSS_BASE
+Prefix=$XBPS_CROSS_BASE/usr
+ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+Data=$XBPS_CROSS_BASE/usr/share/$_qt
+Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+Libraries=$XBPS_CROSS_BASE/usr/lib
+LibraryExecutables=/usr/lib/$_qt/libexec
+Binaries=/usr/lib/$_qt/bin
+Tests=$XBPS_CROSS_BASE/usr/tests
+Plugins=/usr/lib/$_qt/plugins
+Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+Settings=$XBPS_CROSS_BASE/etc/xdg
+Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+HostPrefix=/usr
+HostData=/usr/lib/$_qt
+HostBinaries=/usr/lib/$_qt/bin
+HostLibraries=/usr/lib
+HostLibraryExecutables=/usr/lib/$_qt/libexec
+Spec=linux-g++
+TargetSpec=$_spec
+_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake "\$@" -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+	QMAKE_CFLAGS+="\$CFLAGS" \\
+	QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+	QMAKE_LFLAGS+="\$LDFLAGS"
+_EOF
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake \\
+	"\$@" \\
+	PREFIX=/usr \\
+	QT_INSTALL_PREFIX=/usr \\
+	LIB=/usr/lib \\
+	QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+	QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+	QMAKE_CFLAGS+="$CFLAGS" \\
+	QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+	QMAKE_LFLAGS+="$LDFLAGS" \\
+	CONFIG+=no_qt_rpath
+_EOF
+	fi
+	chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}
diff --git a/common/environment/build-style/sip-build.sh b/common/environment/build-style/sip-build.sh
new file mode 100644
index 000000000000..ffaefc90ce47
--- /dev/null
+++ b/common/environment/build-style/sip-build.sh
@@ -0,0 +1,6 @@
+hostmakedepends+=" python3-PyQt-builder pkg-config"
+makedepends+=" python3-devel"
+lib32disabled=yes
+
+CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
+CXXFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"

From 875319112b19b897aa1698b459d791edc2181ae5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 6/6] New package: python3-PyQt6-6.1.0

---
 srcpkgs/python3-PyQt6-core                    |   1 +
 srcpkgs/python3-PyQt6-dbus                    |   1 +
 srcpkgs/python3-PyQt6-devel                   |   1 +
 srcpkgs/python3-PyQt6-devel-tools             |   1 +
 srcpkgs/python3-PyQt6-gui                     |   1 +
 srcpkgs/python3-PyQt6-network                 |   1 +
 srcpkgs/python3-PyQt6-opengl-widgets          |   1 +
 srcpkgs/python3-PyQt6-printsupport            |   1 +
 srcpkgs/python3-PyQt6-sql                     |   1 +
 srcpkgs/python3-PyQt6-test                    |   1 +
 srcpkgs/python3-PyQt6-widgets                 |   1 +
 srcpkgs/python3-PyQt6-xml                     |   1 +
 .../patches/pyproject-cross.patch             |  20 +++
 srcpkgs/python3-PyQt6/template                | 142 ++++++++++++++++++
 14 files changed, 174 insertions(+)
 create mode 120000 srcpkgs/python3-PyQt6-core
 create mode 120000 srcpkgs/python3-PyQt6-dbus
 create mode 120000 srcpkgs/python3-PyQt6-devel
 create mode 120000 srcpkgs/python3-PyQt6-devel-tools
 create mode 120000 srcpkgs/python3-PyQt6-gui
 create mode 120000 srcpkgs/python3-PyQt6-network
 create mode 120000 srcpkgs/python3-PyQt6-opengl-widgets
 create mode 120000 srcpkgs/python3-PyQt6-printsupport
 create mode 120000 srcpkgs/python3-PyQt6-sql
 create mode 120000 srcpkgs/python3-PyQt6-test
 create mode 120000 srcpkgs/python3-PyQt6-widgets
 create mode 120000 srcpkgs/python3-PyQt6-xml
 create mode 100644 srcpkgs/python3-PyQt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-PyQt6/template

diff --git a/srcpkgs/python3-PyQt6-core b/srcpkgs/python3-PyQt6-core
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-core
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-dbus b/srcpkgs/python3-PyQt6-dbus
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-dbus
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-devel b/srcpkgs/python3-PyQt6-devel
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-devel
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-devel-tools b/srcpkgs/python3-PyQt6-devel-tools
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-devel-tools
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-gui b/srcpkgs/python3-PyQt6-gui
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-gui
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-network b/srcpkgs/python3-PyQt6-network
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-network
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-opengl-widgets b/srcpkgs/python3-PyQt6-opengl-widgets
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-opengl-widgets
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-printsupport b/srcpkgs/python3-PyQt6-printsupport
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-printsupport
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-sql b/srcpkgs/python3-PyQt6-sql
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sql
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-test b/srcpkgs/python3-PyQt6-test
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-test
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-widgets b/srcpkgs/python3-PyQt6-widgets
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-widgets
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-xml b/srcpkgs/python3-PyQt6-xml
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-xml
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6/patches/pyproject-cross.patch b/srcpkgs/python3-PyQt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-PyQt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-PyQt6/template b/srcpkgs/python3-PyQt6/template
new file mode 100644
index 000000000000..433c2702efeb
--- /dev/null
+++ b/srcpkgs/python3-PyQt6/template
@@ -0,0 +1,142 @@
+# Template file for 'python3-PyQt6'
+pkgname=python3-PyQt6
+version=6.1.0
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+hostmakedepends="qt6-base-devel python3-dbus"
+makedepends="qt6-base-devel python3-dbus-devel"
+depends="python3-PyQt6-sip"
+short_desc="Python 3 bindings for the Qt6 application toolkit"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=9b45df6c404d7297598b91378d1e3f9bdf0970553ebb53c192a9051576098f9b
+lib32disabled=yes
+patch_args=-Np1
+
+python3-PyQt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-PyQt6-devel_package() {
+	depends="sip>=6.0.0
+	 python3-PyQt6-dbus>=${version}_${revision}
+	 python3-PyQt6-gui>=${version}_${revision}
+	 python3-PyQt6-opengl-widgets>=${version}_${revision}
+	 python3-PyQt6-core>=${version}_${revision}
+	 python3-PyQt6-printsupport>=${version}_${revision}
+	 python3-PyQt6-widgets>=${version}_${revision}
+	 python3-PyQt6-network>=${version}_${revision}
+	 python3-PyQt6-sql>=${version}_${revision}
+	 python3-PyQt6-test>=${version}_${revision}
+	 python3-PyQt6-xml>=${version}_${revision}
+	 python3-PyQt6-devel-tools>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
+
+# Split like qt6
+
+python3-PyQt6-dbus_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - dbus support"
+	pkg_install() {
+		vmove ${py3_sitelib}/dbus
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-PyQt6-gui_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-PyQt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-PyQt6-core_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Core"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+	}
+}
+
+python3-PyQt6-printsupport_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-PyQt6-widgets_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-PyQt6-network_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-PyQt6-sql_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-PyQt6-test_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-PyQt6-xml_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}

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

* Re: [PR PATCH] [Updated] WIP: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (2 preceding siblings ...)
  2021-05-28 16:19 ` sgn
@ 2021-05-29 16:47 ` sgn
  2021-05-30 17:14 ` sgn
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-05-29 16:47 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 24282 bytes --]

From d814ecea9ebf94b2e535198383b3cc973f19b520 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 29 May 2021 11:49:19 +0700
Subject: [PATCH 1/7] qt6-base: fix QMAKE_LIBS_LIBATOMIC for armv6

See: /usr/lib/qt6/mkspecs/modules/qt_lib_core_private.pri

It should say "-latomic" instead of "atomic".
---
 srcpkgs/qt6-base/patches/libatomic.patch | 14 ++++++++++++++
 srcpkgs/qt6-base/template                |  4 ++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/qt6-base/patches/libatomic.patch

diff --git a/srcpkgs/qt6-base/patches/libatomic.patch b/srcpkgs/qt6-base/patches/libatomic.patch
new file mode 100644
index 000000000000..edbe5e609d5a
--- /dev/null
+++ b/srcpkgs/qt6-base/patches/libatomic.patch
@@ -0,0 +1,14 @@
+Index: cmake/FindWrapAtomic.cmake
+===================================================================
+--- cmake/FindWrapAtomic.cmake.orig
++++ cmake/FindWrapAtomic.cmake
+@@ -38,7 +38,8 @@ endif()
+ 
+ add_library(WrapAtomic::WrapAtomic INTERFACE IMPORTED)
+ if(HAVE_STDATOMIC_WITH_LIB)
+-    target_link_libraries(WrapAtomic::WrapAtomic INTERFACE atomic)
++    find_library(LIBATOMIC atomic REQUIRED)
++    target_link_libraries(WrapAtomic::WrapAtomic INTERFACE ${LIBATOMIC})
+ endif()
+ 
+ set(WrapAtomic_FOUND 1)
diff --git a/srcpkgs/qt6-base/template b/srcpkgs/qt6-base/template
index c720e7f51671..d03dfe7a2129 100644
--- a/srcpkgs/qt6-base/template
+++ b/srcpkgs/qt6-base/template
@@ -1,7 +1,7 @@
 # Template file for 'qt6-base'
 pkgname=qt6-base
 version=6.1.0
-revision=1
+revision=2
 wrksrc="qtbase-everywhere-src-${version}"
 build_style=cmake
 configure_args="-DINSTALL_DATADIR=share/qt6
@@ -25,7 +25,7 @@ makedepends="zlib-devel libzstd-devel dbus-devel
  sqlite-devel Vulkan-Headers mit-krb5-devel vulkan-loader"
 short_desc="Cross-platform application and UI framework (QT6)"
 maintainer="John <me@johnnynator.dev>"
-license="GPL-3.0-only with Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
+license="GPL-3.0-only WITH Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
 homepage="https://www.qt.io"
 distfiles="https://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtbase-everywhere-src-${version}.tar.xz"
 checksum=f7af3c87e96051d09b5abce6c88277c33031bef241ebfe1db4106d33ed0814c4

From f853b0280cdbff6cff0285a09939655133f45a26 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:03:09 +0700
Subject: [PATCH 2/7] python3-PyQt-builder: update to 1.10.0.

---
 srcpkgs/python3-PyQt-builder/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-PyQt-builder/template b/srcpkgs/python3-PyQt-builder/template
index befe99aae73a..58d5ad28db8b 100644
--- a/srcpkgs/python3-PyQt-builder/template
+++ b/srcpkgs/python3-PyQt-builder/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-PyQt-builder'
 pkgname=python3-PyQt-builder
-version=1.9.1
+version=1.10.0
 revision=1
 wrksrc=PyQt-builder-$version
 build_style=python3-module
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://www.riverbankcomputing.com/software/pyqt/"
 distfiles="$PYPI_SITE/P/PyQt-builder/PyQt-builder-$version.tar.gz"
-checksum=8d669fe8fa434a3e47abde3b40d924d91932e8e19d88b20c778a3e1c77621ebc
+checksum=86bd19fde83d92beaefacdeac1e26c6e1918c300ff78d7ec2a19973bf2cf21b5
 
 post_install() {
 	rm -rf $DESTDIR/$py3_sitelib/pyqtbuild/bundle

From 8e0df367ed200fa7657ce999123f3fb5e9d62853 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:04:05 +0700
Subject: [PATCH 3/7] sip: update to 6.1.0.

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

diff --git a/srcpkgs/sip/template b/srcpkgs/sip/template
index 1227e754298f..2aa5a5cc4fe5 100644
--- a/srcpkgs/sip/template
+++ b/srcpkgs/sip/template
@@ -1,6 +1,6 @@
 # Template file for 'sip'
 pkgname=sip
-version=6.0.3
+version=6.1.0
 revision=1
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools python3-packaging python3-toml"
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/s/sip/sip-${version}.tar.gz"
-checksum=929e3515428ea962003ccf6795244a5fe4fa6e2c94dc9ab8cb2c58fcd368c34c
+checksum=f069d550dd819609e019e5dc58fc5193e081c7f3fb4f7dc8f9be734e34d4e56e
 lib32disabled=yes
 replaces="sip5<=${version}_${revision}"
 provides="sip5-${version}_${revision}"

From 3e432bdfd8d72d6de00e027c78569cd6ea796775 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 26 May 2021 08:20:10 +0700
Subject: [PATCH 4/7] python3-sip-PyQt5: update to 12.9.0.

---
 srcpkgs/python3-sip-PyQt5/template | 8 ++++----
 srcpkgs/python3-sip-PyQt5/update   | 2 ++
 2 files changed, 6 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/python3-sip-PyQt5/update

diff --git a/srcpkgs/python3-sip-PyQt5/template b/srcpkgs/python3-sip-PyQt5/template
index 6ef05a2e0b1d..efc715a7f910 100644
--- a/srcpkgs/python3-sip-PyQt5/template
+++ b/srcpkgs/python3-sip-PyQt5/template
@@ -1,18 +1,18 @@
 # Template file for 'python3-sip-PyQt5'
 pkgname=python3-sip-PyQt5
-version=12.8.1
-revision=2
+version=12.9.0
+revision=1
 wrksrc="PyQt5_sip-$version"
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools sip"
 makedepends="python3-devel"
 depends="python3"
 short_desc="Python 3 PyQt5 SIP bindings with C and C++"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/P/PyQt5_sip/PyQt5_sip-${version}.tar.gz"
-checksum=30e944db9abee9cc757aea16906d4198129558533eb7fadbe48c5da2bd18e0bd
+checksum=d3e4489d7c2b0ece9d203ae66e573939f7f60d4d29e089c9f11daa17cfeaae32
 lib32disabled=yes
 
 post_extract() {
diff --git a/srcpkgs/python3-sip-PyQt5/update b/srcpkgs/python3-sip-PyQt5/update
new file mode 100644
index 000000000000..656adf47509e
--- /dev/null
+++ b/srcpkgs/python3-sip-PyQt5/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt5-sip
+pattern='PyQt5_sip-\K([\d.]+)(?=.tar.gz)'

From 6959dc16f9872d8bcbd906d13132ec2ba4128d54 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 5/7] New package: python3-PyQt6-sip-13.1.0

---
 srcpkgs/python3-PyQt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-PyQt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-PyQt6-sip/template
 create mode 100644 srcpkgs/python3-PyQt6-sip/update

diff --git a/srcpkgs/python3-PyQt6-sip/template b/srcpkgs/python3-PyQt6-sip/template
new file mode 100644
index 000000000000..826a31719992
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-PyQt6-sip'
+pkgname=python3-PyQt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-PyQt6-sip/update b/srcpkgs/python3-PyQt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From c522341a83b5af16b5b8a468a4c5379ed3df6d45 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 6/7] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh             | 164 ++++++++++++++++++++
 common/environment/build-style/sip-build.sh |   6 +
 2 files changed, 170 insertions(+)
 create mode 100644 common/build-style/sip-build.sh
 create mode 100644 common/environment/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..5a651981f40c
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,164 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	local _qt=
+	local _spec=
+	local _mkspec=
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	case "$_build_help" in
+	*--qmake*)
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<_EOF
+MAKEFILE_GENERATOR      = UNIX
+CONFIG                 += incremental no_qt_rpath
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(/$_mkspec/common/linux.conf)
+include(/$_mkspec/common/gcc-base-unix.conf)
+include(/$_mkspec/common/g++-unix.conf)
+
+QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+QMAKE_CC                = $CC
+QMAKE_CXX               = $CXX
+QMAKE_LINK              = $CXX
+QMAKE_LINK_C            = $CC
+QMAKE_LINK_SHLIB        = $CXX
+
+QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+QMAKE_OBJCOPY           = $OBJCOPY
+QMAKE_NM                = $NM -P
+QMAKE_STRIP             = $STRIP
+
+QMAKE_CFLAGS            = $CFLAGS
+QMAKE_CXXFLAGS          = $CXXFLAGS
+QMAKE_LFLAGS            = -L$XBPS_CROSS_BASE/usr/lib $LDFLAGS
+load(qt_config)
+_EOF
+		echo "#include \"$XBPS_CROSS_BASE/$_mkspec/linux-g++/qplatformdefs.h\"" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<_EOF
+[Paths]
+Sysroot=$XBPS_CROSS_BASE
+Prefix=$XBPS_CROSS_BASE/usr
+ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+Data=$XBPS_CROSS_BASE/usr/share/$_qt
+Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+Libraries=$XBPS_CROSS_BASE/usr/lib
+LibraryExecutables=/usr/lib/$_qt/libexec
+Binaries=/usr/lib/$_qt/bin
+Tests=$XBPS_CROSS_BASE/usr/tests
+Plugins=/usr/lib/$_qt/plugins
+Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+Settings=$XBPS_CROSS_BASE/etc/xdg
+Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+HostPrefix=/usr
+HostData=/usr/lib/$_qt
+HostBinaries=/usr/lib/$_qt/bin
+HostLibraries=/usr/lib
+HostLibraryExecutables=/usr/lib/$_qt/libexec
+Spec=linux-g++
+TargetSpec=$_spec
+_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake "\$@" -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+	QMAKE_CFLAGS+="\$CFLAGS" \\
+	QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+	QMAKE_LFLAGS+="\$LDFLAGS"
+_EOF
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake \\
+	"\$@" \\
+	PREFIX=/usr \\
+	QT_INSTALL_PREFIX=/usr \\
+	LIB=/usr/lib \\
+	QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+	QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+	QMAKE_CFLAGS+="$CFLAGS" \\
+	QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+	QMAKE_LFLAGS+="$LDFLAGS" \\
+	CONFIG+=no_qt_rpath
+_EOF
+	fi
+	chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		$configure_args \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}
diff --git a/common/environment/build-style/sip-build.sh b/common/environment/build-style/sip-build.sh
new file mode 100644
index 000000000000..ffaefc90ce47
--- /dev/null
+++ b/common/environment/build-style/sip-build.sh
@@ -0,0 +1,6 @@
+hostmakedepends+=" python3-PyQt-builder pkg-config"
+makedepends+=" python3-devel"
+lib32disabled=yes
+
+CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
+CXXFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"

From 523fe2812c2623bd301d7785ac3f70fb3e644a60 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 7/7] New package: python3-PyQt6-6.1.0

---
 srcpkgs/python3-PyQt6-core                    |   1 +
 srcpkgs/python3-PyQt6-dbus                    |   1 +
 srcpkgs/python3-PyQt6-devel                   |   1 +
 srcpkgs/python3-PyQt6-devel-tools             |   1 +
 srcpkgs/python3-PyQt6-gui                     |   1 +
 srcpkgs/python3-PyQt6-network                 |   1 +
 srcpkgs/python3-PyQt6-opengl-widgets          |   1 +
 srcpkgs/python3-PyQt6-printsupport            |   1 +
 srcpkgs/python3-PyQt6-sql                     |   1 +
 srcpkgs/python3-PyQt6-test                    |   1 +
 srcpkgs/python3-PyQt6-widgets                 |   1 +
 srcpkgs/python3-PyQt6-xml                     |   1 +
 .../patches/pyproject-cross.patch             |  20 +++
 srcpkgs/python3-PyQt6/template                | 146 ++++++++++++++++++
 14 files changed, 178 insertions(+)
 create mode 120000 srcpkgs/python3-PyQt6-core
 create mode 120000 srcpkgs/python3-PyQt6-dbus
 create mode 120000 srcpkgs/python3-PyQt6-devel
 create mode 120000 srcpkgs/python3-PyQt6-devel-tools
 create mode 120000 srcpkgs/python3-PyQt6-gui
 create mode 120000 srcpkgs/python3-PyQt6-network
 create mode 120000 srcpkgs/python3-PyQt6-opengl-widgets
 create mode 120000 srcpkgs/python3-PyQt6-printsupport
 create mode 120000 srcpkgs/python3-PyQt6-sql
 create mode 120000 srcpkgs/python3-PyQt6-test
 create mode 120000 srcpkgs/python3-PyQt6-widgets
 create mode 120000 srcpkgs/python3-PyQt6-xml
 create mode 100644 srcpkgs/python3-PyQt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-PyQt6/template

diff --git a/srcpkgs/python3-PyQt6-core b/srcpkgs/python3-PyQt6-core
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-core
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-dbus b/srcpkgs/python3-PyQt6-dbus
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-dbus
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-devel b/srcpkgs/python3-PyQt6-devel
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-devel
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-devel-tools b/srcpkgs/python3-PyQt6-devel-tools
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-devel-tools
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-gui b/srcpkgs/python3-PyQt6-gui
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-gui
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-network b/srcpkgs/python3-PyQt6-network
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-network
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-opengl-widgets b/srcpkgs/python3-PyQt6-opengl-widgets
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-opengl-widgets
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-printsupport b/srcpkgs/python3-PyQt6-printsupport
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-printsupport
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-sql b/srcpkgs/python3-PyQt6-sql
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-sql
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-test b/srcpkgs/python3-PyQt6-test
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-test
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-widgets b/srcpkgs/python3-PyQt6-widgets
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-widgets
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6-xml b/srcpkgs/python3-PyQt6-xml
new file mode 120000
index 000000000000..9f73cbb49761
--- /dev/null
+++ b/srcpkgs/python3-PyQt6-xml
@@ -0,0 +1 @@
+python3-PyQt6
\ No newline at end of file
diff --git a/srcpkgs/python3-PyQt6/patches/pyproject-cross.patch b/srcpkgs/python3-PyQt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-PyQt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-PyQt6/template b/srcpkgs/python3-PyQt6/template
new file mode 100644
index 000000000000..35e2437bb45d
--- /dev/null
+++ b/srcpkgs/python3-PyQt6/template
@@ -0,0 +1,146 @@
+# Template file for 'python3-PyQt6'
+pkgname=python3-PyQt6
+version=6.1.0
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+hostmakedepends="qt6-base-devel python3-dbus"
+makedepends="qt6-base-devel python3-dbus-devel"
+depends="python3-PyQt6-sip"
+short_desc="Python 3 bindings for the Qt6 application toolkit"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=9b45df6c404d7297598b91378d1e3f9bdf0970553ebb53c192a9051576098f9b
+lib32disabled=yes
+patch_args=-Np1
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+python3-PyQt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-PyQt6-devel_package() {
+	depends="sip>=6.0.0
+	 python3-PyQt6-dbus>=${version}_${revision}
+	 python3-PyQt6-gui>=${version}_${revision}
+	 python3-PyQt6-opengl-widgets>=${version}_${revision}
+	 python3-PyQt6-core>=${version}_${revision}
+	 python3-PyQt6-printsupport>=${version}_${revision}
+	 python3-PyQt6-widgets>=${version}_${revision}
+	 python3-PyQt6-network>=${version}_${revision}
+	 python3-PyQt6-sql>=${version}_${revision}
+	 python3-PyQt6-test>=${version}_${revision}
+	 python3-PyQt6-xml>=${version}_${revision}
+	 python3-PyQt6-devel-tools>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
+
+# Split like qt6
+
+python3-PyQt6-dbus_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - dbus support"
+	pkg_install() {
+		vmove ${py3_sitelib}/dbus
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-PyQt6-gui_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-PyQt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-PyQt6-core_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Core"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+	}
+}
+
+python3-PyQt6-printsupport_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-PyQt6-widgets_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-PyQt6-network_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-PyQt6-sql_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-PyQt6-test_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-PyQt6-xml_package() {
+	lib32disabled=yes
+	depends="python3-PyQt6>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}

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

* Re: [PR PATCH] [Updated] WIP: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (3 preceding siblings ...)
  2021-05-29 16:47 ` sgn
@ 2021-05-30 17:14 ` sgn
  2021-05-31 11:54 ` sgn
                   ` (9 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-05-30 17:14 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 39247 bytes --]

From 4f1044b82ffcb9b826625aa11b0dbfb146b03871 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 29 May 2021 11:49:19 +0700
Subject: [PATCH 1/8] qt6-base: fix QMAKE_LIBS_LIBATOMIC for armv6

See: /usr/lib/qt6/mkspecs/modules/qt_lib_core_private.pri

It should say "-latomic" instead of "atomic".
---
 srcpkgs/qt6-base/patches/libatomic.patch | 14 ++++++++++++++
 srcpkgs/qt6-base/template                |  4 ++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/qt6-base/patches/libatomic.patch

diff --git a/srcpkgs/qt6-base/patches/libatomic.patch b/srcpkgs/qt6-base/patches/libatomic.patch
new file mode 100644
index 000000000000..edbe5e609d5a
--- /dev/null
+++ b/srcpkgs/qt6-base/patches/libatomic.patch
@@ -0,0 +1,14 @@
+Index: cmake/FindWrapAtomic.cmake
+===================================================================
+--- cmake/FindWrapAtomic.cmake.orig
++++ cmake/FindWrapAtomic.cmake
+@@ -38,7 +38,8 @@ endif()
+ 
+ add_library(WrapAtomic::WrapAtomic INTERFACE IMPORTED)
+ if(HAVE_STDATOMIC_WITH_LIB)
+-    target_link_libraries(WrapAtomic::WrapAtomic INTERFACE atomic)
++    find_library(LIBATOMIC atomic REQUIRED)
++    target_link_libraries(WrapAtomic::WrapAtomic INTERFACE ${LIBATOMIC})
+ endif()
+ 
+ set(WrapAtomic_FOUND 1)
diff --git a/srcpkgs/qt6-base/template b/srcpkgs/qt6-base/template
index c720e7f51671..d03dfe7a2129 100644
--- a/srcpkgs/qt6-base/template
+++ b/srcpkgs/qt6-base/template
@@ -1,7 +1,7 @@
 # Template file for 'qt6-base'
 pkgname=qt6-base
 version=6.1.0
-revision=1
+revision=2
 wrksrc="qtbase-everywhere-src-${version}"
 build_style=cmake
 configure_args="-DINSTALL_DATADIR=share/qt6
@@ -25,7 +25,7 @@ makedepends="zlib-devel libzstd-devel dbus-devel
  sqlite-devel Vulkan-Headers mit-krb5-devel vulkan-loader"
 short_desc="Cross-platform application and UI framework (QT6)"
 maintainer="John <me@johnnynator.dev>"
-license="GPL-3.0-only with Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
+license="GPL-3.0-only WITH Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
 homepage="https://www.qt.io"
 distfiles="https://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtbase-everywhere-src-${version}.tar.xz"
 checksum=f7af3c87e96051d09b5abce6c88277c33031bef241ebfe1db4106d33ed0814c4

From dca58e5c9d7df90c2aa702c7c27d29fb65ed252c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:03:09 +0700
Subject: [PATCH 2/8] python3-PyQt-builder: update to 1.10.0.

---
 srcpkgs/python3-PyQt-builder/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-PyQt-builder/template b/srcpkgs/python3-PyQt-builder/template
index befe99aae73a..58d5ad28db8b 100644
--- a/srcpkgs/python3-PyQt-builder/template
+++ b/srcpkgs/python3-PyQt-builder/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-PyQt-builder'
 pkgname=python3-PyQt-builder
-version=1.9.1
+version=1.10.0
 revision=1
 wrksrc=PyQt-builder-$version
 build_style=python3-module
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://www.riverbankcomputing.com/software/pyqt/"
 distfiles="$PYPI_SITE/P/PyQt-builder/PyQt-builder-$version.tar.gz"
-checksum=8d669fe8fa434a3e47abde3b40d924d91932e8e19d88b20c778a3e1c77621ebc
+checksum=86bd19fde83d92beaefacdeac1e26c6e1918c300ff78d7ec2a19973bf2cf21b5
 
 post_install() {
 	rm -rf $DESTDIR/$py3_sitelib/pyqtbuild/bundle

From 5a8510436d8eb671f41cc6bc805f6ac05b27014d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:04:05 +0700
Subject: [PATCH 3/8] sip: update to 6.1.0.

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

diff --git a/srcpkgs/sip/template b/srcpkgs/sip/template
index 1227e754298f..2aa5a5cc4fe5 100644
--- a/srcpkgs/sip/template
+++ b/srcpkgs/sip/template
@@ -1,6 +1,6 @@
 # Template file for 'sip'
 pkgname=sip
-version=6.0.3
+version=6.1.0
 revision=1
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools python3-packaging python3-toml"
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/s/sip/sip-${version}.tar.gz"
-checksum=929e3515428ea962003ccf6795244a5fe4fa6e2c94dc9ab8cb2c58fcd368c34c
+checksum=f069d550dd819609e019e5dc58fc5193e081c7f3fb4f7dc8f9be734e34d4e56e
 lib32disabled=yes
 replaces="sip5<=${version}_${revision}"
 provides="sip5-${version}_${revision}"

From 26a30748dd9848d72d1099e2d366f8a2197c55a2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 26 May 2021 08:20:10 +0700
Subject: [PATCH 4/8] python3-sip-PyQt5: update to 12.9.0.

---
 srcpkgs/python3-sip-PyQt5/template | 8 ++++----
 srcpkgs/python3-sip-PyQt5/update   | 2 ++
 2 files changed, 6 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/python3-sip-PyQt5/update

diff --git a/srcpkgs/python3-sip-PyQt5/template b/srcpkgs/python3-sip-PyQt5/template
index 6ef05a2e0b1d..efc715a7f910 100644
--- a/srcpkgs/python3-sip-PyQt5/template
+++ b/srcpkgs/python3-sip-PyQt5/template
@@ -1,18 +1,18 @@
 # Template file for 'python3-sip-PyQt5'
 pkgname=python3-sip-PyQt5
-version=12.8.1
-revision=2
+version=12.9.0
+revision=1
 wrksrc="PyQt5_sip-$version"
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools sip"
 makedepends="python3-devel"
 depends="python3"
 short_desc="Python 3 PyQt5 SIP bindings with C and C++"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/P/PyQt5_sip/PyQt5_sip-${version}.tar.gz"
-checksum=30e944db9abee9cc757aea16906d4198129558533eb7fadbe48c5da2bd18e0bd
+checksum=d3e4489d7c2b0ece9d203ae66e573939f7f60d4d29e089c9f11daa17cfeaae32
 lib32disabled=yes
 
 post_extract() {
diff --git a/srcpkgs/python3-sip-PyQt5/update b/srcpkgs/python3-sip-PyQt5/update
new file mode 100644
index 000000000000..656adf47509e
--- /dev/null
+++ b/srcpkgs/python3-sip-PyQt5/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt5-sip
+pattern='PyQt5_sip-\K([\d.]+)(?=.tar.gz)'

From 709227cf775b53c4e88c9524f53e52f3e6aae316 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 5/8] New package: python3-pyqt6-sip-13.1.0

---
 srcpkgs/python3-pyqt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-pyqt6-sip/template
 create mode 100644 srcpkgs/python3-pyqt6-sip/update

diff --git a/srcpkgs/python3-pyqt6-sip/template b/srcpkgs/python3-pyqt6-sip/template
new file mode 100644
index 000000000000..e7f2517c130e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-pyqt6-sip'
+pkgname=python3-pyqt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-pyqt6-sip/update b/srcpkgs/python3-pyqt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From c996130fa90fe0d0e24b93346c1ea8bccd93f95a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 6/8] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh             | 164 ++++++++++++++++++++
 common/environment/build-style/sip-build.sh |   6 +
 2 files changed, 170 insertions(+)
 create mode 100644 common/build-style/sip-build.sh
 create mode 100644 common/environment/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..5a651981f40c
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,164 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	local _qt=
+	local _spec=
+	local _mkspec=
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	case "$_build_help" in
+	*--qmake*)
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<_EOF
+MAKEFILE_GENERATOR      = UNIX
+CONFIG                 += incremental no_qt_rpath
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(/$_mkspec/common/linux.conf)
+include(/$_mkspec/common/gcc-base-unix.conf)
+include(/$_mkspec/common/g++-unix.conf)
+
+QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+QMAKE_CC                = $CC
+QMAKE_CXX               = $CXX
+QMAKE_LINK              = $CXX
+QMAKE_LINK_C            = $CC
+QMAKE_LINK_SHLIB        = $CXX
+
+QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+QMAKE_OBJCOPY           = $OBJCOPY
+QMAKE_NM                = $NM -P
+QMAKE_STRIP             = $STRIP
+
+QMAKE_CFLAGS            = $CFLAGS
+QMAKE_CXXFLAGS          = $CXXFLAGS
+QMAKE_LFLAGS            = -L$XBPS_CROSS_BASE/usr/lib $LDFLAGS
+load(qt_config)
+_EOF
+		echo "#include \"$XBPS_CROSS_BASE/$_mkspec/linux-g++/qplatformdefs.h\"" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<_EOF
+[Paths]
+Sysroot=$XBPS_CROSS_BASE
+Prefix=$XBPS_CROSS_BASE/usr
+ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+Data=$XBPS_CROSS_BASE/usr/share/$_qt
+Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+Libraries=$XBPS_CROSS_BASE/usr/lib
+LibraryExecutables=/usr/lib/$_qt/libexec
+Binaries=/usr/lib/$_qt/bin
+Tests=$XBPS_CROSS_BASE/usr/tests
+Plugins=/usr/lib/$_qt/plugins
+Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+Settings=$XBPS_CROSS_BASE/etc/xdg
+Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+HostPrefix=/usr
+HostData=/usr/lib/$_qt
+HostBinaries=/usr/lib/$_qt/bin
+HostLibraries=/usr/lib
+HostLibraryExecutables=/usr/lib/$_qt/libexec
+Spec=linux-g++
+TargetSpec=$_spec
+_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake "\$@" -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+	QMAKE_CFLAGS+="\$CFLAGS" \\
+	QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+	QMAKE_LFLAGS+="\$LDFLAGS"
+_EOF
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake \\
+	"\$@" \\
+	PREFIX=/usr \\
+	QT_INSTALL_PREFIX=/usr \\
+	LIB=/usr/lib \\
+	QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+	QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+	QMAKE_CFLAGS+="$CFLAGS" \\
+	QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+	QMAKE_LFLAGS+="$LDFLAGS" \\
+	CONFIG+=no_qt_rpath
+_EOF
+	fi
+	chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		$configure_args \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}
diff --git a/common/environment/build-style/sip-build.sh b/common/environment/build-style/sip-build.sh
new file mode 100644
index 000000000000..ffaefc90ce47
--- /dev/null
+++ b/common/environment/build-style/sip-build.sh
@@ -0,0 +1,6 @@
+hostmakedepends+=" python3-PyQt-builder pkg-config"
+makedepends+=" python3-devel"
+lib32disabled=yes
+
+CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
+CXXFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"

From 7683f773802f3652121fe8f93121dfae42cb2c94 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 7/8] New package: python3-pyqt6-6.1.0

---
 srcpkgs/python3-pyqt6-core                    |   1 +
 srcpkgs/python3-pyqt6-core-devel              |   1 +
 srcpkgs/python3-pyqt6-dbus                    |   1 +
 srcpkgs/python3-pyqt6-dbus-devel              |   1 +
 srcpkgs/python3-pyqt6-declarative             |   1 +
 srcpkgs/python3-pyqt6-declarative-devel       |   1 +
 srcpkgs/python3-pyqt6-devel                   |   1 +
 srcpkgs/python3-pyqt6-devel-tools             |   1 +
 srcpkgs/python3-pyqt6-gui                     |   1 +
 srcpkgs/python3-pyqt6-gui-devel               |   1 +
 srcpkgs/python3-pyqt6-network                 |   1 +
 srcpkgs/python3-pyqt6-network-devel           |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets          |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets-devel    |   1 +
 srcpkgs/python3-pyqt6-printsupport            |   1 +
 srcpkgs/python3-pyqt6-printsupport-devel      |   1 +
 srcpkgs/python3-pyqt6-quick3d                 |   1 +
 srcpkgs/python3-pyqt6-quick3d-devel           |   1 +
 srcpkgs/python3-pyqt6-sql                     |   1 +
 srcpkgs/python3-pyqt6-sql-devel               |   1 +
 srcpkgs/python3-pyqt6-svg                     |   1 +
 srcpkgs/python3-pyqt6-svg-devel               |   1 +
 srcpkgs/python3-pyqt6-test                    |   1 +
 srcpkgs/python3-pyqt6-test-devel              |   1 +
 srcpkgs/python3-pyqt6-tools                   |   1 +
 srcpkgs/python3-pyqt6-tools-devel             |   1 +
 srcpkgs/python3-pyqt6-widgets                 |   1 +
 srcpkgs/python3-pyqt6-widgets-devel           |   1 +
 srcpkgs/python3-pyqt6-xml                     |   1 +
 srcpkgs/python3-pyqt6-xml-devel               |   1 +
 .../patches/pyproject-cross.patch             |  20 ++
 srcpkgs/python3-pyqt6/template                | 337 ++++++++++++++++++
 32 files changed, 387 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-core
 create mode 120000 srcpkgs/python3-pyqt6-core-devel
 create mode 120000 srcpkgs/python3-pyqt6-dbus
 create mode 120000 srcpkgs/python3-pyqt6-dbus-devel
 create mode 120000 srcpkgs/python3-pyqt6-declarative
 create mode 120000 srcpkgs/python3-pyqt6-declarative-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel-tools
 create mode 120000 srcpkgs/python3-pyqt6-gui
 create mode 120000 srcpkgs/python3-pyqt6-gui-devel
 create mode 120000 srcpkgs/python3-pyqt6-network
 create mode 120000 srcpkgs/python3-pyqt6-network-devel
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-printsupport
 create mode 120000 srcpkgs/python3-pyqt6-printsupport-devel
 create mode 120000 srcpkgs/python3-pyqt6-quick3d
 create mode 120000 srcpkgs/python3-pyqt6-quick3d-devel
 create mode 120000 srcpkgs/python3-pyqt6-sql
 create mode 120000 srcpkgs/python3-pyqt6-sql-devel
 create mode 120000 srcpkgs/python3-pyqt6-svg
 create mode 120000 srcpkgs/python3-pyqt6-svg-devel
 create mode 120000 srcpkgs/python3-pyqt6-test
 create mode 120000 srcpkgs/python3-pyqt6-test-devel
 create mode 120000 srcpkgs/python3-pyqt6-tools
 create mode 120000 srcpkgs/python3-pyqt6-tools-devel
 create mode 120000 srcpkgs/python3-pyqt6-widgets
 create mode 120000 srcpkgs/python3-pyqt6-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-xml
 create mode 120000 srcpkgs/python3-pyqt6-xml-devel
 create mode 100644 srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-pyqt6/template

diff --git a/srcpkgs/python3-pyqt6-core b/srcpkgs/python3-pyqt6-core
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-core-devel b/srcpkgs/python3-pyqt6-core-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus b/srcpkgs/python3-pyqt6-dbus
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus-devel b/srcpkgs/python3-pyqt6-dbus-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative b/srcpkgs/python3-pyqt6-declarative
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative-devel b/srcpkgs/python3-pyqt6-declarative-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel b/srcpkgs/python3-pyqt6-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel-tools b/srcpkgs/python3-pyqt6-devel-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui b/srcpkgs/python3-pyqt6-gui
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui-devel b/srcpkgs/python3-pyqt6-gui-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network b/srcpkgs/python3-pyqt6-network
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network-devel b/srcpkgs/python3-pyqt6-network-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets b/srcpkgs/python3-pyqt6-opengl-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets-devel b/srcpkgs/python3-pyqt6-opengl-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport b/srcpkgs/python3-pyqt6-printsupport
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport-devel b/srcpkgs/python3-pyqt6-printsupport-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d b/srcpkgs/python3-pyqt6-quick3d
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d-devel b/srcpkgs/python3-pyqt6-quick3d-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql b/srcpkgs/python3-pyqt6-sql
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql-devel b/srcpkgs/python3-pyqt6-sql-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg b/srcpkgs/python3-pyqt6-svg
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg-devel b/srcpkgs/python3-pyqt6-svg-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test b/srcpkgs/python3-pyqt6-test
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test-devel b/srcpkgs/python3-pyqt6-test-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools b/srcpkgs/python3-pyqt6-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools-devel b/srcpkgs/python3-pyqt6-tools-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets b/srcpkgs/python3-pyqt6-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets-devel b/srcpkgs/python3-pyqt6-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml b/srcpkgs/python3-pyqt6-xml
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml-devel b/srcpkgs/python3-pyqt6-xml-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-pyqt6/template b/srcpkgs/python3-pyqt6/template
new file mode 100644
index 000000000000..1e1aca00661e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/template
@@ -0,0 +1,337 @@
+# Template file for 'python3-pyqt6'
+pkgname=python3-pyqt6
+version=6.1.0
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+hostmakedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus"
+makedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus-devel"
+depends="python3-pyqt6-sip"
+short_desc="Python 3 bindings for Qt6"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=9b45df6c404d7297598b91378d1e3f9bdf0970553ebb53c192a9051576098f9b
+lib32disabled=yes
+patch_args=-Np1
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+# Split like qt6, but keep qt6-core in main pkg
+# python3-pyqt6-core_package() {
+# 	lib32disabled=yes
+# 	depends="python3-pyqt6-sip>=${version}_${revision}"
+# 	short_desc="${short_desc} - Core"
+# 	pkg_install() {
+# 		vmove "${py3_sitelib}/*.dist-info"
+# 		vmove "${py3_sitelib}/PyQt6/__init__.py"
+# 		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+# 	}
+# }
+
+python3-pyqt6-core-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision} qt6-base-devel sip"
+	short_desc="${short_desc} - core development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtCore"
+	}
+}
+
+python3-pyqt6-dbus_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - DBus"
+	pkg_install() {
+		vmove "${py3_sitelib}/dbus"
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-pyqt6-dbus-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-dbus>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - DBus - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDBus"
+	}
+}
+
+python3-pyqt6-tools_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - Tools"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtDesigner.*"
+		vmove "${py3_sitelib}/PyQt6/QtHelp.*"
+		vmove usr/lib/qt6/plugins/designer
+	}
+}
+
+python3-pyqt6-tools-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-tools>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Tools - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDesigner"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtHelp"
+	}
+}
+
+python3-pyqt6-gui_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-pyqt6-gui-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-gui>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - GUI - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtGui"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGL"
+	}
+}
+
+python3-pyqt6-network_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-pyqt6-network-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-network>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtNetwork"
+	}
+}
+
+python3-pyqt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-pyqt6-opengl-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-opengl-widgets>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGLWidgets"
+	}
+}
+
+python3-pyqt6-printsupport_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-pyqt6-printsupport-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-printsupport>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtPrintSupport"
+	}
+}
+
+python3-pyqt6-declarative_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQml.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuick.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuickWidgets.*"
+	}
+}
+
+python3-pyqt6-declarative-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-declarative>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQml"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuickWidgets"
+	}
+}
+
+python3-pyqt6-quick3d_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQuick3D.*"
+	}
+}
+
+python3-pyqt6-quick3d-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-quick3d>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick3D"
+	}
+}
+
+python3-pyqt6-sql_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-pyqt6-sql-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-sql>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - SQL - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSql"
+	}
+}
+
+python3-pyqt6-svg_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - svg"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSvg.*"
+		vmove "${py3_sitelib}/PyQt6/QtSvgWidgets.*"
+	}
+}
+
+python3-pyqt6-svg-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-svg>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - svg - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvg"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvgWidgets"
+	}
+}
+
+python3-pyqt6-test_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-pyqt6-test-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-test>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Test - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtTest"
+	}
+}
+
+python3-pyqt6-widgets_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-pyqt6-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-widgets>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtWidgets"
+	}
+}
+
+python3-pyqt6-xml_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}
+
+python3-pyqt6-xml-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Xml - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtXml"
+	}
+}
+
+python3-pyqt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-pyqt6-devel_package() {
+	lib32disabled=yes
+	depends="
+	 python3-pyqt6-core-devel>=${version}_${revision}
+	 python3-pyqt6-dbus-devel>=${version}_${revision}
+	 python3-pyqt6-tools-devel>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}
+	 python3-pyqt6-network-devel>=${version}_${revision}
+	 python3-pyqt6-opengl-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-printsupport-devel>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}
+	 python3-pyqt6-quick3d-devel>=${version}_${revision}
+	 python3-pyqt6-sql-devel>=${version}_${revision}
+	 python3-pyqt6-svg-devel>=${version}_${revision}
+	 python3-pyqt6-test-devel>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-xml-devel>=${version}_${revision}
+	 python3-pyqt6-devel-tools>=${version}_${revision}"
+	build_style=meta
+	short_desc="${short_desc} - development files"
+}

From dd0bb3ae812e8e544a1665fae3a823a878e5d4a5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 30 May 2021 23:54:51 +0700
Subject: [PATCH 8/8] New package: python3-pyqt6-charts-6.1.0

---
 srcpkgs/python3-pyqt6-charts-devel    |  1 +
 srcpkgs/python3-pyqt6-charts/template | 30 +++++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-charts/update   |  2 ++
 3 files changed, 33 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-charts-devel
 create mode 100644 srcpkgs/python3-pyqt6-charts/template
 create mode 100644 srcpkgs/python3-pyqt6-charts/update

diff --git a/srcpkgs/python3-pyqt6-charts-devel b/srcpkgs/python3-pyqt6-charts-devel
new file mode 120000
index 000000000000..21a5afd07fc8
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts-devel
@@ -0,0 +1 @@
+python3-pyqt6-charts
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-charts/template b/srcpkgs/python3-pyqt6-charts/template
new file mode 100644
index 000000000000..5623a4665368
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/template
@@ -0,0 +1,30 @@
+# Template file for 'python3-pyqt6-charts'
+pkgname=python3-pyqt6-charts
+version=6.1.0
+revision=1
+#archs="i686 x86_64"
+wrksrc=PyQt6_Charts-$version
+#create_wrksrc=yes
+build_style=sip-build
+#configure_args=""
+#make_build_args=""
+#make_install_args=""
+#conf_files=""
+#make_dirs="/var/log/dir 0755 root root"
+hostmakedepends="qt6-base-devel qt6-charts-devel python3-pyqt6-widgets-devel"
+makedepends="qt6-base-devel qt6-charts-devel python3-pyqt6-widgets-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for Charts - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-or-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtchart/"
+distfiles="$PYPI_SITE/P/PyQt6-Charts/PyQt6_Charts-${version}.tar.gz"
+checksum=46c83c1bf044c3d86cdc38c2eb37168432e0cc877e54fc3522af11f00021a7f4
+
+python3-pyqt6-charts-devel_package() {
+	short_desc+=" - development files"
+	depends="python3-pyqt6-widgets-devel qt6-charts-devel"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-charts/update b/srcpkgs/python3-pyqt6-charts/update
new file mode 100644
index 000000000000..783ec1b7e7ba
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-Charts
+pattern='PyQt6_Charts-\K([\d.]+)(?=.tar.gz)'

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

* Re: [PR PATCH] [Updated] WIP: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (4 preceding siblings ...)
  2021-05-30 17:14 ` sgn
@ 2021-05-31 11:54 ` sgn
  2021-06-04 15:14 ` sgn
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-05-31 11:54 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 43636 bytes --]

From a6402991f80f317f3e9c7660770d315e3d743771 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 29 May 2021 11:49:19 +0700
Subject: [PATCH 01/10] qt6-base: fix QMAKE_LIBS_LIBATOMIC for armv6

See: /usr/lib/qt6/mkspecs/modules/qt_lib_core_private.pri

It should say "-latomic" instead of "atomic".
---
 srcpkgs/qt6-base/patches/libatomic.patch | 14 ++++++++++++++
 srcpkgs/qt6-base/template                |  4 ++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/qt6-base/patches/libatomic.patch

diff --git a/srcpkgs/qt6-base/patches/libatomic.patch b/srcpkgs/qt6-base/patches/libatomic.patch
new file mode 100644
index 000000000000..edbe5e609d5a
--- /dev/null
+++ b/srcpkgs/qt6-base/patches/libatomic.patch
@@ -0,0 +1,14 @@
+Index: cmake/FindWrapAtomic.cmake
+===================================================================
+--- cmake/FindWrapAtomic.cmake.orig
++++ cmake/FindWrapAtomic.cmake
+@@ -38,7 +38,8 @@ endif()
+ 
+ add_library(WrapAtomic::WrapAtomic INTERFACE IMPORTED)
+ if(HAVE_STDATOMIC_WITH_LIB)
+-    target_link_libraries(WrapAtomic::WrapAtomic INTERFACE atomic)
++    find_library(LIBATOMIC atomic REQUIRED)
++    target_link_libraries(WrapAtomic::WrapAtomic INTERFACE ${LIBATOMIC})
+ endif()
+ 
+ set(WrapAtomic_FOUND 1)
diff --git a/srcpkgs/qt6-base/template b/srcpkgs/qt6-base/template
index c720e7f51671..d03dfe7a2129 100644
--- a/srcpkgs/qt6-base/template
+++ b/srcpkgs/qt6-base/template
@@ -1,7 +1,7 @@
 # Template file for 'qt6-base'
 pkgname=qt6-base
 version=6.1.0
-revision=1
+revision=2
 wrksrc="qtbase-everywhere-src-${version}"
 build_style=cmake
 configure_args="-DINSTALL_DATADIR=share/qt6
@@ -25,7 +25,7 @@ makedepends="zlib-devel libzstd-devel dbus-devel
  sqlite-devel Vulkan-Headers mit-krb5-devel vulkan-loader"
 short_desc="Cross-platform application and UI framework (QT6)"
 maintainer="John <me@johnnynator.dev>"
-license="GPL-3.0-only with Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
+license="GPL-3.0-only WITH Qt-GPL-exception-1.0, LGPL-3.0-only, GPL-2.0-or-later"
 homepage="https://www.qt.io"
 distfiles="https://download.qt.io/official_releases/qt/${version%.*}/${version}/submodules/qtbase-everywhere-src-${version}.tar.xz"
 checksum=f7af3c87e96051d09b5abce6c88277c33031bef241ebfe1db4106d33ed0814c4

From cc73f37f0f333894cda9548ac517744f5f053cdc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:03:09 +0700
Subject: [PATCH 02/10] python3-PyQt-builder: update to 1.10.0.

---
 srcpkgs/python3-PyQt-builder/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-PyQt-builder/template b/srcpkgs/python3-PyQt-builder/template
index befe99aae73a..58d5ad28db8b 100644
--- a/srcpkgs/python3-PyQt-builder/template
+++ b/srcpkgs/python3-PyQt-builder/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-PyQt-builder'
 pkgname=python3-PyQt-builder
-version=1.9.1
+version=1.10.0
 revision=1
 wrksrc=PyQt-builder-$version
 build_style=python3-module
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://www.riverbankcomputing.com/software/pyqt/"
 distfiles="$PYPI_SITE/P/PyQt-builder/PyQt-builder-$version.tar.gz"
-checksum=8d669fe8fa434a3e47abde3b40d924d91932e8e19d88b20c778a3e1c77621ebc
+checksum=86bd19fde83d92beaefacdeac1e26c6e1918c300ff78d7ec2a19973bf2cf21b5
 
 post_install() {
 	rm -rf $DESTDIR/$py3_sitelib/pyqtbuild/bundle

From 0847241c4ffde1055383ab2d1a9f7f169a064907 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 14 May 2021 22:04:05 +0700
Subject: [PATCH 03/10] sip: update to 6.1.0.

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

diff --git a/srcpkgs/sip/template b/srcpkgs/sip/template
index 1227e754298f..2aa5a5cc4fe5 100644
--- a/srcpkgs/sip/template
+++ b/srcpkgs/sip/template
@@ -1,6 +1,6 @@
 # Template file for 'sip'
 pkgname=sip
-version=6.0.3
+version=6.1.0
 revision=1
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools python3-packaging python3-toml"
@@ -11,7 +11,7 @@ maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/s/sip/sip-${version}.tar.gz"
-checksum=929e3515428ea962003ccf6795244a5fe4fa6e2c94dc9ab8cb2c58fcd368c34c
+checksum=f069d550dd819609e019e5dc58fc5193e081c7f3fb4f7dc8f9be734e34d4e56e
 lib32disabled=yes
 replaces="sip5<=${version}_${revision}"
 provides="sip5-${version}_${revision}"

From 9679658831bc099a1f89d2350ae6eb9509cf4324 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 26 May 2021 08:20:10 +0700
Subject: [PATCH 04/10] python3-sip-PyQt5: update to 12.9.0.

---
 srcpkgs/python3-sip-PyQt5/template | 8 ++++----
 srcpkgs/python3-sip-PyQt5/update   | 2 ++
 2 files changed, 6 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/python3-sip-PyQt5/update

diff --git a/srcpkgs/python3-sip-PyQt5/template b/srcpkgs/python3-sip-PyQt5/template
index 6ef05a2e0b1d..efc715a7f910 100644
--- a/srcpkgs/python3-sip-PyQt5/template
+++ b/srcpkgs/python3-sip-PyQt5/template
@@ -1,18 +1,18 @@
 # Template file for 'python3-sip-PyQt5'
 pkgname=python3-sip-PyQt5
-version=12.8.1
-revision=2
+version=12.9.0
+revision=1
 wrksrc="PyQt5_sip-$version"
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools sip"
 makedepends="python3-devel"
 depends="python3"
 short_desc="Python 3 PyQt5 SIP bindings with C and C++"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
 license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
 homepage="https://riverbankcomputing.com/software/sip/intro"
 distfiles="${PYPI_SITE}/P/PyQt5_sip/PyQt5_sip-${version}.tar.gz"
-checksum=30e944db9abee9cc757aea16906d4198129558533eb7fadbe48c5da2bd18e0bd
+checksum=d3e4489d7c2b0ece9d203ae66e573939f7f60d4d29e089c9f11daa17cfeaae32
 lib32disabled=yes
 
 post_extract() {
diff --git a/srcpkgs/python3-sip-PyQt5/update b/srcpkgs/python3-sip-PyQt5/update
new file mode 100644
index 000000000000..656adf47509e
--- /dev/null
+++ b/srcpkgs/python3-sip-PyQt5/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt5-sip
+pattern='PyQt5_sip-\K([\d.]+)(?=.tar.gz)'

From 187d262cf6f58f2602b0f4848aafb027d90e97e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 05/10] New package: python3-pyqt6-sip-13.1.0

---
 srcpkgs/python3-pyqt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-pyqt6-sip/template
 create mode 100644 srcpkgs/python3-pyqt6-sip/update

diff --git a/srcpkgs/python3-pyqt6-sip/template b/srcpkgs/python3-pyqt6-sip/template
new file mode 100644
index 000000000000..e7f2517c130e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-pyqt6-sip'
+pkgname=python3-pyqt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-pyqt6-sip/update b/srcpkgs/python3-pyqt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From a8ce46bd5df5f8c76ca5b9b8bb5a6155c839a9bc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 06/10] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh             | 164 ++++++++++++++++++++
 common/environment/build-style/sip-build.sh |   6 +
 2 files changed, 170 insertions(+)
 create mode 100644 common/build-style/sip-build.sh
 create mode 100644 common/environment/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..5a651981f40c
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,164 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	local _qt=
+	local _spec=
+	local _mkspec=
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	case "$_build_help" in
+	*--qmake*)
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<_EOF
+MAKEFILE_GENERATOR      = UNIX
+CONFIG                 += incremental no_qt_rpath
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(/$_mkspec/common/linux.conf)
+include(/$_mkspec/common/gcc-base-unix.conf)
+include(/$_mkspec/common/g++-unix.conf)
+
+QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+QMAKE_CC                = $CC
+QMAKE_CXX               = $CXX
+QMAKE_LINK              = $CXX
+QMAKE_LINK_C            = $CC
+QMAKE_LINK_SHLIB        = $CXX
+
+QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+QMAKE_OBJCOPY           = $OBJCOPY
+QMAKE_NM                = $NM -P
+QMAKE_STRIP             = $STRIP
+
+QMAKE_CFLAGS            = $CFLAGS
+QMAKE_CXXFLAGS          = $CXXFLAGS
+QMAKE_LFLAGS            = -L$XBPS_CROSS_BASE/usr/lib $LDFLAGS
+load(qt_config)
+_EOF
+		echo "#include \"$XBPS_CROSS_BASE/$_mkspec/linux-g++/qplatformdefs.h\"" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<_EOF
+[Paths]
+Sysroot=$XBPS_CROSS_BASE
+Prefix=$XBPS_CROSS_BASE/usr
+ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+Data=$XBPS_CROSS_BASE/usr/share/$_qt
+Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+Libraries=$XBPS_CROSS_BASE/usr/lib
+LibraryExecutables=/usr/lib/$_qt/libexec
+Binaries=/usr/lib/$_qt/bin
+Tests=$XBPS_CROSS_BASE/usr/tests
+Plugins=/usr/lib/$_qt/plugins
+Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+Settings=$XBPS_CROSS_BASE/etc/xdg
+Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+HostPrefix=/usr
+HostData=/usr/lib/$_qt
+HostBinaries=/usr/lib/$_qt/bin
+HostLibraries=/usr/lib
+HostLibraryExecutables=/usr/lib/$_qt/libexec
+Spec=linux-g++
+TargetSpec=$_spec
+_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake "\$@" -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+	QMAKE_CFLAGS+="\$CFLAGS" \\
+	QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+	QMAKE_LFLAGS+="\$LDFLAGS"
+_EOF
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake \\
+	"\$@" \\
+	PREFIX=/usr \\
+	QT_INSTALL_PREFIX=/usr \\
+	LIB=/usr/lib \\
+	QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+	QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+	QMAKE_CFLAGS+="$CFLAGS" \\
+	QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+	QMAKE_LFLAGS+="$LDFLAGS" \\
+	CONFIG+=no_qt_rpath
+_EOF
+	fi
+	chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		$configure_args \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}
diff --git a/common/environment/build-style/sip-build.sh b/common/environment/build-style/sip-build.sh
new file mode 100644
index 000000000000..ffaefc90ce47
--- /dev/null
+++ b/common/environment/build-style/sip-build.sh
@@ -0,0 +1,6 @@
+hostmakedepends+=" python3-PyQt-builder pkg-config"
+makedepends+=" python3-devel"
+lib32disabled=yes
+
+CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
+CXXFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"

From df12ea9243bdcfa61cc5a424af094f6593ebf4a1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 07/10] New package: python3-pyqt6-6.1.0

---
 srcpkgs/python3-pyqt6-core                    |   1 +
 srcpkgs/python3-pyqt6-core-devel              |   1 +
 srcpkgs/python3-pyqt6-dbus                    |   1 +
 srcpkgs/python3-pyqt6-dbus-devel              |   1 +
 srcpkgs/python3-pyqt6-declarative             |   1 +
 srcpkgs/python3-pyqt6-declarative-devel       |   1 +
 srcpkgs/python3-pyqt6-devel                   |   1 +
 srcpkgs/python3-pyqt6-devel-tools             |   1 +
 srcpkgs/python3-pyqt6-gui                     |   1 +
 srcpkgs/python3-pyqt6-gui-devel               |   1 +
 srcpkgs/python3-pyqt6-network                 |   1 +
 srcpkgs/python3-pyqt6-network-devel           |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets          |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets-devel    |   1 +
 srcpkgs/python3-pyqt6-printsupport            |   1 +
 srcpkgs/python3-pyqt6-printsupport-devel      |   1 +
 srcpkgs/python3-pyqt6-quick3d                 |   1 +
 srcpkgs/python3-pyqt6-quick3d-devel           |   1 +
 srcpkgs/python3-pyqt6-sql                     |   1 +
 srcpkgs/python3-pyqt6-sql-devel               |   1 +
 srcpkgs/python3-pyqt6-svg                     |   1 +
 srcpkgs/python3-pyqt6-svg-devel               |   1 +
 srcpkgs/python3-pyqt6-test                    |   1 +
 srcpkgs/python3-pyqt6-test-devel              |   1 +
 srcpkgs/python3-pyqt6-tools                   |   1 +
 srcpkgs/python3-pyqt6-tools-devel             |   1 +
 srcpkgs/python3-pyqt6-widgets                 |   1 +
 srcpkgs/python3-pyqt6-widgets-devel           |   1 +
 srcpkgs/python3-pyqt6-xml                     |   1 +
 srcpkgs/python3-pyqt6-xml-devel               |   1 +
 .../patches/pyproject-cross.patch             |  20 ++
 srcpkgs/python3-pyqt6/template                | 338 ++++++++++++++++++
 32 files changed, 388 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-core
 create mode 120000 srcpkgs/python3-pyqt6-core-devel
 create mode 120000 srcpkgs/python3-pyqt6-dbus
 create mode 120000 srcpkgs/python3-pyqt6-dbus-devel
 create mode 120000 srcpkgs/python3-pyqt6-declarative
 create mode 120000 srcpkgs/python3-pyqt6-declarative-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel-tools
 create mode 120000 srcpkgs/python3-pyqt6-gui
 create mode 120000 srcpkgs/python3-pyqt6-gui-devel
 create mode 120000 srcpkgs/python3-pyqt6-network
 create mode 120000 srcpkgs/python3-pyqt6-network-devel
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-printsupport
 create mode 120000 srcpkgs/python3-pyqt6-printsupport-devel
 create mode 120000 srcpkgs/python3-pyqt6-quick3d
 create mode 120000 srcpkgs/python3-pyqt6-quick3d-devel
 create mode 120000 srcpkgs/python3-pyqt6-sql
 create mode 120000 srcpkgs/python3-pyqt6-sql-devel
 create mode 120000 srcpkgs/python3-pyqt6-svg
 create mode 120000 srcpkgs/python3-pyqt6-svg-devel
 create mode 120000 srcpkgs/python3-pyqt6-test
 create mode 120000 srcpkgs/python3-pyqt6-test-devel
 create mode 120000 srcpkgs/python3-pyqt6-tools
 create mode 120000 srcpkgs/python3-pyqt6-tools-devel
 create mode 120000 srcpkgs/python3-pyqt6-widgets
 create mode 120000 srcpkgs/python3-pyqt6-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-xml
 create mode 120000 srcpkgs/python3-pyqt6-xml-devel
 create mode 100644 srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-pyqt6/template

diff --git a/srcpkgs/python3-pyqt6-core b/srcpkgs/python3-pyqt6-core
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-core-devel b/srcpkgs/python3-pyqt6-core-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus b/srcpkgs/python3-pyqt6-dbus
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus-devel b/srcpkgs/python3-pyqt6-dbus-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative b/srcpkgs/python3-pyqt6-declarative
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative-devel b/srcpkgs/python3-pyqt6-declarative-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel b/srcpkgs/python3-pyqt6-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel-tools b/srcpkgs/python3-pyqt6-devel-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui b/srcpkgs/python3-pyqt6-gui
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui-devel b/srcpkgs/python3-pyqt6-gui-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network b/srcpkgs/python3-pyqt6-network
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network-devel b/srcpkgs/python3-pyqt6-network-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets b/srcpkgs/python3-pyqt6-opengl-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets-devel b/srcpkgs/python3-pyqt6-opengl-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport b/srcpkgs/python3-pyqt6-printsupport
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport-devel b/srcpkgs/python3-pyqt6-printsupport-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d b/srcpkgs/python3-pyqt6-quick3d
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d-devel b/srcpkgs/python3-pyqt6-quick3d-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql b/srcpkgs/python3-pyqt6-sql
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql-devel b/srcpkgs/python3-pyqt6-sql-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg b/srcpkgs/python3-pyqt6-svg
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg-devel b/srcpkgs/python3-pyqt6-svg-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test b/srcpkgs/python3-pyqt6-test
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test-devel b/srcpkgs/python3-pyqt6-test-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools b/srcpkgs/python3-pyqt6-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools-devel b/srcpkgs/python3-pyqt6-tools-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets b/srcpkgs/python3-pyqt6-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets-devel b/srcpkgs/python3-pyqt6-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml b/srcpkgs/python3-pyqt6-xml
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml-devel b/srcpkgs/python3-pyqt6-xml-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-pyqt6/template b/srcpkgs/python3-pyqt6/template
new file mode 100644
index 000000000000..466b2da8b49b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/template
@@ -0,0 +1,338 @@
+# Template file for 'python3-pyqt6'
+pkgname=python3-pyqt6
+version=6.1.0
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+hostmakedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus"
+makedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus-devel"
+depends="python3-pyqt6-sip"
+short_desc="Python 3 bindings for Qt6"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=9b45df6c404d7297598b91378d1e3f9bdf0970553ebb53c192a9051576098f9b
+lib32disabled=yes
+patch_args=-Np1
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+# Split like qt6, but keep qt6-core in main pkg
+# python3-pyqt6-core_package() {
+# 	lib32disabled=yes
+# 	depends="python3-pyqt6-sip>=${version}_${revision}"
+# 	short_desc="${short_desc} - Core"
+# 	pkg_install() {
+# 		vmove "${py3_sitelib}/*.dist-info"
+# 		vmove "${py3_sitelib}/PyQt6/__init__.py"
+# 		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+# 	}
+# }
+
+python3-pyqt6-core-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 qt6-base-devel python3-devel sip"
+	short_desc="${short_desc} - core development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtCore"
+	}
+}
+
+python3-pyqt6-dbus_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - DBus"
+	pkg_install() {
+		vmove "${py3_sitelib}/dbus"
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-pyqt6-dbus-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-dbus>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - DBus - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDBus"
+	}
+}
+
+python3-pyqt6-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Tools"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtDesigner.*"
+		vmove "${py3_sitelib}/PyQt6/QtHelp.*"
+		vmove usr/lib/qt6/plugins/designer
+	}
+}
+
+python3-pyqt6-tools-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-tools>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Tools - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDesigner"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtHelp"
+	}
+}
+
+python3-pyqt6-gui_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-pyqt6-gui-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-gui>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - GUI - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtGui"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGL"
+	}
+}
+
+python3-pyqt6-network_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-pyqt6-network-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-network>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtNetwork"
+	}
+}
+
+python3-pyqt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-pyqt6-opengl-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-opengl-widgets>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGLWidgets"
+	}
+}
+
+python3-pyqt6-printsupport_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-pyqt6-printsupport-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-printsupport>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtPrintSupport"
+	}
+}
+
+python3-pyqt6-declarative_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQml.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuick.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuickWidgets.*"
+	}
+}
+
+python3-pyqt6-declarative-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-declarative>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQml"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuickWidgets"
+	}
+}
+
+python3-pyqt6-quick3d_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQuick3D.*"
+	}
+}
+
+python3-pyqt6-quick3d-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-quick3d>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick3D"
+	}
+}
+
+python3-pyqt6-sql_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-pyqt6-sql-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-sql>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - SQL - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSql"
+	}
+}
+
+python3-pyqt6-svg_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - svg"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSvg.*"
+		vmove "${py3_sitelib}/PyQt6/QtSvgWidgets.*"
+	}
+}
+
+python3-pyqt6-svg-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-svg>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - svg - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvg"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvgWidgets"
+	}
+}
+
+python3-pyqt6-test_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-pyqt6-test-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-test>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Test - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtTest"
+	}
+}
+
+python3-pyqt6-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-pyqt6-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-widgets>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtWidgets"
+	}
+}
+
+python3-pyqt6-xml_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}
+
+python3-pyqt6-xml-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Xml - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtXml"
+	}
+}
+
+python3-pyqt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-pyqt6-devel_package() {
+	lib32disabled=yes
+	depends="
+	 python3-pyqt6-core-devel>=${version}_${revision}
+	 python3-pyqt6-dbus-devel>=${version}_${revision}
+	 python3-pyqt6-tools-devel>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}
+	 python3-pyqt6-network-devel>=${version}_${revision}
+	 python3-pyqt6-opengl-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-printsupport-devel>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}
+	 python3-pyqt6-quick3d-devel>=${version}_${revision}
+	 python3-pyqt6-sql-devel>=${version}_${revision}
+	 python3-pyqt6-svg-devel>=${version}_${revision}
+	 python3-pyqt6-test-devel>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-xml-devel>=${version}_${revision}
+	 python3-pyqt6-devel-tools>=${version}_${revision}"
+	build_style=meta
+	short_desc="${short_desc} - development files"
+}

From 3a396422c73e60f1232ad0eb5c830315f41609be Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 18:53:40 +0700
Subject: [PATCH 08/10] New package: python3-pyqt6-charts-6.1.0

---
 srcpkgs/python3-pyqt6-charts-devel    |  1 +
 srcpkgs/python3-pyqt6-charts/template | 23 +++++++++++++++++++++++
 srcpkgs/python3-pyqt6-charts/update   |  2 ++
 3 files changed, 26 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-charts-devel
 create mode 100644 srcpkgs/python3-pyqt6-charts/template
 create mode 100644 srcpkgs/python3-pyqt6-charts/update

diff --git a/srcpkgs/python3-pyqt6-charts-devel b/srcpkgs/python3-pyqt6-charts-devel
new file mode 120000
index 000000000000..21a5afd07fc8
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts-devel
@@ -0,0 +1 @@
+python3-pyqt6-charts
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-charts/template b/srcpkgs/python3-pyqt6-charts/template
new file mode 100644
index 000000000000..02bf723a42cf
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyqt6-charts'
+pkgname=python3-pyqt6-charts
+version=6.1.0
+revision=1
+wrksrc=PyQt6_Charts-$version
+build_style=sip-build
+hostmakedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+makedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for Charts - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtchart/"
+distfiles="$PYPI_SITE/P/PyQt6-Charts/PyQt6_Charts-${version}.tar.gz"
+checksum=46c83c1bf044c3d86cdc38c2eb37168432e0cc877e54fc3522af11f00021a7f4
+
+python3-pyqt6-charts-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-charts/update b/srcpkgs/python3-pyqt6-charts/update
new file mode 100644
index 000000000000..783ec1b7e7ba
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-Charts
+pattern='PyQt6_Charts-\K([\d.]+)(?=.tar.gz)'

From 3e7f795def74dc8ff3d3d44f7629b7a8a32628ac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 18:53:42 +0700
Subject: [PATCH 09/10] New package: python3-pyqt6-3d-6.1.0

---
 srcpkgs/python3-pyqt6-3d-devel    |  1 +
 srcpkgs/python3-pyqt6-3d/template | 23 +++++++++++++++++++++++
 srcpkgs/python3-pyqt6-3d/update   |  2 ++
 3 files changed, 26 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-3d-devel
 create mode 100644 srcpkgs/python3-pyqt6-3d/template
 create mode 100644 srcpkgs/python3-pyqt6-3d/update

diff --git a/srcpkgs/python3-pyqt6-3d-devel b/srcpkgs/python3-pyqt6-3d-devel
new file mode 120000
index 000000000000..129722a79e7b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d-devel
@@ -0,0 +1 @@
+python3-pyqt6-3d
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-3d/template b/srcpkgs/python3-pyqt6-3d/template
new file mode 100644
index 000000000000..89556a447b61
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyqt6-3d'
+pkgname=python3-pyqt6-3d
+version=6.1.0
+revision=1
+wrksrc=PyQt6_3D-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+makedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for 3D - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt3d/"
+distfiles="$PYPI_SITE/P/PyQt6-3D/PyQt6_3D-${version}.tar.gz"
+checksum=8f04ffa5d8ba983434b0b12a63d06e8efab671a0b2002cee761bbd0ef443513c
+
+python3-pyqt6-3d-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-3d/update b/srcpkgs/python3-pyqt6-3d/update
new file mode 100644
index 000000000000..6877724b1356
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-3D
+pattern='PyQt6_3D-\K([\d.]+)(?=.tar.gz)'

From 42138b85d55188ad472539a22f82827966adb1c6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 18:53:43 +0700
Subject: [PATCH 10/10] New package: python3-pyqt6-networkauth-6.1.0

---
 srcpkgs/python3-pyqt6-networkauth-devel    |  1 +
 srcpkgs/python3-pyqt6-networkauth/template | 23 ++++++++++++++++++++++
 srcpkgs/python3-pyqt6-networkauth/update   |  2 ++
 3 files changed, 26 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-networkauth-devel
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/template
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/update

diff --git a/srcpkgs/python3-pyqt6-networkauth-devel b/srcpkgs/python3-pyqt6-networkauth-devel
new file mode 120000
index 000000000000..0d76b4e1cd2d
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth-devel
@@ -0,0 +1 @@
+python3-pyqt6-networkauth
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-networkauth/template b/srcpkgs/python3-pyqt6-networkauth/template
new file mode 100644
index 000000000000..0647b014e7e6
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyqt6-networkauth'
+pkgname=python3-pyqt6-networkauth
+version=6.1.0
+revision=1
+wrksrc=PyQt6_NetworkAuth-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+makedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for NetworkAuth - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtnetworkauth/"
+distfiles="$PYPI_SITE/P/PyQt6-NetworkAuth/PyQt6_NetworkAuth-${version}.tar.gz"
+checksum=11af1bb27a6b3686db8770cd9c089be408d4db93115ca77600e6c6415e3d318c
+
+python3-pyqt6-networkauth-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-networkauth/update b/srcpkgs/python3-pyqt6-networkauth/update
new file mode 100644
index 000000000000..2e83411a72ec
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-NetworkAuth
+pattern='PyQt6_NetworkAuth-\K([\d.]+)(?=.tar.gz)'

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

* Re: [PR PATCH] [Updated] WIP: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (5 preceding siblings ...)
  2021-05-31 11:54 ` sgn
@ 2021-06-04 15:14 ` sgn
  2021-06-06  8:52 ` sgn
                   ` (7 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-06-04 15:14 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 37112 bytes --]

From 9a0a88babb9a01ce5c8d08244762928397f3c54a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 1/6] New package: python3-pyqt6-sip-13.1.0

---
 srcpkgs/python3-pyqt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-pyqt6-sip/template
 create mode 100644 srcpkgs/python3-pyqt6-sip/update

diff --git a/srcpkgs/python3-pyqt6-sip/template b/srcpkgs/python3-pyqt6-sip/template
new file mode 100644
index 000000000000..e7f2517c130e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-pyqt6-sip'
+pkgname=python3-pyqt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-pyqt6-sip/update b/srcpkgs/python3-pyqt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From 947568526abfa4cc7775c140dd67235f055c1b40 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 2/6] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh             | 168 ++++++++++++++++++++
 common/environment/build-style/sip-build.sh |   6 +
 2 files changed, 174 insertions(+)
 create mode 100644 common/build-style/sip-build.sh
 create mode 100644 common/environment/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..cfdba734dda3
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,168 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	local _qt=
+	local _spec=
+	local _mkspec=
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	case "$_build_help" in
+	*--qmake*)
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+
+	case "$_build_help" in
+	*--api-dir*) _apidir=/usr/share/$_qt/qsci/api/python ;;
+	esac
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<_EOF
+MAKEFILE_GENERATOR      = UNIX
+CONFIG                 += incremental no_qt_rpath
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(/$_mkspec/common/linux.conf)
+include(/$_mkspec/common/gcc-base-unix.conf)
+include(/$_mkspec/common/g++-unix.conf)
+
+QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+QMAKE_CC                = $CC
+QMAKE_CXX               = $CXX
+QMAKE_LINK              = $CXX
+QMAKE_LINK_C            = $CC
+QMAKE_LINK_SHLIB        = $CXX
+
+QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+QMAKE_OBJCOPY           = $OBJCOPY
+QMAKE_NM                = $NM -P
+QMAKE_STRIP             = $STRIP
+
+QMAKE_CFLAGS            = $CFLAGS
+QMAKE_CXXFLAGS          = $CXXFLAGS
+QMAKE_LFLAGS            = -L$XBPS_CROSS_BASE/usr/lib $LDFLAGS
+load(qt_config)
+_EOF
+		echo "#include \"$XBPS_CROSS_BASE/$_mkspec/linux-g++/qplatformdefs.h\"" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<_EOF
+[Paths]
+Sysroot=$XBPS_CROSS_BASE
+Prefix=$XBPS_CROSS_BASE/usr
+ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+Data=$XBPS_CROSS_BASE/usr/share/$_qt
+Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+Libraries=$XBPS_CROSS_BASE/usr/lib
+LibraryExecutables=/usr/lib/$_qt/libexec
+Binaries=/usr/lib/$_qt/bin
+Tests=$XBPS_CROSS_BASE/usr/tests
+Plugins=/usr/lib/$_qt/plugins
+Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+Settings=$XBPS_CROSS_BASE/etc/xdg
+Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+HostPrefix=/usr
+HostData=/usr/lib/$_qt
+HostBinaries=/usr/lib/$_qt/bin
+HostLibraries=/usr/lib
+HostLibraryExecutables=/usr/lib/$_qt/libexec
+Spec=linux-g++
+TargetSpec=$_spec
+_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake "\$@" -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+	QMAKE_CFLAGS+="\$CFLAGS" \\
+	QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+	QMAKE_LFLAGS+="\$LDFLAGS"
+_EOF
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake \\
+	"\$@" \\
+	PREFIX=/usr \\
+	QT_INSTALL_PREFIX=/usr \\
+	LIB=/usr/lib \\
+	QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+	QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+	QMAKE_CFLAGS+="$CFLAGS" \\
+	QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+	QMAKE_LFLAGS+="$LDFLAGS" \\
+	CONFIG+=no_qt_rpath
+_EOF
+	fi
+	chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		$configure_args \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}
diff --git a/common/environment/build-style/sip-build.sh b/common/environment/build-style/sip-build.sh
new file mode 100644
index 000000000000..ffaefc90ce47
--- /dev/null
+++ b/common/environment/build-style/sip-build.sh
@@ -0,0 +1,6 @@
+hostmakedepends+=" python3-PyQt-builder pkg-config"
+makedepends+=" python3-devel"
+lib32disabled=yes
+
+CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
+CXXFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"

From 699479d70fa608d6cc8431c65ba5df5d5adc4ea5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 3/6] New package: python3-pyqt6-6.1.0

---
 srcpkgs/python3-pyqt6-core                    |   1 +
 srcpkgs/python3-pyqt6-core-devel              |   1 +
 srcpkgs/python3-pyqt6-dbus                    |   1 +
 srcpkgs/python3-pyqt6-dbus-devel              |   1 +
 srcpkgs/python3-pyqt6-declarative             |   1 +
 srcpkgs/python3-pyqt6-declarative-devel       |   1 +
 srcpkgs/python3-pyqt6-devel                   |   1 +
 srcpkgs/python3-pyqt6-devel-tools             |   1 +
 srcpkgs/python3-pyqt6-gui                     |   1 +
 srcpkgs/python3-pyqt6-gui-devel               |   1 +
 srcpkgs/python3-pyqt6-network                 |   1 +
 srcpkgs/python3-pyqt6-network-devel           |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets          |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets-devel    |   1 +
 srcpkgs/python3-pyqt6-printsupport            |   1 +
 srcpkgs/python3-pyqt6-printsupport-devel      |   1 +
 srcpkgs/python3-pyqt6-quick3d                 |   1 +
 srcpkgs/python3-pyqt6-quick3d-devel           |   1 +
 srcpkgs/python3-pyqt6-sql                     |   1 +
 srcpkgs/python3-pyqt6-sql-devel               |   1 +
 srcpkgs/python3-pyqt6-svg                     |   1 +
 srcpkgs/python3-pyqt6-svg-devel               |   1 +
 srcpkgs/python3-pyqt6-test                    |   1 +
 srcpkgs/python3-pyqt6-test-devel              |   1 +
 srcpkgs/python3-pyqt6-tools                   |   1 +
 srcpkgs/python3-pyqt6-tools-devel             |   1 +
 srcpkgs/python3-pyqt6-widgets                 |   1 +
 srcpkgs/python3-pyqt6-widgets-devel           |   1 +
 srcpkgs/python3-pyqt6-xml                     |   1 +
 srcpkgs/python3-pyqt6-xml-devel               |   1 +
 .../patches/pyproject-cross.patch             |  20 ++
 srcpkgs/python3-pyqt6/template                | 338 ++++++++++++++++++
 32 files changed, 388 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-core
 create mode 120000 srcpkgs/python3-pyqt6-core-devel
 create mode 120000 srcpkgs/python3-pyqt6-dbus
 create mode 120000 srcpkgs/python3-pyqt6-dbus-devel
 create mode 120000 srcpkgs/python3-pyqt6-declarative
 create mode 120000 srcpkgs/python3-pyqt6-declarative-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel-tools
 create mode 120000 srcpkgs/python3-pyqt6-gui
 create mode 120000 srcpkgs/python3-pyqt6-gui-devel
 create mode 120000 srcpkgs/python3-pyqt6-network
 create mode 120000 srcpkgs/python3-pyqt6-network-devel
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-printsupport
 create mode 120000 srcpkgs/python3-pyqt6-printsupport-devel
 create mode 120000 srcpkgs/python3-pyqt6-quick3d
 create mode 120000 srcpkgs/python3-pyqt6-quick3d-devel
 create mode 120000 srcpkgs/python3-pyqt6-sql
 create mode 120000 srcpkgs/python3-pyqt6-sql-devel
 create mode 120000 srcpkgs/python3-pyqt6-svg
 create mode 120000 srcpkgs/python3-pyqt6-svg-devel
 create mode 120000 srcpkgs/python3-pyqt6-test
 create mode 120000 srcpkgs/python3-pyqt6-test-devel
 create mode 120000 srcpkgs/python3-pyqt6-tools
 create mode 120000 srcpkgs/python3-pyqt6-tools-devel
 create mode 120000 srcpkgs/python3-pyqt6-widgets
 create mode 120000 srcpkgs/python3-pyqt6-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-xml
 create mode 120000 srcpkgs/python3-pyqt6-xml-devel
 create mode 100644 srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-pyqt6/template

diff --git a/srcpkgs/python3-pyqt6-core b/srcpkgs/python3-pyqt6-core
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-core-devel b/srcpkgs/python3-pyqt6-core-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus b/srcpkgs/python3-pyqt6-dbus
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus-devel b/srcpkgs/python3-pyqt6-dbus-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative b/srcpkgs/python3-pyqt6-declarative
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative-devel b/srcpkgs/python3-pyqt6-declarative-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel b/srcpkgs/python3-pyqt6-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel-tools b/srcpkgs/python3-pyqt6-devel-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui b/srcpkgs/python3-pyqt6-gui
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui-devel b/srcpkgs/python3-pyqt6-gui-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network b/srcpkgs/python3-pyqt6-network
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network-devel b/srcpkgs/python3-pyqt6-network-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets b/srcpkgs/python3-pyqt6-opengl-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets-devel b/srcpkgs/python3-pyqt6-opengl-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport b/srcpkgs/python3-pyqt6-printsupport
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport-devel b/srcpkgs/python3-pyqt6-printsupport-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d b/srcpkgs/python3-pyqt6-quick3d
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d-devel b/srcpkgs/python3-pyqt6-quick3d-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql b/srcpkgs/python3-pyqt6-sql
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql-devel b/srcpkgs/python3-pyqt6-sql-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg b/srcpkgs/python3-pyqt6-svg
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg-devel b/srcpkgs/python3-pyqt6-svg-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test b/srcpkgs/python3-pyqt6-test
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test-devel b/srcpkgs/python3-pyqt6-test-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools b/srcpkgs/python3-pyqt6-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools-devel b/srcpkgs/python3-pyqt6-tools-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets b/srcpkgs/python3-pyqt6-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets-devel b/srcpkgs/python3-pyqt6-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml b/srcpkgs/python3-pyqt6-xml
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml-devel b/srcpkgs/python3-pyqt6-xml-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-pyqt6/template b/srcpkgs/python3-pyqt6/template
new file mode 100644
index 000000000000..466b2da8b49b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/template
@@ -0,0 +1,338 @@
+# Template file for 'python3-pyqt6'
+pkgname=python3-pyqt6
+version=6.1.0
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+hostmakedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus"
+makedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus-devel"
+depends="python3-pyqt6-sip"
+short_desc="Python 3 bindings for Qt6"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=9b45df6c404d7297598b91378d1e3f9bdf0970553ebb53c192a9051576098f9b
+lib32disabled=yes
+patch_args=-Np1
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+# Split like qt6, but keep qt6-core in main pkg
+# python3-pyqt6-core_package() {
+# 	lib32disabled=yes
+# 	depends="python3-pyqt6-sip>=${version}_${revision}"
+# 	short_desc="${short_desc} - Core"
+# 	pkg_install() {
+# 		vmove "${py3_sitelib}/*.dist-info"
+# 		vmove "${py3_sitelib}/PyQt6/__init__.py"
+# 		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+# 	}
+# }
+
+python3-pyqt6-core-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 qt6-base-devel python3-devel sip"
+	short_desc="${short_desc} - core development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtCore"
+	}
+}
+
+python3-pyqt6-dbus_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - DBus"
+	pkg_install() {
+		vmove "${py3_sitelib}/dbus"
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-pyqt6-dbus-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-dbus>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - DBus - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDBus"
+	}
+}
+
+python3-pyqt6-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Tools"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtDesigner.*"
+		vmove "${py3_sitelib}/PyQt6/QtHelp.*"
+		vmove usr/lib/qt6/plugins/designer
+	}
+}
+
+python3-pyqt6-tools-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-tools>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Tools - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDesigner"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtHelp"
+	}
+}
+
+python3-pyqt6-gui_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-pyqt6-gui-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-gui>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - GUI - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtGui"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGL"
+	}
+}
+
+python3-pyqt6-network_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-pyqt6-network-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-network>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtNetwork"
+	}
+}
+
+python3-pyqt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-pyqt6-opengl-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-opengl-widgets>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGLWidgets"
+	}
+}
+
+python3-pyqt6-printsupport_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-pyqt6-printsupport-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-printsupport>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtPrintSupport"
+	}
+}
+
+python3-pyqt6-declarative_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQml.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuick.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuickWidgets.*"
+	}
+}
+
+python3-pyqt6-declarative-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-declarative>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQml"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuickWidgets"
+	}
+}
+
+python3-pyqt6-quick3d_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQuick3D.*"
+	}
+}
+
+python3-pyqt6-quick3d-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-quick3d>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick3D"
+	}
+}
+
+python3-pyqt6-sql_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-pyqt6-sql-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-sql>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - SQL - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSql"
+	}
+}
+
+python3-pyqt6-svg_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - svg"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSvg.*"
+		vmove "${py3_sitelib}/PyQt6/QtSvgWidgets.*"
+	}
+}
+
+python3-pyqt6-svg-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-svg>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - svg - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvg"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvgWidgets"
+	}
+}
+
+python3-pyqt6-test_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-pyqt6-test-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-test>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Test - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtTest"
+	}
+}
+
+python3-pyqt6-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-pyqt6-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-widgets>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtWidgets"
+	}
+}
+
+python3-pyqt6-xml_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}
+
+python3-pyqt6-xml-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Xml - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtXml"
+	}
+}
+
+python3-pyqt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-pyqt6-devel_package() {
+	lib32disabled=yes
+	depends="
+	 python3-pyqt6-core-devel>=${version}_${revision}
+	 python3-pyqt6-dbus-devel>=${version}_${revision}
+	 python3-pyqt6-tools-devel>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}
+	 python3-pyqt6-network-devel>=${version}_${revision}
+	 python3-pyqt6-opengl-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-printsupport-devel>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}
+	 python3-pyqt6-quick3d-devel>=${version}_${revision}
+	 python3-pyqt6-sql-devel>=${version}_${revision}
+	 python3-pyqt6-svg-devel>=${version}_${revision}
+	 python3-pyqt6-test-devel>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-xml-devel>=${version}_${revision}
+	 python3-pyqt6-devel-tools>=${version}_${revision}"
+	build_style=meta
+	short_desc="${short_desc} - development files"
+}

From 6e4d89953f8d91b63dad359d1d50964232e5ad20 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 30 May 2021 23:54:51 +0700
Subject: [PATCH 4/6] New package: python3-pyqt6-charts-6.1.0

---
 srcpkgs/python3-pyqt6-charts-devel    |  1 +
 srcpkgs/python3-pyqt6-charts/template | 23 +++++++++++++++++++++++
 srcpkgs/python3-pyqt6-charts/update   |  2 ++
 3 files changed, 26 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-charts-devel
 create mode 100644 srcpkgs/python3-pyqt6-charts/template
 create mode 100644 srcpkgs/python3-pyqt6-charts/update

diff --git a/srcpkgs/python3-pyqt6-charts-devel b/srcpkgs/python3-pyqt6-charts-devel
new file mode 120000
index 000000000000..21a5afd07fc8
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts-devel
@@ -0,0 +1 @@
+python3-pyqt6-charts
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-charts/template b/srcpkgs/python3-pyqt6-charts/template
new file mode 100644
index 000000000000..02bf723a42cf
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyqt6-charts'
+pkgname=python3-pyqt6-charts
+version=6.1.0
+revision=1
+wrksrc=PyQt6_Charts-$version
+build_style=sip-build
+hostmakedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+makedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for Charts - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtchart/"
+distfiles="$PYPI_SITE/P/PyQt6-Charts/PyQt6_Charts-${version}.tar.gz"
+checksum=46c83c1bf044c3d86cdc38c2eb37168432e0cc877e54fc3522af11f00021a7f4
+
+python3-pyqt6-charts-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-charts/update b/srcpkgs/python3-pyqt6-charts/update
new file mode 100644
index 000000000000..783ec1b7e7ba
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-Charts
+pattern='PyQt6_Charts-\K([\d.]+)(?=.tar.gz)'

From 3415e7d974ba29dc45151f724659dab887e2c690 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 14:40:07 +0700
Subject: [PATCH 5/6] New package: python3-pyqt6-3d-6.1.0

---
 srcpkgs/python3-pyqt6-3d-devel    |  1 +
 srcpkgs/python3-pyqt6-3d/template | 23 +++++++++++++++++++++++
 srcpkgs/python3-pyqt6-3d/update   |  2 ++
 3 files changed, 26 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-3d-devel
 create mode 100644 srcpkgs/python3-pyqt6-3d/template
 create mode 100644 srcpkgs/python3-pyqt6-3d/update

diff --git a/srcpkgs/python3-pyqt6-3d-devel b/srcpkgs/python3-pyqt6-3d-devel
new file mode 120000
index 000000000000..129722a79e7b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d-devel
@@ -0,0 +1 @@
+python3-pyqt6-3d
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-3d/template b/srcpkgs/python3-pyqt6-3d/template
new file mode 100644
index 000000000000..89556a447b61
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyqt6-3d'
+pkgname=python3-pyqt6-3d
+version=6.1.0
+revision=1
+wrksrc=PyQt6_3D-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+makedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for 3D - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt3d/"
+distfiles="$PYPI_SITE/P/PyQt6-3D/PyQt6_3D-${version}.tar.gz"
+checksum=8f04ffa5d8ba983434b0b12a63d06e8efab671a0b2002cee761bbd0ef443513c
+
+python3-pyqt6-3d-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-3d/update b/srcpkgs/python3-pyqt6-3d/update
new file mode 100644
index 000000000000..6877724b1356
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-3D
+pattern='PyQt6_3D-\K([\d.]+)(?=.tar.gz)'

From b0d6615b31ce5c93cd1241b6f57d59182f82853c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 15:20:07 +0700
Subject: [PATCH 6/6] New package: python3-pyqt6-networkauth-6.1.0

---
 srcpkgs/python3-pyqt6-networkauth-devel    |  1 +
 srcpkgs/python3-pyqt6-networkauth/template | 23 ++++++++++++++++++++++
 srcpkgs/python3-pyqt6-networkauth/update   |  2 ++
 3 files changed, 26 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-networkauth-devel
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/template
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/update

diff --git a/srcpkgs/python3-pyqt6-networkauth-devel b/srcpkgs/python3-pyqt6-networkauth-devel
new file mode 120000
index 000000000000..0d76b4e1cd2d
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth-devel
@@ -0,0 +1 @@
+python3-pyqt6-networkauth
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-networkauth/template b/srcpkgs/python3-pyqt6-networkauth/template
new file mode 100644
index 000000000000..0647b014e7e6
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyqt6-networkauth'
+pkgname=python3-pyqt6-networkauth
+version=6.1.0
+revision=1
+wrksrc=PyQt6_NetworkAuth-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+makedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for NetworkAuth - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtnetworkauth/"
+distfiles="$PYPI_SITE/P/PyQt6-NetworkAuth/PyQt6_NetworkAuth-${version}.tar.gz"
+checksum=11af1bb27a6b3686db8770cd9c089be408d4db93115ca77600e6c6415e3d318c
+
+python3-pyqt6-networkauth-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-networkauth/update b/srcpkgs/python3-pyqt6-networkauth/update
new file mode 100644
index 000000000000..2e83411a72ec
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-NetworkAuth
+pattern='PyQt6_NetworkAuth-\K([\d.]+)(?=.tar.gz)'

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

* Re: [PR PATCH] [Updated] WIP: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (6 preceding siblings ...)
  2021-06-04 15:14 ` sgn
@ 2021-06-06  8:52 ` sgn
  2021-06-15 18:17 ` sgn
                   ` (6 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-06-06  8:52 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 37112 bytes --]

From 106177031b818780c2599683470596131963796d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 1/6] New package: python3-pyqt6-sip-13.1.0

---
 srcpkgs/python3-pyqt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-pyqt6-sip/template
 create mode 100644 srcpkgs/python3-pyqt6-sip/update

diff --git a/srcpkgs/python3-pyqt6-sip/template b/srcpkgs/python3-pyqt6-sip/template
new file mode 100644
index 000000000000..e7f2517c130e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-pyqt6-sip'
+pkgname=python3-pyqt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-pyqt6-sip/update b/srcpkgs/python3-pyqt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From b606466514abb84378a45e3af055bd397442c07a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 2/6] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh             | 168 ++++++++++++++++++++
 common/environment/build-style/sip-build.sh |   6 +
 2 files changed, 174 insertions(+)
 create mode 100644 common/build-style/sip-build.sh
 create mode 100644 common/environment/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..cfdba734dda3
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,168 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	local _qt=
+	local _spec=
+	local _mkspec=
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	case "$_build_help" in
+	*--qmake*)
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+
+	case "$_build_help" in
+	*--api-dir*) _apidir=/usr/share/$_qt/qsci/api/python ;;
+	esac
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<_EOF
+MAKEFILE_GENERATOR      = UNIX
+CONFIG                 += incremental no_qt_rpath
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(/$_mkspec/common/linux.conf)
+include(/$_mkspec/common/gcc-base-unix.conf)
+include(/$_mkspec/common/g++-unix.conf)
+
+QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+QMAKE_CC                = $CC
+QMAKE_CXX               = $CXX
+QMAKE_LINK              = $CXX
+QMAKE_LINK_C            = $CC
+QMAKE_LINK_SHLIB        = $CXX
+
+QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+QMAKE_OBJCOPY           = $OBJCOPY
+QMAKE_NM                = $NM -P
+QMAKE_STRIP             = $STRIP
+
+QMAKE_CFLAGS            = $CFLAGS
+QMAKE_CXXFLAGS          = $CXXFLAGS
+QMAKE_LFLAGS            = -L$XBPS_CROSS_BASE/usr/lib $LDFLAGS
+load(qt_config)
+_EOF
+		echo "#include \"$XBPS_CROSS_BASE/$_mkspec/linux-g++/qplatformdefs.h\"" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<_EOF
+[Paths]
+Sysroot=$XBPS_CROSS_BASE
+Prefix=$XBPS_CROSS_BASE/usr
+ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+Data=$XBPS_CROSS_BASE/usr/share/$_qt
+Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+Libraries=$XBPS_CROSS_BASE/usr/lib
+LibraryExecutables=/usr/lib/$_qt/libexec
+Binaries=/usr/lib/$_qt/bin
+Tests=$XBPS_CROSS_BASE/usr/tests
+Plugins=/usr/lib/$_qt/plugins
+Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+Settings=$XBPS_CROSS_BASE/etc/xdg
+Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+HostPrefix=/usr
+HostData=/usr/lib/$_qt
+HostBinaries=/usr/lib/$_qt/bin
+HostLibraries=/usr/lib
+HostLibraryExecutables=/usr/lib/$_qt/libexec
+Spec=linux-g++
+TargetSpec=$_spec
+_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake "\$@" -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+	QMAKE_CFLAGS+="\$CFLAGS" \\
+	QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+	QMAKE_LFLAGS+="\$LDFLAGS"
+_EOF
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake \\
+	"\$@" \\
+	PREFIX=/usr \\
+	QT_INSTALL_PREFIX=/usr \\
+	LIB=/usr/lib \\
+	QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+	QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+	QMAKE_CFLAGS+="$CFLAGS" \\
+	QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+	QMAKE_LFLAGS+="$LDFLAGS" \\
+	CONFIG+=no_qt_rpath
+_EOF
+	fi
+	chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		$configure_args \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}
diff --git a/common/environment/build-style/sip-build.sh b/common/environment/build-style/sip-build.sh
new file mode 100644
index 000000000000..ffaefc90ce47
--- /dev/null
+++ b/common/environment/build-style/sip-build.sh
@@ -0,0 +1,6 @@
+hostmakedepends+=" python3-PyQt-builder pkg-config"
+makedepends+=" python3-devel"
+lib32disabled=yes
+
+CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
+CXXFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/python$py3_ver"

From 50a8151ce1ac64f5abf24c88f09b58d9d8f1afcb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 3/6] New package: python3-pyqt6-6.1.0

---
 srcpkgs/python3-pyqt6-core                    |   1 +
 srcpkgs/python3-pyqt6-core-devel              |   1 +
 srcpkgs/python3-pyqt6-dbus                    |   1 +
 srcpkgs/python3-pyqt6-dbus-devel              |   1 +
 srcpkgs/python3-pyqt6-declarative             |   1 +
 srcpkgs/python3-pyqt6-declarative-devel       |   1 +
 srcpkgs/python3-pyqt6-devel                   |   1 +
 srcpkgs/python3-pyqt6-devel-tools             |   1 +
 srcpkgs/python3-pyqt6-gui                     |   1 +
 srcpkgs/python3-pyqt6-gui-devel               |   1 +
 srcpkgs/python3-pyqt6-network                 |   1 +
 srcpkgs/python3-pyqt6-network-devel           |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets          |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets-devel    |   1 +
 srcpkgs/python3-pyqt6-printsupport            |   1 +
 srcpkgs/python3-pyqt6-printsupport-devel      |   1 +
 srcpkgs/python3-pyqt6-quick3d                 |   1 +
 srcpkgs/python3-pyqt6-quick3d-devel           |   1 +
 srcpkgs/python3-pyqt6-sql                     |   1 +
 srcpkgs/python3-pyqt6-sql-devel               |   1 +
 srcpkgs/python3-pyqt6-svg                     |   1 +
 srcpkgs/python3-pyqt6-svg-devel               |   1 +
 srcpkgs/python3-pyqt6-test                    |   1 +
 srcpkgs/python3-pyqt6-test-devel              |   1 +
 srcpkgs/python3-pyqt6-tools                   |   1 +
 srcpkgs/python3-pyqt6-tools-devel             |   1 +
 srcpkgs/python3-pyqt6-widgets                 |   1 +
 srcpkgs/python3-pyqt6-widgets-devel           |   1 +
 srcpkgs/python3-pyqt6-xml                     |   1 +
 srcpkgs/python3-pyqt6-xml-devel               |   1 +
 .../patches/pyproject-cross.patch             |  20 ++
 srcpkgs/python3-pyqt6/template                | 338 ++++++++++++++++++
 32 files changed, 388 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-core
 create mode 120000 srcpkgs/python3-pyqt6-core-devel
 create mode 120000 srcpkgs/python3-pyqt6-dbus
 create mode 120000 srcpkgs/python3-pyqt6-dbus-devel
 create mode 120000 srcpkgs/python3-pyqt6-declarative
 create mode 120000 srcpkgs/python3-pyqt6-declarative-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel-tools
 create mode 120000 srcpkgs/python3-pyqt6-gui
 create mode 120000 srcpkgs/python3-pyqt6-gui-devel
 create mode 120000 srcpkgs/python3-pyqt6-network
 create mode 120000 srcpkgs/python3-pyqt6-network-devel
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-printsupport
 create mode 120000 srcpkgs/python3-pyqt6-printsupport-devel
 create mode 120000 srcpkgs/python3-pyqt6-quick3d
 create mode 120000 srcpkgs/python3-pyqt6-quick3d-devel
 create mode 120000 srcpkgs/python3-pyqt6-sql
 create mode 120000 srcpkgs/python3-pyqt6-sql-devel
 create mode 120000 srcpkgs/python3-pyqt6-svg
 create mode 120000 srcpkgs/python3-pyqt6-svg-devel
 create mode 120000 srcpkgs/python3-pyqt6-test
 create mode 120000 srcpkgs/python3-pyqt6-test-devel
 create mode 120000 srcpkgs/python3-pyqt6-tools
 create mode 120000 srcpkgs/python3-pyqt6-tools-devel
 create mode 120000 srcpkgs/python3-pyqt6-widgets
 create mode 120000 srcpkgs/python3-pyqt6-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-xml
 create mode 120000 srcpkgs/python3-pyqt6-xml-devel
 create mode 100644 srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-pyqt6/template

diff --git a/srcpkgs/python3-pyqt6-core b/srcpkgs/python3-pyqt6-core
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-core-devel b/srcpkgs/python3-pyqt6-core-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus b/srcpkgs/python3-pyqt6-dbus
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus-devel b/srcpkgs/python3-pyqt6-dbus-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative b/srcpkgs/python3-pyqt6-declarative
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative-devel b/srcpkgs/python3-pyqt6-declarative-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel b/srcpkgs/python3-pyqt6-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel-tools b/srcpkgs/python3-pyqt6-devel-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui b/srcpkgs/python3-pyqt6-gui
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui-devel b/srcpkgs/python3-pyqt6-gui-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network b/srcpkgs/python3-pyqt6-network
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network-devel b/srcpkgs/python3-pyqt6-network-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets b/srcpkgs/python3-pyqt6-opengl-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets-devel b/srcpkgs/python3-pyqt6-opengl-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport b/srcpkgs/python3-pyqt6-printsupport
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport-devel b/srcpkgs/python3-pyqt6-printsupport-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d b/srcpkgs/python3-pyqt6-quick3d
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d-devel b/srcpkgs/python3-pyqt6-quick3d-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql b/srcpkgs/python3-pyqt6-sql
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql-devel b/srcpkgs/python3-pyqt6-sql-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg b/srcpkgs/python3-pyqt6-svg
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg-devel b/srcpkgs/python3-pyqt6-svg-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test b/srcpkgs/python3-pyqt6-test
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test-devel b/srcpkgs/python3-pyqt6-test-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools b/srcpkgs/python3-pyqt6-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools-devel b/srcpkgs/python3-pyqt6-tools-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets b/srcpkgs/python3-pyqt6-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets-devel b/srcpkgs/python3-pyqt6-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml b/srcpkgs/python3-pyqt6-xml
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml-devel b/srcpkgs/python3-pyqt6-xml-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-pyqt6/template b/srcpkgs/python3-pyqt6/template
new file mode 100644
index 000000000000..466b2da8b49b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/template
@@ -0,0 +1,338 @@
+# Template file for 'python3-pyqt6'
+pkgname=python3-pyqt6
+version=6.1.0
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+hostmakedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus"
+makedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus-devel"
+depends="python3-pyqt6-sip"
+short_desc="Python 3 bindings for Qt6"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=9b45df6c404d7297598b91378d1e3f9bdf0970553ebb53c192a9051576098f9b
+lib32disabled=yes
+patch_args=-Np1
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+# Split like qt6, but keep qt6-core in main pkg
+# python3-pyqt6-core_package() {
+# 	lib32disabled=yes
+# 	depends="python3-pyqt6-sip>=${version}_${revision}"
+# 	short_desc="${short_desc} - Core"
+# 	pkg_install() {
+# 		vmove "${py3_sitelib}/*.dist-info"
+# 		vmove "${py3_sitelib}/PyQt6/__init__.py"
+# 		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+# 	}
+# }
+
+python3-pyqt6-core-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 qt6-base-devel python3-devel sip"
+	short_desc="${short_desc} - core development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtCore"
+	}
+}
+
+python3-pyqt6-dbus_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - DBus"
+	pkg_install() {
+		vmove "${py3_sitelib}/dbus"
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-pyqt6-dbus-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-dbus>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - DBus - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDBus"
+	}
+}
+
+python3-pyqt6-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Tools"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtDesigner.*"
+		vmove "${py3_sitelib}/PyQt6/QtHelp.*"
+		vmove usr/lib/qt6/plugins/designer
+	}
+}
+
+python3-pyqt6-tools-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-tools>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Tools - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDesigner"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtHelp"
+	}
+}
+
+python3-pyqt6-gui_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-pyqt6-gui-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-gui>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - GUI - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtGui"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGL"
+	}
+}
+
+python3-pyqt6-network_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-pyqt6-network-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-network>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtNetwork"
+	}
+}
+
+python3-pyqt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-pyqt6-opengl-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-opengl-widgets>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGLWidgets"
+	}
+}
+
+python3-pyqt6-printsupport_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-pyqt6-printsupport-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-printsupport>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtPrintSupport"
+	}
+}
+
+python3-pyqt6-declarative_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQml.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuick.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuickWidgets.*"
+	}
+}
+
+python3-pyqt6-declarative-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-declarative>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQml"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuickWidgets"
+	}
+}
+
+python3-pyqt6-quick3d_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQuick3D.*"
+	}
+}
+
+python3-pyqt6-quick3d-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-quick3d>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick3D"
+	}
+}
+
+python3-pyqt6-sql_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-pyqt6-sql-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-sql>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - SQL - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSql"
+	}
+}
+
+python3-pyqt6-svg_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - svg"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSvg.*"
+		vmove "${py3_sitelib}/PyQt6/QtSvgWidgets.*"
+	}
+}
+
+python3-pyqt6-svg-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-svg>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - svg - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvg"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvgWidgets"
+	}
+}
+
+python3-pyqt6-test_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-pyqt6-test-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-test>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Test - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtTest"
+	}
+}
+
+python3-pyqt6-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-pyqt6-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-widgets>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtWidgets"
+	}
+}
+
+python3-pyqt6-xml_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}
+
+python3-pyqt6-xml-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Xml - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtXml"
+	}
+}
+
+python3-pyqt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-pyqt6-devel_package() {
+	lib32disabled=yes
+	depends="
+	 python3-pyqt6-core-devel>=${version}_${revision}
+	 python3-pyqt6-dbus-devel>=${version}_${revision}
+	 python3-pyqt6-tools-devel>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}
+	 python3-pyqt6-network-devel>=${version}_${revision}
+	 python3-pyqt6-opengl-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-printsupport-devel>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}
+	 python3-pyqt6-quick3d-devel>=${version}_${revision}
+	 python3-pyqt6-sql-devel>=${version}_${revision}
+	 python3-pyqt6-svg-devel>=${version}_${revision}
+	 python3-pyqt6-test-devel>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-xml-devel>=${version}_${revision}
+	 python3-pyqt6-devel-tools>=${version}_${revision}"
+	build_style=meta
+	short_desc="${short_desc} - development files"
+}

From 9a4b4191ce0da782b00b66cea8245f23c8db7f1e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 30 May 2021 23:54:51 +0700
Subject: [PATCH 4/6] New package: python3-pyqt6-charts-6.1.0

---
 srcpkgs/python3-pyqt6-charts-devel    |  1 +
 srcpkgs/python3-pyqt6-charts/template | 23 +++++++++++++++++++++++
 srcpkgs/python3-pyqt6-charts/update   |  2 ++
 3 files changed, 26 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-charts-devel
 create mode 100644 srcpkgs/python3-pyqt6-charts/template
 create mode 100644 srcpkgs/python3-pyqt6-charts/update

diff --git a/srcpkgs/python3-pyqt6-charts-devel b/srcpkgs/python3-pyqt6-charts-devel
new file mode 120000
index 000000000000..21a5afd07fc8
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts-devel
@@ -0,0 +1 @@
+python3-pyqt6-charts
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-charts/template b/srcpkgs/python3-pyqt6-charts/template
new file mode 100644
index 000000000000..02bf723a42cf
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyqt6-charts'
+pkgname=python3-pyqt6-charts
+version=6.1.0
+revision=1
+wrksrc=PyQt6_Charts-$version
+build_style=sip-build
+hostmakedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+makedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for Charts - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtchart/"
+distfiles="$PYPI_SITE/P/PyQt6-Charts/PyQt6_Charts-${version}.tar.gz"
+checksum=46c83c1bf044c3d86cdc38c2eb37168432e0cc877e54fc3522af11f00021a7f4
+
+python3-pyqt6-charts-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-charts/update b/srcpkgs/python3-pyqt6-charts/update
new file mode 100644
index 000000000000..783ec1b7e7ba
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-Charts
+pattern='PyQt6_Charts-\K([\d.]+)(?=.tar.gz)'

From a85ec2684ec74cba6d6a260f89467b1dec311ad7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 14:40:07 +0700
Subject: [PATCH 5/6] New package: python3-pyqt6-3d-6.1.0

---
 srcpkgs/python3-pyqt6-3d-devel    |  1 +
 srcpkgs/python3-pyqt6-3d/template | 23 +++++++++++++++++++++++
 srcpkgs/python3-pyqt6-3d/update   |  2 ++
 3 files changed, 26 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-3d-devel
 create mode 100644 srcpkgs/python3-pyqt6-3d/template
 create mode 100644 srcpkgs/python3-pyqt6-3d/update

diff --git a/srcpkgs/python3-pyqt6-3d-devel b/srcpkgs/python3-pyqt6-3d-devel
new file mode 120000
index 000000000000..129722a79e7b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d-devel
@@ -0,0 +1 @@
+python3-pyqt6-3d
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-3d/template b/srcpkgs/python3-pyqt6-3d/template
new file mode 100644
index 000000000000..89556a447b61
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyqt6-3d'
+pkgname=python3-pyqt6-3d
+version=6.1.0
+revision=1
+wrksrc=PyQt6_3D-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+makedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for 3D - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt3d/"
+distfiles="$PYPI_SITE/P/PyQt6-3D/PyQt6_3D-${version}.tar.gz"
+checksum=8f04ffa5d8ba983434b0b12a63d06e8efab671a0b2002cee761bbd0ef443513c
+
+python3-pyqt6-3d-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-3d/update b/srcpkgs/python3-pyqt6-3d/update
new file mode 100644
index 000000000000..6877724b1356
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-3D
+pattern='PyQt6_3D-\K([\d.]+)(?=.tar.gz)'

From f920962ea42374916d2e3d98f6a9a23328ddbc2d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 15:20:07 +0700
Subject: [PATCH 6/6] New package: python3-pyqt6-networkauth-6.1.0

---
 srcpkgs/python3-pyqt6-networkauth-devel    |  1 +
 srcpkgs/python3-pyqt6-networkauth/template | 23 ++++++++++++++++++++++
 srcpkgs/python3-pyqt6-networkauth/update   |  2 ++
 3 files changed, 26 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-networkauth-devel
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/template
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/update

diff --git a/srcpkgs/python3-pyqt6-networkauth-devel b/srcpkgs/python3-pyqt6-networkauth-devel
new file mode 120000
index 000000000000..0d76b4e1cd2d
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth-devel
@@ -0,0 +1 @@
+python3-pyqt6-networkauth
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-networkauth/template b/srcpkgs/python3-pyqt6-networkauth/template
new file mode 100644
index 000000000000..0647b014e7e6
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/template
@@ -0,0 +1,23 @@
+# Template file for 'python3-pyqt6-networkauth'
+pkgname=python3-pyqt6-networkauth
+version=6.1.0
+revision=1
+wrksrc=PyQt6_NetworkAuth-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+makedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for NetworkAuth - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtnetworkauth/"
+distfiles="$PYPI_SITE/P/PyQt6-NetworkAuth/PyQt6_NetworkAuth-${version}.tar.gz"
+checksum=11af1bb27a6b3686db8770cd9c089be408d4db93115ca77600e6c6415e3d318c
+
+python3-pyqt6-networkauth-devel_package() {
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-networkauth/update b/srcpkgs/python3-pyqt6-networkauth/update
new file mode 100644
index 000000000000..2e83411a72ec
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-NetworkAuth
+pattern='PyQt6_NetworkAuth-\K([\d.]+)(?=.tar.gz)'

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

* Re: [PR PATCH] [Updated] WIP: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (7 preceding siblings ...)
  2021-06-06  8:52 ` sgn
@ 2021-06-15 18:17 ` sgn
  2021-06-17  0:37 ` PyQt6 sgn
                   ` (5 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-06-15 18:17 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

WIP: PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 36985 bytes --]

From d49239adef33851dfbb40e6259fd94683bec5be7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 1/6] New package: python3-pyqt6-sip-13.1.0

---
 srcpkgs/python3-pyqt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-pyqt6-sip/template
 create mode 100644 srcpkgs/python3-pyqt6-sip/update

diff --git a/srcpkgs/python3-pyqt6-sip/template b/srcpkgs/python3-pyqt6-sip/template
new file mode 100644
index 000000000000..e7f2517c130e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-pyqt6-sip'
+pkgname=python3-pyqt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-pyqt6-sip/update b/srcpkgs/python3-pyqt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From 4e7c28d7b5d010bda14cb9347ba164d10987804c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 2/6] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh | 170 ++++++++++++++++++++++++++++++++
 1 file changed, 170 insertions(+)
 create mode 100644 common/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..d4b271dab644
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,170 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _build_help=
+	local _confirm_license=
+	local _apidir=
+	local _dbusdir=
+	local _qt=
+	local _spec=
+	local _mkspec=
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	_build_help="$(sip-build --help)"
+	case "$_build_help" in
+	*--confirm-license*) _confirm_license=yes ;;
+	esac
+
+	case "$_build_help" in
+	*--dbus*)
+		for _dbusdir in "$XBPS_CROSS_BASE/usr/include/dbus"*; do
+			if [ -f "$_dbusdir/dbus/dbus-python.h" ]; then
+				break
+			fi
+		done
+		;;
+	esac
+
+	case "$_build_help" in
+	*--qmake*)
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+		;;
+	esac
+
+	case "$_build_help" in
+	*--api-dir*) _apidir=/usr/share/$_qt/qsci/api/python ;;
+	esac
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<_EOF
+MAKEFILE_GENERATOR      = UNIX
+CONFIG                 += incremental no_qt_rpath
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(/$_mkspec/common/linux.conf)
+include(/$_mkspec/common/gcc-base-unix.conf)
+include(/$_mkspec/common/g++-unix.conf)
+
+QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+QMAKE_CC                = $CC
+QMAKE_CXX               = $CXX
+QMAKE_LINK              = $CXX
+QMAKE_LINK_C            = $CC
+QMAKE_LINK_SHLIB        = $CXX
+
+QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+QMAKE_OBJCOPY           = $OBJCOPY
+QMAKE_NM                = $NM -P
+QMAKE_STRIP             = $STRIP
+
+QMAKE_CFLAGS            = $CFLAGS -I$XBPS_CROSS_BASE/usr/include/python$py3_ver
+QMAKE_CXXFLAGS          = $CXXFLAGS -I$XBPS_CROSS_BASE/usr/include/python$py3_ver
+QMAKE_LFLAGS            = -L$XBPS_CROSS_BASE/usr/lib $LDFLAGS
+load(qt_config)
+_EOF
+		echo "#include \"$XBPS_CROSS_BASE/$_mkspec/linux-g++/qplatformdefs.h\"" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<_EOF
+[Paths]
+Sysroot=$XBPS_CROSS_BASE
+Prefix=$XBPS_CROSS_BASE/usr
+ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+Data=$XBPS_CROSS_BASE/usr/share/$_qt
+Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+Libraries=$XBPS_CROSS_BASE/usr/lib
+LibraryExecutables=/usr/lib/$_qt/libexec
+Binaries=/usr/lib/$_qt/bin
+Tests=$XBPS_CROSS_BASE/usr/tests
+Plugins=/usr/lib/$_qt/plugins
+Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+Settings=$XBPS_CROSS_BASE/etc/xdg
+Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+HostPrefix=/usr
+HostData=/usr/lib/$_qt
+HostBinaries=/usr/lib/$_qt/bin
+HostLibraries=/usr/lib
+HostLibraryExecutables=/usr/lib/$_qt/libexec
+Spec=linux-g++
+TargetSpec=$_spec
+_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake "\$@" \\
+	-qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+	PKG_CONFIG_EXECUTABLE=${XBPS_WRAPPERDIR}/${PKG_CONFIG} \\
+	QMAKE_CFLAGS+="\$CFLAGS" \\
+	QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+	QMAKE_LFLAGS+="\$LDFLAGS"
+_EOF
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<_EOF
+#!/bin/sh
+exec /usr/lib/$_qt/bin/qmake \\
+	"\$@" \\
+	PREFIX=/usr \\
+	QT_INSTALL_PREFIX=/usr \\
+	LIB=/usr/lib \\
+	QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+	QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+	QMAKE_CFLAGS+="$CFLAGS" \\
+	QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+	QMAKE_LFLAGS+="$LDFLAGS" \\
+	CONFIG+=no_qt_rpath
+_EOF
+	fi
+	chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_apidir:+--api-dir "$_apidir"} \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		$configure_args \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}

From 765005c0f734f3d3a579920c6a7bfb1e2634ff01 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 3/6] New package: python3-pyqt6-6.1.1

---
 srcpkgs/python3-pyqt6-core                    |   1 +
 srcpkgs/python3-pyqt6-core-devel              |   1 +
 srcpkgs/python3-pyqt6-dbus                    |   1 +
 srcpkgs/python3-pyqt6-dbus-devel              |   1 +
 srcpkgs/python3-pyqt6-declarative             |   1 +
 srcpkgs/python3-pyqt6-declarative-devel       |   1 +
 srcpkgs/python3-pyqt6-devel                   |   1 +
 srcpkgs/python3-pyqt6-devel-tools             |   1 +
 srcpkgs/python3-pyqt6-gui                     |   1 +
 srcpkgs/python3-pyqt6-gui-devel               |   1 +
 srcpkgs/python3-pyqt6-network                 |   1 +
 srcpkgs/python3-pyqt6-network-devel           |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets          |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets-devel    |   1 +
 srcpkgs/python3-pyqt6-printsupport            |   1 +
 srcpkgs/python3-pyqt6-printsupport-devel      |   1 +
 srcpkgs/python3-pyqt6-quick3d                 |   1 +
 srcpkgs/python3-pyqt6-quick3d-devel           |   1 +
 srcpkgs/python3-pyqt6-sql                     |   1 +
 srcpkgs/python3-pyqt6-sql-devel               |   1 +
 srcpkgs/python3-pyqt6-svg                     |   1 +
 srcpkgs/python3-pyqt6-svg-devel               |   1 +
 srcpkgs/python3-pyqt6-test                    |   1 +
 srcpkgs/python3-pyqt6-test-devel              |   1 +
 srcpkgs/python3-pyqt6-tools                   |   1 +
 srcpkgs/python3-pyqt6-tools-devel             |   1 +
 srcpkgs/python3-pyqt6-widgets                 |   1 +
 srcpkgs/python3-pyqt6-widgets-devel           |   1 +
 srcpkgs/python3-pyqt6-xml                     |   1 +
 srcpkgs/python3-pyqt6-xml-devel               |   1 +
 .../patches/pyproject-cross.patch             |  20 ++
 srcpkgs/python3-pyqt6/template                | 340 ++++++++++++++++++
 32 files changed, 390 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-core
 create mode 120000 srcpkgs/python3-pyqt6-core-devel
 create mode 120000 srcpkgs/python3-pyqt6-dbus
 create mode 120000 srcpkgs/python3-pyqt6-dbus-devel
 create mode 120000 srcpkgs/python3-pyqt6-declarative
 create mode 120000 srcpkgs/python3-pyqt6-declarative-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel-tools
 create mode 120000 srcpkgs/python3-pyqt6-gui
 create mode 120000 srcpkgs/python3-pyqt6-gui-devel
 create mode 120000 srcpkgs/python3-pyqt6-network
 create mode 120000 srcpkgs/python3-pyqt6-network-devel
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-printsupport
 create mode 120000 srcpkgs/python3-pyqt6-printsupport-devel
 create mode 120000 srcpkgs/python3-pyqt6-quick3d
 create mode 120000 srcpkgs/python3-pyqt6-quick3d-devel
 create mode 120000 srcpkgs/python3-pyqt6-sql
 create mode 120000 srcpkgs/python3-pyqt6-sql-devel
 create mode 120000 srcpkgs/python3-pyqt6-svg
 create mode 120000 srcpkgs/python3-pyqt6-svg-devel
 create mode 120000 srcpkgs/python3-pyqt6-test
 create mode 120000 srcpkgs/python3-pyqt6-test-devel
 create mode 120000 srcpkgs/python3-pyqt6-tools
 create mode 120000 srcpkgs/python3-pyqt6-tools-devel
 create mode 120000 srcpkgs/python3-pyqt6-widgets
 create mode 120000 srcpkgs/python3-pyqt6-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-xml
 create mode 120000 srcpkgs/python3-pyqt6-xml-devel
 create mode 100644 srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-pyqt6/template

diff --git a/srcpkgs/python3-pyqt6-core b/srcpkgs/python3-pyqt6-core
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-core-devel b/srcpkgs/python3-pyqt6-core-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus b/srcpkgs/python3-pyqt6-dbus
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus-devel b/srcpkgs/python3-pyqt6-dbus-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative b/srcpkgs/python3-pyqt6-declarative
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative-devel b/srcpkgs/python3-pyqt6-declarative-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel b/srcpkgs/python3-pyqt6-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel-tools b/srcpkgs/python3-pyqt6-devel-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui b/srcpkgs/python3-pyqt6-gui
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui-devel b/srcpkgs/python3-pyqt6-gui-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network b/srcpkgs/python3-pyqt6-network
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network-devel b/srcpkgs/python3-pyqt6-network-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets b/srcpkgs/python3-pyqt6-opengl-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets-devel b/srcpkgs/python3-pyqt6-opengl-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport b/srcpkgs/python3-pyqt6-printsupport
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport-devel b/srcpkgs/python3-pyqt6-printsupport-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d b/srcpkgs/python3-pyqt6-quick3d
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d-devel b/srcpkgs/python3-pyqt6-quick3d-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql b/srcpkgs/python3-pyqt6-sql
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql-devel b/srcpkgs/python3-pyqt6-sql-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg b/srcpkgs/python3-pyqt6-svg
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg-devel b/srcpkgs/python3-pyqt6-svg-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test b/srcpkgs/python3-pyqt6-test
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test-devel b/srcpkgs/python3-pyqt6-test-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools b/srcpkgs/python3-pyqt6-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools-devel b/srcpkgs/python3-pyqt6-tools-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets b/srcpkgs/python3-pyqt6-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets-devel b/srcpkgs/python3-pyqt6-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml b/srcpkgs/python3-pyqt6-xml
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml-devel b/srcpkgs/python3-pyqt6-xml-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-pyqt6/template b/srcpkgs/python3-pyqt6/template
new file mode 100644
index 000000000000..29dd90da0018
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/template
@@ -0,0 +1,340 @@
+# Template file for 'python3-pyqt6'
+pkgname=python3-pyqt6
+version=6.1.1
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+hostmakedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus
+ python3-PyQt-builder pkg-config"
+makedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus-devel"
+depends="python3-pyqt6-sip"
+short_desc="Python 3 bindings for Qt6"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=8775244fa73f94bfe8ae7672b624e2a903a22bc35d7ea42dd830949e2f9e43c7
+lib32disabled=yes
+patch_args=-Np1
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+# Split like qt6, but keep qt6-core in main pkg
+# python3-pyqt6-core_package() {
+# 	lib32disabled=yes
+# 	depends="python3-pyqt6-sip>=${version}_${revision}"
+# 	short_desc="${short_desc} - Core"
+# 	pkg_install() {
+# 		vmove "${py3_sitelib}/*.dist-info"
+# 		vmove "${py3_sitelib}/PyQt6/__init__.py"
+# 		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+# 	}
+# }
+
+python3-pyqt6-core-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 qt6-base-devel python3-devel sip"
+	short_desc="${short_desc} - core development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtCore"
+	}
+}
+
+python3-pyqt6-dbus_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - DBus"
+	pkg_install() {
+		vmove "${py3_sitelib}/dbus"
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-pyqt6-dbus-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-dbus>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - DBus - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDBus"
+	}
+}
+
+python3-pyqt6-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Tools"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtDesigner.*"
+		vmove "${py3_sitelib}/PyQt6/QtHelp.*"
+		vmove usr/lib/qt6/plugins/designer
+	}
+}
+
+python3-pyqt6-tools-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-tools>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Tools - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDesigner"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtHelp"
+	}
+}
+
+python3-pyqt6-gui_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-pyqt6-gui-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-gui>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - GUI - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtGui"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGL"
+	}
+}
+
+python3-pyqt6-network_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-pyqt6-network-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-network>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtNetwork"
+	}
+}
+
+python3-pyqt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-pyqt6-opengl-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-opengl-widgets>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGLWidgets"
+	}
+}
+
+python3-pyqt6-printsupport_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-pyqt6-printsupport-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-printsupport>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtPrintSupport"
+	}
+}
+
+python3-pyqt6-declarative_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQml.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuick.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuickWidgets.*"
+		vmove usr/lib/qt6/plugins/PyQt6
+	}
+}
+
+python3-pyqt6-declarative-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-declarative>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQml"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuickWidgets"
+	}
+}
+
+python3-pyqt6-quick3d_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQuick3D.*"
+	}
+}
+
+python3-pyqt6-quick3d-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-quick3d>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick3D"
+	}
+}
+
+python3-pyqt6-sql_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-pyqt6-sql-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-sql>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - SQL - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSql"
+	}
+}
+
+python3-pyqt6-svg_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - svg"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSvg.*"
+		vmove "${py3_sitelib}/PyQt6/QtSvgWidgets.*"
+	}
+}
+
+python3-pyqt6-svg-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-svg>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - svg - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvg"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvgWidgets"
+	}
+}
+
+python3-pyqt6-test_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-pyqt6-test-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-test>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Test - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtTest"
+	}
+}
+
+python3-pyqt6-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-pyqt6-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-widgets>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtWidgets"
+	}
+}
+
+python3-pyqt6-xml_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}
+
+python3-pyqt6-xml-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Xml - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtXml"
+	}
+}
+
+python3-pyqt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-pyqt6-devel_package() {
+	lib32disabled=yes
+	depends="
+	 python3-pyqt6-core-devel>=${version}_${revision}
+	 python3-pyqt6-dbus-devel>=${version}_${revision}
+	 python3-pyqt6-tools-devel>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}
+	 python3-pyqt6-network-devel>=${version}_${revision}
+	 python3-pyqt6-opengl-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-printsupport-devel>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}
+	 python3-pyqt6-quick3d-devel>=${version}_${revision}
+	 python3-pyqt6-sql-devel>=${version}_${revision}
+	 python3-pyqt6-svg-devel>=${version}_${revision}
+	 python3-pyqt6-test-devel>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-xml-devel>=${version}_${revision}
+	 python3-pyqt6-devel-tools>=${version}_${revision}"
+	build_style=meta
+	short_desc="${short_desc} - development files"
+}

From 99274e65c78d69b7bd9a5fed38f7a5c8968c2b11 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 30 May 2021 23:54:51 +0700
Subject: [PATCH 4/6] New package: python3-pyqt6-charts-6.1.1

---
 srcpkgs/python3-pyqt6-charts-devel    |  1 +
 srcpkgs/python3-pyqt6-charts/template | 26 ++++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-charts/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-charts-devel
 create mode 100644 srcpkgs/python3-pyqt6-charts/template
 create mode 100644 srcpkgs/python3-pyqt6-charts/update

diff --git a/srcpkgs/python3-pyqt6-charts-devel b/srcpkgs/python3-pyqt6-charts-devel
new file mode 120000
index 000000000000..21a5afd07fc8
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts-devel
@@ -0,0 +1 @@
+python3-pyqt6-charts
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-charts/template b/srcpkgs/python3-pyqt6-charts/template
new file mode 100644
index 000000000000..17a6c1334a96
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-charts'
+pkgname=python3-pyqt6-charts
+version=6.1.1
+revision=1
+wrksrc=PyQt6_Charts-$version
+build_style=sip-build
+hostmakedepends="qt6-charts-devel python3-pyqt6-widgets-devel
+ python3-PyQt-builder pkg-config"
+makedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for Charts - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtchart/"
+distfiles="$PYPI_SITE/P/PyQt6-Charts/PyQt6_Charts-${version}.tar.gz"
+checksum=258416a5c8148cc824dede64b37ede08f14e1f90ef7e3c11e411b1b03268fee2
+lib32disabled=yes
+
+python3-pyqt6-charts-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-charts/update b/srcpkgs/python3-pyqt6-charts/update
new file mode 100644
index 000000000000..783ec1b7e7ba
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-Charts
+pattern='PyQt6_Charts-\K([\d.]+)(?=.tar.gz)'

From 97e0315fd8f817d8d2061d26153c434e18597eab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 14:40:07 +0700
Subject: [PATCH 5/6] New package: python3-pyqt6-3d-6.1.1

---
 srcpkgs/python3-pyqt6-3d-devel    |  1 +
 srcpkgs/python3-pyqt6-3d/template | 26 ++++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-3d/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-3d-devel
 create mode 100644 srcpkgs/python3-pyqt6-3d/template
 create mode 100644 srcpkgs/python3-pyqt6-3d/update

diff --git a/srcpkgs/python3-pyqt6-3d-devel b/srcpkgs/python3-pyqt6-3d-devel
new file mode 120000
index 000000000000..129722a79e7b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d-devel
@@ -0,0 +1 @@
+python3-pyqt6-3d
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-3d/template b/srcpkgs/python3-pyqt6-3d/template
new file mode 100644
index 000000000000..3986b2a41934
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-3d'
+pkgname=python3-pyqt6-3d
+version=6.1.1
+revision=1
+wrksrc=PyQt6_3D-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-gui-devel qt6-3d-devel
+ python3-PyQt-builder pkg-config"
+makedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for 3D - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt3d/"
+distfiles="$PYPI_SITE/P/PyQt6-3D/PyQt6_3D-${version}.tar.gz"
+checksum=f0277c04ac62f065cdd3f740a2149d260a5909e51df9fbb63e5ed83cebbe44f4
+lib32disabled=yes
+
+python3-pyqt6-3d-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-3d/update b/srcpkgs/python3-pyqt6-3d/update
new file mode 100644
index 000000000000..6877724b1356
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-3D
+pattern='PyQt6_3D-\K([\d.]+)(?=.tar.gz)'

From 24bea0a15ba58eb90dfe27a06a4fd189abadacd3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 15:20:07 +0700
Subject: [PATCH 6/6] New package: python3-pyqt6-networkauth-6.1.1

---
 srcpkgs/python3-pyqt6-networkauth-devel    |  1 +
 srcpkgs/python3-pyqt6-networkauth/template | 26 ++++++++++++++++++++++
 srcpkgs/python3-pyqt6-networkauth/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-networkauth-devel
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/template
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/update

diff --git a/srcpkgs/python3-pyqt6-networkauth-devel b/srcpkgs/python3-pyqt6-networkauth-devel
new file mode 120000
index 000000000000..0d76b4e1cd2d
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth-devel
@@ -0,0 +1 @@
+python3-pyqt6-networkauth
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-networkauth/template b/srcpkgs/python3-pyqt6-networkauth/template
new file mode 100644
index 000000000000..e5142193c69e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-networkauth'
+pkgname=python3-pyqt6-networkauth
+version=6.1.1
+revision=1
+wrksrc=PyQt6_NetworkAuth-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-network-devel qt6-networkauth-devel
+ python3-PyQt-builder pkg-config"
+makedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for NetworkAuth - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtnetworkauth/"
+distfiles="$PYPI_SITE/P/PyQt6-NetworkAuth/PyQt6_NetworkAuth-${version}.tar.gz"
+checksum=1590118cef920adcef55022246994d5dfcc64cb7504bdd17eac92ffeb4a21dbe
+lib32disabled=yes
+
+python3-pyqt6-networkauth-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-networkauth/update b/srcpkgs/python3-pyqt6-networkauth/update
new file mode 100644
index 000000000000..2e83411a72ec
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-NetworkAuth
+pattern='PyQt6_NetworkAuth-\K([\d.]+)(?=.tar.gz)'

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

* Re: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (8 preceding siblings ...)
  2021-06-15 18:17 ` sgn
@ 2021-06-17  0:37 ` sgn
  2021-06-17  0:37 ` PyQt6 sgn
                   ` (4 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-06-17  0:37 UTC (permalink / raw)
  To: ml

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

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/31092#issuecomment-862825118

Comment:
Look ready, will merge this weekend. Then `pyqt{5,6}-qsci` for QGis

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

* Re: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (9 preceding siblings ...)
  2021-06-17  0:37 ` PyQt6 sgn
@ 2021-06-17  0:37 ` sgn
  2021-06-17 11:39 ` [PR PATCH] [Updated] PyQt6 sgn
                   ` (3 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-06-17  0:37 UTC (permalink / raw)
  To: ml

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

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/31092#issuecomment-862825229

Comment:
And convert `pyqt5` to `sip-build`

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

* Re: [PR PATCH] [Updated] PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (10 preceding siblings ...)
  2021-06-17  0:37 ` PyQt6 sgn
@ 2021-06-17 11:39 ` sgn
  2021-06-17 12:07 ` sgn
                   ` (2 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-06-17 11:39 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 36916 bytes --]

From b594dc91decef22822f649b48a2c61ed5233b844 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 1/6] New package: python3-pyqt6-sip-13.1.0

---
 srcpkgs/python3-pyqt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-pyqt6-sip/template
 create mode 100644 srcpkgs/python3-pyqt6-sip/update

diff --git a/srcpkgs/python3-pyqt6-sip/template b/srcpkgs/python3-pyqt6-sip/template
new file mode 100644
index 000000000000..e7f2517c130e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-pyqt6-sip'
+pkgname=python3-pyqt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-pyqt6-sip/update b/srcpkgs/python3-pyqt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From 2f191c7aa9c8735a193906d66a126cad92ebe9d3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 2/6] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh | 148 ++++++++++++++++++++++++++++++++
 1 file changed, 148 insertions(+)
 create mode 100644 common/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..48112067f041
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,148 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _qt=
+	local _spec=
+	local _mkspec=
+
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	if [ -d /usr/lib/python3.9/site-packages/pyqtbuild ]; then
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+	fi
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<-_EOF
+		MAKEFILE_GENERATOR      = UNIX
+		CONFIG                 += incremental no_qt_rpath
+		QMAKE_INCREMENTAL_STYLE = sublib
+
+		include(/$_mkspec/common/linux.conf)
+		include(/$_mkspec/common/gcc-base-unix.conf)
+		include(/$_mkspec/common/g++-unix.conf)
+
+		QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+		QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+		QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+		QMAKE_CC                = $CC
+		QMAKE_CXX               = $CXX
+		QMAKE_LINK              = $CXX
+		QMAKE_LINK_C            = $CC
+		QMAKE_LINK_SHLIB        = $CXX
+
+		QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+		QMAKE_OBJCOPY           = $OBJCOPY
+		QMAKE_NM                = $NM -P
+		QMAKE_STRIP             = $STRIP
+
+		QMAKE_CFLAGS            = $CFLAGS -I$XBPS_CROSS_BASE/usr/include/python$py3_ver
+		QMAKE_CXXFLAGS          = $CXXFLAGS -I$XBPS_CROSS_BASE/usr/include/python$py3_ver
+		QMAKE_LFLAGS            = -L$XBPS_CROSS_BASE/usr/lib $LDFLAGS
+		load(qt_config)
+		_EOF
+
+		printf '#include "%s/%s/linux-g++/qplatformdefs.h"\n' \
+			"$XBPS_CROSS_BASE" "$_mkspec" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<-_EOF
+		[Paths]
+		Sysroot=$XBPS_CROSS_BASE
+		Prefix=$XBPS_CROSS_BASE/usr
+		ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+		Data=$XBPS_CROSS_BASE/usr/share/$_qt
+		Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+		Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+		Libraries=$XBPS_CROSS_BASE/usr/lib
+		LibraryExecutables=/usr/lib/$_qt/libexec
+		Binaries=/usr/lib/$_qt/bin
+		Tests=$XBPS_CROSS_BASE/usr/tests
+		Plugins=/usr/lib/$_qt/plugins
+		Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+		Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+		Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+		Settings=$XBPS_CROSS_BASE/etc/xdg
+		Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+		HostPrefix=/usr
+		HostData=/usr/lib/$_qt
+		HostBinaries=/usr/lib/$_qt/bin
+		HostLibraries=/usr/lib
+		HostLibraryExecutables=/usr/lib/$_qt/libexec
+		Spec=linux-g++
+		TargetSpec=$_spec
+		_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<-_EOF
+		#!/bin/sh
+		exec /usr/lib/$_qt/bin/qmake "\$@" \\
+		        -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+		        PKG_CONFIG_EXECUTABLE=${XBPS_WRAPPERDIR}/${PKG_CONFIG} \\
+		        QMAKE_CFLAGS+="\$CFLAGS" \\
+		        QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+		        QMAKE_LFLAGS+="\$LDFLAGS"
+		_EOF
+		chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<-_EOF
+		#!/bin/sh
+		exec /usr/lib/$_qt/bin/qmake \\
+		        "\$@" \\
+		        PREFIX=/usr \\
+		        QT_INSTALL_PREFIX=/usr \\
+		        LIB=/usr/lib \\
+		        QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+		        QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+		        QMAKE_CFLAGS+="$CFLAGS" \\
+		        QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+		        QMAKE_LFLAGS+="$LDFLAGS" \\
+		        CONFIG+=no_qt_rpath
+		_EOF
+		chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+	fi
+
+	sip-build --no-make \
+		${_confirm_license:+--confirm-license} \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake" --api-dir /usr/share/$_qt/qsci/api/python} \
+		${_dbusdir:+--dbus "$_dbusdir"} \
+		$configure_args \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}

From 0cf8de763e0c6c24b06a79ef1c2247396ffe697f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 3/6] New package: python3-pyqt6-6.1.1

---
 srcpkgs/python3-pyqt6-core                    |   1 +
 srcpkgs/python3-pyqt6-core-devel              |   1 +
 srcpkgs/python3-pyqt6-dbus                    |   1 +
 srcpkgs/python3-pyqt6-dbus-devel              |   1 +
 srcpkgs/python3-pyqt6-declarative             |   1 +
 srcpkgs/python3-pyqt6-declarative-devel       |   1 +
 srcpkgs/python3-pyqt6-devel                   |   1 +
 srcpkgs/python3-pyqt6-devel-tools             |   1 +
 srcpkgs/python3-pyqt6-gui                     |   1 +
 srcpkgs/python3-pyqt6-gui-devel               |   1 +
 srcpkgs/python3-pyqt6-network                 |   1 +
 srcpkgs/python3-pyqt6-network-devel           |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets          |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets-devel    |   1 +
 srcpkgs/python3-pyqt6-printsupport            |   1 +
 srcpkgs/python3-pyqt6-printsupport-devel      |   1 +
 srcpkgs/python3-pyqt6-quick3d                 |   1 +
 srcpkgs/python3-pyqt6-quick3d-devel           |   1 +
 srcpkgs/python3-pyqt6-sql                     |   1 +
 srcpkgs/python3-pyqt6-sql-devel               |   1 +
 srcpkgs/python3-pyqt6-svg                     |   1 +
 srcpkgs/python3-pyqt6-svg-devel               |   1 +
 srcpkgs/python3-pyqt6-test                    |   1 +
 srcpkgs/python3-pyqt6-test-devel              |   1 +
 srcpkgs/python3-pyqt6-tools                   |   1 +
 srcpkgs/python3-pyqt6-tools-devel             |   1 +
 srcpkgs/python3-pyqt6-widgets                 |   1 +
 srcpkgs/python3-pyqt6-widgets-devel           |   1 +
 srcpkgs/python3-pyqt6-xml                     |   1 +
 srcpkgs/python3-pyqt6-xml-devel               |   1 +
 .../patches/pyproject-cross.patch             |  20 +
 srcpkgs/python3-pyqt6/template                | 341 ++++++++++++++++++
 32 files changed, 391 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-core
 create mode 120000 srcpkgs/python3-pyqt6-core-devel
 create mode 120000 srcpkgs/python3-pyqt6-dbus
 create mode 120000 srcpkgs/python3-pyqt6-dbus-devel
 create mode 120000 srcpkgs/python3-pyqt6-declarative
 create mode 120000 srcpkgs/python3-pyqt6-declarative-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel-tools
 create mode 120000 srcpkgs/python3-pyqt6-gui
 create mode 120000 srcpkgs/python3-pyqt6-gui-devel
 create mode 120000 srcpkgs/python3-pyqt6-network
 create mode 120000 srcpkgs/python3-pyqt6-network-devel
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-printsupport
 create mode 120000 srcpkgs/python3-pyqt6-printsupport-devel
 create mode 120000 srcpkgs/python3-pyqt6-quick3d
 create mode 120000 srcpkgs/python3-pyqt6-quick3d-devel
 create mode 120000 srcpkgs/python3-pyqt6-sql
 create mode 120000 srcpkgs/python3-pyqt6-sql-devel
 create mode 120000 srcpkgs/python3-pyqt6-svg
 create mode 120000 srcpkgs/python3-pyqt6-svg-devel
 create mode 120000 srcpkgs/python3-pyqt6-test
 create mode 120000 srcpkgs/python3-pyqt6-test-devel
 create mode 120000 srcpkgs/python3-pyqt6-tools
 create mode 120000 srcpkgs/python3-pyqt6-tools-devel
 create mode 120000 srcpkgs/python3-pyqt6-widgets
 create mode 120000 srcpkgs/python3-pyqt6-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-xml
 create mode 120000 srcpkgs/python3-pyqt6-xml-devel
 create mode 100644 srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-pyqt6/template

diff --git a/srcpkgs/python3-pyqt6-core b/srcpkgs/python3-pyqt6-core
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-core-devel b/srcpkgs/python3-pyqt6-core-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus b/srcpkgs/python3-pyqt6-dbus
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus-devel b/srcpkgs/python3-pyqt6-dbus-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative b/srcpkgs/python3-pyqt6-declarative
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative-devel b/srcpkgs/python3-pyqt6-declarative-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel b/srcpkgs/python3-pyqt6-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel-tools b/srcpkgs/python3-pyqt6-devel-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui b/srcpkgs/python3-pyqt6-gui
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui-devel b/srcpkgs/python3-pyqt6-gui-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network b/srcpkgs/python3-pyqt6-network
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network-devel b/srcpkgs/python3-pyqt6-network-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets b/srcpkgs/python3-pyqt6-opengl-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets-devel b/srcpkgs/python3-pyqt6-opengl-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport b/srcpkgs/python3-pyqt6-printsupport
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport-devel b/srcpkgs/python3-pyqt6-printsupport-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d b/srcpkgs/python3-pyqt6-quick3d
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d-devel b/srcpkgs/python3-pyqt6-quick3d-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql b/srcpkgs/python3-pyqt6-sql
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql-devel b/srcpkgs/python3-pyqt6-sql-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg b/srcpkgs/python3-pyqt6-svg
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg-devel b/srcpkgs/python3-pyqt6-svg-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test b/srcpkgs/python3-pyqt6-test
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test-devel b/srcpkgs/python3-pyqt6-test-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools b/srcpkgs/python3-pyqt6-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools-devel b/srcpkgs/python3-pyqt6-tools-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets b/srcpkgs/python3-pyqt6-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets-devel b/srcpkgs/python3-pyqt6-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml b/srcpkgs/python3-pyqt6-xml
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml-devel b/srcpkgs/python3-pyqt6-xml-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-pyqt6/template b/srcpkgs/python3-pyqt6/template
new file mode 100644
index 000000000000..78dd4ed3b16a
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/template
@@ -0,0 +1,341 @@
+# Template file for 'python3-pyqt6'
+pkgname=python3-pyqt6
+version=6.1.1
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+configure_args="--confirm-license --dbus $XBPS_CROSS_BASE/usr/include/dbus-1.0"
+hostmakedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus
+ python3-PyQt-builder pkg-config"
+makedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus-devel"
+depends="python3-pyqt6-sip"
+short_desc="Python 3 bindings for Qt6"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=8775244fa73f94bfe8ae7672b624e2a903a22bc35d7ea42dd830949e2f9e43c7
+lib32disabled=yes
+patch_args=-Np1
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+# Split like qt6, but keep qt6-core in main pkg
+# python3-pyqt6-core_package() {
+# 	lib32disabled=yes
+# 	depends="python3-pyqt6-sip>=${version}_${revision}"
+# 	short_desc="${short_desc} - Core"
+# 	pkg_install() {
+# 		vmove "${py3_sitelib}/*.dist-info"
+# 		vmove "${py3_sitelib}/PyQt6/__init__.py"
+# 		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+# 	}
+# }
+
+python3-pyqt6-core-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 qt6-base-devel python3-devel sip"
+	short_desc="${short_desc} - core development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtCore"
+	}
+}
+
+python3-pyqt6-dbus_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - DBus"
+	pkg_install() {
+		vmove "${py3_sitelib}/dbus"
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-pyqt6-dbus-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-dbus>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - DBus - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDBus"
+	}
+}
+
+python3-pyqt6-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Tools"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtDesigner.*"
+		vmove "${py3_sitelib}/PyQt6/QtHelp.*"
+		vmove usr/lib/qt6/plugins/designer
+	}
+}
+
+python3-pyqt6-tools-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-tools>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Tools - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDesigner"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtHelp"
+	}
+}
+
+python3-pyqt6-gui_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-pyqt6-gui-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-gui>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - GUI - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtGui"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGL"
+	}
+}
+
+python3-pyqt6-network_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-pyqt6-network-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-network>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtNetwork"
+	}
+}
+
+python3-pyqt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-pyqt6-opengl-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-opengl-widgets>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGLWidgets"
+	}
+}
+
+python3-pyqt6-printsupport_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-pyqt6-printsupport-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-printsupport>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtPrintSupport"
+	}
+}
+
+python3-pyqt6-declarative_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQml.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuick.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuickWidgets.*"
+		vmove usr/lib/qt6/plugins/PyQt6
+	}
+}
+
+python3-pyqt6-declarative-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-declarative>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQml"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuickWidgets"
+	}
+}
+
+python3-pyqt6-quick3d_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQuick3D.*"
+	}
+}
+
+python3-pyqt6-quick3d-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-quick3d>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick3D"
+	}
+}
+
+python3-pyqt6-sql_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-pyqt6-sql-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-sql>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - SQL - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSql"
+	}
+}
+
+python3-pyqt6-svg_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - svg"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSvg.*"
+		vmove "${py3_sitelib}/PyQt6/QtSvgWidgets.*"
+	}
+}
+
+python3-pyqt6-svg-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-svg>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - svg - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvg"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvgWidgets"
+	}
+}
+
+python3-pyqt6-test_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-pyqt6-test-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-test>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Test - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtTest"
+	}
+}
+
+python3-pyqt6-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-pyqt6-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-widgets>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtWidgets"
+	}
+}
+
+python3-pyqt6-xml_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}
+
+python3-pyqt6-xml-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Xml - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtXml"
+	}
+}
+
+python3-pyqt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-pyqt6-devel_package() {
+	lib32disabled=yes
+	depends="
+	 python3-pyqt6-core-devel>=${version}_${revision}
+	 python3-pyqt6-dbus-devel>=${version}_${revision}
+	 python3-pyqt6-tools-devel>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}
+	 python3-pyqt6-network-devel>=${version}_${revision}
+	 python3-pyqt6-opengl-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-printsupport-devel>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}
+	 python3-pyqt6-quick3d-devel>=${version}_${revision}
+	 python3-pyqt6-sql-devel>=${version}_${revision}
+	 python3-pyqt6-svg-devel>=${version}_${revision}
+	 python3-pyqt6-test-devel>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-xml-devel>=${version}_${revision}
+	 python3-pyqt6-devel-tools>=${version}_${revision}"
+	build_style=meta
+	short_desc="${short_desc} - development files"
+}

From f8b5608522d860155a6ab35f04b3f448fbcb5465 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 30 May 2021 23:54:51 +0700
Subject: [PATCH 4/6] New package: python3-pyqt6-charts-6.1.1

---
 srcpkgs/python3-pyqt6-charts-devel    |  1 +
 srcpkgs/python3-pyqt6-charts/template | 26 ++++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-charts/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-charts-devel
 create mode 100644 srcpkgs/python3-pyqt6-charts/template
 create mode 100644 srcpkgs/python3-pyqt6-charts/update

diff --git a/srcpkgs/python3-pyqt6-charts-devel b/srcpkgs/python3-pyqt6-charts-devel
new file mode 120000
index 000000000000..21a5afd07fc8
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts-devel
@@ -0,0 +1 @@
+python3-pyqt6-charts
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-charts/template b/srcpkgs/python3-pyqt6-charts/template
new file mode 100644
index 000000000000..17a6c1334a96
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-charts'
+pkgname=python3-pyqt6-charts
+version=6.1.1
+revision=1
+wrksrc=PyQt6_Charts-$version
+build_style=sip-build
+hostmakedepends="qt6-charts-devel python3-pyqt6-widgets-devel
+ python3-PyQt-builder pkg-config"
+makedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for Charts - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtchart/"
+distfiles="$PYPI_SITE/P/PyQt6-Charts/PyQt6_Charts-${version}.tar.gz"
+checksum=258416a5c8148cc824dede64b37ede08f14e1f90ef7e3c11e411b1b03268fee2
+lib32disabled=yes
+
+python3-pyqt6-charts-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-charts/update b/srcpkgs/python3-pyqt6-charts/update
new file mode 100644
index 000000000000..783ec1b7e7ba
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-Charts
+pattern='PyQt6_Charts-\K([\d.]+)(?=.tar.gz)'

From 560045a8b4635a2cd217314fe201572a5beadda6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 14:40:07 +0700
Subject: [PATCH 5/6] New package: python3-pyqt6-3d-6.1.1

---
 srcpkgs/python3-pyqt6-3d-devel    |  1 +
 srcpkgs/python3-pyqt6-3d/template | 26 ++++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-3d/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-3d-devel
 create mode 100644 srcpkgs/python3-pyqt6-3d/template
 create mode 100644 srcpkgs/python3-pyqt6-3d/update

diff --git a/srcpkgs/python3-pyqt6-3d-devel b/srcpkgs/python3-pyqt6-3d-devel
new file mode 120000
index 000000000000..129722a79e7b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d-devel
@@ -0,0 +1 @@
+python3-pyqt6-3d
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-3d/template b/srcpkgs/python3-pyqt6-3d/template
new file mode 100644
index 000000000000..3986b2a41934
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-3d'
+pkgname=python3-pyqt6-3d
+version=6.1.1
+revision=1
+wrksrc=PyQt6_3D-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-gui-devel qt6-3d-devel
+ python3-PyQt-builder pkg-config"
+makedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for 3D - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt3d/"
+distfiles="$PYPI_SITE/P/PyQt6-3D/PyQt6_3D-${version}.tar.gz"
+checksum=f0277c04ac62f065cdd3f740a2149d260a5909e51df9fbb63e5ed83cebbe44f4
+lib32disabled=yes
+
+python3-pyqt6-3d-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-3d/update b/srcpkgs/python3-pyqt6-3d/update
new file mode 100644
index 000000000000..6877724b1356
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-3D
+pattern='PyQt6_3D-\K([\d.]+)(?=.tar.gz)'

From 7a61b3b0d83c534762ad0ecc3bd77f19f2dff951 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 15:20:07 +0700
Subject: [PATCH 6/6] New package: python3-pyqt6-networkauth-6.1.1

---
 srcpkgs/python3-pyqt6-networkauth-devel    |  1 +
 srcpkgs/python3-pyqt6-networkauth/template | 26 ++++++++++++++++++++++
 srcpkgs/python3-pyqt6-networkauth/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-networkauth-devel
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/template
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/update

diff --git a/srcpkgs/python3-pyqt6-networkauth-devel b/srcpkgs/python3-pyqt6-networkauth-devel
new file mode 120000
index 000000000000..0d76b4e1cd2d
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth-devel
@@ -0,0 +1 @@
+python3-pyqt6-networkauth
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-networkauth/template b/srcpkgs/python3-pyqt6-networkauth/template
new file mode 100644
index 000000000000..e5142193c69e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-networkauth'
+pkgname=python3-pyqt6-networkauth
+version=6.1.1
+revision=1
+wrksrc=PyQt6_NetworkAuth-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-network-devel qt6-networkauth-devel
+ python3-PyQt-builder pkg-config"
+makedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for NetworkAuth - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtnetworkauth/"
+distfiles="$PYPI_SITE/P/PyQt6-NetworkAuth/PyQt6_NetworkAuth-${version}.tar.gz"
+checksum=1590118cef920adcef55022246994d5dfcc64cb7504bdd17eac92ffeb4a21dbe
+lib32disabled=yes
+
+python3-pyqt6-networkauth-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-networkauth/update b/srcpkgs/python3-pyqt6-networkauth/update
new file mode 100644
index 000000000000..2e83411a72ec
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-NetworkAuth
+pattern='PyQt6_NetworkAuth-\K([\d.]+)(?=.tar.gz)'

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

* Re: [PR PATCH] [Updated] PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (11 preceding siblings ...)
  2021-06-17 11:39 ` [PR PATCH] [Updated] PyQt6 sgn
@ 2021-06-17 12:07 ` sgn
  2021-06-17 12:09 ` sgn
  2021-06-22 14:27 ` [PR PATCH] [Merged]: PyQt6 sgn
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-06-17 12:07 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 36821 bytes --]

From 63d44b1583593f35e004af62a5dc0c356e1e0143 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 1/6] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh | 147 ++++++++++++++++++++++++++++++++
 1 file changed, 147 insertions(+)
 create mode 100644 common/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..1b8161531d14
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,147 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _qt=
+	local _spec=
+	local _mkspec=
+
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	if [ -d /$py3_sitelib/pyqtbuild ]; then
+		if [ -x /usr/lib/qt6/bin/qmake ]; then
+			_qt=qt6
+		elif [ -x /usr/lib/qt5/bin/qmake ]; then
+			_qt=qt5
+		else
+			msg_error 'qmake not found\n'
+		fi
+	fi
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<-_EOF
+		MAKEFILE_GENERATOR      = UNIX
+		CONFIG                 += incremental no_qt_rpath
+		QMAKE_INCREMENTAL_STYLE = sublib
+
+		include(/$_mkspec/common/linux.conf)
+		include(/$_mkspec/common/gcc-base-unix.conf)
+		include(/$_mkspec/common/g++-unix.conf)
+
+		QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+		QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+		QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+		QMAKE_CC                = $CC
+		QMAKE_CXX               = $CXX
+		QMAKE_LINK              = $CXX
+		QMAKE_LINK_C            = $CC
+		QMAKE_LINK_SHLIB        = $CXX
+
+		QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+		QMAKE_OBJCOPY           = $OBJCOPY
+		QMAKE_NM                = $NM -P
+		QMAKE_STRIP             = $STRIP
+
+		QMAKE_CFLAGS            = $CFLAGS -I$XBPS_CROSS_BASE/usr/include/python$py3_ver
+		QMAKE_CXXFLAGS          = $CXXFLAGS -I$XBPS_CROSS_BASE/usr/include/python$py3_ver
+		QMAKE_LFLAGS            = -L$XBPS_CROSS_BASE/usr/lib $LDFLAGS
+		load(qt_config)
+		_EOF
+
+		printf '#include "%s/%s/linux-g++/qplatformdefs.h"\n' \
+			"$XBPS_CROSS_BASE" "$_mkspec" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<-_EOF
+		[Paths]
+		Sysroot=$XBPS_CROSS_BASE
+		Prefix=$XBPS_CROSS_BASE/usr
+		ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+		Data=$XBPS_CROSS_BASE/usr/share/$_qt
+		Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+		Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+		Libraries=$XBPS_CROSS_BASE/usr/lib
+		LibraryExecutables=/usr/lib/$_qt/libexec
+		Binaries=/usr/lib/$_qt/bin
+		Tests=$XBPS_CROSS_BASE/usr/tests
+		Plugins=/usr/lib/$_qt/plugins
+		Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+		Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+		Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+		Settings=$XBPS_CROSS_BASE/etc/xdg
+		Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+		HostPrefix=/usr
+		HostData=/usr/lib/$_qt
+		HostBinaries=/usr/lib/$_qt/bin
+		HostLibraries=/usr/lib
+		HostLibraryExecutables=/usr/lib/$_qt/libexec
+		Spec=linux-g++
+		TargetSpec=$_spec
+		_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<-_EOF
+		#!/bin/sh
+		exec /usr/lib/$_qt/bin/qmake "\$@" \\
+		        -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+		        PKG_CONFIG_EXECUTABLE=${XBPS_WRAPPERDIR}/${PKG_CONFIG} \\
+		        QMAKE_CFLAGS+="\$CFLAGS" \\
+		        QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+		        QMAKE_LFLAGS+="\$LDFLAGS"
+		_EOF
+		chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<-_EOF
+		#!/bin/sh
+		exec /usr/lib/$_qt/bin/qmake \\
+		        "\$@" \\
+		        PREFIX=/usr \\
+		        QT_INSTALL_PREFIX=/usr \\
+		        LIB=/usr/lib \\
+		        QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+		        QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+		        QMAKE_CFLAGS+="$CFLAGS" \\
+		        QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+		        QMAKE_LFLAGS+="$LDFLAGS" \\
+		        CONFIG+=no_qt_rpath
+		_EOF
+		chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+	fi
+
+	sip-build --no-make \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		--api-dir /usr/share/$_qt/qsci/api/python \
+		$configure_args \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}

From 58ce72febec9e08898717ddf23ca39efff24c0ed Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 2/6] New package: python3-pyqt6-sip-13.1.0

---
 srcpkgs/python3-pyqt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-pyqt6-sip/template
 create mode 100644 srcpkgs/python3-pyqt6-sip/update

diff --git a/srcpkgs/python3-pyqt6-sip/template b/srcpkgs/python3-pyqt6-sip/template
new file mode 100644
index 000000000000..e7f2517c130e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-pyqt6-sip'
+pkgname=python3-pyqt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-pyqt6-sip/update b/srcpkgs/python3-pyqt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From 0af07f28e92e85fc604e68428868fdd79f2be04d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 3/6] New package: python3-pyqt6-6.1.1

---
 srcpkgs/python3-pyqt6-core                    |   1 +
 srcpkgs/python3-pyqt6-core-devel              |   1 +
 srcpkgs/python3-pyqt6-dbus                    |   1 +
 srcpkgs/python3-pyqt6-dbus-devel              |   1 +
 srcpkgs/python3-pyqt6-declarative             |   1 +
 srcpkgs/python3-pyqt6-declarative-devel       |   1 +
 srcpkgs/python3-pyqt6-devel                   |   1 +
 srcpkgs/python3-pyqt6-devel-tools             |   1 +
 srcpkgs/python3-pyqt6-gui                     |   1 +
 srcpkgs/python3-pyqt6-gui-devel               |   1 +
 srcpkgs/python3-pyqt6-network                 |   1 +
 srcpkgs/python3-pyqt6-network-devel           |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets          |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets-devel    |   1 +
 srcpkgs/python3-pyqt6-printsupport            |   1 +
 srcpkgs/python3-pyqt6-printsupport-devel      |   1 +
 srcpkgs/python3-pyqt6-quick3d                 |   1 +
 srcpkgs/python3-pyqt6-quick3d-devel           |   1 +
 srcpkgs/python3-pyqt6-sql                     |   1 +
 srcpkgs/python3-pyqt6-sql-devel               |   1 +
 srcpkgs/python3-pyqt6-svg                     |   1 +
 srcpkgs/python3-pyqt6-svg-devel               |   1 +
 srcpkgs/python3-pyqt6-test                    |   1 +
 srcpkgs/python3-pyqt6-test-devel              |   1 +
 srcpkgs/python3-pyqt6-tools                   |   1 +
 srcpkgs/python3-pyqt6-tools-devel             |   1 +
 srcpkgs/python3-pyqt6-widgets                 |   1 +
 srcpkgs/python3-pyqt6-widgets-devel           |   1 +
 srcpkgs/python3-pyqt6-xml                     |   1 +
 srcpkgs/python3-pyqt6-xml-devel               |   1 +
 .../patches/pyproject-cross.patch             |  20 +
 srcpkgs/python3-pyqt6/template                | 341 ++++++++++++++++++
 32 files changed, 391 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-core
 create mode 120000 srcpkgs/python3-pyqt6-core-devel
 create mode 120000 srcpkgs/python3-pyqt6-dbus
 create mode 120000 srcpkgs/python3-pyqt6-dbus-devel
 create mode 120000 srcpkgs/python3-pyqt6-declarative
 create mode 120000 srcpkgs/python3-pyqt6-declarative-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel-tools
 create mode 120000 srcpkgs/python3-pyqt6-gui
 create mode 120000 srcpkgs/python3-pyqt6-gui-devel
 create mode 120000 srcpkgs/python3-pyqt6-network
 create mode 120000 srcpkgs/python3-pyqt6-network-devel
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-printsupport
 create mode 120000 srcpkgs/python3-pyqt6-printsupport-devel
 create mode 120000 srcpkgs/python3-pyqt6-quick3d
 create mode 120000 srcpkgs/python3-pyqt6-quick3d-devel
 create mode 120000 srcpkgs/python3-pyqt6-sql
 create mode 120000 srcpkgs/python3-pyqt6-sql-devel
 create mode 120000 srcpkgs/python3-pyqt6-svg
 create mode 120000 srcpkgs/python3-pyqt6-svg-devel
 create mode 120000 srcpkgs/python3-pyqt6-test
 create mode 120000 srcpkgs/python3-pyqt6-test-devel
 create mode 120000 srcpkgs/python3-pyqt6-tools
 create mode 120000 srcpkgs/python3-pyqt6-tools-devel
 create mode 120000 srcpkgs/python3-pyqt6-widgets
 create mode 120000 srcpkgs/python3-pyqt6-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-xml
 create mode 120000 srcpkgs/python3-pyqt6-xml-devel
 create mode 100644 srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-pyqt6/template

diff --git a/srcpkgs/python3-pyqt6-core b/srcpkgs/python3-pyqt6-core
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-core-devel b/srcpkgs/python3-pyqt6-core-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus b/srcpkgs/python3-pyqt6-dbus
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus-devel b/srcpkgs/python3-pyqt6-dbus-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative b/srcpkgs/python3-pyqt6-declarative
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative-devel b/srcpkgs/python3-pyqt6-declarative-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel b/srcpkgs/python3-pyqt6-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel-tools b/srcpkgs/python3-pyqt6-devel-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui b/srcpkgs/python3-pyqt6-gui
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui-devel b/srcpkgs/python3-pyqt6-gui-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network b/srcpkgs/python3-pyqt6-network
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network-devel b/srcpkgs/python3-pyqt6-network-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets b/srcpkgs/python3-pyqt6-opengl-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets-devel b/srcpkgs/python3-pyqt6-opengl-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport b/srcpkgs/python3-pyqt6-printsupport
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport-devel b/srcpkgs/python3-pyqt6-printsupport-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d b/srcpkgs/python3-pyqt6-quick3d
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d-devel b/srcpkgs/python3-pyqt6-quick3d-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql b/srcpkgs/python3-pyqt6-sql
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql-devel b/srcpkgs/python3-pyqt6-sql-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg b/srcpkgs/python3-pyqt6-svg
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg-devel b/srcpkgs/python3-pyqt6-svg-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test b/srcpkgs/python3-pyqt6-test
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test-devel b/srcpkgs/python3-pyqt6-test-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools b/srcpkgs/python3-pyqt6-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools-devel b/srcpkgs/python3-pyqt6-tools-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets b/srcpkgs/python3-pyqt6-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets-devel b/srcpkgs/python3-pyqt6-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml b/srcpkgs/python3-pyqt6-xml
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml-devel b/srcpkgs/python3-pyqt6-xml-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-pyqt6/template b/srcpkgs/python3-pyqt6/template
new file mode 100644
index 000000000000..78dd4ed3b16a
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/template
@@ -0,0 +1,341 @@
+# Template file for 'python3-pyqt6'
+pkgname=python3-pyqt6
+version=6.1.1
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+configure_args="--confirm-license --dbus $XBPS_CROSS_BASE/usr/include/dbus-1.0"
+hostmakedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus
+ python3-PyQt-builder pkg-config"
+makedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus-devel"
+depends="python3-pyqt6-sip"
+short_desc="Python 3 bindings for Qt6"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=8775244fa73f94bfe8ae7672b624e2a903a22bc35d7ea42dd830949e2f9e43c7
+lib32disabled=yes
+patch_args=-Np1
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+# Split like qt6, but keep qt6-core in main pkg
+# python3-pyqt6-core_package() {
+# 	lib32disabled=yes
+# 	depends="python3-pyqt6-sip>=${version}_${revision}"
+# 	short_desc="${short_desc} - Core"
+# 	pkg_install() {
+# 		vmove "${py3_sitelib}/*.dist-info"
+# 		vmove "${py3_sitelib}/PyQt6/__init__.py"
+# 		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+# 	}
+# }
+
+python3-pyqt6-core-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 qt6-base-devel python3-devel sip"
+	short_desc="${short_desc} - core development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtCore"
+	}
+}
+
+python3-pyqt6-dbus_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - DBus"
+	pkg_install() {
+		vmove "${py3_sitelib}/dbus"
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-pyqt6-dbus-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-dbus>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - DBus - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDBus"
+	}
+}
+
+python3-pyqt6-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Tools"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtDesigner.*"
+		vmove "${py3_sitelib}/PyQt6/QtHelp.*"
+		vmove usr/lib/qt6/plugins/designer
+	}
+}
+
+python3-pyqt6-tools-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-tools>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Tools - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDesigner"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtHelp"
+	}
+}
+
+python3-pyqt6-gui_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-pyqt6-gui-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-gui>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - GUI - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtGui"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGL"
+	}
+}
+
+python3-pyqt6-network_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-pyqt6-network-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-network>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtNetwork"
+	}
+}
+
+python3-pyqt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-pyqt6-opengl-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-opengl-widgets>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGLWidgets"
+	}
+}
+
+python3-pyqt6-printsupport_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-pyqt6-printsupport-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-printsupport>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtPrintSupport"
+	}
+}
+
+python3-pyqt6-declarative_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQml.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuick.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuickWidgets.*"
+		vmove usr/lib/qt6/plugins/PyQt6
+	}
+}
+
+python3-pyqt6-declarative-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-declarative>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQml"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuickWidgets"
+	}
+}
+
+python3-pyqt6-quick3d_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQuick3D.*"
+	}
+}
+
+python3-pyqt6-quick3d-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-quick3d>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick3D"
+	}
+}
+
+python3-pyqt6-sql_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-pyqt6-sql-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-sql>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - SQL - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSql"
+	}
+}
+
+python3-pyqt6-svg_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - svg"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSvg.*"
+		vmove "${py3_sitelib}/PyQt6/QtSvgWidgets.*"
+	}
+}
+
+python3-pyqt6-svg-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-svg>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - svg - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvg"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvgWidgets"
+	}
+}
+
+python3-pyqt6-test_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-pyqt6-test-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-test>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Test - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtTest"
+	}
+}
+
+python3-pyqt6-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-pyqt6-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-widgets>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtWidgets"
+	}
+}
+
+python3-pyqt6-xml_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}
+
+python3-pyqt6-xml-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Xml - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtXml"
+	}
+}
+
+python3-pyqt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-pyqt6-devel_package() {
+	lib32disabled=yes
+	depends="
+	 python3-pyqt6-core-devel>=${version}_${revision}
+	 python3-pyqt6-dbus-devel>=${version}_${revision}
+	 python3-pyqt6-tools-devel>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}
+	 python3-pyqt6-network-devel>=${version}_${revision}
+	 python3-pyqt6-opengl-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-printsupport-devel>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}
+	 python3-pyqt6-quick3d-devel>=${version}_${revision}
+	 python3-pyqt6-sql-devel>=${version}_${revision}
+	 python3-pyqt6-svg-devel>=${version}_${revision}
+	 python3-pyqt6-test-devel>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-xml-devel>=${version}_${revision}
+	 python3-pyqt6-devel-tools>=${version}_${revision}"
+	build_style=meta
+	short_desc="${short_desc} - development files"
+}

From 56ec323543c0e08dcc122641e96a9fec3c60f6e3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 30 May 2021 23:54:51 +0700
Subject: [PATCH 4/6] New package: python3-pyqt6-charts-6.1.1

---
 srcpkgs/python3-pyqt6-charts-devel    |  1 +
 srcpkgs/python3-pyqt6-charts/template | 26 ++++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-charts/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-charts-devel
 create mode 100644 srcpkgs/python3-pyqt6-charts/template
 create mode 100644 srcpkgs/python3-pyqt6-charts/update

diff --git a/srcpkgs/python3-pyqt6-charts-devel b/srcpkgs/python3-pyqt6-charts-devel
new file mode 120000
index 000000000000..21a5afd07fc8
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts-devel
@@ -0,0 +1 @@
+python3-pyqt6-charts
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-charts/template b/srcpkgs/python3-pyqt6-charts/template
new file mode 100644
index 000000000000..17a6c1334a96
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-charts'
+pkgname=python3-pyqt6-charts
+version=6.1.1
+revision=1
+wrksrc=PyQt6_Charts-$version
+build_style=sip-build
+hostmakedepends="qt6-charts-devel python3-pyqt6-widgets-devel
+ python3-PyQt-builder pkg-config"
+makedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for Charts - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtchart/"
+distfiles="$PYPI_SITE/P/PyQt6-Charts/PyQt6_Charts-${version}.tar.gz"
+checksum=258416a5c8148cc824dede64b37ede08f14e1f90ef7e3c11e411b1b03268fee2
+lib32disabled=yes
+
+python3-pyqt6-charts-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-charts/update b/srcpkgs/python3-pyqt6-charts/update
new file mode 100644
index 000000000000..783ec1b7e7ba
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-Charts
+pattern='PyQt6_Charts-\K([\d.]+)(?=.tar.gz)'

From 2d7b1dcf76a03de1cf9cbcce3fb8e69db3979b7e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 14:40:07 +0700
Subject: [PATCH 5/6] New package: python3-pyqt6-3d-6.1.1

---
 srcpkgs/python3-pyqt6-3d-devel    |  1 +
 srcpkgs/python3-pyqt6-3d/template | 26 ++++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-3d/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-3d-devel
 create mode 100644 srcpkgs/python3-pyqt6-3d/template
 create mode 100644 srcpkgs/python3-pyqt6-3d/update

diff --git a/srcpkgs/python3-pyqt6-3d-devel b/srcpkgs/python3-pyqt6-3d-devel
new file mode 120000
index 000000000000..129722a79e7b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d-devel
@@ -0,0 +1 @@
+python3-pyqt6-3d
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-3d/template b/srcpkgs/python3-pyqt6-3d/template
new file mode 100644
index 000000000000..3986b2a41934
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-3d'
+pkgname=python3-pyqt6-3d
+version=6.1.1
+revision=1
+wrksrc=PyQt6_3D-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-gui-devel qt6-3d-devel
+ python3-PyQt-builder pkg-config"
+makedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for 3D - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt3d/"
+distfiles="$PYPI_SITE/P/PyQt6-3D/PyQt6_3D-${version}.tar.gz"
+checksum=f0277c04ac62f065cdd3f740a2149d260a5909e51df9fbb63e5ed83cebbe44f4
+lib32disabled=yes
+
+python3-pyqt6-3d-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-3d/update b/srcpkgs/python3-pyqt6-3d/update
new file mode 100644
index 000000000000..6877724b1356
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-3D
+pattern='PyQt6_3D-\K([\d.]+)(?=.tar.gz)'

From 8427d42028efeb964ced62ffb77df9576d5e3a3e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 15:20:07 +0700
Subject: [PATCH 6/6] New package: python3-pyqt6-networkauth-6.1.1

---
 srcpkgs/python3-pyqt6-networkauth-devel    |  1 +
 srcpkgs/python3-pyqt6-networkauth/template | 26 ++++++++++++++++++++++
 srcpkgs/python3-pyqt6-networkauth/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-networkauth-devel
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/template
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/update

diff --git a/srcpkgs/python3-pyqt6-networkauth-devel b/srcpkgs/python3-pyqt6-networkauth-devel
new file mode 120000
index 000000000000..0d76b4e1cd2d
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth-devel
@@ -0,0 +1 @@
+python3-pyqt6-networkauth
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-networkauth/template b/srcpkgs/python3-pyqt6-networkauth/template
new file mode 100644
index 000000000000..e5142193c69e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-networkauth'
+pkgname=python3-pyqt6-networkauth
+version=6.1.1
+revision=1
+wrksrc=PyQt6_NetworkAuth-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-network-devel qt6-networkauth-devel
+ python3-PyQt-builder pkg-config"
+makedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for NetworkAuth - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtnetworkauth/"
+distfiles="$PYPI_SITE/P/PyQt6-NetworkAuth/PyQt6_NetworkAuth-${version}.tar.gz"
+checksum=1590118cef920adcef55022246994d5dfcc64cb7504bdd17eac92ffeb4a21dbe
+lib32disabled=yes
+
+python3-pyqt6-networkauth-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-networkauth/update b/srcpkgs/python3-pyqt6-networkauth/update
new file mode 100644
index 000000000000..2e83411a72ec
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-NetworkAuth
+pattern='PyQt6_NetworkAuth-\K([\d.]+)(?=.tar.gz)'

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

* Re: [PR PATCH] [Updated] PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (12 preceding siblings ...)
  2021-06-17 12:07 ` sgn
@ 2021-06-17 12:09 ` sgn
  2021-06-22 14:27 ` [PR PATCH] [Merged]: PyQt6 sgn
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-06-17 12:09 UTC (permalink / raw)
  To: ml

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

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

https://github.com/sgn/void-packages wip-pyqt6
https://github.com/void-linux/void-packages/pull/31092

PyQt6
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wip-pyqt6-31092.patch --]
[-- Type: text/x-diff, Size: 36861 bytes --]

From a686166778908b980353fea594984c9106e2bdb3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:39 +0700
Subject: [PATCH 1/6] build-style: new build-style for sip-build

---
 common/build-style/sip-build.sh | 147 ++++++++++++++++++++++++++++++++
 1 file changed, 147 insertions(+)
 create mode 100644 common/build-style/sip-build.sh

diff --git a/common/build-style/sip-build.sh b/common/build-style/sip-build.sh
new file mode 100644
index 000000000000..d8b3bcea98bf
--- /dev/null
+++ b/common/build-style/sip-build.sh
@@ -0,0 +1,147 @@
+#
+# This helper is for templates using sip-build.
+#
+
+do_configure() {
+	local _qt=
+	local _spec=
+	local _mkspec=
+
+	: "${sip_builddir:=build}"
+	mkdir -p "$sip_builddir"
+
+	if [ ! -d /$py3_sitelib/pyqtbuild ]; then
+		: "who uses sip-build without qmake anyway?"
+	elif [ -x /usr/lib/qt6/bin/qmake ]; then
+		_qt=qt6
+	elif [ -x /usr/lib/qt5/bin/qmake ]; then
+		_qt=qt5
+	else
+		msg_error 'qmake not found\n'
+	fi
+
+	if [ ! "$_qt" ]; then
+		: "who use sip-build without qmake anyway?"
+	elif [ "$CROSS_BUILD" ]; then
+		_mkspec="usr/lib/$_qt/mkspecs"
+		_spec="$XBPS_WRAPPERDIR/sip-build/target-spec/linux-g++"
+		mkdir -p "$_spec"
+		cat >"$_spec/qmake.conf" <<-_EOF
+		MAKEFILE_GENERATOR      = UNIX
+		CONFIG                 += incremental no_qt_rpath
+		QMAKE_INCREMENTAL_STYLE = sublib
+
+		include(/$_mkspec/common/linux.conf)
+		include(/$_mkspec/common/gcc-base-unix.conf)
+		include(/$_mkspec/common/g++-unix.conf)
+
+		QMAKE_TARGET_CONFIG     = $XBPS_CROSS_BASE/$_mkspec/qconfig.pri
+		QMAKE_TARGET_MODULE     = $XBPS_CROSS_BASE/$_mkspec/qmodule.pri
+		QMAKEMODULES            = $XBPS_CROSS_BASE/$_mkspec/modules
+		QMAKE_CC                = $CC
+		QMAKE_CXX               = $CXX
+		QMAKE_LINK              = $CXX
+		QMAKE_LINK_C            = $CC
+		QMAKE_LINK_SHLIB        = $CXX
+
+		QMAKE_AR                = $XBPS_CROSS_TRIPLET-gcc-ar cqs
+		QMAKE_OBJCOPY           = $OBJCOPY
+		QMAKE_NM                = $NM -P
+		QMAKE_STRIP             = $STRIP
+
+		QMAKE_CFLAGS            = $CFLAGS -I$XBPS_CROSS_BASE/usr/include/python$py3_ver
+		QMAKE_CXXFLAGS          = $CXXFLAGS -I$XBPS_CROSS_BASE/usr/include/python$py3_ver
+		QMAKE_LFLAGS            = -L$XBPS_CROSS_BASE/usr/lib $LDFLAGS
+		load(qt_config)
+		_EOF
+
+		printf '#include "%s/%s/linux-g++/qplatformdefs.h"\n' \
+			"$XBPS_CROSS_BASE" "$_mkspec" >"$_spec/qplatformdefs.h"
+		cat >"$XBPS_WRAPPERDIR/sip-build/qt.conf" <<-_EOF
+		[Paths]
+		Sysroot=$XBPS_CROSS_BASE
+		Prefix=$XBPS_CROSS_BASE/usr
+		ArchData=$XBPS_CROSS_BASE/usr/lib/$_qt
+		Data=$XBPS_CROSS_BASE/usr/share/$_qt
+		Documentation=$XBPS_CROSS_BASE/usr/share/doc/$_qt
+		Headers=$XBPS_CROSS_BASE/usr/include/$_qt
+		Libraries=$XBPS_CROSS_BASE/usr/lib
+		LibraryExecutables=/usr/lib/$_qt/libexec
+		Binaries=/usr/lib/$_qt/bin
+		Tests=$XBPS_CROSS_BASE/usr/tests
+		Plugins=/usr/lib/$_qt/plugins
+		Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/imports
+		Qml2Imports=$XBPS_CROSS_BASE/usr/lib/$_qt/qml
+		Translations=$XBPS_CROSS_BASE/usr/share/$_qt/translations
+		Settings=$XBPS_CROSS_BASE/etc/xdg
+		Examples=$XBPS_CROSS_BASE/usr/share/$_qt/examples
+		HostPrefix=/usr
+		HostData=/usr/lib/$_qt
+		HostBinaries=/usr/lib/$_qt/bin
+		HostLibraries=/usr/lib
+		HostLibraryExecutables=/usr/lib/$_qt/libexec
+		Spec=linux-g++
+		TargetSpec=$_spec
+		_EOF
+		# Call it sip-qmake to not override qmake build-helper
+		#
+		# XXX: Intentionally quote {C,CXX,LD}FLAGS here but not native.
+		# - Cross Build:
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		#   + hardening flags will be picked up from environment variables
+		# - Native Build:
+		#   + hardening flags will be picked up first (Makefile, qt.conf?)
+		#   + base flags will be picked up from QMAKE_{C,CXX,LD}FLAGS
+		# Maybe there're better workaround, I don't know.
+		cat >"$XBPS_WRAPPERDIR/sip-qmake" <<-_EOF
+		#!/bin/sh
+		exec /usr/lib/$_qt/bin/qmake "\$@" \\
+		        -qtconf "$XBPS_WRAPPERDIR/sip-build/qt.conf" \\
+		        PKG_CONFIG_EXECUTABLE=${XBPS_WRAPPERDIR}/${PKG_CONFIG} \\
+		        QMAKE_CFLAGS+="\$CFLAGS" \\
+		        QMAKE_CXXFLAGS+="\$CXXFLAGS" \\
+		        QMAKE_LFLAGS+="\$LDFLAGS"
+		_EOF
+		chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+	else
+		cat >"${XBPS_WRAPPERDIR}/sip-qmake" <<-_EOF
+		#!/bin/sh
+		exec /usr/lib/$_qt/bin/qmake \\
+		        "\$@" \\
+		        PREFIX=/usr \\
+		        QT_INSTALL_PREFIX=/usr \\
+		        LIB=/usr/lib \\
+		        QMAKE_CC="$CC" QMAKE_CXX="$CXX" \\
+		        QMAKE_LINK="$CXX" QMAKE_LINK_C="$CC" \\
+		        QMAKE_CFLAGS+="$CFLAGS" \\
+		        QMAKE_CXXFLAGS+="$CXXFLAGS" \\
+		        QMAKE_LFLAGS+="$LDFLAGS" \\
+		        CONFIG+=no_qt_rpath
+		_EOF
+		chmod 755 ${XBPS_WRAPPERDIR}/sip-qmake
+	fi
+
+	sip-build --no-make \
+		${_qt:+--qmake "$XBPS_WRAPPERDIR/sip-qmake"} \
+		--api-dir /usr/share/$_qt/qsci/api/python \
+		$configure_args \
+		--build-dir "$sip_builddir"
+
+	if [ "$CROSS_BUILD" ]; then
+		# -I/usr/include/python$py3_ver is set by sip-build :(
+		find "$sip_builddir" -name Makefile |
+		xargs sed -i "s,-I\\(/usr/include\\),-I$XBPS_CROSS_BASE\\1,g"
+	fi
+}
+
+do_build() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" ${makejobs}
+}
+
+do_install() {
+	: "${sip_builddir:=build}"
+	make -C "${sip_builddir}" \
+		DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} \
+		install
+}

From 2c73cf27d9a88042592bd4f0e2f9e4dd38465328 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:51:51 +0700
Subject: [PATCH 2/6] New package: python3-pyqt6-sip-13.1.0

---
 srcpkgs/python3-pyqt6-sip/template | 25 +++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-sip/update   |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 srcpkgs/python3-pyqt6-sip/template
 create mode 100644 srcpkgs/python3-pyqt6-sip/update

diff --git a/srcpkgs/python3-pyqt6-sip/template b/srcpkgs/python3-pyqt6-sip/template
new file mode 100644
index 000000000000..e7f2517c130e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/template
@@ -0,0 +1,25 @@
+# Template file for 'python3-pyqt6-sip'
+pkgname=python3-pyqt6-sip
+version=13.1.0
+revision=1
+wrksrc="PyQt6_sip-$version"
+build_style=python3-module
+hostmakedepends="python3-devel python3-setuptools sip"
+makedepends="python3-devel"
+depends="python3"
+short_desc="PyQt6 SIP bindings with C and C++ for Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-2.0-only, GPL-3.0-only, custom:SIP"
+homepage="https://www.riverbankcomputing.com/software/sip/"
+distfiles="${PYPI_SITE}/P/PyQt6_sip/PyQt6_sip-${version}.tar.gz"
+checksum=7c31073fe8e6cb8a42e85d60d3a096700a9047c772b354d6227dfe965566ec8a
+lib32disabled=yes
+
+post_extract() {
+	# for do_check
+	mkdir -p PyQt6
+}
+
+post_install() {
+	vlicense /usr/share/licenses/sip/LICENSE
+}
diff --git a/srcpkgs/python3-pyqt6-sip/update b/srcpkgs/python3-pyqt6-sip/update
new file mode 100644
index 000000000000..b3e535a20eb4
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sip/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-sip
+pattern='PyQt6_sip-\K([\d.]+)(?=.tar.gz)'

From f82e21fd6c7e3af02cda16974a3cb941b2cabc20 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 24 May 2021 22:54:59 +0700
Subject: [PATCH 3/6] New package: python3-pyqt6-6.1.1

---
 srcpkgs/python3-pyqt6-core                    |   1 +
 srcpkgs/python3-pyqt6-core-devel              |   1 +
 srcpkgs/python3-pyqt6-dbus                    |   1 +
 srcpkgs/python3-pyqt6-dbus-devel              |   1 +
 srcpkgs/python3-pyqt6-declarative             |   1 +
 srcpkgs/python3-pyqt6-declarative-devel       |   1 +
 srcpkgs/python3-pyqt6-devel                   |   1 +
 srcpkgs/python3-pyqt6-devel-tools             |   1 +
 srcpkgs/python3-pyqt6-gui                     |   1 +
 srcpkgs/python3-pyqt6-gui-devel               |   1 +
 srcpkgs/python3-pyqt6-network                 |   1 +
 srcpkgs/python3-pyqt6-network-devel           |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets          |   1 +
 srcpkgs/python3-pyqt6-opengl-widgets-devel    |   1 +
 srcpkgs/python3-pyqt6-printsupport            |   1 +
 srcpkgs/python3-pyqt6-printsupport-devel      |   1 +
 srcpkgs/python3-pyqt6-quick3d                 |   1 +
 srcpkgs/python3-pyqt6-quick3d-devel           |   1 +
 srcpkgs/python3-pyqt6-sql                     |   1 +
 srcpkgs/python3-pyqt6-sql-devel               |   1 +
 srcpkgs/python3-pyqt6-svg                     |   1 +
 srcpkgs/python3-pyqt6-svg-devel               |   1 +
 srcpkgs/python3-pyqt6-test                    |   1 +
 srcpkgs/python3-pyqt6-test-devel              |   1 +
 srcpkgs/python3-pyqt6-tools                   |   1 +
 srcpkgs/python3-pyqt6-tools-devel             |   1 +
 srcpkgs/python3-pyqt6-widgets                 |   1 +
 srcpkgs/python3-pyqt6-widgets-devel           |   1 +
 srcpkgs/python3-pyqt6-xml                     |   1 +
 srcpkgs/python3-pyqt6-xml-devel               |   1 +
 .../patches/pyproject-cross.patch             |  20 +
 srcpkgs/python3-pyqt6/template                | 341 ++++++++++++++++++
 32 files changed, 391 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-core
 create mode 120000 srcpkgs/python3-pyqt6-core-devel
 create mode 120000 srcpkgs/python3-pyqt6-dbus
 create mode 120000 srcpkgs/python3-pyqt6-dbus-devel
 create mode 120000 srcpkgs/python3-pyqt6-declarative
 create mode 120000 srcpkgs/python3-pyqt6-declarative-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel
 create mode 120000 srcpkgs/python3-pyqt6-devel-tools
 create mode 120000 srcpkgs/python3-pyqt6-gui
 create mode 120000 srcpkgs/python3-pyqt6-gui-devel
 create mode 120000 srcpkgs/python3-pyqt6-network
 create mode 120000 srcpkgs/python3-pyqt6-network-devel
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets
 create mode 120000 srcpkgs/python3-pyqt6-opengl-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-printsupport
 create mode 120000 srcpkgs/python3-pyqt6-printsupport-devel
 create mode 120000 srcpkgs/python3-pyqt6-quick3d
 create mode 120000 srcpkgs/python3-pyqt6-quick3d-devel
 create mode 120000 srcpkgs/python3-pyqt6-sql
 create mode 120000 srcpkgs/python3-pyqt6-sql-devel
 create mode 120000 srcpkgs/python3-pyqt6-svg
 create mode 120000 srcpkgs/python3-pyqt6-svg-devel
 create mode 120000 srcpkgs/python3-pyqt6-test
 create mode 120000 srcpkgs/python3-pyqt6-test-devel
 create mode 120000 srcpkgs/python3-pyqt6-tools
 create mode 120000 srcpkgs/python3-pyqt6-tools-devel
 create mode 120000 srcpkgs/python3-pyqt6-widgets
 create mode 120000 srcpkgs/python3-pyqt6-widgets-devel
 create mode 120000 srcpkgs/python3-pyqt6-xml
 create mode 120000 srcpkgs/python3-pyqt6-xml-devel
 create mode 100644 srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
 create mode 100644 srcpkgs/python3-pyqt6/template

diff --git a/srcpkgs/python3-pyqt6-core b/srcpkgs/python3-pyqt6-core
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-core-devel b/srcpkgs/python3-pyqt6-core-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-core-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus b/srcpkgs/python3-pyqt6-dbus
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-dbus-devel b/srcpkgs/python3-pyqt6-dbus-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-dbus-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative b/srcpkgs/python3-pyqt6-declarative
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-declarative-devel b/srcpkgs/python3-pyqt6-declarative-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-declarative-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel b/srcpkgs/python3-pyqt6-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-devel-tools b/srcpkgs/python3-pyqt6-devel-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-devel-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui b/srcpkgs/python3-pyqt6-gui
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-gui-devel b/srcpkgs/python3-pyqt6-gui-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-gui-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network b/srcpkgs/python3-pyqt6-network
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-network-devel b/srcpkgs/python3-pyqt6-network-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-network-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets b/srcpkgs/python3-pyqt6-opengl-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-opengl-widgets-devel b/srcpkgs/python3-pyqt6-opengl-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-opengl-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport b/srcpkgs/python3-pyqt6-printsupport
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-printsupport-devel b/srcpkgs/python3-pyqt6-printsupport-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-printsupport-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d b/srcpkgs/python3-pyqt6-quick3d
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-quick3d-devel b/srcpkgs/python3-pyqt6-quick3d-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-quick3d-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql b/srcpkgs/python3-pyqt6-sql
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-sql-devel b/srcpkgs/python3-pyqt6-sql-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-sql-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg b/srcpkgs/python3-pyqt6-svg
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-svg-devel b/srcpkgs/python3-pyqt6-svg-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-svg-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test b/srcpkgs/python3-pyqt6-test
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-test-devel b/srcpkgs/python3-pyqt6-test-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-test-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools b/srcpkgs/python3-pyqt6-tools
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-tools-devel b/srcpkgs/python3-pyqt6-tools-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-tools-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets b/srcpkgs/python3-pyqt6-widgets
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-widgets-devel b/srcpkgs/python3-pyqt6-widgets-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-widgets-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml b/srcpkgs/python3-pyqt6-xml
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-xml-devel b/srcpkgs/python3-pyqt6-xml-devel
new file mode 120000
index 000000000000..dd603d682349
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-xml-devel
@@ -0,0 +1 @@
+python3-pyqt6
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
new file mode 100644
index 000000000000..eba520ffc6ac
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/patches/pyproject-cross.patch
@@ -0,0 +1,20 @@
+Index: PyQt6-6.1.0/project.py
+===================================================================
+--- PyQt6-6.1.0.orig/project.py
++++ PyQt6-6.1.0/project.py
+@@ -49,6 +49,15 @@ class PyQt(PyQtProject):
+         #   QtNfc, QtPositioning, QtLocation, QtRemoteObjects, QtSensors,
+         #   QtSerialPort, QtTextToSpeech, QtWebChannel, QtWebSockets
+ 
++    def run_command(self, args, *, fatal=True):
++        """ Run a command and display the output if requested. """
++        qemu_machine = os.environ.get("XBPS_TARGET_QEMU_MACHINE")
++        builddir = os.environ.get("XBPS_BUILDDIR")
++        if qemu_machine and args[0].startswith(os.path.join(builddir, "PyQt6")):
++            qemu = "qemu-{}-static".format(qemu_machine)
++            args.insert(0, qemu)
++        super().run_command(args, fatal=fatal)
++
+     def apply_user_defaults(self, tool):
+         """ Set default values where needed. """
+ 
diff --git a/srcpkgs/python3-pyqt6/template b/srcpkgs/python3-pyqt6/template
new file mode 100644
index 000000000000..78dd4ed3b16a
--- /dev/null
+++ b/srcpkgs/python3-pyqt6/template
@@ -0,0 +1,341 @@
+# Template file for 'python3-pyqt6'
+pkgname=python3-pyqt6
+version=6.1.1
+revision=1
+wrksrc=PyQt6-$version
+build_style=sip-build
+build_helper=qemu
+configure_args="--confirm-license --dbus $XBPS_CROSS_BASE/usr/include/dbus-1.0"
+hostmakedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus
+ python3-PyQt-builder pkg-config"
+makedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
+ qt6-quick3d-devel qt6-shadertools-devel qt6-svg-devel python3-dbus-devel"
+depends="python3-pyqt6-sip"
+short_desc="Python 3 bindings for Qt6"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt/"
+distfiles="$PYPI_SITE/P/PyQt6/PyQt6-$version.tar.gz"
+checksum=8775244fa73f94bfe8ae7672b624e2a903a22bc35d7ea42dd830949e2f9e43c7
+lib32disabled=yes
+patch_args=-Np1
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+# Split like qt6, but keep qt6-core in main pkg
+# python3-pyqt6-core_package() {
+# 	lib32disabled=yes
+# 	depends="python3-pyqt6-sip>=${version}_${revision}"
+# 	short_desc="${short_desc} - Core"
+# 	pkg_install() {
+# 		vmove "${py3_sitelib}/*.dist-info"
+# 		vmove "${py3_sitelib}/PyQt6/__init__.py"
+# 		vmove "${py3_sitelib}/PyQt6/QtCore.*"
+# 	}
+# }
+
+python3-pyqt6-core-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 qt6-base-devel python3-devel sip"
+	short_desc="${short_desc} - core development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtCore"
+	}
+}
+
+python3-pyqt6-dbus_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} python3-dbus"
+	short_desc="${short_desc} - DBus"
+	pkg_install() {
+		vmove "${py3_sitelib}/dbus"
+		vmove "${py3_sitelib}/PyQt6/QtDBus.*"
+	}
+}
+
+python3-pyqt6-dbus-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-dbus>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - DBus - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDBus"
+	}
+}
+
+python3-pyqt6-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Tools"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtDesigner.*"
+		vmove "${py3_sitelib}/PyQt6/QtHelp.*"
+		vmove usr/lib/qt6/plugins/designer
+	}
+}
+
+python3-pyqt6-tools-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-tools>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Tools - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtDesigner"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtHelp"
+	}
+}
+
+python3-pyqt6-gui_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - GUI"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtGui.*"
+		vmove "${py3_sitelib}/PyQt6/QtOpenGL.*"
+	}
+}
+
+python3-pyqt6-gui-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-gui>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - GUI - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtGui"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGL"
+	}
+}
+
+python3-pyqt6-network_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtNetwork.*"
+	}
+}
+
+python3-pyqt6-network-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-network>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Network"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtNetwork"
+	}
+}
+
+python3-pyqt6-opengl-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtOpenGLWidgets.*"
+	}
+}
+
+python3-pyqt6-opengl-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-opengl-widgets>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - OpenGL Widgets - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtOpenGLWidgets"
+	}
+}
+
+python3-pyqt6-printsupport_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtPrintSupport.*"
+	}
+}
+
+python3-pyqt6-printsupport-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-printsupport>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Print Support - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtPrintSupport"
+	}
+}
+
+python3-pyqt6-declarative_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQml.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuick.*"
+		vmove "${py3_sitelib}/PyQt6/QtQuickWidgets.*"
+		vmove usr/lib/qt6/plugins/PyQt6
+	}
+}
+
+python3-pyqt6-declarative-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-declarative>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Declarative - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQml"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuickWidgets"
+	}
+}
+
+python3-pyqt6-quick3d_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtQuick3D.*"
+	}
+}
+
+python3-pyqt6-quick3d-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-quick3d>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Quick3D - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtQuick3D"
+	}
+}
+
+python3-pyqt6-sql_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - SQL"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSql.*"
+	}
+}
+
+python3-pyqt6-sql-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-sql>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - SQL - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSql"
+	}
+}
+
+python3-pyqt6-svg_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - svg"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtSvg.*"
+		vmove "${py3_sitelib}/PyQt6/QtSvgWidgets.*"
+	}
+}
+
+python3-pyqt6-svg-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-svg>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - svg - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvg"
+		vmove "${py3_sitelib}/PyQt6/bindings/QtSvgWidgets"
+	}
+}
+
+python3-pyqt6-test_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Test"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtTest.*"
+	}
+}
+
+python3-pyqt6-test-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-test>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Test - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtTest"
+	}
+}
+
+python3-pyqt6-widgets_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtWidgets.*"
+	}
+}
+
+python3-pyqt6-widgets-devel_package() {
+	lib32disabled=yes
+	depends="python3-pyqt6-widgets>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Widgets"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtWidgets"
+	}
+}
+
+python3-pyqt6-xml_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc="${short_desc} - Xml"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/QtXml.*"
+	}
+}
+
+python3-pyqt6-xml-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}
+	 python3-pyqt6-core-devel>=${version}_${revision}"
+	short_desc="${short_desc} - Xml - development files"
+	pkg_install() {
+		vmove "${py3_sitelib}/PyQt6/bindings/QtXml"
+	}
+}
+
+python3-pyqt6-devel-tools_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development tools"
+	pkg_install() {
+		vmove usr/bin
+		vmove "${py3_sitelib}/PyQt6/lupdate"
+		vmove "${py3_sitelib}/PyQt6/uic"
+	}
+}
+
+python3-pyqt6-devel_package() {
+	lib32disabled=yes
+	depends="
+	 python3-pyqt6-core-devel>=${version}_${revision}
+	 python3-pyqt6-dbus-devel>=${version}_${revision}
+	 python3-pyqt6-tools-devel>=${version}_${revision}
+	 python3-pyqt6-gui-devel>=${version}_${revision}
+	 python3-pyqt6-network-devel>=${version}_${revision}
+	 python3-pyqt6-opengl-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-printsupport-devel>=${version}_${revision}
+	 python3-pyqt6-declarative-devel>=${version}_${revision}
+	 python3-pyqt6-quick3d-devel>=${version}_${revision}
+	 python3-pyqt6-sql-devel>=${version}_${revision}
+	 python3-pyqt6-svg-devel>=${version}_${revision}
+	 python3-pyqt6-test-devel>=${version}_${revision}
+	 python3-pyqt6-widgets-devel>=${version}_${revision}
+	 python3-pyqt6-xml-devel>=${version}_${revision}
+	 python3-pyqt6-devel-tools>=${version}_${revision}"
+	build_style=meta
+	short_desc="${short_desc} - development files"
+}

From 625ea36f7232f9a5ece403929ba453a996532690 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 30 May 2021 23:54:51 +0700
Subject: [PATCH 4/6] New package: python3-pyqt6-charts-6.1.1

---
 srcpkgs/python3-pyqt6-charts-devel    |  1 +
 srcpkgs/python3-pyqt6-charts/template | 26 ++++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-charts/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-charts-devel
 create mode 100644 srcpkgs/python3-pyqt6-charts/template
 create mode 100644 srcpkgs/python3-pyqt6-charts/update

diff --git a/srcpkgs/python3-pyqt6-charts-devel b/srcpkgs/python3-pyqt6-charts-devel
new file mode 120000
index 000000000000..21a5afd07fc8
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts-devel
@@ -0,0 +1 @@
+python3-pyqt6-charts
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-charts/template b/srcpkgs/python3-pyqt6-charts/template
new file mode 100644
index 000000000000..17a6c1334a96
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-charts'
+pkgname=python3-pyqt6-charts
+version=6.1.1
+revision=1
+wrksrc=PyQt6_Charts-$version
+build_style=sip-build
+hostmakedepends="qt6-charts-devel python3-pyqt6-widgets-devel
+ python3-PyQt-builder pkg-config"
+makedepends="qt6-charts-devel python3-pyqt6-widgets-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for Charts - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtchart/"
+distfiles="$PYPI_SITE/P/PyQt6-Charts/PyQt6_Charts-${version}.tar.gz"
+checksum=258416a5c8148cc824dede64b37ede08f14e1f90ef7e3c11e411b1b03268fee2
+lib32disabled=yes
+
+python3-pyqt6-charts-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-charts/update b/srcpkgs/python3-pyqt6-charts/update
new file mode 100644
index 000000000000..783ec1b7e7ba
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-charts/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-Charts
+pattern='PyQt6_Charts-\K([\d.]+)(?=.tar.gz)'

From 31adadc9db1fc10766729c92e0716749aa558068 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 14:40:07 +0700
Subject: [PATCH 5/6] New package: python3-pyqt6-3d-6.1.1

---
 srcpkgs/python3-pyqt6-3d-devel    |  1 +
 srcpkgs/python3-pyqt6-3d/template | 26 ++++++++++++++++++++++++++
 srcpkgs/python3-pyqt6-3d/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-3d-devel
 create mode 100644 srcpkgs/python3-pyqt6-3d/template
 create mode 100644 srcpkgs/python3-pyqt6-3d/update

diff --git a/srcpkgs/python3-pyqt6-3d-devel b/srcpkgs/python3-pyqt6-3d-devel
new file mode 120000
index 000000000000..129722a79e7b
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d-devel
@@ -0,0 +1 @@
+python3-pyqt6-3d
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-3d/template b/srcpkgs/python3-pyqt6-3d/template
new file mode 100644
index 000000000000..3986b2a41934
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-3d'
+pkgname=python3-pyqt6-3d
+version=6.1.1
+revision=1
+wrksrc=PyQt6_3D-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-gui-devel qt6-3d-devel
+ python3-PyQt-builder pkg-config"
+makedepends="python3-pyqt6-gui-devel qt6-3d-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for 3D - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqt3d/"
+distfiles="$PYPI_SITE/P/PyQt6-3D/PyQt6_3D-${version}.tar.gz"
+checksum=f0277c04ac62f065cdd3f740a2149d260a5909e51df9fbb63e5ed83cebbe44f4
+lib32disabled=yes
+
+python3-pyqt6-3d-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-3d/update b/srcpkgs/python3-pyqt6-3d/update
new file mode 100644
index 000000000000..6877724b1356
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-3d/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-3D
+pattern='PyQt6_3D-\K([\d.]+)(?=.tar.gz)'

From 18e136d87428b27650d8d68459acc78467dde861 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 31 May 2021 15:20:07 +0700
Subject: [PATCH 6/6] New package: python3-pyqt6-networkauth-6.1.1

---
 srcpkgs/python3-pyqt6-networkauth-devel    |  1 +
 srcpkgs/python3-pyqt6-networkauth/template | 26 ++++++++++++++++++++++
 srcpkgs/python3-pyqt6-networkauth/update   |  2 ++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/python3-pyqt6-networkauth-devel
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/template
 create mode 100644 srcpkgs/python3-pyqt6-networkauth/update

diff --git a/srcpkgs/python3-pyqt6-networkauth-devel b/srcpkgs/python3-pyqt6-networkauth-devel
new file mode 120000
index 000000000000..0d76b4e1cd2d
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth-devel
@@ -0,0 +1 @@
+python3-pyqt6-networkauth
\ No newline at end of file
diff --git a/srcpkgs/python3-pyqt6-networkauth/template b/srcpkgs/python3-pyqt6-networkauth/template
new file mode 100644
index 000000000000..e5142193c69e
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/template
@@ -0,0 +1,26 @@
+# Template file for 'python3-pyqt6-networkauth'
+pkgname=python3-pyqt6-networkauth
+version=6.1.1
+revision=1
+wrksrc=PyQt6_NetworkAuth-$version
+build_style=sip-build
+hostmakedepends="python3-pyqt6-network-devel qt6-networkauth-devel
+ python3-PyQt-builder pkg-config"
+makedepends="python3-pyqt6-network-devel qt6-networkauth-devel"
+depends="python3-pyqt6"
+short_desc="Qt6 bindings for NetworkAuth - Python 3"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-only"
+homepage="https://www.riverbankcomputing.com/software/pyqtnetworkauth/"
+distfiles="$PYPI_SITE/P/PyQt6-NetworkAuth/PyQt6_NetworkAuth-${version}.tar.gz"
+checksum=1590118cef920adcef55022246994d5dfcc64cb7504bdd17eac92ffeb4a21dbe
+lib32disabled=yes
+
+python3-pyqt6-networkauth-devel_package() {
+	lib32disabled=yes
+	depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove ${py3_sitelib}/PyQt6/bindings
+	}
+}
diff --git a/srcpkgs/python3-pyqt6-networkauth/update b/srcpkgs/python3-pyqt6-networkauth/update
new file mode 100644
index 000000000000..2e83411a72ec
--- /dev/null
+++ b/srcpkgs/python3-pyqt6-networkauth/update
@@ -0,0 +1,2 @@
+site=https://pypi.org/simple/PyQt6-NetworkAuth
+pattern='PyQt6_NetworkAuth-\K([\d.]+)(?=.tar.gz)'

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

* Re: [PR PATCH] [Merged]: PyQt6
  2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
                   ` (13 preceding siblings ...)
  2021-06-17 12:09 ` sgn
@ 2021-06-22 14:27 ` sgn
  14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2021-06-22 14:27 UTC (permalink / raw)
  To: ml

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

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

PyQt6
https://github.com/void-linux/void-packages/pull/31092

Description:
<!-- Mark items with [x] where applicable -->

#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!-- 
#### Does it build and run successfully? 
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
  - [ ] aarch64-musl
  - [ ] armv7l
  - [ ] armv6l-musl
-->


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

end of thread, other threads:[~2021-06-22 14:27 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-24 15:57 [PR PATCH] WIP: PyQt6 sgn
2021-05-24 15:58 ` [PR PATCH] [Updated] " sgn
2021-05-28 16:09 ` sgn
2021-05-28 16:19 ` sgn
2021-05-29 16:47 ` sgn
2021-05-30 17:14 ` sgn
2021-05-31 11:54 ` sgn
2021-06-04 15:14 ` sgn
2021-06-06  8:52 ` sgn
2021-06-15 18:17 ` sgn
2021-06-17  0:37 ` PyQt6 sgn
2021-06-17  0:37 ` PyQt6 sgn
2021-06-17 11:39 ` [PR PATCH] [Updated] PyQt6 sgn
2021-06-17 12:07 ` sgn
2021-06-17 12:09 ` sgn
2021-06-22 14:27 ` [PR PATCH] [Merged]: PyQt6 sgn

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).