X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=CMakeLists.txt;h=1cd9ece90aa4edab52d01afab3c41e65abfcc892;hp=de7f3e455a08b8ea1c9f433588406d5ba40a4fc0;hb=b7a006300e7c5db7720014a2fa203b74a3cc5aa4;hpb=5d2b5335c7e74077d445f5b462e3f4633c5e4efe diff --git a/CMakeLists.txt b/CMakeLists.txt index de7f3e45..1cd9ece9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -21,7 +21,8 @@ project(QuasselIRC) -cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR) +# cmake 2.6.2 is required for KDE >=4.2 and should be widespread enough now +cmake_minimum_required(VERSION 2.6.2 FATAL_ERROR) if(COMMAND cmake_policy) cmake_policy(SET CMP0003 NEW) @@ -156,25 +157,22 @@ include(${QT_USE_FILE}) include_directories(${QT_INCLUDES}) # Setup OpenSSL +# We don't link to or include OpenSSL ourselves, but use exclusively the Qt API. +# Thus, we simply check if OpenSSL support is present in Qt's config and enable our +# own SSL stuff in this case. Qt should care for adding what it needs itself. if(WITH_OPENSSL) - find_package(OpenSSL) + if(QT_QCONFIG MATCHES "openssl") + message(STATUS "Found OpenSSL support in Qt, enabling SSL") + add_definitions(-DHAVE_SSL) + set(HAVE_SSL true) + else(QT_QCONFIG MATCHES "openssl") + message(STATUS "No OpenSSL support found in Qt, disabling SSL") + add_definitions(-DQT_NO_OPENSSL) + endif(QT_QCONFIG MATCHES "openssl") else(WITH_OPENSSL) message(STATUS "Not enabling OpenSSL support") endif(WITH_OPENSSL) -if(OPENSSL_FOUND) - if(NOT QT_DEFINITIONS MATCHES "QT_NO_OPENSSL") - message(STATUS "Found OpenSSL support in Qt") - add_definitions(-DHAVE_SSL) - set(HAVE_SSL true) - set(MOC_DEFINES ${MOC_DEFINES} -DHAVE_SSL) - else(NOT QT_DEFINITIONS MATCHES "QT_NO_OPENSSL") - message(STATUS "No OpenSSL support found in Qt, disabling") - endif(NOT QT_DEFINITIONS MATCHES "QT_NO_OPENSSL") -else(OPENSSL_FOUND) - add_definitions(-DQT_NO_OPENSSL) -endif(OPENSSL_FOUND) - # Setup D-Bus support if(WITH_DBUS) if(QT_QTDBUS_FOUND) @@ -182,7 +180,6 @@ if(WITH_DBUS) add_definitions(-DHAVE_DBUS) set(LINK_DBUS DBUS) set(HAVE_DBUS true) - set(MOC_DEFINES ${MOC_DEFINES} -DHAVE_DBUS) else(QT_QTDBUS_FOUND) message(STATUS "QtDBus not found, disabling D-Bus support") endif(QT_QTDBUS_FOUND) @@ -197,7 +194,6 @@ if(WITH_WEBKIT) add_definitions(-DHAVE_WEBKIT) set(LINK_WEBKIT WEBKIT) set(HAVE_WEBKIT true) - set(MOC_DEFINES ${MOC_DEFINES} -DHAVE_WEBKIT) else(QT_QTWEBKIT_FOUND) message(STATUS "QtWebKit not found, disabling WebKit support") endif(QT_QTWEBKIT_FOUND) @@ -213,7 +209,6 @@ if(WITH_KDE) include_directories(${KDE4_INCLUDES}) add_definitions(-DHAVE_KDE ${KDE4_DEFINITIONS}) set(HAVE_KDE 1) - set(MOC_DEFINES ${MOC_DEFINES} -DHAVE_KDE) set(QUASSEL_KDE_LIBRARIES ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBRARY} knotifyconfig) # We always use external icons for KDE4 support, since we use its iconloader rather than our own set(EMBED_DATA OFF) @@ -232,7 +227,6 @@ if(NOT HAVE_KDE) message(STATUS "Enabling Phonon support") add_definitions(-DHAVE_PHONON) set(HAVE_PHONON true) - set(MOC_DEFINES ${MOC_DEFINES} -DHAVE_PHONON) else(PHONON_FOUND) message(STATUS "Phonon not found, disabling audio notifications") endif(PHONON_FOUND) @@ -297,19 +291,14 @@ endif(STATIC AND CMAKE_COMPILER_IS_GNUCXX) if(WIN32) link_libraries(imm32 winmm dbghelp Secur32) # missing by default :/ - if(HAVE_SSL) + if(HAVE_SSL AND STATIC) + find_package(OpenSSL REQUIRED) link_libraries(${OPENSSL_LIBRARIES} libeay32MD) - endif(HAVE_SSL) + endif(HAVE_SSL AND STATIC) endif(WIN32) if(INDICATEQT_FOUND) - if(WANT_QTCLIENT) - set(DESKTOP_FILE ${XDG_APPS_INSTALL_DIR}/quasselclient.desktop) - endif(WANT_QTCLIENT) - if(WANT_MONO) - set(DESKTOP_FILE ${XDG_APPS_INSTALL_DIR}/quassel.desktop) - endif(WANT_MONO) - add_definitions(-DDESKTOP_FILE=${DESKTOP_FILE}) + add_definitions(-DXDG_APPS_INSTALL_DIR=${XDG_APPS_INSTALL_DIR}) endif(INDICATEQT_FOUND) # We need to create a version.gen