summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xkde/kdebindings/Pkgfile4
-rw-r--r--kde/kdebindings/kdebindings4.5.4-sip.patch156
2 files changed, 158 insertions, 2 deletions
diff --git a/kde/kdebindings/Pkgfile b/kde/kdebindings/Pkgfile
index 098e38651..40be580f6 100755
--- a/kde/kdebindings/Pkgfile
+++ b/kde/kdebindings/Pkgfile
@@ -8,11 +8,11 @@ name=kdebindings
version=4.5.4
release=3
source=(ftp://ftp.kde.org/pub/kde/stable/$version/src/$name-$version.tar.bz2
- sip4.12.patch )
+ kdebindings4.5.4-sip.patch )
build() {
cd $name-$version
- patch -Np0 -i ../sip4.12.patch
+ patch -Np0 -i ../kdebindings4.5.4-sip.patch
mkdir build
cd build
diff --git a/kde/kdebindings/kdebindings4.5.4-sip.patch b/kde/kdebindings/kdebindings4.5.4-sip.patch
new file mode 100644
index 000000000..cc06db01b
--- /dev/null
+++ b/kde/kdebindings/kdebindings4.5.4-sip.patch
@@ -0,0 +1,156 @@
+--- /tmp/work/src/kdebindings-4.5.4/python/pykde4/sip/kdecore/typedefs.sip 2010-11-02 13:51:10.000000000 +0100
++++ /tmp/work/src/kdebindings-4.5.4/python/pykde4/sip/kdecore/typedefs.sip.new 2011-01-03 12:45:29.000000000 +0100
+@@ -582,90 +582,6 @@
+ %End
+ };
+
+-template <TYPE>
+-%MappedType QSet<TYPE>
+-{
+-%TypeHeaderCode
+-#include <qset.h>
+-%End
+-
+-%ConvertFromTypeCode
+- // Create the list.
+- PyObject *l;
+-
+- if ((l = PyList_New(sipCpp->size())) == NULL)
+- return NULL;
+-
+- // Set the list elements.
+- QSet<TYPE> set = *sipCpp;
+- int i = 0;
+- foreach (TYPE value, set)
+- {
+- PyObject *obj = sipConvertFromNewType(&value, sipType_TYPE, sipTransferObj);
+- if (obj == NULL || PyList_SET_ITEM (l, i, obj) < 0)
+- {
+- Py_DECREF(l);
+-
+- if (obj)
+- Py_DECREF(obj);
+-
+- return NULL;
+- }
+-
+- Py_DECREF(obj);
+- i++;
+- }
+-
+- return l;
+-%End
+-
+-%ConvertToTypeCode
+- // Check the type if that is all that is required.
+- if (sipIsErr == NULL)
+- {
+- if (!PyList_Check(sipPy))
+- return 0;
+- }
+-
+- // Check the type if that is all that is required.
+- if (sipIsErr == NULL)
+- {
+- if (!PyList_Check(sipPy))
+- return 0;
+-
+- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
+- if (!sipCanConvertToType(PyList_GET_ITEM (sipPy, i), sipType_TYPE, SIP_NOT_NONE))
+- return 0;
+- }
+-
+- QSet<TYPE> *qs = new QSet<TYPE>;
+-
+- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
+- {
+- int state;
+-
+- TYPE *t = reinterpret_cast<TYPE *>(sipConvertToType(PyList_GET_ITEM (sipPy, i), sipType_TYPE, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
+-
+- if (*sipIsErr)
+- {
+- sipReleaseType(t, sipType_TYPE, state);
+-
+- delete qs;
+- return 0;
+- }
+-
+- *qs << *t;
+-
+- sipReleaseType(t, sipType_TYPE, state);
+- }
+-
+- *sipCppPtr = qs;
+-
+- return sipGetState(sipTransferObj);
+-%End
+-};
+-
+-
+ template <TYPE1,TYPE2>
+ %MappedType QPair<TYPE1,TYPE2>
+ {
+@@ -732,62 +648,6 @@
+ %End
+ };
+
+-
+-%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*>
+ {