Makefile.am 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675
  1. SUBDIRS = includes
  2. bin_PROGRAMS = aria2c
  3. aria2c_SOURCES = main.cc
  4. SRCS = option_processing.cc\
  5. version_usage.cc\
  6. Context.cc Context.h\
  7. SocketCore.cc SocketCore.h\
  8. BinaryStream.h\
  9. Command.cc Command.h\
  10. AbstractCommand.cc AbstractCommand.h\
  11. InitiateConnectionCommandFactory.cc InitiateConnectionCommandFactory.h\
  12. DownloadCommand.cc DownloadCommand.h\
  13. HttpInitiateConnectionCommand.cc HttpInitiateConnectionCommand.h\
  14. HttpRequestCommand.cc HttpRequestCommand.h\
  15. HttpResponseCommand.cc HttpResponseCommand.h\
  16. HttpProxyRequestCommand.cc HttpProxyRequestCommand.h\
  17. HttpProxyResponseCommand.cc HttpProxyResponseCommand.h\
  18. HttpDownloadCommand.cc HttpDownloadCommand.h\
  19. HttpHeader.cc HttpHeader.h\
  20. HttpConnection.cc HttpConnection.h\
  21. FtpConnection.cc FtpConnection.h\
  22. FtpInitiateConnectionCommand.cc FtpInitiateConnectionCommand.h\
  23. FtpNegotiationCommand.cc FtpNegotiationCommand.h\
  24. FtpDownloadCommand.cc FtpDownloadCommand.h\
  25. FtpTunnelRequestCommand.cc FtpTunnelRequestCommand.h\
  26. FtpTunnelResponseCommand.cc FtpTunnelResponseCommand.h\
  27. DownloadEngine.cc DownloadEngine.h\
  28. Segment.h\
  29. GrowSegment.cc GrowSegment.h\
  30. PiecedSegment.cc PiecedSegment.h\
  31. SegmentMan.cc SegmentMan.h\
  32. util.cc util.h\
  33. Request.cc Request.h\
  34. common.h\
  35. message.h\
  36. Exception.cc Exception.h\
  37. FatalException.cc FatalException.h\
  38. RecoverableException.cc RecoverableException.h\
  39. DlAbortEx.cc DlAbortEx.h\
  40. DlRetryEx.cc DlRetryEx.h\
  41. DownloadFailureException.cc DownloadFailureException.h\
  42. Logger.cc Logger.h\
  43. fmt.cc fmt.h\
  44. DiskWriter.h\
  45. DiskWriterFactory.h\
  46. AbstractDiskWriter.cc AbstractDiskWriter.h\
  47. DefaultDiskWriter.cc DefaultDiskWriter.h\
  48. DefaultDiskWriterFactory.cc DefaultDiskWriterFactory.h\
  49. File.cc File.h\
  50. Option.cc Option.h\
  51. base64.h\
  52. base32.cc base32.h\
  53. LogFactory.cc LogFactory.h\
  54. TimerA2.cc TimerA2.h\
  55. TimeA2.cc TimeA2.h\
  56. FeatureConfig.cc FeatureConfig.h\
  57. DownloadEngineFactory.cc DownloadEngineFactory.h\
  58. SpeedCalc.cc SpeedCalc.h\
  59. PeerStat.cc PeerStat.h\
  60. NetStat.cc NetStat.h\
  61. BitfieldMan.cc BitfieldMan.h\
  62. Randomizer.h\
  63. SimpleRandomizer.cc SimpleRandomizer.h\
  64. HttpResponse.cc HttpResponse.h\
  65. HttpRequest.cc HttpRequest.h\
  66. Range.cc Range.h\
  67. AbstractProxyRequestCommand.cc AbstractProxyRequestCommand.h\
  68. AbstractProxyResponseCommand.cc AbstractProxyResponseCommand.h\
  69. Netrc.cc Netrc.h\
  70. AuthConfig.cc AuthConfig.h\
  71. AuthResolver.h\
  72. AbstractAuthResolver.cc AbstractAuthResolver.h\
  73. DefaultAuthResolver.cc DefaultAuthResolver.h\
  74. NetrcAuthResolver.cc NetrcAuthResolver.h\
  75. AuthConfigFactory.cc AuthConfigFactory.h\
  76. OptionParser.cc OptionParser.h\
  77. OptionHandlerFactory.cc OptionHandlerFactory.h\
  78. OptionHandler.cc OptionHandler.h\
  79. OptionHandlerImpl.cc OptionHandlerImpl.h\
  80. AbstractOptionHandler.cc AbstractOptionHandler.h\
  81. NameResolver.cc NameResolver.h\
  82. RequestGroup.cc RequestGroup.h\
  83. RequestGroupMan.cc RequestGroupMan.h\
  84. FileAllocationMan.h\
  85. FileAllocationCommand.cc FileAllocationCommand.h\
  86. FillRequestGroupCommand.cc FillRequestGroupCommand.h\
  87. FileAllocationDispatcherCommand.cc FileAllocationDispatcherCommand.h\
  88. FileAllocationEntry.cc FileAllocationEntry.h\
  89. StreamFileAllocationEntry.cc StreamFileAllocationEntry.h\
  90. MultiUrlRequestInfo.cc MultiUrlRequestInfo.h\
  91. UriListParser.cc UriListParser.h\
  92. RealtimeCommand.cc RealtimeCommand.h\
  93. ProgressAwareEntry.h\
  94. RequestGroupEntry.cc RequestGroupEntry.h\
  95. Cookie.cc Cookie.h\
  96. HttpHeaderProcessor.cc HttpHeaderProcessor.h\
  97. FileEntry.cc FileEntry.h\
  98. Platform.cc Platform.h\
  99. TimeBasedCommand.cc TimeBasedCommand.h\
  100. AutoSaveCommand.cc AutoSaveCommand.h\
  101. PieceStorage.h\
  102. DefaultPieceStorage.cc DefaultPieceStorage.h\
  103. UnknownLengthPieceStorage.cc UnknownLengthPieceStorage.h\
  104. PieceStatMan.cc PieceStatMan.h\
  105. StatCalc.h\
  106. ConsoleStatCalc.cc ConsoleStatCalc.h\
  107. TransferStat.cc TransferStat.h\
  108. Dependency.h\
  109. BtProgressInfoFile.h\
  110. DefaultBtProgressInfoFile.cc DefaultBtProgressInfoFile.h\
  111. NullProgressInfoFile.h\
  112. FileAllocationIterator.h\
  113. SingleFileAllocationIterator.cc SingleFileAllocationIterator.h\
  114. RequestGroupCriteria.h\
  115. ContentTypeRequestGroupCriteria.cc ContentTypeRequestGroupCriteria.h\
  116. DownloadHandler.cc DownloadHandler.h\
  117. DownloadHandlerConstants.cc DownloadHandlerConstants.h\
  118. DownloadHandlerFactory.cc DownloadHandlerFactory.h\
  119. MemoryPreDownloadHandler.h\
  120. MemoryBufferPreDownloadHandler.h\
  121. HaveEraseCommand.cc HaveEraseCommand.h\
  122. Piece.cc Piece.h\
  123. CheckIntegrityMan.h\
  124. CheckIntegrityEntry.cc CheckIntegrityEntry.h\
  125. PieceHashCheckIntegrityEntry.cc PieceHashCheckIntegrityEntry.h\
  126. StreamCheckIntegrityEntry.cc StreamCheckIntegrityEntry.h\
  127. IteratableValidator.h\
  128. DiskAdaptor.cc DiskAdaptor.h\
  129. AbstractSingleDiskAdaptor.cc AbstractSingleDiskAdaptor.h\
  130. DirectDiskAdaptor.cc DirectDiskAdaptor.h\
  131. MultiDiskAdaptor.cc MultiDiskAdaptor.h\
  132. MultiFileAllocationIterator.cc MultiFileAllocationIterator.h\
  133. ByteArrayDiskWriter.cc ByteArrayDiskWriter.h\
  134. ByteArrayDiskWriterFactory.h\
  135. DownloadContext.cc DownloadContext.h\
  136. TimedHaltCommand.cc TimedHaltCommand.h\
  137. CUIDCounter.cc CUIDCounter.h\
  138. DNSCache.cc DNSCache.h\
  139. DownloadResult.cc DownloadResult.h\
  140. PostDownloadHandler.h\
  141. PreDownloadHandler.h\
  142. SingletonHolder.h\
  143. TrueRequestGroupCriteria.h\
  144. a2algo.h\
  145. a2functional.h\
  146. a2io.h\
  147. a2netcompat.h\
  148. a2time.h\
  149. array_fun.h\
  150. help_tags.cc help_tags.h\
  151. prefs.cc prefs.h\
  152. usage_text.h\
  153. ProtocolDetector.cc ProtocolDetector.h\
  154. NullStatCalc.h\
  155. HttpSkipResponseCommand.cc HttpSkipResponseCommand.h\
  156. InitiateConnectionCommand.cc InitiateConnectionCommand.h\
  157. FtpFinishDownloadCommand.cc FtpFinishDownloadCommand.h\
  158. A2STR.cc A2STR.h\
  159. RarestPieceSelector.cc RarestPieceSelector.h\
  160. Signature.cc Signature.h\
  161. ServerStat.cc ServerStat.h\
  162. ServerStatMan.cc ServerStatMan.h\
  163. URISelector.h\
  164. AdaptiveURISelector.cc AdaptiveURISelector.h\
  165. InorderURISelector.cc InorderURISelector.h\
  166. FeedbackURISelector.cc FeedbackURISelector.h\
  167. NsCookieParser.cc NsCookieParser.h\
  168. CookieStorage.cc CookieStorage.h\
  169. SocketBuffer.cc SocketBuffer.h\
  170. SocketRecvBuffer.cc SocketRecvBuffer.h\
  171. OptionHandlerException.cc OptionHandlerException.h\
  172. URIResult.cc URIResult.h\
  173. EventPoll.h\
  174. SelectEventPoll.cc SelectEventPoll.h\
  175. SequentialPicker.h\
  176. SequentialDispatcherCommand.h\
  177. PieceSelector.h\
  178. LongestSequencePieceSelector.cc LongestSequencePieceSelector.h\
  179. bitfield.cc bitfield.h\
  180. CreateRequestCommand.cc CreateRequestCommand.h\
  181. error_code.h\
  182. wallclock.cc wallclock.h\
  183. download_helper.cc download_helper.h\
  184. MetadataInfo.cc MetadataInfo.h\
  185. SessionSerializer.cc SessionSerializer.h\
  186. Event.h\
  187. timespec.h\
  188. ValueBase.cc ValueBase.h\
  189. ContextAttribute.cc ContextAttribute.h\
  190. TorrentAttribute.cc TorrentAttribute.h\
  191. AdaptiveFileAllocationIterator.cc AdaptiveFileAllocationIterator.h\
  192. TruncFileAllocationIterator.cc TruncFileAllocationIterator.h\
  193. StreamFilter.cc StreamFilter.h\
  194. SinkStreamFilter.cc SinkStreamFilter.h\
  195. ChunkedDecodingStreamFilter.cc ChunkedDecodingStreamFilter.h\
  196. NullSinkStreamFilter.cc NullSinkStreamFilter.h\
  197. uri.cc uri.h\
  198. uri_split.c uri_split.h\
  199. cookie_helper.cc cookie_helper.h\
  200. json.cc json.h\
  201. JsonParser.cc JsonParser.h\
  202. StructParserStateMachine.h\
  203. GenericParser.h\
  204. ValueBaseJsonParser.h\
  205. ValueBaseStructParserState.h\
  206. ValueBaseStructParserStateImpl.cc ValueBaseStructParserStateImpl.h\
  207. ValueBaseStructParserStateMachine.cc ValueBaseStructParserStateMachine.h\
  208. JsonDiskWriter.h\
  209. HttpServerBodyCommand.cc HttpServerBodyCommand.h\
  210. RpcRequest.cc RpcRequest.h\
  211. RpcMethod.cc RpcMethod.h\
  212. RpcMethodImpl.cc RpcMethodImpl.h\
  213. RpcMethodFactory.cc RpcMethodFactory.h\
  214. RpcResponse.cc RpcResponse.h\
  215. HttpListenCommand.cc HttpListenCommand.h\
  216. HttpServerCommand.cc HttpServerCommand.h\
  217. HttpServerResponseCommand.cc HttpServerResponseCommand.h\
  218. AbstractHttpServerResponseCommand.cc \
  219. AbstractHttpServerResponseCommand.h \
  220. HttpServer.cc HttpServer.h\
  221. StreamPieceSelector.h\
  222. DefaultStreamPieceSelector.cc DefaultStreamPieceSelector.h\
  223. InorderStreamPieceSelector.cc InorderStreamPieceSelector.h\
  224. GeomStreamPieceSelector.cc GeomStreamPieceSelector.h\
  225. MetalinkHttpEntry.cc MetalinkHttpEntry.h\
  226. OutputFile.h\
  227. NullOutputFile.h\
  228. console.cc console.h\
  229. IOFile.cc IOFile.h\
  230. BufferedFile.cc BufferedFile.h\
  231. SegList.h\
  232. NullHandle.h\
  233. a2iterator.h\
  234. paramed_string.cc paramed_string.h\
  235. rpc_helper.cc rpc_helper.h\
  236. WatchProcessCommand.cc WatchProcessCommand.h\
  237. UnknownOptionException.cc UnknownOptionException.h\
  238. Notifier.cc Notifier.h\
  239. ValueBaseDiskWriter.h\
  240. AnonDiskWriterFactory.h\
  241. XmlRpcRequestParserController.cc XmlRpcRequestParserController.h\
  242. WrDiskCache.cc WrDiskCache.h\
  243. WrDiskCacheEntry.cc WrDiskCacheEntry.h\
  244. GroupId.cc GroupId.h\
  245. IndexedList.h\
  246. SaveSessionCommand.h SaveSessionCommand.cc\
  247. BackupIPv4ConnectCommand.h BackupIPv4ConnectCommand.cc\
  248. ConnectCommand.cc ConnectCommand.h\
  249. ControlChain.h\
  250. HttpRequestConnectChain.h\
  251. HttpProxyRequestConnectChain.h\
  252. FtpNegotiationConnectChain.h\
  253. FtpTunnelRequestConnectChain.h\
  254. Lock.h
  255. # Android NDK R8e does not provide ftruncate64. Use assembly code from
  256. # android source code and link it.
  257. if ANDROID_ARM
  258. SRCS += android/arm-ftruncate64.S
  259. endif # ANDROID_ARM
  260. if ANDROID_MIPS
  261. SRCS += android/mips-ftruncate64.S
  262. endif # ANDROID_MIPS
  263. if ANDROID_X86
  264. SRCS += android/x86-ftruncate64.S android/x86-asm.h
  265. endif # ANDROID_X86
  266. if MINGW_BUILD
  267. SRCS += WinConsoleFile.cc WinConsoleFile.h
  268. endif # MINGW_BUILD
  269. if ENABLE_WEBSOCKET
  270. SRCS += WebSocketSession.cc WebSocketSession.h\
  271. WebSocketSessionMan.cc WebSocketSessionMan.h\
  272. WebSocketResponseCommand.cc WebSocketResponseCommand.h\
  273. WebSocketInteractionCommand.cc WebSocketInteractionCommand.h
  274. endif # ENABLE_WEBSOCKET
  275. if !ENABLE_WEBSOCKET
  276. SRCS += NullWebSocketSessionMan.h
  277. endif # !ENABLE_WEBSOCKET
  278. if HAVE_SOME_XMLLIB
  279. SRCS += XmlAttr.cc XmlAttr.h\
  280. XmlParser.cc XmlParser.h\
  281. ParserStateMachine.h
  282. endif # HAVE_SOME_XMLLIB
  283. if HAVE_LIBXML2
  284. SRCS += Xml2XmlParser.cc Xml2XmlParser.h
  285. endif # HAVE_LIBXML2
  286. if HAVE_LIBEXPAT
  287. SRCS += ExpatXmlParser.cc ExpatXmlParser.h
  288. endif # HAVE_LIBEXPAT
  289. if ENABLE_XML_RPC
  290. SRCS += XmlRpcRequestParserStateMachine.cc XmlRpcRequestParserStateMachine.h\
  291. XmlRpcRequestParserState.h\
  292. XmlRpcRequestParserStateImpl.cc XmlRpcRequestParserStateImpl.h\
  293. XmlRpcDiskWriter.cc XmlRpcDiskWriter.h
  294. endif # ENABLE_XML_RPC
  295. if HAVE_SOME_FALLOCATE
  296. SRCS += FallocFileAllocationIterator.cc FallocFileAllocationIterator.h
  297. endif # HAVE_SOME_FALLOCATE
  298. if HAVE_EPOLL
  299. SRCS += EpollEventPoll.cc EpollEventPoll.h
  300. endif # HAVE_EPOLL
  301. if ENABLE_SSL
  302. SRCS += TLSContext.h TLSSession.h
  303. endif # ENABLE_SSL
  304. if USE_APPLE_MD
  305. SRCS += AppleMessageDigestImpl.cc AppleMessageDigestImpl.h
  306. endif # USE_APPLE_MD
  307. if HAVE_APPLETLS
  308. SRCS += AppleTLSContext.cc AppleTLSContext.h \
  309. AppleTLSSession.cc AppleTLSSession.h
  310. endif # HAVE_APPLETLS
  311. if HAVE_LIBGNUTLS
  312. SRCS += LibgnutlsTLSContext.cc LibgnutlsTLSContext.h \
  313. LibgnutlsTLSSession.cc LibgnutlsTLSSession.h
  314. endif # HAVE_LIBGNUTLS
  315. if HAVE_LIBGCRYPT
  316. SRCS += LibgcryptARC4Encryptor.cc LibgcryptARC4Encryptor.h \
  317. LibgcryptDHKeyExchange.cc LibgcryptDHKeyExchange.h
  318. if USE_LIBGCRYPT_MD
  319. SRCS += LibgcryptMessageDigestImpl.cc LibgcryptMessageDigestImpl.h
  320. endif # USE_LIBGCRYPT_MD
  321. endif # HAVE_LIBGCRYPT
  322. if HAVE_LIBNETTLE
  323. SRCS += LibnettleARC4Encryptor.cc LibnettleARC4Encryptor.h
  324. if USE_LIBNETTLE_MD
  325. SRCS += LibnettleMessageDigestImpl.cc LibnettleMessageDigestImpl.h
  326. endif # USE_LIBNETTLE_MD
  327. endif # HAVE_LIBNETTLE
  328. if HAVE_LIBGMP
  329. SRCS += a2gmp.cc a2gmp.h \
  330. LibgmpDHKeyExchange.cc LibgmpDHKeyExchange.h
  331. endif # HAVE_LIBGMP
  332. if HAVE_OPENSSL
  333. SRCS += LibsslARC4Encryptor.cc LibsslARC4Encryptor.h \
  334. LibsslDHKeyExchange.cc LibsslDHKeyExchange.h
  335. if !HAVE_APPLETLS
  336. SRCS += LibsslTLSContext.cc LibsslTLSContext.h \
  337. LibsslTLSSession.cc LibsslTLSSession.h
  338. endif # !HAVE_APPLETLS
  339. if USE_OPENSSL_MD
  340. SRCS += LibsslMessageDigestImpl.cc LibsslMessageDigestImpl.h
  341. endif
  342. endif # HAVE_OPENSSL
  343. if HAVE_ZLIB
  344. SRCS += GZipEncoder.cc GZipEncoder.h\
  345. GZipDecodingStreamFilter.cc GZipDecodingStreamFilter.h\
  346. GZipFile.cc GZipFile.h
  347. endif # HAVE_ZLIB
  348. if HAVE_SQLITE3
  349. SRCS += Sqlite3CookieParser.cc Sqlite3CookieParser.h\
  350. Sqlite3CookieParserImpl.cc Sqlite3CookieParserImpl.h
  351. endif # HAVE_SQLITE3
  352. if ENABLE_ASYNC_DNS
  353. SRCS += AsyncNameResolver.cc AsyncNameResolver.h\
  354. AsyncNameResolverMan.cc AsyncNameResolverMan.h
  355. endif # ENABLE_ASYNC_DNS
  356. if ENABLE_MESSAGE_DIGEST
  357. SRCS += IteratableChunkChecksumValidator.cc IteratableChunkChecksumValidator.h\
  358. IteratableChecksumValidator.cc IteratableChecksumValidator.h\
  359. CheckIntegrityDispatcherCommand.cc CheckIntegrityDispatcherCommand.h\
  360. CheckIntegrityCommand.cc CheckIntegrityCommand.h\
  361. ChecksumCheckIntegrityEntry.cc ChecksumCheckIntegrityEntry.h\
  362. message_digest_helper.cc message_digest_helper.h\
  363. Checksum.cc Checksum.h\
  364. ChunkChecksum.cc ChunkChecksum.h\
  365. MessageDigest.cc MessageDigest.h\
  366. MessageDigestImpl.h\
  367. HashFuncEntry.h
  368. endif # ENABLE_MESSAGE_DIGEST
  369. if ENABLE_BITTORRENT
  370. SRCS += PeerAbstractCommand.cc PeerAbstractCommand.h\
  371. PeerInitiateConnectionCommand.cc PeerInitiateConnectionCommand.h\
  372. PeerInteractionCommand.cc PeerInteractionCommand.h\
  373. Peer.cc Peer.h\
  374. PeerSessionResource.cc PeerSessionResource.h\
  375. PeerConnection.cc PeerConnection.h\
  376. PeerListenCommand.cc PeerListenCommand.h\
  377. BtRegistry.cc BtRegistry.h\
  378. RequestSlot.cc RequestSlot.h\
  379. TrackerWatcherCommand.cc TrackerWatcherCommand.h\
  380. PeerChokeCommand.cc PeerChokeCommand.h\
  381. SeedCriteria.h\
  382. TimeSeedCriteria.cc TimeSeedCriteria.h\
  383. ShareRatioSeedCriteria.cc ShareRatioSeedCriteria.h\
  384. UnionSeedCriteria.cc UnionSeedCriteria.h\
  385. SeedCheckCommand.cc SeedCheckCommand.h\
  386. AnnounceTier.cc AnnounceTier.h\
  387. AnnounceList.h AnnounceList.cc\
  388. PeerStorage.h\
  389. DefaultPeerStorage.cc DefaultPeerStorage.h\
  390. BtAnnounce.cc BtAnnounce.h\
  391. DefaultBtAnnounce.cc DefaultBtAnnounce.h\
  392. BtRuntime.cc BtRuntime.h\
  393. BtMessage.h\
  394. AbstractBtMessage.cc AbstractBtMessage.h\
  395. SimpleBtMessage.cc SimpleBtMessage.h\
  396. BtAllowedFastMessage.cc BtAllowedFastMessage.h\
  397. BtBitfieldMessage.cc BtBitfieldMessage.h\
  398. BtCancelMessage.cc BtCancelMessage.h\
  399. BtChokeMessage.cc BtChokeMessage.h\
  400. BtHaveAllMessage.cc BtHaveAllMessage.h\
  401. BtHaveMessage.cc BtHaveMessage.h\
  402. BtHaveNoneMessage.cc BtHaveNoneMessage.h\
  403. BtInterestedMessage.cc BtInterestedMessage.h\
  404. BtKeepAliveMessage.cc BtKeepAliveMessage.h\
  405. BtNotInterestedMessage.cc BtNotInterestedMessage.h\
  406. BtPieceMessage.cc BtPieceMessage.h\
  407. BtPortMessage.cc BtPortMessage.h\
  408. BtRejectMessage.cc BtRejectMessage.h\
  409. BtRequestMessage.cc BtRequestMessage.h\
  410. BtSuggestPieceMessage.cc BtSuggestPieceMessage.h\
  411. BtUnchokeMessage.cc BtUnchokeMessage.h\
  412. BtHandshakeMessage.cc BtHandshakeMessage.h\
  413. BtMessageValidator.h\
  414. BtBitfieldMessageValidator.cc BtBitfieldMessageValidator.h\
  415. BtPieceMessageValidator.cc BtPieceMessageValidator.h\
  416. BtHandshakeMessageValidator.cc BtHandshakeMessageValidator.h\
  417. BtMessageFactory.h\
  418. DefaultBtMessageFactory.cc DefaultBtMessageFactory.h\
  419. BtMessageDispatcher.h\
  420. DefaultBtMessageDispatcher.cc DefaultBtMessageDispatcher.h\
  421. BtMessageReceiver.h\
  422. DefaultBtMessageReceiver.cc DefaultBtMessageReceiver.h\
  423. BtRequestFactory.h\
  424. DefaultBtRequestFactory.cc DefaultBtRequestFactory.h\
  425. BtCancelSendingPieceEvent.h\
  426. BtAbortOutstandingRequestEvent.cc BtAbortOutstandingRequestEvent.h\
  427. BtChokingEvent.h\
  428. BtInteractive.h\
  429. DefaultBtInteractive.cc DefaultBtInteractive.h\
  430. ActivePeerConnectionCommand.cc ActivePeerConnectionCommand.h\
  431. BtDependency.cc BtDependency.h\
  432. PeerReceiveHandshakeCommand.cc PeerReceiveHandshakeCommand.h\
  433. BtSetup.cc BtSetup.h\
  434. BtFileAllocationEntry.cc BtFileAllocationEntry.h\
  435. BtPostDownloadHandler.cc BtPostDownloadHandler.h\
  436. BtCheckIntegrityEntry.cc BtCheckIntegrityEntry.h\
  437. BtExtendedMessage.cc BtExtendedMessage.h\
  438. ExtensionMessage.h\
  439. ExtensionMessageFactory.h\
  440. DefaultExtensionMessageFactory.cc DefaultExtensionMessageFactory.h\
  441. HandshakeExtensionMessage.cc HandshakeExtensionMessage.h\
  442. UTPexExtensionMessage.cc UTPexExtensionMessage.h\
  443. UTMetadataExtensionMessage.cc UTMetadataExtensionMessage.h\
  444. UTMetadataRequestExtensionMessage.cc\
  445. UTMetadataRequestExtensionMessage.h\
  446. UTMetadataRejectExtensionMessage.cc UTMetadataRejectExtensionMessage.h\
  447. UTMetadataDataExtensionMessage.cc UTMetadataDataExtensionMessage.h\
  448. UTMetadataRequestTracker.cc UTMetadataRequestTracker.h\
  449. UTMetadataRequestFactory.cc UTMetadataRequestFactory.h\
  450. UTMetadataPostDownloadHandler.cc UTMetadataPostDownloadHandler.h\
  451. magnet.cc magnet.h\
  452. DHTNode.cc DHTNode.h\
  453. DHTBucket.cc DHTBucket.h\
  454. DHTRoutingTable.cc DHTRoutingTable.h\
  455. DHTMessageEntry.cc DHTMessageEntry.h\
  456. DHTMessageDispatcher.h\
  457. DHTMessageDispatcherImpl.cc DHTMessageDispatcherImpl.h\
  458. DHTMessageReceiver.cc DHTMessageReceiver.h\
  459. DHTMessageTracker.cc DHTMessageTracker.h\
  460. DHTMessageTrackerEntry.cc DHTMessageTrackerEntry.h\
  461. DHTMessage.cc DHTMessage.h\
  462. DHTConnection.h\
  463. DHTConnectionImpl.cc DHTConnectionImpl.h\
  464. DHTAbstractMessage.cc DHTAbstractMessage.h\
  465. DHTQueryMessage.cc DHTQueryMessage.h\
  466. DHTResponseMessage.cc DHTResponseMessage.h\
  467. DHTPingMessage.cc DHTPingMessage.h\
  468. DHTPingReplyMessage.cc DHTPingReplyMessage.h\
  469. DHTFindNodeMessage.cc DHTFindNodeMessage.h\
  470. DHTFindNodeReplyMessage.cc DHTFindNodeReplyMessage.h\
  471. DHTGetPeersMessage.cc DHTGetPeersMessage.h\
  472. DHTGetPeersReplyMessage.cc DHTGetPeersReplyMessage.h\
  473. DHTAnnouncePeerMessage.cc DHTAnnouncePeerMessage.h\
  474. DHTAnnouncePeerReplyMessage.cc DHTAnnouncePeerReplyMessage.h\
  475. DHTUnknownMessage.cc DHTUnknownMessage.h\
  476. DHTMessageFactory.h\
  477. DHTMessageFactoryImpl.cc DHTMessageFactoryImpl.h\
  478. DHTNodeLookupTask.cc DHTNodeLookupTask.h\
  479. DHTNodeLookupEntry.cc DHTNodeLookupEntry.h\
  480. DHTBucketTree.cc DHTBucketTree.h\
  481. DHTMessageCallback.h\
  482. DHTNodeLookupTaskCallback.cc DHTNodeLookupTaskCallback.h\
  483. DHTPingReplyMessageCallback.h\
  484. DHTPeerLookupTaskCallback.cc DHTPeerLookupTaskCallback.h\
  485. DHTAbstractTask.cc DHTAbstractTask.h\
  486. DHTTask.h\
  487. DHTPingTask.cc DHTPingTask.h\
  488. DHTTaskQueue.h\
  489. DHTTaskQueueImpl.cc DHTTaskQueueImpl.h\
  490. DHTTaskExecutor.cc DHTTaskExecutor.h\
  491. DHTBucketRefreshTask.cc DHTBucketRefreshTask.h\
  492. DHTAbstractNodeLookupTask.h\
  493. DHTPeerLookupTask.cc DHTPeerLookupTask.h\
  494. DHTSetup.cc DHTSetup.h\
  495. DHTTaskFactory.h\
  496. DHTTaskFactoryImpl.cc DHTTaskFactoryImpl.h\
  497. DHTInteractionCommand.cc DHTInteractionCommand.h\
  498. DHTPeerAnnounceEntry.cc DHTPeerAnnounceEntry.h\
  499. DHTPeerAnnounceStorage.cc DHTPeerAnnounceStorage.h\
  500. DHTTokenTracker.cc DHTTokenTracker.h\
  501. DHTGetPeersCommand.cc DHTGetPeersCommand.h\
  502. DHTTokenUpdateCommand.cc DHTTokenUpdateCommand.h\
  503. DHTBucketRefreshCommand.cc DHTBucketRefreshCommand.h\
  504. DHTPeerAnnounceCommand.cc DHTPeerAnnounceCommand.h\
  505. DHTReplaceNodeTask.cc DHTReplaceNodeTask.h\
  506. DHTEntryPointNameResolveCommand.cc DHTEntryPointNameResolveCommand.h\
  507. DHTRoutingTableSerializer.cc DHTRoutingTableSerializer.h\
  508. DHTRoutingTableDeserializer.cc DHTRoutingTableDeserializer.h\
  509. DHTAutoSaveCommand.cc DHTAutoSaveCommand.h\
  510. DHTRegistry.cc DHTRegistry.h\
  511. DHTIDCloser.h\
  512. DHTConstants.h\
  513. XORCloser.h\
  514. PeerAddrEntry.cc PeerAddrEntry.h\
  515. InitiatorMSEHandshakeCommand.cc InitiatorMSEHandshakeCommand.h\
  516. ReceiverMSEHandshakeCommand.cc ReceiverMSEHandshakeCommand.h\
  517. MSEHandshake.cc MSEHandshake.h\
  518. ARC4Encryptor.h\
  519. DHKeyExchange.h\
  520. BtConstants.h\
  521. BtLeecherStateChoke.cc BtLeecherStateChoke.h\
  522. BtSeederStateChoke.cc BtSeederStateChoke.h\
  523. RangeBtMessage.cc RangeBtMessage.h\
  524. IndexBtMessage.cc IndexBtMessage.h\
  525. ZeroBtMessage.cc ZeroBtMessage.h\
  526. RangeBtMessageValidator.cc RangeBtMessageValidator.h\
  527. IndexBtMessageValidator.cc IndexBtMessageValidator.h\
  528. ExtensionMessageRegistry.cc ExtensionMessageRegistry.h\
  529. bittorrent_helper.cc bittorrent_helper.h\
  530. BtStopDownloadCommand.cc BtStopDownloadCommand.h\
  531. PriorityPieceSelector.cc PriorityPieceSelector.h\
  532. LpdMessageDispatcher.cc LpdMessageDispatcher.h\
  533. LpdMessageReceiver.cc LpdMessageReceiver.h\
  534. LpdMessage.cc LpdMessage.h\
  535. LpdReceiveMessageCommand.cc LpdReceiveMessageCommand.h\
  536. LpdDispatchMessageCommand.cc LpdDispatchMessageCommand.h\
  537. bencode2.cc bencode2.h\
  538. BencodeParser.cc BencodeParser.h\
  539. ValueBaseBencodeParser.h\
  540. BencodeDiskWriter.h\
  541. BencodeDiskWriterFactory.h\
  542. MemoryBencodePreDownloadHandler.h\
  543. UDPTrackerClient.cc UDPTrackerClient.h\
  544. UDPTrackerRequest.cc UDPTrackerRequest.h\
  545. NameResolveCommand.cc NameResolveCommand.h
  546. endif # ENABLE_BITTORRENT
  547. if ENABLE_METALINK
  548. SRCS += Metalinker.cc Metalinker.h\
  549. MetalinkEntry.cc MetalinkEntry.h\
  550. MetalinkResource.cc MetalinkResource.h\
  551. MetalinkMetaurl.cc MetalinkMetaurl.h\
  552. MetalinkParserController.cc MetalinkParserController.h\
  553. MetalinkParserStateMachine.cc MetalinkParserStateMachine.h\
  554. MetalinkParserState.cc MetalinkParserState.h\
  555. MetalinkParserStateImpl.cc MetalinkParserStateImpl.h\
  556. MetalinkParserStateV3Impl.cc MetalinkParserStateV3Impl.h\
  557. MetalinkParserStateV4Impl.cc MetalinkParserStateV4Impl.h\
  558. Metalink2RequestGroup.cc Metalink2RequestGroup.h\
  559. MetalinkPostDownloadHandler.cc MetalinkPostDownloadHandler.h\
  560. metalink_helper.cc metalink_helper.h
  561. endif # ENABLE_METALINK
  562. if !HAVE_ASCTIME_R
  563. SRCS += asctime_r.c asctime_r.h
  564. endif # !HAVE_ASCTIME_R
  565. if !HAVE_BASENAME
  566. SRCS += libgen.c libgen.h
  567. endif # !HAVE_BASENAME
  568. if !HAVE_GETADDRINFO
  569. SRCS += getaddrinfo.c getaddrinfo.h
  570. endif # !HAVE_GETADDRINFO
  571. if !HAVE_GAI_STRERROR
  572. SRCS += gai_strerror.c gai_strerror.h
  573. endif # !HAVE_GAI_STRERROR
  574. if !HAVE_GETTIMEOFDAY
  575. SRCS += gettimeofday.c gettimeofday.h
  576. endif # !HAVE_GETTIMEOFDAY
  577. if !HAVE_LOCALTIME_R
  578. SRCS += localtime_r.c localtime_r.h
  579. endif # !HAVE_LOCALTIME_R
  580. if !HAVE_STRPTIME
  581. SRCS += strptime.c strptime.h
  582. endif # !HAVE_STRPTIME
  583. if !HAVE_TIMEGM
  584. SRCS += timegm.c timegm.h
  585. endif # !HAVE_TIMEGM
  586. if !HAVE_DAEMON
  587. SRCS += daemon.cc daemon.h
  588. endif # !HAVE_DAEMON
  589. if HAVE_TIMEGETTIME
  590. SRCS += clock_gettime_mingw.cc clock_gettime_mingw.h
  591. endif # HAVE_TIMEGETTIME
  592. if HAVE_MACH_ABSOLUTE_TIME
  593. SRCS += clock_gettime_osx.cc clock_gettime_osx.h
  594. endif # HAVE_MACH_ABSOLUTE_TIME
  595. if HAVE_POLL
  596. SRCS += PollEventPoll.cc PollEventPoll.h
  597. endif # HAVE_POLL
  598. if HAVE_PORT_ASSOCIATE
  599. SRCS += PortEventPoll.cc PortEventPoll.h
  600. endif # HAVE_PORT_ASSOCIATE
  601. if HAVE_KQUEUE
  602. SRCS += KqueueEventPoll.cc KqueueEventPoll.h
  603. endif # HAVE_KQUEUE
  604. if HAVE_LIBUV
  605. SRCS += LibuvEventPoll.cc LibuvEventPoll.h
  606. endif # HAVE_LIBUV
  607. AR = @AR@
  608. if ENABLE_LIBARIA2
  609. pkgconfigdir = $(libdir)/pkgconfig
  610. pkgconfig_DATA = libaria2.pc
  611. DISTCLEANFILES = $(pkgconfig_DATA)
  612. lib_LTLIBRARIES = libaria2.la
  613. libaria2_la_SOURCES = $(SRCS) \
  614. aria2api.cc aria2api.h \
  615. KeepRunningCommand.cc KeepRunningCommand.h \
  616. ApiCallbackDownloadEventListener.cc ApiCallbackDownloadEventListener.h
  617. else # !ENABLE_LIBARIA2
  618. noinst_LTLIBRARIES = libaria2.la
  619. libaria2_la_SOURCES = $(SRCS)
  620. endif # !ENABLE_LIBARIA2
  621. libaria2_la_LIBADD = @WSLAY_LIBS@
  622. LDADD = libaria2.la @LIBINTL@ @ALLOCA@ #-lprofiler
  623. #aria2c_LDFLAGS = -pg
  624. AM_CPPFLAGS = -Wall\
  625. -I$(top_srcdir)/lib -I$(top_srcdir)/intl\
  626. -I$(srcdir)/includes -I$(builddir)/includes\
  627. -DLOCALEDIR=\"@localedir@\" @DEFS@ #-pg