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