summaryrefslogtreecommitdiff
path: root/kde-unstable/kdebindings-python/fix-build.patch
blob: 6a3d0c9cf2e64278cc62da29c05089dd49aa736f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
--- a/python/pykde4/kpythonpluginfactory/kpythonpluginfactory.cpp
+++ b/python/pykde4/kpythonpluginfactory/kpythonpluginfactory.cpp
@@ -18,6 +18,7 @@
    Boston, MA 02111-1307, USA.
 */
 
+#include <Python.h>
 #include <QtCore/QCoreApplication>
 #include <QFileInfo>
 #include <QDir>
@@ -25,7 +26,6 @@
 #include <klibloader.h>
 #include <kstandarddirs.h>
 #include <kcmodule.h>
-#include <Python.h>
 #include <kcomponentdata.h>
 #include <kdebug.h>Index: b/python/pykde4/CMakeLists.txt
===================================================================
--- a/python/pykde4/CMakeLists.txt
+++ b/python/pykde4/CMakeLists.txt
@@ -87,6 +87,9 @@
     ${KDEPIMLIBS_INCLUDE_DIRS}
 )
 
+# Pull in ARM configuration options if needed
+STRING(REGEX MATCH "PyQt_qreal_double" SIP_ARM_HACK ${PYQT4_SIP_FLAGS} "")
+
 SET(SIP_INCLUDES ${PYQT4_SIP_DIR} sip)
 SET(SIP_CONCAT_PARTS 8)
 IF (WIN32)
@@ -94,7 +97,7 @@
 ELSE (WIN32)
     SET(SIP_TAGS ALL WS_X11 ${PYQT4_VERSION_TAG})
 ENDIF (WIN32)
-SET(SIP_DISABLE_FEATURES VendorID PyQt_NoPrintRangeBug)
+SET(SIP_DISABLE_FEATURES VendorID PyQt_NoPrintRangeBug ${SIP_ARM_HACK})
 
 # Use an extra option when compiling on Python 3.
 IF (PYTHON_3)diff -ur kdebindings-4.5.95/python/pykde4/sip/nepomuk/nuao.sip kdebindings-4.5.95.mine/python/pykde4/sip/nepomuk/nuao.sip
--- kdebindings-4.5.95/python/pykde4/sip/nepomuk/nuao.sip	2010-12-22 09:55:07.000000000 +0000
+++ kdebindings-4.5.95.mine/python/pykde4/sip/nepomuk/nuao.sip	2011-01-07 00:04:41.157926502 +0000
@@ -32,7 +32,7 @@
 QUrl                    Event ();
 QUrl                    ModificationEvent ();
 QUrl                    UsageEvent ();
-QUrl                    duration ();
+QUrl                    end ();
 QUrl                    eventCount ();
 QUrl                    firstEvent ();
 QUrl                    firstModification ();--- a/python/pykde4/kpythonpluginfactory/kpythonpluginfactory.cpp
+++ b/python/pykde4/kpythonpluginfactory/kpythonpluginfactory.cpp
@@ -297,7 +297,7 @@ QLibrary *LoadPythonLibrary()
 {
     QLibrary *pythonLib = new QLibrary();
     pythonLib->setLoadHints(QLibrary::ExportExternalSymbolsHint);
-    pythonLib->setFileName(LIB_PYTHON);
+    pythonLib->setFileName(LIB_PYTHON ".1");
     pythonLib->load();
     return pythonLib;
 }Index: b/python/pykde4/CMakeLists.txt
===================================================================
--- a/python/pykde4/CMakeLists.txt
+++ b/python/pykde4/CMakeLists.txt
@@ -15,6 +15,18 @@
     SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib/pykde)
 ENDIF(CMAKE_MAJOR_VERSION EQUAL 2 AND CMAKE_MINOR_VERSION LESS 6)
 
+# where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked
+set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules )
+
+# search packages used by KDE
+find_package(KDE4 REQUIRED)
+include (KDE4Defaults)
+include (MacroLibrary)
+include(MacroOptionalAddSubdirectory)
+
+add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS} -DQT3_SUPPORT)
+
+
 FIND_PACKAGE(PythonLibrary REQUIRED)
 INCLUDE(PythonMacros)Do not link python modules against -lpython2.X. Since KDE4's cmake file uses --no-undefined by default, we have to remove that from the default CMAKE_SHARED_LINKER_FLAGS variable, but only for the pykde4 subdirectory.

Index: b/python/pykde4/CMakeLists.txt
===================================================================
--- a/python/pykde4/CMakeLists.txt
+++ b/python/pykde4/CMakeLists.txt
@@ -93,6 +93,9 @@
 
 ADD_DEFINITIONS(-D_REENTRANT -DQT_CORE_LIB -DQT_GUI_LIB -DUSING_SOPRANO_NRLMODEL_UNSTABLE_API)
 
+# Do not use --no-undefined for python modules.
+STRING(REPLACE -Wl,--no-undefined "" CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}")
+
 FILE(GLOB kdecore_files_sip sip/kdecore/*.sip)
 set(SIP_EXTRA_FILES_DEPEND ${kdecore_files_sip})
 ADD_SIP_PYTHON_MODULE(PyKDE4.kdecore sip/kdecore/kdecoremod.sip ${KDE4_KDECORE_LIBS} ${KDE4_KPTY_LIBS} ${QT_QTNETWORK_LIBRARY})