on iko/ghcjs-patch-master help sign in
Move more CI to 20.09 (attempt 2) (#975)

* Update default nixpkgs to 20.09 * Move more CI to work on 20.09 by default * IFD level 1 * Use nixpkgs 20.03 emscripten (needed for ghcjs) * Add missing materialized files * Add missing materialized files * Fix for ghc 8.8 build on darwin * Fix for ghcjs 8.8 build on darwin * Fix hls stack test eval for ghc810220201118 * ifdLevel 2 * Oops: accidentally turned on tests for experimental GHC * Revert "Fix hls stack test eval for ghc810220201118" This reverts commit b405cd7ee8bd62214bd2d0a61e0317673b5bf1b5. * ifdLevel 3 * Disable GHC 8.6.5 windows cross on nixpkgs 20.09 * Update supported GHC doc with a table * Add emscripten comment Co-authored-by: Hamish Mackenzie <Hamish.Mackenzie@iohk.io>

commit738af22ce95d9e3f1c9677045db441bca2acc472 authorMichael Peyton Jones <michael.peyton-jones@iohk.io> dateThu 17 Dec 2020, 15:57 (6 years ago) parentb8584ac
26 files changed+2465−48
ci.nix+5−5 docs/reference/supported-ghc-versions.md+26−26 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/bytestring.nix+136 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghc-boot.nix+60 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghc.nix+585 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghci.nix+70 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/hpc.nix+52 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv-proxy.nix+55 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv.nix+54 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/libiserv.nix+58 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/remote-iserv.nix+46 materialized/ghc-extra-projects/windows/ghc8101/default.nix+87 materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/bytestring.nix+136 materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/ghc-boot.nix+60 materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/ghc.nix+586 materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/ghci.nix+70 materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/hpc.nix+52 materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/iserv-proxy.nix+55 materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/iserv.nix+54 materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/libiserv.nix+58 materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/remote-iserv.nix+46 materialized/ghc-extra-projects/windows/ghc810220201118/default.nix+88 mkdocs.yml+1 nix/sources.json+5−4 overlays/emscripten.nix+18−11 release.nix+2−2
ci.nix+5−5
@@ -24,14 +24,12 @@
2424 # Update supported-ghc-versions.md to reflect any changes made here.
2525 {
2626 ghc865 = true;
27− } // nixpkgs.lib.optionalAttrs (nixpkgsName == "R2003") {
27+ } // nixpkgs.lib.optionalAttrs (nixpkgsName == "R2009") {
2828 ghc883 = false;
2929 ghc884 = true;
3030 ghc8101 = false;
3131 ghc8102 = true;
3232 ghc810220201118 = false;
33− } // nixpkgs.lib.optionalAttrs (nixpkgsName == "R2009") {
34− ghc8102 = true;
3533 });
3634 systems = nixpkgs: nixpkgs.lib.filterAttrs (_: v: builtins.elem v supportedSystems) {
3735 # I wanted to take these from 'lib.systems.examples', but apparently there isn't one for linux!
@@ -42,9 +40,11 @@
4240 # We need to use the actual nixpkgs version we're working with here, since the values
4341 # of 'lib.systems.examples' are not understood between all versions
4442 let lib = nixpkgs.lib;
45− in lib.optionalAttrs (nixpkgsName == "R2003" && (__elem compiler-nix-name ["ghc865" "ghc884"])) {
43+ in lib.optionalAttrs (nixpkgsName == "R2009" && (__elem compiler-nix-name ["ghc865" "ghc884"])) {
4644 inherit (lib.systems.examples) ghcjs;
47− } // lib.optionalAttrs (system == "x86_64-linux" && (nixpkgsName == "R2009" || (!(__elem compiler-nix-name ["ghc8101" "ghc8102" "ghc810220201118"])))) {
45+ } // lib.optionalAttrs (system == "x86_64-linux" && (
46+ (nixpkgsName == "R2009" && __elem compiler-nix-name ["ghc8101" "ghc8102" "ghc810220201118"])
47+ || (nixpkgsName == "R2003" && __elem compiler-nix-name ["ghc865"]))) {
4848 # Windows cross compilation is currently broken on macOS
4949 inherit (lib.systems.examples) mingwW64;
5050 } // lib.optionalAttrs (system == "x86_64-linux") {
docs/reference/supported-ghc-versions.md+26−26
@@ -1,30 +1,30 @@
11# Supported GHC Versions
22
3−The following versions of GHC built on the CI servers and should be included
4−in the binary cache (for the default haskell.nix `nixpkgs`).
5−
6−* 8.6.5 `compiler-nix-name = "ghc865";`
7−* 8.8.3 `compiler-nix-name = "ghc883";`
8−* 8.8.4 `compiler-nix-name = "ghc884";`
9−* 8.10.1 `compiler-nix-name = "ghc8101";`
10−* 8.10.2 `compiler-nix-name = "ghc8102";`
11−
12−Full test suite is run against 8.6.5, 8.8.4 and 8.10.2.
13−
14−See [ci.nix](https://github.com/input-output-hk/haskell.nix/blob/master/ci.nix)
15−for the list of tested GHC versions.
16−
17−The following GHC versions are not included in CI and will not be cached:
18−
19−* 8.4.4 `compiler-nix-name = "ghc844";`
20−* 8.6.1 `compiler-nix-name = "ghc861";`
21−* 8.6.2 `compiler-nix-name = "ghc862";`
22−* 8.6.3 `compiler-nix-name = "ghc863";`
23−* 8.6.4 `compiler-nix-name = "ghc864";`
24−* 8.8.1 `compiler-nix-name = "ghc881";`
25−* 8.8.2 `compiler-nix-name = "ghc882";`
26−
27−See [overlays/bootstrap.nix](https://github.com/input-output-hk/haskell.nix/blob/master/overlays/bootstrap.nix)
28−for a list of all the valid `compiler-nix-names`.
3+This table shows which versions of GHC are defined, built by CI, and tested.
4+If you use a combination of nixpkgs version and GHC version which is built by our CI, you should get cache hits from our cache.
5+
6+The "nixpkgs versions" refer to the versions that `haskell.nix` provides; if you use your own version of nixpkgs you will likely not get cache hit
7+
8+| Nixpkgs version | GHC version | Defined? | Built? | Tested? |
9+| --------------- | ------------- | -------- | ------ | ------- |
10+| 20.03 | 8.4.4 | Y | N | N |
11+| 20.03 | 8.6.{1,2,3,4} | Y | N | N |
12+| 20.03 | 8.6.5 | Y | Y | Y |
13+| 20.03 | 8.8.{1,2,3} | Y | N | N |
14+| 20.03 | 8.8.4 | Y | N | N |
15+| 20.03 | 8.10.1 | Y | N | N |
16+| 20.03 | 8.10.2 | Y | N | N |
17+| 20.09 | 8.4.4 | Y | N | N |
18+| 20.09 | 8.6.{1,2,3,4} | Y | N | N |
19+| 20.09 | 8.6.5 | Y | Y | Y |
20+| 20.09 | 8.8.{1,2} | Y | N | N |
21+| 20.09 | 8.8.3 | Y | Y | N |
22+| 20.09 | 8.8.4 | Y | Y | Y |
23+| 20.09 | 8.10.1 | Y | Y | N |
24+| 20.09 | 8.10.2 | Y | Y | Y |
25+
26+See [ci.nix](https://github.com/input-output-hk/haskell.nix/blob/master/ci.nix) for the source of truth about what is built and tested.
27+
28+See [overlays/bootstrap.nix](https://github.com/input-output-hk/haskell.nix/blob/master/overlays/bootstrap.nix) for a list of all the valid `compiler-nix-names`.
2929
3030See also: [Instructions on adding new GHC versions](../dev/adding-new-ghc.md).
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/bytestring.nixnew file+136
@@ -0,0 +1,136 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = { integer-simple = false; };
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
15+ license = "BSD-3-Clause";
16+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
17+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
18+ author = "Don Stewart,\nDuncan Coutts";
19+ homepage = "https://github.com/haskell/bytestring";
20+ url = "";
21+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
22+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [ "README.md" "Changelog.md" ];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = ([
36+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
37+ (hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim"))
38+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
39+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (errorHandler.buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (errorHandler.buildDepError "integer"));
40+ buildable = true;
41+ modules = [
42+ "Data/ByteString/Builder/ASCII"
43+ "Data/ByteString/Builder/Prim/Binary"
44+ "Data/ByteString/Builder/Prim/ASCII"
45+ "Data/ByteString/Builder/Prim/Internal/Floating"
46+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
47+ "Data/ByteString/Builder/Prim/Internal/Base16"
48+ "Data/ByteString"
49+ "Data/ByteString/Char8"
50+ "Data/ByteString/Unsafe"
51+ "Data/ByteString/Internal"
52+ "Data/ByteString/Lazy"
53+ "Data/ByteString/Lazy/Char8"
54+ "Data/ByteString/Lazy/Internal"
55+ "Data/ByteString/Short"
56+ "Data/ByteString/Short/Internal"
57+ "Data/ByteString/Builder"
58+ "Data/ByteString/Builder/Extra"
59+ "Data/ByteString/Builder/Prim"
60+ "Data/ByteString/Builder/Internal"
61+ "Data/ByteString/Builder/Prim/Internal"
62+ "Data/ByteString/Lazy/Builder"
63+ "Data/ByteString/Lazy/Builder/Extras"
64+ "Data/ByteString/Lazy/Builder/ASCII"
65+ ];
66+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
67+ includeDirs = [ "include" ];
68+ includes = [ "fpstring.h" ];
69+ };
70+ tests = {
71+ "prop-compiled" = {
72+ depends = [
73+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
74+ (hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim"))
75+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
76+ (hsPkgs."random" or (errorHandler.buildDepError "random"))
77+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
78+ (hsPkgs."test-framework" or (errorHandler.buildDepError "test-framework"))
79+ (hsPkgs."test-framework-quickcheck2" or (errorHandler.buildDepError "test-framework-quickcheck2"))
80+ (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck"))
81+ ];
82+ buildable = true;
83+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
84+ cSources = [ "cbits/fpstring.c" ];
85+ hsSourceDirs = [ "." "tests" ];
86+ includeDirs = [ "include" ];
87+ mainPath = [ "Properties.hs" ];
88+ };
89+ "regressions" = {
90+ depends = [
91+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
92+ (hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim"))
93+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
94+ (hsPkgs."random" or (errorHandler.buildDepError "random"))
95+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
96+ (hsPkgs."test-framework" or (errorHandler.buildDepError "test-framework"))
97+ (hsPkgs."test-framework-hunit" or (errorHandler.buildDepError "test-framework-hunit"))
98+ (hsPkgs."HUnit" or (errorHandler.buildDepError "HUnit"))
99+ ];
100+ buildable = false;
101+ cSources = [ "cbits/fpstring.c" ];
102+ hsSourceDirs = [ "." "tests" ];
103+ includeDirs = [ "include" ];
104+ mainPath = [ "Regressions.hs" ];
105+ };
106+ "test-builder" = {
107+ depends = [
108+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
109+ (hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim"))
110+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
111+ (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck"))
112+ (hsPkgs."byteorder" or (errorHandler.buildDepError "byteorder"))
113+ (hsPkgs."dlist" or (errorHandler.buildDepError "dlist"))
114+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
115+ (hsPkgs."mtl" or (errorHandler.buildDepError "mtl"))
116+ (hsPkgs."HUnit" or (errorHandler.buildDepError "HUnit"))
117+ (hsPkgs."test-framework" or (errorHandler.buildDepError "test-framework"))
118+ (hsPkgs."test-framework-hunit" or (errorHandler.buildDepError "test-framework-hunit"))
119+ (hsPkgs."test-framework-quickcheck2" or (errorHandler.buildDepError "test-framework-quickcheck2"))
120+ ];
121+ buildable = true;
122+ modules = [
123+ "Data/ByteString/Builder/Tests"
124+ "Data/ByteString/Builder/Prim/Tests"
125+ "Data/ByteString/Builder/Prim/TestUtils"
126+ "TestFramework"
127+ ];
128+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
129+ hsSourceDirs = [ "." "tests" "tests/builder" ];
130+ includeDirs = [ "include" ];
131+ includes = [ "fpstring.h" ];
132+ mainPath = [ "TestSuite.hs" ];
133+ };
134+ };
135+ };
136+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghc-boot.nixnew file+60
@@ -0,0 +1,60 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.22";
14+ identifier = { name = "ghc-boot"; version = "8.10.1"; };
15+ license = "BSD-3-Clause";
16+ copyright = "";
17+ maintainer = "ghc-devs@haskell.org";
18+ author = "";
19+ homepage = "";
20+ url = "";
21+ synopsis = "Shared functionality between GHC and its boot libraries";
22+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = [
36+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
37+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
38+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
39+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
40+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
41+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
42+ (hsPkgs."ghc-boot-th" or (errorHandler.buildDepError "ghc-boot-th"))
43+ ];
44+ buildable = true;
45+ modules = [
46+ "GHC/BaseDir"
47+ "GHC/LanguageExtensions"
48+ "GHC/PackageDb"
49+ "GHC/Serialized"
50+ "GHC/ForeignSrcLang"
51+ "GHC/HandleEncoding"
52+ "GHC/Platform"
53+ "GHC/Platform/Host"
54+ "GHC/Settings"
55+ "GHC/UniqueSubdir"
56+ "GHC/Version"
57+ ];
58+ };
59+ };
60+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghc.nixnew file+585
@@ -0,0 +1,585 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {
12+ ghci = false;
13+ stage1 = false;
14+ stage2 = false;
15+ stage3 = false;
16+ terminfo = true;
17+ integer-simple = false;
18+ integer-gmp = false;
19+ };
20+ package = {
21+ specVersion = "1.10";
22+ identifier = { name = "ghc"; version = "8.10.1"; };
23+ license = "BSD-3-Clause";
24+ copyright = "";
25+ maintainer = "glasgow-haskell-users@haskell.org";
26+ author = "The GHC Team";
27+ homepage = "http://www.haskell.org/ghc/";
28+ url = "";
29+ synopsis = "The GHC API";
30+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
31+ buildType = "Simple";
32+ isLocal = true;
33+ detailLevel = "FullDetails";
34+ licenseFiles = [ "LICENSE" ];
35+ dataDir = "";
36+ dataFiles = [];
37+ extraSrcFiles = [];
38+ extraTmpFiles = [];
39+ extraDocFiles = [];
40+ };
41+ components = {
42+ "library" = {
43+ depends = ((([
44+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
45+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
46+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
47+ (hsPkgs."process" or (errorHandler.buildDepError "process"))
48+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
49+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
50+ (hsPkgs."time" or (errorHandler.buildDepError "time"))
51+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
52+ (hsPkgs."array" or (errorHandler.buildDepError "array"))
53+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
54+ (hsPkgs."template-haskell" or (errorHandler.buildDepError "template-haskell"))
55+ (hsPkgs."hpc" or (errorHandler.buildDepError "hpc"))
56+ (hsPkgs."transformers" or (errorHandler.buildDepError "transformers"))
57+ (hsPkgs."ghc-boot" or (errorHandler.buildDepError "ghc-boot"))
58+ (hsPkgs."ghc-boot-th" or (errorHandler.buildDepError "ghc-boot-th"))
59+ (hsPkgs."ghc-heap" or (errorHandler.buildDepError "ghc-heap"))
60+ (hsPkgs."ghci" or (errorHandler.buildDepError "ghci"))
61+ ] ++ (if system.isWindows
62+ then [ (hsPkgs."Win32" or (errorHandler.buildDepError "Win32")) ]
63+ else [
64+ (hsPkgs."unix" or (errorHandler.buildDepError "unix"))
65+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (errorHandler.buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (errorHandler.buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (errorHandler.buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (errorHandler.buildDepError "integer-simple"));
66+ buildable = true;
67+ modules = [
68+ "HieTypes"
69+ "HieDebug"
70+ "HieBin"
71+ "HieUtils"
72+ "HieAst"
73+ "Ar"
74+ "FileCleanup"
75+ "DriverBkp"
76+ "BkpSyn"
77+ "NameShape"
78+ "RnModIface"
79+ "Avail"
80+ "AsmUtils"
81+ "BasicTypes"
82+ "ConLike"
83+ "DataCon"
84+ "PatSyn"
85+ "Demand"
86+ "Debug"
87+ "Exception"
88+ "FieldLabel"
89+ "GhcMonad"
90+ "Hooks"
91+ "Id"
92+ "IdInfo"
93+ "Predicate"
94+ "Lexeme"
95+ "Literal"
96+ "Llvm"
97+ "Llvm/AbsSyn"
98+ "Llvm/MetaData"
99+ "Llvm/PpLlvm"
100+ "Llvm/Types"
101+ "LlvmCodeGen"
102+ "LlvmCodeGen/Base"
103+ "LlvmCodeGen/CodeGen"
104+ "LlvmCodeGen/Data"
105+ "LlvmCodeGen/Ppr"
106+ "LlvmCodeGen/Regs"
107+ "LlvmMangler"
108+ "MkId"
109+ "Module"
110+ "Name"
111+ "NameEnv"
112+ "NameSet"
113+ "OccName"
114+ "RdrName"
115+ "NameCache"
116+ "SrcLoc"
117+ "UniqSupply"
118+ "Unique"
119+ "Var"
120+ "VarEnv"
121+ "VarSet"
122+ "UnVarGraph"
123+ "BlockId"
124+ "CLabel"
125+ "Cmm"
126+ "CmmBuildInfoTables"
127+ "CmmPipeline"
128+ "CmmCallConv"
129+ "CmmCommonBlockElim"
130+ "CmmImplementSwitchPlans"
131+ "CmmContFlowOpt"
132+ "CmmExpr"
133+ "CmmInfo"
134+ "CmmLex"
135+ "CmmLint"
136+ "CmmLive"
137+ "CmmMachOp"
138+ "CmmMonad"
139+ "CmmSwitch"
140+ "CmmNode"
141+ "CmmOpt"
142+ "CmmParse"
143+ "CmmProcPoint"
144+ "CmmSink"
145+ "CmmType"
146+ "CmmUtils"
147+ "CmmLayoutStack"
148+ "CliOption"
149+ "EnumSet"
150+ "GhcNameVersion"
151+ "FileSettings"
152+ "MkGraph"
153+ "PprBase"
154+ "PprC"
155+ "PprCmm"
156+ "PprCmmDecl"
157+ "PprCmmExpr"
158+ "Bitmap"
159+ "GHC/Platform/Regs"
160+ "GHC/Platform/ARM"
161+ "GHC/Platform/ARM64"
162+ "GHC/Platform/NoRegs"
163+ "GHC/Platform/PPC"
164+ "GHC/Platform/S390X"
165+ "GHC/Platform/SPARC"
166+ "GHC/Platform/X86"
167+ "GHC/Platform/X86_64"
168+ "GHC/StgToCmm/CgUtils"
169+ "GHC/StgToCmm"
170+ "GHC/StgToCmm/Bind"
171+ "GHC/StgToCmm/Closure"
172+ "GHC/StgToCmm/DataCon"
173+ "GHC/StgToCmm/Env"
174+ "GHC/StgToCmm/Expr"
175+ "GHC/StgToCmm/Foreign"
176+ "GHC/StgToCmm/Heap"
177+ "GHC/StgToCmm/Hpc"
178+ "GHC/StgToCmm/ArgRep"
179+ "GHC/StgToCmm/Layout"
180+ "GHC/StgToCmm/Monad"
181+ "GHC/StgToCmm/Prim"
182+ "GHC/StgToCmm/Prof"
183+ "GHC/StgToCmm/Ticky"
184+ "GHC/StgToCmm/Utils"
185+ "GHC/StgToCmm/ExtCode"
186+ "SMRep"
187+ "CoreArity"
188+ "CoreFVs"
189+ "CoreLint"
190+ "CorePrep"
191+ "CoreSubst"
192+ "CoreOpt"
193+ "CoreSyn"
194+ "TrieMap"
195+ "CoreTidy"
196+ "CoreUnfold"
197+ "CoreUtils"
198+ "CoreMap"
199+ "CoreSeq"
200+ "CoreStats"
201+ "MkCore"
202+ "PprCore"
203+ "GHC/HsToCore/PmCheck/Oracle"
204+ "GHC/HsToCore/PmCheck/Ppr"
205+ "GHC/HsToCore/PmCheck/Types"
206+ "GHC/HsToCore/PmCheck"
207+ "Coverage"
208+ "Desugar"
209+ "DsArrows"
210+ "DsBinds"
211+ "DsCCall"
212+ "DsExpr"
213+ "DsForeign"
214+ "DsGRHSs"
215+ "DsListComp"
216+ "DsMonad"
217+ "DsUsage"
218+ "DsUtils"
219+ "ExtractDocs"
220+ "Match"
221+ "MatchCon"
222+ "MatchLit"
223+ "GHC/Hs"
224+ "GHC/Hs/Binds"
225+ "GHC/Hs/Decls"
226+ "GHC/Hs/Doc"
227+ "GHC/Hs/Expr"
228+ "GHC/Hs/ImpExp"
229+ "GHC/Hs/Lit"
230+ "GHC/Hs/PlaceHolder"
231+ "GHC/Hs/Extension"
232+ "GHC/Hs/Instances"
233+ "GHC/Hs/Pat"
234+ "GHC/Hs/Types"
235+ "GHC/Hs/Utils"
236+ "GHC/Hs/Dump"
237+ "BinIface"
238+ "BinFingerprint"
239+ "BuildTyCl"
240+ "IfaceEnv"
241+ "IfaceSyn"
242+ "IfaceType"
243+ "ToIface"
244+ "LoadIface"
245+ "MkIface"
246+ "TcIface"
247+ "FlagChecker"
248+ "Annotations"
249+ "CmdLineParser"
250+ "CodeOutput"
251+ "Config"
252+ "Constants"
253+ "DriverMkDepend"
254+ "DriverPhases"
255+ "PipelineMonad"
256+ "DriverPipeline"
257+ "DynFlags"
258+ "ErrUtils"
259+ "Finder"
260+ "GHC"
261+ "GhcMake"
262+ "GhcPlugins"
263+ "GhcPrelude"
264+ "DynamicLoading"
265+ "HeaderInfo"
266+ "HscMain"
267+ "HscStats"
268+ "HscTypes"
269+ "InteractiveEval"
270+ "InteractiveEvalTypes"
271+ "PackageConfig"
272+ "Packages"
273+ "PlatformConstants"
274+ "Plugins"
275+ "TcPluginM"
276+ "PprTyThing"
277+ "Settings"
278+ "StaticPtrTable"
279+ "SysTools"
280+ "SysTools/BaseDir"
281+ "SysTools/Terminal"
282+ "SysTools/ExtraObj"
283+ "SysTools/Info"
284+ "SysTools/Process"
285+ "SysTools/Tasks"
286+ "SysTools/Settings"
287+ "Elf"
288+ "TidyPgm"
289+ "Ctype"
290+ "HaddockUtils"
291+ "Lexer"
292+ "OptCoercion"
293+ "Parser"
294+ "RdrHsSyn"
295+ "ApiAnnotation"
296+ "ForeignCall"
297+ "KnownUniques"
298+ "PrelInfo"
299+ "PrelNames"
300+ "PrelRules"
301+ "PrimOp"
302+ "ToolSettings"
303+ "TysPrim"
304+ "TysWiredIn"
305+ "CostCentre"
306+ "CostCentreState"
307+ "ProfInit"
308+ "RnBinds"
309+ "RnEnv"
310+ "RnExpr"
311+ "RnHsDoc"
312+ "RnNames"
313+ "RnPat"
314+ "RnSource"
315+ "RnSplice"
316+ "RnTypes"
317+ "RnFixity"
318+ "RnUtils"
319+ "RnUnbound"
320+ "CoreMonad"
321+ "CSE"
322+ "FloatIn"
323+ "FloatOut"
324+ "LiberateCase"
325+ "OccurAnal"
326+ "SAT"
327+ "SetLevels"
328+ "SimplCore"
329+ "SimplEnv"
330+ "SimplMonad"
331+ "SimplUtils"
332+ "Simplify"
333+ "SimplStg"
334+ "StgStats"
335+ "StgCse"
336+ "StgLiftLams"
337+ "StgLiftLams/Analysis"
338+ "StgLiftLams/LiftM"
339+ "StgLiftLams/Transformation"
340+ "StgSubst"
341+ "UnariseStg"
342+ "RepType"
343+ "Rules"
344+ "SpecConstr"
345+ "Specialise"
346+ "CoreToStg"
347+ "StgLint"
348+ "StgSyn"
349+ "StgFVs"
350+ "CallArity"
351+ "DmdAnal"
352+ "Exitify"
353+ "WorkWrap"
354+ "WwLib"
355+ "FamInst"
356+ "ClsInst"
357+ "Inst"
358+ "TcAnnotations"
359+ "TcArrows"
360+ "TcBinds"
361+ "TcSigs"
362+ "TcClassDcl"
363+ "TcDefaults"
364+ "TcDeriv"
365+ "TcDerivInfer"
366+ "TcDerivUtils"
367+ "TcEnv"
368+ "TcExpr"
369+ "TcForeign"
370+ "TcGenDeriv"
371+ "TcGenFunctor"
372+ "TcGenGenerics"
373+ "TcHsSyn"
374+ "TcHsType"
375+ "TcInstDcls"
376+ "TcMType"
377+ "TcValidity"
378+ "TcMatches"
379+ "TcPat"
380+ "TcPatSyn"
381+ "TcRnDriver"
382+ "TcBackpack"
383+ "TcRnExports"
384+ "TcRnMonad"
385+ "TcRnTypes"
386+ "Constraint"
387+ "TcOrigin"
388+ "TcRules"
389+ "TcSimplify"
390+ "TcHoleErrors"
391+ "TcHoleFitTypes"
392+ "TcErrors"
393+ "TcTyClsDecls"
394+ "TcTyDecls"
395+ "TcTypeable"
396+ "TcType"
397+ "TcEvidence"
398+ "TcEvTerm"
399+ "TcUnify"
400+ "TcInteract"
401+ "TcCanonical"
402+ "TcFlatten"
403+ "TcSMonad"
404+ "TcTypeNats"
405+ "TcSplice"
406+ "Class"
407+ "Coercion"
408+ "DsMeta"
409+ "THNames"
410+ "FamInstEnv"
411+ "FunDeps"
412+ "InstEnv"
413+ "TyCon"
414+ "CoAxiom"
415+ "Type"
416+ "TyCoRep"
417+ "TyCoFVs"
418+ "TyCoSubst"
419+ "TyCoPpr"
420+ "TyCoTidy"
421+ "Unify"
422+ "Bag"
423+ "Binary"
424+ "BooleanFormula"
425+ "BufWrite"
426+ "Digraph"
427+ "Encoding"
428+ "FastFunctions"
429+ "FastMutInt"
430+ "FastString"
431+ "FastStringEnv"
432+ "Fingerprint"
433+ "FiniteMap"
434+ "FV"
435+ "GraphBase"
436+ "GraphColor"
437+ "GraphOps"
438+ "GraphPpr"
439+ "IOEnv"
440+ "Json"
441+ "ListSetOps"
442+ "Maybes"
443+ "MonadUtils"
444+ "OrdList"
445+ "Outputable"
446+ "Pair"
447+ "Panic"
448+ "PlainPanic"
449+ "PprColour"
450+ "Pretty"
451+ "State"
452+ "Stream"
453+ "StringBuffer"
454+ "UniqDFM"
455+ "UniqDSet"
456+ "UniqFM"
457+ "UniqMap"
458+ "UniqSet"
459+ "Util"
460+ "Hoopl/Block"
461+ "Hoopl/Collections"
462+ "Hoopl/Dataflow"
463+ "Hoopl/Graph"
464+ "Hoopl/Label"
465+ "AsmCodeGen"
466+ "TargetReg"
467+ "NCGMonad"
468+ "Instruction"
469+ "BlockLayout"
470+ "CFG"
471+ "Dominators"
472+ "Format"
473+ "Reg"
474+ "RegClass"
475+ "PIC"
476+ "CPrim"
477+ "X86/Regs"
478+ "X86/RegInfo"
479+ "X86/Instr"
480+ "X86/Cond"
481+ "X86/Ppr"
482+ "X86/CodeGen"
483+ "PPC/Regs"
484+ "PPC/RegInfo"
485+ "PPC/Instr"
486+ "PPC/Cond"
487+ "PPC/Ppr"
488+ "PPC/CodeGen"
489+ "SPARC/Base"
490+ "SPARC/Regs"
491+ "SPARC/Imm"
492+ "SPARC/AddrMode"
493+ "SPARC/Cond"
494+ "SPARC/Instr"
495+ "SPARC/Stack"
496+ "SPARC/ShortcutJump"
497+ "SPARC/Ppr"
498+ "SPARC/CodeGen"
499+ "SPARC/CodeGen/Amode"
500+ "SPARC/CodeGen/Base"
501+ "SPARC/CodeGen/CondCode"
502+ "SPARC/CodeGen/Gen32"
503+ "SPARC/CodeGen/Gen64"
504+ "SPARC/CodeGen/Sanity"
505+ "SPARC/CodeGen/Expand"
506+ "RegAlloc/Liveness"
507+ "RegAlloc/Graph/Main"
508+ "RegAlloc/Graph/Stats"
509+ "RegAlloc/Graph/ArchBase"
510+ "RegAlloc/Graph/ArchX86"
511+ "RegAlloc/Graph/Coalesce"
512+ "RegAlloc/Graph/Spill"
513+ "RegAlloc/Graph/SpillClean"
514+ "RegAlloc/Graph/SpillCost"
515+ "RegAlloc/Graph/TrivColorable"
516+ "RegAlloc/Linear/Main"
517+ "RegAlloc/Linear/JoinToTargets"
518+ "RegAlloc/Linear/State"
519+ "RegAlloc/Linear/Stats"
520+ "RegAlloc/Linear/FreeRegs"
521+ "RegAlloc/Linear/StackMap"
522+ "RegAlloc/Linear/Base"
523+ "RegAlloc/Linear/X86/FreeRegs"
524+ "RegAlloc/Linear/X86_64/FreeRegs"
525+ "RegAlloc/Linear/PPC/FreeRegs"
526+ "RegAlloc/Linear/SPARC/FreeRegs"
527+ "Dwarf"
528+ "Dwarf/Types"
529+ "Dwarf/Constants"
530+ "GHC/ThToHs"
531+ "ByteCodeTypes"
532+ "ByteCodeAsm"
533+ "ByteCodeGen"
534+ "ByteCodeInstr"
535+ "ByteCodeItbls"
536+ "ByteCodeLink"
537+ "Debugger"
538+ "LinkerTypes"
539+ "Linker"
540+ "RtClosureInspect"
541+ "GHCi"
542+ ];
543+ cSources = [
544+ "parser/cutils.c"
545+ "ghci/keepCAFsForGHCi.c"
546+ "cbits/genSym.c"
547+ ];
548+ hsSourceDirs = [
549+ "."
550+ "backpack"
551+ "basicTypes"
552+ "cmm"
553+ "coreSyn"
554+ "deSugar"
555+ "ghci"
556+ "iface"
557+ "llvmGen"
558+ "main"
559+ "nativeGen"
560+ "parser"
561+ "prelude"
562+ "profiling"
563+ "rename"
564+ "simplCore"
565+ "simplStg"
566+ "specialise"
567+ "stgSyn"
568+ "stranal"
569+ "typecheck"
570+ "types"
571+ "utils"
572+ "hieFile"
573+ ];
574+ includeDirs = ([
575+ "."
576+ "parser"
577+ "utils"
578+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build") ++ (if flags.stage1
579+ then [ "stage1" ]
580+ else if flags.stage2
581+ then [ "stage2" ]
582+ else (pkgs.lib).optional (flags.stage3) "stage2");
583+ };
584+ };
585+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghci.nixnew file+70
@@ -0,0 +1,70 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = { ghci = false; };
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "ghci"; version = "8.10.1"; };
15+ license = "BSD-3-Clause";
16+ copyright = "";
17+ maintainer = "ghc-devs@haskell.org";
18+ author = "";
19+ homepage = "";
20+ url = "";
21+ synopsis = "The library supporting GHC's interactive interpreter";
22+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [ "changelog.md" ];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = [
36+ (hsPkgs."array" or (errorHandler.buildDepError "array"))
37+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
38+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
39+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
40+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
41+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
42+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
43+ (hsPkgs."ghc-boot" or (errorHandler.buildDepError "ghc-boot"))
44+ (hsPkgs."ghc-boot-th" or (errorHandler.buildDepError "ghc-boot-th"))
45+ (hsPkgs."ghc-heap" or (errorHandler.buildDepError "ghc-heap"))
46+ (hsPkgs."template-haskell" or (errorHandler.buildDepError "template-haskell"))
47+ (hsPkgs."transformers" or (errorHandler.buildDepError "transformers"))
48+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (errorHandler.buildDepError "unix"));
49+ buildable = true;
50+ modules = [
51+ "GHCi/BreakArray"
52+ "GHCi/BinaryArray"
53+ "GHCi/Message"
54+ "GHCi/ResolvedBCO"
55+ "GHCi/RemoteTypes"
56+ "GHCi/FFI"
57+ "GHCi/InfoTable"
58+ "GHCi/StaticPtrTable"
59+ "GHCi/TH/Binary"
60+ "SizedSeq"
61+ ] ++ (pkgs.lib).optionals (flags.ghci) [
62+ "GHCi/Run"
63+ "GHCi/CreateBCO"
64+ "GHCi/ObjLink"
65+ "GHCi/Signals"
66+ "GHCi/TH"
67+ ];
68+ };
69+ };
70+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/hpc.nixnew file+52
@@ -0,0 +1,52 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "hpc"; version = "0.6.1.0"; };
15+ license = "BSD-3-Clause";
16+ copyright = "";
17+ maintainer = "ghc-devs@haskell.org";
18+ author = "Andy Gill";
19+ homepage = "";
20+ url = "";
21+ synopsis = "Code Coverage Library for Haskell";
22+ description = "This package provides the code coverage library for Haskell.\n\nSee <http://www.haskell.org/haskellwiki/Haskell_program_coverage> for more\ninformation.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [ "changelog.md" ];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = [
36+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
37+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
38+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
39+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
40+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
41+ (hsPkgs."time" or (errorHandler.buildDepError "time"))
42+ ];
43+ buildable = true;
44+ modules = [
45+ "Trace/Hpc/Util"
46+ "Trace/Hpc/Mix"
47+ "Trace/Hpc/Tix"
48+ "Trace/Hpc/Reflect"
49+ ];
50+ };
51+ };
52+ } // rec { src = (pkgs.lib).mkDefault ../libraries/hpc; }
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv-proxy.nixnew file+55
@@ -0,0 +1,55 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "iserv-proxy"; version = "8.10.1"; };
15+ license = "BSD-3-Clause";
16+ copyright = "XXX";
17+ maintainer = "XXX";
18+ author = "XXX";
19+ homepage = "";
20+ url = "";
21+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
22+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ exes = {
35+ "iserv-proxy" = {
36+ depends = [
37+ (hsPkgs."array" or (errorHandler.buildDepError "array"))
38+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
39+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
40+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
41+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
42+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
43+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
44+ (hsPkgs."network" or (errorHandler.buildDepError "network"))
45+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
46+ (hsPkgs."ghci" or (errorHandler.buildDepError "ghci"))
47+ (hsPkgs."libiserv" or (errorHandler.buildDepError "libiserv"))
48+ ];
49+ buildable = true;
50+ hsSourceDirs = [ "src" ];
51+ mainPath = [ "Main.hs" ];
52+ };
53+ };
54+ };
55+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv.nixnew file+54
@@ -0,0 +1,54 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "iserv"; version = "8.10.1"; };
15+ license = "BSD-3-Clause";
16+ copyright = "XXX";
17+ maintainer = "XXX";
18+ author = "XXX";
19+ homepage = "";
20+ url = "";
21+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
22+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ exes = {
35+ "iserv" = {
36+ depends = [
37+ (hsPkgs."array" or (errorHandler.buildDepError "array"))
38+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
39+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
40+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
41+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
42+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
43+ (hsPkgs."ghci" or (errorHandler.buildDepError "ghci"))
44+ (hsPkgs."libiserv" or (errorHandler.buildDepError "libiserv"))
45+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (errorHandler.buildDepError "unix"));
46+ buildable = true;
47+ cSources = [ "cbits/iservmain.c" ];
48+ hsSourceDirs = [ "src" ];
49+ includeDirs = [ "." ];
50+ mainPath = [ "Main.hs" ] ++ [ "" ];
51+ };
52+ };
53+ };
54+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/libiserv.nixnew file+58
@@ -0,0 +1,58 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = { network = false; };
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "libiserv"; version = "8.10.1"; };
15+ license = "BSD-3-Clause";
16+ copyright = "XXX";
17+ maintainer = "XXX";
18+ author = "XXX";
19+ homepage = "";
20+ url = "";
21+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
22+ description = "";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = ([
36+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
37+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
38+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
39+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
40+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
41+ (hsPkgs."ghci" or (errorHandler.buildDepError "ghci"))
42+ ] ++ (pkgs.lib).optionals (flags.network) [
43+ (hsPkgs."network" or (errorHandler.buildDepError "network"))
44+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
45+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
46+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (errorHandler.buildDepError "unix"));
47+ buildable = true;
48+ modules = [
49+ "Lib"
50+ "GHCi/Utils"
51+ ] ++ (pkgs.lib).optionals (flags.network) [
52+ "Remote/Message"
53+ "Remote/Slave"
54+ ];
55+ hsSourceDirs = [ "src" ];
56+ };
57+ };
58+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/remote-iserv.nixnew file+46
@@ -0,0 +1,46 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "remote-iserv"; version = "8.10.1"; };
15+ license = "BSD-3-Clause";
16+ copyright = "XXX";
17+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
18+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
19+ homepage = "";
20+ url = "";
21+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
22+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ exes = {
35+ "remote-iserv" = {
36+ depends = [
37+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
38+ (hsPkgs."libiserv" or (errorHandler.buildDepError "libiserv"))
39+ ];
40+ buildable = true;
41+ hsSourceDirs = [ "src" ];
42+ mainPath = [ "Cli.hs" ];
43+ };
44+ };
45+ };
46+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/windows/ghc8101/default.nixnew file+87
@@ -0,0 +1,87 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.6.1").revisions).default;
7+ "ghc-heap".revision = (((hackage."ghc-heap")."8.10.1").revisions).default;
8+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
9+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
10+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
11+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
12+ "template-haskell".revision = (((hackage."template-haskell")."2.16.0.0").revisions).default;
13+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
14+ "base".revision = (((hackage."base")."4.14.0.0").revisions).default;
15+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
16+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
17+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
18+ "process".revision = (((hackage."process")."1.6.9.0").revisions).default;
19+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
20+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.10.1").revisions).default;
21+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
22+ "Win32".revision = (((hackage."Win32")."2.6.2.0").revisions).default;
23+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.3.0").revisions).default;
24+ };
25+ compiler = {
26+ version = "8.10.1";
27+ nix-name = "ghc8101";
28+ packages = {
29+ "ghc-prim" = "0.6.1";
30+ "ghc-heap" = "8.10.1";
31+ "rts" = "1.0";
32+ "deepseq" = "1.4.4.0";
33+ "template-haskell" = "2.16.0.0";
34+ "containers" = "0.6.2.1";
35+ "base" = "4.14.0.0";
36+ "transformers" = "0.5.6.2";
37+ "filepath" = "1.4.2.1";
38+ "pretty" = "1.1.3.6";
39+ "ghc-boot-th" = "8.10.1";
40+ "array" = "0.5.4.0";
41+ "integer-gmp" = "1.0.3.0";
42+ };
43+ };
44+ };
45+ extras = hackage:
46+ {
47+ packages = {
48+ ghc = ./.plan.nix/ghc.nix;
49+ bytestring = ./.plan.nix/bytestring.nix;
50+ remote-iserv = ./.plan.nix/remote-iserv.nix;
51+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
52+ hpc = ./.plan.nix/hpc.nix;
53+ libiserv = ./.plan.nix/libiserv.nix;
54+ ghc-boot = ./.plan.nix/ghc-boot.nix;
55+ ghci = ./.plan.nix/ghci.nix;
56+ iserv = ./.plan.nix/iserv.nix;
57+ };
58+ };
59+ modules = [
60+ ({ lib, ... }:
61+ {
62+ packages = {
63+ "ghc" = {
64+ flags = {
65+ "stage1" = lib.mkOverride 900 false;
66+ "stage2" = lib.mkOverride 900 false;
67+ "integer-gmp" = lib.mkOverride 900 false;
68+ "stage3" = lib.mkOverride 900 false;
69+ "ghci" = lib.mkOverride 900 true;
70+ "integer-simple" = lib.mkOverride 900 false;
71+ "terminfo" = lib.mkOverride 900 true;
72+ };
73+ };
74+ "bytestring" = {
75+ flags = { "integer-simple" = lib.mkOverride 900 false; };
76+ };
77+ "remote-iserv" = { flags = {}; };
78+ "iserv-proxy" = { flags = {}; };
79+ "hpc" = { flags = {}; };
80+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
81+ "ghc-boot" = { flags = {}; };
82+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
83+ "iserv" = { flags = {}; };
84+ };
85+ })
86+ ];
87+ }
materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/bytestring.nixnew file+136
@@ -0,0 +1,136 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = { integer-simple = false; };
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
15+ license = "BSD-3-Clause";
16+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
17+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
18+ author = "Don Stewart,\nDuncan Coutts";
19+ homepage = "https://github.com/haskell/bytestring";
20+ url = "";
21+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
22+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [ "README.md" "Changelog.md" ];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = ([
36+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
37+ (hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim"))
38+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
39+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (errorHandler.buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (errorHandler.buildDepError "integer"));
40+ buildable = true;
41+ modules = [
42+ "Data/ByteString/Builder/ASCII"
43+ "Data/ByteString/Builder/Prim/Binary"
44+ "Data/ByteString/Builder/Prim/ASCII"
45+ "Data/ByteString/Builder/Prim/Internal/Floating"
46+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
47+ "Data/ByteString/Builder/Prim/Internal/Base16"
48+ "Data/ByteString"
49+ "Data/ByteString/Char8"
50+ "Data/ByteString/Unsafe"
51+ "Data/ByteString/Internal"
52+ "Data/ByteString/Lazy"
53+ "Data/ByteString/Lazy/Char8"
54+ "Data/ByteString/Lazy/Internal"
55+ "Data/ByteString/Short"
56+ "Data/ByteString/Short/Internal"
57+ "Data/ByteString/Builder"
58+ "Data/ByteString/Builder/Extra"
59+ "Data/ByteString/Builder/Prim"
60+ "Data/ByteString/Builder/Internal"
61+ "Data/ByteString/Builder/Prim/Internal"
62+ "Data/ByteString/Lazy/Builder"
63+ "Data/ByteString/Lazy/Builder/Extras"
64+ "Data/ByteString/Lazy/Builder/ASCII"
65+ ];
66+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
67+ includeDirs = [ "include" ];
68+ includes = [ "fpstring.h" ];
69+ };
70+ tests = {
71+ "prop-compiled" = {
72+ depends = [
73+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
74+ (hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim"))
75+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
76+ (hsPkgs."random" or (errorHandler.buildDepError "random"))
77+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
78+ (hsPkgs."test-framework" or (errorHandler.buildDepError "test-framework"))
79+ (hsPkgs."test-framework-quickcheck2" or (errorHandler.buildDepError "test-framework-quickcheck2"))
80+ (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck"))
81+ ];
82+ buildable = true;
83+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
84+ cSources = [ "cbits/fpstring.c" ];
85+ hsSourceDirs = [ "." "tests" ];
86+ includeDirs = [ "include" ];
87+ mainPath = [ "Properties.hs" ];
88+ };
89+ "regressions" = {
90+ depends = [
91+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
92+ (hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim"))
93+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
94+ (hsPkgs."random" or (errorHandler.buildDepError "random"))
95+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
96+ (hsPkgs."test-framework" or (errorHandler.buildDepError "test-framework"))
97+ (hsPkgs."test-framework-hunit" or (errorHandler.buildDepError "test-framework-hunit"))
98+ (hsPkgs."HUnit" or (errorHandler.buildDepError "HUnit"))
99+ ];
100+ buildable = false;
101+ cSources = [ "cbits/fpstring.c" ];
102+ hsSourceDirs = [ "." "tests" ];
103+ includeDirs = [ "include" ];
104+ mainPath = [ "Regressions.hs" ];
105+ };
106+ "test-builder" = {
107+ depends = [
108+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
109+ (hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim"))
110+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
111+ (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck"))
112+ (hsPkgs."byteorder" or (errorHandler.buildDepError "byteorder"))
113+ (hsPkgs."dlist" or (errorHandler.buildDepError "dlist"))
114+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
115+ (hsPkgs."mtl" or (errorHandler.buildDepError "mtl"))
116+ (hsPkgs."HUnit" or (errorHandler.buildDepError "HUnit"))
117+ (hsPkgs."test-framework" or (errorHandler.buildDepError "test-framework"))
118+ (hsPkgs."test-framework-hunit" or (errorHandler.buildDepError "test-framework-hunit"))
119+ (hsPkgs."test-framework-quickcheck2" or (errorHandler.buildDepError "test-framework-quickcheck2"))
120+ ];
121+ buildable = true;
122+ modules = [
123+ "Data/ByteString/Builder/Tests"
124+ "Data/ByteString/Builder/Prim/Tests"
125+ "Data/ByteString/Builder/Prim/TestUtils"
126+ "TestFramework"
127+ ];
128+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
129+ hsSourceDirs = [ "." "tests" "tests/builder" ];
130+ includeDirs = [ "include" ];
131+ includes = [ "fpstring.h" ];
132+ mainPath = [ "TestSuite.hs" ];
133+ };
134+ };
135+ };
136+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/ghc-boot.nixnew file+60
@@ -0,0 +1,60 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.22";
14+ identifier = { name = "ghc-boot"; version = "8.10.2.20201118"; };
15+ license = "BSD-3-Clause";
16+ copyright = "";
17+ maintainer = "ghc-devs@haskell.org";
18+ author = "";
19+ homepage = "";
20+ url = "";
21+ synopsis = "Shared functionality between GHC and its boot libraries";
22+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = [
36+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
37+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
38+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
39+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
40+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
41+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
42+ (hsPkgs."ghc-boot-th" or (errorHandler.buildDepError "ghc-boot-th"))
43+ ];
44+ buildable = true;
45+ modules = [
46+ "GHC/BaseDir"
47+ "GHC/LanguageExtensions"
48+ "GHC/PackageDb"
49+ "GHC/Serialized"
50+ "GHC/ForeignSrcLang"
51+ "GHC/HandleEncoding"
52+ "GHC/Platform"
53+ "GHC/Platform/Host"
54+ "GHC/Settings"
55+ "GHC/UniqueSubdir"
56+ "GHC/Version"
57+ ];
58+ };
59+ };
60+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/ghc.nixnew file+586
@@ -0,0 +1,586 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {
12+ ghci = false;
13+ stage1 = false;
14+ stage2 = false;
15+ stage3 = false;
16+ terminfo = true;
17+ integer-simple = false;
18+ integer-gmp = false;
19+ dynamic-system-linker = true;
20+ };
21+ package = {
22+ specVersion = "1.10";
23+ identifier = { name = "ghc"; version = "8.10.2.20201118"; };
24+ license = "BSD-3-Clause";
25+ copyright = "";
26+ maintainer = "glasgow-haskell-users@haskell.org";
27+ author = "The GHC Team";
28+ homepage = "http://www.haskell.org/ghc/";
29+ url = "";
30+ synopsis = "The GHC API";
31+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
32+ buildType = "Simple";
33+ isLocal = true;
34+ detailLevel = "FullDetails";
35+ licenseFiles = [ "LICENSE" ];
36+ dataDir = "";
37+ dataFiles = [];
38+ extraSrcFiles = [];
39+ extraTmpFiles = [];
40+ extraDocFiles = [];
41+ };
42+ components = {
43+ "library" = {
44+ depends = ((([
45+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
46+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
47+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
48+ (hsPkgs."process" or (errorHandler.buildDepError "process"))
49+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
50+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
51+ (hsPkgs."time" or (errorHandler.buildDepError "time"))
52+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
53+ (hsPkgs."array" or (errorHandler.buildDepError "array"))
54+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
55+ (hsPkgs."template-haskell" or (errorHandler.buildDepError "template-haskell"))
56+ (hsPkgs."hpc" or (errorHandler.buildDepError "hpc"))
57+ (hsPkgs."transformers" or (errorHandler.buildDepError "transformers"))
58+ (hsPkgs."ghc-boot" or (errorHandler.buildDepError "ghc-boot"))
59+ (hsPkgs."ghc-boot-th" or (errorHandler.buildDepError "ghc-boot-th"))
60+ (hsPkgs."ghc-heap" or (errorHandler.buildDepError "ghc-heap"))
61+ (hsPkgs."ghci" or (errorHandler.buildDepError "ghci"))
62+ ] ++ (if system.isWindows
63+ then [ (hsPkgs."Win32" or (errorHandler.buildDepError "Win32")) ]
64+ else [
65+ (hsPkgs."unix" or (errorHandler.buildDepError "unix"))
66+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (errorHandler.buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (errorHandler.buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (errorHandler.buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (errorHandler.buildDepError "integer-simple"));
67+ buildable = true;
68+ modules = [
69+ "HieTypes"
70+ "HieDebug"
71+ "HieBin"
72+ "HieUtils"
73+ "HieAst"
74+ "Ar"
75+ "FileCleanup"
76+ "DriverBkp"
77+ "BkpSyn"
78+ "NameShape"
79+ "RnModIface"
80+ "Avail"
81+ "AsmUtils"
82+ "BasicTypes"
83+ "ConLike"
84+ "DataCon"
85+ "PatSyn"
86+ "Demand"
87+ "Debug"
88+ "Exception"
89+ "FieldLabel"
90+ "GhcMonad"
91+ "Hooks"
92+ "Id"
93+ "IdInfo"
94+ "Predicate"
95+ "Lexeme"
96+ "Literal"
97+ "Llvm"
98+ "Llvm/AbsSyn"
99+ "Llvm/MetaData"
100+ "Llvm/PpLlvm"
101+ "Llvm/Types"
102+ "LlvmCodeGen"
103+ "LlvmCodeGen/Base"
104+ "LlvmCodeGen/CodeGen"
105+ "LlvmCodeGen/Data"
106+ "LlvmCodeGen/Ppr"
107+ "LlvmCodeGen/Regs"
108+ "LlvmMangler"
109+ "MkId"
110+ "Module"
111+ "Name"
112+ "NameEnv"
113+ "NameSet"
114+ "OccName"
115+ "RdrName"
116+ "NameCache"
117+ "SrcLoc"
118+ "UniqSupply"
119+ "Unique"
120+ "Var"
121+ "VarEnv"
122+ "VarSet"
123+ "UnVarGraph"
124+ "BlockId"
125+ "CLabel"
126+ "Cmm"
127+ "CmmBuildInfoTables"
128+ "CmmPipeline"
129+ "CmmCallConv"
130+ "CmmCommonBlockElim"
131+ "CmmImplementSwitchPlans"
132+ "CmmContFlowOpt"
133+ "CmmExpr"
134+ "CmmInfo"
135+ "CmmLex"
136+ "CmmLint"
137+ "CmmLive"
138+ "CmmMachOp"
139+ "CmmMonad"
140+ "CmmSwitch"
141+ "CmmNode"
142+ "CmmOpt"
143+ "CmmParse"
144+ "CmmProcPoint"
145+ "CmmSink"
146+ "CmmType"
147+ "CmmUtils"
148+ "CmmLayoutStack"
149+ "CliOption"
150+ "EnumSet"
151+ "GhcNameVersion"
152+ "FileSettings"
153+ "MkGraph"
154+ "PprBase"
155+ "PprC"
156+ "PprCmm"
157+ "PprCmmDecl"
158+ "PprCmmExpr"
159+ "Bitmap"
160+ "GHC/Platform/Regs"
161+ "GHC/Platform/ARM"
162+ "GHC/Platform/ARM64"
163+ "GHC/Platform/NoRegs"
164+ "GHC/Platform/PPC"
165+ "GHC/Platform/S390X"
166+ "GHC/Platform/SPARC"
167+ "GHC/Platform/X86"
168+ "GHC/Platform/X86_64"
169+ "GHC/StgToCmm/CgUtils"
170+ "GHC/StgToCmm"
171+ "GHC/StgToCmm/Bind"
172+ "GHC/StgToCmm/Closure"
173+ "GHC/StgToCmm/DataCon"
174+ "GHC/StgToCmm/Env"
175+ "GHC/StgToCmm/Expr"
176+ "GHC/StgToCmm/Foreign"
177+ "GHC/StgToCmm/Heap"
178+ "GHC/StgToCmm/Hpc"
179+ "GHC/StgToCmm/ArgRep"
180+ "GHC/StgToCmm/Layout"
181+ "GHC/StgToCmm/Monad"
182+ "GHC/StgToCmm/Prim"
183+ "GHC/StgToCmm/Prof"
184+ "GHC/StgToCmm/Ticky"
185+ "GHC/StgToCmm/Utils"
186+ "GHC/StgToCmm/ExtCode"
187+ "SMRep"
188+ "CoreArity"
189+ "CoreFVs"
190+ "CoreLint"
191+ "CorePrep"
192+ "CoreSubst"
193+ "CoreOpt"
194+ "CoreSyn"
195+ "TrieMap"
196+ "CoreTidy"
197+ "CoreUnfold"
198+ "CoreUtils"
199+ "CoreMap"
200+ "CoreSeq"
201+ "CoreStats"
202+ "MkCore"
203+ "PprCore"
204+ "GHC/HsToCore/PmCheck/Oracle"
205+ "GHC/HsToCore/PmCheck/Ppr"
206+ "GHC/HsToCore/PmCheck/Types"
207+ "GHC/HsToCore/PmCheck"
208+ "Coverage"
209+ "Desugar"
210+ "DsArrows"
211+ "DsBinds"
212+ "DsCCall"
213+ "DsExpr"
214+ "DsForeign"
215+ "DsGRHSs"
216+ "DsListComp"
217+ "DsMonad"
218+ "DsUsage"
219+ "DsUtils"
220+ "ExtractDocs"
221+ "Match"
222+ "MatchCon"
223+ "MatchLit"
224+ "GHC/Hs"
225+ "GHC/Hs/Binds"
226+ "GHC/Hs/Decls"
227+ "GHC/Hs/Doc"
228+ "GHC/Hs/Expr"
229+ "GHC/Hs/ImpExp"
230+ "GHC/Hs/Lit"
231+ "GHC/Hs/PlaceHolder"
232+ "GHC/Hs/Extension"
233+ "GHC/Hs/Instances"
234+ "GHC/Hs/Pat"
235+ "GHC/Hs/Types"
236+ "GHC/Hs/Utils"
237+ "GHC/Hs/Dump"
238+ "BinIface"
239+ "BinFingerprint"
240+ "BuildTyCl"
241+ "IfaceEnv"
242+ "IfaceSyn"
243+ "IfaceType"
244+ "ToIface"
245+ "LoadIface"
246+ "MkIface"
247+ "TcIface"
248+ "FlagChecker"
249+ "Annotations"
250+ "CmdLineParser"
251+ "CodeOutput"
252+ "Config"
253+ "Constants"
254+ "DriverMkDepend"
255+ "DriverPhases"
256+ "PipelineMonad"
257+ "DriverPipeline"
258+ "DynFlags"
259+ "ErrUtils"
260+ "Finder"
261+ "GHC"
262+ "GhcMake"
263+ "GhcPlugins"
264+ "GhcPrelude"
265+ "DynamicLoading"
266+ "HeaderInfo"
267+ "HscMain"
268+ "HscStats"
269+ "HscTypes"
270+ "InteractiveEval"
271+ "InteractiveEvalTypes"
272+ "PackageConfig"
273+ "Packages"
274+ "PlatformConstants"
275+ "Plugins"
276+ "TcPluginM"
277+ "PprTyThing"
278+ "Settings"
279+ "StaticPtrTable"
280+ "SysTools"
281+ "SysTools/BaseDir"
282+ "SysTools/Terminal"
283+ "SysTools/ExtraObj"
284+ "SysTools/Info"
285+ "SysTools/Process"
286+ "SysTools/Tasks"
287+ "SysTools/Settings"
288+ "Elf"
289+ "TidyPgm"
290+ "Ctype"
291+ "HaddockUtils"
292+ "Lexer"
293+ "OptCoercion"
294+ "Parser"
295+ "RdrHsSyn"
296+ "ApiAnnotation"
297+ "ForeignCall"
298+ "KnownUniques"
299+ "PrelInfo"
300+ "PrelNames"
301+ "PrelRules"
302+ "PrimOp"
303+ "ToolSettings"
304+ "TysPrim"
305+ "TysWiredIn"
306+ "CostCentre"
307+ "CostCentreState"
308+ "ProfInit"
309+ "RnBinds"
310+ "RnEnv"
311+ "RnExpr"
312+ "RnHsDoc"
313+ "RnNames"
314+ "RnPat"
315+ "RnSource"
316+ "RnSplice"
317+ "RnTypes"
318+ "RnFixity"
319+ "RnUtils"
320+ "RnUnbound"
321+ "CoreMonad"
322+ "CSE"
323+ "FloatIn"
324+ "FloatOut"
325+ "LiberateCase"
326+ "OccurAnal"
327+ "SAT"
328+ "SetLevels"
329+ "SimplCore"
330+ "SimplEnv"
331+ "SimplMonad"
332+ "SimplUtils"
333+ "Simplify"
334+ "SimplStg"
335+ "StgStats"
336+ "StgCse"
337+ "StgLiftLams"
338+ "StgLiftLams/Analysis"
339+ "StgLiftLams/LiftM"
340+ "StgLiftLams/Transformation"
341+ "StgSubst"
342+ "UnariseStg"
343+ "RepType"
344+ "Rules"
345+ "SpecConstr"
346+ "Specialise"
347+ "CoreToStg"
348+ "StgLint"
349+ "StgSyn"
350+ "StgFVs"
351+ "CallArity"
352+ "DmdAnal"
353+ "Exitify"
354+ "WorkWrap"
355+ "WwLib"
356+ "FamInst"
357+ "ClsInst"
358+ "Inst"
359+ "TcAnnotations"
360+ "TcArrows"
361+ "TcBinds"
362+ "TcSigs"
363+ "TcClassDcl"
364+ "TcDefaults"
365+ "TcDeriv"
366+ "TcDerivInfer"
367+ "TcDerivUtils"
368+ "TcEnv"
369+ "TcExpr"
370+ "TcForeign"
371+ "TcGenDeriv"
372+ "TcGenFunctor"
373+ "TcGenGenerics"
374+ "TcHsSyn"
375+ "TcHsType"
376+ "TcInstDcls"
377+ "TcMType"
378+ "TcValidity"
379+ "TcMatches"
380+ "TcPat"
381+ "TcPatSyn"
382+ "TcRnDriver"
383+ "TcBackpack"
384+ "TcRnExports"
385+ "TcRnMonad"
386+ "TcRnTypes"
387+ "Constraint"
388+ "TcOrigin"
389+ "TcRules"
390+ "TcSimplify"
391+ "TcHoleErrors"
392+ "TcHoleFitTypes"
393+ "TcErrors"
394+ "TcTyClsDecls"
395+ "TcTyDecls"
396+ "TcTypeable"
397+ "TcType"
398+ "TcEvidence"
399+ "TcEvTerm"
400+ "TcUnify"
401+ "TcInteract"
402+ "TcCanonical"
403+ "TcFlatten"
404+ "TcSMonad"
405+ "TcTypeNats"
406+ "TcSplice"
407+ "Class"
408+ "Coercion"
409+ "DsMeta"
410+ "THNames"
411+ "FamInstEnv"
412+ "FunDeps"
413+ "InstEnv"
414+ "TyCon"
415+ "CoAxiom"
416+ "Type"
417+ "TyCoRep"
418+ "TyCoFVs"
419+ "TyCoSubst"
420+ "TyCoPpr"
421+ "TyCoTidy"
422+ "Unify"
423+ "Bag"
424+ "Binary"
425+ "BooleanFormula"
426+ "BufWrite"
427+ "Digraph"
428+ "Encoding"
429+ "FastFunctions"
430+ "FastMutInt"
431+ "FastString"
432+ "FastStringEnv"
433+ "Fingerprint"
434+ "FiniteMap"
435+ "FV"
436+ "GraphBase"
437+ "GraphColor"
438+ "GraphOps"
439+ "GraphPpr"
440+ "IOEnv"
441+ "Json"
442+ "ListSetOps"
443+ "Maybes"
444+ "MonadUtils"
445+ "OrdList"
446+ "Outputable"
447+ "Pair"
448+ "Panic"
449+ "PlainPanic"
450+ "PprColour"
451+ "Pretty"
452+ "State"
453+ "Stream"
454+ "StringBuffer"
455+ "UniqDFM"
456+ "UniqDSet"
457+ "UniqFM"
458+ "UniqMap"
459+ "UniqSet"
460+ "Util"
461+ "Hoopl/Block"
462+ "Hoopl/Collections"
463+ "Hoopl/Dataflow"
464+ "Hoopl/Graph"
465+ "Hoopl/Label"
466+ "AsmCodeGen"
467+ "TargetReg"
468+ "NCGMonad"
469+ "Instruction"
470+ "BlockLayout"
471+ "CFG"
472+ "Dominators"
473+ "Format"
474+ "Reg"
475+ "RegClass"
476+ "PIC"
477+ "CPrim"
478+ "X86/Regs"
479+ "X86/RegInfo"
480+ "X86/Instr"
481+ "X86/Cond"
482+ "X86/Ppr"
483+ "X86/CodeGen"
484+ "PPC/Regs"
485+ "PPC/RegInfo"
486+ "PPC/Instr"
487+ "PPC/Cond"
488+ "PPC/Ppr"
489+ "PPC/CodeGen"
490+ "SPARC/Base"
491+ "SPARC/Regs"
492+ "SPARC/Imm"
493+ "SPARC/AddrMode"
494+ "SPARC/Cond"
495+ "SPARC/Instr"
496+ "SPARC/Stack"
497+ "SPARC/ShortcutJump"
498+ "SPARC/Ppr"
499+ "SPARC/CodeGen"
500+ "SPARC/CodeGen/Amode"
501+ "SPARC/CodeGen/Base"
502+ "SPARC/CodeGen/CondCode"
503+ "SPARC/CodeGen/Gen32"
504+ "SPARC/CodeGen/Gen64"
505+ "SPARC/CodeGen/Sanity"
506+ "SPARC/CodeGen/Expand"
507+ "RegAlloc/Liveness"
508+ "RegAlloc/Graph/Main"
509+ "RegAlloc/Graph/Stats"
510+ "RegAlloc/Graph/ArchBase"
511+ "RegAlloc/Graph/ArchX86"
512+ "RegAlloc/Graph/Coalesce"
513+ "RegAlloc/Graph/Spill"
514+ "RegAlloc/Graph/SpillClean"
515+ "RegAlloc/Graph/SpillCost"
516+ "RegAlloc/Graph/TrivColorable"
517+ "RegAlloc/Linear/Main"
518+ "RegAlloc/Linear/JoinToTargets"
519+ "RegAlloc/Linear/State"
520+ "RegAlloc/Linear/Stats"
521+ "RegAlloc/Linear/FreeRegs"
522+ "RegAlloc/Linear/StackMap"
523+ "RegAlloc/Linear/Base"
524+ "RegAlloc/Linear/X86/FreeRegs"
525+ "RegAlloc/Linear/X86_64/FreeRegs"
526+ "RegAlloc/Linear/PPC/FreeRegs"
527+ "RegAlloc/Linear/SPARC/FreeRegs"
528+ "Dwarf"
529+ "Dwarf/Types"
530+ "Dwarf/Constants"
531+ "GHC/ThToHs"
532+ "ByteCodeTypes"
533+ "ByteCodeAsm"
534+ "ByteCodeGen"
535+ "ByteCodeInstr"
536+ "ByteCodeItbls"
537+ "ByteCodeLink"
538+ "Debugger"
539+ "LinkerTypes"
540+ "Linker"
541+ "RtClosureInspect"
542+ "GHCi"
543+ ];
544+ cSources = [
545+ "parser/cutils.c"
546+ "ghci/keepCAFsForGHCi.c"
547+ "cbits/genSym.c"
548+ ];
549+ hsSourceDirs = [
550+ "."
551+ "backpack"
552+ "basicTypes"
553+ "cmm"
554+ "coreSyn"
555+ "deSugar"
556+ "ghci"
557+ "iface"
558+ "llvmGen"
559+ "main"
560+ "nativeGen"
561+ "parser"
562+ "prelude"
563+ "profiling"
564+ "rename"
565+ "simplCore"
566+ "simplStg"
567+ "specialise"
568+ "stgSyn"
569+ "stranal"
570+ "typecheck"
571+ "types"
572+ "utils"
573+ "hieFile"
574+ ];
575+ includeDirs = ([
576+ "."
577+ "parser"
578+ "utils"
579+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build") ++ (if flags.stage1
580+ then [ "stage1" ]
581+ else if flags.stage2
582+ then [ "stage2" ]
583+ else (pkgs.lib).optional (flags.stage3) "stage2");
584+ };
585+ };
586+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/ghci.nixnew file+70
@@ -0,0 +1,70 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = { ghci = false; };
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "ghci"; version = "8.10.2.20201118"; };
15+ license = "BSD-3-Clause";
16+ copyright = "";
17+ maintainer = "ghc-devs@haskell.org";
18+ author = "";
19+ homepage = "";
20+ url = "";
21+ synopsis = "The library supporting GHC's interactive interpreter";
22+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [ "changelog.md" ];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = [
36+ (hsPkgs."array" or (errorHandler.buildDepError "array"))
37+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
38+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
39+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
40+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
41+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
42+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
43+ (hsPkgs."ghc-boot" or (errorHandler.buildDepError "ghc-boot"))
44+ (hsPkgs."ghc-boot-th" or (errorHandler.buildDepError "ghc-boot-th"))
45+ (hsPkgs."ghc-heap" or (errorHandler.buildDepError "ghc-heap"))
46+ (hsPkgs."template-haskell" or (errorHandler.buildDepError "template-haskell"))
47+ (hsPkgs."transformers" or (errorHandler.buildDepError "transformers"))
48+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (errorHandler.buildDepError "unix"));
49+ buildable = true;
50+ modules = [
51+ "GHCi/BreakArray"
52+ "GHCi/BinaryArray"
53+ "GHCi/Message"
54+ "GHCi/ResolvedBCO"
55+ "GHCi/RemoteTypes"
56+ "GHCi/FFI"
57+ "GHCi/InfoTable"
58+ "GHCi/StaticPtrTable"
59+ "GHCi/TH/Binary"
60+ "SizedSeq"
61+ ] ++ (pkgs.lib).optionals (flags.ghci) [
62+ "GHCi/Run"
63+ "GHCi/CreateBCO"
64+ "GHCi/ObjLink"
65+ "GHCi/Signals"
66+ "GHCi/TH"
67+ ];
68+ };
69+ };
70+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/hpc.nixnew file+52
@@ -0,0 +1,52 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "hpc"; version = "0.6.1.0"; };
15+ license = "BSD-3-Clause";
16+ copyright = "";
17+ maintainer = "ghc-devs@haskell.org";
18+ author = "Andy Gill";
19+ homepage = "";
20+ url = "";
21+ synopsis = "Code Coverage Library for Haskell";
22+ description = "This package provides the code coverage library for Haskell.\n\nSee <http://www.haskell.org/haskellwiki/Haskell_program_coverage> for more\ninformation.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [ "changelog.md" ];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = [
36+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
37+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
38+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
39+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
40+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
41+ (hsPkgs."time" or (errorHandler.buildDepError "time"))
42+ ];
43+ buildable = true;
44+ modules = [
45+ "Trace/Hpc/Util"
46+ "Trace/Hpc/Mix"
47+ "Trace/Hpc/Tix"
48+ "Trace/Hpc/Reflect"
49+ ];
50+ };
51+ };
52+ } // rec { src = (pkgs.lib).mkDefault ../libraries/hpc; }
materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/iserv-proxy.nixnew file+55
@@ -0,0 +1,55 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "iserv-proxy"; version = "8.10.2.20201118"; };
15+ license = "BSD-3-Clause";
16+ copyright = "XXX";
17+ maintainer = "XXX";
18+ author = "XXX";
19+ homepage = "";
20+ url = "";
21+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
22+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ exes = {
35+ "iserv-proxy" = {
36+ depends = [
37+ (hsPkgs."array" or (errorHandler.buildDepError "array"))
38+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
39+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
40+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
41+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
42+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
43+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
44+ (hsPkgs."network" or (errorHandler.buildDepError "network"))
45+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
46+ (hsPkgs."ghci" or (errorHandler.buildDepError "ghci"))
47+ (hsPkgs."libiserv" or (errorHandler.buildDepError "libiserv"))
48+ ];
49+ buildable = true;
50+ hsSourceDirs = [ "src" ];
51+ mainPath = [ "Main.hs" ];
52+ };
53+ };
54+ };
55+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/iserv.nixnew file+54
@@ -0,0 +1,54 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "iserv"; version = "8.10.2.20201118"; };
15+ license = "BSD-3-Clause";
16+ copyright = "XXX";
17+ maintainer = "XXX";
18+ author = "XXX";
19+ homepage = "";
20+ url = "";
21+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
22+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ exes = {
35+ "iserv" = {
36+ depends = [
37+ (hsPkgs."array" or (errorHandler.buildDepError "array"))
38+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
39+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
40+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
41+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
42+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
43+ (hsPkgs."ghci" or (errorHandler.buildDepError "ghci"))
44+ (hsPkgs."libiserv" or (errorHandler.buildDepError "libiserv"))
45+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (errorHandler.buildDepError "unix"));
46+ buildable = true;
47+ cSources = [ "cbits/iservmain.c" ];
48+ hsSourceDirs = [ "src" ];
49+ includeDirs = [ "." ];
50+ mainPath = [ "Main.hs" ] ++ [ "" ];
51+ };
52+ };
53+ };
54+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/libiserv.nixnew file+58
@@ -0,0 +1,58 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = { network = false; };
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "libiserv"; version = "8.10.2.20201118"; };
15+ license = "BSD-3-Clause";
16+ copyright = "XXX";
17+ maintainer = "XXX";
18+ author = "XXX";
19+ homepage = "";
20+ url = "";
21+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
22+ description = "";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [ "LICENSE" ];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ "library" = {
35+ depends = ([
36+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
37+ (hsPkgs."binary" or (errorHandler.buildDepError "binary"))
38+ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring"))
39+ (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
40+ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq"))
41+ (hsPkgs."ghci" or (errorHandler.buildDepError "ghci"))
42+ ] ++ (pkgs.lib).optionals (flags.network) [
43+ (hsPkgs."network" or (errorHandler.buildDepError "network"))
44+ (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
45+ (hsPkgs."filepath" or (errorHandler.buildDepError "filepath"))
46+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (errorHandler.buildDepError "unix"));
47+ buildable = true;
48+ modules = [
49+ "Lib"
50+ "GHCi/Utils"
51+ ] ++ (pkgs.lib).optionals (flags.network) [
52+ "Remote/Message"
53+ "Remote/Slave"
54+ ];
55+ hsSourceDirs = [ "src" ];
56+ };
57+ };
58+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/windows/ghc810220201118/.plan.nix/remote-iserv.nixnew file+46
@@ -0,0 +1,46 @@
1+{ system
2+ , compiler
3+ , flags
4+ , pkgs
5+ , hsPkgs
6+ , pkgconfPkgs
7+ , errorHandler
8+ , config
9+ , ... }:
10+ {
11+ flags = {};
12+ package = {
13+ specVersion = "1.10";
14+ identifier = { name = "remote-iserv"; version = "8.10.2.20201118"; };
15+ license = "BSD-3-Clause";
16+ copyright = "XXX";
17+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
18+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
19+ homepage = "";
20+ url = "";
21+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
22+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
23+ buildType = "Simple";
24+ isLocal = true;
25+ detailLevel = "FullDetails";
26+ licenseFiles = [];
27+ dataDir = "";
28+ dataFiles = [];
29+ extraSrcFiles = [];
30+ extraTmpFiles = [];
31+ extraDocFiles = [];
32+ };
33+ components = {
34+ exes = {
35+ "remote-iserv" = {
36+ depends = [
37+ (hsPkgs."base" or (errorHandler.buildDepError "base"))
38+ (hsPkgs."libiserv" or (errorHandler.buildDepError "libiserv"))
39+ ];
40+ buildable = true;
41+ hsSourceDirs = [ "src" ];
42+ mainPath = [ "Cli.hs" ];
43+ };
44+ };
45+ };
46+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/windows/ghc810220201118/default.nixnew file+88
@@ -0,0 +1,88 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.6.1").revisions).default;
7+ "ghc-heap".revision = (((hackage."ghc-heap")."8.10.2.20201118").revisions).default;
8+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
9+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
10+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
11+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
12+ "template-haskell".revision = (((hackage."template-haskell")."2.16.0.0").revisions).default;
13+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
14+ "base".revision = (((hackage."base")."4.14.1.0").revisions).default;
15+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
16+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
17+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
18+ "process".revision = (((hackage."process")."1.6.9.0").revisions).default;
19+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
20+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.10.2.20201118").revisions).default;
21+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
22+ "Win32".revision = (((hackage."Win32")."2.6.2.0").revisions).default;
23+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.3.0").revisions).default;
24+ };
25+ compiler = {
26+ version = "8.10.2.20201118";
27+ nix-name = "ghc810220201118";
28+ packages = {
29+ "ghc-prim" = "0.6.1";
30+ "ghc-heap" = "8.10.2.20201118";
31+ "rts" = "1.0";
32+ "deepseq" = "1.4.4.0";
33+ "template-haskell" = "2.16.0.0";
34+ "containers" = "0.6.2.1";
35+ "base" = "4.14.1.0";
36+ "transformers" = "0.5.6.2";
37+ "filepath" = "1.4.2.1";
38+ "pretty" = "1.1.3.6";
39+ "ghc-boot-th" = "8.10.2.20201118";
40+ "array" = "0.5.4.0";
41+ "integer-gmp" = "1.0.3.0";
42+ };
43+ };
44+ };
45+ extras = hackage:
46+ {
47+ packages = {
48+ ghc = ./.plan.nix/ghc.nix;
49+ bytestring = ./.plan.nix/bytestring.nix;
50+ remote-iserv = ./.plan.nix/remote-iserv.nix;
51+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
52+ hpc = ./.plan.nix/hpc.nix;
53+ libiserv = ./.plan.nix/libiserv.nix;
54+ ghc-boot = ./.plan.nix/ghc-boot.nix;
55+ ghci = ./.plan.nix/ghci.nix;
56+ iserv = ./.plan.nix/iserv.nix;
57+ };
58+ };
59+ modules = [
60+ ({ lib, ... }:
61+ {
62+ packages = {
63+ "ghc" = {
64+ flags = {
65+ "stage1" = lib.mkOverride 900 false;
66+ "stage2" = lib.mkOverride 900 false;
67+ "integer-gmp" = lib.mkOverride 900 false;
68+ "stage3" = lib.mkOverride 900 false;
69+ "dynamic-system-linker" = lib.mkOverride 900 true;
70+ "ghci" = lib.mkOverride 900 true;
71+ "integer-simple" = lib.mkOverride 900 false;
72+ "terminfo" = lib.mkOverride 900 true;
73+ };
74+ };
75+ "bytestring" = {
76+ flags = { "integer-simple" = lib.mkOverride 900 false; };
77+ };
78+ "remote-iserv" = { flags = {}; };
79+ "iserv-proxy" = { flags = {}; };
80+ "hpc" = { flags = {}; };
81+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
82+ "ghc-boot" = { flags = {}; };
83+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
84+ "iserv" = { flags = {}; };
85+ };
86+ })
87+ ];
88+ }
mkdocs.yml+1
@@ -17,6 +17,7 @@ permalink: true
1717markdown_extensions:
1818 - admonition
1919 - footnotes
20+ - tables
2021 - toc:
2122 permalink: true
2223
nix/sources.json+5−4
@@ -79,16 +79,16 @@
7979 "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
8080 },
8181 "nixpkgs": {
82− "branch": "nixpkgs-20.03-darwin",
82+ "branch": "nixpkgs-20.09-darwin",
8383 "builtin": false,
8484 "description": "Nix Packages collection",
8585 "homepage": null,
8686 "owner": "NixOS",
8787 "repo": "nixpkgs",
88− "rev": "7f73e46625f508a793700f5110b86f1a53341d6e",
89− "sha256": "1gijn6vm6hwy7sxdjd27qq0hjqpkq04npwbxybd9694x7h806823",
88+ "rev": "f02bf8ffb9a5ec5e8f6f66f1e5544fd2aa1a0693",
89+ "sha256": "156f48manydh8sbrs8j97mzvwdz2zaw51xlm0grrrnns5wa5aaln",
9090 "type": "tarball",
91− "url": "https://github.com/NixOS/nixpkgs/archive/7f73e46625f508a793700f5110b86f1a53341d6e.tar.gz",
91+ "url": "https://github.com/NixOS/nixpkgs/archive/f02bf8ffb9a5ec5e8f6f66f1e5544fd2aa1a0693.tar.gz",
9292 "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
9393 },
9494 "nixpkgs-2003": {
@@ -106,6 +106,7 @@
106106 },
107107 "nixpkgs-2009": {
108108 "branch": "nixpkgs-20.09-darwin",
109+ "builtin": false,
109110 "description": "Nix Packages collection",
110111 "homepage": null,
111112 "owner": "NixOS",
overlays/emscripten.nix+18−11
@@ -1,20 +1,27 @@
1−final: prev: with final; {
1+final: prev: {
2+ # GHCJS currently requires an old version of emscripten. Overriding to build the older version doesn't
3+ # work straightforwardly on 20.09 anymore, so we use an ugly hack and pull emscripten from 20.03.
4+ # In future, we'll just fix GHCJS to work with the newer emscripten.
5+ inherit (import final.haskell-nix.sources.nixpkgs-2003 {
6+ system = final.stdenv.system;
7+ overlays = [(final: prev: with final; {
8+ binaryen = callPackage ./emscripten/binaryen.nix {};
29
3− binaryen = callPackage ./emscripten/binaryen.nix {};
10+ emscriptenVersion = "1.39.1";
411
5− emscriptenVersion = "1.39.1";
12+ emscripten = callPackage ./emscripten { };
613
7− emscripten = callPackage ./emscripten { };
14+ emscriptenfastcompPackages = dontRecurseIntoAttrs (callPackage ./emscripten/fastcomp { });
815
9− emscriptenfastcompPackages = dontRecurseIntoAttrs (callPackage ./emscripten/fastcomp { });
16+ emscriptenfastcomp = emscriptenfastcompPackages.emscriptenfastcomp;
1017
11− emscriptenfastcomp = emscriptenfastcompPackages.emscriptenfastcomp;
18+ emscriptenupstreamPackages = dontRecurseIntoAttrs (callPackage ./emscripten/upstream { });
1219
13− emscriptenupstreamPackages = dontRecurseIntoAttrs (callPackage ./emscripten/upstream { });
20+ emscriptenupstream = emscriptenupstreamPackages.emscriptenupstream;
1421
15− emscriptenupstream = emscriptenupstreamPackages.emscriptenupstream;
22+ # emscriptenPackages = recurseIntoAttrs (callPackage ./emscripten-packages.nix { });
1623
17− # emscriptenPackages = recurseIntoAttrs (callPackage ./emscripten-packages.nix { });
18−
19− emscriptenStdenv = stdenv // { mkDerivation = buildEmscriptenPackage; };
24+ emscriptenStdenv = stdenv // { mkDerivation = buildEmscriptenPackage; };
25+ })];
26+ }) emscripten emscriptenupstream;
2027}
release.nix+2−2
@@ -16,9 +16,9 @@ in allJobs // {
1616 required = genericPkgs.releaseTools.aggregate {
1717 name = "haskell.nix-required";
1818 meta.description = "All jobs required to pass CI";
19− # Hercules will require all of these, we just require the 20.03 jobs
19+ # Hercules will require all of these, we just require the 20.09 jobs
2020 # to avoid stressing Hydra too much
21− constituents = lib.collect lib.isDerivation allJobs.R2003.ghc865.linux.native;
21+ constituents = lib.collect lib.isDerivation allJobs.R2009.ghc865.linux.native;
2222 };
2323 }
2424