1 -- WARNING: ghc.cabal is automatically generated from ghc.cabal.in by
2 -- ./configure. Make sure you are editing ghc.cabal.in, not ghc.cabal.
5 Version: @ProjectVersion@
7 License-File: ../LICENSE
9 Maintainer: glasgow-haskell-users@haskell.org
10 Homepage: http://www.haskell.org/ghc/
13 GHC's functionality can be useful for more things than just
14 compiling Haskell programs. Important use cases are programs
15 that analyse (and perhaps transform) Haskell code. Others
16 include loading Haskell code dynamically in a GHCi-like manner.
17 For this reason, a lot of GHC's functionality is made available
21 Cabal-Version: >= 1.2.3
24 Description: Choose the even newer, even smaller, split-up base package.
27 Description: Choose the new smaller, split-up base package.
30 Description: Dynamic library support
35 Description: Build GHCi support.
40 Description: Build the NCG.
45 Description: Is this stage 1?
49 Description: Is this stage 2?
53 Description: Is this stage 3?
60 Build-Depends: base >= 4 && < 5
62 Build-Depends: base >= 3 && < 4
63 if !flag(base3) && !flag(base4)
64 Build-Depends: base < 3
66 if flag(base3) || flag(base4)
67 Build-Depends: directory >= 1 && < 1.1,
68 process >= 1 && < 1.1,
69 bytestring >= 0.9 && < 0.10,
70 old-time >= 1 && < 1.1,
71 containers >= 0.1 && < 0.5,
74 Build-Depends: filepath >= 1 && < 1.3
75 Build-Depends: Cabal, hpc
81 GHC-Options: -Wall -fno-warn-name-shadowing -fno-warn-orphans
84 Build-Depends: template-haskell
86 Include-Dirs: ../libffi/build/include
89 CPP-Options: -DOMIT_NATIVE_CODEGEN
91 Build-Depends: bin-package-db
93 -- GHC 6.4.2 needs to be able to find WCsubst.c, which needs to be
94 -- able to find WCsubst.h
95 Include-Dirs: ../libraries/base/cbits, ../libraries/base/include
97 Extensions: CPP, MagicHash, UnboxedTuples, PatternGuards,
98 ForeignFunctionInterface, EmptyDataDecls,
99 TypeSynonymInstances, MultiParamTypeClasses,
100 FlexibleInstances, Rank2Types, ScopedTypeVariables,
103 Include-Dirs: . parser utils
114 Install-Includes: HsVersions.h, ghc_boot_platform.h
122 ghci/keepCAFsForGHCi.c
460 Vectorise.Builtins.Base
461 Vectorise.Builtins.Initialise
462 Vectorise.Builtins.Modules
463 Vectorise.Builtins.Prelude
466 Vectorise.Monad.Naming
467 Vectorise.Monad.Local
468 Vectorise.Monad.Global
469 Vectorise.Monad.InstEnv
472 Vectorise.Utils.Closure
473 Vectorise.Utils.Hoisting
474 Vectorise.Utils.PADict
475 Vectorise.Utils.PRDict
482 Vectorise.Type.PADict
483 Vectorise.Type.PRDict
485 Vectorise.Type.TyConDecl
486 Vectorise.Type.Classify
494 -- We only need to expose more modules as some of the ncg code is used
495 -- by the LLVM backend so its always included
537 SPARC.CodeGen.CondCode
545 RegAlloc.Graph.ArchBase
546 RegAlloc.Graph.ArchX86
547 RegAlloc.Graph.Coalesce
549 RegAlloc.Graph.SpillClean
550 RegAlloc.Graph.SpillCost
551 RegAlloc.Graph.TrivColorable
553 RegAlloc.Linear.JoinToTargets
554 RegAlloc.Linear.State
555 RegAlloc.Linear.Stats
556 RegAlloc.Linear.FreeRegs
557 RegAlloc.Linear.StackMap
559 RegAlloc.Linear.X86.FreeRegs
560 RegAlloc.Linear.PPC.FreeRegs
561 RegAlloc.Linear.SPARC.FreeRegs