Bump version to 1.2.0.2
[packages/text.git] / text.cabal
1 name:           text
2 version:        1.2.0.2
3 homepage:       https://github.com/bos/text
4 bug-reports:    https://github.com/bos/text/issues
5 synopsis:       An efficient packed Unicode text type.
6 description:
7     .
8     An efficient packed, immutable Unicode text type (both strict and
9     lazy), with a powerful loop fusion optimization framework.
10     .
11     The 'Text' type represents Unicode character strings, in a time and
12     space-efficient manner. This package provides text processing
13     capabilities that are optimized for performance critical use, both
14     in terms of large data quantities and high speed.
15     .
16     The 'Text' type provides character-encoding, type-safe case
17     conversion via whole-string case conversion functions. It also
18     provides a range of functions for converting 'Text' values to and from
19     'ByteStrings', using several standard encodings.
20     .
21     Efficient locale-sensitive support for text IO is also supported.
22     .
23     These modules are intended to be imported qualified, to avoid name
24     clashes with Prelude functions, e.g.
25     .
26     > import qualified Data.Text as T
27     .
28     To use an extended and very rich family of functions for working
29     with Unicode text (including normalization, regular expressions,
30     non-standard encodings, text breaking, and locales), see
31     the @text-icu@ package:
32     <http://hackage.haskell.org/package/text-icu>
33
34 license:        BSD3
35 license-file:   LICENSE
36 author:         Bryan O'Sullivan <bos@serpentine.com>
37 maintainer:     Bryan O'Sullivan <bos@serpentine.com>
38 copyright:      2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
39 category:       Data, Text
40 build-type:     Simple
41 cabal-version:  >= 1.8
42 extra-source-files:
43     -- scripts/CaseFolding.txt
44     -- scripts/SpecialCasing.txt
45     README.markdown
46     benchmarks/Setup.hs
47     benchmarks/cbits/*.c
48     benchmarks/haskell/*.hs
49     benchmarks/haskell/Benchmarks/*.hs
50     benchmarks/haskell/Benchmarks/Programs/*.hs
51     benchmarks/python/*.py
52     benchmarks/ruby/*.rb
53     benchmarks/text-benchmarks.cabal
54     changelog.md
55     include/*.h
56     scripts/*.hs
57     tests-and-benchmarks.markdown
58     tests/*.hs
59     tests/.ghci
60     tests/Makefile
61     tests/Tests/*.hs
62     tests/Tests/Properties/*.hs
63     tests/cabal.config
64     tests/scripts/*.sh
65     tests/text-tests.cabal
66
67 flag developer
68   description: operate in developer mode
69   default: False
70   manual: True
71
72 flag integer-simple
73   description: Use the simple integer library instead of GMP
74   default: False
75
76 library
77   c-sources:    cbits/cbits.c
78   include-dirs: include
79
80   exposed-modules:
81     Data.Text
82     Data.Text.Array
83     Data.Text.Encoding
84     Data.Text.Encoding.Error
85     Data.Text.Foreign
86     Data.Text.IO
87     Data.Text.Internal
88     Data.Text.Internal.Builder
89     Data.Text.Internal.Builder.Functions
90     Data.Text.Internal.Builder.Int.Digits
91     Data.Text.Internal.Builder.RealFloat.Functions
92     Data.Text.Internal.Encoding.Fusion
93     Data.Text.Internal.Encoding.Fusion.Common
94     Data.Text.Internal.Encoding.Utf16
95     Data.Text.Internal.Encoding.Utf32
96     Data.Text.Internal.Encoding.Utf8
97     Data.Text.Internal.Functions
98     Data.Text.Internal.Fusion
99     Data.Text.Internal.Fusion.CaseMapping
100     Data.Text.Internal.Fusion.Common
101     Data.Text.Internal.Fusion.Size
102     Data.Text.Internal.Fusion.Types
103     Data.Text.Internal.IO
104     Data.Text.Internal.Lazy
105     Data.Text.Internal.Lazy.Encoding.Fusion
106     Data.Text.Internal.Lazy.Fusion
107     Data.Text.Internal.Lazy.Search
108     Data.Text.Internal.Private
109     Data.Text.Internal.Read
110     Data.Text.Internal.Search
111     Data.Text.Internal.Unsafe
112     Data.Text.Internal.Unsafe.Char
113     Data.Text.Internal.Unsafe.Shift
114     Data.Text.Lazy
115     Data.Text.Lazy.Builder
116     Data.Text.Lazy.Builder.Int
117     Data.Text.Lazy.Builder.RealFloat
118     Data.Text.Lazy.Encoding
119     Data.Text.Lazy.IO
120     Data.Text.Lazy.Internal
121     Data.Text.Lazy.Read
122     Data.Text.Read
123     Data.Text.Unsafe
124
125   build-depends:
126     array      >= 0.3,
127     base       >= 4.2 && < 5,
128     deepseq    >= 1.1.0.0,
129     ghc-prim   >= 0.2
130
131   if impl(ghc >= 7.7)
132     build-depends: bytestring >= 0.10.4.0
133   else
134     build-depends: bytestring >= 0.9
135
136   cpp-options: -DHAVE_DEEPSEQ
137   ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2
138   if flag(developer)
139     ghc-prof-options: -auto-all
140     ghc-options: -Werror
141     cpp-options: -DASSERTS
142
143   if flag(integer-simple)
144     cpp-options: -DINTEGER_SIMPLE
145     build-depends: integer-simple >= 0.1 && < 0.5
146   else
147     cpp-options: -DINTEGER_GMP
148     build-depends: integer-gmp >= 0.2
149
150 test-suite tests
151   type:           exitcode-stdio-1.0
152   hs-source-dirs: tests .
153   main-is:        Tests.hs
154   c-sources:      cbits/cbits.c
155   include-dirs:   include
156
157   ghc-options:
158     -Wall -threaded -O0 -rtsopts
159
160   cpp-options:
161     -DASSERTS -DHAVE_DEEPSEQ -DTEST_SUITE
162
163   build-depends:
164     HUnit >= 1.2,
165     QuickCheck >= 2.7,
166     array,
167     base,
168     bytestring,
169     deepseq,
170     directory,
171     ghc-prim,
172     quickcheck-unicode,
173     random,
174     test-framework >= 0.4,
175     test-framework-hunit >= 0.2,
176     test-framework-quickcheck2 >= 0.2
177
178   if flag(integer-simple)
179     cpp-options: -DINTEGER_SIMPLE
180     build-depends: integer-simple >= 0.1 && < 0.5
181   else
182     cpp-options: -DINTEGER_GMP
183     build-depends: integer-gmp >= 0.2
184
185 source-repository head
186   type:     git
187   location: https://github.com/bos/text
188
189 source-repository head
190   type:     mercurial
191   location: https://bitbucket.org/bos/text