nixpkgs-suyu/pkgs/development/haskell-modules/configuration-ghc-6.12.x.nix
Peter Simons a0376d4666 haskell-conduit: fix build with pre-7.10.x versions of GHC
Thanks to @bennofs for finding this issue!
2015-10-15 10:04:14 +02:00

97 lines
2.8 KiB
Nix

{ pkgs }:
with import ./lib.nix { inherit pkgs; };
self: super: {
# LLVM is not supported on this GHC; use the latest one.
inherit (pkgs) llvmPackages;
# Disable GHC 6.12.x core libraries.
array = null;
base = null;
bin-package-db = null;
bytestring = null;
Cabal = null;
containers = null;
directory = null;
dph-base = null;
dph-par = null;
dph-prim-interface = null;
dph-prim-par = null;
dph-prim-seq = null;
dph-seq = null;
extensible-exceptions = null;
ffi = null;
filepath = null;
ghc-binary = null;
ghc-prim = null;
haskell98 = null;
hpc = null;
integer-gmp = null;
old-locale = null;
old-time = null;
pretty = null;
process = null;
random = null;
rts = null;
syb = null;
template-haskell = null;
time = null;
unix = null;
# These packages are core libraries in GHC 7.10.x, but not here.
binary = self.binary_0_7_6_1;
deepseq = self.deepseq_1_3_0_1;
haskeline = self.haskeline_0_7_2_1;
hoopl = self.hoopl_3_10_2_0;
terminfo = self.terminfo_0_4_0_1;
transformers = self.transformers_0_4_3_0;
xhtml = self.xhtml_3000_2_1;
# The jailbreak is unnecessary in this package set.
deepseq_1_3_0_1 = dontJailbreak super.deepseq_1_3_0_1;
# Newer versions don't compile.
Cabal_1_18_1_6 = dontJailbreak super.Cabal_1_18_1_6;
# We have no working cabal-install at the moment.
cabal-install_1_18_1_0 = markBroken super.cabal-install_1_18_1_0;
cabal-install = self.cabal-install_1_18_1_0;
# https://github.com/tibbe/hashable/issues/85
hashable = dontCheck super.hashable;
# Needs Cabal >= 1.18.x.
jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_1_18_1_6; };
# Haddock chokes on the prologue from the cabal file.
ChasingBottoms = dontHaddock super.ChasingBottoms;
# https://github.com/glguy/utf8-string/issues/9
utf8-string = overrideCabal super.utf8-string (drv: {
configureFlags = drv.configureFlags or [] ++ ["-f-bytestring-in-base" "--ghc-option=-XUndecidableInstances"];
preConfigure = "sed -i -e 's|base >= .* < .*,|base,|' utf8-string.cabal";
});
# https://github.com/haskell/HTTP/issues/80
HTTP = doJailbreak super.HTTP;
# 6.12.3 doesn't support the latest version.
primitive = self.primitive_0_5_1_0;
parallel = self.parallel_3_2_0_3;
vector = self.vector_0_10_9_3;
# These packages need more recent versions of core libraries to compile.
happy = addBuildTools super.happy [self.Cabal_1_18_1_6 self.containers_0_4_2_1];
network-uri = addBuildTool super.network-uri self.Cabal_1_18_1_6;
stm = addBuildTool super.stm self.Cabal_1_18_1_6;
split = super.split_0_1_4_3;
# Needs hashable on pre 7.10.x compilers.
nats = addBuildDepend super.nats self.hashable;
# Needs void on pre 7.10.x compilers.
conduit = addBuildDepend super.conduit self.void;
}