ghc-9.0.2: ghc.cabal
-- WARNING: ghc.cabal is automatically generated from ghc.cabal.in by
-- ./configure. Make sure you are editing ghc.cabal.in, not ghc.cabal.
Name: ghc
Version: 9.0.2
License: BSD3
License-File: LICENSE
Author: The GHC Team
Maintainer: glasgow-haskell-users@haskell.org
Homepage: http://www.haskell.org/ghc/
Synopsis: The GHC API
Description:
GHC's functionality can be useful for more things than just
compiling Haskell programs. Important use cases are programs
that analyse (and perhaps transform) Haskell code. Others
include loading Haskell code dynamically in a GHCi-like manner.
For this reason, a lot of GHC's functionality is made available
through this package.
.
See <https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/compiler>
for more information.
Category: Development
Build-Type: Simple
Cabal-Version: 2.0
Flag ghci
Description: Build GHCi support.
Default: False
Manual: True
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
Flag terminfo
Description: Build GHC with terminfo support on non-Windows platforms.
Default: True
Manual: True
Flag dynamic-system-linker
Description: The system can load dynamic code. This is not the case for musl.
Default: True
Manual: False
Library
Default-Language: Haskell2010
Exposed: False
Build-Depends: base >= 4.11 && < 4.16,
deepseq >= 1.4 && < 1.5,
directory >= 1 && < 1.4,
process >= 1 && < 1.7,
bytestring >= 0.9 && < 0.11,
binary == 0.8.*,
time >= 1.4 && < 1.10,
containers >= 0.6.2.1 && < 0.7,
array >= 0.1 && < 0.6,
filepath >= 1 && < 1.5,
template-haskell == 2.17.*,
hpc == 0.6.*,
transformers == 0.5.*,
exceptions == 0.10.*,
ghc-boot == 9.0.2,
ghc-boot-th == 9.0.2,
ghc-heap == 9.0.2,
ghci == 9.0.2
if os(windows)
Build-Depends: Win32 >= 2.3 && < 2.13
else
if flag(terminfo)
Build-Depends: terminfo == 0.4.*
Build-Depends: unix >= 2.7 && < 2.9
GHC-Options: -Wall
-Wno-name-shadowing
-Wnoncanonical-monad-instances
-Wnoncanonical-monoid-instances
if flag(ghci)
CPP-Options: -DHAVE_INTERNAL_INTERPRETER
-- Include-Dirs: ../rts/dist/build
-- if no dynamic system linker is available, don't try DLLs.
if flag(dynamic-system-linker)
CPP-Options: -DCAN_LOAD_DLL
Other-Extensions:
CPP
DataKinds
DeriveDataTypeable
DeriveFoldable
DeriveFunctor
DeriveTraversable
DisambiguateRecordFields
ExplicitForAll
FlexibleContexts
FlexibleInstances
GADTs
GeneralizedNewtypeDeriving
MagicHash
MultiParamTypeClasses
NamedFieldPuns
NondecreasingIndentation
RankNTypes
RecordWildCards
StandaloneDeriving
Trustworthy
TupleSections
TypeFamilies
TypeSynonymInstances
UnboxedTuples
UndecidableInstances
Include-Dirs: .
-- 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
-- else
-- if flag(stage2)
-- Include-Dirs: stage2
-- else
-- if flag(stage3)
-- Include-Dirs: stage2
Install-Includes: HsVersions.h
c-sources:
cbits/cutils.c
cbits/genSym.c
cbits/keepCAFsForGHCi.c
hs-source-dirs:
.
-- we use an explicit Prelude
Default-Extensions:
NoImplicitPrelude
,BangPatterns
,ScopedTypeVariables
Exposed-Modules:
GHC.Iface.Ext.Types
GHC.Iface.Ext.Debug
GHC.Iface.Ext.Binary
GHC.Iface.Ext.Utils
GHC.Iface.Ext.Ast
GHC.SysTools.Ar
GHC.SysTools.FileCleanup
GHC.Driver.Backend
GHC.Driver.Backpack
GHC.Driver.Backpack.Syntax
GHC.Types.Name.Shape
GHC.Iface.Rename
GHC.Types.Avail
GHC.Utils.Asm
GHC.Types.Basic
GHC.Core.ConLike
GHC.Core.DataCon
GHC.Core.PatSyn
GHC.Types.Demand
GHC.Types.Cpr
GHC.Cmm.DebugBlock
GHC.Utils.Exception
GHC.Types.FieldLabel
GHC.Driver.Monad
GHC.Driver.Hooks
GHC.Driver.Flags
GHC.Driver.Ways
GHC.Types.Id
GHC.Types.Id.Info
GHC.Core.Predicate
GHC.Utils.Lexeme
GHC.Types.Literal
GHC.Llvm
GHC.Llvm.Syntax
GHC.Llvm.MetaData
GHC.Llvm.Ppr
GHC.Llvm.Types
GHC.CmmToLlvm
GHC.CmmToLlvm.Base
GHC.CmmToLlvm.CodeGen
GHC.CmmToLlvm.Data
GHC.CmmToLlvm.Ppr
GHC.CmmToLlvm.Regs
GHC.CmmToLlvm.Mangler
GHC.Types.Id.Make
GHC.Unit
GHC.Unit.Parser
GHC.Unit.Ppr
GHC.Unit.Types
GHC.Unit.Module
GHC.Unit.Module.Name
GHC.Unit.Module.Location
GHC.Unit.Module.Env
GHC.Types.Name
GHC.Types.Name.Env
GHC.Types.Name.Set
GHC.Types.Name.Occurrence
GHC.Types.Name.Reader
GHC.Types.Name.Cache
GHC.Types.SrcLoc
GHC.Types.Unique.Supply
GHC.Types.Unique
GHC.Types.Var
GHC.Types.Var.Env
GHC.Types.Var.Set
GHC.Data.Graph.UnVar
GHC.Cmm.BlockId
GHC.Cmm.CLabel
GHC.Cmm
GHC.Cmm.Info.Build
GHC.Cmm.Pipeline
GHC.Cmm.CallConv
GHC.Cmm.CommonBlockElim
GHC.Cmm.Switch.Implement
GHC.Cmm.ContFlowOpt
GHC.Cmm.Expr
GHC.Cmm.Info
GHC.Cmm.Lexer
GHC.Cmm.Lint
GHC.Cmm.Liveness
GHC.Cmm.MachOp
GHC.Cmm.Monad
GHC.Cmm.Switch
GHC.Cmm.Node
GHC.Cmm.Opt
GHC.Cmm.Parser
GHC.Cmm.ProcPoint
GHC.Cmm.Sink
GHC.Cmm.Type
GHC.Cmm.Utils
GHC.Cmm.LayoutStack
GHC.Utils.CliOption
GHC.Data.EnumSet
GHC.Cmm.Graph
GHC.CmmToAsm.Ppr
GHC.CmmToAsm.Config
GHC.CmmToC
GHC.Cmm.Ppr
GHC.Cmm.Ppr.Decl
GHC.Cmm.Ppr.Expr
GHC.Data.Bitmap
GHC.Platform.Regs
GHC.Platform.ARM
GHC.Platform.AArch64
GHC.Platform.NoRegs
GHC.Platform.PPC
GHC.Platform.S390X
GHC.Platform.SPARC
GHC.Platform.X86
GHC.Platform.X86_64
GHC.StgToCmm.CgUtils
GHC.StgToCmm
GHC.StgToCmm.Bind
GHC.StgToCmm.Closure
GHC.StgToCmm.DataCon
GHC.StgToCmm.Env
GHC.StgToCmm.Expr
GHC.StgToCmm.Foreign
GHC.StgToCmm.Heap
GHC.StgToCmm.Hpc
GHC.StgToCmm.ArgRep
GHC.StgToCmm.Layout
GHC.StgToCmm.Monad
GHC.StgToCmm.Prim
GHC.StgToCmm.Prof
GHC.StgToCmm.Ticky
GHC.StgToCmm.Utils
GHC.StgToCmm.ExtCode
GHC.StgToCmm.Types
GHC.Runtime.Heap.Layout
GHC.Core.Opt.Arity
GHC.Core.FVs
GHC.Core.Lint
GHC.Core.Subst
GHC.Core.SimpleOpt
GHC.Core
GHC.Data.TrieMap
GHC.Core.Tidy
GHC.Core.Unfold
GHC.Core.Utils
GHC.Core.Map
GHC.Core.Seq
GHC.Core.Stats
GHC.Core.Make
GHC.Core.Ppr
GHC.HsToCore.PmCheck.Oracle
GHC.HsToCore.PmCheck.Ppr
GHC.HsToCore.PmCheck.Types
GHC.HsToCore.PmCheck
GHC.HsToCore.Coverage
GHC.Data.UnionFind
GHC.HsToCore
GHC.HsToCore.Arrows
GHC.HsToCore.Binds
GHC.HsToCore.Foreign.Call
GHC.HsToCore.Expr
GHC.HsToCore.Foreign.Decl
GHC.HsToCore.GuardedRHSs
GHC.HsToCore.ListComp
GHC.HsToCore.Monad
GHC.HsToCore.Usage
GHC.HsToCore.Utils
GHC.HsToCore.Docs
GHC.HsToCore.Match
GHC.HsToCore.Match.Constructor
GHC.HsToCore.Match.Literal
GHC.Hs
GHC.Hs.Binds
GHC.Hs.Decls
GHC.Hs.Doc
GHC.Hs.Expr
GHC.Hs.ImpExp
GHC.Hs.Lit
GHC.Hs.Extension
GHC.Hs.Instances
GHC.Hs.Pat
GHC.Hs.Type
GHC.Hs.Utils
GHC.Hs.Dump
GHC.Iface.Binary
GHC.Iface.Recomp.Binary
GHC.Tc.TyCl.Build
GHC.Iface.Env
GHC.Iface.Syntax
GHC.Iface.Type
GHC.CoreToIface
GHC.Iface.Load
GHC.Iface.Make
GHC.Iface.Recomp
GHC.IfaceToCore
GHC.Iface.Recomp.Flags
GHC.Types.Annotations
GHC.Driver.CmdLine
GHC.Driver.CodeOutput
GHC.Settings.Constants
GHC.Driver.MakeFile
GHC.Driver.Phases
GHC.Driver.Pipeline.Monad
GHC.Driver.Pipeline
GHC.Driver.Session
GHC.Utils.Error
GHC.Driver.Finder
GHC
GHC.Driver.Make
GHC.Plugins
GHC.Prelude
GHC.Parser.Header
GHC.Driver.Main
GHC.Hs.Stats
GHC.Driver.Types
GHC.Runtime.Eval
GHC.Runtime.Eval.Types
GHC.Runtime.Loader
GHC.Unit.Info
GHC.Unit.State
GHC.Driver.Plugins
GHC.Tc.Plugin
GHC.Core.Ppr.TyThing
GHC.Settings
GHC.Iface.Tidy.StaticPtrTable
GHC.SysTools
GHC.SysTools.BaseDir
GHC.SysTools.Terminal
GHC.SysTools.ExtraObj
GHC.SysTools.Info
GHC.SysTools.Process
GHC.SysTools.Tasks
GHC.Settings.IO
GHC.SysTools.Elf
GHC.Iface.Tidy
GHC.Parser.CharClass
GHC.Parser.Lexer
GHC.Core.Coercion.Opt
GHC.Parser
GHC.Parser.PostProcess
GHC.Parser.PostProcess.Haddock
GHC.Parser.Annotation
GHC.Types.ForeignCall
GHC.Builtin.Uniques
GHC.Builtin.Utils
GHC.Builtin.Names
GHC.Core.Opt.ConstantFold
GHC.Builtin.PrimOps
GHC.Builtin.RebindableNames
GHC.Builtin.Types.Prim
GHC.Builtin.Types
GHC.Types.CostCentre
GHC.Types.CostCentre.State
GHC.Rename.Bind
GHC.Rename.Env
GHC.Rename.Expr
GHC.Rename.Doc
GHC.Rename.Names
GHC.Rename.Pat
GHC.Rename.Module
GHC.Rename.Splice
GHC.Rename.HsType
GHC.Rename.Fixity
GHC.Rename.Utils
GHC.Rename.Unbound
GHC.Core.Opt.Monad
GHC.Core.Opt.CSE
GHC.Core.Opt.FloatIn
GHC.Core.Opt.FloatOut
GHC.Core.Opt.LiberateCase
GHC.Core.Opt.OccurAnal
GHC.Core.Opt.StaticArgs
GHC.Core.Opt.SetLevels
GHC.Core.Opt.Pipeline
GHC.Core.Opt.Simplify.Env
GHC.Core.Opt.Simplify.Monad
GHC.Core.Opt.Simplify.Utils
GHC.Core.Opt.Simplify
GHC.Stg.Pipeline
GHC.Stg.Stats
GHC.Stg.CSE
GHC.Stg.Lift
GHC.Stg.Lift.Analysis
GHC.Stg.Lift.Monad
GHC.Stg.Subst
GHC.Stg.Unarise
GHC.Stg.Lint
GHC.Stg.Syntax
GHC.Stg.FVs
GHC.Stg.DepAnal
GHC.CoreToStg
GHC.CoreToStg.Prep
GHC.Types.RepType
GHC.Core.Rules
GHC.Core.Opt.SpecConstr
GHC.Core.Opt.Specialise
GHC.Core.Opt.CallArity
GHC.Core.Opt.DmdAnal
GHC.Core.Opt.CprAnal
GHC.Core.Opt.Exitify
GHC.Core.Opt.WorkWrap
GHC.Core.Opt.WorkWrap.Utils
GHC.Tc.Instance.Family
GHC.Tc.Instance.Class
GHC.Tc.Utils.Instantiate
GHC.Tc.Gen.Annotation
GHC.Tc.Gen.Arrow
GHC.Tc.Gen.Bind
GHC.Tc.Gen.Sig
GHC.Tc.TyCl.Class
GHC.Tc.Gen.Default
GHC.Tc.Deriv
GHC.Tc.Deriv.Infer
GHC.Tc.Deriv.Utils
GHC.Tc.Utils.Env
GHC.Tc.Gen.Expr
GHC.Tc.Gen.Foreign
GHC.Tc.Deriv.Generate
GHC.Tc.Deriv.Functor
GHC.Tc.Deriv.Generics
GHC.Tc.Utils.Zonk
GHC.Tc.Utils.TcType
GHC.Tc.TyCl.Instance
GHC.Tc.Utils.TcMType
GHC.Tc.Validity
GHC.Tc.Gen.Match
GHC.Tc.Gen.Pat
GHC.Tc.TyCl.PatSyn
GHC.Tc.Module
GHC.Tc.Utils.Backpack
GHC.Tc.Gen.Export
GHC.Tc.Utils.Monad
GHC.Tc.Types
GHC.Tc.Types.Constraint
GHC.Tc.Types.Origin
GHC.Tc.Gen.Rule
GHC.Tc.Errors.Hole
GHC.Tc.Errors.Hole.FitTypes
GHC.Tc.Errors
GHC.Tc.TyCl
GHC.Tc.TyCl.Utils
GHC.Tc.Instance.Typeable
GHC.Tc.Gen.HsType
GHC.Tc.Types.Evidence
GHC.Tc.Types.EvTerm
GHC.Tc.Utils.Unify
GHC.Tc.Solver
GHC.Tc.Solver.Interact
GHC.Tc.Solver.Canonical
GHC.Tc.Solver.Flatten
GHC.Tc.Solver.Monad
GHC.Builtin.Types.Literals
GHC.Tc.Gen.Splice
GHC.Core.Class
GHC.Core.Coercion
GHC.HsToCore.Quote
GHC.Builtin.Names.TH
GHC.Core.FamInstEnv
GHC.Tc.Instance.FunDeps
GHC.Core.InstEnv
GHC.Core.Multiplicity
GHC.Core.UsageEnv
GHC.Core.TyCon
GHC.Core.Coercion.Axiom
GHC.Core.Type
GHC.Core.TyCo.Rep
GHC.Core.TyCo.FVs
GHC.Core.TyCo.Subst
GHC.Core.TyCo.Ppr
GHC.Core.TyCo.Tidy
GHC.Core.Unify
GHC.Data.Bag
GHC.Utils.Binary
GHC.Data.BooleanFormula
GHC.Utils.BufHandle
GHC.Data.Graph.Directed
GHC.Utils.Encoding
GHC.Utils.IO.Unsafe
GHC.Data.FastMutInt
GHC.Data.FastString
GHC.Data.FastString.Env
GHC.Utils.Fingerprint
GHC.Data.FiniteMap
GHC.Utils.FV
GHC.Data.Graph.Base
GHC.Data.Graph.Color
GHC.Data.Graph.Ops
GHC.Data.Graph.Ppr
GHC.Data.IOEnv
GHC.Utils.Json
GHC.Data.List.SetOps
GHC.Data.Maybe
GHC.Utils.Monad
GHC.Data.OrdList
GHC.Utils.Outputable
GHC.Data.Pair
GHC.Utils.Panic
GHC.Utils.Panic.Plain
GHC.Utils.Ppr.Colour
GHC.Utils.Ppr
GHC.Utils.Monad.State
GHC.Data.Stream
GHC.Data.StringBuffer
GHC.Types.Unique.DFM
GHC.Types.Unique.DSet
GHC.Types.Unique.FM
GHC.Types.Unique.Set
GHC.Utils.Misc
GHC.Cmm.Dataflow
GHC.Cmm.Dataflow.Block
GHC.Cmm.Dataflow.Collections
GHC.Cmm.Dataflow.Graph
GHC.Cmm.Dataflow.Label
GHC.Settings.Config
autogen-modules: GHC.Settings.Config
Exposed-Modules:
GHC.CmmToAsm
GHC.CmmToAsm.Reg.Target
GHC.CmmToAsm.Monad
GHC.CmmToAsm.Instr
GHC.CmmToAsm.BlockLayout
GHC.CmmToAsm.CFG
GHC.CmmToAsm.CFG.Dominators
GHC.CmmToAsm.Format
GHC.Platform.Reg
GHC.Platform.Reg.Class
GHC.CmmToAsm.PIC
GHC.CmmToAsm.CPrim
GHC.CmmToAsm.X86.Regs
GHC.CmmToAsm.X86.RegInfo
GHC.CmmToAsm.X86.Instr
GHC.CmmToAsm.X86.Cond
GHC.CmmToAsm.X86.Ppr
GHC.CmmToAsm.X86.CodeGen
GHC.CmmToAsm.PPC.Regs
GHC.CmmToAsm.PPC.RegInfo
GHC.CmmToAsm.PPC.Instr
GHC.CmmToAsm.PPC.Cond
GHC.CmmToAsm.PPC.Ppr
GHC.CmmToAsm.PPC.CodeGen
GHC.CmmToAsm.SPARC.Base
GHC.CmmToAsm.SPARC.Regs
GHC.CmmToAsm.SPARC.Imm
GHC.CmmToAsm.SPARC.AddrMode
GHC.CmmToAsm.SPARC.Cond
GHC.CmmToAsm.SPARC.Instr
GHC.CmmToAsm.SPARC.Stack
GHC.CmmToAsm.SPARC.ShortcutJump
GHC.CmmToAsm.SPARC.Ppr
GHC.CmmToAsm.SPARC.CodeGen
GHC.CmmToAsm.SPARC.CodeGen.Amode
GHC.CmmToAsm.SPARC.CodeGen.Base
GHC.CmmToAsm.SPARC.CodeGen.CondCode
GHC.CmmToAsm.SPARC.CodeGen.Gen32
GHC.CmmToAsm.SPARC.CodeGen.Gen64
GHC.CmmToAsm.SPARC.CodeGen.Sanity
GHC.CmmToAsm.SPARC.CodeGen.Expand
GHC.CmmToAsm.Reg.Liveness
GHC.CmmToAsm.Reg.Graph
GHC.CmmToAsm.Reg.Graph.Stats
GHC.CmmToAsm.Reg.Graph.Base
GHC.CmmToAsm.Reg.Graph.X86
GHC.CmmToAsm.Reg.Graph.Coalesce
GHC.CmmToAsm.Reg.Graph.Spill
GHC.CmmToAsm.Reg.Graph.SpillClean
GHC.CmmToAsm.Reg.Graph.SpillCost
GHC.CmmToAsm.Reg.Graph.TrivColorable
GHC.CmmToAsm.Reg.Linear
GHC.CmmToAsm.Reg.Linear.JoinToTargets
GHC.CmmToAsm.Reg.Linear.State
GHC.CmmToAsm.Reg.Linear.Stats
GHC.CmmToAsm.Reg.Linear.FreeRegs
GHC.CmmToAsm.Reg.Linear.StackMap
GHC.CmmToAsm.Reg.Linear.Base
GHC.CmmToAsm.Reg.Linear.X86
GHC.CmmToAsm.Reg.Linear.X86_64
GHC.CmmToAsm.Reg.Linear.PPC
GHC.CmmToAsm.Reg.Linear.SPARC
GHC.CmmToAsm.Reg.Utils
GHC.CmmToAsm.Dwarf
GHC.CmmToAsm.Dwarf.Types
GHC.CmmToAsm.Dwarf.Constants
GHC.ThToHs
GHC.ByteCode.Types
GHC.ByteCode.Asm
GHC.ByteCode.Instr
GHC.ByteCode.InfoTable
GHC.ByteCode.Linker
GHC.CoreToByteCode
GHC.Runtime.Debugger
GHC.Runtime.Linker.Types
GHC.Runtime.Linker
GHC.Runtime.Heap.Inspect
GHC.Runtime.Interpreter
GHC.Runtime.Interpreter.Types