-
Notifications
You must be signed in to change notification settings - Fork 0
/
ajhc.cabal.in
339 lines (319 loc) · 8.27 KB
/
ajhc.cabal.in
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
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
cabal-version: >= 1.10
name: @PACKAGE_NAME@
build-type: Custom
version: @VERSION@
license: GPL-2
license-file: COPYING
category: Compiler
author: John Meacham <john@repetae.net>
maintainer: Metasepi team <metasepi@gmail.com>
synopsis: Haskell compiler that produce binary through C language
description: Ajhc is a fork of jhc.
The jhc is a haskell compiler which aims to produce the most efficient
programs possible via whole program analysis and other optimizations.
.
The jhc is very minimalist in that it does not have a precompiled run time
system, but rather generates what is needed as part of the compilation
process. However, back ends do have specific run-time representations of
data, which can be affected by things like the choice of garbage collector.
.
Perhaps you can get internal overview with following compile flow image:
.
.
<<https://raw.github.com/ajhc/ajhc/arafura/docs/jhc_compile_flow.png>>
homepage: http://ajhc.metasepi.org/
bug-reports: http://github.com/ajhc/ajhc/issues
data-files: README.md
extra-source-files:
examples/*.hs rts/HsFFI.h Makefile.cabalinst library_deps.make src/data/targets.ini
src/StringTable/StringTable_cbits.h src/cbits/config.h src/hs_src_config.h
src/data/Typeable.h utils/build_extlibs.prl
@JHCLIB_FILES@
source-repository head
type: git
location: https://github.com/ajhc/ajhc.git
library
hs-source-dirs: src
default-language: Haskell98
c-sources:
src/StringTable/StringTable_cbits.c
src/cbits/md5sum.c
src/cbits/lookup3.c
include-dirs:
src/data, src/StringTable, src/cbits, src
build-depends:
base >= 4.0 && < 5,
HsSyck,
array,
binary,
bytestring,
containers,
cpphs,
directory,
fgl,
filepath,
haskeline,
mtl,
old-time,
pretty,
process,
random,
regex-compat,
syb,
temporary,
utf8-string,
zlib
if os(windows)
build-depends: Win32
else
build-depends: unix
exposed-modules:
C.FFI
C.FromGrin2
C.Generate
C.Prims
Cmm.Number
Cmm.Op
Cmm.OpEval
DataConstructors
DerivingDrift.DataP
DerivingDrift.Drift
DerivingDrift.RuleUtils
DerivingDrift.StandardRules
Doc.Attr
Doc.Chars
Doc.DocLike
Doc.PPrint
Doc.Pretty
E.Annotate
E.Arbitrary
E.Binary
E.CPR
E.Demand
E.Diff
E.E
E.Eta
E.Eval
E.FreeVars
E.FromHs
E.Inline
E.LambdaLift
E.LetFloat
E.Lint
E.Main
E.PrimDecode
E.PrimOpt
E.Program
E.Rules
E.SSimplify
E.Show
E.Subst
E.Traverse
E.Type
E.TypeAnalysis
E.TypeCheck
E.Values
E.WorkerWrapper
FindFixpoint
Fixer.Fixer
Fixer.Supply
Fixer.VMap
FlagDump
FlagOpts
FrontEnd.Class
FrontEnd.DataConsAssump
FrontEnd.DeclsDepends
FrontEnd.DependAnalysis
FrontEnd.Desugar
FrontEnd.Diagnostic
FrontEnd.Exports
FrontEnd.FrontEnd
FrontEnd.HsErrors
FrontEnd.HsParser
FrontEnd.HsPretty
FrontEnd.HsSyn
FrontEnd.Infix
FrontEnd.KindInfer
FrontEnd.Lexer
FrontEnd.ParseMonad
FrontEnd.ParseUtils
FrontEnd.Rename
FrontEnd.Representation
FrontEnd.SrcLoc
FrontEnd.Syn.Options
FrontEnd.Syn.Traverse
FrontEnd.Tc.Class
FrontEnd.Tc.Kind
FrontEnd.Tc.Main
FrontEnd.Tc.Module
FrontEnd.Tc.Monad
FrontEnd.Tc.Type
FrontEnd.Tc.Unify
FrontEnd.TypeSigs
FrontEnd.TypeSynonyms
FrontEnd.TypeSyns
FrontEnd.Unlit
FrontEnd.Utils
FrontEnd.Warning
GenUtil
Grin.DeadCode
Grin.Devolve
Grin.EvalInline
Grin.FromE
Grin.Grin
Grin.HashConst
Grin.Lint
Grin.Main
Grin.NodeAnalyze
Grin.Noodle
Grin.Optimize
Grin.SSimplify
Grin.Show
Grin.StorageAnalysis
Grin.Val
Grin.Whiz
Ho.Binary
Ho.Build
Ho.Collected
Ho.Library
Ho.ReadSource
Ho.Type
Info.Binary
Info.Info
Info.Properties
Info.Types
Interactive
Name.Binary
Name.Id
Name.Name
Name.Names
Name.Prim
Name.VConsts
Options
PackedString
RawFiles
Stats
StringTable.Atom
Support.CFF
Support.Cabal
Support.CanType
Support.Compat
Support.CompatMingw32
Support.FreeVars
Support.IniParse
Support.MD5
Support.MapBinaryInstance
Support.TempDir
Support.Tickle
Support.Transform
Support.Tuple
Support.Unparse
Util.BitSet
Util.ContextMonad
Util.ExitCodes
Util.FilterInput
Util.GMap
Util.Gen
Util.Graph
Util.Graphviz
Util.HasSize
Util.Histogram
Util.Inst
Util.IntBag
Util.Interact
Util.NameMonad
Util.Once
Util.Perhaps
Util.Progress
Util.RWS
Util.ReaderWriter
Util.Relation
Util.SHA1
Util.SameShape
Util.Seq
Util.SetLike
Util.TrueSet
Util.UnionFind
Util.UnionSolve
Util.UniqueMonad
Util.Util
Util.VarName
Util.YAML
Version.Config
Version.Version
other-modules:
Paths_@PACKAGE_NAME@
default-extensions:
BangPatterns, TypeFamilies, ViewPatterns, UndecidableInstances,
OverlappingInstances, RecordWildCards, RecursiveDo, TupleSections,
ParallelListComp, GeneralizedNewtypeDeriving, ScopedTypeVariables,
FlexibleInstances, TypeSynonymInstances, MultiParamTypeClasses,
DeriveDataTypeable, NoMonoLocalBinds, NamedFieldPuns,
ForeignFunctionInterface, UnliftedFFITypes, ImplicitParams,
UnboxedTuples, StandaloneDeriving, DeriveFunctor, DeriveFoldable,
DeriveTraversable, FlexibleContexts,
ConstrainedClassMethods, FunctionalDependencies, MagicHash,
PolymorphicComponents, ExistentialQuantification, UnicodeSyntax,
PostfixOperators, PatternGuards, LiberalTypeSynonyms, RankNTypes,
TypeOperators, EmptyDataDecls, KindSignatures
ghc-options: -W -fno-warn-unused-matches -fwarn-type-defaults -i./src
cc-options: -std=c99
cpp-options: -DUSE_HASKELINE -DWITH_CABAL
executable @PACKAGE_NAME@
main-is: Main.hs
hs-source-dirs: src_main
default-language: Haskell98
build-depends:
base >= 4.0 && < 5,
HsSyck,
array,
binary,
bytestring,
containers,
directory,
fgl,
filepath,
haskeline,
mtl,
old-time,
pretty,
process,
random,
regex-compat,
syb,
temporary,
utf8-string,
zlib,
@PACKAGE_NAME@
if os(windows)
build-depends: Win32
else
build-depends: unix
ghc-options: -W -fno-warn-unused-matches -fwarn-type-defaults
cc-options: -std=c99
cpp-options: -DUSE_HASKELINE -DWITH_CABAL
executable jahm
main-is: Main.hs
hs-source-dirs: src_jahm
default-language: Haskell98
build-depends:
base >= 4.0 && < 5,
HTTP,
bytestring,
filepath,
network,
pretty,
process,
directory,
@PACKAGE_NAME@
if !os(windows)
build-depends:
unix
other-modules:
Distribution.Client.HttpUtils
Distribution.Compat.CopyFile
Distribution.Compat.Exception
Distribution.Compat.TempFile
Distribution.Simple.Utils
Distribution.Text
Distribution.Verbosity