X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2FCMakeLists.txt;h=414bfdfe413b0f93c2cd4b98f0189306d22588a6;hp=4218661e86e67698b62f7a2331252c046fa4a9bb;hb=07b0587b932ccbfb0d93f59109b23b97ba85f4cf;hpb=5cfabc7f10123e0e4f03f76ef8ecbdd6c36df511 diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt index 4218661e..414bfdfe 100644 --- a/src/common/CMakeLists.txt +++ b/src/common/CMakeLists.txt @@ -1,61 +1,100 @@ # Builds the common module -set(QT_DONT_USE_QTGUI 1) -set(QT_USE_QTNETWORK 1) -include(${QT_USE_FILE}) - set(SOURCES aliasmanager.cpp + authhandler.cpp backlogmanager.cpp + basichandler.cpp bufferinfo.cpp buffersyncer.cpp bufferviewconfig.cpp bufferviewmanager.cpp - cliparser.cpp + compressor.cpp + ctcpevent.cpp + event.cpp + eventmanager.cpp identity.cpp + ignorelistmanager.cpp + internalpeer.cpp ircchannel.cpp + ircevent.cpp + irclisthelper.cpp ircuser.cpp logger.cpp message.cpp + messageevent.cpp network.cpp + networkconfig.cpp + networkevent.cpp + peer.cpp + peerfactory.cpp + presetnetworks.cpp quassel.cpp + remotepeer.cpp settings.cpp signalproxy.cpp syncableobject.cpp - util.cpp) - -set(MOC_HDRS - aliasmanager.h - backlogmanager.h - buffersyncer.h - bufferviewconfig.h - bufferviewmanager.h + transfer.cpp + transfermanager.cpp + util.cpp + + protocols/datastream/datastreampeer.cpp + protocols/legacy/legacypeer.cpp + + # needed for automoc coreinfo.h - identity.h - ircchannel.h - irclisthelper.h - ircuser.h - network.h - settings.h - signalproxy.h - syncableobject.h) - -set(HEADERS ${MOC_HDRS} - bufferinfo.h - cliparser.h - logger.h - message.h - types.h - util.h) - -qt4_wrap_cpp(MOC ${MOC_HDRS}) - - -include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}) # for version.inc and version.gen -add_definitions(-DHAVE_VERSION_GEN) # we ensure that by deps in the main CMakeLists.txt -set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES version.gen) - -add_library(mod_common STATIC ${SOURCES} ${MOC} ${CMAKE_BINARY_DIR}/i18n/qrc_i18n.cxx) -set_source_files_properties(${CMAKE_BINARY_DIR}/i18n/qrc_i18n.cxx PROPERTIES GENERATED true) -add_dependencies(mod_common i18n) +) + +if (USE_QT5) + list(APPEND SOURCES qt5cliparser.cpp) +else() + list(APPEND SOURCES cliparser.cpp) +endif() + +if (QCA2_FOUND OR QCA2-QT5_FOUND) + set(SOURCES ${SOURCES} keyevent.cpp) +endif() + +if (ZLIB_FOUND) + add_definitions(-DHAVE_ZLIB) + include_directories(${ZLIB_INCLUDE_DIRS}) +else() + set(SOURCES ${SOURCES} ../../3rdparty/miniz/miniz.c) +endif() + +if (USE_QT4) + set(SOURCES ${SOURCES} ../../3rdparty/sha512/sha512.c) +endif() + +if (HAVE_SYSLOG) + add_definitions(-DHAVE_SYSLOG) +endif() + +if (APPLE) + set(SOURCES ${SOURCES} mac_utils.cpp) +endif(APPLE) + +if (WIN32) + set(SOURCES ${SOURCES} logbacktrace_win.cpp) +else() + if (EXECINFO_FOUND) + add_definitions(-DHAVE_EXECINFO) + include_directories(${EXECINFO_INCLUDES}) + endif() + set(SOURCES ${SOURCES} logbacktrace_unix.cpp) +endif() + +qt_add_resources(SOURCES ${COMMON_RCS}) + +add_library(mod_common STATIC ${SOURCES}) +qt_use_modules(mod_common Core Network) + +if (APPLE) + target_link_libraries(mod_common "-framework CoreServices" "-framework CoreFoundation") +endif(APPLE) + +target_link_libraries(mod_common ${CMAKE_DL_LIBS} ${EXECINFO_LIBRARIES} ${ZLIB_LIBRARIES}) +# This is needed so translations are generated before trying to build the qrc. +# Should probably find a nicer solution with proper dependencies between the involved files, though... +add_dependencies(mod_common po)