diff options
author | Charles Strahan <charles.c.strahan@gmail.com> | 2016-02-17 22:07:32 -0500 |
---|---|---|
committer | Charles Strahan <charles.c.strahan@gmail.com> | 2016-02-18 03:15:59 -0500 |
commit | bbce88302a98338f014e7978e128f438dec3cc2d (patch) | |
tree | 62c11184718051543c5b7fe915e7611eef221b0e /pkgs/development/haskell-modules/configuration-ghcjs.nix | |
parent | de5a233a71213101ccb3e06bad6a33d088f9e7f9 (diff) | |
download | nixpkgs-bbce88302a98338f014e7978e128f438dec3cc2d.tar nixpkgs-bbce88302a98338f014e7978e128f438dec3cc2d.tar.gz nixpkgs-bbce88302a98338f014e7978e128f438dec3cc2d.tar.bz2 nixpkgs-bbce88302a98338f014e7978e128f438dec3cc2d.tar.lz nixpkgs-bbce88302a98338f014e7978e128f438dec3cc2d.tar.xz nixpkgs-bbce88302a98338f014e7978e128f438dec3cc2d.tar.zst nixpkgs-bbce88302a98338f014e7978e128f438dec3cc2d.zip |
ghcjs: fix building with cabal-install-1.22.8.0
Diffstat (limited to 'pkgs/development/haskell-modules/configuration-ghcjs.nix')
-rw-r--r-- | pkgs/development/haskell-modules/configuration-ghcjs.nix | 44 |
1 files changed, 23 insertions, 21 deletions
diff --git a/pkgs/development/haskell-modules/configuration-ghcjs.nix b/pkgs/development/haskell-modules/configuration-ghcjs.nix index dd51b99bf93..dfdad72cd3d 100644 --- a/pkgs/development/haskell-modules/configuration-ghcjs.nix +++ b/pkgs/development/haskell-modules/configuration-ghcjs.nix @@ -7,54 +7,56 @@ in with import ./lib.nix { inherit pkgs; }; -self: super: { +self: super: + # The stage 2 packages. Regenerate with ./ghcjs/gen-stage2.rb + let stage2 = + (import ./ghcjs/stage2.nix { + inherit (self) callPackage; + inherit (self.ghc) ghcjsBoot; + }); in stage2 // { + + old-time = overrideCabal stage2.old-time (drv: { + postPatch = '' + ${pkgs.autoconf}/bin/autoreconf --install --force --verbose + ''; + }); + + mkDerivation = drv: super.mkDerivation (drv // { + # Need Cabal lib to be available. + libraryHaskellDepends = drv.libraryHaskellDepends + # Be careful not to end up in infinite recursion! + ++ pkgs.lib.optional (!(builtins.elem drv.pname ["Cabal" "hscolour"])) self.Cabal; + }); # LLVM is not supported on this GHC; use the latest one. inherit (pkgs) llvmPackages; inherit (pkgs.haskell.packages.ghc7103) jailbreak-cabal alex happy gtk2hs-buildtools rehoo hoogle; - # This is the list of packages that are built into a booted ghcjs installation + # This is the list of the Stage 1 packages that are built into a booted ghcjs installation # It can be generated with the command: # nix-shell -p haskell.packages.ghcjs.ghc --command "ghcjs-pkg list | sed -n 's/^ \(.*\)-\([0-9.]*\)$/\1_\2/ p' | sed 's/\./_/g' | sed 's/-\(.\)/\U\1/' | sed 's/^\([^_]*\)\(.*\)$/\1 = null;/'" - Cabal = null; - aeson = null; array = null; - async = null; - attoparsec = null; base = null; binary = null; rts = null; bytestring = null; - case-insensitive = null; containers = null; deepseq = null; directory = null; - dlist = null; - extensible-exceptions = null; filepath = null; ghc-prim = null; - ghcjs-base = null; ghcjs-prim = null; - hashable = null; integer-gmp = null; - mtl = null; old-locale = null; - old-time = null; - parallel = null; pretty = null; primitive = null; process = null; - scientific = null; - stm = null; - syb = null; template-haskell = null; - text = null; time = null; transformers = null; unix = null; - unordered-containers = null; - vector = null; + integer-simple = null; # These packages are core libraries in GHC 7.10.x, but not here. bin-package-db = null; @@ -105,7 +107,7 @@ self: super: { }) {}; ghcjs-dom = overrideCabal super.ghcjs-dom (drv: { - libraryHaskellDepends = + libraryHaskellDepends = [ self.ghcjs-base ] ++ removeLibraryHaskellDepends [ "glib" "gtk" "gtk3" "webkitgtk" "webkitgtk3" ] drv.libraryHaskellDepends; |