summaryrefslogtreecommitdiff
path: root/dev-python/PyQt5
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-python/PyQt5
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-python/PyQt5')
-rw-r--r--dev-python/PyQt5/Manifest7
-rw-r--r--dev-python/PyQt5/PyQt5-5.10.1-r1.ebuild200
-rw-r--r--dev-python/PyQt5/PyQt5-5.9.2.ebuild198
-rw-r--r--dev-python/PyQt5/files/PyQt5-5.10.1-fix-testlib.patch17
-rw-r--r--dev-python/PyQt5/files/PyQt5-5.10.1-timeline.patch13
-rw-r--r--dev-python/PyQt5/metadata.xml45
6 files changed, 480 insertions, 0 deletions
diff --git a/dev-python/PyQt5/Manifest b/dev-python/PyQt5/Manifest
new file mode 100644
index 000000000000..8e6e337aba5f
--- /dev/null
+++ b/dev-python/PyQt5/Manifest
@@ -0,0 +1,7 @@
+AUX PyQt5-5.10.1-fix-testlib.patch 1293 BLAKE2B 8ea2a9de5913578c951b4acc05508662fd63590e097fbb8b681ac02cb3d96c9670ab1a1bbe873c1c1320dd78cc4c738f9f714c8ffd5be732bc15f084ad7ca721 SHA512 bfe80fa6018174a6981777031ffa97bc834e17848580d02c994c61507aa4ea16091e582b6bbc3754d469de1901fa8cf2e3e12240cced44fd0dbe928bdd360925
+AUX PyQt5-5.10.1-timeline.patch 1063 BLAKE2B bcf04d91798b0dc2136ff9c85802abd14d35fb6daa952784ebce23a7b3c930421260f0f1dd80e47f2bbfc49ca9e26159f05c23ff136af4b68e69468d117dcc52 SHA512 8e09feca5f42ff61c479d098f7ab0299cba51a9234eb03146568166e50d6b2fc7d424bc4297905bd0d733508c891ac5b2287c05c6039f9f60bcec12978ac5821
+DIST PyQt5_gpl-5.10.1.tar.gz 3110469 BLAKE2B 75e24bd8c0739d47eff6212435aa783eaa302633beb0494f099edc3f8f99600cd03dc3cba5152ed7ae703cfe445ecae06ec5d2281dd7c0640c71db041659bd6f SHA512 04cd0292f7a088f9c0d088d7c73ec96cfc40253f771dfdf194eb92be7635e6fcaf04863fa24215e9c34a096658549bb2feeb8d8fdca1e39ed87f0256ef0f790b
+DIST PyQt5_gpl-5.9.2.tar.gz 3102848 BLAKE2B b87f25693aa2b20211119f89cf13665bf88f14de8827d43ba757344ab9bdef0b0c197abb8386308c72925da263cabb6efd3f104db8a350c51fca3fba8c7c06b6 SHA512 5af2e65addaed7dd02d8dbf7a7c63767e565fc8edeb7b51e5991a00cda29f75b666529097646e821aaff556f350a929fd451f548bba76e97355b7fe10bd913bc
+EBUILD PyQt5-5.10.1-r1.ebuild 5725 BLAKE2B 0999071426ac7f8437ebb20f088ba0ad4e1bf4a338316435866a4f26c47e65d4a623f6f00e60b2e2950f0cd19b6e36599cc8d5cb77379c41e77dfb4287387b65 SHA512 f88f7276a9e9fc5258763c8314f0230e7cfbb9e742902923e524d35277669521cfa1e89689a22ac9304e6eef80e62b0f9e7a6a397f6b2269dedf6017c4094b9e
+EBUILD PyQt5-5.9.2.ebuild 5687 BLAKE2B 42b0f29d9e9652571b29acfdc3ff90fe5bf1f4ff8776855df37faebb92c11c5e6c049fa10d4d8b6dcb323da379dba0a8bbf231f6751a3be715b7384847d2730c SHA512 d71ebc7f8f90b4e80566a31b8eca0a291f51aeef5cc66f8c860581e69ca70131339606f917e9a1f0e99beb5132796721bc9033667c977ca4a92023be5c5bca8c
+MISC metadata.xml 2458 BLAKE2B bbebf12bc59da0f7b6737598e9c683f6ec45872a7207c23fd5b47c73c68a9eeaaf9ac0d4fc18c05d3e79b22e333bbb43d2bb7bd70aaba80288d0fadf1020d8c1 SHA512 8554c97aeb873a2a7e1d50b8aacc3638a87fdc0fdc367d61123b63bd506b1376873d88a967773e8f1050f0e8c35ae180d61c7eb2c213c345e5b17a3c0e4c7df8
diff --git a/dev-python/PyQt5/PyQt5-5.10.1-r1.ebuild b/dev-python/PyQt5/PyQt5-5.10.1-r1.ebuild
new file mode 100644
index 000000000000..3e595d177050
--- /dev/null
+++ b/dev-python/PyQt5/PyQt5-5.10.1-r1.ebuild
@@ -0,0 +1,200 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+inherit multibuild python-r1 qmake-utils
+
+DESCRIPTION="Python bindings for the Qt framework"
+HOMEPAGE="https://www.riverbankcomputing.com/software/pyqt/intro"
+
+MY_P=${PN}_gpl-${PV/_pre/.dev}
+if [[ ${PV} == *_pre* ]]; then
+ SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${MY_P}.tar.xz"
+else
+ SRC_URI="mirror://sourceforge/pyqt/${MY_P}.tar.gz"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+# TODO: QtNetworkAuth, QtNfc
+IUSE="bluetooth dbus debug declarative designer examples gles2 gui help location
+ multimedia network opengl positioning printsupport sensors serialport sql svg
+ testlib webchannel webengine webkit websockets widgets x11extras xmlpatterns"
+
+# The requirements below were extracted from configure.py
+# and from the output of 'grep -r "%Import " "${S}"/sip'
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ bluetooth? ( gui )
+ declarative? ( gui network )
+ designer? ( widgets )
+ help? ( gui widgets )
+ location? ( positioning )
+ multimedia? ( gui network )
+ opengl? ( gui widgets )
+ positioning? ( gui )
+ printsupport? ( gui widgets )
+ sensors? ( gui )
+ serialport? ( gui )
+ sql? ( widgets )
+ svg? ( gui widgets )
+ testlib? ( widgets )
+ webchannel? ( network )
+ webengine? ( network widgets? ( printsupport webchannel ) )
+ webkit? ( gui network printsupport widgets )
+ websockets? ( network )
+ widgets? ( gui )
+ xmlpatterns? ( network )
+"
+
+# Minimal supported version of Qt.
+QT_PV="5.9.4:5"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-python/sip-4.19.6:=[${PYTHON_USEDEP}]
+ >=dev-qt/qtcore-${QT_PV}
+ >=dev-qt/qtxml-${QT_PV}
+ bluetooth? ( >=dev-qt/qtbluetooth-${QT_PV} )
+ dbus? (
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ >=dev-qt/qtdbus-${QT_PV}
+ )
+ declarative? ( >=dev-qt/qtdeclarative-${QT_PV}[widgets?] )
+ designer? ( >=dev-qt/designer-${QT_PV} )
+ gui? ( >=dev-qt/qtgui-${QT_PV}[gles2=] )
+ help? ( >=dev-qt/qthelp-${QT_PV} )
+ location? ( >=dev-qt/qtlocation-${QT_PV} )
+ multimedia? ( >=dev-qt/qtmultimedia-${QT_PV}[widgets?] )
+ network? ( >=dev-qt/qtnetwork-${QT_PV} )
+ opengl? ( >=dev-qt/qtopengl-${QT_PV} )
+ positioning? ( >=dev-qt/qtpositioning-${QT_PV} )
+ printsupport? ( >=dev-qt/qtprintsupport-${QT_PV} )
+ sensors? ( >=dev-qt/qtsensors-${QT_PV} )
+ serialport? ( >=dev-qt/qtserialport-${QT_PV} )
+ sql? ( >=dev-qt/qtsql-${QT_PV} )
+ svg? ( >=dev-qt/qtsvg-${QT_PV} )
+ testlib? ( >=dev-qt/qttest-${QT_PV} )
+ webchannel? ( >=dev-qt/qtwebchannel-${QT_PV} )
+ webengine? ( >=dev-qt/qtwebengine-${QT_PV}[widgets?] )
+ webkit? ( >=dev-qt/qtwebkit-5.9:5[printsupport] )
+ websockets? ( >=dev-qt/qtwebsockets-${QT_PV} )
+ widgets? ( >=dev-qt/qtwidgets-${QT_PV} )
+ x11extras? ( >=dev-qt/qtx11extras-${QT_PV} )
+ xmlpatterns? ( >=dev-qt/qtxmlpatterns-${QT_PV} )
+"
+DEPEND="${RDEPEND}
+ dbus? ( virtual/pkgconfig )
+"
+
+S=${WORKDIR}/${MY_P}
+
+DOCS=( "${S}"/{ChangeLog,NEWS} )
+
+PATCHES=(
+ "${FILESDIR}/${P}-timeline.patch"
+ "${FILESDIR}/${P}-fix-testlib.patch"
+)
+
+pyqt_use_enable() {
+ use "$1" || return
+
+ if [[ $# -eq 1 ]]; then
+ echo --enable=Qt$(tr 'a-z' 'A-Z' <<< ${1:0:1})${1:1}
+ else
+ shift
+ echo ${@/#/--enable=}
+ fi
+}
+
+src_configure() {
+ configuration() {
+ local myconf=(
+ "${PYTHON}"
+ "${S}"/configure.py
+ $(usex debug '--debug --qml-debug --trace' '')
+ --verbose
+ --confirm-license
+ --qmake="$(qt5_get_bindir)"/qmake
+ --bindir="${EPREFIX}/usr/bin"
+ --destdir="$(python_get_sitedir)"
+ --sip-incdir="$(python_get_includedir)"
+ --qsci-api
+ --enable=QtCore
+ --enable=QtXml
+ $(pyqt_use_enable bluetooth)
+ $(pyqt_use_enable dbus QtDBus)
+ $(usex dbus '' --no-python-dbus)
+ $(pyqt_use_enable declarative QtQml QtQuick $(usex widgets QtQuickWidgets ''))
+ $(usex declarative '' --no-qml-plugin)
+ $(pyqt_use_enable designer)
+ $(usex designer '' --no-designer-plugin)
+ $(pyqt_use_enable gui)
+ $(pyqt_use_enable gui $(use gles2 && echo _QOpenGLFunctions_ES2 || echo _QOpenGLFunctions_{2_0,2_1,4_1_Core}))
+ $(pyqt_use_enable help)
+ $(pyqt_use_enable location)
+ $(pyqt_use_enable multimedia QtMultimedia $(usex widgets QtMultimediaWidgets ''))
+ $(pyqt_use_enable network)
+ $(pyqt_use_enable opengl QtOpenGL)
+ $(pyqt_use_enable positioning)
+ $(pyqt_use_enable printsupport QtPrintSupport)
+ $(pyqt_use_enable sensors)
+ $(pyqt_use_enable serialport QtSerialPort)
+ $(pyqt_use_enable sql)
+ $(pyqt_use_enable svg)
+ $(pyqt_use_enable testlib QtTest)
+ $(pyqt_use_enable webchannel QtWebChannel)
+ $(pyqt_use_enable webengine QtWebEngine QtWebEngineCore $(usex widgets QtWebEngineWidgets ''))
+ $(pyqt_use_enable webkit QtWebKit QtWebKitWidgets)
+ $(pyqt_use_enable websockets QtWebSockets)
+ $(pyqt_use_enable widgets)
+ $(pyqt_use_enable x11extras QtX11Extras)
+ $(pyqt_use_enable xmlpatterns QtXmlPatterns)
+ )
+ echo "${myconf[@]}"
+ "${myconf[@]}" || die
+
+ eqmake5 -recursive ${PN}.pro
+ }
+ python_foreach_impl run_in_build_dir configuration
+}
+
+src_compile() {
+ python_foreach_impl run_in_build_dir default
+}
+
+src_install() {
+ installation() {
+ local tmp_root=${D%/}/tmp
+ emake INSTALL_ROOT="${tmp_root}" install
+
+ local bin_dir=${tmp_root}${EPREFIX}/usr/bin
+ local exe
+ for exe in pylupdate5 pyrcc5 pyuic5; do
+ python_doexe "${bin_dir}/${exe}"
+ rm "${bin_dir}/${exe}" || die
+ done
+
+ local uic_dir=${tmp_root}$(python_get_sitedir)/${PN}/uic
+ if python_is_python3; then
+ rm -r "${uic_dir}"/port_v2 || die
+ else
+ rm -r "${uic_dir}"/port_v3 || die
+ fi
+
+ multibuild_merge_root "${tmp_root}" "${D}"
+ python_optimize
+ }
+ python_foreach_impl run_in_build_dir installation
+
+ einstalldocs
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r examples
+ fi
+}
diff --git a/dev-python/PyQt5/PyQt5-5.9.2.ebuild b/dev-python/PyQt5/PyQt5-5.9.2.ebuild
new file mode 100644
index 000000000000..1b83fe1a7cd3
--- /dev/null
+++ b/dev-python/PyQt5/PyQt5-5.9.2.ebuild
@@ -0,0 +1,198 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit multibuild python-r1 qmake-utils
+
+DESCRIPTION="Python bindings for the Qt framework"
+HOMEPAGE="https://www.riverbankcomputing.com/software/pyqt/intro"
+
+MY_P=${PN}_gpl-${PV/_pre/.dev}
+if [[ ${PV} == *_pre* ]]; then
+ SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${MY_P}.tar.xz"
+else
+ SRC_URI="mirror://sourceforge/pyqt/${MY_P}.tar.gz"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
+
+# TODO: QtNfc
+IUSE="bluetooth dbus debug declarative designer examples gles2 gui help location
+ multimedia network opengl positioning printsupport sensors serialport sql svg
+ testlib webchannel webengine webkit websockets widgets x11extras xmlpatterns"
+
+# The requirements below were extracted from configure.py
+# and from the output of 'grep -r "%Import " "${S}"/sip'
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ bluetooth? ( gui )
+ declarative? ( gui network )
+ designer? ( widgets )
+ help? ( gui widgets )
+ location? ( positioning )
+ multimedia? ( gui network )
+ opengl? ( gui widgets )
+ positioning? ( gui )
+ printsupport? ( gui widgets )
+ sensors? ( gui )
+ serialport? ( gui )
+ sql? ( widgets )
+ svg? ( gui widgets )
+ testlib? ( widgets )
+ webchannel? ( network )
+ webengine? ( network widgets? ( printsupport webchannel ) )
+ webkit? ( gui network printsupport widgets )
+ websockets? ( network )
+ widgets? ( gui )
+ xmlpatterns? ( network )
+"
+
+# Minimal supported version of Qt.
+QT_PV="5.9.3:5"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-python/sip-4.19.6:=[${PYTHON_USEDEP}]
+ >=dev-qt/qtcore-${QT_PV}
+ >=dev-qt/qtxml-${QT_PV}
+ bluetooth? ( >=dev-qt/qtbluetooth-${QT_PV} )
+ dbus? (
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ >=dev-qt/qtdbus-${QT_PV}
+ )
+ declarative? ( >=dev-qt/qtdeclarative-${QT_PV}[widgets?] )
+ designer? ( >=dev-qt/designer-${QT_PV} )
+ gui? ( >=dev-qt/qtgui-${QT_PV}[gles2=] )
+ help? ( >=dev-qt/qthelp-${QT_PV} )
+ location? ( >=dev-qt/qtlocation-${QT_PV} )
+ multimedia? ( >=dev-qt/qtmultimedia-${QT_PV}[widgets?] )
+ network? ( >=dev-qt/qtnetwork-${QT_PV} )
+ opengl? ( >=dev-qt/qtopengl-${QT_PV} )
+ positioning? ( >=dev-qt/qtpositioning-${QT_PV} )
+ printsupport? ( >=dev-qt/qtprintsupport-${QT_PV} )
+ sensors? ( >=dev-qt/qtsensors-${QT_PV} )
+ serialport? ( >=dev-qt/qtserialport-${QT_PV} )
+ sql? ( >=dev-qt/qtsql-${QT_PV} )
+ svg? ( >=dev-qt/qtsvg-${QT_PV} )
+ testlib? ( >=dev-qt/qttest-${QT_PV} )
+ webchannel? ( >=dev-qt/qtwebchannel-${QT_PV} )
+ webengine? ( >=dev-qt/qtwebengine-${QT_PV}[widgets?] )
+ webkit? ( >=dev-qt/qtwebkit-5.9:5[printsupport] )
+ websockets? ( >=dev-qt/qtwebsockets-${QT_PV} )
+ widgets? ( >=dev-qt/qtwidgets-${QT_PV} )
+ x11extras? ( >=dev-qt/qtx11extras-${QT_PV} )
+ xmlpatterns? ( >=dev-qt/qtxmlpatterns-${QT_PV} )
+"
+DEPEND="${RDEPEND}
+ dbus? ( virtual/pkgconfig )
+"
+
+S=${WORKDIR}/${MY_P}
+
+DOCS=( "${S}"/{ChangeLog,NEWS} )
+
+pyqt_use_enable() {
+ use "$1" || return
+
+ if [[ $# -eq 1 ]]; then
+ echo --enable=Qt$(tr 'a-z' 'A-Z' <<< ${1:0:1})${1:1}
+ else
+ shift
+ echo ${@/#/--enable=}
+ fi
+}
+
+src_configure() {
+ configuration() {
+ # Fix out-of-source build
+ ln -s "${S}"/config-tests || die
+
+ local myconf=(
+ "${PYTHON}"
+ "${S}"/configure.py
+ $(usex debug '--debug --qml-debug --trace' '')
+ --verbose
+ --confirm-license
+ --qmake="$(qt5_get_bindir)"/qmake
+ --bindir="${EPREFIX}/usr/bin"
+ --destdir="$(python_get_sitedir)"
+ --sip-incdir="$(python_get_includedir)"
+ --qsci-api
+ --enable=QtCore
+ --enable=QtXml
+ $(pyqt_use_enable bluetooth)
+ $(pyqt_use_enable dbus QtDBus)
+ $(usex dbus '' --no-python-dbus)
+ $(pyqt_use_enable declarative QtQml QtQuick $(usex widgets QtQuickWidgets ''))
+ $(usex declarative '' --no-qml-plugin)
+ $(pyqt_use_enable designer)
+ $(usex designer '' --no-designer-plugin)
+ $(pyqt_use_enable gui)
+ $(pyqt_use_enable gui $(use gles2 && echo _QOpenGLFunctions_ES2 || echo _QOpenGLFunctions_{2_0,2_1,4_1_Core}))
+ $(pyqt_use_enable help)
+ $(pyqt_use_enable location)
+ $(pyqt_use_enable multimedia QtMultimedia $(usex widgets QtMultimediaWidgets ''))
+ $(pyqt_use_enable network)
+ $(pyqt_use_enable opengl QtOpenGL)
+ $(pyqt_use_enable positioning)
+ $(pyqt_use_enable printsupport QtPrintSupport)
+ $(pyqt_use_enable sensors)
+ $(pyqt_use_enable serialport QtSerialPort)
+ $(pyqt_use_enable sql)
+ $(pyqt_use_enable svg)
+ $(pyqt_use_enable testlib QtTest)
+ $(pyqt_use_enable webchannel QtWebChannel)
+ $(pyqt_use_enable webengine QtWebEngine QtWebEngineCore $(usex widgets QtWebEngineWidgets ''))
+ $(pyqt_use_enable webkit QtWebKit QtWebKitWidgets)
+ $(pyqt_use_enable websockets QtWebSockets)
+ $(pyqt_use_enable widgets)
+ $(pyqt_use_enable x11extras QtX11Extras)
+ $(pyqt_use_enable xmlpatterns QtXmlPatterns)
+ )
+ echo "${myconf[@]}"
+ "${myconf[@]}" || die
+
+ eqmake5 -recursive ${PN}.pro
+ }
+ python_foreach_impl run_in_build_dir configuration
+}
+
+src_compile() {
+ python_foreach_impl run_in_build_dir default
+}
+
+src_install() {
+ installation() {
+ local tmp_root=${D%/}/tmp
+ emake INSTALL_ROOT="${tmp_root}" install
+
+ local bin_dir=${tmp_root}${EPREFIX}/usr/bin
+ local exe
+ for exe in pylupdate5 pyrcc5 pyuic5; do
+ python_doexe "${bin_dir}/${exe}"
+ rm "${bin_dir}/${exe}" || die
+ done
+
+ local uic_dir=${tmp_root}$(python_get_sitedir)/${PN}/uic
+ if python_is_python3; then
+ rm -r "${uic_dir}"/port_v2 || die
+ else
+ rm -r "${uic_dir}"/port_v3 || die
+ fi
+
+ multibuild_merge_root "${tmp_root}" "${D}"
+ python_optimize
+ }
+ python_foreach_impl run_in_build_dir installation
+
+ einstalldocs
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r examples
+ fi
+}
diff --git a/dev-python/PyQt5/files/PyQt5-5.10.1-fix-testlib.patch b/dev-python/PyQt5/files/PyQt5-5.10.1-fix-testlib.patch
new file mode 100644
index 000000000000..38a20bc36d12
--- /dev/null
+++ b/dev-python/PyQt5/files/PyQt5-5.10.1-fix-testlib.patch
@@ -0,0 +1,17 @@
+From: Fabian Vogt <fabian@ritter-vogt.de>
+Subject: QTest::waitForEvents() is internal only
+
+Must not be used, got removed with Qt 5.11.
+
+Index: PyQt5_gpl-5.10.1/sip/QtTest/qtestmouse.sip
+===================================================================
+--- a/sip/QtTest/qtestmouse.sip
++++ b/sip/QtTest/qtestmouse.sip
+@@ -41,7 +41,6 @@ namespace QTest
+ void mousePress(QWidget *widget, Qt::MouseButton button, Qt::KeyboardModifiers modifier = 0, QPoint pos = QPoint(), int delay = -1);
+ void mouseRelease(QWidget *widget, Qt::MouseButton button, Qt::KeyboardModifiers modifier = 0, QPoint pos = QPoint(), int delay = -1);
+ void mouseEvent(QTest::MouseAction action, QWidget *widget, Qt::MouseButton button, Qt::KeyboardModifiers modifier, QPoint pos, int delay = -1);
+- void waitForEvents() /ReleaseGIL/;
+ void mouseEvent(QTest::MouseAction action, QWindow *window, Qt::MouseButton button, Qt::KeyboardModifiers modifier, QPoint pos, int delay = -1);
+ void mousePress(QWindow *window, Qt::MouseButton button, Qt::KeyboardModifiers modifier = Qt::KeyboardModifiers(), QPoint pos = QPoint(), int delay = -1);
+ void mouseRelease(QWindow *window, Qt::MouseButton button, Qt::KeyboardModifiers modifier = Qt::KeyboardModifiers(), QPoint pos = QPoint(), int delay = -1);
diff --git a/dev-python/PyQt5/files/PyQt5-5.10.1-timeline.patch b/dev-python/PyQt5/files/PyQt5-5.10.1-timeline.patch
new file mode 100644
index 000000000000..857492266e01
--- /dev/null
+++ b/dev-python/PyQt5/files/PyQt5-5.10.1-timeline.patch
@@ -0,0 +1,13 @@
+diff --git a/sip/QtCore/QtCoremod.sip b/sip/QtCore/QtCoremod.sip
+index e40d12c..4419f2b 100644
+--- a/sip/QtCore/QtCoremod.sip
++++ b/sip/QtCore/QtCoremod.sip
+@@ -22,7 +22,7 @@
+
+ %Module(name=PyQt5.QtCore, call_super_init=True, default_VirtualErrorHandler=PyQt5, keyword_arguments="Optional", use_limited_api=True)
+
+-%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_6_2 Qt_5_6_3 Qt_5_6_4 Qt_5_6_5 Qt_5_6_6 Qt_5_6_7 Qt_5_6_8 Qt_5_6_9 Qt_5_7_0 Qt_5_7_1 Qt_5_8_0 Qt_5_8_1 Qt_5_9_0 Qt_5_9_1 Qt_5_9_2 Qt_5_9_3 Qt_5_9_99 Qt_5_10_0 Qt_5_10_1}
++%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_6_2 Qt_5_6_3 Qt_5_6_4 Qt_5_6_5 Qt_5_6_6 Qt_5_6_7 Qt_5_6_8 Qt_5_6_9 Qt_5_7_0 Qt_5_7_1 Qt_5_8_0 Qt_5_8_1 Qt_5_9_0 Qt_5_9_1 Qt_5_9_2 Qt_5_9_3 Qt_5_9_4 Qt_5_9_5 Qt_5_9_6 Qt_5_9_99 Qt_5_10_0 Qt_5_10_1}
+
+ %Platforms {WS_X11 WS_WIN WS_MACX}
+
diff --git a/dev-python/PyQt5/metadata.xml b/dev-python/PyQt5/metadata.xml
new file mode 100644
index 000000000000..6540bb21471f
--- /dev/null
+++ b/dev-python/PyQt5/metadata.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="bluetooth">Build bindings for the QtBluetooth module</flag>
+ <flag name="dbus">Build bindings for the QtDBus module</flag>
+ <flag name="declarative">Build bindings for the QtQml/QtQuick modules and enable the qmlscene plugin</flag>
+ <flag name="designer">Build bindings for the QtDesigner module and enable the designer plugin</flag>
+ <flag name="gles2">Use GLES 2.0 or later instead of full OpenGL</flag>
+ <flag name="gui">Build bindings for the QtGui module</flag>
+ <flag name="help">Build bindings for the QtHelp module</flag>
+ <flag name="location">Build bindings for the QtLocation module</flag>
+ <flag name="multimedia">Build bindings for the QtMultimedia module</flag>
+ <flag name="network">Build bindings for the QtNetwork module</flag>
+ <flag name="opengl">Build bindings for the QtOpenGL module</flag>
+ <flag name="positioning">Build bindings for the QtPositioning module</flag>
+ <flag name="printsupport">Build bindings for the QtPrintSupport module</flag>
+ <flag name="sensors">Build bindings for the QtSensors module</flag>
+ <flag name="serialport">Build bindings for the QtSerialPort module</flag>
+ <flag name="sql">Build bindings for the QtSql module</flag>
+ <flag name="svg">Build bindings for the QtSvg module</flag>
+ <flag name="testlib">Build bindings for the QtTest module</flag>
+ <flag name="webchannel">Build bindings for the QtWebChannel module</flag>
+ <flag name="webengine">Build bindings for the QtWebEngine module</flag>
+ <flag name="webkit">Build bindings for the QtWebKit module</flag>
+ <flag name="websockets">Build bindings for the QtWebSockets module</flag>
+ <flag name="widgets">Build bindings for the QtWidgets module</flag>
+ <flag name="x11extras">Build bindings for the QtX11Extras module</flag>
+ <flag name="xmlpatterns">Build bindings for the QtXmlPatterns module</flag>
+ </use>
+ <upstream>
+ <maintainer status="active">
+ <email>phil@riverbankcomputing.com</email>
+ <name>Phil Thompson</name>
+ </maintainer>
+ <bugs-to>mailto:pyqt@riverbankcomputing.com</bugs-to>
+ <doc>http://pyqt.sourceforge.net/Docs/PyQt5/</doc>
+ <remote-id type="pypi">PyQt5</remote-id>
+ <remote-id type="sourceforge">pyqt</remote-id>
+ </upstream>
+</pkgmetadata>