2017-08-01 17:44:08 +01:00
|
|
|
{ pkgs, haskellLib }:
|
2015-01-07 19:31:32 +00:00
|
|
|
|
2017-08-01 17:44:08 +01:00
|
|
|
with haskellLib;
|
2015-01-07 19:31:32 +00:00
|
|
|
|
|
|
|
self: super: {
|
|
|
|
|
2015-03-09 19:11:23 +00:00
|
|
|
# Suitable LLVM version.
|
|
|
|
llvmPackages = pkgs.llvmPackages_34;
|
|
|
|
|
2015-01-07 19:31:32 +00:00
|
|
|
# Disable GHC 7.6.x core libraries.
|
|
|
|
array = null;
|
|
|
|
base = null;
|
|
|
|
binary = null;
|
|
|
|
bin-package-db = null;
|
|
|
|
bytestring = null;
|
|
|
|
Cabal = null;
|
|
|
|
containers = null;
|
|
|
|
deepseq = null;
|
|
|
|
directory = null;
|
|
|
|
filepath = null;
|
|
|
|
ghc-prim = null;
|
|
|
|
haskell2010 = null;
|
|
|
|
haskell98 = null;
|
|
|
|
hoopl = null;
|
|
|
|
hpc = null;
|
|
|
|
integer-gmp = null;
|
|
|
|
old-locale = null;
|
|
|
|
old-time = null;
|
|
|
|
pretty = null;
|
|
|
|
process = null;
|
|
|
|
rts = null;
|
|
|
|
template-haskell = null;
|
|
|
|
time = null;
|
|
|
|
unix = null;
|
|
|
|
|
2015-04-22 16:25:04 +01:00
|
|
|
# These packages are core libraries in GHC 7.10.x, but not here.
|
2017-03-05 15:36:47 +00:00
|
|
|
haskeline = self.haskeline_0_7_3_1;
|
|
|
|
terminfo = self.terminfo_0_4_0_2;
|
2015-04-22 16:25:04 +01:00
|
|
|
transformers = self.transformers_0_4_3_0;
|
|
|
|
xhtml = self.xhtml_3000_2_1;
|
2015-01-19 13:59:04 +00:00
|
|
|
|
2015-05-23 12:05:07 +01:00
|
|
|
# Avoid inconsistent 'binary' versions from 'text' and 'Cabal'.
|
2017-04-04 11:55:56 +01:00
|
|
|
cabal-install = super.cabal-install.overrideScope (self: super: { binary = dontCheck self.binary_0_8_5_1; });
|
2015-05-23 12:05:07 +01:00
|
|
|
|
2017-09-10 09:45:33 +01:00
|
|
|
# Requires ghc 8.2
|
|
|
|
ghc-proofs = dontDistribute super.ghc-proofs;
|
|
|
|
|
2015-01-11 12:35:53 +00:00
|
|
|
# https://github.com/tibbe/hashable/issues/85
|
|
|
|
hashable = dontCheck super.hashable;
|
2015-01-14 20:27:30 +00:00
|
|
|
|
2015-05-20 11:13:13 +01:00
|
|
|
# https://github.com/peti/jailbreak-cabal/issues/9
|
2016-10-19 14:11:51 +01:00
|
|
|
jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_1_20_0_4; };
|
2015-01-14 20:27:30 +00:00
|
|
|
|
2015-01-16 09:08:16 +00:00
|
|
|
# Haddock chokes on the prologue from the cabal file.
|
|
|
|
ChasingBottoms = dontHaddock super.ChasingBottoms;
|
|
|
|
|
2015-01-20 20:37:51 +00:00
|
|
|
# Later versions require a newer version of bytestring than we have.
|
|
|
|
aeson = self.aeson_0_7_0_6;
|
2015-01-19 13:59:04 +00:00
|
|
|
|
2015-01-20 22:13:05 +00:00
|
|
|
# The test suite depends on time >=1.4.0.2.
|
2015-01-21 20:35:51 +00:00
|
|
|
cookie = dontCheck super.cookie;
|
2015-01-20 22:13:05 +00:00
|
|
|
|
2015-01-20 22:50:38 +00:00
|
|
|
# Work around bytestring >=0.10.2.0 requirement.
|
|
|
|
streaming-commons = addBuildDepend super.streaming-commons self.bytestring-builder;
|
2015-01-20 22:23:59 +00:00
|
|
|
|
|
|
|
# Choose appropriate flags for our version of 'bytestring'.
|
|
|
|
bytestring-builder = disableCabalFlag super.bytestring-builder "bytestring_has_builder";
|
|
|
|
|
2015-02-03 15:36:16 +00:00
|
|
|
# Tagged is not part of base in this environment.
|
|
|
|
contravariant = addBuildDepend super.contravariant self.tagged;
|
|
|
|
reflection = dontHaddock (addBuildDepend super.reflection self.tagged);
|
|
|
|
|
2015-03-30 03:03:55 +01:00
|
|
|
# The compat library is empty in the presence of mtl 2.2.x.
|
|
|
|
mtl-compat = dontHaddock super.mtl-compat;
|
|
|
|
|
2015-04-19 18:48:33 +01:00
|
|
|
# Newer versions require a more recent compiler.
|
|
|
|
control-monad-free = super.control-monad-free_0_5_3;
|
|
|
|
|
2015-04-19 19:17:35 +01:00
|
|
|
# Needs hashable on pre 7.10.x compilers.
|
2016-01-26 13:01:40 +00:00
|
|
|
nats_1 = addBuildDepend super.nats_1 self.hashable;
|
2015-04-19 19:17:35 +01:00
|
|
|
nats = addBuildDepend super.nats self.hashable;
|
|
|
|
|
2015-05-09 10:49:54 +01:00
|
|
|
# https://github.com/magthe/sandi/issues/7
|
|
|
|
sandi = overrideCabal super.sandi (drv: {
|
2015-08-06 13:10:48 +01:00
|
|
|
postPatch = "sed -i -e 's|base ==4.8.*,|base,|' sandi.cabal";
|
|
|
|
});
|
2015-05-09 10:49:54 +01:00
|
|
|
|
2017-08-23 13:20:21 +01:00
|
|
|
# These packages require additional build inputs on older compilers.
|
2015-05-17 12:30:38 +01:00
|
|
|
blaze-builder = addBuildDepend super.blaze-builder super.bytestring-builder;
|
2017-08-23 13:20:21 +01:00
|
|
|
text = addBuildDepend super.text self.bytestring-builder;
|
2015-05-17 12:30:38 +01:00
|
|
|
|
2015-08-15 02:43:37 +01:00
|
|
|
# available convertible package won't build with the available
|
|
|
|
# bytestring and ghc-mod won't build without convertible
|
|
|
|
convertible = markBroken super.convertible;
|
|
|
|
ghc-mod = markBroken super.ghc-mod;
|
|
|
|
|
2015-10-13 19:00:26 +01:00
|
|
|
# Needs void on pre 7.10.x compilers.
|
|
|
|
conduit = addBuildDepend super.conduit self.void;
|
|
|
|
|
2017-06-22 19:42:25 +01:00
|
|
|
# Needs additional inputs on old compilers.
|
2016-07-20 21:06:01 +01:00
|
|
|
semigroups = addBuildDepends super.semigroups (with self; [bytestring-builder nats tagged unordered-containers transformers]);
|
2016-09-09 12:53:23 +01:00
|
|
|
lens = addBuildDepends super.lens (with self; [doctest generic-deriving nats simple-reflect]);
|
2017-08-23 13:18:44 +01:00
|
|
|
distributive = addBuildDepend (dontCheck super.distributive) self.semigroups;
|
2017-03-07 14:36:55 +00:00
|
|
|
QuickCheck = addBuildDepend super.QuickCheck self.semigroups;
|
2017-04-04 13:44:40 +01:00
|
|
|
void = addBuildDepends super.void (with self; [hashable semigroups]);
|
2017-06-22 19:42:25 +01:00
|
|
|
optparse-applicative = addBuildDepend super.optparse-applicative self.semigroups;
|
2017-08-23 14:59:49 +01:00
|
|
|
vector = addBuildDepend super.vector self.semigroups;
|
2017-04-04 13:44:40 +01:00
|
|
|
|
|
|
|
# Need a newer version of Cabal to interpret their build instructions.
|
|
|
|
cmdargs = addSetupDepend super.cmdargs self.Cabal_1_24_2_0;
|
|
|
|
extra = addSetupDepend super.extra self.Cabal_1_24_2_0;
|
|
|
|
hlint = addSetupDepend super.hlint self.Cabal_1_24_2_0;
|
2015-12-31 11:27:26 +00:00
|
|
|
|
2016-07-21 16:57:28 +01:00
|
|
|
# Haddock doesn't cope with the new markup.
|
|
|
|
bifunctors = dontHaddock super.bifunctors;
|
|
|
|
|
2017-03-07 14:36:55 +00:00
|
|
|
# Breaks a dependency cycle between QuickCheck and semigroups
|
|
|
|
unordered-containers = dontCheck super.unordered-containers;
|
|
|
|
|
2017-08-23 15:03:24 +01:00
|
|
|
# The test suite requires Cabal 1.24.x or later to compile.
|
|
|
|
comonad = dontCheck super.comonad;
|
2017-08-23 15:06:40 +01:00
|
|
|
semigroupoids = dontCheck super.semigroupoids;
|
2017-08-23 15:03:24 +01:00
|
|
|
|
2015-01-07 19:31:32 +00:00
|
|
|
}
|