# Template file for 'python3-pyqt6'
pkgname=python3-pyqt6
version=6.6.1
revision=2
build_style=sip-build
build_helper=qemu
configure_args="--confirm-license --dbus $XBPS_CROSS_BASE/usr/include/dbus-1.0"
hostmakedepends="qt6-base python3-dbus python3-PyQt-builder pkg-config"
makedepends="qt6-base-devel qt6-declarative-devel qt6-tools-devel
 qt6-webchannel-devel qt6-multimedia-devel qt6-location-devel
 qt6-remoteobjects-devel qt6-sensors-devel qt6-serialport-devel
 qt6-connectivity-devel qt6-websockets-devel qt6-speech-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=9f158aa29d205142c56f0f35d07784b8df0be28378d20a97bcda8bd64ffd0379
lib32disabled=yes

subpackages="python3-pyqt6-core-devel
 python3-pyqt6-devel python3-pyqt6-devel-tools
 python3-pyqt6-connectivity python3-pyqt6-connectivity-devel
 python3-pyqt6-dbus python3-pyqt6-dbus-devel
 python3-pyqt6-declarative python3-pyqt6-declarative-devel
 python3-pyqt6-gui python3-pyqt6-gui-devel
 python3-pyqt6-multimedia python3-pyqt6-multimedia-devel
 python3-pyqt6-network python3-pyqt6-network-devel
 python3-pyqt6-opengl-widgets python3-pyqt6-opengl-widgets-devel
 python3-pyqt6-position python3-pyqt6-position-devel
 python3-pyqt6-printsupport python3-pyqt6-printsupport-devel
 python3-pyqt6-quick3d python3-pyqt6-quick3d-devel
 python3-pyqt6-remoteobjects python3-pyqt6-remoteobjects-devel
 python3-pyqt6-sensors python3-pyqt6-sensors-devel
 python3-pyqt6-serialport python3-pyqt6-serialport-devel
 python3-pyqt6-speech python3-pyqt6-speech-devel
 python3-pyqt6-sql python3-pyqt6-sql-devel
 python3-pyqt6-svg python3-pyqt6-svg-devel
 python3-pyqt6-test python3-pyqt6-test-devel
 python3-pyqt6-tools python3-pyqt6-tools-devel
 python3-pyqt6-websockets python3-pyqt6-websockets-devel
 python3-pyqt6-webchannel python3-pyqt6-webchannel-devel
 python3-pyqt6-widgets python3-pyqt6-widgets-devel
 python3-pyqt6-xml python3-pyqt6-xml-devel
 "

case "$XBPS_TARGET_MACHINE" in
	riscv64*) ;;
	ppc*) ;;
	armv5* | armv6*) ;;
	*)
		makedepends+=" qt6-pdf-devel"
		subpackages+=" python3-pyqt6-pdf python3-pyqt6-pdf-devel"
		;;
esac
# Split like qt6, but keep qt6-core in main pkg

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} qt6-tools-devel
	 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}
	 qt6-declarative-devel 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} qt6-quick3d-devel
	 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} qt6-svg-devel
	 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
	build_style=meta
	depends="${subpackages/python3-pyqt6-devel /}"
	short_desc="${short_desc} - development files"
}

python3-pyqt6-websockets_package() {
	lib32disabled=yes
	short_desc+=" - WebSockets"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtWebSockets.*"
	}
}

python3-pyqt6-websockets-devel_package() {
	lib32disabled=yes
	short_desc+=" - WebSockets - development files"
	depends="python3-pyqt6-websockets>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-websockets-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtWebSockets"
	}
}

python3-pyqt6-webchannel_package() {
	lib32disabled=yes
	short_desc+=" - WebChannel"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtWebChannel.*"
	}
}

python3-pyqt6-webchannel-devel_package() {
	lib32disabled=yes
	short_desc+=" - WebChannel - development files"
	depends="python3-pyqt6-webchannel>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-webchannel-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtWebChannel"
	}
}

python3-pyqt6-multimedia_package() {
	lib32disabled=yes
	short_desc+=" - Multimedia"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtMultimedia*"
		vmove "${py3_sitelib}/PyQt6/QtSpatialAudio*"
	}
}

python3-pyqt6-multimedia-devel_package() {
	lib32disabled=yes
	short_desc+=" - Multimedia - development files"
	depends="python3-pyqt6-multimedia>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-multimedia-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtMultimedia*"
		vmove "${py3_sitelib}/PyQt6/bindings/QtSpatialAudio*"
	}
}

python3-pyqt6-position_package() {
	lib32disabled=yes
	short_desc+=" - Position"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtPositioning*"
	}
}

python3-pyqt6-position-devel_package() {
	lib32disabled=yes
	short_desc+=" - Position - development files"
	depends="python3-pyqt6-position>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-location-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtPositioning"
	}
}

python3-pyqt6-remoteobjects_package() {
	lib32disabled=yes
	short_desc+=" - RemoteObjects"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtRemoteObjects*"
	}
}

python3-pyqt6-remoteobjects-devel_package() {
	lib32disabled=yes
	short_desc+=" - RemoteObjects - development files"
	depends="python3-pyqt6-remoteobjects>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-remoteobjects-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtRemoteObjects"
	}
}

python3-pyqt6-sensors_package() {
	lib32disabled=yes
	short_desc+=" - Sensors"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtSensors*"
	}
}

python3-pyqt6-sensors-devel_package() {
	lib32disabled=yes
	short_desc+=" - Sensors - development files"
	depends="python3-pyqt6-sensors>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-sensors-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtSensors"
	}
}

python3-pyqt6-serialport_package() {
	lib32disabled=yes
	short_desc+=" - SerialPort"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtSerialPort*"
	}
}

python3-pyqt6-serialport-devel_package() {
	lib32disabled=yes
	short_desc+=" - SerialPort - development files"
	depends="python3-pyqt6-serialport>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-serialport-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtSerialPort"
	}
}

python3-pyqt6-connectivity_package() {
	lib32disabled=yes
	short_desc+=" - Connectivity"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtBluetooth*"
		vmove "${py3_sitelib}/PyQt6/QtNfc*"
	}
}

python3-pyqt6-connectivity-devel_package() {
	lib32disabled=yes
	short_desc+=" - Connectivity - development files"
	depends="python3-pyqt6-connectivity>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-connectivity-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtBluetooth"
		vmove "${py3_sitelib}/PyQt6/bindings/QtNfc"
	}
}

python3-pyqt6-pdf_package() {
	lib32disabled=yes
	short_desc+=" - Pdf"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtPdf.*"
		vmove "${py3_sitelib}/PyQt6/QtPdfWidgets.*"
	}
}

python3-pyqt6-pdf-devel_package() {
	lib32disabled=yes
	short_desc+=" - Pdf - development files"
	depends="python3-pyqt6-pdf>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-pdf-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtPdf"
		vmove "${py3_sitelib}/PyQt6/bindings/QtPdfWidgets"
	}
}

python3-pyqt6-speech_package() {
	lib32disabled=yes
	short_desc+=" - Speech"
	depends="${sourcepkg}>=${version}_${revision}"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/QtTextToSpeech.*"
	}
}

python3-pyqt6-speech-devel_package() {
	lib32disabled=yes
	short_desc+=" - Speech - development files"
	depends="python3-pyqt6-speech>=${version}_${revision}
	 python3-pyqt6-core-devel>=${version}_${revision}
	 qt6-speech-devel"
	pkg_install() {
		vmove "${py3_sitelib}/PyQt6/bindings/QtTextToSpeech"
	}
}
