X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2FCMakeLists.txt;h=dc790b6a2c9f24f45eb6a9a1b5a3461f34126ecc;hp=2dcabbe05f4189676e3a47ba7c1b5941b4a946b5;hb=53e50ab66a5b3fa00282545ebc22ce3433ecf42b;hpb=ce629c1db1216f2050c2864f244f409836298d25 diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt index 2dcabbe0..417e5ff3 100644 --- a/src/common/CMakeLists.txt +++ b/src/common/CMakeLists.txt @@ -1,42 +1,99 @@ -# Builds the common module +quassel_add_module(Common EXPORT) -set(QT_DONT_USE_QTGUI 1) -set(QT_USE_QTNETWORK 1) -include(${QT_USE_FILE}) - -set(SOURCES +target_sources(${TARGET} PRIVATE + abstractsignalwatcher.h + aliasmanager.cpp + authhandler.cpp backlogmanager.cpp + basichandler.cpp bufferinfo.cpp buffersyncer.cpp bufferviewconfig.cpp bufferviewmanager.cpp - global.cpp + compressor.cpp + coreinfo.cpp + ctcpevent.cpp + dccconfig.cpp + event.cpp + eventmanager.cpp + expressionmatch.cpp + funchelpers.h + highlightrulemanager.cpp identity.cpp + ignorelistmanager.cpp + internalpeer.cpp + ircchannel.cpp + ircevent.cpp + irclisthelper.cpp + ircdecoder.cpp + ircencoder.cpp + irctag.cpp + ircuser.cpp logger.cpp message.cpp + messageevent.cpp + network.cpp + networkconfig.cpp + networkevent.cpp + nickhighlightmatcher.cpp + peer.cpp + peerfactory.cpp + presetnetworks.cpp + quassel.cpp + remotepeer.cpp settings.cpp signalproxy.cpp + singleton.h syncableobject.cpp + transfer.cpp + transfermanager.cpp + types.cpp util.cpp - network.cpp - ircuser.cpp - ircchannel.cpp) - -set(HEADERS - backlogmanager.h - buffersyncer.h - bufferviewconfig.h - bufferviewmanager.h - identity.h - ircchannel.h - ircuser.h - logger.h - network.h - signalproxy.h - syncableobject.h) - -qt4_wrap_cpp(MOC ${HEADERS}) - -include_directories(${CMAKE_SOURCE_DIR}) # for version.inc and version.gen - -add_library(mod_common STATIC ${SOURCES} ${MOC}) + + serializers/serializers.cpp + + protocols/datastream/datastreampeer.cpp + protocols/legacy/legacypeer.cpp + + # needed for automoc + irccap.h + protocol.h +) + +# Needed for finding the generated version.h +target_include_directories(${TARGET} PRIVATE ${CMAKE_BINARY_DIR}) + +target_link_libraries(${TARGET} PUBLIC + ${CMAKE_DL_LIBS} + Boost::boost + Qt5::Core + Qt5::Network + ZLIB::ZLIB +) + +if (EMBED_DATA) + set_property(SOURCE quassel.cpp APPEND PROPERTY COMPILE_DEFINITIONS EMBED_DATA) +endif() + +if (HAVE_SYSLOG) + target_compile_definitions(${TARGET} PRIVATE -DHAVE_SYSLOG) +endif() + +if (WIN32) + target_sources(${TARGET} PRIVATE logbacktrace_win.cpp windowssignalwatcher.cpp) +else() + if (Backtrace_FOUND) + configure_file(backtrace_config.h.in backtrace_config.h) + target_include_directories(${TARGET} PRIVATE ${Backtrace_INCLUDE_DIRS}) + target_link_libraries(${TARGET} PRIVATE ${Backtrace_LIBRARIES}) + set_property(SOURCE logbacktrace_unix.cpp posixsignalwatcher.cpp APPEND PROPERTY COMPILE_DEFINITIONS HAVE_BACKTRACE) + endif() + target_sources(${TARGET} PRIVATE logbacktrace_unix.cpp posixsignalwatcher.cpp) +endif() + +if (APPLE) + target_sources(${TARGET} PRIVATE mac_utils.cpp) + target_link_libraries(${TARGET} PUBLIC "-framework CoreServices" "-framework CoreFoundation") +endif() + +target_link_if_exists(${TARGET} PUBLIC Quassel::Resource::I18n)