nixpkgs/pkgs/development/tools/documentation/haddock/boot.nix

35 lines
1 KiB
Nix
Raw Normal View History

{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
'';
})