diff options
author | James Crayne <jim.crayne@gmail.com> | 2019-09-28 13:43:29 -0400 |
---|---|---|
committer | Joe Crayne <joe@jerkface.net> | 2020-01-01 19:27:53 -0500 |
commit | 11987749fc6e6d3e53ea737d46d5ab13a16faeb8 (patch) | |
tree | 5716463275c2d3e902889db619908ded2a73971c /bittorrent/bittorrent.cabal | |
parent | add2c76bced51fde5e9917e7449ef52be70faf87 (diff) |
Factor out some new libraries
word64-map:
Data.Word64Map
network-addr:
Network.Address
tox-crypto:
Crypto.Tox
lifted-concurrent:
Control.Concurrent.Lifted.Instrument
Control.Concurrent.Async.Lifted.Instrument
psq-wrap:
Data.Wrapper.PSQInt
Data.Wrapper.PSQ
minmax-psq:
Data.MinMaxPSQ
tasks:
Control.Concurrent.Tasks
kad:
Network.Kademlia
Network.Kademlia.Bootstrap
Network.Kademlia.Routing
Network.Kademlia.CommonAPI
Network.Kademlia.Persistence
Network.Kademlia.Search
Diffstat (limited to 'bittorrent/bittorrent.cabal')
-rw-r--r-- | bittorrent/bittorrent.cabal | 412 |
1 files changed, 0 insertions, 412 deletions
diff --git a/bittorrent/bittorrent.cabal b/bittorrent/bittorrent.cabal deleted file mode 100644 index 8ec314e7..00000000 --- a/bittorrent/bittorrent.cabal +++ /dev/null | |||
@@ -1,412 +0,0 @@ | |||
1 | name: bittorrent | ||
2 | version: 0.0.0.3 | ||
3 | license: BSD3 | ||
4 | license-file: LICENSE | ||
5 | author: Sam Truzjan | ||
6 | maintainer: Sam Truzjan <pxqr.sta@gmail.com> | ||
7 | copyright: (c) 2013, Sam Truzjan | ||
8 | category: Network | ||
9 | build-type: Custom | ||
10 | cabal-version: >= 1.10 | ||
11 | tested-with: GHC == 7.6.3 | ||
12 | homepage: https://github.com/cobit/bittorrent | ||
13 | bug-reports: https://github.com/cobit/bittorrent/issues | ||
14 | synopsis: BitTorrent protocol implementation. | ||
15 | description: | ||
16 | |||
17 | A library for making Haskell bittorrent applications easy. | ||
18 | . | ||
19 | For more information see: | ||
20 | <https://github.com/cobit/bittorrent/blob/master/README.md> | ||
21 | |||
22 | extra-source-files: res/dapper-dvd-amd64.iso.torrent | ||
23 | res/pkg.torrent | ||
24 | README.md | ||
25 | ChangeLog | ||
26 | cbits/*.h | ||
27 | |||
28 | |||
29 | source-repository head | ||
30 | type: git | ||
31 | location: git://github.com/cobit/bittorrent.git | ||
32 | |||
33 | source-repository this | ||
34 | type: git | ||
35 | location: git://github.com/cobit/bittorrent.git | ||
36 | branch: master | ||
37 | tag: v0.0.0.3 | ||
38 | |||
39 | flag testing | ||
40 | description: Whether to build tests. | ||
41 | default: False | ||
42 | |||
43 | flag examples | ||
44 | description: Whether to build examples. | ||
45 | default: False | ||
46 | |||
47 | flag network-uri | ||
48 | description: Use network-uri package. | ||
49 | default: True | ||
50 | |||
51 | flag bits-extras | ||
52 | description: Use more-effecient bits-extras bitwise operations. | ||
53 | default: False | ||
54 | |||
55 | flag dht-only | ||
56 | description: Build only DHT related modules. | ||
57 | default: True | ||
58 | |||
59 | flag builder | ||
60 | description: Use older bytestring package and bytestring-builder. | ||
61 | default: False | ||
62 | |||
63 | flag aeson | ||
64 | description: Use aeson for pretty-printing bencoded data. | ||
65 | default: True | ||
66 | |||
67 | flag thread-debug | ||
68 | description: Add instrumentation to threads. | ||
69 | default: True | ||
70 | |||
71 | library | ||
72 | default-language: Haskell2010 | ||
73 | default-extensions: PatternGuards | ||
74 | , OverloadedStrings | ||
75 | , RecordWildCards | ||
76 | hs-source-dirs: src, cryptonite-backport, . | ||
77 | exposed-modules: Network.SocketLike | ||
78 | Data.Digest.CRC32C | ||
79 | Data.Bits.ByteString | ||
80 | Data.Wrapper.PSQ | ||
81 | Data.Wrapper.PSQInt | ||
82 | Data.MinMaxPSQ | ||
83 | Network.Address | ||
84 | Network.Kademlia.Routing | ||
85 | Data.Torrent | ||
86 | Network.BitTorrent.DHT.ContactInfo | ||
87 | Network.BitTorrent.DHT.Token | ||
88 | Network.Kademlia.Search | ||
89 | Network.QueryResponse | ||
90 | Network.StreamServer | ||
91 | Data.BEncode.Pretty | ||
92 | Control.Concurrent.Tasks | ||
93 | Network.Kademlia | ||
94 | Network.BitTorrent.MainlineDHT | ||
95 | System.Global6 | ||
96 | Network.Tox | ||
97 | Network.Tox.Transport | ||
98 | Network.Tox.Crypto.Transport | ||
99 | Network.Tox.Onion.Handlers | ||
100 | Network.Tox.Onion.Transport | ||
101 | Network.Tox.DHT.Handlers | ||
102 | Network.Tox.DHT.Transport | ||
103 | Network.Tox.NodeId | ||
104 | Control.TriadCommittee | ||
105 | Crypto.Tox | ||
106 | Text.XXD | ||
107 | |||
108 | build-depends: base | ||
109 | , containers | ||
110 | , array | ||
111 | , hashable | ||
112 | , iproute | ||
113 | , stm | ||
114 | , base16-bytestring | ||
115 | , base32-bytestring | ||
116 | , base64-bytestring | ||
117 | , psqueues | ||
118 | , reflection | ||
119 | , deepseq | ||
120 | , text | ||
121 | , filepath | ||
122 | , directory | ||
123 | , bencoding | ||
124 | , contravariant | ||
125 | |||
126 | , cryptonite | ||
127 | , memory | ||
128 | , time | ||
129 | , random | ||
130 | , entropy | ||
131 | , cpu | ||
132 | |||
133 | , cereal | ||
134 | , http-types | ||
135 | |||
136 | , process | ||
137 | , split | ||
138 | , pretty | ||
139 | , convertible | ||
140 | , data-default | ||
141 | |||
142 | , bifunctors | ||
143 | , lens | ||
144 | , lifted-async | ||
145 | , lifted-base | ||
146 | , monad-control | ||
147 | , transformers-base | ||
148 | , mtl | ||
149 | |||
150 | if flag(network-uri) | ||
151 | Build-depends: network >= 2.6 | ||
152 | , network-uri >= 2.6 | ||
153 | else | ||
154 | Build-depends: network >= 2.4 && < 2.6 | ||
155 | |||
156 | |||
157 | other-modules: Paths_bittorrent | ||
158 | Crypto.Cipher.Salsa | ||
159 | Crypto.Cipher.XSalsa | ||
160 | Crypto.ECC.Class | ||
161 | Crypto.ECC.Simple.Prim | ||
162 | Crypto.ECC.Simple.Types | ||
163 | Crypto.Error.Types | ||
164 | Crypto.Internal.ByteArray | ||
165 | Crypto.Internal.Compat | ||
166 | Crypto.Internal.DeepSeq | ||
167 | Crypto.Internal.Imports | ||
168 | Crypto.PubKey.Curve25519 | ||
169 | |||
170 | C-sources: cbits/cryptonite_xsalsa.c, cbits/cryptonite_salsa.c | ||
171 | |||
172 | if !flag(dht-only) | ||
173 | exposed-modules: Network.BitTorrent | ||
174 | Network.BitTorrent.Client | ||
175 | Network.BitTorrent.Client.Types | ||
176 | Network.BitTorrent.Client.Handle | ||
177 | Network.BitTorrent.Exchange | ||
178 | Network.BitTorrent.Exchange.Bitfield | ||
179 | Network.BitTorrent.Exchange.Block | ||
180 | Network.BitTorrent.Exchange.Connection | ||
181 | Network.BitTorrent.Exchange.Download | ||
182 | Network.BitTorrent.Exchange.Manager | ||
183 | Network.BitTorrent.Exchange.Message | ||
184 | Network.BitTorrent.Exchange.Session | ||
185 | Network.BitTorrent.Tracker | ||
186 | Network.BitTorrent.Tracker.List | ||
187 | Network.BitTorrent.Tracker.Message | ||
188 | Network.BitTorrent.Tracker.RPC | ||
189 | Network.BitTorrent.Tracker.RPC.HTTP | ||
190 | Network.BitTorrent.Tracker.RPC.UDP | ||
191 | Network.BitTorrent.Tracker.Session | ||
192 | System.Torrent.Storage | ||
193 | if !flag(dht-only) | ||
194 | if flag(testing) | ||
195 | exposed-modules: | ||
196 | Network.BitTorrent.Internal.Cache | ||
197 | Network.BitTorrent.Internal.Progress | ||
198 | Network.BitTorrent.Internal.Types | ||
199 | System.Torrent.FileMap | ||
200 | System.Torrent.Tree | ||
201 | else | ||
202 | other-modules: | ||
203 | Network.BitTorrent.Internal.Cache | ||
204 | Network.BitTorrent.Internal.Progress | ||
205 | Network.BitTorrent.Internal.Types | ||
206 | System.Torrent.FileMap | ||
207 | System.Torrent.Tree | ||
208 | if flag(aeson) | ||
209 | build-depends: aeson, aeson-pretty, unordered-containers, vector | ||
210 | cpp-options: -DBENCODE_AESON | ||
211 | if flag(thread-debug) | ||
212 | exposed-modules: Control.Concurrent.Lifted.Instrument | ||
213 | Control.Concurrent.Async.Lifted.Instrument | ||
214 | cpp-options: -DTHREAD_DEBUG | ||
215 | |||
216 | if flag(builder) | ||
217 | build-depends: bytestring >= 0.9, bytestring-builder | ||
218 | else | ||
219 | build-depends: bytestring >= 0.10 | ||
220 | if impl(ghc < 7.6) | ||
221 | build-depends: ghc-prim | ||
222 | ghc-options: -Wall -fdefer-typed-holes | ||
223 | ghc-prof-options: | ||
224 | |||
225 | |||
226 | test-suite spec | ||
227 | if !flag(testing) | ||
228 | buildable: False | ||
229 | default-language: Haskell2010 | ||
230 | default-extensions: OverloadedStrings | ||
231 | type: exitcode-stdio-1.0 | ||
232 | hs-source-dirs: tests | ||
233 | main-is: Main.hs | ||
234 | other-modules: Spec | ||
235 | Config | ||
236 | Network.KRPCSpec | ||
237 | Network.KRPC.MethodSpec | ||
238 | Network.DatagramServer.MainlineSpec | ||
239 | Data.TorrentSpec | ||
240 | Network.BitTorrent.Client.HandleSpec | ||
241 | Network.BitTorrent.CoreSpec | ||
242 | Network.BitTorrent.DHTSpec | ||
243 | Network.BitTorrent.DHT.TestData | ||
244 | Network.BitTorrent.DHT.MessageSpec | ||
245 | Network.BitTorrent.DHT.QuerySpec | ||
246 | Network.Kademlia.RoutingSpec | ||
247 | Network.BitTorrent.DHT.SessionSpec | ||
248 | Network.BitTorrent.DHT.TokenSpec | ||
249 | Network.BitTorrent.Internal.CacheSpec | ||
250 | Network.BitTorrent.Internal.ProgressSpec | ||
251 | Network.BitTorrent.Tracker.TestData | ||
252 | Network.BitTorrent.Tracker.ListSpec | ||
253 | Network.BitTorrent.Tracker.MessageSpec | ||
254 | Network.BitTorrent.Tracker.RPCSpec | ||
255 | Network.BitTorrent.Tracker.RPC.HTTPSpec | ||
256 | Network.BitTorrent.Tracker.RPC.UDPSpec | ||
257 | Network.BitTorrent.Tracker.SessionSpec | ||
258 | Network.BitTorrent.Exchange.BitfieldSpec | ||
259 | Network.BitTorrent.Exchange.ConnectionSpec | ||
260 | Network.BitTorrent.Exchange.DownloadSpec | ||
261 | Network.BitTorrent.Exchange.MessageSpec | ||
262 | Network.BitTorrent.Exchange.SessionSpec | ||
263 | System.Torrent.StorageSpec | ||
264 | System.Torrent.FileMapSpec | ||
265 | build-depends: base == 4.* | ||
266 | |||
267 | -- * Concurrency | ||
268 | , async | ||
269 | |||
270 | -- * Data | ||
271 | , bytestring | ||
272 | , bytestring-arbitrary | ||
273 | , containers | ||
274 | , convertible | ||
275 | , data-default | ||
276 | , text | ||
277 | , time | ||
278 | |||
279 | -- * Serialization | ||
280 | , cereal | ||
281 | |||
282 | -- * Monads | ||
283 | , mtl | ||
284 | , resourcet | ||
285 | , conduit | ||
286 | , conduit-extra | ||
287 | , monad-loops | ||
288 | , monad-logger | ||
289 | |||
290 | -- * Network | ||
291 | , http-types | ||
292 | , iproute | ||
293 | |||
294 | -- * System | ||
295 | , optparse-applicative >= 0.8 | ||
296 | , process | ||
297 | , directory | ||
298 | , filepath | ||
299 | |||
300 | -- * Testing | ||
301 | , hspec >= 1.8.2 | ||
302 | , QuickCheck | ||
303 | , quickcheck-instances | ||
304 | |||
305 | -- * Bittorrent | ||
306 | , bittorrent | ||
307 | , temporary | ||
308 | , bencoding >= 0.4.3 | ||
309 | if flag(network-uri) | ||
310 | Build-depends: network >= 2.6 | ||
311 | , network-uri >= 2.6 | ||
312 | else | ||
313 | Build-depends: network >= 2.4 && < 2.6 | ||
314 | ghc-options: -Wall -fno-warn-orphans | ||
315 | |||
316 | |||
317 | --benchmark bench | ||
318 | -- default-language: Haskell2010 | ||
319 | -- default-extensions: | ||
320 | -- type: exitcode-stdio-1.0 | ||
321 | -- hs-source-dirs: bench | ||
322 | -- main-is: Main.hs | ||
323 | -- build-depends: base | ||
324 | -- , bytestring | ||
325 | -- , cereal | ||
326 | -- , network | ||
327 | -- | ||
328 | -- , criterion | ||
329 | -- , deepseq | ||
330 | -- | ||
331 | -- , bittorrent | ||
332 | -- ghc-options: -O2 -Wall -fno-warn-orphans | ||
333 | benchmark bench | ||
334 | type: exitcode-stdio-1.0 | ||
335 | default-language: Haskell2010 | ||
336 | hs-source-dirs: bench | ||
337 | main-is: Main.hs | ||
338 | build-depends: base == 4.* | ||
339 | , bytestring | ||
340 | , mtl | ||
341 | , monad-logger | ||
342 | , criterion | ||
343 | ghc-options: -O2 -fforce-recomp | ||
344 | |||
345 | executable dht | ||
346 | hs-source-dirs: examples | ||
347 | main-is: dht.hs | ||
348 | default-language: Haskell2010 | ||
349 | build-depends: base, haskeline, network, bytestring, transformers | ||
350 | |||
351 | executable dhtd | ||
352 | hs-source-dirs: examples | ||
353 | main-is: dhtd.hs | ||
354 | default-language: Haskell2010 | ||
355 | build-depends: base, network, bytestring, hashable, deepseq | ||
356 | , aeson | ||
357 | , pretty | ||
358 | , bittorrent | ||
359 | , unix | ||
360 | , containers | ||
361 | , stm | ||
362 | , cereal | ||
363 | , bencoding | ||
364 | if flag(thread-debug) | ||
365 | build-depends: time | ||
366 | cpp-options: -DTHREAD_DEBUG | ||
367 | |||
368 | -- Utility to work with torrent files. | ||
369 | executable mktorrent | ||
370 | if !flag(examples) | ||
371 | buildable: False | ||
372 | default-language: Haskell2010 | ||
373 | hs-source-dirs: examples | ||
374 | main-is: MkTorrent.hs | ||
375 | other-modules: Paths_bittorrent | ||
376 | build-depends: base == 4.* | ||
377 | , bytestring | ||
378 | , text | ||
379 | , pretty | ||
380 | |||
381 | , mtl | ||
382 | , conduit | ||
383 | , lens | ||
384 | , lifted-async | ||
385 | , parallel-io | ||
386 | |||
387 | , bittorrent | ||
388 | |||
389 | , filepath | ||
390 | , optparse-applicative | ||
391 | , hslogger | ||
392 | -- if flag(network-uri) | ||
393 | -- Build-depends: | ||
394 | , network >= 2.6 | ||
395 | , network-uri >= 2.6 | ||
396 | -- else | ||
397 | -- Build-depends: network >= 2.4 && < 2.6 | ||
398 | ghc-options: -Wall -O2 -threaded | ||
399 | |||
400 | -- nonfunctioning example of very basic bittorrent client | ||
401 | executable client | ||
402 | if !flag(examples) | ||
403 | buildable: False | ||
404 | default-language: Haskell2010 | ||
405 | hs-source-dirs: examples | ||
406 | main-is: Client.hs | ||
407 | build-depends: base == 4.* | ||
408 | , bittorrent | ||
409 | , mtl | ||
410 | , pretty | ||
411 | , data-default | ||
412 | , optparse-applicative | ||