Make kdebindings compile with newer sip

svn path=/nixpkgs/trunk/; revision=24838
This commit is contained in:
Yury G. Kudryashov 2010-11-24 10:49:34 +00:00
parent 8f07ddbdbb
commit 0dcd86ef0f
2 changed files with 68 additions and 1 deletions

View File

@ -6,7 +6,7 @@
# some bindings are even broken.
kde.package rec {
patches = [ ./python-site-packages-install-dir.diff ];
patches = [ ./python-site-packages-install-dir.diff ./sip-4.11.patch ];
preConfigure = ''
CUSTOM_RUBY_SITE_ARCH_DIR=$(ruby -r rbconfig -e "print Config::CONFIG['sitearchdir']" | sed -e "s@${ruby}@$out@")

View File

@ -0,0 +1,67 @@
Make kdebindings compile against sip-4.11, from KDE svn
Index: kdebindings/python/pykde4/sip/kdecore/typedefs.sip
===================================================================
--- kdebindings/python/pykde4/sip/kdecore/typedefs.sip (revision 1170601)
+++ kdebindings/python/pykde4/sip/kdecore/typedefs.sip (revision 1170602)
@@ -733,61 +733,6 @@
};
-%MappedType QList<uint>
-{
-%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 PY_MAJOR_VERSION >= 3
- if ((pobj = PyLong_FromLong(sipCpp->value(i))) == NULL) {
-#else
- if ((pobj = PyInt_FromLong(sipCpp->value(i))) == NULL) {
-#endif
- 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 PyList_Check(sipPy);
-
- QList<uint> *ql = new QList<uint>;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) {
-#if PY_MAJOR_VERSION >= 3
- ql->append(PyLong_AsLong(PyList_GET_ITEM(sipPy, i)));
-#else
- ql->append(PyInt_AsLong(PyList_GET_ITEM(sipPy, i)));
-#endif
- }
-
- *sipCppPtr = ql;
-
- return sipGetState(sipTransferObj);
-%End
-};
-
-
template <TYPE*>
%MappedType QStack<TYPE*>
{