diff options
| author | 2009-12-20 18:06:51 +0000 | |
|---|---|---|
| committer | 2009-12-20 18:06:51 +0000 | |
| commit | 96bca46976bfc406d21413fcf0a6c33022735f2d (patch) | |
| tree | 84811c6d489f1141e9c4c3c0b7d9e51b81b8cbc4 | |
| parent | workaround for #655 (diff) | |
| download | KVIrc-96bca46976bfc406d21413fcf0a6c33022735f2d.tar.gz KVIrc-96bca46976bfc406d21413fcf0a6c33022735f2d.tar.bz2 KVIrc-96bca46976bfc406d21413fcf0a6c33022735f2d.zip | |
reworked patch for #655, many thanks to Kevin_Kofler and nucleo for pointing out the exact problem
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@3719 17fca916-40b9-46aa-a4ea-0a15b648b75c
| -rw-r--r-- | CMakeLists.txt | 67 |
1 files changed, 32 insertions, 35 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index ff29462f0..39b08caa6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -197,6 +197,38 @@ ELSE() ENDIF() ENDIF() +############################################################################ +# Check for KDE4 +# This has been moved to the top of CMakeLists.txt, since FindKde4 overwrite +# cmake's module search paths, forcing us to use their version of these +# modules (eg: FindOpenSSL, see bug #655) +############################################################################ + +OPTION(WANT_KDE4 "Whether to use KDE4 support" ON) +IF(WITHOUT_KDE4) + SET(WANT_KDE4 OFF) +ENDIF() +IF(WANT_KDE4) + FIND_PACKAGE(KDE4) + IF(KDE4_FOUND) + INCLUDE_DIRECTORIES(${KDE4_INCLUDES}) + ADD_DEFINITIONS(${KDE4_DEFINITIONS}) + SET(COMPILE_KDE_SUPPORT 1) + LIST(APPEND LIBS ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBRARY} ${KDE4_KPARTS_LIBRARY} ${KDE4_KFILE_LIBRARY} ${KDE4_KIO_LIBRARY} ${KDE4_SOLID_LIBRARY}) + SET(CMAKE_STATUS_KDE4_SUPPORT "Yes") + LIST(APPEND CMAKE_KVIRC_BUILD_FLAGS COMPILE_KDE_SUPPORT) + + # The KDE4 cmake module has a VERY WEIRD behaviour: it adds -Wl,--no-undefined + # to the CMAKE_MODULE_LINKER_FLAGS .. which is BAD + STRING(REPLACE "-Wl,--no-undefined" "" CMAKE_MODULE_LINKER_FLAGS ${CMAKE_MODULE_LINKER_FLAGS}) + ELSE() + SET(CMAKE_STATUS_KDE4_SUPPORT "Not available") + ENDIF() +ELSE() + LIST(APPEND CMAKE_KVIRC_BUILD_FLAGS WITHOUT_KDE4) + SET(CMAKE_STATUS_KDE4_SUPPORT "User disabled") +ENDIF() + ############################################################################### # # Verbose Makefile @@ -1131,41 +1163,6 @@ ENDIF() # SET(CMAKE_STATUS_GEN_USERDOC "User disabled") #ENDIF() -############################################################################ -# Check for KDE4 -# This has been moved to the end of CMakeLists.txt, since FindKde4 tends to -# add some insane compilation flags and overwrite cmake variables -# (eg: OPENSSL_LIBRARIES, see bug #655) -############################################################################ - -OPTION(WANT_KDE4 "Whether to use KDE4 support" ON) -IF(WITHOUT_KDE4) - SET(WANT_KDE4 OFF) -ENDIF() -IF(WANT_KDE4) - FIND_PACKAGE(KDE4) - IF(KDE4_FOUND) - INCLUDE_DIRECTORIES(${KDE4_INCLUDES}) - ADD_DEFINITIONS(${KDE4_DEFINITIONS}) - SET(COMPILE_KDE_SUPPORT 1) - LIST(APPEND LIBS ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBRARY} ${KDE4_KPARTS_LIBRARY} ${KDE4_KFILE_LIBRARY} ${KDE4_KIO_LIBRARY} ${KDE4_SOLID_LIBRARY}) - SET(CMAKE_STATUS_KDE4_SUPPORT "Yes") - LIST(APPEND CMAKE_KVIRC_BUILD_FLAGS COMPILE_KDE_SUPPORT) - - # The KDE4 cmake module has a VERY WEIRD behaviour: it adds -Wl,--no-undefined - # to the CMAKE_MODULE_LINKER_FLAGS .. which is BAD - STRING(REPLACE "-Wl,--no-undefined" "" CMAKE_MODULE_LINKER_FLAGS ${CMAKE_MODULE_LINKER_FLAGS}) - # With certain GCC versions it also adds some insane flags around - STRING(REPLACE "-fvisibility=hidden" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) - STRING(REPLACE "-fvisibility-inlines-hidden" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) - ELSE() - SET(CMAKE_STATUS_KDE4_SUPPORT "Not available") - ENDIF() -ELSE() - LIST(APPEND CMAKE_KVIRC_BUILD_FLAGS WITHOUT_KDE4) - SET(CMAKE_STATUS_KDE4_SUPPORT "User disabled") -ENDIF() - ############################################################################### # # We want the "distclean" target |
