80a0dbc6c4a471680b9352de4721673fbc01efbb
[ghc-base.git] / base.cabal
1 name:           base
2 version:        4.3.1.0
3 license:        BSD3
4 license-file:   LICENSE
5 maintainer:     libraries@haskell.org
6 bug-reports: http://hackage.haskell.org/trac/ghc/newticket?component=libraries/base
7 synopsis:       Basic libraries
8 description:
9     This package contains the Prelude and its support libraries,
10     and a large collection of useful libraries ranging from data
11     structures to parsing combinators and debugging utilities.
12 cabal-version:  >=1.6
13 build-type: Configure
14 extra-tmp-files:
15                 config.log config.status autom4te.cache
16                 include/HsBaseConfig.h include/EventConfig.h
17 extra-source-files:
18                 config.guess config.sub install-sh
19                 aclocal.m4 configure.ac configure
20                 include/CTypes.h
21
22 source-repository head
23     type:     git
24     location: http://darcs.haskell.org/packages/base.git/
25
26 Flag integer-simple
27     Description: Use integer-simple
28
29 Library {
30     if impl(ghc) {
31         if flag(integer-simple)
32             build-depends: integer-simple
33         else
34             build-depends: integer-gmp
35             cpp-options: -DOPTIMISE_INTEGER_GCD_LCM
36         build-depends: rts, ghc-prim
37         exposed-modules:
38             Foreign.Concurrent,
39             GHC.Arr,
40             GHC.Base,
41             GHC.Classes,
42             GHC.Conc,
43             GHC.Conc.IO,
44             GHC.Conc.Signal,
45             GHC.Conc.Sync,
46             GHC.ConsoleHandler,
47             GHC.Constants,
48             GHC.Desugar,
49             GHC.Enum,
50             GHC.Environment,
51             GHC.Err,
52             GHC.Exception,
53             GHC.Exts,
54             GHC.Float,
55             GHC.Float.RealFracMethods,
56             GHC.Foreign,
57             GHC.Float.ConversionUtils,
58             GHC.ForeignPtr,
59             GHC.HetMet,
60             GHC.HetMet.CodeTypes,
61             GHC.HetMet.GArrow,
62             GHC.HetMet.Arrow,
63             GHC.MVar,
64             GHC.IO,
65             GHC.IO.IOMode,
66             GHC.IO.Buffer,
67             GHC.IO.Device,
68             GHC.IO.BufferedIO,
69             GHC.IO.FD,
70             GHC.IO.Exception,
71             GHC.IO.Encoding,
72             GHC.IO.Encoding.Latin1,
73             GHC.IO.Encoding.UTF8,
74             GHC.IO.Encoding.UTF16,
75             GHC.IO.Encoding.UTF32,
76             GHC.IO.Encoding.Types,
77             GHC.IO.Encoding.Iconv,
78             GHC.IO.Encoding.CodePage,
79             GHC.IO.Encoding.Failure,
80             GHC.IO.Handle,
81             GHC.IO.Handle.Types,
82             GHC.IO.Handle.Internals,
83             GHC.IO.Handle.FD,
84             GHC.IO.Handle.Text,
85             GHC.IOBase,
86             GHC.Handle,
87             GHC.IORef,
88             GHC.IOArray,
89             GHC.Int,
90             GHC.List,
91             GHC.Num,
92             GHC.PArr,
93             GHC.Pack,
94             GHC.Ptr,
95             GHC.Read,
96             GHC.Real,
97             GHC.ST,
98             GHC.STRef,
99             GHC.Show,
100             GHC.Stable,
101             GHC.Storable,
102             GHC.TopHandler,
103             GHC.Unicode,
104             GHC.Weak,
105             GHC.Word,
106             System.Timeout
107         if os(windows)
108             exposed-modules: GHC.IO.Encoding.CodePage.Table
109                              GHC.Conc.Windows
110                              GHC.Windows
111     }
112     exposed-modules:
113         Control.Applicative,
114         Control.Arrow,
115         Control.Category,
116         Control.Concurrent,
117         Control.Concurrent.Chan,
118         Control.Concurrent.MVar,
119         Control.Concurrent.QSem,
120         Control.Concurrent.QSemN,
121         Control.Concurrent.SampleVar,
122         Control.Exception,
123         Control.Exception.Base
124         Control.OldException,
125         Control.Monad,
126         Control.Monad.Fix,
127         Control.Monad.Instances,
128         Control.Monad.ST
129         Control.Monad.ST.Lazy
130         Control.Monad.ST.Strict
131         Control.Monad.Group
132         Control.Monad.Zip
133         Data.Bits,
134         Data.Bool,
135         Data.Char,
136         Data.Complex,
137         Data.Dynamic,
138         Data.Either,
139         Data.Eq,
140         Data.Data,
141         Data.Fixed,
142         Data.Foldable
143         Data.Function,
144         Data.Functor,
145         Data.HashTable,
146         Data.IORef,
147         Data.Int,
148         Data.Ix,
149         Data.List,
150         Data.Maybe,
151         Data.Monoid,
152         Data.Ord,
153         Data.Ratio,
154         Data.STRef
155         Data.STRef.Lazy
156         Data.STRef.Strict
157         Data.String,
158         Data.Traversable
159         Data.Tuple,
160         Data.Typeable,
161         Data.Unique,
162         Data.Version,
163         Data.Word,
164         Debug.Trace,
165         Foreign,
166         Foreign.C,
167         Foreign.C.Error,
168         Foreign.C.String,
169         Foreign.C.Types,
170         Foreign.ForeignPtr,
171         Foreign.Marshal,
172         Foreign.Marshal.Alloc,
173         Foreign.Marshal.Array,
174         Foreign.Marshal.Error,
175         Foreign.Marshal.Pool,
176         Foreign.Marshal.Utils,
177         Foreign.Ptr,
178         Foreign.StablePtr,
179         Foreign.Storable,
180         Numeric,
181         Prelude,
182         System.Console.GetOpt
183         System.CPUTime,
184         System.Environment,
185         System.Exit,
186         System.IO,
187         System.IO.Error,
188         System.IO.Unsafe,
189         System.Info,
190         System.Mem,
191         System.Mem.StableName,
192         System.Mem.Weak,
193         System.Posix.Internals,
194         System.Posix.Types,
195         Text.ParserCombinators.ReadP,
196         Text.ParserCombinators.ReadPrec,
197         Text.Printf,
198         Text.Read,
199         Text.Read.Lex,
200         Text.Show,
201         Text.Show.Functions
202         Unsafe.Coerce
203     c-sources:
204         cbits/PrelIOUtils.c
205         cbits/WCsubst.c
206         cbits/Win32Utils.c
207         cbits/consUtils.c
208         cbits/iconv.c
209         cbits/inputReady.c
210         cbits/selectUtils.c
211         cbits/primFloat.c
212     include-dirs: include
213     includes:    HsBase.h
214     install-includes:    HsBase.h HsBaseConfig.h EventConfig.h WCsubst.h consUtils.h Typeable.h
215     if os(windows) {
216         extra-libraries: wsock32, user32, shell32
217     }
218     if !os(windows) {
219         exposed-modules:
220             GHC.Event
221         other-modules:
222             GHC.Event.Array
223             GHC.Event.Clock
224             GHC.Event.Control
225             GHC.Event.EPoll
226             GHC.Event.IntMap
227             GHC.Event.Internal
228             GHC.Event.KQueue
229             GHC.Event.Manager
230             GHC.Event.PSQ
231             GHC.Event.Poll
232             GHC.Event.Thread
233             GHC.Event.Unique
234     }
235     -- We need to set the package name to base (without a version number)
236     -- as it's magic.
237     ghc-options: -package-name base
238     nhc98-options: -H4M -K3M
239 }