diff options
| author | 2008-06-24 10:32:42 +0000 | |
|---|---|---|
| committer | 2008-06-24 10:32:42 +0000 | |
| commit | bf931cbeb3c1d539b61d4e9db2dc4d94d5591db4 (patch) | |
| tree | 8c0424e30e7719a618767edb95b969e12da6c11f | |
| parent | kvilib compilation fixes under win32/msvc2008 (and under win32 at whole) (diff) | |
| download | KVIrc-bf931cbeb3c1d539b61d4e9db2dc4d94d5591db4.tar.gz KVIrc-bf931cbeb3c1d539b61d4e9db2dc4d94d5591db4.tar.bz2 KVIrc-bf931cbeb3c1d539b61d4e9db2dc4d94d5591db4.zip | |
Fixes for win32 msvc build (now it works ok, but SLOW AS HELL: kvirc+kvilib without modules takes 1.5 hours on core2duo T5500)
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@1934 17fca916-40b9-46aa-a4ea-0a15b648b75c
| -rw-r--r-- | CMakeLists.txt | 15 | ||||
| -rw-r--r-- | cmake/module.rules.txt | 18 | ||||
| -rw-r--r-- | src/kvilib/config/kvi_settings.h | 27 | ||||
| -rw-r--r-- | src/kvilib/ext/kvi_xlib.h | 34 | ||||
| -rw-r--r-- | src/kvilib/net/kvi_netutils.cpp | 3 | ||||
| -rw-r--r-- | src/kvirc/CMakeLists.txt | 10 | ||||
| -rw-r--r-- | src/kvirc/ui/kvi_cryptcontroller.h | 4 |
7 files changed, 60 insertions, 51 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 5de54f3d4..452ff515f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -255,15 +255,11 @@ ENDIF() FIND_PACKAGE(Qt4 REQUIRED) IF(QT4_FOUND) SET(QT_USE_QT3SUPPORT true) - IF(NOT WIN32) - IF(APPLE) + + IF(APPLE) SET(QT_USE_QTSQL true) SET(QT_USE_QTXML true) SET(QT_USE_QTNETWORK true) - ELSE() - # Assume linux - SET(QT_USE_QTDBUS true) - ENDIF() ENDIF() # Qt Phonon support @@ -279,7 +275,8 @@ IF(QT4_FOUND) SET(COMPILE_USE_QT4 1) INCLUDE(${QT_USE_FILE}) - IF(QT_USE_QTDBUS) + IF(QT_QTDBUS_FOUND) + SET(QT_USE_QTDBUS true) SET(CMAKE_STATUS_QTDBUS "yes") SET(COMPILE_DBUS_SUPPORT 1) # ADD_DEFINITIONS("-DCOMPILE_DBUS_SUPPORT") @@ -358,10 +355,10 @@ ENDIF() IF(WANT_OPENSSL) FIND_PACKAGE(OpenSSL) IF(OPENSSL_FOUND) - IF(MINGW) + IF(WIN32) # On windows/mingw we need libeay32 too... FIND_LIBRARY(LIB_EAY NAMES libeay32MD eay libeay libeay32) - IF(${LIB_EAY}) + IF(LIB_EAY) INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR}) LIST(APPEND LIBS ${OPENSSL_LIBRARIES} ${LIB_EAY}) SET(COMPILE_SSL_SUPPORT 1) diff --git a/cmake/module.rules.txt b/cmake/module.rules.txt index a5388efec..aaba7bd6b 100644 --- a/cmake/module.rules.txt +++ b/cmake/module.rules.txt @@ -7,14 +7,16 @@ ELSE() SET(KVILIB_BINARYNAME kvilib) ENDIF() -ADD_LIBRARY(${kvi_module_name} MODULE ${${kvi_module_name}_SRCS} ${${kvi_module_name}_MOC_SRCS})
-
-IF(MINGW)
- SET_TARGET_PROPERTIES(${kvi_module_name} PROPERTIES LINK_FLAGS "-Wl,--enable-auto-import,--enable-runtime-pseudo-reloc")
- TARGET_LINK_LIBRARIES(${kvi_module_name} ${KVILIB_BINARYNAME} ${KVIRC_BINARYNAME} ${LIBS})
-ELSE()
- TARGET_LINK_LIBRARIES(${kvi_module_name} ${KVILIB_BINARYNAME} ${LIBS})
-ENDIF()
+ADD_LIBRARY(${kvi_module_name} MODULE ${${kvi_module_name}_SRCS} ${${kvi_module_name}_MOC_SRCS}) + +IF(WIN32) + IF(MINGW) + SET_TARGET_PROPERTIES(${kvi_module_name} PROPERTIES LINK_FLAGS "-Wl,--enable-auto-import,--enable-runtime-pseudo-reloc") + ENDIF() + TARGET_LINK_LIBRARIES(${kvi_module_name} ${KVILIB_BINARYNAME} ${KVIRC_BINARYNAME} ${LIBS}) +ELSE() + TARGET_LINK_LIBRARIES(${kvi_module_name} ${KVILIB_BINARYNAME} ${LIBS}) +ENDIF() IF(UNIX) IF(APPLE) diff --git a/src/kvilib/config/kvi_settings.h b/src/kvilib/config/kvi_settings.h index a61191a64..b9893b355 100644 --- a/src/kvilib/config/kvi_settings.h +++ b/src/kvilib/config/kvi_settings.h @@ -34,13 +34,21 @@ #include <QtGlobal> +#ifdef KVIRC_EXTERNAL_MODULE + // when compiling an external module + // include the last configuration + #include "kvi_configstatus.h" +#else + // assume CMake build system for all systems + #include "kvi_sysconfig.h" +#endif + // FIXME: Once we have a stable CMake build system, this section needs a cleanup. #if (defined(_OS_WIN32_) || defined(Q_OS_WIN32) || defined(Q_OS_WIN32_)) && !defined(MINGW) #define COMPILE_WITH_SYSTEM_MEMMOVE #define FEEL_LIKE_I_AM_COMPILING_UNDER_WINDOZE #define COMPILE_ON_WINDOWS - #define KVIRC_VERSION_RELEASE "COMPILED_WITH_VS" #ifdef __KVILIB__ #define KVILIB_API __declspec(dllexport) @@ -79,15 +87,6 @@ #define COMPILE_ON_MAC #endif - #ifdef KVIRC_EXTERNAL_MODULE - // when compiling an external module - // include the last configuration - #include "kvi_configstatus.h" - #else - // assume CMake build system - #include "kvi_sysconfig.h" - #endif - #endif #ifndef COMPILE_USE_QT4 @@ -96,11 +95,13 @@ #endif #define KVI_VERSION KVIRC_VERSION_RELEASE -#ifdef COMPILE_ON_WINDOWS -#define KVI_VERSION_BRANCH "VS_BRANCH" + +#ifndef KVIRC_VERSION_BRANCH + #define KVI_VERSION_BRANCH "VS_BRANCH" #else -#define KVI_VERSION_BRANCH KVIRC_VERSION_BRANCH + #define KVI_VERSION_BRANCH KVIRC_VERSION_BRANCH #endif + #define KVI_RELEASE_NAME "Insomnia" #ifndef COMPILE_ON_WINDOWS diff --git a/src/kvilib/ext/kvi_xlib.h b/src/kvilib/ext/kvi_xlib.h index 53c0a879d..ee44b8829 100644 --- a/src/kvilib/ext/kvi_xlib.h +++ b/src/kvilib/ext/kvi_xlib.h @@ -26,25 +26,27 @@ #include "kvi_settings.h" -#ifndef COMPILE_NO_X +#ifndef COMPILE_ON_WINDOWS + #ifndef COMPILE_NO_X - #ifdef Bool - // Someone has defined Bool ? - #undef Bool - #endif - - #include <X11/Xlib.h> + #ifdef Bool + // Someone has defined Bool ? + #undef Bool + #endif + + #include <X11/Xlib.h> - // Too bad that X11/Xlib.h defines Bool, Error and Success... this basically - // SUX since we can't use them anywhere in the source! - // this breaks, enums in Qt, enums in KVIrc and other stuff all around... - // Shame on you Xlib.h author :D + // Too bad that X11/Xlib.h defines Bool, Error and Success... this basically + // SUX since we can't use them anywhere in the source! + // this breaks, enums in Qt, enums in KVIrc and other stuff all around... + // Shame on you Xlib.h author :D - #ifdef Bool - // NO! - #undef Bool - #endif + #ifdef Bool + // NO! + #undef Bool + #endif -#endif // !COMPILE_NO_X + #endif // !COMPILE_NO_X +#endif #endif //_KVI_XLIB_H_ diff --git a/src/kvilib/net/kvi_netutils.cpp b/src/kvilib/net/kvi_netutils.cpp index ee0263885..e2836b474 100644 --- a/src/kvilib/net/kvi_netutils.cpp +++ b/src/kvilib/net/kvi_netutils.cpp @@ -303,7 +303,8 @@ static unsigned int scan_ip6(const char *s,char ip[16]) return len; } -#ifndef WIN2K +#ifndef COMPILE_ON_WINDOWS +// #include <Ws2tcpip.h> - already has it int inet_pton(int AF, const char *CP, void *BUF) { int len; if (AF==AF_INET) { diff --git a/src/kvirc/CMakeLists.txt b/src/kvirc/CMakeLists.txt index 238393d16..4aeb5bcbe 100644 --- a/src/kvirc/CMakeLists.txt +++ b/src/kvirc/CMakeLists.txt @@ -441,6 +441,15 @@ ENDIF() ADD_EXECUTABLE(${KVIRC_BINARYNAME} ${kvirc_SRCS} ${kvirc_MOC_SRCS}) + +IF(MSVC) + LIST(APPEND LIBS shlwapi.lib) +ENDIF() + +IF(MINGW) + LIST(APPEND LIBS shlwapi) +ENDIF() + # Link libraries TARGET_LINK_LIBRARIES(${KVIRC_BINARYNAME} ${KVILIB_BINARYNAME} ${LIBS}) @@ -458,6 +467,7 @@ IF(WIN32) #we need this defined when mingw will compile moc files ADD_DEFINITIONS(-D__KVIRC__) ADD_DEFINITIONS(-DCOMPILE_USE_STANDALONE_MOC_SOURCES) + LIST(APPEND LIBS "shlwapi") ENDIF() diff --git a/src/kvirc/ui/kvi_cryptcontroller.h b/src/kvirc/ui/kvi_cryptcontroller.h index 728351267..ef497a095 100644 --- a/src/kvirc/ui/kvi_cryptcontroller.h +++ b/src/kvirc/ui/kvi_cryptcontroller.h @@ -26,10 +26,6 @@ #include "kvi_settings.h" - - -// Qt4 moc bails out on this ?????? - #if defined(COMPILE_CRYPT_SUPPORT) || defined(Q_MOC_RUN) #include "kvi_styled_controls.h" #include "kvi_crypt.h" |
