summaryrefslogtreecommitdiff
path: root/kiki.cabal
blob: 7c6edc23bd825d3448e9d837edb4dfada2b21daa (plain)
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

Name:                kiki
Version:             0.0.3
cabal-version:       >= 1.8
Synopsis:            A bridge between (cryptographic) keys
Description:         gpg operations... TODO
License:             Undecided
-- License-file:        LICENSE TODO
Author:              Joseph Crayne
Maintainer:          Joseph Crayne <oh.hello.joe@gmail.com>
--Homepage:          TODO
build-type:          Simple

Flag cryptonite
  Description: Use newer cryptonite-based x509 version 1.6 and higher
  Default: True

Flag hourglass
  Description: Use newer hourglass-based x509 version 1.5 and higher
  Default: True

Flag needlocale
  Description: Link against old-locale package for older versions of the time package.
  Default: False

Executable kiki
    Main-is: kiki.hs
    -- base >=4.6 due to use of readEither in KikiD.Message
    Build-Depends:   base >=4.6.0.0,
                     asn1-encoding,
                     asn1-types,
                     binary,
                     bytestring,
                     containers,
                     dataenc,
                     directory,
                     filepath,
                     tar,
                     text,
                     time,
                     unix,
                     openpgp-util,
                     kiki
    if !flag(cryptonite)
      Build-Depends:   crypto-pubkey >=0.2.3, cryptohash -any,
                       crypto-pubkey-types -any
      if flag(hourglass)
        Build-Depends:   hourglass -any, x509 >=1.5 && <1.6
      else
        Build-Depends:   x509 <1.6
    else
      Build-Depends:   cryptonite, x509 >=1.6, memory, hourglass

Executable hosts
    Main-is: hosts.hs
    Build-Depends:   base >=4.6.0.0,
                     bytestring,
                     network,
                     kiki

Executable cokiki
    Main-is: cokiki.hs
    Build-Depends:   base >=4.6.0.0,
                     bytestring,
                     unix,
                     directory,
                     kiki

library
    hs-source-dirs:  lib
    exposed-modules: KeyRing,
                     Kiki,
                     ScanningParser,
                     PEM,
                     DotLock,
                     Base58,
                     CryptoCoins,
                     ProcessUtils,
                     Hosts,
                     CommandLine,
                     Numeric.Interval,
                     Numeric.Interval.Bounded,
                     SuperOrd
    other-modules:   TimeUtil,
                     ControlMaybe,
                     Compat,
                     FunctorToMaybe

    Build-Depends:   base >=4.6.0.0,
                     asn1-encoding,
                     asn1-types,
                     binary,
                     bytestring,
                     containers,
                     dataenc,
                     directory,
                     filepath,
                     network,
                     pretty-show,
                     process,
                     text,
                     unix,
                     zlib,
                     openpgp-util
    -- todo: remove this dependency when flag(hourglass)
    if flag(needlocale)
       build-depends:  time < 1.5, old-locale
    else
       build-depends:  time >= 1.5

    if !flag(cryptonite)
      Build-Depends:   crypto-pubkey >=0.2.3, cryptohash -any,
                       crypto-pubkey-types -any
      if flag(hourglass)
        Build-Depends:   hourglass -any, x509 >=1.5 && <1.6
      else
        Build-Depends:   x509 <1.6
    else
      Build-Depends:   cryptonite, x509 >=1.6, memory, hourglass
    c-sources: lib/dotlock.c