-# Builds the common module
-set(QT_DONT_USE_QTGUI 1)
-set(QT_USE_QTNETWORK 1)
-include(${QT_USE_FILE})
+quassel_add_module(Common EXPORT)
-set(SOURCES
+target_sources(${TARGET} PRIVATE
+ abstractsignalwatcher.h
aliasmanager.cpp
+ authhandler.cpp
backlogmanager.cpp
basichandler.cpp
bufferinfo.cpp
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
ircchannel.cpp
ircevent.cpp
irclisthelper.cpp
+ ircdecoder.cpp
+ ircencoder.cpp
+ irctag.cpp
+ irctags.h
ircuser.cpp
logger.cpp
message.cpp
network.cpp
networkconfig.cpp
networkevent.cpp
+ nickhighlightmatcher.cpp
+ peer.cpp
+ peerfactory.cpp
+ presetnetworks.cpp
quassel.cpp
+ proxyline.cpp
+ remotepeer.cpp
settings.cpp
signalproxy.cpp
+ singleton.h
syncableobject.cpp
- util.cpp)
+ transfer.cpp
+ transfermanager.cpp
+ types.cpp
+ util.cpp
-set(MOC_HDRS
- aliasmanager.h
- backlogmanager.h
- basichandler.h
- buffersyncer.h
- bufferviewconfig.h
- bufferviewmanager.h
- coreinfo.h
- eventmanager.h
- identity.h
- ignorelistmanager.h
- ircchannel.h
- irclisthelper.h
- ircuser.h
- network.h
- networkconfig.h
- settings.h
- signalproxy.h
- syncableobject.h)
+ serializers/serializers.cpp
-set(HEADERS ${MOC_HDRS}
- abstractcliparser.h
- bufferinfo.h
- cliparser.h
- ctcpevent.h
- event.h
- ircevent.h
- networkevent.h
- messageevent.h
- logger.h
- message.h
- types.h
- util.h)
+ protocols/datastream/datastreampeer.cpp
+ protocols/legacy/legacypeer.cpp
-if(APPLE)
- set(SOURCES ${SOURCES} mac_utils.cpp)
- set(HEADERS ${HEADERS} mac_utils.h)
-endif(APPLE)
+ # needed for automoc
+ irccap.h
+ protocol.h
+)
-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)
+# Needed for finding the generated version.h
+target_include_directories(${TARGET} PRIVATE ${CMAKE_BINARY_DIR})
-qt4_wrap_cpp(MOC ${MOC_HDRS})
+target_link_libraries(${TARGET} PUBLIC
+ ${CMAKE_DL_LIBS}
+ Boost::boost
+ Qt5::Core
+ Qt5::Network
+ ZLIB::ZLIB
+)
-include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}) # for version.inc and version.gen
-set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES version.gen)
+if (EMBED_DATA)
+ set_property(SOURCE quassel.cpp APPEND PROPERTY COMPILE_DEFINITIONS EMBED_DATA)
+endif()
-add_library(mod_common STATIC ${SOURCES} ${MOC})
+if (HAVE_SYSLOG)
+ target_compile_definitions(${TARGET} PRIVATE -DHAVE_SYSLOG)
+endif()
-if(APPLE)
- target_link_libraries(mod_common "-framework CoreServices" "-framework CoreFoundation")
-endif(APPLE)
+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(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux")
- set(FIND_LIBDL TRUE)
-endif(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux")
-if(CMAKE_HOST_SYSTEM_NAME STREQUAL "kFreeBSD")
- set(FIND_LIBDL TRUE)
-endif(CMAKE_HOST_SYSTEM_NAME STREQUAL "kFreeBSD")
+if (APPLE)
+ target_sources(${TARGET} PRIVATE mac_utils.cpp)
+ target_link_libraries(${TARGET} PUBLIC "-framework CoreServices" "-framework CoreFoundation")
+endif()
-if(FIND_LIBDL)
- find_library(libdl dl)
- if(NOT libdl MATCHES "NOTFOUND")
- target_link_libraries(mod_common ${libdl})
- endif(NOT libdl MATCHES "NOTFOUND")
-endif(FIND_LIBDL)
+target_link_if_exists(${TARGET} PUBLIC Quassel::Resource::I18n)