base: Remove `Monad(fail)` method and reexport `MonadFail(fail)` instead
[ghc.git] / ghc / ghc-bin.cabal.in
1 -- WARNING: ghc-bin.cabal is automatically generated from ghc-bin.cabal.in by
2 -- ./configure.  Make sure you are editing ghc-bin.cabal.in, not ghc-bin.cabal.
3
4 Name: ghc-bin
5 Version: @ProjectVersion@
6 Copyright: XXX
7 -- License: XXX
8 -- License-File: XXX
9 Author: XXX
10 Maintainer: glasgow-haskell-users@haskell.org
11 Homepage: http://www.haskell.org/ghc/
12 Synopsis: The Glorious Glasgow Haskell Compiler.
13 Description:
14     This package contains the @ghc@ executable, the user facing front-end
15     to the Glasgow Haskell Compiler.
16 Category: Development
17 Data-Dir: ..
18 Data-Files: settings
19 Build-Type: Simple
20 Cabal-Version: >=1.10
21
22 Flag ghci
23     Description: Build GHCi support.
24     Default: False
25     Manual: True
26
27 Flag threaded
28     Description: Link the ghc executable against the threaded RTS
29     Default: True
30     Manual: True
31
32 Executable ghc
33     Default-Language: Haskell2010
34
35     Main-Is: Main.hs
36     Build-Depends: base       >= 4   && < 5,
37                    array      >= 0.1 && < 0.6,
38                    bytestring >= 0.9 && < 0.11,
39                    directory  >= 1   && < 1.4,
40                    process    >= 1   && < 1.7,
41                    filepath   >= 1   && < 1.5,
42                    ghc-boot   == @ProjectVersionMunged@,
43                    ghc        == @ProjectVersionMunged@
44
45     if os(windows)
46         Build-Depends: Win32  >= 2.3 && < 2.7
47     else
48         Build-Depends: unix   >= 2.7 && < 2.9
49
50     C-Sources: hschooks.c
51
52     GHC-Options: -Wall
53                  -Wnoncanonical-monad-instances
54                  -Wnoncanonical-monoid-instances
55
56     if flag(ghci)
57         -- NB: this is never built by the bootstrapping GHC+libraries
58         Build-depends:
59             containers     >= 0.5 && < 0.7,
60             deepseq        == 1.4.*,
61             ghc-prim       == 0.5.*,
62             ghci           == @ProjectVersionMunged@,
63             haskeline      == 0.7.*,
64             time           >= 1.8 && < 1.10,
65             transformers   == 0.5.*
66         CPP-Options: -DGHCI
67         GHC-Options: -fno-warn-name-shadowing
68         Other-Modules:
69             GHCi.Leak
70             GHCi.UI
71             GHCi.UI.Info
72             GHCi.UI.Monad
73             GHCi.UI.Tags
74         Other-Extensions:
75             BangPatterns
76             FlexibleInstances
77             LambdaCase
78             MagicHash
79             MultiWayIf
80             OverloadedStrings
81             RankNTypes
82             RecordWildCards
83             ScopedTypeVariables
84             UnboxedTuples
85             ViewPatterns
86
87     -- The flag being True by default, this reflects the
88     -- mk/config.mk.in logic for GhcThreaded (which ends up
89     -- always being True as well). One can still opt out by
90     -- disabling this flag.
91     if flag(threaded)
92       ghc-options: -threaded
93
94     Other-Extensions:
95         CPP
96         NondecreasingIndentation
97         TupleSections
98
99     -- This should match the default-extensions used in 'ghc.cabal'. This way,
100     -- GHCi can be used to load it all at once.
101     Default-Extensions:
102         NoImplicitPrelude