Add module of special magic GHC desugaring helper functions
[ghc-base.git] / base.cabal
1 name:           base
2 version:        3.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: Custom
13 extra-tmp-files:
14                 config.log config.status autom4te.cache
15                 include/HsBaseConfig.h
16
17
18 Library {
19     -- This is actually something of a hack, as if we are using
20     -- GHC and we don't have an rts package for some reason, we
21     -- actually ought to fail.
22     if impl(ghc) {
23         build-depends: rts
24         exposed-modules:
25             Data.Generics,
26             Data.Generics.Aliases,
27             Data.Generics.Basics,
28             Data.Generics.Instances,
29             Data.Generics.Schemes,
30             Data.Generics.Text,
31             Data.Generics.Twins,
32             Foreign.Concurrent,
33             GHC.Arr,
34             GHC.Base,
35             GHC.Conc,
36             GHC.ConsoleHandler,
37             GHC.Desugar,
38             GHC.Dotnet,
39             GHC.Enum,
40             GHC.Environment,
41             GHC.Err,
42             GHC.Exception,
43             GHC.Exts,
44             GHC.Float,
45             GHC.ForeignPtr,
46             GHC.Handle,
47             GHC.IO,
48             GHC.IOBase,
49             GHC.Int,
50             GHC.List,
51             GHC.Num,
52             GHC.PArr,
53             GHC.Pack,
54             GHC.Prim,
55             GHC.PrimopWrappers,
56             GHC.Ptr,
57             GHC.Read,
58             GHC.Real,
59             GHC.ST,
60             GHC.STRef,
61             GHC.Show,
62             GHC.Stable,
63             GHC.Storable,
64             GHC.TopHandler,
65             GHC.Unicode,
66             GHC.Weak,
67             GHC.Word,
68             System.Timeout
69     }
70     exposed-modules:
71         Control.Applicative,
72         Control.Arrow,
73         Control.Category,
74         Control.Concurrent,
75         Control.Concurrent.Chan,
76         Control.Concurrent.MVar,
77         Control.Concurrent.QSem,
78         Control.Concurrent.QSemN,
79         Control.Concurrent.SampleVar,
80         Control.Exception,
81         Control.Monad,
82         Control.Monad.Fix,
83         Control.Monad.Instances,
84         Control.Monad.ST,
85         Control.Monad.ST.Lazy,
86         Control.Monad.ST.Strict,
87         Data.Bits,
88         Data.Bool,
89         Data.Char,
90         Data.Complex,
91         Data.Dynamic,
92         Data.Either,
93         Data.Eq,
94         Data.Fixed,
95         Data.Foldable
96         Data.Function,
97         Data.HashTable,
98         Data.IORef,
99         Data.Int,
100         Data.Ix,
101         Data.List,
102         Data.Maybe,
103         Data.Monoid,
104         Data.Ord,
105         Data.Ratio,
106         Data.STRef,
107         Data.STRef.Lazy,
108         Data.STRef.Strict,
109         Data.String,
110         Data.Traversable
111         Data.Tuple,
112         Data.Typeable,
113         Data.Unique,
114         Data.Version,
115         Data.Word,
116         Debug.Trace,
117         Foreign,
118         Foreign.C,
119         Foreign.C.Error,
120         Foreign.C.String,
121         Foreign.C.Types,
122         Foreign.ForeignPtr,
123         Foreign.Marshal,
124         Foreign.Marshal.Alloc,
125         Foreign.Marshal.Array,
126         Foreign.Marshal.Error,
127         Foreign.Marshal.Pool,
128         Foreign.Marshal.Utils,
129         Foreign.Ptr,
130         Foreign.StablePtr,
131         Foreign.Storable,
132         Numeric,
133         Prelude,
134         System.Console.GetOpt,
135         System.CPUTime,
136         System.Environment,
137         System.Exit,
138         System.IO,
139         System.IO.Error,
140         System.IO.Unsafe,
141         System.Info,
142         System.Mem,
143         System.Mem.StableName,
144         System.Mem.Weak,
145         System.Posix.Internals,
146         System.Posix.Types,
147         Text.ParserCombinators.ReadP,
148         Text.ParserCombinators.ReadPrec,
149         Text.Printf,
150         Text.Read,
151         Text.Read.Lex,
152         Text.Show,
153         Text.Show.Functions
154         Unsafe.Coerce
155     c-sources:
156         cbits/PrelIOUtils.c
157         cbits/WCsubst.c
158         cbits/Win32Utils.c
159         cbits/consUtils.c
160         cbits/dirUtils.c
161         cbits/inputReady.c
162         cbits/lockFile.c
163         cbits/longlong.c
164         cbits/selectUtils.c
165     include-dirs: include
166     includes:    HsBase.h
167     install-includes:    HsBase.h HsBaseConfig.h WCsubst.h dirUtils.h lockFile.h consUtils.h Typeable.h
168     if os(windows) {
169         extra-libraries: wsock32, msvcrt, kernel32, user32, shell32
170     }
171     extensions:    CPP
172     -- XXX is there an extension for using # in varids?
173     -- We need to set the package name to base (without a version number)
174     -- as it's magic.
175     ghc-options: -fglasgow-exts -package-name base
176     nhc98-options: -H4M -K3M
177 }