cmake: Autogenerate most of the .qrc resource files
[quassel.git] / src / core / CMakeLists.txt
1 quassel_add_module(Core)
2
3 target_sources(${TARGET} PRIVATE
4     abstractsqlstorage.cpp
5     authenticator.cpp
6     core.cpp
7     corealiasmanager.cpp
8     coreapplication.cpp
9     coreauthhandler.cpp
10     corebacklogmanager.cpp
11     corebasichandler.cpp
12     corebuffersyncer.cpp
13     corebufferviewconfig.cpp
14     corebufferviewmanager.cpp
15     coredccconfig.cpp
16     corehighlightrulemanager.cpp
17     coreidentity.cpp
18     coreignorelistmanager.cpp
19     coreircchannel.cpp
20     coreirclisthelper.cpp
21     coreircuser.cpp
22     corenetwork.cpp
23     corenetworkconfig.cpp
24     coresession.cpp
25     coresessioneventprocessor.cpp
26     coresettings.cpp
27     coretransfer.cpp
28     coretransfermanager.cpp
29     coreuserinputhandler.cpp
30     coreusersettings.cpp
31     ctcpparser.cpp
32     eventstringifier.cpp
33     identserver.cpp
34     ircparser.cpp
35     netsplit.cpp
36     oidentdconfiggenerator.cpp
37     postgresqlstorage.cpp
38     sessionthread.cpp
39     sqlauthenticator.cpp
40     sqlitestorage.cpp
41     storage.cpp
42
43     # needed for automoc
44     coreeventmanager.h
45 )
46
47 if (HAVE_SSL)
48     target_sources(${TARGET} PRIVATE sslserver.cpp)
49 endif()
50
51 if (HAVE_UMASK)
52     set_property(SOURCE oidentdconfiggenerator.cpp APPEND PROPERTY COMPILE_DEFINITIONS HAVE_UMASK)
53 endif()
54
55 if (Ldap_FOUND)
56     target_sources(${TARGET} PRIVATE ldapauthenticator.cpp)
57     target_link_libraries(${TARGET} PRIVATE Ldap::Ldap)
58     set_property(SOURCE core.cpp APPEND PROPERTY COMPILE_DEFINITIONS HAVE_LDAP)
59 endif()
60
61 if (Qca-qt5_FOUND)
62     target_sources(${TARGET} PRIVATE cipher.cpp keyevent.cpp)
63     target_link_libraries(${TARGET} PUBLIC qca-qt5)
64     target_compile_definitions(${TARGET} PUBLIC -DHAVE_QCA2)
65 endif()
66
67 target_link_libraries(${TARGET}
68     PUBLIC
69         Qt5::Core
70         Qt5::Network
71         Qt5::Script
72         Qt5::Sql
73         Quassel::Common
74 )
75
76 quassel_add_resource(Sql PATTERNS SQL/*.sql)
77 target_link_libraries(${TARGET} PUBLIC Quassel::Resource::Sql)