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