Resolve conflict
[darcs-mirrors/vector.git] / vector.cabal
1 Name:           vector
2 Version:        0.10.9
3 License:        BSD3
4 License-File:   LICENSE
5 Author:         Roman Leshchinskiy <rl@cse.unsw.edu.au>
6 Maintainer:     Roman Leshchinskiy <rl@cse.unsw.edu.au>
7 Copyright:      (c) Roman Leshchinskiy 2008-2012
8 Homepage:       http://code.haskell.org/vector
9 Bug-Reports:    http://trac.haskell.org/vector
10 Category:       Data, Data Structures
11 Synopsis:       Efficient Arrays
12 Description:
13         .
14         An efficient implementation of Int-indexed arrays (both mutable
15         and immutable), with a powerful loop optimisation framework .
16         .
17         It is structured as follows:
18         .
19         ["Data.Vector"] Boxed vectors of arbitrary types.
20         .
21         ["Data.Vector.Unboxed"] Unboxed vectors with an adaptive
22         representation based on data type families.
23         .
24         ["Data.Vector.Storable"] Unboxed vectors of 'Storable' types.
25         .
26         ["Data.Vector.Primitive"] Unboxed vectors of primitive types as
27         defined by the @primitive@ package. "Data.Vector.Unboxed" is more
28         flexible at no performance cost.
29         .
30         ["Data.Vector.Generic"] Generic interface to the vector types.
31         .
32         There is also a (draft) tutorial on common uses of vector.
33         .
34         * <http://haskell.org/haskellwiki/Numeric_Haskell:_A_Vector_Tutorial>
35         .
36         Please use the project trac to submit bug reports and feature
37         requests.
38         .
39         * <http://trac.haskell.org/vector>
40         .
41         Changes in version 0.10.0.1
42         .
43         * Require @primitive@ to include workaround for a GHC array copying bug
44         .
45         Changes in version 0.10
46         .
47         * @NFData@ instances
48         .
49         * More efficient block fills
50         .
51         * Safe Haskell support removed
52         .
53
54 Cabal-Version:  >= 1.2.3
55 Build-Type:     Simple
56
57 Extra-Source-Files:
58       tests/vector-tests.cabal
59       tests/LICENSE
60       tests/Setup.hs
61       tests/Main.hs
62       tests/Boilerplater.hs
63       tests/Utilities.hs
64       tests/Tests/Move.hs
65       tests/Tests/Bundle.hs
66       tests/Tests/Vector.hs
67       benchmarks/vector-benchmarks.cabal
68       benchmarks/LICENSE
69       benchmarks/Setup.hs
70       benchmarks/Main.hs
71       benchmarks/Algo/AwShCC.hs
72       benchmarks/Algo/HybCC.hs
73       benchmarks/Algo/Leaffix.hs
74       benchmarks/Algo/ListRank.hs
75       benchmarks/Algo/Quickhull.hs
76       benchmarks/Algo/Rootfix.hs
77       benchmarks/Algo/Spectral.hs
78       benchmarks/Algo/Tridiag.hs
79       benchmarks/TestData/Graph.hs
80       benchmarks/TestData/ParenTree.hs
81       benchmarks/TestData/Random.hs
82       internal/GenUnboxTuple.hs
83       internal/unbox-tuple-instances
84
85 Flag BoundsChecks
86   Description: Enable bounds checking
87   Default: True
88
89 Flag UnsafeChecks
90   Description: Enable bounds checking in unsafe operations at the cost of a
91                significant performance penalty
92   Default: False
93
94 Flag InternalChecks
95   Description: Enable internal consistency checks at the cost of a
96                significant performance penalty
97   Default: False
98
99
100 Library
101   Extensions: CPP, DeriveDataTypeable
102   Exposed-Modules:
103         Data.Vector.Internal.Check
104
105         Data.Vector.Fusion.Util
106         Data.Vector.Fusion.Stream.Monadic
107         Data.Vector.Fusion.Bundle.Size
108         Data.Vector.Fusion.Bundle.Monadic
109         Data.Vector.Fusion.Bundle
110
111         Data.Vector.Generic.Mutable.Base
112         Data.Vector.Generic.Mutable
113         Data.Vector.Generic.Base
114         Data.Vector.Generic.New
115         Data.Vector.Generic
116
117         Data.Vector.Primitive.Mutable
118         Data.Vector.Primitive
119
120         Data.Vector.Storable.Internal
121         Data.Vector.Storable.Mutable
122         Data.Vector.Storable
123
124         Data.Vector.Unboxed.Base
125         Data.Vector.Unboxed.Mutable
126         Data.Vector.Unboxed
127
128         Data.Vector.Mutable
129         Data.Vector
130
131   Include-Dirs:
132         include, internal
133
134   Install-Includes:
135         vector.h
136
137   Build-Depends: base >= 4 && < 5
138                , primitive >= 0.5.0.1 && < 0.6
139                , ghc-prim
140                , deepseq >= 1.1 && < 1.4
141
142   if impl(ghc<6.13)
143     Ghc-Options: -finline-if-enough-args -fno-method-sharing
144   
145   Ghc-Options: -O2
146
147   if flag(BoundsChecks)
148     cpp-options: -DVECTOR_BOUNDS_CHECKS
149
150   if flag(UnsafeChecks)
151     cpp-options: -DVECTOR_UNSAFE_CHECKS
152
153   if flag(InternalChecks)
154     cpp-options: -DVECTOR_INTERNAL_CHECKS
155