Layout
[darcs-mirrors/vector.git] / vector.cabal
1 Name:           vector
2 Version:        0.5
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-2009
8 Homepage:       http://darcs.haskell.org/vector
9 Category:       Data, Data Structures
10 Synopsis:       Efficient Arrays
11 Description:
12         .
13         An efficient implementation of Int-indexed arrays with a powerful loop
14         fusion framework.
15         .
16         It is structured as follows:
17         .
18         [@Data.Vector@] boxed vectors of arbitrary types
19         .
20         [@Data.Vector.Primitive@] unboxed vectors of primitive types as
21                 defined by the @primitive@ package
22         .
23         [@Data.Vector.Storable@] unboxed vectors of 'Storable' types
24         .
25         [@Data.Vector.Generic@] generic interface to the vector types
26         .
27
28 Cabal-Version:  >= 1.2
29 Build-Type:     Simple
30
31 Extra-Source-Files:
32       tests/vector-tests.cabal
33       tests/LICENSE
34       tests/Setup.hs
35       tests/Main.hs
36       tests/Boilerplater.hs
37       tests/Utilities.hs
38       tests/Tests/Stream.hs
39       tests/Tests/Vector.hs
40
41 Flag BoundsChecks
42   Description: Enables bounds checking
43   Default: True
44
45 Flag UnsafeChecks
46   Description: Enables bounds checking in unsafe operations at the cost of a
47                significant performance penalty
48   Description: False
49
50 Flag InternalChecks
51   Description: Enables internal consistency checks at the cost of a
52                significant performance penalty
53   Default: False
54
55
56 Library
57   Extensions: CPP
58   Exposed-Modules:
59         Data.Vector.Fusion.Util
60         Data.Vector.Fusion.Stream.Size
61         Data.Vector.Fusion.Stream.Monadic
62         Data.Vector.Fusion.Stream
63
64         Data.Vector.Internal.Check
65
66         Data.Vector.Generic.Mutable
67         Data.Vector.Generic.New
68         Data.Vector.Generic
69
70         Data.Vector.Primitive.Mutable
71         Data.Vector.Primitive
72
73         Data.Vector.Storable.Internal
74         Data.Vector.Storable.Mutable
75         Data.Vector.Storable
76
77         Data.Vector.Mutable
78         Data.Vector
79
80   Include-Dirs:
81         include
82
83   Install-Includes:
84         vector.h
85
86   Build-Depends: base >= 2 && < 5, ghc >= 6.9, primitive
87
88   if impl(ghc<6.13)
89     Ghc-Options: -finline-if-enough-args
90   
91   Ghc-Options: -O2
92
93   if flag(BoundsChecks)
94     cpp-options: -DVECTOR_BOUNDS_CHECKS
95
96   if flag(UnsafeChecks)
97     cpp-options: -DVECTOR_UNSAFE_CHECKS
98
99   if flag(InternalChecks)
100     cpp-options: -DVECTOR_INTERNAL_CHECKS
101