X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=CMakeLists.txt;h=4ddaf6682dcf20526ecfb6b85fa578806c4dad2c;hp=a0a34c06a3b46eabcc4f7be4f338a2d170a02fc3;hb=a4251618e99c35f727c526f8480055d5a9c5e41f;hpb=f16f4c54f3d4d96a71cedbb2d5637f5d3bafe3d2 diff --git a/CMakeLists.txt b/CMakeLists.txt index a0a34c06..4ddaf668 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,6 +11,7 @@ # -DWITH_KDE=ON : Enable KDE4 support # -DWITH_CRYPT=OFF : Disable encryption support # -DWITH_OXYGEN=(ON|OFF) : Whether to install Oxygen icons (default: yes, unless KDE > 4.3.0 is present and enabled) +# -DWITH_SYSLOG=OFF : Disable syslog support # # -DEMBED_DATA=ON : Embed all data files in icons the binary, rather than installing them separately # @@ -22,6 +23,8 @@ project(QuasselIRC) +include(CheckIncludeFile) + # 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) @@ -46,6 +49,7 @@ option(WITH_PHONON "Enable Phonon support (for audio notifications)" ON) option(WITH_LIBINDICATE "Enable Ayatana notification support" ON) option(WITH_KDE "Enable KDE4 integration" OFF) option(WITH_CRYPT "Enable encryption support if present on system" ON) +option(WITH_SYSLOG "Use syslog for storing log data" ON) # We use icon paths from KDE 4.3.x, which are partially invalid on older and possibly # even on newer KDE versions. Do not disable this unless you are sure that your Quassel will @@ -205,6 +209,19 @@ if(BUILD_GUI) set(CLIENT_QT4_VARS ${CLIENT_QT4_VARS} DBUS) set(CLIENT_COMPILE_FLAGS "${CLIENT_COMPILE_FLAGS} -DQT_DBUS_LIB") set(HAVE_DBUS true) + + # check if we have dbusmenu as well + find_package(DBusMenuQt) + if(DBUSMENUQT_FOUND) + message(STATUS "Enabling support for exporting the tray menu via D-Bus") + add_definitions(-DHAVE_DBUSMENU) + include_directories(${DBUSMENUQT_INCLUDE_DIR}) + set(CLIENT_LIBRARIES ${CLIENT_LIBRARIES} ${DBUSMENUQT_LIBRARIES}) + set(CLIENT_COMPILE_FLAGS "${CLIENT_COMPILE_FLAGS} ${DBUSMENUQT_DEFINITIONS}") + else(DBUSMENUQT_FOUND) + message(STATUS "Disabling support for exporting the tray menu via D-Bus") + endif(DBUSMENUQT_FOUND) + else(QT_QTDBUS_FOUND) message(STATUS "QtDBus not found, disabling D-Bus support") endif(QT_QTDBUS_FOUND) @@ -235,7 +252,7 @@ if(BUILD_GUI) include_directories(${KDE4_INCLUDES}) add_definitions(-DHAVE_KDE ${KDE4_DEFINITIONS}) set(HAVE_KDE 1) - set(QUASSEL_KDE_LIBRARIES ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBRARY} ${KDE4_SOLID_LIBS} knotifyconfig) + set(CLIENT_LIBRARIES ${CLIENT_LIBRARIES} ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBRARY} ${KDE4_SOLID_LIBS} knotifyconfig) # We always use external icons for KDE4 support, since we use its iconloader rather than our own set(EMBED_DATA OFF) else(KDE4_FOUND) @@ -252,6 +269,8 @@ if(BUILD_GUI) if(PHONON_FOUND) message(STATUS "Enabling Phonon support") add_definitions(-DHAVE_PHONON) + include_directories(${PHONON_INCLUDES}) + set(CLIENT_LIBRARIES ${CLIENT_LIBRARIES} ${PHONON_LIBS}) set(HAVE_PHONON true) else(PHONON_FOUND) message(STATUS "Phonon not found, disabling audio notifications") @@ -268,6 +287,8 @@ if(BUILD_GUI) message(STATUS "Enabling Ayatana notification support") set(HAVE_INDICATEQT true) add_definitions(-DHAVE_INDICATEQT) + link_directories(${INDICATEQT_LIBRARY_DIRS}) + set(CLIENT_LIBRARIES ${CLIENT_LIBRARIES} ${INDICATEQT_LIBRARIES}) else(INDICATEQT_FOUND) message(STATUS "Disabling Ayatana notification support") endif(INDICATEQT_FOUND) @@ -298,6 +319,20 @@ if(BUILD_CORE) message(STATUS "Not enabling encryption support") endif(WITH_CRYPT) + # Setup syslog support + if(WITH_SYSLOG) + check_include_file(syslog.h HAVE_SYSLOG_H) + if(HAVE_SYSLOG_H) + message(STATUS "Enabling syslog support") + set(HAVE_SYSLOG true) + add_definitions(-DHAVE_SYSLOG) + else(HAVE_SYSLOG_H) + message(STATUS "Disabling syslog support") + endif(HAVE_SYSLOG_H) + else(WITH_SYSLOG) + message(STATUS "Not enabling syslog support") + endif(WITH_SYSLOG) + endif(BUILD_CORE) # needed to compile with mingw without kde