X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2FCMakeLists.txt;h=d9bc71afba42149e24229f07f354055738ee82c0;hp=fe1d4f977c4f30c3fbb41910c09f74ad951ef9f1;hb=17ff985ad7253f98efb78390b9cc8e743b7f9deb;hpb=1cc49e5bd7542366995f501adf60da4ad90869e2 diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt index fe1d4f97..d9bc71af 100644 --- a/src/common/CMakeLists.txt +++ b/src/common/CMakeLists.txt @@ -1,20 +1,23 @@ # Builds the common module -setup_qt_variables(Core Network) - set(SOURCES 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 + # expressionmatchtests.cpp + highlightrulemanager.cpp identity.cpp ignorelistmanager.cpp internalpeer.cpp @@ -23,86 +26,90 @@ 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 syncableobject.cpp + transfer.cpp + transfermanager.cpp + types.cpp util.cpp + serializers/serializers.cpp + + protocols/datastream/datastreampeer.cpp protocols/legacy/legacypeer.cpp -) -set(MOC_HDRS - aliasmanager.h - backlogmanager.h - basichandler.h - buffersyncer.h - bufferviewconfig.h - bufferviewmanager.h - coreinfo.h - eventmanager.h - identity.h - ignorelistmanager.h - internalpeer.h - ircchannel.h - irclisthelper.h - ircuser.h - network.h - networkconfig.h - remotepeer.h - settings.h - signalproxy.h - syncableobject.h - - protocols/legacy/legacypeer.h + # needed for automoc + irccap.h + protocol.h ) -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 (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) - set(HEADERS ${HEADERS} mac_utils.h) -endif(APPLE) +if (APPLE) + set(SOURCES ${SOURCES} mac_utils.cpp) +endif() -if(CMAKE_HOST_WIN32) +if (WIN32) set(SOURCES ${SOURCES} logbacktrace_win.cpp) -endif(CMAKE_HOST_WIN32) -if(CMAKE_HOST_UNIX) +else() + if (EXECINFO_FOUND) + add_definitions(-DHAVE_EXECINFO) + include_directories(${EXECINFO_INCLUDES}) + endif() set(SOURCES ${SOURCES} logbacktrace_unix.cpp) -endif(CMAKE_HOST_UNIX) +endif() -include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR} ${QUASSEL_QT_INCLUDES}) # for version.inc and version.gen +qt_add_resources(SOURCES ${COMMON_RCS}) -if(NOT WITH_QT5) - qt4_wrap_cpp(MOC ${MOC_HDRS}) -endif(NOT WITH_QT5) +add_library(mod_common STATIC ${SOURCES}) +qt_use_modules(mod_common Core Network) -set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES version.gen) +if (APPLE) + target_link_libraries(mod_common "-framework CoreServices" "-framework CoreFoundation") +endif() -add_library(mod_common STATIC ${SOURCES} ${HEADERS} ${MOC}) -set_target_properties(mod_common PROPERTIES COMPILE_FLAGS "${QUASSEL_QT_COMPILEFLAGS}") +target_link_libraries(mod_common ${CMAKE_DL_LIBS} ${EXECINFO_LIBRARIES}) -if(APPLE) - target_link_libraries(mod_common "-framework CoreServices" "-framework CoreFoundation") -endif(APPLE) +if(ZLIB_FOUND) + target_link_libraries(mod_common ${ZLIB_LIBRARIES}) +endif() -target_link_libraries(mod_common ${CMAKE_DL_LIBS}) +# 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)