-- ./configure. Make sure you are editing ghc.cabal.in, not ghc.cabal.
Name: ghc
-Version: @ProjectVersion@
+Version: @ProjectVersionMunged@
License: BSD3
License-File: ../LICENSE
Author: The GHC Team
Default: False
Manual: True
+Flag terminfo
+ Description: Build GHC with terminfo support on non-Windows platforms.
+ Default: True
+ Manual: True
+
Library
Default-Language: Haskell2010
Exposed: False
- Build-Depends: base >= 4 && < 5,
- directory >= 1 && < 1.3,
- process >= 1 && < 1.3,
+ Build-Depends: base >= 4.9 && < 5,
+ deepseq >= 1.4 && < 1.5,
+ directory >= 1 && < 1.4,
+ process >= 1 && < 1.7,
bytestring >= 0.9 && < 0.11,
- time < 1.6,
+ binary == 0.8.*,
+ time >= 1.4 && < 1.9,
containers >= 0.5 && < 0.6,
array >= 0.1 && < 0.6,
- filepath >= 1 && < 1.4,
- hpc,
- transformers,
- bin-package-db,
- hoopl
+ filepath >= 1 && < 1.5,
+ template-haskell == 2.13.*,
+ hpc == 0.6.*,
+ transformers == 0.5.*,
+ ghc-boot == @ProjectVersionMunged@,
+ ghc-boot-th == @ProjectVersionMunged@,
+ ghci == @ProjectVersionMunged@
if os(windows)
- Build-Depends: Win32
+ Build-Depends: Win32 >= 2.3 && < 2.6
else
- Build-Depends: unix
+ if flag(terminfo)
+ Build-Depends: terminfo == 0.4.*
+ Build-Depends: unix == 2.7.*
- GHC-Options: -Wall -fno-warn-name-shadowing
+ GHC-Options: -Wall
+ -Wno-name-shadowing
+ -Wnoncanonical-monad-instances
+ -Wnoncanonical-monadfail-instances
+ -Wnoncanonical-monoid-instances
if flag(ghci)
- Build-Depends: template-haskell
CPP-Options: -DGHCI
Include-Dirs: ../rts/dist/build @FFIIncludeDir@
Include-Dirs: . parser utils
- if impl( ghc >= 7.9 )
- -- We need to set the package key to ghc (without a version number)
- -- as it's magic. But we can't set it for old versions of GHC (e.g.
- -- when bootstrapping) because those versions of GHC don't understand
- -- that GHC is wired-in.
- GHC-Options: -this-package-key ghc
+ -- We need to set the unit id to ghc (without a version number)
+ -- as it's magic.
+ GHC-Options: -this-unit-id ghc
if flag(stage1)
Include-Dirs: stage1
cbits/genSym.c
hs-source-dirs:
+ backpack
basicTypes
cmm
codeGen
utils
vectorise
+ -- we use an explicit Prelude
+ Default-Extensions:
+ NoImplicitPrelude
+
+ Other-Modules:
+ GhcPrelude
+
Exposed-Modules:
+ Ar
+ FileCleanup
+ DriverBkp
+ BkpSyn
+ NameShape
+ RnModIface
Avail
+ AsmUtils
BasicTypes
ConLike
DataCon
PatSyn
Demand
+ Debug
Exception
+ FieldLabel
GhcMonad
Hooks
Id
IdInfo
+ Lexeme
Literal
Llvm
Llvm.AbsSyn
NameSet
OccName
RdrName
+ NameCache
SrcLoc
UniqSupply
Unique
CmmPipeline
CmmCallConv
CmmCommonBlockElim
+ CmmImplementSwitchPlans
CmmContFlowOpt
CmmExpr
CmmInfo
CmmLint
CmmLive
CmmMachOp
+ CmmMonad
+ CmmSwitch
CmmNode
CmmOpt
CmmParse
CmmType
CmmUtils
CmmLayoutStack
+ EnumSet
MkGraph
PprBase
PprC
CoreLint
CorePrep
CoreSubst
+ CoreOpt
CoreSyn
TrieMap
CoreTidy
CoreUnfold
CoreUtils
+ CoreSeq
+ CoreStats
MkCore
PprCore
+ PmExpr
+ TmOracle
Check
Coverage
Desugar
DsGRHSs
DsListComp
DsMonad
+ DsUsage
DsUtils
Match
MatchCon
HsImpExp
HsLit
PlaceHolder
+ HsExtension
HsPat
HsSyn
HsTypes
HsUtils
+ HsDumpAst
BinIface
+ BinFingerprint
BuildTyCl
IfaceEnv
IfaceSyn
IfaceType
+ ToIface
LoadIface
MkIface
TcIface
FlagChecker
Annotations
- BreakArray
CmdLineParser
CodeOutput
Config
Plugins
TcPluginM
PprTyThing
- StaticFlags
+ StaticPtrTable
SysTools
+ SysTools.Terminal
+ Elf
TidyPgm
Ctype
HaddockUtils
OptCoercion
Parser
RdrHsSyn
+ ApiAnnotation
ForeignCall
+ KnownUniques
PrelInfo
PrelNames
PrelRules
RnSource
RnSplice
RnTypes
+ RnFixity
+ RnUtils
+ RnUnbound
CoreMonad
CSE
FloatIn
Simplify
SimplStg
StgStats
+ StgCse
UnariseStg
+ RepType
Rules
SpecConstr
Specialise
TcAnnotations
TcArrows
TcBinds
+ TcSigs
TcClassDcl
TcDefaults
TcDeriv
+ TcDerivInfer
+ TcDerivUtils
TcEnv
TcExpr
TcForeign
TcGenDeriv
+ TcGenFunctor
TcGenGenerics
TcHsSyn
TcHsType
TcPat
TcPatSyn
TcRnDriver
+ TcBackpack
+ TcRnExports
TcRnMonad
TcRnTypes
TcRules
TcErrors
TcTyClsDecls
TcTyDecls
+ TcTypeable
TcType
TcEvidence
TcUnify
TcSplice
Class
Coercion
+ DsMeta
+ THNames
FamInstEnv
FunDeps
InstEnv
CoAxiom
Kind
Type
- TypeRep
+ TyCoRep
Unify
Bag
Binary
BufWrite
Digraph
Encoding
- FastBool
FastFunctions
FastMutInt
FastString
- FastTypes
+ FastStringEnv
Fingerprint
FiniteMap
+ FV
GraphBase
GraphColor
GraphOps
GraphPpr
IOEnv
+ Json
ListSetOps
+ ListT
Maybes
MonadUtils
OrdList
Outputable
Pair
Panic
+ PprColour
Pretty
- Serialized
State
Stream
StringBuffer
+ UniqDFM
+ UniqDSet
UniqFM
+ UniqMap
UniqSet
Util
- ExtsCompat46
--- ^^^ a temporary module necessary to bootstrap with GHC <= 7.6
Vectorise.Builtins.Base
Vectorise.Builtins.Initialise
Vectorise.Builtins
Vectorise.Env
Vectorise.Exp
Vectorise
+ Hoopl.Block
+ Hoopl.Collections
Hoopl.Dataflow
- Hoopl
+ Hoopl.Graph
+ Hoopl.Label
+ Hoopl.Unique
-- CgInfoTbls used in ghci/DebuggerUtils
-- CgHeapery mkVirtHeapOffsets used in ghci
TargetReg
NCGMonad
Instruction
- Size
+ Format
Reg
RegClass
PIC
RegAlloc.Linear.X86_64.FreeRegs
RegAlloc.Linear.PPC.FreeRegs
RegAlloc.Linear.SPARC.FreeRegs
-
- if flag(ghci)
- Exposed-Modules:
- DsMeta
+ Dwarf
+ Dwarf.Types
+ Dwarf.Constants
Convert
+ ByteCodeTypes
ByteCodeAsm
ByteCodeGen
ByteCodeInstr
ByteCodeItbls
ByteCodeLink
Debugger
- LibFFI
Linker
- ObjLink
RtClosureInspect
DebuggerUtils
+ GHCi