|
14 | 14 | "9.12" = "9.12.1"; |
15 | 15 | }; |
16 | 16 | gitInputs = { |
| 17 | + ghc96X = "9.6.7"; |
17 | 18 | ghc912X = "9.12.1"; |
18 | 19 | ghc913 = "9.13"; |
19 | 20 | }; |
|
168 | 169 | ++ onWindows (fromUntil "9.0" "9.4" ./patches/ghc/ghc-9.0-windres-invocation.patch) |
169 | 170 | ++ onWindows (from "9.12" ./patches/ghc/ghc-9.12-windows-rts-symbols.patch) |
170 | 171 | ++ fromUntil "9.4.5" "9.4.9" ./patches/ghc/ghc-9.4.5-include-order-fix.patch |
171 | | - ++ fromUntil "9.6.2" "9.8" ./patches/ghc/ghc-9.4.5-include-order-fix.patch |
172 | | - ++ fromUntil "9.6.1" "9.9.20231203" ./patches/ghc/MR10116.patch |
| 172 | + ++ fromUntil "9.6.2" "9.6.7" ./patches/ghc/ghc-9.4.5-include-order-fix.patch |
| 173 | + ++ fromUntil "9.6.1" "9.6.7" ./patches/ghc/MR10116.patch |
| 174 | + ++ fromUntil "9.8.1" "9.9.20231203" ./patches/ghc/MR10116.patch |
173 | 175 | ++ onNative (fromUntil "9.4.1" "9.6" ./patches/ghc/hadrian-build-deriveConstants-genprimopcode-ghc94.patch) |
174 | 176 | ++ onNative (fromUntil "9.6.1" "9.14" ./patches/ghc/hadrian-build-deriveConstants-genprimopcode.patch) |
175 | 177 | ++ onGhcjs (fromUntil "9.6.1" "9.6.3" ./patches/ghc/ghc-9.6-Merge-libiserv-with-ghci.patch) |
|
199 | 201 | ++ onAarch64 (until "9.0" ./patches/ghc/ghc-8.10-aarch64-handle-none-rela.patch) |
200 | 202 | ++ onWindows (until "9.0" ./patches/ghc/5b08e0c06e038448a63aa9bd7f163b23d824ba4b.patch) |
201 | 203 | ++ onAarch64 (fromUntil "9.0" "9.11" ./patches/ghc/ghc-9.0-better-symbol-addr-debug.patch) |
202 | | - ++ onAarch64 (fromUntil "9.0" "9.8.3" ./patches/ghc/ghc-9.0-aarch64-handle-none-rela.patch) |
| 204 | + ++ onAarch64 (fromUntil "9.0" "9.6.7" ./patches/ghc/ghc-9.0-aarch64-handle-none-rela.patch) |
| 205 | + ++ onAarch64 (fromUntil "9.8" "9.8.3" ./patches/ghc/ghc-9.0-aarch64-handle-none-rela.patch) |
203 | 206 | ++ onAarch64 (fromUntil "9.10" "9.11" ./patches/ghc/ghc-9.0-aarch64-handle-none-rela.patch) |
204 | 207 |
|
205 | 208 | ++ onWindows (fromUntil "9.6.3" "9.6.4" ./patches/ghc/ghc-9.6-hadrian-splitsections.patch) |
@@ -258,27 +261,33 @@ in { |
258 | 261 | && final.stdenv.targetPlatform.is32bit |
259 | 262 | || final.stdenv.targetPlatform.isMusl) |
260 | 263 | (until "9.11" ./patches/ghc/ghc-9.6-missing-symbols-deadbeef.patch) |
261 | | - ++ onAarch64Musl (fromUntil "9.6" "9.8.3" ./patches/ghc/ghc-9.6-linker-pool-allocator.patch) |
| 264 | + ++ onAarch64Musl (fromUntil "9.6" "9.6.7" ./patches/ghc/ghc-9.6-linker-pool-allocator.patch) |
| 265 | + ++ onAarch64Musl (fromUntil "9.8" "9.8.3" ./patches/ghc/ghc-9.6-linker-pool-allocator.patch) |
262 | 266 | ++ onAarch64Musl (fromUntil "9.10" "9.11" ./patches/ghc/ghc-9.6-linker-pool-allocator.patch) |
263 | | - ++ onAarch64Musl (fromUntil "9.6" "9.8.3" ./patches/ghc/ghc-9.6-linker-pool-allocator-2.patch) |
| 267 | + ++ onAarch64Musl (fromUntil "9.6" "9.6.7" ./patches/ghc/ghc-9.6-linker-pool-allocator-2.patch) |
| 268 | + ++ onAarch64Musl (fromUntil "9.8" "9.8.3" ./patches/ghc/ghc-9.6-linker-pool-allocator-2.patch) |
264 | 269 | ++ onAarch64Musl (fromUntil "9.10" "9.11" ./patches/ghc/ghc-9.6-linker-pool-allocator-2.patch) |
265 | 270 |
|
266 | 271 | ++ onMusl (fromUntil "9.6" "9.8" ./patches/ghc/ghc-9.6-0001-Refactor-IServ.hs.patch) |
267 | | - ++ onMusl (fromUntil "9.6" "9.8.3" ./patches/ghc/ghc-9.6-0002-Drop-spurious-8-byte-offset-from-elf_plt.patch) |
| 272 | + ++ onMusl (fromUntil "9.6" "9.6.7" ./patches/ghc/ghc-9.6-0002-Drop-spurious-8-byte-offset-from-elf_plt.patch) |
| 273 | + ++ onMusl (fromUntil "9.8" "9.8.3" ./patches/ghc/ghc-9.6-0002-Drop-spurious-8-byte-offset-from-elf_plt.patch) |
268 | 274 | ++ onMusl (fromUntil "9.10" "9.11" ./patches/ghc/ghc-9.6-0002-Drop-spurious-8-byte-offset-from-elf_plt.patch) |
269 | | - ++ onAarch64Musl (fromUntil "9.6" "9.8.3" ./patches/ghc/ghc-9.6-0003-Better-pool-alignment.-We-still-hardcode-section-ali.patch) |
| 275 | + ++ onAarch64Musl (fromUntil "9.6" "9.6.7" ./patches/ghc/ghc-9.6-0003-Better-pool-alignment.-We-still-hardcode-section-ali.patch) |
| 276 | + ++ onAarch64Musl (fromUntil "9.8" "9.8.3" ./patches/ghc/ghc-9.6-0003-Better-pool-alignment.-We-still-hardcode-section-ali.patch) |
270 | 277 | ++ onAarch64Musl (fromUntil "9.10" "9.11" ./patches/ghc/ghc-9.6-0003-Better-pool-alignment.-We-still-hardcode-section-ali.patch) |
271 | | - ++ onAarch64Musl (fromUntil "9.6" "9.8.3" ./patches/ghc/ghc-9.6-0007-fixup-Better-pool-alignment.-We-still-hardcode-secti.patch) |
| 278 | + ++ onAarch64Musl (fromUntil "9.6" "9.6.7" ./patches/ghc/ghc-9.6-0007-fixup-Better-pool-alignment.-We-still-hardcode-secti.patch) |
| 279 | + ++ onAarch64Musl (fromUntil "9.8" "9.8.3" ./patches/ghc/ghc-9.6-0007-fixup-Better-pool-alignment.-We-still-hardcode-secti.patch) |
272 | 280 | ++ onAarch64Musl (fromUntil "9.10" "9.11" ./patches/ghc/ghc-9.6-0007-fixup-Better-pool-alignment.-We-still-hardcode-secti.patch) |
273 | | - ++ onAarch64Musl (fromUntil "9.6" "9.8.3" ./patches/ghc/ghc-9.6-0008-pool-improvements.patch) |
| 281 | + ++ onAarch64Musl (fromUntil "9.6" "9.6.7" ./patches/ghc/ghc-9.6-0008-pool-improvements.patch) |
| 282 | + ++ onAarch64Musl (fromUntil "9.8" "9.8.3" ./patches/ghc/ghc-9.6-0008-pool-improvements.patch) |
274 | 283 | ++ onAarch64Musl (fromUntil "9.10" "9.11" ./patches/ghc/ghc-9.6-0008-pool-improvements.patch) |
275 | 284 | # these two are abit questionable. They are pretty rough, and assume static binary as well as posix. |
276 | 285 | # onMusl (fromUntil "9.6" "9.11" ./patches/ghc/ghc-9.6-0004-ghcidladdr.patch) |
277 | 286 | # onMusl (fromUntil "9.6" "9.11" ./patches/ghc/ghc-9.6-0005-Better-interpreter-debugging.-Needs-ghcidladdr.patch) |
278 | 287 |
|
279 | 288 | # Fix docs/users_guide/rtd-theme/layout.html to work with sphinx 7 |
280 | | - ++ fromUntil "9.0" "9.8" ./patches/ghc/docs-sphinx-7.patch |
281 | | - ++ fromUntil "9.8" "9.9" ./patches/ghc/docs-sphinx-7-ghc98.patch |
| 289 | + ++ fromUntil "9.0" "9.6.7" ./patches/ghc/docs-sphinx-7.patch |
| 290 | + ++ fromUntil "9.6.7" "9.9" ./patches/ghc/docs-sphinx-7-ghc98.patch |
282 | 291 |
|
283 | 292 | # These two patches are needed for libblst, which has now hidden symbols, which the linker doesn't know how to deal with. |
284 | 293 | ++ ( |
@@ -997,7 +1006,7 @@ in { |
997 | 1006 | compiler-nix-name = versionToNixName version; |
998 | 1007 | in { |
999 | 1008 | name = compiler-nix-name; |
1000 | | - value = final.callPackage ../compiler/ghc { |
| 1009 | + value = final.callPackage ../compiler/ghc ({ |
1001 | 1010 | extra-passthru = { buildGHC = final.buildPackages.haskell-nix.compiler.${compiler-nix-name}; }; |
1002 | 1011 |
|
1003 | 1012 | bootPkgs = bootPkgsGhc94 // { |
@@ -1030,7 +1039,21 @@ in { |
1030 | 1039 | ghc-patches = ghc-patches version; |
1031 | 1040 | ghc-version-date = version-date; |
1032 | 1041 | ghc-commit-id = src.rev; |
1033 | | - }; |
| 1042 | + } // final.lib.optionalAttrs (builtins.compareVersions version "9.7" <0) { |
| 1043 | + bootPkgs = bootPkgsGhc94 // { |
| 1044 | + ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform |
| 1045 | + then final.buildPackages.buildPackages.haskell-nix.compiler.ghc966 |
| 1046 | + else final.buildPackages.buildPackages.haskell.compiler.ghc966 |
| 1047 | + or final.buildPackages.buildPackages.haskell.compiler.ghc965 |
| 1048 | + or final.buildPackages.buildPackages.haskell.compiler.ghc964 |
| 1049 | + or final.buildPackages.buildPackages.haskell.compiler.ghc963 |
| 1050 | + or final.buildPackages.buildPackages.haskell.compiler.ghc962 |
| 1051 | + or final.buildPackages.buildPackages.haskell.compiler.ghc945 |
| 1052 | + or final.buildPackages.buildPackages.haskell.compiler.ghc944; |
| 1053 | + }; |
| 1054 | + buildLlvmPackages = final.buildPackages.llvmPackages_12; |
| 1055 | + llvmPackages = final.llvmPackages_12; |
| 1056 | + }); |
1034 | 1057 | }) gitInputs)) |
1035 | 1058 | // final.lib.optionalAttrs (final.stdenv.targetPlatform.isGhcjs or false) ( |
1036 | 1059 | if final.stdenv.hostPlatform.isGhcjs |
|
0 commit comments