diff --git a/CMakeLists.txt b/CMakeLists.txt
index f778510..af7a815 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -37,6 +37,7 @@ IF(PYQT4_VERSION STRLESS "040900") # These version numbers also appear in ../CM
ENDIF(PYQT4_VERSION STRLESS "040900")
+
SET(SOPRANO_MIN_VERSION "2.0")
MACRO_OPTIONAL_FIND_PACKAGE(Soprano)
MACRO_LOG_FEATURE(Soprano_FOUND "Soprano" "Soprano Libraries" "kdesupport" FALSE "" "Required for Soprano Python bindings.")
@@ -95,9 +96,19 @@ SET(SIP_DISABLE_FEATURES VendorID PyQt_NoPrintRangeBug)
# Use an extra option when compiling on Python 3.
IF (PYTHON_3)
- SET(SIP_EXTRA_OPTIONS -g -x Py_v3)
+ IF(PYQT4_VERSION STRGREATER "040904")
+ # Disable for newer PyQt
+ SET(SIP_EXTRA_OPTIONS -g -x PyKDE_QVector -x Py_v3)
+ ELSE (PYQT4_VERSION STRGREATER "040904")
+ SET(SIP_EXTRA_OPTIONS -g -x Py_v3)
+ ENDIF(PYQT4_VERSION STRGREATER "040904")
ELSE (PYTHON_3)
- SET(SIP_EXTRA_OPTIONS -g)
+ IF(PYQT4_VERSION STRGREATER "040904")
+ # Disable for newer PyQt
+ SET(SIP_EXTRA_OPTIONS -g -x PyKDE_QVector)
+ ELSE (PYQT4_VERSION STRGREATER "040904")
+ SET(SIP_EXTRA_OPTIONS -g)
+ ENDIF(PYQT4_VERSION STRGREATER "040904")
ENDIF (PYTHON_3)
ADD_DEFINITIONS(-D_REENTRANT -DQT_CORE_LIB -DQT_GUI_LIB -DUSING_SOPRANO_NRLMODEL_UNSTABLE_API)
diff --git a/sip/kdecore/typedefs.sip b/sip/kdecore/typedefs.sip
index 5a0a080..af53f85 100644
--- a/sip/kdecore/typedefs.sip
+++ b/sip/kdecore/typedefs.sip
@@ -951,6 +951,9 @@ template <TYPE1>
%End
};
+%Feature PyKDE_QVector
+
+%If(PyKDE_QVector)
%MappedType QVector<int>
{
%TypeHeaderCode
@@ -1025,3 +1028,4 @@ template <TYPE1>
return sipGetState(sipTransferObj);
%End
};
+%End
\ No newline at end of file