diff options
author | David Waern <david.waern@gmail.com> | 2008-07-23 23:21:15 +0000 |
---|---|---|
committer | David Waern <david.waern@gmail.com> | 2008-07-23 23:21:15 +0000 |
commit | 84d56e33fab93772cc4822ac9b6c80a91542597d (patch) | |
tree | 8a9ec63dfee38a39d6911caaab43da187baadf1e /haddock.cabal | |
parent | a13a4b66d5df5eb4e443d734feaa12f0a90d1783 (diff) |
Be compatible with GHC 6.8.3
The cabal file is converted to use the "new" syntax with explicit Library
and Executable sections.
We define the __GHC_PATCHLEVEL__ symbol using a conditinal cpp-options field
in the cabal file. (Ideally, Cabal would define the symbol for us, like it does
for __GLASGOW_HASKELL__).
We use these symbols to #ifdef around a small difference between 6.8.2 and 6.8.3.
Previously, we only supported GHC 6.8.2 officially but the dependencies field
said "ghc <= 6.9". This was just for convenience when testing against the (then
compatible) HEAD version of GHC, and was left in the release by mistake.
Now, we support both GHC 6.8.2 and 6.8.3 and the dependencies field
correctly reflects this.
Diffstat (limited to 'haddock.cabal')
-rw-r--r-- | haddock.cabal | 199 |
1 files changed, 107 insertions, 92 deletions
diff --git a/haddock.cabal b/haddock.cabal index 83d0d63b..4f25ae61 100644 --- a/haddock.cabal +++ b/haddock.cabal @@ -1,8 +1,8 @@ -cabal-version: >= 1.2 -build-type: Simple name: haddock version: 2.2.0 +cabal-version: >= 1.2 license: BSD3 +build-type: Simple license-file: LICENSE copyright: (c) Simon Marlow, David Waern author: Simon Marlow, David Waern @@ -13,95 +13,110 @@ synopsis: A documentation-generation tool for Haskell libraries description: Haddock is a documentation-generation tool for Haskell libraries category: Development -build-depends: - base, - haskell98, - ghc >= 6.8.2 && < 6.9, - ghc-paths, - filepath, - directory, - pretty, - containers, - array -extensions: CPP, PatternGuards, DeriveDataTypeable, - PatternSignatures, MagicHash -hs-source-dirs: src -exposed-modules: Distribution.Haddock -other-modules: - Haddock.Types - Haddock.InterfaceFile - Haddock.Exception -data-files: - html/haddock-DEBUG.css - html/haddock.css - html/haddock-util.js - html/haskell_icon.gif - html/minus.gif - html/plus.gif + extra-source-files: - CHANGES - README - TODO - doc/Makefile - doc/README - doc/aclocal.m4 - doc/config.mk.in - doc/configure.ac - doc/docbook-xml.mk - doc/fptools.css - doc/haddock.xml - examples/A.hs - examples/B.hs - examples/Bug1.hs - examples/Bug2.hs - examples/Bug3.hs - examples/Bug4.hs - examples/Bug6.hs - examples/Bug7.hs - examples/Bug8.hs - examples/Bug9.hs - examples/Hash.hs - examples/Hidden.hs - examples/Makefile - examples/NoLayout.hs - examples/Test.hs - examples/Visible.hs - examples/hide-bug/A.hs - examples/hide-bug/B.hs - examples/hide-bug/C.hs - examples/hide-bug/D.hs - haddock.spec - haskell.vim - src/haddock.sh + CHANGES + README + TODO + doc/Makefile + doc/README + doc/aclocal.m4 + doc/config.mk.in + doc/configure.ac + doc/docbook-xml.mk + doc/fptools.css + doc/haddock.xml + examples/A.hs + examples/B.hs + examples/Bug1.hs + examples/Bug2.hs + examples/Bug3.hs + examples/Bug4.hs + examples/Bug6.hs + examples/Bug7.hs + examples/Bug8.hs + examples/Bug9.hs + examples/Hash.hs + examples/Hidden.hs + examples/Makefile + examples/NoLayout.hs + examples/Test.hs + examples/Visible.hs + examples/hide-bug/A.hs + examples/hide-bug/B.hs + examples/hide-bug/C.hs + examples/hide-bug/D.hs + haddock.spec + haskell.vim + src/haddock.sh + +data-files: + html/haddock-DEBUG.css + html/haddock.css + html/haddock-util.js + html/haskell_icon.gif + html/minus.gif + html/plus.gif + + + +executable haddock + build-depends: + base, + haskell98, + ghc == 6.8.2 || == 6.8.3, + ghc-paths, + filepath, + directory, + pretty, + containers, + array + main-is: Main.hs + hs-source-dirs: src + extensions: CPP, PatternGuards, DeriveDataTypeable, + PatternSignatures, MagicHash + ghc-options: -funbox-strict-fields -O2 + + other-modules: + Haddock.Interface + Haddock.Interface.Rename + Haddock.Interface.Create + Haddock.Interface.AttachInstances + Haddock.Utils.FastMutInt2 + Haddock.Utils.BlockTable + Haddock.Utils.Html + Haddock.Utils + Haddock.Backends.Html + Haddock.Backends.HaddockDB + Haddock.Backends.DevHelp + Haddock.Backends.HH + Haddock.Backends.HH2 + Haddock.Backends.Hoogle + Haddock.ModuleTree + Haddock.Types + Haddock.DocName + Haddock.Version + Haddock.InterfaceFile + Haddock.Exception + Haddock.Options + Haddock.GHC.Typecheck + Haddock.GHC.Utils + Haddock.GHC + + -- Cabal doesn't define __GHC_PATCHLEVEL__ + if impl(ghc == 6.8.3) + cpp-options: -D__GHC_PATCHLEVEL__=3 + if impl(ghc == 6.8.2) + cpp-options: -D__GHC_PATCHLEVEL__=2 + + -executable: haddock -hs-source-dirs: src -main-is: Main.hs -extensions: CPP, PatternGuards, DeriveDataTypeable, - PatternSignatures, MagicHash -ghc-options: -funbox-strict-fields -O2 -other-modules: - Haddock.Interface - Haddock.Interface.Rename - Haddock.Interface.Create - Haddock.Interface.AttachInstances - Haddock.Utils.FastMutInt2 - Haddock.Utils.BlockTable - Haddock.Utils.Html - Haddock.Utils - Haddock.Backends.Html - Haddock.Backends.HaddockDB - Haddock.Backends.DevHelp - Haddock.Backends.HH - Haddock.Backends.HH2 - Haddock.Backends.Hoogle - Haddock.ModuleTree - Haddock.Types - Haddock.DocName - Haddock.Version - Haddock.InterfaceFile - Haddock.Exception - Haddock.Options - Haddock.GHC.Typecheck - Haddock.GHC.Utils - Haddock.GHC +library + hs-source-dirs: src + extensions: CPP, PatternGuards, DeriveDataTypeable, + PatternSignatures, MagicHash + exposed-modules: Distribution.Haddock + other-modules: + Haddock.Types + Haddock.InterfaceFile + Haddock.Exception |