1name:          text-tests
2version:       0.0.0.0
3synopsis:      Functional tests for the text package
4description:   Functional tests for the text package
5homepage:      https://github.com/bos/text
6license:       BSD2
7license-file:  ../LICENSE
8author:        Jasper Van der Jeugt <jaspervdj@gmail.com>,
9               Bryan O'Sullivan <bos@serpentine.com>,
10               Tom Harper <rtomharper@googlemail.com>,
11               Duncan Coutts <duncan@haskell.org>
12maintainer:    Bryan O'Sullivan <bos@serpentine.com>
13category:      Text
14build-type:    Simple
15
16cabal-version: >=1.8
17
18flag hpc
19  description: Enable HPC to generate coverage reports
20  default:     False
21  manual:      True
22
23flag bytestring-builder
24  description: Depend on the bytestring-builder package for backwards compatibility.
25  default: False
26  manual: False
27
28executable text-tests
29  main-is: Tests.hs
30
31  other-modules:
32    Tests.Properties
33    Tests.Properties.Mul
34    Tests.QuickCheckUtils
35    Tests.Regressions
36    Tests.SlowFunctions
37    Tests.Utils
38
39  ghc-options:
40    -Wall -threaded -O0 -rtsopts
41
42  if flag(hpc)
43    ghc-options:
44      -fhpc
45
46  cpp-options:
47    -DTEST_SUITE
48    -DASSERTS
49
50  build-depends:
51    HUnit >= 1.2,
52    QuickCheck >= 2.7,
53    base == 4.*,
54    deepseq,
55    directory,
56    quickcheck-unicode >= 1.0.1.0,
57    random,
58    test-framework >= 0.4,
59    test-framework-hunit >= 0.2,
60    test-framework-quickcheck2 >= 0.2,
61    text-tests
62
63  if flag(bytestring-builder)
64    build-depends: bytestring         >= 0.9    && < 0.10.4,
65                   bytestring-builder >= 0.10.4
66  else
67    build-depends: bytestring         >= 0.10.4
68
69executable text-tests-stdio
70  main-is:        Tests/IO.hs
71
72  ghc-options:
73    -Wall -threaded -rtsopts
74
75  -- Optional HPC support
76  if flag(hpc)
77    ghc-options:
78      -fhpc
79
80  build-depends:
81    text-tests,
82    base >= 4 && < 5
83
84library
85  hs-source-dirs: ..
86  c-sources: ../cbits/cbits.c
87  include-dirs: ../include
88  ghc-options: -Wall
89  exposed-modules:
90    Data.Text
91    Data.Text.Array
92    Data.Text.Encoding
93    Data.Text.Encoding.Error
94    Data.Text.Internal.Encoding.Fusion
95    Data.Text.Internal.Encoding.Fusion.Common
96    Data.Text.Internal.Encoding.Utf16
97    Data.Text.Internal.Encoding.Utf32
98    Data.Text.Internal.Encoding.Utf8
99    Data.Text.Foreign
100    Data.Text.Internal.Fusion
101    Data.Text.Internal.Fusion.CaseMapping
102    Data.Text.Internal.Fusion.Common
103    Data.Text.Internal.Fusion.Size
104    Data.Text.Internal.Fusion.Types
105    Data.Text.IO
106    Data.Text.Internal.IO
107    Data.Text.Internal
108    Data.Text.Lazy
109    Data.Text.Lazy.Builder
110    Data.Text.Internal.Builder.Functions
111    Data.Text.Lazy.Builder.Int
112    Data.Text.Internal.Builder.Int.Digits
113    Data.Text.Internal.Builder
114    Data.Text.Lazy.Builder.RealFloat
115    Data.Text.Internal.Builder.RealFloat.Functions
116    Data.Text.Lazy.Encoding
117    Data.Text.Internal.Lazy.Encoding.Fusion
118    Data.Text.Internal.Lazy.Fusion
119    Data.Text.Lazy.IO
120    Data.Text.Internal.Lazy
121    Data.Text.Lazy.Read
122    Data.Text.Internal.Lazy.Search
123    Data.Text.Internal.Private
124    Data.Text.Read
125    Data.Text.Show
126    Data.Text.Internal.Read
127    Data.Text.Internal.Search
128    Data.Text.Unsafe
129    Data.Text.Internal.Unsafe
130    Data.Text.Internal.Unsafe.Char
131    Data.Text.Internal.Unsafe.Shift
132    Data.Text.Internal.Functions
133
134  if flag(hpc)
135    ghc-options:
136      -fhpc
137
138  cpp-options:
139    -DTEST_SUITE
140    -DASSERTS
141    -DINTEGER_GMP
142
143  build-depends:
144    array,
145    base == 4.*,
146    binary,
147    deepseq,
148    ghc-prim,
149    integer-gmp
150
151  if flag(bytestring-builder)
152    build-depends: bytestring         >= 0.9    && < 0.10.4,
153                   bytestring-builder >= 0.10.4
154  else
155    build-depends: bytestring         >= 0.10.4
156