-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathsplice.cabal
66 lines (53 loc) · 2.16 KB
/
splice.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
name: splice
version: 0.6.3
stability: stable on all operating systems
synopsis: Cross-platform Socket to Socket Data Splicing
description: A library that implements most efficient socket to socket
data transfer loops for proxy servers on all operating systems.
.
On GNU/Linux, it exports the zero-copy system call @c_splice()@
(<http://en.wikipedia.org/wiki/Splice_(system_call)>) in
@System.IO.Splice.Linux@.
.
On other operating systems, it only exports a portable Haskell
implementation.
.
A unified sockets API for all operating systems is available in
@Network.Socket.Splice@.
.
[Version Scheme]
Major-@/R/@-ewrite . New-@/F/@-unctionality . @/I/@-mprovementAndBugFixes . @/P/@-ackagingOnly
.
* @PackagingOnly@ changes are made for quality assurance reasons.
copyright: Copyright © 2012 Cetin Sert
license: BSD3
license-file: LICENSE
author: Cetin Sert <[email protected]>, Corsis Research
maintainer: Cetin Sert <[email protected]>, Corsis Research
homepage: http://corsis.github.com/splice/
bug-reports: http://github.com/corsis/splice/issues
category: System, Network
build-type: Simple
cabal-version: >= 1.6
source-repository head
type: git
location: git://github.com/corsis/splice.git
flag portable
description: force portable 'splice' implementation on GNU\/Linux
default : False
flag llvm
description: compile via LLVM
default : False
library
hs-source-dirs: src
exposed-modules: Network.Socket.Splice
other-modules: Network.Socket.Splice.Internal
build-depends: base >= 4 && <= 5,
network
if os(linux) && !flag(portable)
exposed-modules: System.IO.Splice.Linux
build-depends: unix >= 2 && <= 4
cpp-options: -DLINUX_SPLICE
ghc-options: -Wall -O2
if flag(llvm)
ghc-options: -fllvm -optlo-O3