summaryrefslogtreecommitdiff
path: root/0001-explicitly-use-QLibrary-to-load-libpython-like-pykde.patch
blob: 89e79f43d3b876bea61d8ecd5cc3ced616bbe2f5 (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
diff -up kig-20.12.2/CMakeLists.txt.0001 kig-20.12.2/CMakeLists.txt
--- kig-20.12.2/CMakeLists.txt.0001	2021-01-29 14:06:32.000000000 -0600
+++ kig-20.12.2/CMakeLists.txt	2021-02-02 16:28:15.949344601 -0600
@@ -64,6 +64,9 @@ add_subdirectory( pykig )
 if(BoostPython_FOUND)
   add_subdirectory( scripting )
   add_definitions(-DKIG_ENABLE_PYTHON_SCRIPTING)
+  get_filename_component(PYTHON_LIBRARY_REALPATH "${PYTHON_LIBRARY}" REALPATH)
+  get_filename_component(LIB_PYTHON ${PYTHON_LIBRARY_REALPATH} NAME)
+  add_definitions(-DLIB_PYTHON="${LIB_PYTHON}")
 endif(BoostPython_FOUND)
 
 set_package_properties(
diff -up kig-20.12.2/scripting/python_scripter.cc.0001 kig-20.12.2/scripting/python_scripter.cc
--- kig-20.12.2/scripting/python_scripter.cc.0001	2021-01-29 14:06:32.000000000 -0600
+++ kig-20.12.2/scripting/python_scripter.cc	2021-02-02 16:29:23.874429781 -0600
@@ -23,6 +23,8 @@
 #include <Python.h>
 #include "python_scripter.h"
 
+#include <QLibrary>
+
 #include <iostream>
 #include <string>
 
@@ -375,6 +377,11 @@ PythonInitializer::PythonInitializer()
 {
   // tell the python interpreter about our API..
 
+  QLibrary *pythonLib = new QLibrary();
+  pythonLib->setLoadHints(QLibrary::ExportExternalSymbolsHint);
+  pythonLib->setFileName(LIB_PYTHON);
+  pythonLib->load();
+
   PyImport_AppendInittab( "kig", PyInit_kig );
 
   Py_Initialize();