Sync Changelog entries between branches
[qBittorrent.git] / src / base / CMakeLists.txt
blob1b96f61f20450fc3e12bf23afba4566aff7cc3da
1 add_library(qbt_base STATIC
2     # headers
3     3rdparty/expected.hpp
4     algorithm.h
5     asyncfilestorage.h
6     bittorrent/abstractfilestorage.h
7     bittorrent/addtorrentparams.h
8     bittorrent/bandwidthscheduler.h
9     bittorrent/bencoderesumedatastorage.h
10     bittorrent/cachestatus.h
11     bittorrent/common.h
12     bittorrent/customstorage.h
13     bittorrent/dbresumedatastorage.h
14     bittorrent/downloadpriority.h
15     bittorrent/filesearcher.h
16     bittorrent/filterparserthread.h
17     bittorrent/infohash.h
18     bittorrent/loadtorrentparams.h
19     bittorrent/ltqhash.h
20     bittorrent/lttypecast.h
21     bittorrent/magneturi.h
22     bittorrent/nativesessionextension.h
23     bittorrent/nativetorrentextension.h
24     bittorrent/peeraddress.h
25     bittorrent/peerinfo.h
26     bittorrent/portforwarderimpl.h
27     bittorrent/resumedatastorage.h
28     bittorrent/session.h
29     bittorrent/sessionstatus.h
30     bittorrent/speedmonitor.h
31     bittorrent/statistics.h
32     bittorrent/torrent.h
33     bittorrent/torrentcontentlayout.h
34     bittorrent/torrentcreatorthread.h
35     bittorrent/torrentimpl.h
36     bittorrent/torrentinfo.h
37     bittorrent/tracker.h
38     bittorrent/trackerentry.h
39     digest32.h
40     exceptions.h
41     global.h
42     http/connection.h
43     http/httperror.h
44     http/irequesthandler.h
45     http/requestparser.h
46     http/responsebuilder.h
47     http/responsegenerator.h
48     http/server.h
49     http/types.h
50     iconprovider.h
51     indexrange.h
52     logger.h
53     net/dnsupdater.h
54     net/downloadhandlerimpl.h
55     net/downloadmanager.h
56     net/geoipdatabase.h
57     net/geoipmanager.h
58     net/portforwarder.h
59     net/proxyconfigurationmanager.h
60     net/reverseresolution.h
61     net/smtp.h
62     orderedset.h
63     preferences.h
64     profile.h
65     profile_p.h
66     rss/rss_article.h
67     rss/rss_autodownloader.h
68     rss/rss_autodownloadrule.h
69     rss/rss_feed.h
70     rss/rss_folder.h
71     rss/rss_item.h
72     rss/rss_parser.h
73     rss/rss_session.h
74     search/searchdownloadhandler.h
75     search/searchhandler.h
76     search/searchpluginmanager.h
77     settingsstorage.h
78     tagset.h
79     torrentfileguard.h
80     torrentfileswatcher.h
81     torrentfilter.h
82     types.h
83     unicodestrings.h
84     utils/bytearray.h
85     utils/compare.h
86     utils/foreignapps.h
87     utils/fs.h
88     utils/gzip.h
89     utils/io.h
90     utils/misc.h
91     utils/net.h
92     utils/password.h
93     utils/random.h
94     utils/string.h
95     utils/version.h
96     version.h
98     # sources
99     asyncfilestorage.cpp
100     bittorrent/abstractfilestorage.cpp
101     bittorrent/bandwidthscheduler.cpp
102     bittorrent/bencoderesumedatastorage.cpp
103     bittorrent/customstorage.cpp
104     bittorrent/dbresumedatastorage.cpp
105     bittorrent/downloadpriority.cpp
106     bittorrent/filesearcher.cpp
107     bittorrent/filterparserthread.cpp
108     bittorrent/infohash.cpp
109     bittorrent/magneturi.cpp
110     bittorrent/nativesessionextension.cpp
111     bittorrent/nativetorrentextension.cpp
112     bittorrent/peeraddress.cpp
113     bittorrent/peerinfo.cpp
114     bittorrent/portforwarderimpl.cpp
115     bittorrent/session.cpp
116     bittorrent/speedmonitor.cpp
117     bittorrent/statistics.cpp
118     bittorrent/torrent.cpp
119     bittorrent/torrentcreatorthread.cpp
120     bittorrent/torrentimpl.cpp
121     bittorrent/torrentinfo.cpp
122     bittorrent/tracker.cpp
123     bittorrent/trackerentry.cpp
124     exceptions.cpp
125     http/connection.cpp
126     http/httperror.cpp
127     http/requestparser.cpp
128     http/responsebuilder.cpp
129     http/responsegenerator.cpp
130     http/server.cpp
131     iconprovider.cpp
132     logger.cpp
133     net/dnsupdater.cpp
134     net/downloadhandlerimpl.cpp
135     net/downloadmanager.cpp
136     net/geoipdatabase.cpp
137     net/geoipmanager.cpp
138     net/portforwarder.cpp
139     net/proxyconfigurationmanager.cpp
140     net/reverseresolution.cpp
141     net/smtp.cpp
142     preferences.cpp
143     profile.cpp
144     profile_p.cpp
145     rss/rss_article.cpp
146     rss/rss_autodownloader.cpp
147     rss/rss_autodownloadrule.cpp
148     rss/rss_feed.cpp
149     rss/rss_folder.cpp
150     rss/rss_item.cpp
151     rss/rss_parser.cpp
152     rss/rss_session.cpp
153     search/searchdownloadhandler.cpp
154     search/searchhandler.cpp
155     search/searchpluginmanager.cpp
156     settingsstorage.cpp
157     tagset.cpp
158     torrentfileguard.cpp
159     torrentfileswatcher.cpp
160     torrentfilter.cpp
161     utils/bytearray.cpp
162     utils/compare.cpp
163     utils/foreignapps.cpp
164     utils/fs.cpp
165     utils/gzip.cpp
166     utils/io.cpp
167     utils/misc.cpp
168     utils/net.cpp
169     utils/password.cpp
170     utils/random.cpp
171     utils/string.cpp
174 target_link_libraries(qbt_base
175     PRIVATE
176         OpenSSL::Crypto OpenSSL::SSL
177         ZLIB::ZLIB
178     PUBLIC
179         LibtorrentRasterbar::torrent-rasterbar
180         Qt::Core Qt::Network Qt::Sql Qt::Xml
181         qbt_common_cfg
184 if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
185     find_library(IOKit_LIBRARY IOKit)
186     find_library(Carbon_LIBRARY Carbon)
187     find_library(AppKit_LIBRARY AppKit)
189     target_link_libraries(qbt_base PRIVATE
190         ${AppKit_LIBRARY}
191         ${Carbon_LIBRARY}
192         ${IOKit_LIBRARY}
193     )
194 elseif (CMAKE_SYSTEM_NAME STREQUAL "Windows")
195     target_link_libraries(qbt_base PRIVATE Iphlpapi)
196 endif()
198 if (NOT GUI)
199     target_compile_definitions(qbt_base PUBLIC DISABLE_GUI)
200 endif()
202 if (NOT WEBUI)
203     target_compile_definitions(qbt_base PUBLIC DISABLE_WEBUI)
204 endif()
206 if (DBUS)
207     target_link_libraries(qbt_base PUBLIC Qt::DBus)
208 endif()