SessionState needs to be a registered meta type
[quassel.git] / src / common / CMakeLists.txt
1 # Builds the common module
2
3 setup_qt_variables(Core Network)
4
5 set(SOURCES
6     aliasmanager.cpp
7     authhandler.cpp
8     backlogmanager.cpp
9     basichandler.cpp
10     bufferinfo.cpp
11     buffersyncer.cpp
12     bufferviewconfig.cpp
13     bufferviewmanager.cpp
14     cliparser.cpp
15     coreinfo.cpp
16     ctcpevent.cpp
17     event.cpp
18     eventmanager.cpp
19     identity.cpp
20     ignorelistmanager.cpp
21     internalpeer.cpp
22     ircchannel.cpp
23     ircevent.cpp
24     irclisthelper.cpp
25     ircuser.cpp
26     logger.cpp
27     message.cpp
28     messageevent.cpp
29     network.cpp
30     networkconfig.cpp
31     networkevent.cpp
32     peer.cpp
33     quassel.cpp
34     remotepeer.cpp
35     settings.cpp
36     signalproxy.cpp
37     syncableobject.cpp
38     util.cpp
39
40     protocols/legacy/legacypeer.cpp
41 )
42
43 set(MOC_HDRS
44     aliasmanager.h
45     authhandler.h
46     backlogmanager.h
47     basichandler.h
48     buffersyncer.h
49     bufferviewconfig.h
50     bufferviewmanager.h
51     coreinfo.h
52     eventmanager.h
53     identity.h
54     ignorelistmanager.h
55     internalpeer.h
56     ircchannel.h
57     irclisthelper.h
58     ircuser.h
59     network.h
60     networkconfig.h
61     peer.h
62     remotepeer.h
63     settings.h
64     signalproxy.h
65     syncableobject.h
66
67     protocols/legacy/legacypeer.h
68 )
69
70 set(HEADERS ${MOC_HDRS}
71     abstractcliparser.h
72     bufferinfo.h
73     cliparser.h
74     ctcpevent.h
75     event.h
76     ircevent.h
77     messageevent.h
78     networkevent.h
79     logger.h
80     message.h
81     protocol.h
82     types.h
83     util.h)
84
85 if (HAVE_QCA2)
86     set(SOURCES ${SOURCES} keyevent.cpp)
87     set(HEADERS ${HEADERS} keyevent.h)
88 endif(HAVE_QCA2)
89
90 if(APPLE)
91   set(SOURCES ${SOURCES} mac_utils.cpp)
92   set(HEADERS ${HEADERS} mac_utils.h)
93 endif(APPLE)
94
95 if(CMAKE_HOST_WIN32)
96     set(SOURCES ${SOURCES} logbacktrace_win.cpp)
97 endif(CMAKE_HOST_WIN32)
98 if(CMAKE_HOST_UNIX)
99     set(SOURCES ${SOURCES} logbacktrace_unix.cpp)
100 endif(CMAKE_HOST_UNIX)
101
102 include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${QUASSEL_QT_INCLUDES})  # for version.inc and version.gen
103
104 if(NOT WITH_QT5)
105   qt4_wrap_cpp(MOC ${MOC_HDRS})
106 endif(NOT WITH_QT5)
107
108 set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES version.gen)
109
110 add_library(mod_common STATIC ${SOURCES} ${HEADERS} ${MOC})
111 set_target_properties(mod_common PROPERTIES COMPILE_FLAGS "${QUASSEL_QT_COMPILEFLAGS}")
112
113 if(APPLE)
114   target_link_libraries(mod_common "-framework CoreServices" "-framework CoreFoundation")
115 endif(APPLE)
116
117 target_link_libraries(mod_common ${CMAKE_DL_LIBS})