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