Split off the concurrent hierarchy (concurrent, unique, timeout)
[ghc-base.git] / base.cabal
1 name:           base
2 version:        4.0
3 license:        BSD3
4 license-file:   LICENSE
5 maintainer:     libraries@haskell.org
6 synopsis:       Basic libraries
7 description:
8     This package contains the Prelude and its support libraries,
9     and a large collection of useful libraries ranging from data
10     structures to parsing combinators and debugging utilities.
11 cabal-version:  >=1.2
12 build-type: Configure
13 extra-tmp-files:
14                 config.log config.status autom4te.cache
15                 include/HsBaseConfig.h
16
17
18 Library {
19     if impl(ghc) {
20         build-depends: rts, ghc-prim, integer
21         exposed-modules:
22             Data.Generics,
23             Data.Generics.Aliases,
24             Data.Generics.Basics,
25             Data.Generics.Instances,
26             Data.Generics.Schemes,
27             Data.Generics.Text,
28             Data.Generics.Twins,
29             Foreign.Concurrent,
30             GHC.Arr,
31             GHC.Base,
32             GHC.Classes,
33             GHC.Conc,
34             GHC.ConsoleHandler,
35             GHC.Desugar,
36             GHC.Enum,
37             GHC.Environment,
38             GHC.Err,
39             GHC.Exception,
40             GHC.Exts,
41             GHC.Float,
42             GHC.ForeignPtr,
43             GHC.Handle,
44             GHC.IO,
45             GHC.IOBase,
46             GHC.Int,
47             GHC.List,
48             GHC.Num,
49             GHC.PArr,
50             GHC.Pack,
51             GHC.Ptr,
52             GHC.Read,
53             GHC.Real,
54             GHC.ST,
55             GHC.STRef,
56             GHC.Show,
57             GHC.Stable,
58             GHC.Storable,
59             GHC.TopHandler,
60             GHC.Unicode,
61             GHC.Weak,
62             GHC.Word
63         extensions: MagicHash, ExistentialQuantification, Rank2Types,
64                     ScopedTypeVariables, UnboxedTuples,
65                     ForeignFunctionInterface, UnliftedFFITypes,
66                     DeriveDataTypeable, GeneralizedNewtypeDeriving,
67                     FlexibleInstances, PatternSignatures, StandaloneDeriving,
68                     PatternGuards, EmptyDataDecls
69     }
70     exposed-modules:
71         Control.Applicative,
72         Control.Arrow,
73         Control.Category,
74         Control.Exception,
75         Control.Exception.Base
76         Control.OldException,
77         Control.Monad,
78         Control.Monad.Fix,
79         Control.Monad.Instances,
80         Data.Bits,
81         Data.Bool,
82         Data.Char,
83         Data.Complex,
84         Data.Dynamic,
85         Data.Either,
86         Data.Eq,
87         Data.Fixed,
88         Data.Foldable
89         Data.Function,
90         Data.HashTable,
91         Data.IORef,
92         Data.Int,
93         Data.Ix,
94         Data.List,
95         Data.Maybe,
96         Data.Monoid,
97         Data.Ord,
98         Data.Ratio,
99         Data.String,
100         Data.Traversable
101         Data.Tuple,
102         Data.Typeable,
103         Data.Version,
104         Data.Word,
105         Debug.Trace,
106         Foreign,
107         Foreign.C,
108         Foreign.C.Error,
109         Foreign.C.String,
110         Foreign.C.Types,
111         Foreign.ForeignPtr,
112         Foreign.Marshal,
113         Foreign.Marshal.Alloc,
114         Foreign.Marshal.Array,
115         Foreign.Marshal.Error,
116         Foreign.Marshal.Pool,
117         Foreign.Marshal.Utils,
118         Foreign.Ptr,
119         Foreign.StablePtr,
120         Foreign.Storable,
121         Numeric,
122         Prelude,
123         System.CPUTime,
124         System.Environment,
125         System.Exit,
126         System.IO,
127         System.IO.Error,
128         System.IO.Unsafe,
129         System.Info,
130         System.Mem,
131         System.Mem.StableName,
132         System.Mem.Weak,
133         System.Posix.Internals,
134         System.Posix.Types,
135         Text.ParserCombinators.ReadP,
136         Text.ParserCombinators.ReadPrec,
137         Text.Printf,
138         Text.Read,
139         Text.Read.Lex,
140         Text.Show,
141         Text.Show.Functions
142         Unsafe.Coerce
143     c-sources:
144         cbits/PrelIOUtils.c
145         cbits/WCsubst.c
146         cbits/Win32Utils.c
147         cbits/consUtils.c
148         cbits/dirUtils.c
149         cbits/inputReady.c
150         cbits/selectUtils.c
151     include-dirs: include
152     includes:    HsBase.h
153     install-includes:    HsBase.h HsBaseConfig.h WCsubst.h dirUtils.h consUtils.h Typeable.h
154     if os(windows) {
155         extra-libraries: wsock32, msvcrt, kernel32, user32, shell32
156     }
157     extensions: CPP
158     -- We need to set the package name to base (without a version number)
159     -- as it's magic.
160     ghc-options: -package-name base
161     nhc98-options: -H4M -K3M
162 }