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)