Warning, /network/libktorrent/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config-ktorrent.h.cmake ${CMAKE_BINARY_DIR}/config-ktorrent.h)
0002
0003 remove_definitions(-DQT_NO_HTTP)
0004
0005 add_library(KTorrent6)
0006 set_target_properties(KTorrent6 PROPERTIES
0007 VERSION ${RELEASE_SERVICE_VERSION}
0008 SOVERSION ${SOVERSION}
0009 EXPORT_NAME KTorrent6
0010 )
0011
0012 target_sources(KTorrent6 PRIVATE
0013 util/bitset.cpp
0014 util/timer.cpp
0015 util/urlencoder.cpp
0016 util/sha1hashgen.cpp
0017 util/sha1hash.cpp
0018 util/functions.cpp
0019 util/ptrmap.cpp
0020 util/array.cpp
0021 util/error.cpp
0022 util/file.cpp
0023 util/fileops.cpp
0024 util/log.cpp
0025 util/waitjob.cpp
0026 util/autorotatelogjob.cpp
0027 util/compressfilejob.cpp
0028 util/decompressfilejob.cpp
0029 util/extractfilejob.cpp
0030 util/logsystemmanager.cpp
0031 util/pipe.cpp
0032 util/circularbuffer.cpp
0033 util/resourcemanager.cpp
0034 util/bufferpool.cpp
0035
0036 bcodec/bdecoder.cpp
0037 bcodec/bencoder.cpp
0038 bcodec/bnode.cpp
0039 bcodec/value.cpp
0040
0041 net/address.cpp
0042 net/packetsocket.cpp
0043 net/portlist.cpp
0044 net/socket.cpp
0045 net/socketmonitor.cpp
0046 net/speed.cpp
0047 net/uploadthread.cpp
0048 net/downloadthread.cpp
0049 net/networkthread.cpp
0050 net/socketgroup.cpp
0051 net/socks.cpp
0052 net/wakeuppipe.cpp
0053 net/reverseresolver.cpp
0054 net/socketdevice.cpp
0055 net/poll.cpp
0056 net/serversocket.cpp
0057 net/addressresolver.cpp
0058 net/trafficshapedsocket.cpp
0059 net/streamsocket.cpp
0060
0061 mse/bigint.cpp
0062 mse/functions.cpp
0063 mse/rc4encryptor.cpp
0064 mse/encryptedpacketsocket.cpp
0065 mse/encryptedauthenticate.cpp
0066 mse/encryptedserverauthenticate.cpp
0067
0068 peer/authenticatebase.cpp
0069 peer/authenticate.cpp
0070 peer/serverauthenticate.cpp
0071 peer/authenticationmonitor.cpp
0072 peer/chunkcounter.cpp
0073 peer/peerid.cpp
0074 peer/peer.cpp
0075 peer/peermanager.cpp
0076 peer/peerdownloader.cpp
0077 peer/peeruploader.cpp
0078 peer/packetreader.cpp
0079 peer/peerprotocolextension.cpp
0080 peer/utpex.cpp
0081 peer/utmetadata.cpp
0082 peer/accessmanager.cpp
0083 peer/badpeerslist.cpp
0084 peer/peerconnector.cpp
0085 peer/superseeder.cpp
0086 peer/connectionlimit.cpp
0087
0088 #download/piece.cpp all the code is inlined
0089 #download/request.cpp all the code is inlined
0090 download/packet.cpp
0091 download/webseed.cpp
0092 download/chunkdownload.cpp
0093 download/chunkselector.cpp
0094 download/downloader.cpp
0095 download/httpconnection.cpp
0096 download/httpresponseheader.cpp
0097 download/streamingchunkselector.cpp
0098
0099 interfaces/piecedownloader.cpp
0100 interfaces/peerinterface.cpp
0101 interfaces/peersource.cpp
0102 interfaces/torrentinterface.cpp
0103 interfaces/torrentfileinterface.cpp
0104 interfaces/trackerslist.cpp
0105 interfaces/logmonitorinterface.cpp
0106 interfaces/blocklistinterface.cpp
0107 interfaces/exitoperation.cpp
0108 interfaces/chunkdownloadinterface.cpp
0109 interfaces/monitorinterface.cpp
0110 interfaces/queuemanagerinterface.cpp
0111 interfaces/chunkselectorinterface.cpp
0112 interfaces/cachefactory.cpp
0113 interfaces/webseedinterface.cpp
0114 interfaces/trackerinterface.cpp
0115 interfaces/serverinterface.cpp
0116
0117 torrent/globals.cpp
0118 torrent/server.cpp
0119 torrent/torrent.cpp
0120 torrent/torrentfile.cpp
0121 torrent/peersourcemanager.cpp
0122 torrent/uploader.cpp
0123 torrent/timeestimator.cpp
0124 torrent/statsfile.cpp
0125 torrent/choker.cpp
0126 torrent/advancedchokealgorithm.cpp
0127 torrent/torrentcontrol.cpp
0128 torrent/torrentcreator.cpp
0129 torrent/torrentstats.cpp
0130 torrent/jobqueue.cpp
0131 torrent/job.cpp
0132 torrent/torrentfilestream.cpp
0133
0134 dht/announcetask.cpp
0135 dht/dht.cpp
0136 dht/kclosestnodessearch.cpp
0137 dht/nodelookup.cpp
0138 dht/rpcmsg.cpp
0139 dht/rpcmsgfactory.cpp
0140 dht/taskmanager.cpp
0141 dht/database.cpp
0142 dht/dhtpeersource.cpp
0143 dht/key.cpp
0144 dht/pack.cpp
0145 dht/rpcserver.cpp
0146 dht/rpcserverinterface.cpp
0147 dht/dhtbase.cpp
0148 dht/kbucket.cpp
0149 dht/kbucketentry.cpp
0150 dht/kbuckettable.cpp
0151 dht/node.cpp
0152 dht/rpccall.cpp
0153 dht/task.cpp
0154 dht/packednodecontainer.cpp
0155 dht/errmsg.cpp
0156 dht/pingreq.cpp
0157 dht/findnodereq.cpp
0158 dht/getpeersreq.cpp
0159 dht/announcereq.cpp
0160 dht/pingrsp.cpp
0161 dht/findnodersp.cpp
0162 dht/getpeersrsp.cpp
0163 dht/announcersp.cpp
0164
0165 diskio/cache.cpp
0166 diskio/chunk.cpp
0167 diskio/dndfile.cpp
0168 diskio/singlefilecache.cpp
0169 diskio/multifilecache.cpp
0170 diskio/preallocationthread.cpp
0171 diskio/preallocationjob.cpp
0172 diskio/movedatafilesjob.cpp
0173 diskio/deletedatafilesjob.cpp
0174 diskio/piecedata.cpp
0175 diskio/cachefile.cpp
0176 diskio/chunkmanager.cpp
0177
0178 tracker/httptracker.cpp
0179 tracker/tracker.cpp
0180 tracker/udptracker.cpp
0181 tracker/udptrackersocket.cpp
0182 tracker/trackermanager.cpp
0183 #tracker/httpannouncejob.cpp
0184 tracker/kioannouncejob.cpp
0185
0186 datachecker/datachecker.cpp
0187 datachecker/datacheckerthread.cpp
0188 datachecker/singledatachecker.cpp
0189 datachecker/multidatachecker.cpp
0190 datachecker/datacheckerjob.cpp
0191
0192 magnet/magnetdownloader.cpp
0193 magnet/magnetlink.cpp
0194 magnet/metadatadownload.cpp
0195
0196 utp/utpserver.cpp
0197 utp/utpserverthread.cpp
0198 utp/connection.cpp
0199 utp/localwindow.cpp
0200 utp/remotewindow.cpp
0201 utp/utpsocket.cpp
0202 utp/timevalue.cpp
0203 utp/utpprotocol.cpp
0204 utp/pollpipe.cpp
0205 utp/delaywindow.cpp
0206 utp/outputqueue.cpp
0207 utp/packetbuffer.cpp
0208
0209 upnp/soap.cpp
0210 upnp/upnpmcastsocket.cpp
0211 upnp/upnprouter.cpp
0212 upnp/upnpdescriptionparser.cpp
0213 upnp/httprequest.cpp
0214
0215 version.cpp
0216 )
0217
0218 if(NOT WIN32)
0219 # Add signalcatcher.cpp for all builds except WIN32
0220 target_sources(KTorrent6 PRIVATE util/signalcatcher.cpp)
0221 endif(NOT WIN32)
0222
0223 if(WIN32)
0224 # Compile stuff for windows
0225 target_sources(KTorrent6 PRIVATE util/win32.cpp)
0226 endif(WIN32)
0227
0228
0229 # ki18n_wrap_ui(KTorrent6 ${libktorrent_UI})
0230 # kconfig_add_kcfg_files(KTorrent6 settings.kcfgc)
0231
0232 generate_export_header(KTorrent6 BASE_NAME ktorrent)
0233
0234 target_link_libraries(KTorrent6
0235 PUBLIC
0236 KF6::Archive
0237 KF6::KIOCore
0238 KF6::KIOWidgets
0239 KF6::Solid
0240 KF6::I18n
0241 Qt6::Xml
0242 Boost::boost
0243 LibGcrypt::LibGcrypt
0244 LibGMP::LibGMP
0245 )
0246
0247 target_link_libraries(KTorrent6 PUBLIC Qt6::Core5Compat)
0248
0249 if(WIN32)
0250 target_link_libraries(KTorrent6 ws2_32)
0251 endif(WIN32)
0252 target_include_directories(KTorrent6 INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/libktorrent>")
0253 target_include_directories(KTorrent6 PUBLIC "$<BUILD_INTERFACE:${LIBKTORRENT_SOURCE_DIR}/src;${LIBKTORRENT_BINARY_DIR}/src;${LIBKTORRENT_BINARY_DIR}>")
0254
0255
0256 install(TARGETS KTorrent6 EXPORT KTorrent6Targets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0257
0258 set (interfaces_HDR
0259 interfaces/peerinterface.h
0260 interfaces/queuemanagerinterface.h
0261 interfaces/exitoperation.h
0262 interfaces/chunkdownloadinterface.h
0263 interfaces/trackerslist.h
0264 interfaces/torrentinterface.h
0265 interfaces/logmonitorinterface.h
0266 interfaces/piecedownloader.h
0267 interfaces/monitorinterface.h
0268 interfaces/blocklistinterface.h
0269 interfaces/torrentfileinterface.h
0270 interfaces/peersource.h
0271 interfaces/chunkselectorinterface.h
0272 interfaces/cachefactory.h
0273 interfaces/webseedinterface.h
0274 interfaces/trackerinterface.h
0275 interfaces/serverinterface.h
0276 )
0277
0278 set (ktorrent_HDR
0279 ${CMAKE_CURRENT_BINARY_DIR}/ktorrent_export.h
0280 ${CMAKE_BINARY_DIR}/libktorrent_version.h
0281 version.h
0282 )
0283
0284 set (bcodec_HDR
0285 bcodec/bencoder.h
0286 bcodec/bnode.h
0287 bcodec/bdecoder.h
0288 bcodec/value.h
0289 )
0290
0291 install(FILES ${bcodec_HDR} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/libktorrent/bcodec COMPONENT Devel)
0292 install(FILES ${interfaces_HDR} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/libktorrent/interfaces COMPONENT Devel)
0293 install(FILES ${migrate_HDR} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/libktorrent/migrate COMPONENT Devel)
0294 install(FILES ${ktorrent_HDR} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/libktorrent COMPONENT Devel)
0295
0296 add_subdirectory(torrent)
0297 add_subdirectory(datachecker)
0298 add_subdirectory(download)
0299 add_subdirectory(diskio)
0300 add_subdirectory(peer)
0301 add_subdirectory(net)
0302 add_subdirectory(mse)
0303 add_subdirectory(magnet)
0304 add_subdirectory(util)
0305 add_subdirectory(utp)
0306 add_subdirectory(upnp)
0307 add_subdirectory(tracker)
0308 add_subdirectory(dht)