haskell.packages.ghc96.gi-gtk: Work around compiler issue

When building gi-gtk with ghc-9.6.1 and ghc-9.6.2 there are errors
like this:

  <no location info>: error:
  attempting to use module ‘gi-gtk-3.0.41-DcfU7A0rbDCAyPkJQEwKC:GI.Gtk.Interfaces.Buildable’ (./GI/Gtk/Interfaces/Buildable.hs) which is not loaded

The errors can be avoided by using -j1, which is unfortunate for
gi-gtk because it has 708 modules to build.

The ghc gitlab issue is: https://gitlab.haskell.org/ghc/ghc/-/issues/23392
This commit is contained in:
Rodney Lorrimar 2023-07-06 16:08:01 +08:00
parent 689ff4fd8f
commit 30e99eddbe
No known key found for this signature in database
GPG key ID: D8B75C95FB4D1143

View file

@ -14,6 +14,9 @@ let
else
builtins.throw "Check if '${msg}' was resolved in ${pkg.pname} ${pkg.version} and update or remove this";
jailbreakForCurrentVersion = p: v: checkAgainAfter p v "bad bounds" (doJailbreak p);
# Workaround for a ghc-9.6 issue: https://gitlab.haskell.org/ghc/ghc/-/issues/23392
disableParallelBuilding = overrideCabal (drv: { enableParallelBuilding = false; });
in
self: super: {
@ -207,7 +210,6 @@ self: super: {
gi-glib
gi-gmodule
gi-gobject
gi-gtk
gi-harfbuzz
gi-pango
gi-xlib
@ -219,6 +221,9 @@ self: super: {
taffybar
;
# Avoid triggering an issue in ghc-9.6.2
gi-gtk = disableParallelBuilding (__CabalEagerPkgConfigWorkaround super.gi-gtk);
# Pending text-2.0 support https://github.com/gtk2hs/gtk2hs/issues/327
gtk = doJailbreak super.gtk;