1 { buildPackages, pkgsBuildTarget, pkgs, newScope, stdenv }:
4 # These are attributes in compiler that support integer-simple.
5 integerSimpleIncludes = [
12 nativeBignumIncludes = [
37 haskellLibUncomposable = import ../development/haskell-modules/lib {
42 callPackage = newScope {
43 haskellLib = haskellLibUncomposable.compose;
44 overrides = pkgs.haskell.packageOverrides;
47 bootstrapPackageSet = self: super: {
48 mkDerivation = drv: super.mkDerivation (drv // {
51 enableExecutableProfiling = false;
52 enableLibraryProfiling = false;
53 enableSharedExecutables = false;
54 enableSharedLibraries = false;
58 # Use this rather than `rec { ... }` below for sake of overlays.
59 inherit (pkgs.haskell) compiler packages;
62 lib = haskellLibUncomposable;
64 package-list = callPackage ../development/haskell-modules/package-list.nix {};
67 ghc865Binary = callPackage ../development/compilers/ghc/8.6.5-binary.nix {
68 llvmPackages = pkgs.llvmPackages_6;
71 ghc8102Binary = callPackage ../development/compilers/ghc/8.10.2-binary.nix {
72 llvmPackages = pkgs.llvmPackages_9;
75 ghc8107Binary = callPackage ../development/compilers/ghc/8.10.7-binary.nix {
76 llvmPackages = pkgs.llvmPackages_12;
79 ghc924Binary = callPackage ../development/compilers/ghc/9.2.4-binary.nix {
80 llvmPackages = pkgs.llvmPackages_12;
83 ghc884 = callPackage ../development/compilers/ghc/8.8.4.nix {
85 # aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
86 # 8.10.2 is needed as using 8.10.7 is broken due to RTS-incompatibilities
87 # Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
88 if stdenv.hostPlatform.isAarch64 || stdenv.hostPlatform.isMusl then
89 packages.ghc8102Binary
91 packages.ghc865Binary;
92 inherit (buildPackages.python3Packages) sphinx;
93 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_7;
94 llvmPackages = pkgs.llvmPackages_7;
96 ghc88 = compiler.ghc884;
97 ghc8107 = callPackage ../development/compilers/ghc/8.10.7.nix {
99 # the oldest ghc with aarch64-darwin support is 8.10.5
100 if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
101 # to my (@a-m-joseph) knowledge there are no newer official binaries for this platform
102 packages.ghc865Binary
104 packages.ghc8107Binary;
105 inherit (buildPackages.python3Packages) sphinx;
106 # Need to use apple's patched xattr until
107 # https://github.com/xattr/xattr/issues/44 and
108 # https://github.com/xattr/xattr/issues/55 are solved.
109 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
110 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
111 llvmPackages = pkgs.llvmPackages_12;
113 ghc810 = compiler.ghc8107;
114 ghc902 = callPackage ../development/compilers/ghc/9.0.2.nix {
116 # the oldest ghc with aarch64-darwin support is 8.10.5
117 if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
120 packages.ghc8107Binary;
121 inherit (buildPackages.python3Packages) sphinx;
122 inherit (buildPackages.darwin) autoSignDarwinBinariesHook xattr;
123 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
124 llvmPackages = pkgs.llvmPackages_12;
126 ghc90 = compiler.ghc902;
127 ghc924 = callPackage ../development/compilers/ghc/9.2.4.nix {
129 if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
132 packages.ghc8107Binary;
133 inherit (buildPackages.python3Packages) sphinx;
134 # Need to use apple's patched xattr until
135 # https://github.com/xattr/xattr/issues/44 and
136 # https://github.com/xattr/xattr/issues/55 are solved.
137 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
138 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
139 llvmPackages = pkgs.llvmPackages_12;
141 ghc925 = callPackage ../development/compilers/ghc/9.2.5.nix {
143 if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
146 packages.ghc8107Binary;
147 inherit (buildPackages.python3Packages) sphinx;
148 # Need to use apple's patched xattr until
149 # https://github.com/xattr/xattr/issues/44 and
150 # https://github.com/xattr/xattr/issues/55 are solved.
151 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
152 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
153 llvmPackages = pkgs.llvmPackages_12;
155 ghc926 = callPackage ../development/compilers/ghc/9.2.6.nix {
157 if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
160 packages.ghc8107Binary;
161 inherit (buildPackages.python3Packages) sphinx;
162 # Need to use apple's patched xattr until
163 # https://github.com/xattr/xattr/issues/44 and
164 # https://github.com/xattr/xattr/issues/55 are solved.
165 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
166 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
167 llvmPackages = pkgs.llvmPackages_12;
169 ghc927 = callPackage ../development/compilers/ghc/9.2.7.nix {
171 if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
174 packages.ghc8107Binary;
175 inherit (buildPackages.python3Packages) sphinx;
176 # Need to use apple's patched xattr until
177 # https://github.com/xattr/xattr/issues/44 and
178 # https://github.com/xattr/xattr/issues/55 are solved.
179 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
180 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
181 llvmPackages = pkgs.llvmPackages_12;
183 ghc928 = callPackage ../development/compilers/ghc/9.2.8.nix {
185 if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
188 packages.ghc8107Binary;
189 inherit (buildPackages.python3Packages) sphinx;
190 # Need to use apple's patched xattr until
191 # https://github.com/xattr/xattr/issues/44 and
192 # https://github.com/xattr/xattr/issues/55 are solved.
193 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
194 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
195 llvmPackages = pkgs.llvmPackages_12;
197 ghc92 = compiler.ghc928;
198 ghc942 = callPackage ../development/compilers/ghc/9.4.2.nix {
200 # Building with 9.2 is broken due to
201 # https://gitlab.haskell.org/ghc/ghc/-/issues/21914
202 # Use 8.10 as a workaround where possible to keep bootstrap path short.
204 # On ARM text won't build with GHC 8.10.*
205 if stdenv.hostPlatform.isAarch then
206 # TODO(@sternenseemann): package bindist
208 # No suitable bindists for powerpc64le
209 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
212 packages.ghc8107Binary;
213 inherit (buildPackages.python3Packages) sphinx;
214 # Need to use apple's patched xattr until
215 # https://github.com/xattr/xattr/issues/44 and
216 # https://github.com/xattr/xattr/issues/55 are solved.
217 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
218 # Support range >= 10 && < 14
219 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
220 llvmPackages = pkgs.llvmPackages_12;
222 ghc943 = callPackage ../development/compilers/ghc/9.4.3.nix {
224 # Building with 9.2 is broken due to
225 # https://gitlab.haskell.org/ghc/ghc/-/issues/21914
226 # Use 8.10 as a workaround where possible to keep bootstrap path short.
228 # On ARM text won't build with GHC 8.10.*
229 if stdenv.hostPlatform.isAarch then
230 # TODO(@sternenseemann): package bindist
232 # No suitable bindists for powerpc64le
233 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
236 packages.ghc8107Binary;
237 inherit (buildPackages.python3Packages) sphinx;
238 # Need to use apple's patched xattr until
239 # https://github.com/xattr/xattr/issues/44 and
240 # https://github.com/xattr/xattr/issues/55 are solved.
241 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
242 # Support range >= 10 && < 14
243 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
244 llvmPackages = pkgs.llvmPackages_12;
246 ghc944 = callPackage ../development/compilers/ghc/9.4.4.nix {
248 # Building with 9.2 is broken due to
249 # https://gitlab.haskell.org/ghc/ghc/-/issues/21914
250 # Use 8.10 as a workaround where possible to keep bootstrap path short.
252 # On ARM text won't build with GHC 8.10.*
253 if stdenv.hostPlatform.isAarch then
254 # TODO(@sternenseemann): package bindist
256 # No suitable bindists for powerpc64le
257 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
260 packages.ghc8107Binary;
261 inherit (buildPackages.python3Packages) sphinx;
262 # Need to use apple's patched xattr until
263 # https://github.com/xattr/xattr/issues/44 and
264 # https://github.com/xattr/xattr/issues/55 are solved.
265 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
266 # Support range >= 10 && < 14
267 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
268 llvmPackages = pkgs.llvmPackages_12;
270 ghc945 = callPackage ../development/compilers/ghc/9.4.5.nix {
272 # Building with 9.2 is broken due to
273 # https://gitlab.haskell.org/ghc/ghc/-/issues/21914
274 # Use 8.10 as a workaround where possible to keep bootstrap path short.
276 # On ARM text won't build with GHC 8.10.*
277 if stdenv.hostPlatform.isAarch then
278 # TODO(@sternenseemann): package bindist
280 # No suitable bindists for powerpc64le
281 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
284 packages.ghc8107Binary;
285 inherit (buildPackages.python3Packages) sphinx;
286 # Need to use apple's patched xattr until
287 # https://github.com/xattr/xattr/issues/44 and
288 # https://github.com/xattr/xattr/issues/55 are solved.
289 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
290 # Support range >= 10 && < 14
291 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
292 llvmPackages = pkgs.llvmPackages_12;
294 ghc946 = callPackage ../development/compilers/ghc/9.4.6.nix {
296 # Building with 9.2 is broken due to
297 # https://gitlab.haskell.org/ghc/ghc/-/issues/21914
298 # Use 8.10 as a workaround where possible to keep bootstrap path short.
300 # On ARM text won't build with GHC 8.10.*
301 if stdenv.hostPlatform.isAarch then
302 # TODO(@sternenseemann): package bindist
304 # No suitable bindists for powerpc64le
305 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
308 packages.ghc8107Binary;
309 inherit (buildPackages.python3Packages) sphinx;
310 # Need to use apple's patched xattr until
311 # https://github.com/xattr/xattr/issues/44 and
312 # https://github.com/xattr/xattr/issues/55 are solved.
313 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
314 # Support range >= 10 && < 14
315 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
316 llvmPackages = pkgs.llvmPackages_12;
318 ghc947 = callPackage ../development/compilers/ghc/9.4.7.nix {
320 # Building with 9.2 is broken due to
321 # https://gitlab.haskell.org/ghc/ghc/-/issues/21914
322 # Use 8.10 as a workaround where possible to keep bootstrap path short.
324 # On ARM text won't build with GHC 8.10.*
325 if stdenv.hostPlatform.isAarch then
326 # TODO(@sternenseemann): package bindist
328 # No suitable bindists for powerpc64le
329 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
332 packages.ghc8107Binary;
333 inherit (buildPackages.python3Packages) sphinx;
334 # Need to use apple's patched xattr until
335 # https://github.com/xattr/xattr/issues/44 and
336 # https://github.com/xattr/xattr/issues/55 are solved.
337 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
338 # Support range >= 10 && < 14
339 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
340 llvmPackages = pkgs.llvmPackages_12;
342 ghc948 = callPackage ../development/compilers/ghc/9.4.8.nix {
344 # Building with 9.2 is broken due to
345 # https://gitlab.haskell.org/ghc/ghc/-/issues/21914
346 # Use 8.10 as a workaround where possible to keep bootstrap path short.
348 # On ARM text won't build with GHC 8.10.*
349 if stdenv.hostPlatform.isAarch then
350 # TODO(@sternenseemann): package bindist
352 # No suitable bindists for powerpc64le
353 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
356 packages.ghc8107Binary;
357 inherit (buildPackages.python3Packages) sphinx;
358 # Need to use apple's patched xattr until
359 # https://github.com/xattr/xattr/issues/44 and
360 # https://github.com/xattr/xattr/issues/55 are solved.
361 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
362 # Support range >= 10 && < 14
363 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
364 llvmPackages = pkgs.llvmPackages_12;
366 ghc94 = compiler.ghc948;
367 ghc962 = callPackage ../development/compilers/ghc/9.6.2.nix {
369 # For GHC 9.2 no armv7l bindists are available.
370 if stdenv.hostPlatform.isAarch32 then
372 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
375 packages.ghc924Binary;
376 inherit (buildPackages.python3Packages) sphinx;
377 # Need to use apple's patched xattr until
378 # https://github.com/xattr/xattr/issues/44 and
379 # https://github.com/xattr/xattr/issues/55 are solved.
380 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
381 # Support range >= 11 && < 16
382 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_15;
383 llvmPackages = pkgs.llvmPackages_15;
385 ghc963 = callPackage ../development/compilers/ghc/9.6.3.nix {
387 # For GHC 9.2 no armv7l bindists are available.
388 if stdenv.hostPlatform.isAarch32 then
390 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
393 packages.ghc924Binary;
394 inherit (buildPackages.python3Packages) sphinx;
395 # Need to use apple's patched xattr until
396 # https://github.com/xattr/xattr/issues/44 and
397 # https://github.com/xattr/xattr/issues/55 are solved.
398 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
399 # Support range >= 11 && < 16
400 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_15;
401 llvmPackages = pkgs.llvmPackages_15;
403 ghc96 = compiler.ghc963;
404 ghc981 = callPackage ../development/compilers/ghc/9.8.1.nix {
405 # No bindist packaged for 9.4.* yet
406 bootPkgs = packages.ghc947;
407 inherit (buildPackages.python3Packages) sphinx;
408 # Need to use apple's patched xattr until
409 # https://github.com/xattr/xattr/issues/44 and
410 # https://github.com/xattr/xattr/issues/55 are solved.
411 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
412 # Support range >= 11 && < 16
413 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_15;
414 llvmPackages = pkgs.llvmPackages_15;
416 ghc98 = compiler.ghc981;
417 ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
418 bootPkgs = packages.ghc963;
419 inherit (buildPackages.python3Packages) sphinx;
420 # Need to use apple's patched xattr until
421 # https://github.com/xattr/xattr/issues/44 and
422 # https://github.com/xattr/xattr/issues/55 are solved.
423 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
424 # 2023-01-15: Support range >= 11 && < 16
425 buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_15;
426 llvmPackages = pkgs.llvmPackages_15;
429 ghcjs = compiler.ghcjs810;
430 ghcjs810 = callPackage ../development/compilers/ghcjs/8.10 {
431 bootPkgs = packages.ghc810;
432 ghcjsSrcJson = ../development/compilers/ghcjs/8.10/git.json;
433 stage0 = ../development/compilers/ghcjs/8.10/stage0.nix;
436 # The integer-simple attribute set contains all the GHC compilers
437 # build with integer-simple instead of integer-gmp.
439 integerSimpleGhcNames = pkgs.lib.filter
440 (name: builtins.elem name integerSimpleIncludes)
441 (pkgs.lib.attrNames compiler);
442 in pkgs.recurseIntoAttrs (pkgs.lib.genAttrs
443 integerSimpleGhcNames
444 (name: compiler.${name}.override { enableIntegerSimple = true; }));
446 # Starting from GHC 9, integer-{simple,gmp} is replaced by ghc-bignum
447 # with "native" and "gmp" backends.
449 nativeBignumGhcNames = pkgs.lib.filter
450 (name: builtins.elem name nativeBignumIncludes)
451 (pkgs.lib.attrNames compiler);
452 in pkgs.recurseIntoAttrs (pkgs.lib.genAttrs
454 (name: compiler.${name}.override { enableNativeBignum = true; }));
457 # Default overrides that are applied to all package sets.
458 packageOverrides = self : super : {};
460 # Always get compilers from `buildPackages`
461 packages = let bh = buildPackages.haskell; in {
463 ghc865Binary = callPackage ../development/haskell-modules {
464 buildHaskellPackages = bh.packages.ghc865Binary;
465 ghc = bh.compiler.ghc865Binary;
466 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.6.x.nix { };
467 packageSetConfig = bootstrapPackageSet;
469 ghc8102Binary = callPackage ../development/haskell-modules {
470 buildHaskellPackages = bh.packages.ghc8102Binary;
471 ghc = bh.compiler.ghc8102Binary;
472 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
473 packageSetConfig = bootstrapPackageSet;
475 ghc8107Binary = callPackage ../development/haskell-modules {
476 buildHaskellPackages = bh.packages.ghc8107Binary;
477 ghc = bh.compiler.ghc8107Binary;
478 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
479 packageSetConfig = bootstrapPackageSet;
481 ghc924Binary = callPackage ../development/haskell-modules {
482 buildHaskellPackages = bh.packages.ghc924Binary;
483 ghc = bh.compiler.ghc924Binary;
484 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
485 packageSetConfig = bootstrapPackageSet;
487 ghc884 = callPackage ../development/haskell-modules {
488 buildHaskellPackages = bh.packages.ghc884;
489 ghc = bh.compiler.ghc884;
490 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.8.x.nix { };
492 ghc88 = packages.ghc884;
493 ghc8107 = callPackage ../development/haskell-modules {
494 buildHaskellPackages = bh.packages.ghc8107;
495 ghc = bh.compiler.ghc8107;
496 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
498 ghc810 = packages.ghc8107;
499 ghc902 = callPackage ../development/haskell-modules {
500 buildHaskellPackages = bh.packages.ghc902;
501 ghc = bh.compiler.ghc902;
502 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.0.x.nix { };
504 ghc90 = packages.ghc902;
505 ghc924 = callPackage ../development/haskell-modules {
506 buildHaskellPackages = bh.packages.ghc924;
507 ghc = bh.compiler.ghc924;
508 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
510 ghc925 = callPackage ../development/haskell-modules {
511 buildHaskellPackages = bh.packages.ghc925;
512 ghc = bh.compiler.ghc925;
513 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
515 ghc926 = callPackage ../development/haskell-modules {
516 buildHaskellPackages = bh.packages.ghc926;
517 ghc = bh.compiler.ghc926;
518 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
520 ghc927 = callPackage ../development/haskell-modules {
521 buildHaskellPackages = bh.packages.ghc927;
522 ghc = bh.compiler.ghc927;
523 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
525 ghc928 = callPackage ../development/haskell-modules {
526 buildHaskellPackages = bh.packages.ghc928;
527 ghc = bh.compiler.ghc928;
528 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
530 ghc92 = packages.ghc928;
531 ghc942 = callPackage ../development/haskell-modules {
532 buildHaskellPackages = bh.packages.ghc942;
533 ghc = bh.compiler.ghc942;
534 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
536 ghc943 = callPackage ../development/haskell-modules {
537 buildHaskellPackages = bh.packages.ghc943;
538 ghc = bh.compiler.ghc943;
539 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
541 ghc944 = callPackage ../development/haskell-modules {
542 buildHaskellPackages = bh.packages.ghc944;
543 ghc = bh.compiler.ghc944;
544 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
546 ghc945 = callPackage ../development/haskell-modules {
547 buildHaskellPackages = bh.packages.ghc945;
548 ghc = bh.compiler.ghc945;
549 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
551 ghc946 = callPackage ../development/haskell-modules {
552 buildHaskellPackages = bh.packages.ghc946;
553 ghc = bh.compiler.ghc946;
554 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
556 ghc947 = callPackage ../development/haskell-modules {
557 buildHaskellPackages = bh.packages.ghc947;
558 ghc = bh.compiler.ghc947;
559 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
561 ghc948 = callPackage ../development/haskell-modules {
562 buildHaskellPackages = bh.packages.ghc948;
563 ghc = bh.compiler.ghc948;
564 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
566 ghc94 = packages.ghc948;
567 ghc962 = callPackage ../development/haskell-modules {
568 buildHaskellPackages = bh.packages.ghc962;
569 ghc = bh.compiler.ghc962;
570 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.6.x.nix { };
572 ghc963 = callPackage ../development/haskell-modules {
573 buildHaskellPackages = bh.packages.ghc963;
574 ghc = bh.compiler.ghc963;
575 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.6.x.nix { };
577 ghc96 = packages.ghc963;
578 ghc981 = callPackage ../development/haskell-modules {
579 buildHaskellPackages = bh.packages.ghc981;
580 ghc = bh.compiler.ghc981;
581 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.8.x.nix { };
583 ghc98 = packages.ghc981;
584 ghcHEAD = callPackage ../development/haskell-modules {
585 buildHaskellPackages = bh.packages.ghcHEAD;
586 ghc = bh.compiler.ghcHEAD;
587 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.10.x.nix { };
590 ghcjs = packages.ghcjs810;
591 ghcjs810 = callPackage ../development/haskell-modules rec {
592 buildHaskellPackages = ghc.bootPkgs;
593 ghc = bh.compiler.ghcjs810;
594 compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
595 packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { };
598 # The integer-simple attribute set contains package sets for all the GHC compilers
599 # using integer-simple instead of integer-gmp.
602 integerSimpleGhcNames = pkgs.lib.filter
603 (name: builtins.elem name integerSimpleIncludes)
604 (pkgs.lib.attrNames packages);
606 pkgs.lib.genAttrs integerSimpleGhcNames
608 packages.${name}.override (oldAttrs: {
609 ghc = bh.compiler.integer-simple.${name};
610 buildHaskellPackages = bh.packages.integer-simple.${name};
612 pkgs.lib.composeExtensions
613 (oldAttrs.overrides or (_: _: {}))
614 (_: _: { integer-simple = null; });
620 nativeBignumGhcNames = pkgs.lib.filter
621 (name: builtins.elem name nativeBignumIncludes)
622 (pkgs.lib.attrNames compiler);
624 pkgs.lib.genAttrs nativeBignumGhcNames
626 packages.${name}.override {
627 ghc = bh.compiler.native-bignum.${name};
628 buildHaskellPackages = bh.packages.native-bignum.${name};