Simon's hacking on monad-comp; incomplete
[ghc-hetmet.git] / compiler / ghc.cabal.in
index 76315bd..c509eb6 100644 (file)
@@ -44,14 +44,17 @@ Flag ncg
 Flag stage1
     Description: Is this stage 1?
     Default: False
+    Manual: True
 
 Flag stage2
     Description: Is this stage 2?
     Default: False
+    Manual: True
 
 Flag stage3
     Description: Is this stage 3?
     Default: False
+    Manual: True
 
 Library
     Exposed: False
@@ -64,14 +67,14 @@ Library
         Build-Depends: base       < 3
 
     if flag(base3) || flag(base4)
-        Build-Depends: directory  >= 1   && < 1.1,
+        Build-Depends: directory  >= 1   && < 1.2,
                        process    >= 1   && < 1.1,
                        bytestring >= 0.9 && < 0.10,
                        old-time   >= 1   && < 1.1,
-                       containers >= 0.1 && < 0.4,
+                       containers >= 0.1 && < 0.5,
                        array      >= 0.1 && < 0.4
 
-    Build-Depends: filepath >= 1 && < 1.2
+    Build-Depends: filepath >= 1 && < 1.3
     Build-Depends: Cabal, hpc
     if os(windows)
         Build-Depends: Win32
@@ -89,6 +92,7 @@ Library
         CPP-Options: -DOMIT_NATIVE_CODEGEN
 
     Build-Depends: bin-package-db
+    Build-Depends: hoopl
 
     -- GHC 6.4.2 needs to be able to find WCsubst.c, which needs to be
     -- able to find WCsubst.h
@@ -98,15 +102,14 @@ Library
                 ForeignFunctionInterface, EmptyDataDecls,
                 TypeSynonymInstances, MultiParamTypeClasses,
                 FlexibleInstances, Rank2Types, ScopedTypeVariables,
-                DeriveDataTypeable, RelaxedPolyRec
+                DeriveDataTypeable
+    if impl(ghc >= 7.1)
+        Extensions: NondecreasingIndentation
 
     Include-Dirs: . parser utils
 
     if flag(stage1)
         Include-Dirs: stage1
-        if impl(ghc < 6.9)
-            Build-Depends: extensible-exceptions
-            Extensions: PatternSignatures
     else
         if flag(stage2)
             Include-Dirs: stage2
@@ -129,12 +132,13 @@ Library
         cmm
         codeGen
         coreSyn
-        cprAnalysis
         deSugar
         ghci
         hsSyn
         iface
+        llvmGen
         main
+        nativeGen
         parser
         prelude
         profiling
@@ -154,15 +158,26 @@ Library
         DataCon
         Demand
         Exception
+        GhcMonad
         Id
         IdInfo
         Literal
+        Llvm
+        Llvm.AbsSyn
+        Llvm.PpLlvm
+        Llvm.Types
+        LlvmCodeGen
+        LlvmCodeGen.Base
+        LlvmCodeGen.CodeGen
+        LlvmCodeGen.Data
+        LlvmCodeGen.Ppr
+        LlvmCodeGen.Regs
+        LlvmMangler
         MkId
         Module
         Name
         NameEnv
         NameSet
-        NewDemand
         OccName
         RdrName
         SrcLoc
@@ -174,44 +189,37 @@ Library
         BlockId
         CLabel
         Cmm
-        CmmBrokenBlock
         CmmBuildInfoTables
         CmmCPS
-        CmmCPSGen
-        CmmCPSZ
         CmmCallConv
-        CmmCommonBlockElimZ
+        CmmCommonBlockElim
         CmmContFlowOpt
         CmmCvt
+        CmmDecl
         CmmExpr
         CmmInfo
         CmmLex
         CmmLint
         CmmLive
-        CmmLiveZ
+        CmmMachOp
+        CmmNode
         CmmOpt
         CmmParse
         CmmProcPoint
-        CmmProcPointZ
         CmmSpillReload
         CmmStackLayout
-        CmmTx
+        CmmType
         CmmUtils
-        CmmZipUtil
-        DFMonad
-        Dataflow
-        MkZipCfg
-        MkZipCfgCmm
+        MkGraph
+        OldCmm
+        OldCmmUtils
+        OldPprCmm
         OptimizationFuel
+        PprBase
         PprC
         PprCmm
-        PprCmmZ
-        StackColor
-        StackPlacements
-        ZipCfg
-        ZipCfgCmmRep
-        ZipCfgExtras
-        ZipDataflow
+        PprCmmDecl
+        PprCmmExpr
         Bitmap
         CgBindery
         CgCallConv
@@ -219,6 +227,7 @@ Library
         CgClosure
         CgCon
         CgExpr
+        CgExtCode
         CgForeignCall
         CgHeapery
         CgHpc
@@ -265,7 +274,6 @@ Library
         MkExternalCore
         PprCore
         PprExternalCore
-        CprAnalyse
         Check
         Coverage
         Desugar
@@ -312,6 +320,7 @@ Library
         ErrUtils
         Finder
         GHC
+        GhcMake
         HeaderInfo
         HscMain
         HscStats
@@ -328,6 +337,7 @@ Library
         HaddockUtils
         LexCore
         Lexer
+        OptCoercion
         Parser
         ParserCore
         ParserCoreUtils
@@ -340,6 +350,7 @@ Library
         TysPrim
         TysWiredIn
         CostCentre
+        ProfInit
         SCCfinal
         RnBinds
         RnEnv
@@ -373,9 +384,6 @@ Library
         StgLint
         StgSyn
         DmdAnal
-        SaAbsInt
-        SaLib
-        StrictAnal
         WorkWrap
         WwLib
         FamInst
@@ -401,11 +409,14 @@ Library
         TcRnTypes
         TcRules
         TcSimplify
+        TcErrors
         TcTyClsDecls
         TcTyDecls
-        TcTyFuns
         TcType
         TcUnify
+        TcInteract
+        TcCanonical
+        TcSMonad
         Class
         Coercion
         FamInstEnv
@@ -434,7 +445,6 @@ Library
         GraphPpr
         IOEnv
         Interval
-        LazyUniqFM
         ListSetOps
         Maybes
         MonadUtils
@@ -448,17 +458,41 @@ Library
         UniqFM
         UniqSet
         Util
-        VectBuiltIn
-        VectCore
-        VectMonad
-        VectType
-        VectUtils
+        Vectorise.Builtins.Base
+        Vectorise.Builtins.Initialise
+        Vectorise.Builtins.Modules
+        Vectorise.Builtins.Prelude
+        Vectorise.Builtins
+        Vectorise.Monad.Base
+        Vectorise.Monad.Naming
+        Vectorise.Monad.Local
+        Vectorise.Monad.Global
+        Vectorise.Monad.InstEnv
+        Vectorise.Monad
+        Vectorise.Utils.Base
+        Vectorise.Utils.Closure
+        Vectorise.Utils.Hoisting
+        Vectorise.Utils.PADict
+        Vectorise.Utils.Poly
+        Vectorise.Utils
+        Vectorise.Type.Env
+        Vectorise.Type.Repr
+        Vectorise.Type.PData
+        Vectorise.Type.PRepr
+        Vectorise.Type.PADict
+        Vectorise.Type.Type
+        Vectorise.Type.TyConDecl
+        Vectorise.Type.Classify
+        Vectorise.Convert
+        Vectorise.Vect
+        Vectorise.Var
+        Vectorise.Env
+        Vectorise.Exp
         Vectorise
 
+    -- We only need to expose more modules as some of the ncg code is used
+    -- by the LLVM backend so its always included
     if flag(ncg)
-        hs-source-dirs:
-            nativeGen
-
         Exposed-Modules:
             AsmCodeGen
             TargetReg
@@ -467,7 +501,6 @@ Library
             Size
             Reg
             RegClass
-            PprBase
             PIC
             Platform
             Alpha.Regs