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;
|
let inherit (haskellLib) dontCheck doJailbreak;
|
||||||
in self: super: {
|
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;
|
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 {
|
mkDerivation {
|
||||||
pname = "ghcjs";
|
pname = "ghcjs";
|
||||||
version = "8.2.0.1";
|
version = "8.6.0.1";
|
||||||
src = configuredSrc + /.;
|
src = configuredSrc + /.;
|
||||||
isLibrary = true;
|
isLibrary = true;
|
||||||
isExecutable = true;
|
isExecutable = true;
|
||||||
@ -60,17 +60,17 @@
|
|||||||
|
|
||||||
ghc-api-ghcjs = callPackage
|
ghc-api-ghcjs = callPackage
|
||||||
({ mkDerivation, array, base, binary, bytestring, containers
|
({ mkDerivation, array, base, binary, bytestring, containers
|
||||||
, deepseq, directory, filepath, ghc-boot, ghc-boot-th, ghci-ghcjs
|
, deepseq, directory, filepath, ghc-boot, ghc-boot-th, ghc-heap
|
||||||
, hoopl, hpc, process, stdenv, template-haskell-ghcjs, terminfo
|
, ghci-ghcjs, hpc, process, stdenv, template-haskell-ghcjs
|
||||||
, time, transformers, unix
|
, terminfo, time, transformers, unix
|
||||||
}:
|
}:
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
pname = "ghc-api-ghcjs";
|
pname = "ghc-api-ghcjs";
|
||||||
version = "8.2.2";
|
version = "8.6.2";
|
||||||
src = configuredSrc + /lib/ghc-api-ghcjs;
|
src = configuredSrc + /lib/ghc-api-ghcjs;
|
||||||
libraryHaskellDepends = [
|
libraryHaskellDepends = [
|
||||||
array base binary bytestring containers deepseq directory filepath
|
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
|
template-haskell-ghcjs terminfo time transformers unix
|
||||||
];
|
];
|
||||||
homepage = "http://www.haskell.org/ghc/";
|
homepage = "http://www.haskell.org/ghc/";
|
||||||
@ -80,16 +80,16 @@
|
|||||||
|
|
||||||
ghci-ghcjs = callPackage
|
ghci-ghcjs = callPackage
|
||||||
({ mkDerivation, array, base, binary, bytestring, containers
|
({ 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
|
, template-haskell-ghcjs, transformers, unix
|
||||||
}:
|
}:
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
pname = "ghci-ghcjs";
|
pname = "ghci-ghcjs";
|
||||||
version = "8.2.2";
|
version = "8.6.1";
|
||||||
src = configuredSrc + /lib/ghci-ghcjs;
|
src = configuredSrc + /lib/ghci-ghcjs;
|
||||||
libraryHaskellDepends = [
|
libraryHaskellDepends = [
|
||||||
array base binary bytestring containers deepseq filepath ghc-boot
|
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)";
|
description = "The library supporting GHC's interactive interpreter (customized for GHCJS)";
|
||||||
license = stdenv.lib.licenses.bsd3;
|
license = stdenv.lib.licenses.bsd3;
|
||||||
@ -119,7 +119,7 @@
|
|||||||
}:
|
}:
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
pname = "haddock-api-ghcjs";
|
pname = "haddock-api-ghcjs";
|
||||||
version = "2.18.1";
|
version = "2.20.0";
|
||||||
src = configuredSrc + /lib/haddock-api-ghcjs;
|
src = configuredSrc + /lib/haddock-api-ghcjs;
|
||||||
enableSeparateDataOutput = true;
|
enableSeparateDataOutput = true;
|
||||||
libraryHaskellDepends = [
|
libraryHaskellDepends = [
|
||||||
@ -128,25 +128,33 @@
|
|||||||
xhtml
|
xhtml
|
||||||
];
|
];
|
||||||
testHaskellDepends = [
|
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 ];
|
testToolDepends = [ hspec-discover ];
|
||||||
homepage = "http://www.haskell.org/haddock/";
|
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;
|
license = stdenv.lib.licenses.bsd3;
|
||||||
}) {};
|
}) {};
|
||||||
|
|
||||||
haddock-library-ghcjs = callPackage
|
haddock-library-ghcjs = callPackage
|
||||||
({ mkDerivation, base, base-compat, bytestring, deepseq, hspec
|
({ mkDerivation, base, base-compat, bytestring, containers, deepseq
|
||||||
, hspec-discover, QuickCheck, stdenv, transformers
|
, directory, filepath, haddock-library, hspec, hspec-discover
|
||||||
|
, optparse-applicative, parsec, QuickCheck, stdenv, text
|
||||||
|
, transformers, tree-diff
|
||||||
}:
|
}:
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
pname = "haddock-library-ghcjs";
|
pname = "haddock-library-ghcjs";
|
||||||
version = "1.4.4";
|
version = "1.6.0";
|
||||||
src = configuredSrc + /lib/haddock-library-ghcjs;
|
src = configuredSrc + /lib/haddock-library-ghcjs;
|
||||||
libraryHaskellDepends = [ base bytestring deepseq transformers ];
|
libraryHaskellDepends = [
|
||||||
|
base bytestring containers parsec text transformers
|
||||||
|
];
|
||||||
testHaskellDepends = [
|
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 ];
|
testToolDepends = [ hspec-discover ];
|
||||||
homepage = "http://www.haskell.org/haddock/";
|
homepage = "http://www.haskell.org/haddock/";
|
||||||
@ -158,7 +166,7 @@
|
|||||||
({ mkDerivation, base, ghc-boot-th, pretty, stdenv }:
|
({ mkDerivation, base, ghc-boot-th, pretty, stdenv }:
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
pname = "template-haskell-ghcjs";
|
pname = "template-haskell-ghcjs";
|
||||||
version = "2.12.0.0";
|
version = "2.14.0.0";
|
||||||
src = configuredSrc + /lib/template-haskell-ghcjs;
|
src = configuredSrc + /lib/template-haskell-ghcjs;
|
||||||
libraryHaskellDepends = [ base ghc-boot-th pretty ];
|
libraryHaskellDepends = [ base ghc-boot-th pretty ];
|
||||||
description = "Support library for Template Haskell (customized for GHCJS)";
|
description = "Support library for Template Haskell (customized for GHCJS)";
|
@ -43,6 +43,8 @@ runCommand "configured-ghcjs-src" {
|
|||||||
# TODO: How to actually fix this?
|
# TODO: How to actually fix this?
|
||||||
# Seems to work fine and produce the right files.
|
# Seems to work fine and produce the right files.
|
||||||
touch ghc/includes/ghcautoconf.h
|
touch ghc/includes/ghcautoconf.h
|
||||||
|
mkdir -p ghc/compiler/vectorise
|
||||||
|
mkdir -p ghc/utils/haddock/haddock-library/vendor
|
||||||
|
|
||||||
patchShebangs .
|
patchShebangs .
|
||||||
./utils/makePackages.sh copy
|
./utils/makePackages.sh copy
|
||||||
|
@ -104,7 +104,5 @@ in stdenv.mkDerivation {
|
|||||||
inherit passthru;
|
inherit passthru;
|
||||||
|
|
||||||
meta.platforms = passthru.bootPkgs.ghc.meta.platforms;
|
meta.platforms = passthru.bootPkgs.ghc.meta.platforms;
|
||||||
meta.hydraPlatforms = [];
|
meta.maintainers = [lib.maintainers.elvishjerricco];
|
||||||
meta.broken = true; # does not compile: https://hydra.nixos.org/build/88052615
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -76,4 +76,7 @@ self: super: {
|
|||||||
haddock-library = dontHaddock (dontCheck self.haddock-library_1_5_0_1);
|
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"
|
"ghc863Binary"
|
||||||
"ghc844"
|
"ghc844"
|
||||||
"ghcjs"
|
"ghcjs"
|
||||||
"ghcjs82"
|
|
||||||
"ghcjs84"
|
"ghcjs84"
|
||||||
|
"ghcjs86"
|
||||||
"integer-simple"
|
"integer-simple"
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -83,18 +83,19 @@ in {
|
|||||||
buildLlvmPackages = buildPackages.llvmPackages_6;
|
buildLlvmPackages = buildPackages.llvmPackages_6;
|
||||||
llvmPackages = pkgs.llvmPackages_6;
|
llvmPackages = pkgs.llvmPackages_6;
|
||||||
};
|
};
|
||||||
ghcjs = compiler.ghcjs84;
|
ghcjs = compiler.ghcjs86;
|
||||||
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;
|
|
||||||
};
|
|
||||||
ghcjs84 = callPackage ../development/compilers/ghcjs-ng {
|
ghcjs84 = callPackage ../development/compilers/ghcjs-ng {
|
||||||
bootPkgs = packages.ghc844;
|
bootPkgs = packages.ghc844;
|
||||||
ghcjsSrcJson = ../development/compilers/ghcjs-ng/8.4/git.json;
|
ghcjsSrcJson = ../development/compilers/ghcjs-ng/8.4/git.json;
|
||||||
stage0 = ../development/compilers/ghcjs-ng/8.4/stage0.nix;
|
stage0 = ../development/compilers/ghcjs-ng/8.4/stage0.nix;
|
||||||
ghcjsDepOverrides = callPackage ../development/compilers/ghcjs-ng/8.4/dep-overrides.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
|
# The integer-simple attribute set contains all the GHC compilers
|
||||||
# build with integer-simple instead of integer-gmp.
|
# build with integer-simple instead of integer-gmp.
|
||||||
@ -155,31 +156,19 @@ in {
|
|||||||
ghc = bh.compiler.ghcHEAD;
|
ghc = bh.compiler.ghcHEAD;
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-head.nix { };
|
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-head.nix { };
|
||||||
};
|
};
|
||||||
ghcjs = packages.ghcjs84;
|
ghcjs = packages.ghcjs86;
|
||||||
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 { };
|
|
||||||
};
|
|
||||||
ghcjs84 = callPackage ../development/haskell-modules rec {
|
ghcjs84 = callPackage ../development/haskell-modules rec {
|
||||||
buildHaskellPackages = ghc.bootPkgs;
|
buildHaskellPackages = ghc.bootPkgs;
|
||||||
ghc = bh.compiler.ghcjs84;
|
ghc = bh.compiler.ghcjs84;
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.4.x.nix { };
|
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.4.x.nix { };
|
||||||
packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.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
|
# The integer-simple attribute set contains package sets for all the GHC compilers
|
||||||
# using integer-simple instead of integer-gmp.
|
# using integer-simple instead of integer-gmp.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user