1
+ { system
2
+ , compiler
3
+ , flags
4
+ , pkgs
5
+ , hsPkgs
6
+ , pkgconfPkgs
7
+ , errorHandler
8
+ , config
9
+ , ... } :
10
+ {
11
+ flags = { support-lh = true ; } ;
12
+ package = {
13
+ specVersion = "1.24" ;
14
+ identifier = { name = "g2" ; version = "0.2.0.0" ; } ;
15
+ license = "BSD-3-Clause" ;
16
+ copyright = "" ;
17
+
18
+ author = "William Hallahan, Anton Xue" ;
19
+ homepage = "" ;
20
+ url = "" ;
21
+ synopsis = "Haskell symbolic execution engine." ;
22
+ description = "A Haskell symbolic execution engine.\n For details, please see: <https://github.com/BillHallahan/G2>" ;
23
+ buildType = "Simple" ;
24
+ } ;
25
+ components = {
26
+ "library" = {
27
+ depends = ( [
28
+ ( hsPkgs . "array" or ( errorHandler . buildDepError "array" ) )
29
+ ( hsPkgs . "Cabal" or ( errorHandler . buildDepError "Cabal" ) )
30
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
31
+ ( hsPkgs . "bimap" or ( errorHandler . buildDepError "bimap" ) )
32
+ ( hsPkgs . "bytestring" or ( errorHandler . buildDepError "bytestring" ) )
33
+ ( hsPkgs . "clock" or ( errorHandler . buildDepError "clock" ) )
34
+ ( hsPkgs . "concurrent-extra" or ( errorHandler . buildDepError "concurrent-extra" ) )
35
+ ( hsPkgs . "containers" or ( errorHandler . buildDepError "containers" ) )
36
+ ( hsPkgs . "directory" or ( errorHandler . buildDepError "directory" ) )
37
+ ( hsPkgs . "extra" or ( errorHandler . buildDepError "extra" ) )
38
+ ( hsPkgs . "filepath" or ( errorHandler . buildDepError "filepath" ) )
39
+ ( hsPkgs . "ghc-paths" or ( errorHandler . buildDepError "ghc-paths" ) )
40
+ ( hsPkgs . "ghc" or ( errorHandler . buildDepError "ghc" ) )
41
+ ( hsPkgs . "hashable" or ( errorHandler . buildDepError "hashable" ) )
42
+ ( hsPkgs . "HTTP" or ( errorHandler . buildDepError "HTTP" ) )
43
+ ( hsPkgs . "language-sygus" or ( errorHandler . buildDepError "language-sygus" ) )
44
+ ( hsPkgs . "MissingH" or ( errorHandler . buildDepError "MissingH" ) )
45
+ ( hsPkgs . "mtl" or ( errorHandler . buildDepError "mtl" ) )
46
+ ( hsPkgs . "random" or ( errorHandler . buildDepError "random" ) )
47
+ ( hsPkgs . "reducers" or ( errorHandler . buildDepError "reducers" ) )
48
+ ( hsPkgs . "regex-compat" or ( errorHandler . buildDepError "regex-compat" ) )
49
+ ( hsPkgs . "regex-base" or ( errorHandler . buildDepError "regex-base" ) )
50
+ ( hsPkgs . "parsec" or ( errorHandler . buildDepError "parsec" ) )
51
+ ( hsPkgs . "pretty" or ( errorHandler . buildDepError "pretty" ) )
52
+ ( hsPkgs . "process" or ( errorHandler . buildDepError "process" ) )
53
+ ( hsPkgs . "optparse-applicative" or ( errorHandler . buildDepError "optparse-applicative" ) )
54
+ ( hsPkgs . "split" or ( errorHandler . buildDepError "split" ) )
55
+ ( hsPkgs . "tasty-quickcheck" or ( errorHandler . buildDepError "tasty-quickcheck" ) )
56
+ ( hsPkgs . "template-haskell" or ( errorHandler . buildDepError "template-haskell" ) )
57
+ ( hsPkgs . "temporary-rc" or ( errorHandler . buildDepError "temporary-rc" ) )
58
+ ( hsPkgs . "text" or ( errorHandler . buildDepError "text" ) )
59
+ ( hsPkgs . "text-builder" or ( errorHandler . buildDepError "text-builder" ) )
60
+ ( hsPkgs . "time" or ( errorHandler . buildDepError "time" ) )
61
+ ( hsPkgs . "unordered-containers" or ( errorHandler . buildDepError "unordered-containers" ) )
62
+ ( hsPkgs . "deferred-folds" or ( errorHandler . buildDepError "deferred-folds" ) )
63
+ ] ++ ( pkgs . lib ) . optionals ( flags . support-lh && ( compiler . isGhc && ( compiler . version ) . lt "9.2" ) ) [
64
+ ( hsPkgs . "liquidhaskell" or ( errorHandler . buildDepError "liquidhaskell" ) )
65
+ ( hsPkgs . "liquid-fixpoint" or ( errorHandler . buildDepError "liquid-fixpoint" ) )
66
+ ( hsPkgs . "Diff" or ( errorHandler . buildDepError "Diff" ) )
67
+ ] ) ++ ( pkgs . lib ) . optionals ( flags . support-lh && ( compiler . isGhc && ( compiler . version ) . lt "9" ) ) [
68
+ ( hsPkgs . "liquidhaskell" or ( errorHandler . buildDepError "liquidhaskell" ) )
69
+ ( hsPkgs . "liquid-fixpoint" or ( errorHandler . buildDepError "liquid-fixpoint" ) )
70
+ ] ;
71
+ buildable = true ;
72
+ } ;
73
+ exes = {
74
+ "G2" = {
75
+ depends = [
76
+ ( hsPkgs . "g2" or ( errorHandler . buildDepError "g2" ) )
77
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
78
+ ( hsPkgs . "containers" or ( errorHandler . buildDepError "containers" ) )
79
+ ( hsPkgs . "filepath" or ( errorHandler . buildDepError "filepath" ) )
80
+ ( hsPkgs . "ghc" or ( errorHandler . buildDepError "ghc" ) )
81
+ ( hsPkgs . "text" or ( errorHandler . buildDepError "text" ) )
82
+ ( hsPkgs . "unordered-containers" or ( errorHandler . buildDepError "unordered-containers" ) )
83
+ ] ;
84
+ buildable = true ;
85
+ } ;
86
+ "G2LH" = {
87
+ depends = [
88
+ ( hsPkgs . "g2" or ( errorHandler . buildDepError "g2" ) )
89
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
90
+ ( hsPkgs . "containers" or ( errorHandler . buildDepError "containers" ) )
91
+ ( hsPkgs . "filepath" or ( errorHandler . buildDepError "filepath" ) )
92
+ ( hsPkgs . "ghc" or ( errorHandler . buildDepError "ghc" ) )
93
+ ( hsPkgs . "text" or ( errorHandler . buildDepError "text" ) )
94
+ ( hsPkgs . "unordered-containers" or ( errorHandler . buildDepError "unordered-containers" ) )
95
+ ] ;
96
+ buildable = if flags . support-lh && ( compiler . isGhc && ( compiler . version ) . lt "9.2" )
97
+ then true
98
+ else false ;
99
+ } ;
100
+ "Inference" = {
101
+ depends = [
102
+ ( hsPkgs . "g2" or ( errorHandler . buildDepError "g2" ) )
103
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
104
+ ( hsPkgs . "containers" or ( errorHandler . buildDepError "containers" ) )
105
+ ( hsPkgs . "deepseq" or ( errorHandler . buildDepError "deepseq" ) )
106
+ ( hsPkgs . "liquid-fixpoint" or ( errorHandler . buildDepError "liquid-fixpoint" ) )
107
+ ( hsPkgs . "liquidhaskell" or ( errorHandler . buildDepError "liquidhaskell" ) )
108
+ ( hsPkgs . "text" or ( errorHandler . buildDepError "text" ) )
109
+ ( hsPkgs . "time" or ( errorHandler . buildDepError "time" ) )
110
+ ] ;
111
+ buildable = if flags . support-lh && ( compiler . isGhc && ( compiler . version ) . lt "9.2" )
112
+ then true
113
+ else false ;
114
+ } ;
115
+ "Nebula" = {
116
+ depends = [
117
+ ( hsPkgs . "g2" or ( errorHandler . buildDepError "g2" ) )
118
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
119
+ ( hsPkgs . "containers" or ( errorHandler . buildDepError "containers" ) )
120
+ ( hsPkgs . "filepath" or ( errorHandler . buildDepError "filepath" ) )
121
+ ( hsPkgs . "ghc" or ( errorHandler . buildDepError "ghc" ) )
122
+ ( hsPkgs . "text" or ( errorHandler . buildDepError "text" ) )
123
+ ( hsPkgs . "unordered-containers" or ( errorHandler . buildDepError "unordered-containers" ) )
124
+ ] ;
125
+ buildable = true ;
126
+ } ;
127
+ } ;
128
+ tests = {
129
+ "test" = {
130
+ depends = [
131
+ ( hsPkgs . "g2" or ( errorHandler . buildDepError "g2" ) )
132
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
133
+ ( hsPkgs . "containers" or ( errorHandler . buildDepError "containers" ) )
134
+ ( hsPkgs . "directory" or ( errorHandler . buildDepError "directory" ) )
135
+ ( hsPkgs . "filepath" or ( errorHandler . buildDepError "filepath" ) )
136
+ ( hsPkgs . "ghc-paths" or ( errorHandler . buildDepError "ghc-paths" ) )
137
+ ( hsPkgs . "ghc" or ( errorHandler . buildDepError "ghc" ) )
138
+ ( hsPkgs . "hashable" or ( errorHandler . buildDepError "hashable" ) )
139
+ ( hsPkgs . "tagged" or ( errorHandler . buildDepError "tagged" ) )
140
+ ( hsPkgs . "tasty" or ( errorHandler . buildDepError "tasty" ) )
141
+ ( hsPkgs . "tasty-hunit" or ( errorHandler . buildDepError "tasty-hunit" ) )
142
+ ( hsPkgs . "tasty-quickcheck" or ( errorHandler . buildDepError "tasty-quickcheck" ) )
143
+ ( hsPkgs . "text" or ( errorHandler . buildDepError "text" ) )
144
+ ( hsPkgs . "time" or ( errorHandler . buildDepError "time" ) )
145
+ ( hsPkgs . "unordered-containers" or ( errorHandler . buildDepError "unordered-containers" ) )
146
+ ] ;
147
+ buildable = true ;
148
+ } ;
149
+ "test-lh" = {
150
+ depends = [
151
+ ( hsPkgs . "g2" or ( errorHandler . buildDepError "g2" ) )
152
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
153
+ ( hsPkgs . "containers" or ( errorHandler . buildDepError "containers" ) )
154
+ ( hsPkgs . "directory" or ( errorHandler . buildDepError "directory" ) )
155
+ ( hsPkgs . "filepath" or ( errorHandler . buildDepError "filepath" ) )
156
+ ( hsPkgs . "ghc-paths" or ( errorHandler . buildDepError "ghc-paths" ) )
157
+ ( hsPkgs . "ghc" or ( errorHandler . buildDepError "ghc" ) )
158
+ ( hsPkgs . "hashable" or ( errorHandler . buildDepError "hashable" ) )
159
+ ( hsPkgs . "liquidhaskell" or ( errorHandler . buildDepError "liquidhaskell" ) )
160
+ ( hsPkgs . "tagged" or ( errorHandler . buildDepError "tagged" ) )
161
+ ( hsPkgs . "tasty" or ( errorHandler . buildDepError "tasty" ) )
162
+ ( hsPkgs . "tasty-hunit" or ( errorHandler . buildDepError "tasty-hunit" ) )
163
+ ( hsPkgs . "tasty-quickcheck" or ( errorHandler . buildDepError "tasty-quickcheck" ) )
164
+ ( hsPkgs . "text" or ( errorHandler . buildDepError "text" ) )
165
+ ( hsPkgs . "time" or ( errorHandler . buildDepError "time" ) )
166
+ ( hsPkgs . "unordered-containers" or ( errorHandler . buildDepError "unordered-containers" ) )
167
+ ] ;
168
+ buildable = if flags . support-lh && ( compiler . isGhc && ( compiler . version ) . lt "9.2" )
169
+ then true
170
+ else false ;
171
+ } ;
172
+ "test-g2q" = {
173
+ depends = [
174
+ ( hsPkgs . "g2" or ( errorHandler . buildDepError "g2" ) )
175
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
176
+ ( hsPkgs . "tasty" or ( errorHandler . buildDepError "tasty" ) )
177
+ ( hsPkgs . "tasty-hunit" or ( errorHandler . buildDepError "tasty-hunit" ) )
178
+ ( hsPkgs . "time" or ( errorHandler . buildDepError "time" ) )
179
+ ] ;
180
+ buildable = true ;
181
+ } ;
182
+ "test-nebula-plugin" = {
183
+ depends = [
184
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
185
+ ( hsPkgs . "process" or ( errorHandler . buildDepError "process" ) )
186
+ ( hsPkgs . "tasty" or ( errorHandler . buildDepError "tasty" ) )
187
+ ( hsPkgs . "tasty-hunit" or ( errorHandler . buildDepError "tasty-hunit" ) )
188
+ ] ;
189
+ buildable = true ;
190
+ } ;
191
+ } ;
192
+ } ;
193
+ }
0 commit comments