From 6605c48f3a900da26425ef31d83eb1c95d551531 Mon Sep 17 00:00:00 2001 From: Philip Balister Date: Mon, 15 May 2017 09:33:14 -0400 Subject: python-pyqt5: Add recipe. * Build tested on raspberrypi3 * I promise to chase the patch upstream. * v2 auto detects QT_VERSION Signed-off-by: Philip Balister Signed-off-by: Martin Jansa --- recipes-python/pyqt5/files/fix-sm.patch | 17 ++++++++ recipes-python/pyqt5/python-pyqt5_5.8.2.bb | 69 ++++++++++++++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 recipes-python/pyqt5/files/fix-sm.patch create mode 100644 recipes-python/pyqt5/python-pyqt5_5.8.2.bb (limited to 'recipes-python') diff --git a/recipes-python/pyqt5/files/fix-sm.patch b/recipes-python/pyqt5/files/fix-sm.patch new file mode 100644 index 00000000..f2936a23 --- /dev/null +++ b/recipes-python/pyqt5/files/fix-sm.patch @@ -0,0 +1,17 @@ +--- PyQt5_gpl-5.8.2/sip/QtGui/qguiapplication.sip.orig 2017-05-13 13:28:42.523392315 -0400 ++++ PyQt5_gpl-5.8.2/sip/QtGui/qguiapplication.sip 2017-05-13 13:30:08.081207211 -0400 +@@ -270,12 +270,14 @@ + %End + + public: ++%If (PyQt_SessionManager) + %If (Qt_5_6_0 -) + static bool isFallbackSessionManagementEnabled(); + %End + %If (Qt_5_6_0 -) + static void setFallbackSessionManagementEnabled(bool); + %End ++%End + + signals: + %If (Qt_5_6_0 -) diff --git a/recipes-python/pyqt5/python-pyqt5_5.8.2.bb b/recipes-python/pyqt5/python-pyqt5_5.8.2.bb new file mode 100644 index 00000000..3fa3d644 --- /dev/null +++ b/recipes-python/pyqt5/python-pyqt5_5.8.2.bb @@ -0,0 +1,69 @@ +SUMMARY = "Python Qt5 Bindings" +AUTHOR = "Phil Thomson @ riverbank.co.uk" +HOMEPAGE = "http://riverbankcomputing.co.uk" +SECTION = "devel/python" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "\ + file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \ +" +DEPENDS = "sip sip-native qtbase python" + +SRC_URI = "\ + ${SOURCEFORGE_MIRROR}/pyqt/PyQt5_gpl-${PV}.tar.gz \ + file://fix-sm.patch \ +" +SRC_URI[md5sum] = "c3048e9d242f3e72fd393630da1d971a" +SRC_URI[sha256sum] = "ebd70515b30bbd6098fee29e6271a6696b1183c5530ee30e6ba9aaab195536e8" + +S = "${WORKDIR}/PyQt5_gpl-${PV}" + + +inherit qmake5 pythonnative python-dir distro_features_check +# depends on qt4-x11-free +REQUIRED_DISTRO_FEATURES = "x11" + +export BUILD_SYS +export HOST_SYS +export STAGING_INCDIR +export STAGING_LIBDIR + +DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager" + +DISABLED_FEATURES_append_arm = " PyQt_qreal_double" + +PYQT_MODULES = "QtCore QtGui QtNetwork" +PYQT_MODULES_aarch64 = "QtCore QtGui QtNetwork" + +do_configure_prepend() { + cd ${S} + echo "py_platform = linux" > pyqt.cfg + echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "py_pylib_lib = python%(py_major).%(py_minor)mu" >> pyqt.cfg + echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg + echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg + echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg + echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg + echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg + echo "qt_shared = True" >> pyqt.cfg + QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION` + echo "[Qt $QT_VERSION]" >> pyqt.cfg + echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg + echo yes | python configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/qt5/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST} +} + +do_compile() { + cd ${S} + oe_runmake +} + +do_install() { + cd ${S} + oe_runmake install +} + +RDEPENDS_${PN} = "python-core python-sip" + +FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt5/" +FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/*/.debug/" + -- cgit v1.2.3