# Copyright 2022-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_EXT=1 DISTUTILS_USE_PEP517=sip PYPI_NO_NORMALIZE=1 PYTHON_COMPAT=( python3_{10..12} ) inherit distutils-r1 flag-o-matic multiprocessing pypi qmake-utils # 'can' work with older Qt depending on features, but keeping it simple QT_PV=$(ver_cut 1-2):6 DESCRIPTION="Python bindings for the Qt framework" HOMEPAGE="https://www.riverbankcomputing.com/software/pyqt/" LICENSE="GPL-3" SLOT="0" KEYWORDS="amd64" # defaults match what is provided with qtbase by default (except testlib), # reduces the need to set flags but does increase build time a fair amount IUSE=" bluetooth +dbus debug designer examples gles2-only +gui help multimedia +network nfc opengl positioning +printsupport qml quick quick3d serialport sensors spatialaudio speech +sql +ssl svg testlib webchannel websockets +widgets +xml " # see `grep -r "%Import " sip` and `grep qmake_QT project.py` REQUIRED_USE=" designer? ( gui widgets ) help? ( gui widgets ) multimedia? ( gui network ) opengl? ( gui ) printsupport? ( gui widgets ) qml? ( network ) quick3d? ( gui qml ) quick? ( gui qml ) spatialaudio? ( multimedia ) sql? ( widgets ) svg? ( gui ) testlib? ( gui widgets ) webchannel? ( network ) websockets? ( network ) widgets? ( gui ) " DEPEND=" >=dev-qt/qtbase-${QT_PV}[dbus?,gles2-only=,gui?,network?,opengl?,sql?,ssl=,widgets?,xml?] bluetooth? ( >=dev-qt/qtconnectivity-${QT_PV}[bluetooth] ) dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] sys-apps/dbus ) designer? ( >=dev-qt/qttools-${QT_PV}[designer] ) help? ( >=dev-qt/qttools-${QT_PV}[assistant] ) multimedia? ( >=dev-qt/qtmultimedia-${QT_PV} ) nfc? ( >=dev-qt/qtconnectivity-${QT_PV}[nfc] ) opengl? ( gles2-only? ( media-libs/libglvnd ) ) positioning? ( >=dev-qt/qtpositioning-${QT_PV} ) qml? ( >=dev-qt/qtdeclarative-${QT_PV}[widgets?] ) quick3d? ( >=dev-qt/qtquick3d-${QT_PV} ) sensors? ( >=dev-qt/qtsensors-${QT_PV} ) serialport? ( >=dev-qt/qtserialport-${QT_PV} ) speech? ( >=dev-qt/qtspeech-${QT_PV} ) svg? ( >=dev-qt/qtsvg-${QT_PV} ) webchannel? ( >=dev-qt/qtwebchannel-${QT_PV} ) websockets? ( >=dev-qt/qtwebsockets-${QT_PV} ) " RDEPEND=" ${DEPEND} >=dev-python/PyQt6-sip-13.4[${PYTHON_USEDEP}] " DEPEND+=" bluetooth? (