summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>2010-12-30 00:58:57 +0000
committerArfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>2010-12-30 00:58:57 +0000
commit3ebf57560b23cf1d687f771402c07de08592aebf (patch)
tree64f0bfb902dfe03a82a730730b1fb4f5a13dbff8 /kde-base/pykde4
parentwhitespace (diff)
downloadgentoo-2-3ebf57560b23cf1d687f771402c07de08592aebf.tar.gz
gentoo-2-3ebf57560b23cf1d687f771402c07de08592aebf.tar.bz2
gentoo-2-3ebf57560b23cf1d687f771402c07de08592aebf.zip
Fix building with newer versions of dev-python/sip (bug #332503, bug #349707).
(Portage version: 2.2.0_alpha10_p17/cvs/Linux x86_64)
Diffstat (limited to 'kde-base/pykde4')
-rw-r--r--kde-base/pykde4/ChangeLog6
-rw-r--r--kde-base/pykde4/files/pykde4-4.4.5-sip-4.12.patch93
-rw-r--r--kde-base/pykde4/pykde4-4.4.5.ebuild5
3 files changed, 102 insertions, 2 deletions
diff --git a/kde-base/pykde4/ChangeLog b/kde-base/pykde4/ChangeLog
index 422e1967622c..189774f222ca 100644
--- a/kde-base/pykde4/ChangeLog
+++ b/kde-base/pykde4/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for kde-base/pykde4
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/pykde4/ChangeLog,v 1.94 2010/12/02 21:16:48 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/pykde4/ChangeLog,v 1.95 2010/12/30 00:58:57 arfrever Exp $
+
+ 29 Dec 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
+ pykde4-4.4.5.ebuild, +files/pykde4-4.4.5-sip-4.12.patch:
+ Fix building with newer versions of dev-python/sip (bug #332503, bug #349707).
*pykde4-4.5.4 (02 Dec 2010)
diff --git a/kde-base/pykde4/files/pykde4-4.4.5-sip-4.12.patch b/kde-base/pykde4/files/pykde4-4.4.5-sip-4.12.patch
new file mode 100644
index 000000000000..69129a186962
--- /dev/null
+++ b/kde-base/pykde4/files/pykde4-4.4.5-sip-4.12.patch
@@ -0,0 +1,93 @@
+--- python/pykde4/sip/kdecore/typedefs.sip
++++ python/pykde4/sip/kdecore/typedefs.sip
+@@ -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>
+ {
diff --git a/kde-base/pykde4/pykde4-4.4.5.ebuild b/kde-base/pykde4/pykde4-4.4.5.ebuild
index 152e3fa80fda..b09d203d7ad3 100644
--- a/kde-base/pykde4/pykde4-4.4.5.ebuild
+++ b/kde-base/pykde4/pykde4-4.4.5.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/pykde4/pykde4-4.4.5.ebuild,v 1.7 2010/08/09 17:34:07 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/pykde4/pykde4-4.4.5.ebuild,v 1.8 2010/12/30 00:58:57 arfrever Exp $
EAPI="3"
@@ -43,6 +43,9 @@ src_prepare() {
# See bug 322351
use arm && epatch "${FILESDIR}/${PN}-4.4.4-arm-sip.patch"
+
+ has_version ">=dev-python/sip-4.11" && epatch "${FILESDIR}/${PN}-mapped-type-fix.patch"
+ has_version ">=dev-python/sip-4.12" && epatch "${FILESDIR}/${P}-sip-4.12.patch"
}
src_configure() {