X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2FCMakeLists.txt;h=311931e962eae49cdcd3538c99345a4e0ba36ce2;hp=f67b91f8019b24793dd988f923e27dde54a0bc12;hb=0de0a17782cf478d638a532f36898197af88e0bc;hpb=63af36e607d250637aaba0bba14d2158e79c7bed diff --git a/src/qtui/CMakeLists.txt b/src/qtui/CMakeLists.txt index f67b91f8..311931e9 100644 --- a/src/qtui/CMakeLists.txt +++ b/src/qtui/CMakeLists.txt @@ -1,122 +1,172 @@ # Builds the qtui module -set(QT_DONT_USE_QTGUI 0) -set(QT_USE_QTNETWORK 1) -set(QT_USE_QTDBUS 1) -include(${QT_USE_FILE}) +set(_modules ) + +if(WITH_QT5) + list(APPEND _modules Widgets) +endif(WITH_QT5) + +if(HAVE_DBUS) + list(APPEND _modules DBus) +endif(HAVE_DBUS) + +if(HAVE_WEBKIT) + list(APPEND _modules Webkit XmlPatterns) +endif(HAVE_WEBKIT) + +setup_qt_variables(Gui Network ${_modules}) set(SOURCES aboutdlg.cpp + awaylogfilter.cpp + awaylogview.cpp bufferwidget.cpp channellistdlg.cpp chatitem.cpp chatline.cpp chatlinemodel.cpp chatlinemodelitem.cpp + chatmonitorfilter.cpp + chatmonitorview.cpp chatscene.cpp chatview.cpp + chatviewsearchbar.cpp + chatviewsearchcontroller.cpp + chatviewsettings.cpp + columnhandleitem.cpp coreconfigwizard.cpp coreconnectdlg.cpp + coreconnectionstatuswidget.cpp coreinfodlg.cpp + debugbufferviewoverlay.cpp debugconsole.cpp + debuglogwidget.cpp + debugmessagemodelfilter.cpp inputwidget.cpp - jumpkeyhandler.cpp + ircconnectionwizard.cpp + legacysystemtray.cpp + mainpage.cpp mainwin.cpp + markerlineitem.cpp + msgprocessorstatuswidget.cpp nicklistwidget.cpp qtui.cpp + qtuiapplication.cpp + qtuimessageprocessor.cpp qtuisettings.cpp qtuistyle.cpp + receivefiledlg.cpp settingsdlg.cpp settingspagedlg.cpp + simplenetworkeditor.cpp + systemtray.cpp + systraynotificationbackend.cpp + taskbarnotificationbackend.cpp titlesetter.cpp - topiclabel.cpp topicwidget.cpp - verticaldock.cpp) - -set(MOC_HDRS - aboutdlg.h - bufferwidget.h - channellistdlg.h - chatlinemodel.h - chatscene.h - chatview.h - coreconfigwizard.h - coreconnectdlg.h - coreinfodlg.h - debugconsole.h - inputwidget.h - jumpkeyhandler.h - mainwin.h - nicklistwidget.h - qtui.h - settingsdlg.h - settingspagedlg.h - titlesetter.h - topiclabel.h - topicwidget.h - verticaldock.h) - -set(HEADERS - chatitem.h - chatline.h - chatlinemodelitem.h - qtuisettings.h - qtuistyle.h) + verticaldock.cpp + webpreviewitem.cpp +) set(FORMS aboutdlg.ui bufferviewwidget.ui bufferwidget.ui channellistdlg.ui - coreaccounteditdlg.ui + chatviewsearchbar.ui coreconfigwizardintropage.ui coreconfigwizardadminuserpage.ui coreconfigwizardstorageselectionpage.ui coreconfigwizardsyncpage.ui - coreconnectdlg.ui + coreconnectauthdlg.ui + coreconnectionstatuswidget.ui coreinfodlg.ui + debugbufferviewoverlay.ui debugconsole.ui + debuglogwidget.ui inputwidget.ui - mainwin.ui + msgprocessorstatuswidget.ui nicklistwidget.ui settingsdlg.ui settingspagedlg.ui + simplenetworkeditor.ui + receivefiledlg.ui topicwidget.ui) +if(HAVE_KDE) + set(SOURCES ${SOURCES} knotificationbackend.cpp) +else(HAVE_KDE) + if(HAVE_SNORENOTIFY) + set(SOURCES ${SOURCES} snorenotificationbackend.cpp) + set(FORMS ${FORMS} snorentificationconfigwidget.ui) + endif(HAVE_SNORENOTIFY) + if(HAVE_PHONON) + set(SOURCES ${SOURCES} phononnotificationbackend.cpp) + set(FORMS ${FORMS} phononnotificationconfigwidget.ui) + include_directories(${PHONON_INCLUDES}) + endif(HAVE_PHONON) +endif(HAVE_KDE) + +if(HAVE_DBUS) + set(SOURCES ${SOURCES} statusnotifieritem.cpp statusnotifieritemdbus.cpp dockmanagernotificationbackend.cpp) + set(FORMS ${FORMS}) + if(WITH_QT5) + qt5_add_dbus_interface(DBUS ../../interfaces/org.kde.StatusNotifierWatcher.xml statusnotifierwatcher) + qt5_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml notificationsclient) + qt5_add_dbus_adaptor(DBUS ../../interfaces/org.kde.StatusNotifierItem.xml statusnotifieritemdbus.h StatusNotifierItemDBus) + else(WITH_QT5) + qt4_add_dbus_interface(DBUS ../../interfaces/org.kde.StatusNotifierWatcher.xml statusnotifierwatcher) + qt4_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml notificationsclient) + qt4_add_dbus_adaptor(DBUS ../../interfaces/org.kde.StatusNotifierItem.xml statusnotifieritemdbus.h StatusNotifierItemDBus) + endif(WITH_QT5) +endif(HAVE_DBUS) + +if(HAVE_SSL) + set(SOURCES ${SOURCES} sslinfodlg.cpp) + set(FORMS ${FORMS} sslinfodlg.ui) +endif(HAVE_SSL) + +if(INDICATEQT_FOUND) + set(SOURCES ${SOURCES} indicatornotificationbackend.cpp) + set(FORMS ${FORMS} indicatornotificationconfigwidget.ui) + include_directories(${INDICATEQT_INCLUDE_DIRS}) +endif(INDICATEQT_FOUND) + +if(HAVE_NOTIFICATION_CENTER) + set(SOURCES ${SOURCES} osxnotificationbackend.mm) +endif() + foreach(FORM ${FORMS}) set(FORMPATH ${FORMPATH} ui/${FORM}) endforeach(FORM ${FORMS}) # handle settingspages -include(settingspages/settingspages.inc) +include(settingspages/settingspages.cmake) foreach(SP ${SETTINGSPAGES}) set(SPSRC ${SPSRC} settingspages/${SP}settingspage.cpp) - set(SPHDR ${SPHDR} settingspages/${SP}settingspage.h) set(SPFRM ${SPFRM} settingspages/${SP}settingspage.ui) endforeach(SP ${SETTINGSPAGES}) foreach(SRC ${SP_SOURCES}) set(SPSRC ${SPSRC} settingspages/${SRC}) endforeach(SRC ${SP_SOURCES}) -foreach(HDR ${SP_HEADERS}) - set(SPHDR ${SPHDR} settingspages/${HDR}) -endforeach(HDR ${SP_HEADERS}) foreach(FRM ${SP_FORMS}) set(SPFRM ${SPFRM} settingspages/${FRM}) endforeach(FRM ${SP_FORMS}) - -qt4_wrap_cpp(MOC ${MOC_HDRS} ${SPHDR}) -qt4_wrap_ui(UI ${FORMPATH} ${SPFRM}) - -IF(HAVE_DBUS) - qt4_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml desktopnotifications) -ENDIF(HAVE_DBUS) - include_directories(${CMAKE_SOURCE_DIR}/src/common ${CMAKE_SOURCE_DIR}/src/client ${CMAKE_SOURCE_DIR}/src/qtui + ${CMAKE_SOURCE_DIR}/src/qtui/settingspages ${CMAKE_SOURCE_DIR}/src/uisupport - ${CMAKE_CURRENT_BINARY_DIR}) + ${CMAKE_CURRENT_BINARY_DIR} + ${QUASSEL_QT_INCLUDES}) + +if(WITH_QT5) + qt5_wrap_ui(UI ${FORMPATH} ${SPFRM}) +else(WITH_QT5) + qt4_wrap_ui(UI ${FORMPATH} ${SPFRM}) +endif(WITH_QT5) -add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${MOC} ${DBUS} ${UI} ${HEADERS}) +add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${DBUS} ${UI}) add_dependencies(mod_qtui mod_common mod_client mod_uisupport) +set_target_properties(mod_qtui PROPERTIES COMPILE_FLAGS "${QUASSEL_QT_COMPILEFLAGS}")