hadrian: Pass integer_backend to testsuite driver
[ghc.git] / ghc / ghc-bin.cabal.in
index dcbc695..7819330 100644 (file)
@@ -9,10 +9,11 @@ Copyright: XXX
 Author: XXX
 Maintainer: glasgow-haskell-users@haskell.org
 Homepage: http://www.haskell.org/ghc/
-Synopsis: XXX
+Synopsis: The Glorious Glasgow Haskell Compiler.
 Description:
-        XXX
-Category: XXX
+    This package contains the @ghc@ executable, the user facing front-end
+    to the Glasgow Haskell Compiler.
+Category: Development
 Data-Dir: ..
 Data-Files: settings
 Build-Type: Simple
@@ -23,39 +24,80 @@ Flag ghci
     Default: False
     Manual: True
 
+Flag threaded
+    Description: Link the ghc executable against the threaded RTS
+    Default: True
+    Manual: True
+
 Executable ghc
     Default-Language: Haskell2010
 
     Main-Is: Main.hs
-    Build-Depends: base       >= 3   && < 5,
+    Build-Depends: base       >= 4   && < 5,
                    array      >= 0.1 && < 0.6,
                    bytestring >= 0.9 && < 0.11,
-                   directory  >= 1   && < 1.3,
-                   process    >= 1   && < 1.3,
-                   filepath   >= 1   && < 1.4,
-                   ghc
+                   directory  >= 1   && < 1.4,
+                   process    >= 1   && < 1.7,
+                   filepath   >= 1   && < 1.5,
+                   ghc-boot   == @ProjectVersionMunged@,
+                   ghc        == @ProjectVersionMunged@
+
     if os(windows)
-        Build-Depends: Win32
+        Build-Depends: Win32  >= 2.3 && < 2.7
     else
-        Build-Depends: unix
+        Build-Depends: unix   >= 2.7 && < 2.9
 
     C-Sources: hschooks.c
 
     GHC-Options: -Wall
+                 -Wnoncanonical-monad-instances
+                 -Wnoncanonical-monadfail-instances
+                 -Wnoncanonical-monoid-instances
+
     if flag(ghci)
+        -- NB: this is never built by the bootstrapping GHC+libraries
+        Build-depends:
+            containers     >= 0.5 && < 0.7,
+            deepseq        == 1.4.*,
+            ghc-prim       == 0.5.*,
+            ghci           == @ProjectVersionMunged@,
+            haskeline      == 0.7.*,
+            time           >= 1.8 && < 1.10,
+            transformers   == 0.5.*
         CPP-Options: -DGHCI
         GHC-Options: -fno-warn-name-shadowing
         Other-Modules:
-            InteractiveUI
-            GhciMonad
-            GhciTags
-        Build-Depends: transformers, haskeline
+            GHCi.Leak
+            GHCi.UI
+            GHCi.UI.Info
+            GHCi.UI.Monad
+            GHCi.UI.Tags
         Other-Extensions:
+            BangPatterns
             FlexibleInstances
+            LambdaCase
             MagicHash
-            TupleSections
+            MultiWayIf
+            OverloadedStrings
+            RankNTypes
+            RecordWildCards
+            ScopedTypeVariables
             UnboxedTuples
+            ViewPatterns
+
+    -- The flag being True by default, this reflects the
+    -- mk/config.mk.in logic for GhcThreaded (which ends up
+    -- always being True as well). One can still opt out by
+    -- disabling this flag.
+    if flag(threaded)
+      ghc-options: -threaded
 
     Other-Extensions:
         CPP
         NondecreasingIndentation
+        TupleSections
+
+    -- This should match the default-extensions used in 'ghc.cabal'. This way,
+    -- GHCi can be used to load it all at once.
+    Default-Extensions:
+        NoImplicitPrelude