Fix a security issue with LDAP usernames
[quassel.git] / src / core / CMakeLists.txt
1 quassel_add_module(Core EXPORT)
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     ldapescaper.cpp
36     metricsserver.cpp
37     netsplit.cpp
38     oidentdconfiggenerator.cpp
39     postgresqlstorage.cpp
40     sessionthread.cpp
41     sqlauthenticator.cpp
42     sqlitestorage.cpp
43     sslserver.cpp
44     storage.cpp
45
46     # needed for automoc
47     coreeventmanager.h
48 )
49
50 target_link_libraries(${TARGET}
51     PUBLIC
52         Qt5::Core
53         Qt5::Network
54         Qt5::Sql
55         Quassel::Common
56 )
57
58 if (HAVE_UMASK)
59     set_property(SOURCE oidentdconfiggenerator.cpp APPEND PROPERTY COMPILE_DEFINITIONS HAVE_UMASK)
60 endif()
61
62 if (Ldap_FOUND)
63     target_sources(${TARGET} PRIVATE ldapauthenticator.cpp)
64     target_link_libraries(${TARGET} PRIVATE Ldap::Ldap)
65     set_property(SOURCE core.cpp APPEND PROPERTY COMPILE_DEFINITIONS HAVE_LDAP)
66 endif()
67
68 if (Qca-qt5_FOUND)
69     target_sources(${TARGET} PRIVATE cipher.cpp keyevent.cpp)
70     target_link_libraries(${TARGET} PUBLIC qca-qt5)
71     target_compile_definitions(${TARGET} PUBLIC -DHAVE_QCA2)
72 endif()
73
74 quassel_add_resource(Sql PATTERNS SQL/*.sql)
75 target_link_libraries(${TARGET} PUBLIC Quassel::Resource::Sql)