6bb96f64740fb526c5bfa83fde2395de20799a43
[ghc.git] / libraries / base / 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.MVar,
60             GHC.IO,
61             GHC.IO.IOMode,
62             GHC.IO.Buffer,
63             GHC.IO.Device,
64             GHC.IO.BufferedIO,
65             GHC.IO.FD,
66             GHC.IO.Exception,
67             GHC.IO.Encoding,
68             GHC.IO.Encoding.Latin1,
69             GHC.IO.Encoding.UTF8,
70             GHC.IO.Encoding.UTF16,
71             GHC.IO.Encoding.UTF32,
72             GHC.IO.Encoding.Types,
73             GHC.IO.Encoding.Iconv,
74             GHC.IO.Encoding.CodePage,
75             GHC.IO.Encoding.Failure,
76             GHC.IO.Handle,
77             GHC.IO.Handle.Types,
78             GHC.IO.Handle.Internals,
79             GHC.IO.Handle.FD,
80             GHC.IO.Handle.Text,
81             GHC.IOBase,
82             GHC.Handle,
83             GHC.IORef,
84             GHC.IOArray,
85             GHC.Int,
86             GHC.List,
87             GHC.Num,
88             GHC.PArr,
89             GHC.Pack,
90             GHC.Ptr,
91             GHC.Read,
92             GHC.Real,
93             GHC.ST,
94             GHC.STRef,
95             GHC.Show,
96             GHC.Stable,
97             GHC.Storable,
98             GHC.TopHandler,
99             GHC.Unicode,
100             GHC.Weak,
101             GHC.Word,
102             System.Timeout
103         if os(windows)
104             exposed-modules: GHC.IO.Encoding.CodePage.Table
105                              GHC.Conc.Windows
106                              GHC.Windows
107     }
108     exposed-modules:
109         Control.Applicative,
110         Control.Arrow,
111         Control.Category,
112         Control.Concurrent,
113         Control.Concurrent.Chan,
114         Control.Concurrent.MVar,
115         Control.Concurrent.QSem,
116         Control.Concurrent.QSemN,
117         Control.Concurrent.SampleVar,
118         Control.Exception,
119         Control.Exception.Base
120         Control.OldException,
121         Control.Monad,
122         Control.Monad.Fix,
123         Control.Monad.Instances,
124         Control.Monad.ST
125         Control.Monad.ST.Lazy
126         Control.Monad.ST.Strict
127         Control.Monad.Group
128         Control.Monad.Zip
129         Data.Bits,
130         Data.Bool,
131         Data.Char,
132         Data.Complex,
133         Data.Dynamic,
134         Data.Either,
135         Data.Eq,
136         Data.Data,
137         Data.Fixed,
138         Data.Foldable
139         Data.Function,
140         Data.Functor,
141         Data.HashTable,
142         Data.IORef,
143         Data.Int,
144         Data.Ix,
145         Data.List,
146         Data.Maybe,
147         Data.Monoid,
148         Data.Ord,
149         Data.Ratio,
150         Data.STRef
151         Data.STRef.Lazy
152         Data.STRef.Strict
153         Data.String,
154         Data.Traversable
155         Data.Tuple,
156         Data.Typeable,
157         Data.Unique,
158         Data.Version,
159         Data.Word,
160         Debug.Trace,
161         Foreign,
162         Foreign.C,
163         Foreign.C.Error,
164         Foreign.C.String,
165         Foreign.C.Types,
166         Foreign.ForeignPtr,
167         Foreign.Marshal,
168         Foreign.Marshal.Alloc,
169         Foreign.Marshal.Array,
170         Foreign.Marshal.Error,
171         Foreign.Marshal.Pool,
172         Foreign.Marshal.Utils,
173         Foreign.Ptr,
174         Foreign.StablePtr,
175         Foreign.Storable,
176         Numeric,
177         Prelude,
178         System.Console.GetOpt
179         System.CPUTime,
180         System.Environment,
181         System.Exit,
182         System.IO,
183         System.IO.Error,
184         System.IO.Unsafe,
185         System.Info,
186         System.Mem,
187         System.Mem.StableName,
188         System.Mem.Weak,
189         System.Posix.Internals,
190         System.Posix.Types,
191         Text.ParserCombinators.ReadP,
192         Text.ParserCombinators.ReadPrec,
193         Text.Printf,
194         Text.Read,
195         Text.Read.Lex,
196         Text.Show,
197         Text.Show.Functions
198         Unsafe.Coerce
199     c-sources:
200         cbits/PrelIOUtils.c
201         cbits/WCsubst.c
202         cbits/Win32Utils.c
203         cbits/consUtils.c
204         cbits/iconv.c
205         cbits/inputReady.c
206         cbits/selectUtils.c
207         cbits/primFloat.c
208     include-dirs: include
209     includes:    HsBase.h
210     install-includes:    HsBase.h HsBaseConfig.h EventConfig.h WCsubst.h consUtils.h Typeable.h
211     if os(windows) {
212         extra-libraries: wsock32, user32, shell32
213     }
214     if !os(windows) {
215         exposed-modules:
216             GHC.Event
217         other-modules:
218             GHC.Event.Array
219             GHC.Event.Clock
220             GHC.Event.Control
221             GHC.Event.EPoll
222             GHC.Event.IntMap
223             GHC.Event.Internal
224             GHC.Event.KQueue
225             GHC.Event.Manager
226             GHC.Event.PSQ
227             GHC.Event.Poll
228             GHC.Event.Thread
229             GHC.Event.Unique
230     }
231     -- We need to set the package name to base (without a version number)
232     -- as it's magic.
233     ghc-options: -package-name base
234     nhc98-options: -H4M -K3M
235 }