Add Data.Semigroup and Data.List.NonEmpty (re #10365)
[ghc.git] / libraries / base / base.cabal
1 name:           base
2 version:        4.8.2.0
3 -- NOTE: Don't forget to update ./changelog.md
4 license:        BSD3
5 license-file:   LICENSE
6 maintainer:     libraries@haskell.org
7 bug-reports:    http://ghc.haskell.org/trac/ghc/newticket?component=libraries/base
8 synopsis:       Basic libraries
9 category:       Prelude
10 description:
11     This package contains the "Prelude" and its support libraries,
12     and a large collection of useful libraries ranging from data
13     structures to parsing combinators and debugging utilities.
14 cabal-version:  >=1.10
15 build-type:     Configure
16
17 extra-tmp-files:
18     autom4te.cache
19     base.buildinfo
20     config.log
21     config.status
22     include/EventConfig.h
23     include/HsBaseConfig.h
24
25 extra-source-files:
26     aclocal.m4
27     base.buildinfo.in
28     changelog.md
29     config.guess
30     config.sub
31     configure
32     configure.ac
33     include/CTypes.h
34     include/EventConfig.h.in
35     include/HsBaseConfig.h.in
36     include/ieee-flpt.h
37     include/md5.h
38     install-sh
39
40 source-repository head
41     type:     git
42     location: http://git.haskell.org/ghc.git
43     subdir:   libraries/base
44
45 Flag integer-simple
46     Description: Use integer-simple
47     Manual: True
48     Default: False
49
50 Flag integer-gmp
51     Description: Use integer-gmp
52     Manual: True
53     Default: False
54
55 Library
56     default-language: Haskell2010
57     other-extensions:
58         BangPatterns
59         CApiFFI
60         CPP
61         ConstraintKinds
62         DataKinds
63         DeriveDataTypeable
64         DeriveGeneric
65         ExistentialQuantification
66         ExplicitForAll
67         FlexibleContexts
68         FlexibleInstances
69         FunctionalDependencies
70         GADTs
71         GeneralizedNewtypeDeriving
72         KindSignatures
73         MagicHash
74         MultiParamTypeClasses
75         NegativeLiterals
76         NoImplicitPrelude
77         NondecreasingIndentation
78         OverloadedStrings
79         ParallelArrays
80         PolyKinds
81         RankNTypes
82         RecordWildCards
83         RoleAnnotations
84         Safe
85         ScopedTypeVariables
86         StandaloneDeriving
87         Trustworthy
88         TypeFamilies
89         TypeOperators
90         TypeSynonymInstances
91         UnboxedTuples
92         UndecidableInstances
93         UnliftedFFITypes
94         Unsafe
95
96     build-depends: rts == 1.0.*, ghc-prim == 0.4.*
97     if flag(integer-simple)
98         build-depends: integer-simple >= 0.1.1 && < 0.2
99
100     if flag(integer-gmp)
101         build-depends: integer-gmp >= 1.0 && < 1.1
102         cpp-options: -DOPTIMISE_INTEGER_GCD_LCM
103
104     exposed-modules:
105         Control.Applicative
106         Control.Arrow
107         Control.Category
108         Control.Concurrent
109         Control.Concurrent.Chan
110         Control.Concurrent.MVar
111         Control.Concurrent.QSem
112         Control.Concurrent.QSemN
113         Control.Exception
114         Control.Exception.Base
115         Control.Monad
116         Control.Monad.Fix
117         Control.Monad.Instances
118         Control.Monad.ST
119         Control.Monad.ST.Lazy
120         Control.Monad.ST.Lazy.Safe
121         Control.Monad.ST.Lazy.Unsafe
122         Control.Monad.ST.Safe
123         Control.Monad.ST.Strict
124         Control.Monad.ST.Unsafe
125         Control.Monad.Zip
126         Data.Bifunctor
127         Data.Bits
128         Data.Bool
129         Data.Char
130         Data.Coerce
131         Data.Complex
132         Data.Data
133         Data.Dynamic
134         Data.Either
135         Data.Eq
136         Data.Fixed
137         Data.Foldable
138         Data.Function
139         Data.Functor
140         Data.Functor.Identity
141         Data.IORef
142         Data.Int
143         Data.Ix
144         Data.List
145         Data.List.NonEmpty
146         Data.Maybe
147         Data.Monoid
148         Data.Ord
149         Data.Proxy
150         Data.Ratio
151         Data.Semigroup
152         Data.STRef
153         Data.STRef.Lazy
154         Data.STRef.Strict
155         Data.String
156         Data.Traversable
157         Data.Tuple
158         Data.Type.Bool
159         Data.Type.Coercion
160         Data.Type.Equality
161         Data.Typeable
162         Data.Typeable.Internal
163         Data.Unique
164         Data.Version
165         Data.Void
166         Data.Word
167         Debug.Trace
168         Foreign
169         Foreign.C
170         Foreign.C.Error
171         Foreign.C.String
172         Foreign.C.Types
173         Foreign.Concurrent
174         Foreign.ForeignPtr
175         Foreign.ForeignPtr.Safe
176         Foreign.ForeignPtr.Unsafe
177         Foreign.Marshal
178         Foreign.Marshal.Alloc
179         Foreign.Marshal.Array
180         Foreign.Marshal.Error
181         Foreign.Marshal.Pool
182         Foreign.Marshal.Safe
183         Foreign.Marshal.Unsafe
184         Foreign.Marshal.Utils
185         Foreign.Ptr
186         Foreign.Safe
187         Foreign.StablePtr
188         Foreign.Storable
189         GHC.Arr
190         GHC.Base
191         GHC.Char
192         GHC.Conc
193         GHC.Conc.IO
194         GHC.Conc.Signal
195         GHC.Conc.Sync
196         GHC.ConsoleHandler
197         GHC.Constants
198         GHC.Desugar
199         GHC.Enum
200         GHC.Environment
201         GHC.Err
202         GHC.Exception
203         GHC.Exts
204         GHC.Fingerprint
205         GHC.Fingerprint.Type
206         GHC.Float
207         GHC.Float.ConversionUtils
208         GHC.Float.RealFracMethods
209         GHC.Foreign
210         GHC.ForeignPtr
211         GHC.GHCi
212         GHC.Generics
213         GHC.IO
214         GHC.IO.Buffer
215         GHC.IO.BufferedIO
216         GHC.IO.Device
217         GHC.IO.Encoding
218         GHC.IO.Encoding.CodePage
219         GHC.IO.Encoding.Failure
220         GHC.IO.Encoding.Iconv
221         GHC.IO.Encoding.Latin1
222         GHC.IO.Encoding.Types
223         GHC.IO.Encoding.UTF16
224         GHC.IO.Encoding.UTF32
225         GHC.IO.Encoding.UTF8
226         GHC.IO.Exception
227         GHC.IO.FD
228         GHC.IO.Handle
229         GHC.IO.Handle.FD
230         GHC.IO.Handle.Internals
231         GHC.IO.Handle.Text
232         GHC.IO.Handle.Types
233         GHC.IO.IOMode
234         GHC.IOArray
235         GHC.IORef
236         GHC.Int
237         GHC.List
238         GHC.MVar
239         GHC.Natural
240         GHC.Num
241         GHC.OldList
242         GHC.PArr
243         GHC.Pack
244         GHC.Profiling
245         GHC.Ptr
246         GHC.Read
247         GHC.Real
248         GHC.RTS.Flags
249         GHC.ST
250         GHC.StaticPtr
251         GHC.STRef
252         GHC.Show
253         GHC.Stable
254         GHC.Stack
255         GHC.Stats
256         GHC.Storable
257         GHC.TopHandler
258         GHC.TypeLits
259         GHC.Unicode
260         GHC.Weak
261         GHC.Word
262         Numeric
263         Numeric.Natural
264         Prelude
265         System.CPUTime
266         System.Console.GetOpt
267         System.Environment
268         System.Exit
269         System.IO
270         System.IO.Error
271         System.IO.Unsafe
272         System.Info
273         System.Mem
274         System.Mem.StableName
275         System.Mem.Weak
276         System.Posix.Internals
277         System.Posix.Types
278         System.Timeout
279         Text.ParserCombinators.ReadP
280         Text.ParserCombinators.ReadPrec
281         Text.Printf
282         Text.Read
283         Text.Read.Lex
284         Text.Show
285         Text.Show.Functions
286         Unsafe.Coerce
287
288     other-modules:
289         Control.Monad.ST.Imp
290         Control.Monad.ST.Lazy.Imp
291         Data.OldList
292         Foreign.ForeignPtr.Imp
293         System.Environment.ExecutablePath
294
295     c-sources:
296         cbits/DarwinUtils.c
297         cbits/PrelIOUtils.c
298         cbits/SetEnv.c
299         cbits/WCsubst.c
300         cbits/Win32Utils.c
301         cbits/consUtils.c
302         cbits/iconv.c
303         cbits/inputReady.c
304         cbits/md5.c
305         cbits/primFloat.c
306         cbits/rts.c
307         cbits/sysconf.c
308
309     include-dirs: include
310     includes:
311         HsBase.h
312     install-includes:
313         HsBase.h
314         WCsubst.h
315         consUtils.h
316
317     -- OS Specific
318     if os(windows)
319         extra-libraries: wsock32, user32, shell32
320         exposed-modules:
321             GHC.IO.Encoding.CodePage.API
322             GHC.IO.Encoding.CodePage.Table
323             GHC.Conc.Windows
324             GHC.Windows
325     else
326         exposed-modules:
327             GHC.Event
328         other-modules:
329             GHC.Event.Arr
330             GHC.Event.Array
331             GHC.Event.Clock
332             GHC.Event.Control
333             GHC.Event.EPoll
334             GHC.Event.IntTable
335             GHC.Event.Internal
336             GHC.Event.KQueue
337             GHC.Event.Manager
338             GHC.Event.PSQ
339             GHC.Event.Poll
340             GHC.Event.Thread
341             GHC.Event.TimerManager
342             GHC.Event.Unique
343
344     -- We need to set the package key to base (without a version number)
345     -- as it's magic.
346     ghc-options: -this-package-key base