[Kde-bindings] KDE/kdebindings

Arno Rehn kde at arnorehn.de
Wed May 19 13:51:04 UTC 2010


SVN commit 1128510 by arnorehn:

add a 'smokebase' lib which defines Smoke::classMap and Smoke::NullModuleIndex.
Makes dynamically loading smoke libs MUCH easier. And it doesn't break BC.

CCMAIL: kde-bindings at kde.org

 M  +0 -5      generator/generators/smoke/writeSmokeDataFile.cpp  
 M  +1 -0      smoke/CMakeLists.txt  
 M  +0 -5      smoke/deptool/main.cpp  
 M  +1 -3      smoke/qtcore/CMakeLists.txt  
 M  +0 -6      smoke/smokeapi/main.cpp  
 A             smoke/smokebase (directory)  
 A             smoke/smokebase/CMakeLists.txt  
 A             smoke/smokebase/smokebase.cpp   [License: UNKNOWN]


--- trunk/KDE/kdebindings/generator/generators/smoke/writeSmokeDataFile.cpp #1128509:1128510
@@ -691,11 +691,6 @@
 
     out << "}\n\n";
 
-    if (Options::parentModules.isEmpty()) {
-        out << "Smoke::ClassMap Smoke::classMap;\n\n";
-        out << "Smoke::ModuleIndex Smoke::NullModuleIndex;\n\n";
-    }
-
     out << "extern \"C\" {\n\n";
 
     for (int j = 0; j < Options::parentModules.count(); j++) {
--- trunk/KDE/kdebindings/smoke/CMakeLists.txt #1128509:1128510
@@ -2,6 +2,7 @@
 
 add_definitions(-DSMOKE_BUILDING)
 
+add_subdirectory(smokebase)
 add_subdirectory(qtcore)
 add_subdirectory(deptool)
 add_subdirectory(smokeapi)
--- trunk/KDE/kdebindings/smoke/deptool/main.cpp #1128509:1128510
@@ -21,7 +21,6 @@
 #include <QtDebug>
 
 #include <smoke.h>
-#include <qtcore_smoke.h>
 
 typedef void (*InitSmokeFn)();
 
@@ -29,10 +28,6 @@
     QLibrary lib(file.filePath());
 
     QString moduleName = file.baseName().replace(QRegExp("^libsmoke"), QString());
-    if (moduleName == "qtcore") {
-        init_qtcore_Smoke();
-        return qtcore_Smoke;
-    }
 
     QString init_name = "init_" + moduleName + "_Smoke";
     InitSmokeFn init = (InitSmokeFn) lib.resolve(init_name.toLatin1());
--- trunk/KDE/kdebindings/smoke/qtcore/CMakeLists.txt #1128509:1128510
@@ -73,12 +73,10 @@
     ADD_DEFINITIONS(-DGCC_VISIBILITY)
 ENDIF(CMAKE_CXX_FLAGS MATCHES "-fvisibility")
 
-add_definitions(-DBASE_SMOKE_BUILDING)
-
 # kde4_add_library(smokeqtcore SHARED ${smokeqtcore_LIB_SRCS})
 add_library(smokeqtcore SHARED ${smokeqtcore_LIB_SRCS})
 
-target_link_libraries(smokeqtcore ${QT_QTCORE_LIBRARY} )
+target_link_libraries(smokeqtcore ${QT_QTCORE_LIBRARY} smokebase )
 
 set_target_properties(smokeqtcore PROPERTIES VERSION 3.0.0 SOVERSION 3 )
 
--- trunk/KDE/kdebindings/smoke/smokeapi/main.cpp #1128509:1128510
@@ -22,7 +22,6 @@
 #include <QtDebug>
 
 #include <smoke.h>
-#include <qtcore_smoke.h>
 
 static QTextStream qOut(stdout);
 
@@ -42,11 +41,6 @@
     QFileInfo file(QString("libsmoke") + moduleName);
     QLibrary lib(file.filePath());
 
-    if (moduleName == "qtcore") {
-        init_qtcore_Smoke();
-        return qtcore_Smoke;
-    }
-
     QString init_name = "init_" + moduleName + "_Smoke";
     InitSmokeFn init = (InitSmokeFn) lib.resolve(init_name.toLatin1());
 



More information about the Kde-bindings mailing list