Implement IRCv3 tag parsing and sending
[quassel.git] / src / common / CMakeLists.txt
1 quassel_add_module(Common EXPORT)
2
3 target_sources(${TARGET} PRIVATE
4     abstractsignalwatcher.h
5     aliasmanager.cpp
6     authhandler.cpp
7     backlogmanager.cpp
8     basichandler.cpp
9     bufferinfo.cpp
10     buffersyncer.cpp
11     bufferviewconfig.cpp
12     bufferviewmanager.cpp
13     compressor.cpp
14     coreinfo.cpp
15     ctcpevent.cpp
16     dccconfig.cpp
17     event.cpp
18     eventmanager.cpp
19     expressionmatch.cpp
20     funchelpers.h
21     highlightrulemanager.cpp
22     identity.cpp
23     ignorelistmanager.cpp
24     internalpeer.cpp
25     ircchannel.cpp
26     ircevent.cpp
27     irclisthelper.cpp
28     ircdecoder.cpp
29     ircencoder.cpp
30     irctag.cpp
31     ircuser.cpp
32     logger.cpp
33     message.cpp
34     messageevent.cpp
35     network.cpp
36     networkconfig.cpp
37     networkevent.cpp
38     nickhighlightmatcher.cpp
39     peer.cpp
40     peerfactory.cpp
41     presetnetworks.cpp
42     quassel.cpp
43     remotepeer.cpp
44     settings.cpp
45     signalproxy.cpp
46     singleton.h
47     syncableobject.cpp
48     transfer.cpp
49     transfermanager.cpp
50     types.cpp
51     util.cpp
52
53     serializers/serializers.cpp
54
55     protocols/datastream/datastreampeer.cpp
56     protocols/legacy/legacypeer.cpp
57
58     # needed for automoc
59     irccap.h
60     protocol.h
61 )
62
63 # Needed for finding the generated version.h
64 target_include_directories(${TARGET} PRIVATE ${CMAKE_BINARY_DIR})
65
66 target_link_libraries(${TARGET} PUBLIC
67     ${CMAKE_DL_LIBS}
68     Boost::boost
69     Qt5::Core
70     Qt5::Network
71     ZLIB::ZLIB
72 )
73
74 if (EMBED_DATA)
75     set_property(SOURCE quassel.cpp APPEND PROPERTY COMPILE_DEFINITIONS EMBED_DATA)
76 endif()
77
78 if (HAVE_SYSLOG)
79     target_compile_definitions(${TARGET} PRIVATE -DHAVE_SYSLOG)
80 endif()
81
82 if (WIN32)
83     target_sources(${TARGET} PRIVATE logbacktrace_win.cpp windowssignalwatcher.cpp)
84 else()
85     if (Backtrace_FOUND)
86         configure_file(backtrace_config.h.in backtrace_config.h)
87         target_include_directories(${TARGET} PRIVATE ${Backtrace_INCLUDE_DIRS})
88         target_link_libraries(${TARGET} PRIVATE ${Backtrace_LIBRARIES})
89         set_property(SOURCE logbacktrace_unix.cpp posixsignalwatcher.cpp APPEND PROPERTY COMPILE_DEFINITIONS HAVE_BACKTRACE)
90     endif()
91     target_sources(${TARGET} PRIVATE logbacktrace_unix.cpp posixsignalwatcher.cpp)
92 endif()
93
94 if (APPLE)
95     target_sources(${TARGET} PRIVATE mac_utils.cpp)
96     target_link_libraries(${TARGET} PUBLIC "-framework CoreServices" "-framework CoreFoundation")
97 endif()
98
99 target_link_if_exists(${TARGET} PUBLIC Quassel::Resource::I18n)