-
Notifications
You must be signed in to change notification settings - Fork 95
/
cabal.project
215 lines (177 loc) · 6.44 KB
/
cabal.project
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
214
215
packages:
chainweb.cabal
node/chainweb-node.cabal
debug-info: True
-- -------------------------------------------------------------------------- --
-- Platform specific locations of external libraries
if os(darwin)
if arch(aarch64)
package *
extra-include-dirs:
/opt/homebrew/include
/opt/homebrew/opt/openssl/include
extra-lib-dirs:
/opt/homebrew/lib
/opt/homebrew/opt/openssl/lib
else
package *
extra-include-dirs:
/opt/local/include
/usr/local/opt/openssl/include
/opt/homebrew/include
/opt/homebrew/opt/openssl/include
extra-lib-dirs:
/opt/local/lib
/usr/local/opt/openssl/lib/
/opt/homebrew/lib
/opt/homebrew/opt/openssl/lib
-- -------------------------------------------------------------------------- --
-- Package Specific Build Settings
package chainweb
tests: True
benchmarks: True
ghc-options: -Wno-missed-extra-shared-lib
package chainweb-node
ghc-options: -Wno-missed-extra-shared-lib
if impl(ghc >= 9.8.1)
package chainweb
ghc-options: -Wno-x-partial
-- Remove once we actually upgrade to GHC 9.8.1, these
-- will be released
allow-newer: bytesmith:bytestring
allow-newer: bytebuild:*
allow-newer: byteslice:*
constraints: haskell-src-meta >= 0.8.13
package pact
ghc-options: -Wwarn
optimization: True
-- avoid conflict with cryptonite during linking
flags: +cryptonite-ed25519 -build-tool
package rocksdb-haskell-kadena
ghc-options: -Wwarn -optc-w -optcxx-w
package crypton
flags: +support_pclmuldq
package vault
documentation: false
package yet-another-logger
flags: -tbmqueue
-- -------------------------------------------------------------------------- --
-- Source Repository Packages
--
-- In order to determine proper sha256 value each time the revision is
-- changed, please run the following command:
--
-- nix-prefetch-git --url <location> --rev <tag>
source-repository-package
type: git
location: https://github.com/kadena-io/pact.git
tag: 1027a1f5fd0439c58522921e3a0532c4f5867a24
--sha256: 18xgvzb3p8chch85747ln9a2191df09vwwrv9v3njr2h69n3rhxj
source-repository-package
type: git
location: https://github.com/kadena-io/pact-json.git
tag: 1d260bfaa48312b54851057885de4c43c420e35f
--sha256: 0fzq4mzaszj5clvixx9mn1x6r4dcrnwvbl2znd0p5mmy5h2jr0hh
source-repository-package
type: git
location: https://github.com/kadena-io/chainweb-storage.git
tag: a5e06a8aa2da1e7981ff9fad91dfd41f7c39fc85
--sha256: sha256-3Zqsgrxa7SQUr8XzT2O5PLTELkI92NXZU4j2UUvlL4E=
source-repository-package
type: git
location: https://github.com/kadena-io/rocksdb-haskell.git
tag: cede9de2932a4ead1bd82fd7709b19ab7b19b33d
--sha256: 1dngd44va6h66vwpdpwmnj0zcky87m4vzykjwv49p2km12lwq9mf
source-repository-package
type: git
location: https://github.com/kadena-io/rosetta.git
tag: 6c8dd2eea1f6d0dba925646dbcb6e07feeccbfd5
--sha256: 19pjy06xrx2siggzybcmly0qaq4ds3yzxcsvqwgs4qh9kkzh0kqh
source-repository-package
type: git
location: https://github.com/kadena-io/kadena-ethereum-bridge.git
tag: 3837c4c81f1beaffc1d52375e61576366d49170a
--sha256: 1knhscph2g3saz0pjd1d5a32mr281msapccfrillgd2qk4pj7xjc
source-repository-package
type: git
location: https://github.com/kadena-io/wai-middleware-validation.git
tag: e0437bf82e9b4d3fec5ad42ef6e860f4bd04e1b4
--sha256: 1az7jcggcj275djnfsvhdg3n7hjrj6vp8rj137fxrg4hazh0hyzv
-- Required for backward compatibility:
-- ixset-typed FIX (no PR yet)
source-repository-package
type: git
location: https://github.com/larskuhtz/ixset-typed
tag: d8019c3404d6f3b3c0b0416e9899cfdf614ef425
--sha256: 09msayidg23rsdz97fcfqqalm4pbawx3c1qihgab8hnlmjxby103
-- Patch merged into master (upcoming verison 10.0). We are currently using 9.2.
-- This fork contains additional fixes for using 9.2 with recent compilers.
source-repository-package
type: git
location: https://github.com/larskuhtz/sbv
tag: 1f2d042718fcf9a140398bd3dedac77c207cce27
--sha256: 0l3nhsdxsyx17i29dw691d6bbqz26af6lg6pi1c2kb34v59m2rk3
-- Required for non-canonical decode in base64-bytestring (remove after 2.20 fork)
source-repository-package
type: git
location: https://github.com/kadena-io/base64-bytestring-kadena
tag: 90247042ab3b8662809210af2a78e6dee0f9b4ac
--sha256: 0dqsrjxm0cm35xcihm49dhwdvmz79vsv4sd5qs2izc4sbnd0d8n6
-- -------------------------------------------------------------------------- --
-- Relaxed Bounds
-- GHC-9:
allow-newer: token-bucket:*
allow-newer: ixset-typed:*
-- TODO: I think this fixed?
allow-newer: rosetta:*
-- Servant is notoriously forcing outdated upper bounds onto its users.
-- It is usually safe to just ignore those.
--
allow-newer: servant-server:*
allow-newer: servant-client-core:*
allow-newer: servant-client:*
allow-newer: servant:*
-- these are more liberal than necessary, but since everything works fine
-- with this there's no reason to constrain it more than necessary.
-- These packages are tightly bound to the GHC version and these
-- settings ensure that we use the versions that are shipped with the
-- GHC version that we are using.
allow-newer: *:Cabal
allow-newer: *:Cabal-syntax
allow-newer: *:array
allow-newer: *:base
allow-newer: *:bytestring
allow-newer: *:containers
allow-newer: *:deepseq
allow-newer: *:directory
allow-newer: *:exceptions
allow-newer: *:ghc-compact
allow-newer: *:ghc-prim
allow-newer: *:integer-gmp
allow-newer: *:mtl
allow-newer: *:parsec
allow-newer: *:pretty
allow-newer: *:process
allow-newer: *:stm
allow-newer: *:template-haskell
allow-newer: *:text
allow-newer: *:time
allow-newer: *:transformers
-- Pact uses a vendored version of trifecta that has outdated
-- upper bounds
allow-newer: trifecta:*
-- wai-middleware-validation dependencies
allow-newer: wai-middleware-validation:*
allow-newer: validation:*
allow-newer: these:*
allow-newer: regex-base:*
allow-newer: regex-tdfa:*
allow-newer: base-compat-batteries:*
-- webauthn also uses overly restrictive upper bounds
allow-newer: webauthn:*
-- many packages use an spurious <1.5 upper bound on hashable
allow-newer: *:hashable
-- -------------------------------------------------------------------------- --
-- Upper Bounds
-- remove when crypton-connection >0.4.1 got released
constraints: http-client-tls <0.3.6.4