-SET(client_SRCS buffer.cpp buffertreemodel.cpp client.cpp clientproxy.cpp clientsettings.cpp treemodel.cpp)
-SET(client_HDRS )
-SET(client_MOCS buffer.h buffertreemodel.h client.h clientproxy.h clientsettings.h treemodel.h)
+quassel_add_module(Client)
-QT4_WRAP_CPP(_MOC ${client_MOCS})
-ADD_LIBRARY(client ${client_SRCS} ${_MOC})
-TARGET_LINK_LIBRARIES(client common)
\ No newline at end of file
+target_sources(${TARGET} PRIVATE
+ abstractmessageprocessor.cpp
+ backlogrequester.cpp
+ buffermodel.cpp
+ buffersettings.cpp
+ bufferviewoverlay.cpp
+ client.cpp
+ clientaliasmanager.cpp
+ clientauthhandler.cpp
+ clientbacklogmanager.cpp
+ clientbufferviewconfig.cpp
+ clientbufferviewmanager.cpp
+ clientidentity.cpp
+ clientignorelistmanager.cpp
+ clientirclisthelper.cpp
+ clientsettings.cpp
+ clienttransfer.cpp
+ clienttransfermanager.cpp
+ clientuserinputhandler.cpp
+ coreaccount.cpp
+ coreaccountmodel.cpp
+ coreconnection.cpp
+ execwrapper.cpp
+ irclistmodel.cpp
+ messagefilter.cpp
+ messagemodel.cpp
+ networkmodel.cpp
+ selectionmodelsynchronizer.cpp
+ transfermodel.cpp
+ treemodel.cpp
+
+ # needed for automoc
+ abstractui.h
+)
+
+target_link_libraries(${TARGET}
+ PUBLIC
+ Qt5::Core
+ Qt5::Gui
+ Qt5::Network
+ Qt5::Widgets # QAbstractItemView in BufferModel
+ Quassel::Common
+)
+
+if (EMBED_DATA)
+ set_property(SOURCE client.cpp APPEND PROPERTY COMPILE_DEFINITIONS EMBED_DATA)
+endif()
+
+target_link_if_exists(${TARGET} PUBLIC Quassel::Resource::Data)