/
vxml.cabal
152 lines (142 loc) · 4.35 KB
/
vxml.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
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
Name: vxml
category: XML
synopsis: library to write xml documents enforcing dtd validity by the haskell type system
idea based on WASH - unstable library, things will and must change
version: 0.0.1
Cabal-Version: >=1.2
build-type: Simple
LICENSE: GPL
Flag WeakValidation
Description: Don't check order or amount of subelements, only check that an element can be a subelement of another
Currently this is the only usable setting for real projects.
Validation is approximately as good as the one provided by WASH.
Default: False
Flag PrintGeneratedCode
Default: False
Description: If set vxml will output the by template haskell generated code to stdout
Flag BuildTestSimple
Default: False
Description:
wether to build the testSimple test
Flag BuildTestXHTML
Default: False
Description:
wether to build the testXHTMTL test
you'll need the latest HaXML darcs version for this to work because only this will parse the XHTML-1.0 dtd
Flag BuildTestCases
Default: False
Description:
wether to build the executable running test cases
Flag BuildBenchpressTest
Default: False
Description:
wether to build the executable running a benchpress test on how fast ghc can comple VXML containing sources
Library
build-depends: haskell98
,base
, HList
, HaXml >= 1.19
, filepath
, mtl
, containers
, template-haskell
, directory
exposed-modules: Text.XML.Validated.Types
Text.XML.Validated.Instance.String
Text.XML.Validated.TH
other-modules: Text.XML.Validated.Util
include-dirs: include
install-includes: vxmldos.h
hs-source-dirs: src
extensions: CPP
if flag(PrintGeneratedCode)
cpp-options: -DPRINT_GENERATED_CODE
if flag(WeakValidation)
cpp-options: -DWEAK_VALIDATION
else
extensions: OverlappingInstances
executable testSimple
main-is: testSimple.hs
if !(flag(BuildTestSimple))
buildable: False
hs-source-dirs: test, src
build-depends: haskell98
, base
, HList
, HaXml >= 1.19
, filepath
, mtl
, pretty
, containers
, template-haskell
extensions: CPP
include-dirs: include
if flag(WeakValidation)
cpp-options: -DWEAK_VALIDATION
extensions: OverlappingInstances
else
extensions: OverlappingInstances
executable testXHTMTL
main-is: testXHTML.hs
if !(flag(BuildTestXHTML))
buildable: False
hs-source-dirs: test, src
build-depends: haskell98
, base
, HList
, HaXml >= 1.19
, filepath
, mtl
, pretty
, containers
, template-haskell
include-dirs: include
extensions: CPP
if flag(WeakValidation)
cpp-options: -DWEAK_VALIDATION
else
extensions: OverlappingInstances
executable run-testcases
main-is: run-testcases.hs
if (flag(BuildTestCases))
build-depends: haskell98
, base
, HList
, HaXml >= 1.19
, filepath
, mtl
, pretty
, containers
, HUnit
, template-haskell
, directory
, process
else
buildable: False
hs-source-dirs: test, src
extensions: CPP
if flag(WeakValidation)
cpp-options: -DWEAK_VALIDATION
extensions: OverlappingInstances
else
extensions: OverlappingInstances
executable run-benchpress-test
main-is: run-benchpress-test.hs
if (flag(BuildBenchpressTest))
build-depends: haskell98
, base
, HList
, HaXml >= 1.19
, filepath
, mtl
, pretty
, containers
, HUnit
, template-haskell
, directory
, process
, benchpress
else
buildable: False
hs-source-dirs: test, src
extensions: CPP