Simplify the GHC.Prim hack in base.cabal/Setup.hs
[ghc-base.git] / base.cabal
index b226581..9792d80 100644 (file)
@@ -1,28 +1,26 @@
-name:        base
-version:    2.1
-license:    BSD3
-license-file:    LICENSE
-maintainer:    libraries@haskell.org
-synopsis:    Basic libraries
+name:           base
+version:        3.0
+license:        BSD3
+license-file:   LICENSE
+maintainer:     libraries@haskell.org
+synopsis:       Basic libraries
 description:
     This package contains the Prelude and its support libraries,
     and a large collection of useful libraries ranging from data
     structures to parsing combinators and debugging utilities.
+cabal-version:  >=1.2
+build-type: Custom
+extra-tmp-files:
+                config.log config.status autom4te.cache
+                include/HsBaseConfig.h
 
-Flag IsGHC {
-    Description: Are we compiling with GHC?
-    Default: True
-}
 
 Library {
     -- This is actually something of a hack, as if we are using
     -- GHC and we don't have an rts package for some reason, we
     -- actually ought to fail.
-    if flag(IsGHC) {
+    if impl(ghc) {
         build-depends: rts
-        if os(mingw32) {
-            extra-libraries: wsock32, msvcrt, kernel32, user32, shell32
-        }
         exposed-modules:
             Data.Generics,
             Data.Generics.Aliases,
@@ -36,6 +34,7 @@ Library {
             GHC.Base,
             GHC.Conc,
             GHC.ConsoleHandler,
+            GHC.Desugar,
             GHC.Dotnet,
             GHC.Enum,
             GHC.Environment,
@@ -52,7 +51,6 @@ Library {
             GHC.Num,
             GHC.PArr,
             GHC.Pack,
-            GHC.Prim,
             GHC.PrimopWrappers,
             GHC.Ptr,
             GHC.Read,
@@ -71,6 +69,7 @@ Library {
     exposed-modules:
         Control.Applicative,
         Control.Arrow,
+        Control.Category,
         Control.Concurrent,
         Control.Concurrent.Chan,
         Control.Concurrent.MVar,
@@ -159,12 +158,14 @@ Library {
         cbits/consUtils.c
         cbits/dirUtils.c
         cbits/inputReady.c
-        cbits/lockFile.c
         cbits/longlong.c
         cbits/selectUtils.c
     include-dirs: include
     includes:    HsBase.h
-    install-includes:    HsBase.h HsBaseConfig.h WCsubst.h dirUtils.h lockFile.h consUtils.h Typeable.h
+    install-includes:    HsBase.h HsBaseConfig.h WCsubst.h dirUtils.h consUtils.h Typeable.h
+    if os(windows) {
+        extra-libraries: wsock32, msvcrt, kernel32, user32, shell32
+    }
     extensions:    CPP
     -- XXX is there an extension for using # in varids?
     -- We need to set the package name to base (without a version number)
@@ -172,4 +173,3 @@ Library {
     ghc-options: -fglasgow-exts -package-name base
     nhc98-options: -H4M -K3M
 }
-