X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2FCMakeLists.txt;h=e7d72644681d2bdb5b721f5ebf4754914955817d;hp=526d424d07ac72c5703c4dd5b09186a8f8ba06a4;hb=ed5b2ff32158ae72c011eb1228f373cec05cbfeb;hpb=3156b80615b3783bde9399d0925c745fe3af262e diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt index 526d424d..e7d72644 100644 --- a/src/common/CMakeLists.txt +++ b/src/common/CMakeLists.txt @@ -1,8 +1,7 @@ -# Builds the common module +quassel_add_module(Common EXPORT) -setup_qt_variables(Core Network) - -set(SOURCES +target_sources(${TARGET} PRIVATE + abstractsignalwatcher.h aliasmanager.cpp authhandler.cpp backlogmanager.cpp @@ -11,12 +10,15 @@ set(SOURCES buffersyncer.cpp bufferviewconfig.cpp bufferviewmanager.cpp - cliparser.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 @@ -25,105 +27,70 @@ set(SOURCES irclisthelper.cpp ircuser.cpp logger.cpp + logmessage.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 + serializers/serializers.cpp + protocols/datastream/datastreampeer.cpp protocols/legacy/legacypeer.cpp - ../../3rdparty/miniz/miniz.c + # needed for automoc + irccap.h + protocol.h ) -set(MOC_HDRS - aliasmanager.h - authhandler.h - backlogmanager.h - basichandler.h - buffersyncer.h - bufferviewconfig.h - bufferviewmanager.h - compressor.h - coreinfo.h - eventmanager.h - identity.h - ignorelistmanager.h - internalpeer.h - ircchannel.h - irclisthelper.h - ircuser.h - network.h - networkconfig.h - peer.h - peerfactory.h - remotepeer.h - settings.h - signalproxy.h - syncableobject.h - transfer.h - transfermanager.h +# Needed for finding the generated version.h +target_include_directories(${TARGET} PRIVATE ${CMAKE_BINARY_DIR}) - protocols/datastream/datastreampeer.h - protocols/legacy/legacypeer.h +target_link_libraries(${TARGET} PUBLIC + ${CMAKE_DL_LIBS} + Qt5::Core + Qt5::Network + ZLIB::ZLIB ) -set(HEADERS ${MOC_HDRS} - abstractcliparser.h - bufferinfo.h - cliparser.h - ctcpevent.h - event.h - ircevent.h - messageevent.h - networkevent.h - logger.h - message.h - protocol.h - types.h - util.h) - -if (HAVE_QCA2) - set(SOURCES ${SOURCES} keyevent.cpp) - set(HEADERS ${HEADERS} keyevent.h) -endif(HAVE_QCA2) - -if(APPLE) - set(SOURCES ${SOURCES} mac_utils.cpp) - set(HEADERS ${HEADERS} mac_utils.h) -endif(APPLE) - -if(CMAKE_HOST_WIN32) - set(SOURCES ${SOURCES} logbacktrace_win.cpp) -endif(CMAKE_HOST_WIN32) -if(CMAKE_HOST_UNIX) - set(SOURCES ${SOURCES} logbacktrace_unix.cpp) -endif(CMAKE_HOST_UNIX) - -include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${QUASSEL_QT_INCLUDES}) # for version.inc and version.gen - -if(NOT WITH_QT5) - qt4_wrap_cpp(MOC ${MOC_HDRS}) -endif(NOT WITH_QT5) - -set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES version.gen) - -add_library(mod_common STATIC ${SOURCES} ${HEADERS} ${MOC}) -set_target_properties(mod_common PROPERTIES COMPILE_FLAGS "${QUASSEL_QT_COMPILEFLAGS}") - -if(APPLE) - target_link_libraries(mod_common "-framework CoreServices" "-framework CoreFoundation") -endif(APPLE) - -target_link_libraries(mod_common ${CMAKE_DL_LIBS}) +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)