2018-07-04 10:46:07 +02:00
|
|
|
|
{ pkgs, haskellLib }:
|
|
|
|
|
|
|
|
|
|
with haskellLib;
|
|
|
|
|
|
2021-12-24 21:12:56 +01:00
|
|
|
|
let
|
|
|
|
|
inherit (pkgs.stdenv.hostPlatform) isDarwin;
|
|
|
|
|
in
|
|
|
|
|
|
2018-07-04 10:46:07 +02:00
|
|
|
|
self: super: {
|
|
|
|
|
|
2021-11-23 16:11:37 +01:00
|
|
|
|
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
|
2018-07-04 10:46:07 +02:00
|
|
|
|
|
|
|
|
|
# Disable GHC 8.6.x core libraries.
|
|
|
|
|
array = null;
|
|
|
|
|
base = null;
|
|
|
|
|
binary = null;
|
|
|
|
|
bytestring = null;
|
|
|
|
|
Cabal = null;
|
|
|
|
|
containers = null;
|
|
|
|
|
deepseq = null;
|
|
|
|
|
directory = null;
|
|
|
|
|
filepath = null;
|
|
|
|
|
ghc-boot = null;
|
|
|
|
|
ghc-boot-th = null;
|
|
|
|
|
ghc-compact = null;
|
|
|
|
|
ghc-heap = null;
|
|
|
|
|
ghc-prim = null;
|
|
|
|
|
ghci = null;
|
|
|
|
|
haskeline = null;
|
|
|
|
|
hpc = null;
|
|
|
|
|
integer-gmp = null;
|
|
|
|
|
libiserv = null;
|
|
|
|
|
mtl = null;
|
|
|
|
|
parsec = null;
|
|
|
|
|
pretty = null;
|
|
|
|
|
process = null;
|
|
|
|
|
rts = null;
|
|
|
|
|
stm = null;
|
|
|
|
|
template-haskell = null;
|
2022-07-25 23:42:29 +02:00
|
|
|
|
# GHC only builds terminfo if it is a native compiler
|
|
|
|
|
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_5;
|
2018-07-04 10:46:07 +02:00
|
|
|
|
text = null;
|
|
|
|
|
time = null;
|
|
|
|
|
transformers = null;
|
|
|
|
|
unix = null;
|
2022-04-29 15:27:02 +02:00
|
|
|
|
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
|
|
|
|
# still the case when updating: https://gitlab.haskell.org/ghc/ghc/-/blob/0198841877f6f04269d6050892b98b5c3807ce4c/ghc.mk#L463
|
|
|
|
|
xhtml = if self.ghc.hasHaddock or true then null else self.xhtml_3000_2_2_1;
|
2018-07-04 10:46:07 +02:00
|
|
|
|
|
2019-08-28 17:45:06 +02:00
|
|
|
|
# Needs Cabal 3.0.x.
|
2020-10-30 14:53:45 +01:00
|
|
|
|
jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_1_0; };
|
2019-08-28 17:45:06 +02:00
|
|
|
|
|
2018-10-18 14:57:00 +02:00
|
|
|
|
# https://github.com/tibbe/unordered-containers/issues/214
|
|
|
|
|
unordered-containers = dontCheck super.unordered-containers;
|
2018-07-17 19:44:21 +02:00
|
|
|
|
|
2018-10-18 14:57:00 +02:00
|
|
|
|
# Test suite does not compile.
|
2018-10-19 11:02:50 +02:00
|
|
|
|
data-clist = doJailbreak super.data-clist; # won't cope with QuickCheck 2.12.x
|
2019-01-11 02:41:30 +01:00
|
|
|
|
dates = doJailbreak super.dates; # base >=4.9 && <4.12
|
2018-10-18 14:57:00 +02:00
|
|
|
|
Diff = dontCheck super.Diff;
|
2019-02-13 18:39:16 +01:00
|
|
|
|
equivalence = dontCheck super.equivalence; # test suite doesn't compile https://github.com/pa-ba/equivalence/issues/5
|
2019-01-11 02:22:45 +01:00
|
|
|
|
HaTeX = doJailbreak super.HaTeX; # containers >=0.4 && <0.6 is too tight; https://github.com/Daniel-Diaz/HaTeX/issues/126
|
2019-01-08 06:30:17 +01:00
|
|
|
|
hpc-coveralls = doJailbreak super.hpc-coveralls; # https://github.com/guillaume-nargeot/hpc-coveralls/issues/82
|
2018-10-18 14:57:00 +02:00
|
|
|
|
http-api-data = doJailbreak super.http-api-data;
|
|
|
|
|
persistent-sqlite = dontCheck super.persistent-sqlite;
|
|
|
|
|
system-fileio = dontCheck super.system-fileio; # avoid dependency on broken "patience"
|
|
|
|
|
unicode-transforms = dontCheck super.unicode-transforms;
|
2019-01-11 02:08:33 +01:00
|
|
|
|
wl-pprint-extras = doJailbreak super.wl-pprint-extras; # containers >=0.4 && <0.6 is too tight; https://github.com/ekmett/wl-pprint-extras/issues/17
|
2019-01-04 11:35:02 +01:00
|
|
|
|
RSA = dontCheck super.RSA; # https://github.com/GaloisInc/RSA/issues/14
|
2018-10-19 11:32:17 +02:00
|
|
|
|
monad-par = dontCheck super.monad-par; # https://github.com/simonmar/monad-par/issues/66
|
2019-01-05 19:02:30 +01:00
|
|
|
|
github = dontCheck super.github; # hspec upper bound exceeded; https://github.com/phadej/github/pull/341
|
2019-01-01 23:51:01 +01:00
|
|
|
|
binary-orphans = dontCheck super.binary-orphans; # tasty upper bound exceeded; https://github.com/phadej/binary-orphans/commit/8ce857226595dd520236ff4c51fa1a45d8387b33
|
2020-07-08 22:30:11 +02:00
|
|
|
|
rebase = doJailbreak super.rebase; # time ==1.9.* is too low
|
2018-10-18 14:57:00 +02:00
|
|
|
|
|
2018-10-22 14:29:38 +02:00
|
|
|
|
# https://github.com/jgm/skylighting/issues/55
|
2018-10-19 10:26:24 +02:00
|
|
|
|
skylighting-core = dontCheck super.skylighting-core;
|
|
|
|
|
|
2019-01-04 12:55:09 +01:00
|
|
|
|
# Break out of "yaml >=0.10.4.0 && <0.11": https://github.com/commercialhaskell/stack/issues/4485
|
2018-10-19 11:38:27 +02:00
|
|
|
|
stack = doJailbreak super.stack;
|
|
|
|
|
|
2019-08-28 17:38:36 +02:00
|
|
|
|
# Newer versions don't compile.
|
|
|
|
|
resolv = self.resolv_0_1_1_2;
|
|
|
|
|
|
2019-09-27 07:17:09 +02:00
|
|
|
|
# cabal2nix needs the latest version of Cabal, and the one
|
|
|
|
|
# hackage-db uses must match, so take the latest
|
2020-10-30 14:53:45 +01:00
|
|
|
|
cabal2nix = super.cabal2nix.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
|
2019-09-24 18:46:39 +02:00
|
|
|
|
|
2020-02-07 20:44:24 +01:00
|
|
|
|
# cabal2spec needs a recent version of Cabal
|
2020-10-30 14:53:45 +01:00
|
|
|
|
cabal2spec = super.cabal2spec.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
|
2020-02-07 20:44:24 +01:00
|
|
|
|
|
2020-02-29 11:10:19 +01:00
|
|
|
|
# https://github.com/pikajude/stylish-cabal/issues/12
|
|
|
|
|
stylish-cabal = doDistribute (markUnbroken (super.stylish-cabal.override { haddock-library = self.haddock-library_1_7_0; }));
|
|
|
|
|
haddock-library_1_7_0 = dontCheck super.haddock-library_1_7_0;
|
|
|
|
|
|
2020-04-17 20:41:50 +02:00
|
|
|
|
# ghc versions prior to 8.8.x needs additional dependency to compile successfully.
|
2021-10-26 12:20:34 +02:00
|
|
|
|
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
|
2020-11-15 03:37:32 +01:00
|
|
|
|
|
|
|
|
|
# This became a core library in ghc 8.10., so we don‘t have an "exception" attribute anymore.
|
|
|
|
|
exceptions = super.exceptions_0_10_4;
|
2021-02-05 22:15:54 +01:00
|
|
|
|
|
2021-02-05 22:37:50 +01:00
|
|
|
|
# Older compilers need the latest ghc-lib to build this package.
|
2021-10-26 12:20:34 +02:00
|
|
|
|
hls-hlint-plugin = addBuildDepend self.ghc-lib super.hls-hlint-plugin;
|
2021-02-05 22:37:50 +01:00
|
|
|
|
|
2021-02-12 11:46:17 +01:00
|
|
|
|
# vector 0.12.2 indroduced doctest checks that don‘t work on older compilers
|
2021-02-11 22:39:17 +01:00
|
|
|
|
vector = dontCheck super.vector;
|
|
|
|
|
|
2021-02-05 22:15:54 +01:00
|
|
|
|
mmorph = super.mmorph_1_1_3;
|
2021-03-05 21:15:53 +01:00
|
|
|
|
|
|
|
|
|
# https://github.com/haskellari/time-compat/issues/23
|
|
|
|
|
time-compat = dontCheck super.time-compat;
|
|
|
|
|
|
2021-11-19 23:50:07 +01:00
|
|
|
|
mime-string = disableOptimization super.mime-string;
|
|
|
|
|
|
2021-12-24 21:12:56 +01:00
|
|
|
|
# https://github.com/fpco/inline-c/issues/127 (recommend to upgrade to Nixpkgs GHC >=9.0)
|
|
|
|
|
inline-c-cpp = (if isDarwin then dontCheck else x: x) super.inline-c-cpp;
|
2018-07-04 10:46:07 +02:00
|
|
|
|
}
|