Changelog
[darcs-mirrors/vector.git] / vector.cabal
1 Name:           vector
2 Version:        0.10
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
42         .
43         * @NFData@ instances
44         .
45         * More efficient block fills
46         .
47         * Safe Haskell support removed
48         .
49
50 Cabal-Version:  >= 1.2.3
51 Build-Type:     Simple
52
53 Extra-Source-Files:
54       tests/vector-tests.cabal
55       tests/LICENSE
56       tests/Setup.hs
57       tests/Main.hs
58       tests/Boilerplater.hs
59       tests/Utilities.hs
60       tests/Tests/Stream.hs
61       tests/Tests/Vector.hs
62       benchmarks/vector-benchmarks.cabal
63       benchmarks/LICENSE
64       benchmarks/Setup.hs
65       benchmarks/Main.hs
66       benchmarks/Algo/AwShCC.hs
67       benchmarks/Algo/HybCC.hs
68       benchmarks/Algo/Leaffix.hs
69       benchmarks/Algo/ListRank.hs
70       benchmarks/Algo/Quickhull.hs
71       benchmarks/Algo/Rootfix.hs
72       benchmarks/Algo/Spectral.hs
73       benchmarks/Algo/Tridiag.hs
74       benchmarks/TestData/Graph.hs
75       benchmarks/TestData/ParenTree.hs
76       benchmarks/TestData/Random.hs
77       internal/GenUnboxTuple.hs
78       internal/unbox-tuple-instances
79
80 Flag BoundsChecks
81   Description: Enable bounds checking
82   Default: True
83
84 Flag UnsafeChecks
85   Description: Enable bounds checking in unsafe operations at the cost of a
86                significant performance penalty
87   Default: False
88
89 Flag InternalChecks
90   Description: Enable internal consistency checks at the cost of a
91                significant performance penalty
92   Default: False
93
94
95 Library
96   Extensions: CPP, DeriveDataTypeable
97   Exposed-Modules:
98         Data.Vector.Internal.Check
99
100         Data.Vector.Fusion.Util
101         Data.Vector.Fusion.Stream.Size
102         Data.Vector.Fusion.Stream.Monadic
103         Data.Vector.Fusion.Stream
104
105         Data.Vector.Generic.Mutable.Base
106         Data.Vector.Generic.Mutable
107         Data.Vector.Generic.Base
108         Data.Vector.Generic.New
109         Data.Vector.Generic
110
111         Data.Vector.Primitive.Mutable
112         Data.Vector.Primitive
113
114         Data.Vector.Storable.Internal
115         Data.Vector.Storable.Mutable
116         Data.Vector.Storable
117
118         Data.Vector.Unboxed.Base
119         Data.Vector.Unboxed.Mutable
120         Data.Vector.Unboxed
121
122         Data.Vector.Mutable
123         Data.Vector
124
125   Include-Dirs:
126         include, internal
127
128   Install-Includes:
129         vector.h
130
131   Build-Depends: base >= 4 && < 5
132                , primitive >= 0.5 && < 0.6
133                , ghc-prim
134                , deepseq >= 1.1 && < 1.4
135
136   if impl(ghc<6.13)
137     Ghc-Options: -finline-if-enough-args -fno-method-sharing
138   
139   Ghc-Options: -O2
140
141   if flag(BoundsChecks)
142     cpp-options: -DVECTOR_BOUNDS_CHECKS
143
144   if flag(UnsafeChecks)
145     cpp-options: -DVECTOR_UNSAFE_CHECKS
146
147   if flag(InternalChecks)
148     cpp-options: -DVECTOR_INTERNAL_CHECKS
149