All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-oe][PATCHv3 1/3] sip : Update to 4.14.2.
@ 2014-12-18 18:40 Philip Balister
  2014-12-18 18:40 ` [meta-oe][PATCHv3 2/3] python-pyqt : Update to 4.11.3 Philip Balister
  2014-12-18 18:40 ` [meta-oe][PATCHv3 3/3] anki : python-sip package replaces with just sip Philip Balister
  0 siblings, 2 replies; 3+ messages in thread
From: Philip Balister @ 2014-12-18 18:40 UTC (permalink / raw)
  To: openembedded-devel

The sip configure.py script now has some support for cross compiling. This
allowed simplication of the existing OpenEmbedded sip support. The sip
recipe now produces support for builds via sip-native and target runtime
via sip.

This has been build and runtime tested on the zedboard and ettus-e300.

Signed-off-by: Philip Balister <philip@balister.org>
---
 .../recipes-devtools/python/python-sip_4.14.2.bb   | 46 -------------------
 meta-oe/recipes-extended/sip/sip-native_4.14.2.bb  | 35 ---------------
 meta-oe/recipes-extended/sip/sip_4.16.4.bb         | 52 ++++++++++++++++++++++
 3 files changed, 52 insertions(+), 81 deletions(-)
 delete mode 100644 meta-oe/recipes-devtools/python/python-sip_4.14.2.bb
 delete mode 100644 meta-oe/recipes-extended/sip/sip-native_4.14.2.bb
 create mode 100644 meta-oe/recipes-extended/sip/sip_4.16.4.bb

diff --git a/meta-oe/recipes-devtools/python/python-sip_4.14.2.bb b/meta-oe/recipes-devtools/python/python-sip_4.14.2.bb
deleted file mode 100644
index acabc97..0000000
--- a/meta-oe/recipes-devtools/python/python-sip_4.14.2.bb
+++ /dev/null
@@ -1,46 +0,0 @@
-SUMMARY = "Runtime helper for sip-generated python wrapper libraries"
-SECTION = "devel/python"
-HOMEPAGE = "http://www.riverbankcomputing.co.uk/sip"
-AUTHOR = "Phil Thompson"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://siplib.sbf.in;endline=15;md5=3d462bd8cb43db3e4be998fe155ae9cf"
-DEPENDS = "python"
-RDEPENDS_${PN} = "python-core"
-
-# riverbankcomputing is upstream, but keeps only latest version, sf usually have few older
-#SRC_URI = "http://www.riverbankcomputing.com/static/Downloads/sip4/sip-${PV}.tar.gz"
-SRC_URI = "${SOURCEFORGE_MIRROR}/project/pyqt/sip/sip-${PV}/sip-${PV}.tar.gz"
-SRC_URI[md5sum] = "b93442e745b3be2fad89de0686a76ce9"
-SRC_URI[sha256sum] = "1a9d3bf26c821f369c175f8e68946b79bc994da4f96e8f5ecff06e6ee7ac0528"
-
-S = "${WORKDIR}/sip-${PV}/siplib"
-
-inherit qt4x11 distutils-base
-
-EXTRA_QMAKEVARS_POST += " TEMPLATE=lib \
-                         CONFIG=console \
-                         DESTDIR= \
-                         VERSION=1.0.0 \
-                         TARGET=sip \
-                         DEFINES=SIP_QT_SUPPORT \
-                         INCLUDEPATH+=. \
-                         INCLUDEPATH+=${STAGING_INCDIR}/${PYTHON_DIR} \
-                         INCLUDEPATH+=${STAGING_INCDIR}"
-
-
-do_configure_prepend() {
-    cat siplib.sbf.in | sed s,target,TARGET, | sed s,sources,SOURCES, | sed s,headers,HEADERS, | sed s,@CFG_MODULE_BASENAME@,sip, > siplib.pro
-    cat siplib.c.in | sed s,@CFG_MODULE_BASENAME@,sip, > siplib.c
-    cat sip.h.in | sed -e s,@CFG_MODULE_NAME@,sip,g > sip.h
-}
-
-do_install() {
-    install -d ${D}${libdir}/${PYTHON_DIR}/site-packages/
-    install -m 0755 libsip.so.1.0.0 ${D}${libdir}/${PYTHON_DIR}/site-packages/sip.so
-    # sipconfig.py sipdistutils.py
-    install -d ${D}${includedir}
-    install -m 0644 ../siplib/sip.h ${D}${includedir}/sip.h
-}
-
-FILES_${PN} = "${libdir}/${PYTHON_DIR}/site-packages/sip.so"
-
diff --git a/meta-oe/recipes-extended/sip/sip-native_4.14.2.bb b/meta-oe/recipes-extended/sip/sip-native_4.14.2.bb
deleted file mode 100644
index 602dc25..0000000
--- a/meta-oe/recipes-extended/sip/sip-native_4.14.2.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "SIP is a C++/Python Wrapper Generator"
-AUTHOR = "Phil Thompson"
-HOMEPAGE = "http://www.riverbankcomputing.co.uk/sip"
-SECTION = "devel"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://sipgen.sbf;endline=15;md5=61b2ce7ddd624968411804d2fa9d776c"
-
-# riverbankcomputing is upstream, but keeps only latest version, sf usually have few older
-#SRC_URI = "http://www.riverbankcomputing.com/static/Downloads/sip4/sip-${PV}.tar.gz"
-SRC_URI = "${SOURCEFORGE_MIRROR}/project/pyqt/sip/sip-${PV}/sip-${PV}.tar.gz"
-SRC_URI[md5sum] = "b93442e745b3be2fad89de0686a76ce9"
-SRC_URI[sha256sum] = "1a9d3bf26c821f369c175f8e68946b79bc994da4f96e8f5ecff06e6ee7ac0528"
-S = "${WORKDIR}/sip-${PV}/sipgen"
-
-inherit qmake2 native python-dir
-
-EXTRA_QMAKEVARS_POST += "DESTDIR=${S} CONFIG=console"
-
-export BUILD_SYS
-export HOST_SYS
-export STAGING_LIBDIR
-export STAGING_INCDIR
-
-do_configure_prepend() {
-    cat sipgen.sbf | sed s,target,TARGET, | sed s,sources,SOURCES, | sed s,headers,HEADERS, > sipgen.pro
-}
-do_install() {
-    install -d ${D}${bindir}
-    install -m 0755 sip ${D}${bindir}/sip
-    # python-pyqt expects sip4
-    ln -sf sip ${D}${bindir}/sip4
-    cd ${WORKDIR}/sip-${PV} && python configure.py
-    install -d ${D}${PYTHON_SITEPACKAGES_DIR}
-    install -m 0755 sip*.py ${D}${PYTHON_SITEPACKAGES_DIR}
-}
diff --git a/meta-oe/recipes-extended/sip/sip_4.16.4.bb b/meta-oe/recipes-extended/sip/sip_4.16.4.bb
new file mode 100644
index 0000000..3f7d501
--- /dev/null
+++ b/meta-oe/recipes-extended/sip/sip_4.16.4.bb
@@ -0,0 +1,52 @@
+SUMMARY = "SIP is a C++/Python Wrapper Generator"
+AUTHOR = "Phil Thompson"
+HOMEPAGE = "http://www.riverbankcomputing.co.uk/sip"
+SECTION = "devel"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://LICENSE-GPL2;md5=e91355d8a6f8bd8f7c699d62863c7303"
+DEPENDS_class-target = "qt4-x11-free"
+
+DEPENDS = "python"
+
+# riverbankcomputing is upstream, but keeps only latest version, sf usually have few older
+#SRC_URI = "http://www.riverbankcomputing.com/static/Downloads/sip4/sip-${PV}.tar.gz"
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/pyqt/sip/sip-${PV}/sip-${PV}.tar.gz"
+SRC_URI[md5sum] = "a9840670a064dbf8f63a8f653776fec9"
+SRC_URI[sha256sum] = "ceda443fc5e129e67a067e2cd7b73ff037f8b10b50e407baa2b1d9f2199d57f5"
+
+BBCLASSEXTEND = "native"
+
+inherit qmake2 python-dir pythonnative
+
+EXTRA_QMAKEVARS_POST += "CONFIG=console"
+
+export BUILD_SYS
+export HOST_SYS
+export STAGING_LIBDIR
+export STAGING_INCDIR
+
+do_configure_prepend_class-target() {
+    echo "py_platform = linux" > sip.cfg
+    echo "py_inc_dir = %(sysroot)/${includedir}/python%(py_major).%(py_minor)" >> sip.cfg
+    echo "sip_bin_dir = ${D}/${bindir}" >> sip.cfg
+    echo "sip_inc_dir = ${D}/${includedir}" >> sip.cfg
+    echo "sip_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> sip.cfg
+    echo "sip_sip_dir = ${D}/${datadir}/sip" >> sip.cfg
+    python configure.py --use-qmake --configuration sip.cfg --sysroot ${STAGING_DIR_HOST}
+}
+do_configure_prepend_class-native() {
+    echo "py_platform = linux" > sip.cfg
+    echo "py_inc_dir = ${includedir}/python%(py_major).%(py_minor)" >> sip.cfg
+    echo "sip_bin_dir = ${D}/${bindir}" >> sip.cfg
+    echo "sip_inc_dir = ${D}/${includedir}" >> sip.cfg
+    echo "sip_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> sip.cfg
+    echo "sip_sip_dir = ${D}/${datadir}/sip" >> sip.cfg
+    python configure.py --use-qmake --configuration sip.cfg --sysroot ${STAGING_DIR_NATIVE}
+}
+do_install() {
+    oe_runmake install
+}
+
+FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages/"
+FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/.debug"
+
-- 
2.1.0



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

* [meta-oe][PATCHv3 2/3] python-pyqt : Update to 4.11.3.
  2014-12-18 18:40 [meta-oe][PATCHv3 1/3] sip : Update to 4.14.2 Philip Balister
@ 2014-12-18 18:40 ` Philip Balister
  2014-12-18 18:40 ` [meta-oe][PATCHv3 3/3] anki : python-sip package replaces with just sip Philip Balister
  1 sibling, 0 replies; 3+ messages in thread
From: Philip Balister @ 2014-12-18 18:40 UTC (permalink / raw)
  To: openembedded-devel

The configure.py script now has support for cross compiling. This
simplified the recipe substantially.

The recipe was tested with gnuradio-companion on the zedboard and
ettus-e300. This is the first time we have been able to use grc with
pyqt built with OpenEmbedded.

Build tested on armv7, x86, x86_64 and mips.

Dropped patches from previous versions.

Signed-off-by: Philip Balister <philip@balister.org>
---
 .../python/python-pyqt-4.9.6/pyqt-generated.patch  |  12 -
 .../python-pyqt-4.9.6/qreal_float_support.diff     | 248 ---------------------
 .../recipes-devtools/python/python-pyqt_4.11.3.bb  |  54 +++++
 .../recipes-devtools/python/python-pyqt_4.9.6.bb   | 103 ---------
 4 files changed, 54 insertions(+), 363 deletions(-)
 delete mode 100644 meta-oe/recipes-devtools/python/python-pyqt-4.9.6/pyqt-generated.patch
 delete mode 100644 meta-oe/recipes-devtools/python/python-pyqt-4.9.6/qreal_float_support.diff
 create mode 100644 meta-oe/recipes-devtools/python/python-pyqt_4.11.3.bb
 delete mode 100644 meta-oe/recipes-devtools/python/python-pyqt_4.9.6.bb

diff --git a/meta-oe/recipes-devtools/python/python-pyqt-4.9.6/pyqt-generated.patch b/meta-oe/recipes-devtools/python/python-pyqt-4.9.6/pyqt-generated.patch
deleted file mode 100644
index 6579aa4..0000000
--- a/meta-oe/recipes-devtools/python/python-pyqt-4.9.6/pyqt-generated.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -uNr PyQt-x11-gpl-4.9.5.orig/QtGui/sipQtGuiQSystemTrayIcon.cpp PyQt-x11-gpl-4.9.5/QtGui/sipQtGuiQSystemTrayIcon.cpp
---- PyQt-x11-gpl-4.9.5.orig/QtGui/sipQtGuiQSystemTrayIcon.cpp	2012-10-01 16:48:16.496700577 +0200
-+++ PyQt-x11-gpl-4.9.5/QtGui/sipQtGuiQSystemTrayIcon.cpp	2012-10-01 21:40:43.063130099 +0200
-@@ -993,8 +993,6 @@
-         qtgui_untrack(sipCpp);
- #line 995 "QtGui/sipQtGuiQSystemTrayIcon.cpp"
- 
--    QSystemTrayIcon *sipCpp = reinterpret_cast<QSystemTrayIcon *>(sipCppV);
--
-     if (QThread::currentThread() == sipCpp->thread())
-         delete sipCpp;
-     else
diff --git a/meta-oe/recipes-devtools/python/python-pyqt-4.9.6/qreal_float_support.diff b/meta-oe/recipes-devtools/python/python-pyqt-4.9.6/qreal_float_support.diff
deleted file mode 100644
index abdf70f..0000000
--- a/meta-oe/recipes-devtools/python/python-pyqt-4.9.6/qreal_float_support.diff
+++ /dev/null
@@ -1,248 +0,0 @@
-## 03_qreal_float_support.dpatch by Michael Casadevall <sonicmctails@gmail.com>
-Index: python-qt4-4.8.3/configure.py
-===================================================================
---- python-qt4-4.8.3.orig/configure.py	2011-02-24 10:33:30.000000000 +0200
-+++ python-qt4-4.8.3/configure.py	2011-02-24 10:33:18.000000000 +0200
-@@ -2004,8 +2004,9 @@
-     out << "PyQt_NoOpenGLES\\n";
- #endif
- 
--    if (sizeof (qreal) != sizeof (double))
-+#if defined(QT_NO_FPU) || defined(QT_ARCH_ARM) || defined(QT_ARCH_WINDOWSCE)
-         out << "PyQt_qreal_double\\n";
-+#endif
- 
-     return 0;
- }
-Index: python-qt4-4.8.3/sip/QtCore/qlist.sip
-===================================================================
---- python-qt4-4.8.3.orig/sip/QtCore/qlist.sip	2011-02-24 10:33:27.000000000 +0200
-+++ python-qt4-4.8.3/sip/QtCore/qlist.sip	2011-02-24 10:33:18.000000000 +0200
-@@ -811,3 +811,227 @@
-     return sipGetState(sipTransferObj);
- %End
- };
-+
-+// If we're on an architecture where qreal != double, then we need to also
-+// explicately handle doubles. On architectures where qreal == double, they
-+// will automaticially be cast upwards
-+
-+%If (!PyQt_qreal_double)
-+
-+%If (Qt_4_3_0 -)
-+// QList<QPair<double, double> > is implemented as a Python list of 2-element tuples.
-+%MappedType QList<QPair<double, double> >
-+{
-+%TypeHeaderCode
-+#include <qlist.h>
-+#include <qpair.h>
-+%End
-+
-+%ConvertFromTypeCode
-+    // Create the list.
-+    PyObject *l;
-+
-+    if ((l = PyList_New(sipCpp->size())) == NULL)
-+        return NULL;
-+
-+    // Set the list elements.
-+    for (int i = 0; i < sipCpp->size(); ++i)
-+    {
-+        const QPair<double, double> &p = sipCpp->at(i);
-+        PyObject *pobj;
-+
-+        if ((pobj = Py_BuildValue((char *)"dd", p.first, p.second)) == NULL)
-+        {
-+            Py_DECREF(l);
-+
-+            return NULL;
-+        }
-+
-+        PyList_SET_ITEM(l, i, pobj);
-+    }
-+
-+    return l;
-+%End
-+
-+%ConvertToTypeCode
-+    SIP_SSIZE_T len;
-+
-+    // Check the type if that is all that is required.
-+    if (sipIsErr == NULL)
-+    {
-+        if (!PySequence_Check(sipPy) || (len = PySequence_Size(sipPy)) < 0)
-+            return 0;
-+
-+        for (SIP_SSIZE_T i = 0; i < len; ++i)
-+        {
-+            PyObject *tup = PySequence_ITEM(sipPy, i);
-+
-+            if (!PySequence_Check(tup) || PySequence_Size(tup) != 2)
-+                return 0;
-+        }
-+
-+        return 1;
-+    }
-+
-+    QList<QPair<double, double> > *ql = new QList<QPair<double, double> >;
-+    len = PySequence_Size(sipPy);
-+ 
-+    for (SIP_SSIZE_T i = 0; i < len; ++i)
-+    {
-+        PyObject *tup = PySequence_ITEM(sipPy, i);
-+
-+        double first = PyFloat_AsDouble(PySequence_ITEM(tup, 0));
-+        double second = PyFloat_AsDouble(PySequence_ITEM(tup, 1));
-+ 
-+        ql->append(QPair<double, double>(first, second));
-+    }
-+ 
-+    *sipCppPtr = ql;
-+ 
-+    return sipGetState(sipTransferObj);
-+%End
-+};
-+%End
-+%If (Qt_4_3_0 -)
-+// QList<QPair<double, TYPE> > is implemented as a Python list of 2-element tuples.
-+template<double, TYPE>
-+%MappedType QList<QPair<double, TYPE> >
-+{
-+%TypeHeaderCode
-+#include <qlist.h>
-+#include <qpair.h>
-+%End
-+
-+%ConvertFromTypeCode
-+    // Create the list.
-+    PyObject *l;
-+
-+    if ((l = PyList_New(sipCpp->size())) == NULL)
-+        return NULL;
-+
-+    // Set the list elements.
-+    for (int i = 0; i < sipCpp->size(); ++i)
-+    {
-+        const QPair<double, TYPE> &p = sipCpp->at(i);
-+        TYPE *t = new TYPE(p.second);
-+        PyObject *pobj;
-+
-+        if ((pobj = sipBuildResult(NULL, "(dB)", p.first, t, sipClass_TYPE, sipTransferObj)) == NULL)
-+        {
-+            Py_DECREF(l);
-+            delete t;
-+
-+            return NULL;
-+        }
-+
-+        PyList_SET_ITEM(l, i, pobj);
-+    }
-+
-+    return l;
-+%End
-+
-+%ConvertToTypeCode
-+    SIP_SSIZE_T len;
-+
-+    // Check the type if that is all that is required.
-+    if (sipIsErr == NULL)
-+    {
-+        if (!PySequence_Check(sipPy) || (len = PySequence_Size(sipPy)) < 0)
-+            return 0;
-+
-+        for (SIP_SSIZE_T i = 0; i < len; ++i)
-+        {
-+            PyObject *tup = PySequence_ITEM(sipPy, i);
-+
-+            if (!PySequence_Check(tup) || PySequence_Size(tup) != 2)
-+                return 0;
-+
-+            if (!sipCanConvertToInstance(PySequence_ITEM(tup, 1), sipClass_TYPE, SIP_NOT_NONE))
-+                return 0;
-+        }
-+
-+        return 1;
-+    }
-+
-+    QList<QPair<double, TYPE> > *ql = new QList<QPair<double, TYPE> >;
-+    len = PySequence_Size(sipPy);
-+ 
-+    for (SIP_SSIZE_T i = 0; i < len; ++i)
-+    {
-+        PyObject *tup = PySequence_ITEM(sipPy, i);
-+        double d;
-+        int state;
-+
-+        d = PyFloat_AsDouble(PySequence_ITEM(tup, 0));
-+        TYPE *t = reinterpret_cast<TYPE *>(sipConvertToInstance(PySequence_ITEM(tup, 1), sipClass_TYPE, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ 
-+        if (*sipIsErr)
-+        {
-+            sipReleaseInstance(t, sipClass_TYPE, state);
-+
-+            delete ql;
-+            return 0;
-+        }
-+
-+        ql->append(QPair<double, TYPE>(d, *t));
-+
-+        sipReleaseInstance(t, sipClass_TYPE, state);
-+    }
-+ 
-+    *sipCppPtr = ql;
-+ 
-+    return sipGetState(sipTransferObj);
-+%End
-+};
-+%End
-+
-+// QList<double> is implemented as a Python list of doubles.
-+%MappedType QList<double>
-+{
-+%TypeHeaderCode
-+#include <qlist.h>
-+%End
-+
-+%ConvertFromTypeCode
-+    // Create the list.
-+    PyObject *l;
-+
-+    if ((l = PyList_New(sipCpp->size())) == NULL)
-+        return NULL;
-+
-+    // Set the list elements.
-+    for (int i = 0; i < sipCpp->size(); ++i)
-+    {
-+        PyObject *pobj;
-+
-+        if ((pobj = PyFloat_FromDouble(sipCpp->value(i))) == NULL)
-+        {
-+            Py_DECREF(l);
-+
-+            return NULL;
-+        }
-+
-+        PyList_SET_ITEM(l, i, pobj);
-+    }
-+
-+    return l;
-+%End
-+
-+%ConvertToTypeCode
-+    // Check the type if that is all that is required.
-+    if (sipIsErr == NULL)
-+        return (PySequence_Check(sipPy) && PySequence_Size(sipPy) >= 0);
-+
-+    QList<double> *ql = new QList<double>;
-+    SIP_SSIZE_T len = PySequence_Size(sipPy);
-+ 
-+    for (SIP_SSIZE_T i = 0; i < len; ++i)
-+        ql->append(PyFloat_AsDouble(PySequence_ITEM(sipPy, i)));
-+ 
-+    *sipCppPtr = ql;
-+ 
-+    return sipGetState(sipTransferObj);
-+%End
-+};
-+
-+%End
diff --git a/meta-oe/recipes-devtools/python/python-pyqt_4.11.3.bb b/meta-oe/recipes-devtools/python/python-pyqt_4.11.3.bb
new file mode 100644
index 0000000..140456e
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-pyqt_4.11.3.bb
@@ -0,0 +1,54 @@
+SUMMARY = "Python Qt4 Bindings"
+AUTHOR = "Phil Thomson @ riverbank.co.uk"
+HOMEPAGE = "http://riverbankcomputing.co.uk"
+SECTION = "devel/python"
+LICENSE = "GPLv2 & GPLv3 & GPL_EXCEPTION"
+LIC_FILES_CHKSUM = "\
+    file://GPL_EXCEPTION.TXT;md5=b73b0be471db679533dc94781c14af58 \
+    file://GPL_EXCEPTION_ADDENDUM.TXT;md5=c1e04ec2aa0911061005a801abf81e40 \
+    file://OPENSOURCE-NOTICE.TXT;md5=6ad9123620cc04a22c394753ad4767d7 \
+    file://LICENSE.GPL2;md5=577ff65f6653562af318bfc3944b1f20 \
+    file://LICENSE.GPL3;md5=feee51612c3c1191a1d5f41156fa2c75 \
+"
+DEPENDS = "sip sip-native qt4-x11-free python"
+
+SRC_URI = "\
+    ${SOURCEFORGE_MIRROR}/pyqt/PyQt-x11-gpl-${PV}.tar.gz \
+"
+SRC_URI[md5sum] = "997c3e443165a89a559e0d96b061bf70"
+SRC_URI[sha256sum] = "853780dcdbe2e6ba785d703d059b096e1fc49369d3e8d41a060be874b8745686"
+
+S = "${WORKDIR}/PyQt-x11-gpl-${PV}"
+
+PARALLEL_MAKE = ""
+
+inherit qmake2 pythonnative python-dir
+
+DISABLED_FEATURES = "PyQt_Desktop_OpenGL PyQt_Accessibility PyQt_SessionManager"
+
+DISABLED_FEATURES_append_arm = " PyQt_qreal_double"
+
+do_configure() {
+    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/PyQt4" >> 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
+    echo "[Qt 4.8]" >> pyqt.cfg
+    echo "pyqt_modules = QtCore QtGui QtDeclarative QtNetwork QtSvg QtWebKit" >> pyqt.cfg
+    echo yes | python configure-ng.py --verbose --qmake  ${STAGING_BINDIR_NATIVE}/qmake2 --configuration pyqt.cfg --sysroot ${STAGING_DIR_HOST}
+}
+do_install() {
+     oe_runmake install
+}
+
+RDEPENDS_${PN} = "python-core"
+
+FILES_${PN} += "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/PyQt4/"
+FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/*/.debug/"
+
diff --git a/meta-oe/recipes-devtools/python/python-pyqt_4.9.6.bb b/meta-oe/recipes-devtools/python/python-pyqt_4.9.6.bb
deleted file mode 100644
index 2f0e189..0000000
--- a/meta-oe/recipes-devtools/python/python-pyqt_4.9.6.bb
+++ /dev/null
@@ -1,103 +0,0 @@
-SUMMARY = "Python Qt4 Bindings"
-HOMEPAGE = "http://riverbankcomputing.co.uk"
-AUTHOR = "Phil Thomson @ riverbank.co.uk"
-SECTION = "devel/python"
-LICENSE = "GPLv2 & GPLv3 & GPL_EXCEPTION"
-LIC_FILES_CHKSUM = "\
-    file://GPL_EXCEPTION.TXT;md5=b73b0be471db679533dc94781c14af58 \
-    file://GPL_EXCEPTION_ADDENDUM.TXT;md5=c1e04ec2aa0911061005a801abf81e40 \
-    file://OPENSOURCE-NOTICE.TXT;md5=6ad9123620cc04a22c394753ad4767d7 \
-    file://LICENSE.GPL2;md5=276c6b9cad5f85a3af3534299825feff \
-    file://LICENSE.GPL3;md5=eda942b9c6ba7eb0f40fee79e94950d5 \
-"
-
-DEPENDS = "sip-native python-sip"
-RDEPENDS_${PN} = "python-core"
-
-PYQT_OE_VERSION = "Qt_4_8_3"
-PR = "r1"
-
-SRC_URI = "\
-    ${SOURCEFORGE_MIRROR}/pyqt/PyQt-x11-gpl-${PV}.tar.gz \
-    file://pyqt-generated.patch;apply=no \
-"
-SRC_URI[md5sum] = "514e1f9597771dc732ba75ba9fa5c6b6"
-SRC_URI[sha256sum] = "a350f9e5c6d8062671c0f29bf1a70824719b18175ce8372c29bf7c1eda44b18d"
-S = "${WORKDIR}/PyQt-x11-gpl-${PV}"
-
-# arm and mips machines need some extra patches
-SRC_URI_append_arm = "\
-    file://qreal_float_support.diff \
-"
-
-SRC_URI_append_mipsel = "\
-    file://qreal_float_support.diff \
-"
-
-inherit qt4x11 sip distutils-base
-
-PARALLEL_MAKE = ""
-
-QMAKE_PROFILES = "pyqt.pro"
-# NOTE: has to match with MIN(qt version we have in OE, last known Qt version by SIP/PyQt)
-EXTRA_SIPTAGS = "-tWS_X11 -t${PYQT_OE_VERSION} -xVendorID -xPyQt_SessionManager -xPyQt_Accessibility"
-EXTRA_OEMAKE = " MAKEFLAGS= "
-
-# arm and mips need extra params for the qreal issue
-EXTRA_SIPTAGS_append_arm = " -x PyQt_qreal_double"
-EXTRA_SIPTAGS_append_mipsel = " -x PyQt_qreal_double" 
-
-SIP_MODULES = "QtCore QtDeclarative QtGui QtNetwork QtSql QtSvg QtXml QtWebKit"
-MAKE_MODULES = "qpy ${SIP_MODULES}"
-
-EXTRA_QMAKEVARS_POST += "\
-    INCLUDEPATH+=${OE_QMAKE_INCDIR_QT}/Qt \
-    INCLUDEPATH+=${STAGING_INCDIR}/${PYTHON_DIR} \
-    INCLUDEPATH+=../qpy/QtCore \
-    INCLUDEPATH+=../qpy/QtGui \
-    INCLUDEPATH+=../qpy/QtDeclarative \
-    INCLUDEPATH+=${OE_QMAKE_INCDIR_QT}/QtCore \
-    INCLUDEPATH+=${OE_QMAKE_INCDIR_QT}/QtGui \
-    INCLUDEPATH+=${OE_QMAKE_INCDIR_QT}/QtDeclarative \
-    INCLUDEPATH+=${OE_QMAKE_INCDIR_QT}/QtWebKit \
-    INCLUDEPATH+=${OE_QMAKE_INCDIR_QT}/QtNetwork \
-"
-FIX_QREAL = "\
-"
-
-do_generate_prepend() {
-    for i in ${FIX_QREAL}; do
-        sed -i -e s,qreal,float,g sip/$i
-    done
-}
-
-do_configure_prepend() {
-    printf "TEMPLATE=subdirs\nSUBDIRS=${MAKE_MODULES}\n" >pyqt.pro
-    printf "TEMPLATE=subdirs\nSUBDIRS=QtCore QtDeclarative QtGui\n" >qpy/qpy.pro
-    ln -sf ./qpycore.pro qpy/QtCore/QtCore.pro
-    ln -sf ./qpydeclarative.pro qpy/QtDeclarative/QtDeclarative.pro
-    ln -sf ./qpygui.pro qpy/QtGui/QtGui.pro
-    echo "INCLUDEPATH+=${S}/QtCore" >>qpy/QtCore/QtCore.pro
-    echo "INCLUDEPATH+=${S}/QtGui" >>qpy/QtGui/QtGui.pro
-    echo "INCLUDEPATH+=${S}/QtDeclarative" >>qpy/QtDeclarative/QtDeclarative.pro
-    echo "LIBS+=-L../qpy/QtGui/ -lqpygui" >>QtGui/QtGui.pro
-    echo "LIBS+=-L../qpy/QtCore/ -lqpycore" >>QtCore/QtCore.pro
-    echo "LIBS+=-L../qpy/QtDeclarative/ -lqpydeclarative" >>QtDeclarative/QtDeclarative.pro
-    # hack for broken generated code (duplicated sipCpp declaration).
-    patch -p1 < ${WORKDIR}/pyqt-generated.patch || echo "pyqt-generated.patch failed to apply, probably reexecuting do_configure, ignoring that"
-}
-
-do_install() {
-    install -d ${D}${libdir}/${PYTHON_DIR}/site-packages/PyQt4
-    install -d ${D}${datadir}/sip/qt/
-    for module in ${SIP_MODULES}
-    do
-        install -m 0644 ${S}/sip/${module}/*.sip ${D}${datadir}/sip/qt/
-        echo "from PyQt4.${module} import *\n" >> ${D}${libdir}/${PYTHON_DIR}/site-packages/PyQt4/Qt.py
-        install -m 0755 ${module}/lib${module}.so ${D}${libdir}/${PYTHON_DIR}/site-packages/PyQt4/${module}.so
-    done
-    cp -pPR elementtree ${D}${libdir}/${PYTHON_DIR}/site-packages/PyQt4/
-    cp __init__.py ${D}${libdir}/${PYTHON_DIR}/site-packages/PyQt4/
-}
-
-FILES_${PN} = "${libdir}/${PYTHON_DIR}/site-packages ${datadir}/sip/qt/"
-- 
2.1.0



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

* [meta-oe][PATCHv3 3/3] anki : python-sip package replaces with just sip.
  2014-12-18 18:40 [meta-oe][PATCHv3 1/3] sip : Update to 4.14.2 Philip Balister
  2014-12-18 18:40 ` [meta-oe][PATCHv3 2/3] python-pyqt : Update to 4.11.3 Philip Balister
@ 2014-12-18 18:40 ` Philip Balister
  1 sibling, 0 replies; 3+ messages in thread
From: Philip Balister @ 2014-12-18 18:40 UTC (permalink / raw)
  To: openembedded-devel

The sip package provides python support for the target.

Signed-off-by: Philip Balister <philip@balister.org>
---
 meta-oe/recipes-extended/anki/anki_0.4.3.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-oe/recipes-extended/anki/anki_0.4.3.bb b/meta-oe/recipes-extended/anki/anki_0.4.3.bb
index 7943ce8..d441a70 100644
--- a/meta-oe/recipes-extended/anki/anki_0.4.3.bb
+++ b/meta-oe/recipes-extended/anki/anki_0.4.3.bb
@@ -1,4 +1,4 @@
 require ${PN}-${PV}.inc
 
-RDEPENDS_${PN} = "python-pyqt python-sip libanki"
+RDEPENDS_${PN} = "python-pyqt sip libanki"
 RRECOMMENDS_${PN} = "virtual-japanese-font"
-- 
2.1.0



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

end of thread, other threads:[~2014-12-18 18:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-18 18:40 [meta-oe][PATCHv3 1/3] sip : Update to 4.14.2 Philip Balister
2014-12-18 18:40 ` [meta-oe][PATCHv3 2/3] python-pyqt : Update to 4.11.3 Philip Balister
2014-12-18 18:40 ` [meta-oe][PATCHv3 3/3] anki : python-sip package replaces with just sip Philip Balister

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.