Merge pull request #53978 from ElvishJerricco/ghcjs-8.4-8.6-fixes
GHCJS: Fix 8.4 and add 8.6
This commit is contained in:
commit
5649eb713e
@ -1,6 +0,0 @@
|
||||
{
|
||||
"url": "https://github.com/ghcjs/ghcjs",
|
||||
"rev": "0cff73c3ee13b464adba90f308b77751c75b9f26",
|
||||
"sha256": "1shg34zi6ryaihar62qdkkalv8dsrsqbv58jzkhk9in38sdfkjxv",
|
||||
"fetchSubmodules": true
|
||||
}
|
@ -2,6 +2,8 @@
|
||||
|
||||
let inherit (haskellLib) dontCheck doJailbreak;
|
||||
in self: super: {
|
||||
haddock-library-ghcjs = dontCheck super.haddock-library-ghcjs;
|
||||
haddock-library-ghcjs = doJailbreak (dontCheck super.haddock-library-ghcjs);
|
||||
haddock-api-ghcjs = doJailbreak super.haddock-api-ghcjs;
|
||||
|
||||
template-haskell-ghcjs = doJailbreak super.template-haskell-ghcjs;
|
||||
}
|
||||
|
@ -0,0 +1,7 @@
|
||||
{ haskellLib }:
|
||||
|
||||
let inherit (haskellLib) dontCheck doJailbreak dontHaddock;
|
||||
in self: super: {
|
||||
haddock-library-ghcjs = doJailbreak super.haddock-library-ghcjs;
|
||||
haddock-api-ghcjs = doJailbreak (dontHaddock super.haddock-api-ghcjs);
|
||||
}
|
6
pkgs/development/compilers/ghcjs-ng/8.6/git.json
Normal file
6
pkgs/development/compilers/ghcjs-ng/8.6/git.json
Normal file
@ -0,0 +1,6 @@
|
||||
{
|
||||
"url": "https://github.com/ghcjs/ghcjs",
|
||||
"rev": "75c61af32d73def4409d1fe7b64659c1d28cd075",
|
||||
"sha256": "18pixn6xdz6qp941yhxfnmwi463jnpskmg473lv07vvgy4hpgjhj",
|
||||
"fetchSubmodules": true
|
||||
}
|
@ -20,7 +20,7 @@
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "ghcjs";
|
||||
version = "8.2.0.1";
|
||||
version = "8.6.0.1";
|
||||
src = configuredSrc + /.;
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
@ -60,17 +60,17 @@
|
||||
|
||||
ghc-api-ghcjs = callPackage
|
||||
({ mkDerivation, array, base, binary, bytestring, containers
|
||||
, deepseq, directory, filepath, ghc-boot, ghc-boot-th, ghci-ghcjs
|
||||
, hoopl, hpc, process, stdenv, template-haskell-ghcjs, terminfo
|
||||
, time, transformers, unix
|
||||
, deepseq, directory, filepath, ghc-boot, ghc-boot-th, ghc-heap
|
||||
, ghci-ghcjs, hpc, process, stdenv, template-haskell-ghcjs
|
||||
, terminfo, time, transformers, unix
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "ghc-api-ghcjs";
|
||||
version = "8.2.2";
|
||||
version = "8.6.2";
|
||||
src = configuredSrc + /lib/ghc-api-ghcjs;
|
||||
libraryHaskellDepends = [
|
||||
array base binary bytestring containers deepseq directory filepath
|
||||
ghc-boot ghc-boot-th ghci-ghcjs hoopl hpc process
|
||||
ghc-boot ghc-boot-th ghc-heap ghci-ghcjs hpc process
|
||||
template-haskell-ghcjs terminfo time transformers unix
|
||||
];
|
||||
homepage = "http://www.haskell.org/ghc/";
|
||||
@ -80,16 +80,16 @@
|
||||
|
||||
ghci-ghcjs = callPackage
|
||||
({ mkDerivation, array, base, binary, bytestring, containers
|
||||
, deepseq, filepath, ghc-boot, ghc-boot-th, stdenv
|
||||
, deepseq, filepath, ghc-boot, ghc-boot-th, ghc-heap, stdenv
|
||||
, template-haskell-ghcjs, transformers, unix
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "ghci-ghcjs";
|
||||
version = "8.2.2";
|
||||
version = "8.6.1";
|
||||
src = configuredSrc + /lib/ghci-ghcjs;
|
||||
libraryHaskellDepends = [
|
||||
array base binary bytestring containers deepseq filepath ghc-boot
|
||||
ghc-boot-th template-haskell-ghcjs transformers unix
|
||||
ghc-boot-th ghc-heap template-haskell-ghcjs transformers unix
|
||||
];
|
||||
description = "The library supporting GHC's interactive interpreter (customized for GHCJS)";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
@ -119,7 +119,7 @@
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "haddock-api-ghcjs";
|
||||
version = "2.18.1";
|
||||
version = "2.20.0";
|
||||
src = configuredSrc + /lib/haddock-api-ghcjs;
|
||||
enableSeparateDataOutput = true;
|
||||
libraryHaskellDepends = [
|
||||
@ -128,25 +128,33 @@
|
||||
xhtml
|
||||
];
|
||||
testHaskellDepends = [
|
||||
base containers ghc-api-ghcjs hspec QuickCheck
|
||||
array base bytestring Cabal containers deepseq directory filepath
|
||||
ghc-api-ghcjs ghc-boot ghc-paths haddock-library-ghcjs hspec
|
||||
QuickCheck transformers xhtml
|
||||
];
|
||||
testToolDepends = [ hspec-discover ];
|
||||
homepage = "http://www.haskell.org/haddock/";
|
||||
description = "A documentation-generation tool for Haskell libraries (customized for GHCJS)";
|
||||
description = "A documentation-generation tool for Haskell libraries";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
|
||||
haddock-library-ghcjs = callPackage
|
||||
({ mkDerivation, base, base-compat, bytestring, deepseq, hspec
|
||||
, hspec-discover, QuickCheck, stdenv, transformers
|
||||
({ mkDerivation, base, base-compat, bytestring, containers, deepseq
|
||||
, directory, filepath, haddock-library, hspec, hspec-discover
|
||||
, optparse-applicative, parsec, QuickCheck, stdenv, text
|
||||
, transformers, tree-diff
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "haddock-library-ghcjs";
|
||||
version = "1.4.4";
|
||||
version = "1.6.0";
|
||||
src = configuredSrc + /lib/haddock-library-ghcjs;
|
||||
libraryHaskellDepends = [ base bytestring deepseq transformers ];
|
||||
libraryHaskellDepends = [
|
||||
base bytestring containers parsec text transformers
|
||||
];
|
||||
testHaskellDepends = [
|
||||
base base-compat bytestring deepseq hspec QuickCheck transformers
|
||||
base base-compat bytestring containers deepseq directory filepath
|
||||
haddock-library hspec optparse-applicative parsec QuickCheck text
|
||||
transformers tree-diff
|
||||
];
|
||||
testToolDepends = [ hspec-discover ];
|
||||
homepage = "http://www.haskell.org/haddock/";
|
||||
@ -158,7 +166,7 @@
|
||||
({ mkDerivation, base, ghc-boot-th, pretty, stdenv }:
|
||||
mkDerivation {
|
||||
pname = "template-haskell-ghcjs";
|
||||
version = "2.12.0.0";
|
||||
version = "2.14.0.0";
|
||||
src = configuredSrc + /lib/template-haskell-ghcjs;
|
||||
libraryHaskellDepends = [ base ghc-boot-th pretty ];
|
||||
description = "Support library for Template Haskell (customized for GHCJS)";
|
@ -43,6 +43,8 @@ runCommand "configured-ghcjs-src" {
|
||||
# TODO: How to actually fix this?
|
||||
# Seems to work fine and produce the right files.
|
||||
touch ghc/includes/ghcautoconf.h
|
||||
mkdir -p ghc/compiler/vectorise
|
||||
mkdir -p ghc/utils/haddock/haddock-library/vendor
|
||||
|
||||
patchShebangs .
|
||||
./utils/makePackages.sh copy
|
||||
|
@ -104,7 +104,5 @@ in stdenv.mkDerivation {
|
||||
inherit passthru;
|
||||
|
||||
meta.platforms = passthru.bootPkgs.ghc.meta.platforms;
|
||||
meta.hydraPlatforms = [];
|
||||
meta.broken = true; # does not compile: https://hydra.nixos.org/build/88052615
|
||||
|
||||
meta.maintainers = [lib.maintainers.elvishjerricco];
|
||||
}
|
||||
|
@ -76,4 +76,7 @@ self: super: {
|
||||
haddock-library = dontHaddock (dontCheck self.haddock-library_1_5_0_1);
|
||||
}));
|
||||
|
||||
# cabal2nix doesn't list this because of a conditional on the GHC version.
|
||||
aeson = addBuildDepend super.aeson self.contravariant;
|
||||
|
||||
}
|
||||
|
@ -9,8 +9,8 @@ let
|
||||
"ghc863Binary"
|
||||
"ghc844"
|
||||
"ghcjs"
|
||||
"ghcjs82"
|
||||
"ghcjs84"
|
||||
"ghcjs86"
|
||||
"integer-simple"
|
||||
];
|
||||
|
||||
@ -83,18 +83,19 @@ in {
|
||||
buildLlvmPackages = buildPackages.llvmPackages_6;
|
||||
llvmPackages = pkgs.llvmPackages_6;
|
||||
};
|
||||
ghcjs = compiler.ghcjs84;
|
||||
ghcjs82 = callPackage ../development/compilers/ghcjs-ng {
|
||||
bootPkgs = packages.ghc822;
|
||||
ghcjsSrcJson = ../development/compilers/ghcjs-ng/8.2/git.json;
|
||||
stage0 = ../development/compilers/ghcjs-ng/8.2/stage0.nix;
|
||||
};
|
||||
ghcjs = compiler.ghcjs86;
|
||||
ghcjs84 = callPackage ../development/compilers/ghcjs-ng {
|
||||
bootPkgs = packages.ghc844;
|
||||
ghcjsSrcJson = ../development/compilers/ghcjs-ng/8.4/git.json;
|
||||
stage0 = ../development/compilers/ghcjs-ng/8.4/stage0.nix;
|
||||
ghcjsDepOverrides = callPackage ../development/compilers/ghcjs-ng/8.4/dep-overrides.nix {};
|
||||
};
|
||||
ghcjs86 = callPackage ../development/compilers/ghcjs-ng {
|
||||
bootPkgs = packages.ghc863;
|
||||
ghcjsSrcJson = ../development/compilers/ghcjs-ng/8.6/git.json;
|
||||
stage0 = ../development/compilers/ghcjs-ng/8.6/stage0.nix;
|
||||
ghcjsDepOverrides = callPackage ../development/compilers/ghcjs-ng/8.6/dep-overrides.nix {};
|
||||
};
|
||||
|
||||
# The integer-simple attribute set contains all the GHC compilers
|
||||
# build with integer-simple instead of integer-gmp.
|
||||
@ -155,31 +156,19 @@ in {
|
||||
ghc = bh.compiler.ghcHEAD;
|
||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-head.nix { };
|
||||
};
|
||||
ghcjs = packages.ghcjs84;
|
||||
ghcjs710 = callPackage ../development/haskell-modules rec {
|
||||
buildHaskellPackages = ghc.bootPkgs;
|
||||
ghc = bh.compiler.ghcjs710;
|
||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-7.10.x.nix { };
|
||||
packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { };
|
||||
};
|
||||
ghcjs80 = callPackage ../development/haskell-modules rec {
|
||||
buildHaskellPackages = ghc.bootPkgs;
|
||||
ghc = bh.compiler.ghcjs80;
|
||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.0.x.nix { };
|
||||
packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { };
|
||||
};
|
||||
ghcjs82 = callPackage ../development/haskell-modules rec {
|
||||
buildHaskellPackages = ghc.bootPkgs;
|
||||
ghc = bh.compiler.ghcjs82;
|
||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.2.x.nix { };
|
||||
packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { };
|
||||
};
|
||||
ghcjs = packages.ghcjs86;
|
||||
ghcjs84 = callPackage ../development/haskell-modules rec {
|
||||
buildHaskellPackages = ghc.bootPkgs;
|
||||
ghc = bh.compiler.ghcjs84;
|
||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.4.x.nix { };
|
||||
packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { };
|
||||
};
|
||||
ghcjs86 = callPackage ../development/haskell-modules rec {
|
||||
buildHaskellPackages = ghc.bootPkgs;
|
||||
ghc = bh.compiler.ghcjs86;
|
||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.6.x.nix { };
|
||||
packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { };
|
||||
};
|
||||
|
||||
# The integer-simple attribute set contains package sets for all the GHC compilers
|
||||
# using integer-simple instead of integer-gmp.
|
||||
|
Loading…
Reference in New Issue
Block a user