* changed from haddock-2.0.0.0 to haddock-2.1.0

(both only work with ghc-6.8.2, not ghc-6.8.3)
* added haddock-0.9 as a version that compiles with
  nearly all ghc's we have
* added haddock-0.9-boot the works with ghc-6.4.2-boot
* the haddock-0.9-boot is now used to generate library
  documentation while building ghc-6.8.3

svn path=/nixpkgs/trunk/; revision=12392
This commit is contained in:
Andres Löh 2008-07-22 13:01:30 +00:00
parent dd4a4a1dc4
commit cf7b225cf4
4 changed files with 66 additions and 5 deletions

View File

@ -0,0 +1,34 @@
{cabal, gmp}:
cabal.mkDerivation (self : {
pname = "haddock";
version = "0.9";
name = self.fname;
sha256 = "beefd4a6da577978e7a79cabba60970accc5cd48fbb04c424a6b36ace3a9f8d0";
extraBuildInputs = [gmp];
meta = {
description = "a tool for automatically generating documentation from annotated Haskell source code";
};
# we are using this for booting, and ghc-6.4.2 doesn't have full
# Cabal support, therefore we have to override some things:
configurePhase = ''
sed -i -e 's|cabal-version:.*$|cabal-version: >= 1.0|' \
-e '/^flag/,+3d' \
-e '/^ *if/,+2d' \
-e '/^ *else/d' \
-e 's|^ ||' \
-e 's|^ ||' \
-e '/^executable/,$ { /^ *$/d }' \
-e '/^build-depends/d' \
-e '/data-files/ibuild-depends: base, haskell98' \
haddock.cabal
cp dist/build/haddock/haddock-tmp/*.hs src
ghc --make -o Setup Setup.lhs
./Setup configure --verbose --prefix="$out"
'';
installPhase = ''
./Setup copy
'';
})

View File

@ -2,9 +2,9 @@
cabal.mkDerivation (self : {
pname = "haddock";
version = "2.0.0.0";
version = "0.9";
name = self.fname;
sha256 = "a2ea5bdc127bc8b189a8d869f582ec774fea0933e7f5ca89549a6c142b9993df";
sha256 = "beefd4a6da577978e7a79cabba60970accc5cd48fbb04c424a6b36ace3a9f8d0";
meta = {
description = "a tool for automatically generating documentation from annotated Haskell source code";
};

View File

@ -0,0 +1,11 @@
{cabal}:
cabal.mkDerivation (self : {
pname = "haddock";
version = "2.1.0";
name = self.fname;
sha256 = "1b67869e493e56366207a128949998851f975d821e0952c2c717840d2eadaca7";
meta = {
description = "a tool for automatically generating documentation from annotated Haskell source code";
};
})

View File

@ -1538,6 +1538,7 @@ let pkgs = rec {
ghc683 = import ../development/compilers/ghc-6.8/ghc-6.8.3.nix {
inherit fetchurl stdenv readline perl gmp ncurses m4;
ghc = ghcboot;
haddock = haddockboot;
};
ghc69snapshot = import ../development/compilers/ghc-6.8/head.nix {
@ -2156,10 +2157,22 @@ let pkgs = rec {
inherit fetchurl stdenv;
};
haddock = import ../development/tools/documentation/haddock {
# used to bootstrap ghc with
haddockboot = lowPrio (appendToName "boot" (import ../development/tools/documentation/haddock/boot.nix {
inherit gmp;
cabal = cabalboot;
}));
# old version of haddock, still more stable than 2.0
haddock09 = import ../development/tools/documentation/haddock/haddock-0.9.nix {
inherit cabal;
};
# does not compile with ghc-6.8.3
haddock210 = import ../development/tools/documentation/haddock/haddock-2.1.0.nix {
cabal = cabal682;
};
hsc2hs = import ../development/tools/misc/hsc2hs {
inherit bleedingEdgeRepos stdenv;
ghc = ghcsAndLibs.ghc68.ghc;
@ -3658,13 +3671,16 @@ let pkgs = rec {
ghc = ghc682;
};
# cabal is a utility function to build cabal-based
# Haskell packages
cabal683 = import ../development/libraries/haskell/cabal/cabal.nix {
inherit stdenv fetchurl;
ghc = ghc683;
};
cabalboot = import ../development/libraries/haskell/cabal/cabal.nix {
inherit stdenv fetchurl;
ghc = ghcboot;
};
cabal = cabal683;
Crypto = import ../development/libraries/haskell/Crypto {