on 1.2.2.0 help sign in
typeable/aeson/benchmarks/aeson-benchmarks.cabal
249 lines 5.3 kB history raw
1name: aeson-benchmarks
2version: 0
3build-type: Simple
5cabal-version: >=1.8
7flag bytestring-builder
8 description: Depend on the bytestring-builder package for backwards compatibility.
9 default: False
10 manual: False
12library
13 default-language: Haskell2010
14 hs-source-dirs: .. . ../ffi ../pure ../attoparsec-iso8601
15 c-sources: ../cbits/unescape_string.c
16 exposed-modules:
17 Data.Aeson
18 Data.Aeson.Encoding
19 Data.Aeson.Encoding.Builder
20 Data.Aeson.Encoding.Internal
21 Data.Aeson.Internal
22 Data.Aeson.Internal.Functions
23 Data.Aeson.Internal.Time
24 Data.Aeson.Parser
25 Data.Aeson.Parser.Internal
26 Data.Aeson.Parser.Time
27 Data.Aeson.Parser.Unescape
28 Data.Aeson.Parser.UnescapeFFI
29 Data.Aeson.Parser.UnescapePure
30 Data.Aeson.TH
31 Data.Aeson.Text
32 Data.Aeson.Types
33 Data.Aeson.Types.Class
34 Data.Aeson.Types.FromJSON
35 Data.Aeson.Types.Generic
36 Data.Aeson.Types.Internal
37 Data.Aeson.Types.ToJSON
38 Data.Attoparsec.Time
39 Data.Attoparsec.Time.Internal
41 build-depends:
42 attoparsec >= 0.13.0.1,
43 base == 4.*,
44 base-compat >= 0.9.1 && <0.10,
45 time-locale-compat >=0.1.1 && <0.2,
46 containers,
47 deepseq,
48 dlist >= 0.2,
49 fail == 4.9.*,
50 ghc-prim >= 0.2,
51 hashable >= 1.1.2.0,
52 mtl,
53 scientific >= 0.3.4.7 && < 0.4,
54 syb,
55 tagged >=0.8.3 && <0.9,
56 template-haskell >= 2.4,
57 text >= 1.1.1.0,
58 th-abstraction >= 0.2.2 && < 0.3,
59 time,
60 transformers,
61 unordered-containers >= 0.2.3.0,
62 uuid-types >= 1.0.3 && <1.1,
63 vector >= 0.7.1
65 if flag(bytestring-builder)
66 build-depends: bytestring >= 0.9 && < 0.10.4,
67 bytestring-builder >= 0.10.4 && < 1
68 else
69 build-depends: bytestring >= 0.10.4
71 if impl(ghc >=7.8)
72 cpp-options: -DHAS_COERCIBLE
74 if !impl(ghc >= 8.0)
75 -- `Data.Semigroup` is available in base only since GHC 8.0 / base 4.9
76 build-depends: semigroups >= 0.18.2 && < 0.19
78 include-dirs: ../include
80 ghc-options: -O2 -Wall
81 cpp-options: -DGENERICS
83executable aeson-benchmark-compare
84 main-is: Compare.hs
85 hs-source-dirs: ../examples .
86 ghc-options: -Wall -O2 -rtsopts
87 other-modules:
88 Compare.BufferBuilder
89 Compare.JsonBench
90 Compare.JsonBuilder
91 Twitter
92 Twitter.Manual
93 Typed.Common
94 build-depends:
95 aeson-benchmarks,
96 base,
97 base-compat,
98 buffer-builder,
99 bytestring,
100 criterion >= 1.0,
101 deepseq,
102 ghc-prim,
103 json-builder,
104 text
106executable aeson-benchmark-micro
107 main-is: Micro.hs
108 hs-source-dirs: ../examples .
109 ghc-options: -Wall -O2 -rtsopts
110 build-depends:
111 aeson-benchmarks,
112 base,
113 base-compat,
114 bytestring,
115 criterion >= 1.0,
116 deepseq,
117 ghc-prim,
118 text
120executable aeson-benchmark-typed
121 main-is: Typed.hs
122 hs-source-dirs: ../examples .
123 ghc-options: -Wall -O2 -rtsopts
124 -- We must help ourself in situations when there is both
125 -- aeson and aeson-benchmakrs
126 cpp-options: -DHAS_BOTH_AESON_AND_BENCHMARKS
127 other-modules:
128 Twitter
129 Twitter.Generic
130 Twitter.Manual
131 Twitter.Options
132 Twitter.TH
133 Typed.Common
134 Typed.Generic
135 Typed.Manual
136 Typed.TH
137 build-depends:
138 aeson,
139 aeson-benchmarks,
140 base,
141 base-compat,
142 criterion >= 1.0,
143 deepseq,
144 ghc-prim,
145 text,
146 time
148 if flag(bytestring-builder)
149 build-depends: bytestring >= 0.9 && < 0.10.4,
150 bytestring-builder >= 0.10.4 && < 1
151 else
152 build-depends: bytestring >= 0.10.4
154executable aeson-benchmark-compare-with-json
155 main-is: CompareWithJSON.hs
156 ghc-options: -Wall -O2 -rtsopts
157 cpp-options: -DHAS_BOTH_AESON_AND_BENCHMARKS
158 build-depends:
159 aeson,
160 aeson-benchmarks,
161 base,
162 base-compat,
163 blaze-builder,
164 bytestring,
165 criterion,
166 deepseq,
167 json,
168 text
170executable aeson-benchmark-aeson-encode
171 main-is: AesonEncode.hs
172 ghc-options: -Wall -O2 -rtsopts
173 build-depends:
174 aeson-benchmarks,
175 attoparsec,
176 base,
177 base-compat,
178 bytestring,
179 deepseq,
180 time
182executable aeson-benchmark-aeson-parse
183 main-is: AesonParse.hs
184 ghc-options: -Wall -O2 -rtsopts
185 build-depends:
186 aeson-benchmarks,
187 attoparsec,
188 base,
189 base-compat,
190 bytestring,
191 time
193executable aeson-benchmark-json-parse
194 main-is: JsonParse.hs
195 ghc-options: -Wall -O2 -rtsopts
196 build-depends:
197 base,
198 base-compat,
199 deepseq,
200 json,
201 time
203executable aeson-benchmark-dates
204 main-is: Dates.hs
205 ghc-options: -Wall -O2 -rtsopts
206 build-depends:
207 base,
208 base-compat,
209 bytestring,
210 criterion,
211 deepseq,
212 aeson-benchmarks,
213 text,
214 time
216executable aeson-benchmark-map
217 main-is: AesonMap.hs
218 ghc-options: -Wall -O2 -rtsopts
219 build-depends:
220 aeson,
221 aeson-benchmarks,
222 base,
223 base-compat,
224 criterion >= 1.0,
225 bytestring,
226 containers,
227 deepseq,
228 hashable,
229 tagged,
230 text,
231 unordered-containers
233executable aeson-benchmark-foldable
234 main-is: AesonFoldable.hs
235 ghc-options: -Wall -O2 -rtsopts
236 build-depends:
237 aeson,
238 aeson-benchmarks,
239 base,
240 base-compat,
241 criterion >= 1.0,
242 bytestring,
243 containers,
244 deepseq,
245 hashable,
246 tagged,
247 text,
248 unordered-containers,
249 vector