cmake: Autogenerate most of the .qrc resource files
[quassel.git] / src / client / CMakeLists.txt
index b8b14e1..6f4f669 100644 (file)
@@ -1,37 +1,23 @@
-# Builds the client module
+quassel_add_module(Client)
 
-# In Qt4, we still have some minor deps to QtUi: QItemSelectionModel, QSortFilterProxyModel
-# Still in Qt5: QAbstractItemView in BufferModel
-
-set(_modules )
-
-if(WITH_QT5)
-  list(APPEND _modules Widgets)
-endif(WITH_QT5)
-
-if(HAVE_DBUS)
-  list(APPEND _modules DBus)
-endif(HAVE_DBUS)
-
-setup_qt_variables(Gui Network ${_modules})
-
-set(SOURCES
+target_sources(${TARGET} PRIVATE
     abstractmessageprocessor.cpp
-    abstractui.cpp
     backlogrequester.cpp
     buffermodel.cpp
     buffersettings.cpp
     bufferviewoverlay.cpp
     client.cpp
     clientaliasmanager.cpp
+    clientauthhandler.cpp
     clientbacklogmanager.cpp
     clientbufferviewconfig.cpp
     clientbufferviewmanager.cpp
-    clientcoreinfo.cpp
     clientidentity.cpp
     clientignorelistmanager.cpp
     clientirclisthelper.cpp
     clientsettings.cpp
+    clienttransfer.cpp
+    clienttransfermanager.cpp
     clientuserinputhandler.cpp
     coreaccount.cpp
     coreaccountmodel.cpp
@@ -42,48 +28,20 @@ set(SOURCES
     messagemodel.cpp
     networkmodel.cpp
     selectionmodelsynchronizer.cpp
-    treemodel.cpp)
+    transfermodel.cpp
+    treemodel.cpp
 
-set(MOC_HDRS
-    abstractmessageprocessor.h
+    # needed for automoc
     abstractui.h
-    buffermodel.h
-    bufferviewoverlay.h
-    client.h
-    clientaliasmanager.h
-    clientbacklogmanager.h
-    clientbufferviewconfig.h
-    clientbufferviewmanager.h
-    clientcoreinfo.h
-    clientidentity.h
-    clientignorelistmanager.h
-    clientirclisthelper.h
-    clientuserinputhandler.h
-    coreaccountmodel.h
-    coreconnection.h
-    execwrapper.h
-    irclistmodel.h
-    messagefilter.h
-    messagemodel.h
-    networkmodel.h
-    selectionmodelsynchronizer.h
-    treemodel.h)
-
-set(HEADERS
-    backlogsettings.h
-    backlogrequester.h
-    buffersettings.h
-    clientsettings.h
-    coreaccount.h
-   )
-
-include_directories(${CMAKE_SOURCE_DIR}/src/common ${QUASSEL_QT_INCLUDES})
-
-if(NOT WITH_QT5)
-  qt4_wrap_cpp(MOC ${MOC_HDRS})
-endif(NOT WITH_QT5)
-
-add_library(mod_client STATIC ${SOURCES} ${MOC} ${HEADERS})
-add_dependencies(mod_client mod_common)
-
-set_target_properties(mod_client PROPERTIES COMPILE_FLAGS "${QUASSEL_QT_COMPILEFLAGS}")
+)
+
+target_link_libraries(${TARGET}
+    PUBLIC
+        Qt5::Core
+        Qt5::Gui
+        Qt5::Network
+        Qt5::Widgets  # QAbstractItemView in BufferModel
+        Quassel::Common
+)
+
+target_link_if_exists(${TARGET} PUBLIC Quassel::Resource::Data)