[Kde-windows] kde4 dbus state ?
    Peter Kümmel 
    syntheticpp at gmx.net
       
    Wed May 10 17:28:16 BST 2006
    
    
  
Ralf Habacker wrote:
> which cmake version are you using ? I have no such problem with recent 
> cmake cvs version.
I only use the binary release 2.4.1., maybe this is the (my) problem.
> the dbus library itself is c level, so mingw would be enough, but the qt 
> bindings are c++ and compiler specific.
> We said, that msvc for KDE 4 is supported, so dbus qt binding has to be 
> too.
> 
To compile with msvc until it breaks when linking qdbus
(because of static member functions, QDBusMetaObject::create...)
I've done this changes (here some pseudo diff output):
--
msvc need kdewin32
CMakeLists.txt
# search packages used by KDE
if (WIN32)
	find_package(GNUWIN32)
-	#find_package(KDEWIN32)
+	if(MSVC)
+		find_package(KDEWIN32)
+	endif(MSVC)
endif (WIN32)
find_package(LIBXML2)
+if(MINGW)
  set (HAVE_GNUC_VARARGS 1)
+endif(MINGW)
--
msvc need kdewin32
dbus/CMakeLists.txt
+include_directories( ${CMAKE_INCLUDE_PATH} )
if (WIN32)
	set (LIBS ws2_32 advapi32 netapi32)
+	if(MSVC)
+		set (LIBS ${LIBS} kdewin32)
+	endif(MSVC)
ENDIF (WIN32)
--
dbus has no export specifiers!
+if(MSVC)
+	add_library(dbus-1 STATIC ${libdbus_SOURCES} )
+else(MSVC)
	add_library(dbus-1 ${libdbus_SOURCES} )
+endif(MSVC)
--
is this a difference between C and C++?
dbus/dbus-sysdeps.c
@4185
#else
+   int fd2;
    if (fd < 0)
        return;
  _DBUS_LOCK (win32_fds);
+  fd2 = UNRANDOMIZE (fd);
-  int fd2 = UNRANDOMIZE (fd);
--
something for Thiago Macieria:
qt/qtdbusinterface.h
private:
    Q_DECLARE_PRIVATE(QDBusInterface);
+    Q_DISABLE_COPY(QDBusInterface);
};
--
kdewin32(already checked in):
Index: kdelibs/win/include/msvc/stdlib.h
===================================================================
--- kdelibs/win/include/msvc/stdlib.h       (Revision 538865)
+++ kdelibs/win/include/msvc/stdlib.h       (Arbeitskopie)
@@ -37,7 +37,10 @@
 #define EXIT_FAILURE 1
 #define EXIT_SUCCESS 0
+#define strtoll _strtoi64
+#define strtoull _strtoui64
+
 KDEWIN32_EXPORT long int random();
 KDEWIN32_EXPORT void srandom(unsigned int seed);
    
    
More information about the kde-core-devel
mailing list