forked from ian-ross/language-c
-
Notifications
You must be signed in to change notification settings - Fork 0
/
language-c.cabal
109 lines (99 loc) · 3.94 KB
/
language-c.cabal
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
Name: language-c
Version: 0.4.7
Cabal-Version: >= 1.6
Build-Type: Simple
License: BSD3
License-File: LICENSE
Copyright: LICENSE
Author: AUTHORS
Maintainer: [email protected]
Stability: experimental
Homepage: http://www.sivity.net/projects/language.c/
Bug-reports: http://www.sivity.net/projects/language.c/
Synopsis: Analysis and generation of C code
Description: Language C is a haskell library for the analysis and generation of C code.
It features a complete, well tested parser and pretty printer for all of C99 and a large
set of GNU extensions.
Category: Language
Extra-Source-Files: AUTHORS AUTHORS.c2hs ChangeLog README
src/Language/C/Parser/Lexer.x
src/Language/C/Parser/Parser.y
Source-Repository head
type: darcs
location: http://code.haskell.org/language-c
Flag splitBase
Description: Choose the new smaller, split-up base package.
Flag useByteStrings
Description: Use ByteString as InputStream datatype
Default: True
Flag separateSYB
description: Data.Generics available in separate package.
Library
Extensions: CPP, DeriveDataTypeable, PatternGuards, BangPatterns, ExistentialQuantification, GeneralizedNewtypeDeriving, ScopedTypeVariables
Build-Depends: filepath
if flag(splitBase)
Build-Depends: base >= 3 && < 5, process, directory, array, containers, pretty
If flag(separateSYB)
Build-Depends:
base >=4 && <5,
syb
Else
Build-Depends:
base <4
else
Build-Depends: base < 3
if flag(useByteStrings)
Build-Depends: bytestring >= 0.9.0
else
cpp-options: -DNO_BYTESTRING
Build-Tools: happy, alex
Hs-Source-Dirs: src
Exposed-Modules:
-- top-level
Language.C
-- data
Language.C.Data
Language.C.Data.Position
Language.C.Data.Ident
Language.C.Data.Error
Language.C.Data.Name
Language.C.Data.Node
Language.C.Data.InputStream
-- syntax
Language.C.Syntax
Language.C.Syntax.AST
Language.C.Syntax.Constants
Language.C.Syntax.Ops
Language.C.Syntax.Utils
-- parser
Language.C.Parser
-- pretty printer
Language.C.Pretty
-- system
Language.C.System.Preprocess
Language.C.System.GCC
-- analysis [experimental]
Language.C.Analysis
Language.C.Analysis.ConstEval
Language.C.Analysis.Builtins
Language.C.Analysis.SemError
Language.C.Analysis.SemRep
Language.C.Analysis.DefTable
Language.C.Analysis.TravMonad
Language.C.Analysis.AstAnalysis
Language.C.Analysis.DeclAnalysis
Language.C.Analysis.Debug
Language.C.Analysis.TypeCheck
Language.C.Analysis.TypeConversions
Language.C.Analysis.TypeUtils
Language.C.Analysis.NameSpaceMap
-- semrep -> code [alpha]
Language.C.Analysis.Export
Other-Modules:
Language.C.Data.RList
-- parser implementation
Language.C.Parser.Builtin
Language.C.Parser.Lexer
Language.C.Parser.ParserMonad
Language.C.Parser.Tokens
Language.C.Parser.Parser