File: HsOpenSSL.cabal

package info (click to toggle)
haskell-hsopenssl 0.11.7.8-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 556 kB
  • sloc: haskell: 1,562; ansic: 451; makefile: 16
file content (213 lines) | stat: -rw-r--r-- 5,739 bytes parent folder | download
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
Name:         HsOpenSSL
Synopsis:     Partial OpenSSL binding for Haskell
Description:
    HsOpenSSL is an OpenSSL binding for Haskell. It can generate RSA
    and DSA keys, read and write PEM files, generate message digests,
    sign and verify messages, encrypt and decrypt messages. It has
    also some capabilities of creating SSL clients and servers.
    .
    This package is in production use by a number of Haskell based
    systems and stable. You may also be interested in the @tls@ package,
    <http://hackage.haskell.org/package/tls>, which is a pure Haskell
    implementation of SSL.
Version:       0.11.7.8
License:       PublicDomain
License-File:  COPYING
Author:        Adam Langley, Mikhail Vorozhtsov, PHO, Taru Karttunen
Maintainer:    Vladimir Shabanov <dev@vshabanov.com>
Stability:     stable
Homepage:      https://github.com/haskell-cryptography/HsOpenSSL
Bug-Reports:   https://github.com/haskell-cryptography/HsOpenSSL/issues
Category:      Cryptography
Cabal-Version: 1.12
Tested-With:
    GHC==8.8.1, GHC==8.6.5, GHC==8.4.4, GHC==8.2.2, GHC==8.0.2, GHC==7.10.3
Build-Type:    Custom
Extra-Source-Files:
    AUTHORS
    ChangeLog
    README.md
    cbits/HsOpenSSL.h
    cbits/mutex.h
    examples/Makefile
    examples/GenRSAKey.hs
    examples/HelloWorld.hs
    examples/PKCS7.hs
    examples/Server.hs
    examples/server.crt
    examples/server.pem

Source-Repository head
    Type: git
    Location: git://github.com/haskell-cryptography/HsOpenSSL.git

Flag fast-bignum
    Description:
        Enable fast moving of bignums between OpenSSL and GMP (GHC and OpenSSL version < 1.1.0 only).
    Default:
        False

Flag homebrew-openssl
    Description:
        Use Homebrew version of OpenSSL (macOS only).
    Default:
        False

Flag macports-openssl
    Description:
        Use MacPorts version of OpenSSL (macOS only).
    Default:
        False

Flag use-pkg-config
    Description:
        Use pkg-config to find OpenSSL (macOS and linux only).
    Default:
        False
    Manual:
        True

Custom-setup
    setup-depends: Cabal >= 1.12 && < 4,
                   base  >= 4.8 && < 5

Library
    Build-Depends:
        base       >= 4.8 && < 5,
        bytestring >= 0.9 && < 0.13,
        network    >= 2.1 && < 3.3,
        time       >= 1.5 && < 1.15

    Build-Tools: hsc2hs >= 0.67

    if flag(fast-bignum) && impl(ghc >= 7.10.1)
        -- only new integer-gmp 1.0.0 is supported
        -- and it only works in OpenSSL version < 1.1.0 where BIGNUM
        -- wasn't opaque structure.
        CPP-Options: -DFAST_BIGNUM
        Build-Depends: integer-gmp >= 1.0.0 && < 1.1.0

    if os(darwin) && flag(homebrew-openssl)
        Include-Dirs: /usr/local/opt/openssl/include
        Extra-Lib-Dirs: /usr/local/opt/openssl/lib

    if os(darwin) && flag(macports-openssl)
        Include-Dirs: /opt/local/include
        Extra-Lib-Dirs: /opt/local/lib

    if flag(use-pkg-config)
        pkgconfig-depends: libssl, libcrypto
    else
        Extra-Libraries: ssl crypto

    if os(mingw32)
        C-Sources:       cbits/mutex-win.c
        CC-Options:      -D MINGW32 -DNOCRYPT
        CPP-Options:     -DCALLCONV=stdcall
    else
        C-Sources:       cbits/mutex-pthread.c
        CC-Options:      -D PTHREAD
        CPP-Options:     -DCALLCONV=ccall

    Exposed-Modules:
        OpenSSL
        OpenSSL.BN
        OpenSSL.DER
        OpenSSL.EVP.Base64
        OpenSSL.EVP.Cipher
        OpenSSL.EVP.Digest
        OpenSSL.EVP.Internal
        OpenSSL.EVP.Open
        OpenSSL.EVP.PKey
        OpenSSL.EVP.Seal
        OpenSSL.EVP.Sign
        OpenSSL.EVP.Verify
        OpenSSL.Cipher
        OpenSSL.PEM
        OpenSSL.PKCS7
        OpenSSL.Random
        OpenSSL.DSA
        OpenSSL.RSA
        OpenSSL.X509
        OpenSSL.X509.Revocation
        OpenSSL.X509.Request
        OpenSSL.X509.Store
        OpenSSL.Session
        OpenSSL.DH
    Other-Modules:
        OpenSSL.ASN1
        OpenSSL.BIO
        OpenSSL.ERR
        OpenSSL.Objects
        OpenSSL.SSL.Option
        OpenSSL.Stack
        OpenSSL.Utils
        OpenSSL.X509.Name
        OpenSSL.DH.Internal
    Default-Language:
        Haskell2010
    GHC-Options:
        -optc=-Wno-deprecated-declarations
        -optc=-Wno-incompatible-pointer-types
        -Wall
    C-Sources:
        cbits/HsOpenSSL.c
    Include-Dirs:
        cbits
    Includes:
        openssl/asn1.h

Test-Suite test-dsa
    Type:    exitcode-stdio-1.0
    Main-Is: DSA.hs
    HS-Source-Dirs: Test/OpenSSL
    Other-Modules: TestUtils
    Build-Depends:
        HsOpenSSL,
        base                 >= 4.8 && < 5,
        bytestring           >= 0.9 && < 0.13
    Default-Language:
        Haskell2010
    GHC-Options:
        -Wall

Test-Suite test-der
    Type:    exitcode-stdio-1.0
    Main-Is: DER.hs
    HS-Source-Dirs: Test/OpenSSL
    Other-Modules: TestUtils
    Build-Depends:
        HsOpenSSL,
        base                 >= 4.8 && < 5
    Default-Language:
        Haskell2010
    GHC-Options:
        -Wall

Test-Suite test-evp-base64
    Type:    exitcode-stdio-1.0
    Main-Is: EVP/Base64.hs
    HS-Source-Dirs: Test/OpenSSL
    Other-Modules: TestUtils
    Build-Depends:
        HsOpenSSL,
        base                 >= 4.8 && < 5,
        bytestring           >= 0.9 && < 0.13
    Default-Language:
        Haskell2010
    GHC-Options:
        -Wall

Test-Suite test-evp-digest
    Type:    exitcode-stdio-1.0
    Main-Is: EVP/Digest.hs
    HS-Source-Dirs: Test/OpenSSL
    Other-Modules: TestUtils
    Build-Depends:
        HsOpenSSL,
        base                 >= 4.8 && < 5,
        bytestring           >= 0.9 && < 0.13
    Default-Language:
        Haskell2010
    GHC-Options:
        -Wall