Commit Graph

2653 Commits

Author SHA1 Message Date
sternenseemann
ddada35b50 haskell.compiler.ghc941: bootstrap using GHC 9.0.2 on arm
text.cabal has the following snippet mandating this:

    -- GHC 8.10 has linking issues (probably TH-related) on ARM.
    if (arch(aarch64) || arch(arm)) && impl(ghc == 8.10.*)
      build-depends: base < 0

Since we're now testing 9.0.2 for bootstrapping on Hydra, we can also
use the proper GHC version for powerpc64le.
2022-08-14 17:33:45 +02:00
sternenseemann
d0706da55e haskell.compiler.ghc941: bootstrap using (binary) GHC 8.10.7
This shortens the bootstrap chain for 9.4.1 and should be kinder on
rebuilds. It requires some messing around in the configure file, since
it is not officially supported by upstream (but known to work). For now
it saves us the hassle of adding another bindist to nixpkgs. When we
support hadrian, we'll be able to use the already packaged 9.2.2
bindist.
2022-08-13 20:55:30 +02:00
github-actions[bot]
eb9760b8f7
Merge master into haskell-updates 2022-07-31 00:15:01 +00:00
Alyssa Ross
5330c0a1af
treewide: use isAarch where appropriate 2022-07-30 16:18:27 +00:00
sternenseemann
7f909b041b haskell.compiler: ghc923 -> ghc924
https://www.haskell.org/ghc/download_ghc_9_2_4.html
2022-07-28 18:09:33 +02:00
sternenseemann
078346d55e haskell.compiler.ghc941: init at 9.4.0.20220721 2022-07-26 21:09:03 +02:00
Adam Joseph
86c7c0917f
haskell.compiler.ghc865Binary: add powerpc64le bootstrap 2022-07-01 13:05:30 +02:00
Sandro Jäckel
4650f24496
Revert "ghc: Work around broken pyopenssl on aarch64-darwin"
This reverts commit 7898af7d3a.
2022-06-29 02:48:55 +02:00
Bernardo Meurer
131b7603cc
Merge pull request #179181 from hercules-ci/fix-ghc-aarch64-darwin-pyopenssl
ghc: Work around broken pyopenssl on aarch64-darwin
2022-06-27 10:58:58 -07:00
Robert Hensing
7898af7d3a ghc: Work around broken pyopenssl on aarch64-darwin 2022-06-26 20:13:13 +02:00
sternenseemann
1216772f5d haskell.compiler.ghc922Binary: init at 9.2.2
Since the musl / alpine bindist now uses the GMP backend, we need to
learn to tell Hadrian bindists about GMP. Hadrian bindists no longer
have the buildinfo files, instead we need to patch the package db before
installing and recache it afterwards which is not too hard, luckily.
Same goes for libiconv and base as well as libffi and rts on
darwin (those bindists are all produced using hadrian).

See also: https://gitlab.haskell.org/ghc/ghc/-/issues/21554#note_431000

Note that pkgsMusl.haskell.compiler.ghc922Binary still has severe
issues: It can't produce shared libraries because the bindist ships
none (and using the GMP backend has a hard requirement for shared
objects, apparently) and ghci segfaults for unknown reasons at the
moment. However, I've successfully compiled hadrian with it so far, so
perhaps it's good enough.
2022-06-26 13:50:16 +02:00
sternenseemann
90099ac5fa haskell.compiler: ghc922 -> ghc923
https://www.haskell.org/ghc/download_ghc_9_2_3.html

Since the tarball is generated by Hadrian, neither autoreconf nor ./boot
is executed so ./configure and ghc.mk is missing.
2022-05-28 21:11:07 +02:00
sternenseemann
471653824c pkgsMusl.haskell.compiler.ghc884: bootstrap using normal binary ghc
On non-arm platforms there's no reason to use the minimal GHC for musl
bootstrapping, as it doesn't hit the size limit. Additionally this serves
as a wonky workaround for ghc#21402 [1], as the minimal GHC 8.10.2
binary currently contains `xxx` in its `outPath`.

[1]: https://gitlab.haskell.org/ghc/ghc/-/issues/21402
2022-04-19 12:02:01 +02:00
Dennis Gosnell
1be5cae549
haskell: remove override of integer-gmp
It appears that integer-gmp is already set to null for all compilers,
so there is no need to explicitly set it to null in the integer-simple
and native-bignum package sets.
2022-04-12 14:15:05 +09:00
Dennis Gosnell
49d146101a
haskell: don't lose packageOverrides for native-bignum 2022-04-09 11:14:56 +09:00
sternenseemann
47f837f5e8 haskell.compiler: ghc921 -> ghc922
https://www.haskell.org/ghc/download_ghc_9_2_2.html
2022-03-09 16:42:07 +01:00
Moritz Kiefer
fa2bec27de haskell.compiler.ghc902: Switch to LLVM 12
Currently, the build on MacOS ARM64 is broken because LLVM 9 (or more
specifically compiler-rt) is broken (and is marked broken). Both
8.10.7 and 9.2.1 are already set to LLVM 12 so this PR adjusts this to
also use LLVM 12 for GHC 9.0.2 which seems to get things building for me.
2022-02-02 20:27:32 +01:00
Moritz Kiefer
f82aeba582 haskell.compiler.ghc{902,921}: Switch GHC 9.0/9.2 to bignum-native
Neither of them support integer-simple anymore.

fixes #153742
2022-01-31 19:12:51 +01:00
sternenseemann
767fefc21c haskell.lib: move lib.nix into same directory as compose.nix 2022-01-22 21:38:03 +01:00
sternenseemann
41eef0059d haskell.compiler: ghc901 -> ghc902
https://www.haskell.org/ghc/download_ghc_9_0_2.html
2021-12-26 10:00:37 +01:00
sternenseemann
a6f258f49f Merge remote-tracking branch 'origin/master' into haskell-updates 2021-11-25 09:28:37 +01:00
sternenseemann
156d8d619c haskell.compiler.*: be clear about LLVM build->target role
Since LLVM itself doesn't depend on target at all, this doesn't change
anything *in effect* (i. e. rebuild count should be zero), but it is
more clear about the intention and what LLVM is used for here (i. e. in
depsBuildTarget).
2021-11-24 13:48:37 +01:00
sternenseemann
9e1f438a76 haskell.compiler.*: upgrade to latest supported LLVM version
Source:

* (8.6.5: https://www.haskell.org/ghc/download_ghc_8_6_5.html)
* (8.8.4: https://www.haskell.org/ghc/download_ghc_8_8_4.html)
* (8.10.2: https://www.haskell.org/ghc/download_ghc_8_10_2.html)
* 8.10.7: https://www.haskell.org/ghc/download_ghc_8_10_7.html
* (9.0.1: https://www.haskell.org/ghc/download_ghc_9_0_1.html)
* 9.2.1: https://www.haskell.org/ghc/download_ghc_9_2_1.html
* HEAD: 3ab3631f41/configure.ac (L674)
2021-11-23 16:46:18 +01:00
sternenseemann
5a568ea36f haskell.compiler.ghc901: drop LLVM version to 9
GHC 9.0.1 only supports LLVM 9 and spews a lot of warnings about LLVM 10
when using the LLVM backend atm.

See also: https://www.haskell.org/ghc/download_ghc_9_0_1.html
2021-11-23 16:46:18 +01:00
sternenseemann
e191321866 haskell.compiler.ghc865Binary: build with correct LLVM version
See https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/compiler/backends/llvm/installing#llvm-support
2021-11-23 16:46:13 +01:00
sternenseemann
607dd14964 haskell.compiler.ghcHEAD: bootstrap using 8.10.7 binary
This should shorten the bootstrapping part (not requiring an
intermediate 9.0.1 build). Seems like 8.10.7 is still supported for
bootstrapping for the moment and allows compiling for aarch64-darwin.
2021-11-15 21:01:17 +01:00
Domen Kožar
07715e7876
Merge pull request #145128 from prusnak/ghc-921-aarch64-darwin
haskell.compiler.ghc{901,921,HEAD}: fix aarch64-darwin build
2021-11-14 08:43:48 -06:00
Pavol Rusnak
155b7f0114
haskell.compiler.ghcHEAD: apply autoSignDarwinBinariesHook 2021-11-09 20:30:08 +01:00
Pavol Rusnak
3b9e94dc6c
haskell.compiler.ghc901: fix aarch64-darwin build
by applying autoSignDarwinBinariesHook
2021-11-09 12:23:43 +01:00
Pavol Rusnak
044e860242
haskell.compiler.ghc921: fix aarch64-darwin build
by applying autoSignDarwinBinariesHook
2021-11-09 12:23:43 +01:00
Ellie Hermaszewska
15ae25f36c
haskell: switch from haskell.lib to haskell.lib.compose 2021-11-07 20:18:45 +08:00
sternenseemann
2034c06a0a haskell.compiler.ghc884: revert to reverse bootstraping using 8.10.2
Reverse bootstrapping is not supported by GHC upstream. In the case of
8.8.4 it just happens to work using 8.10.2, with later versions,
specifically 8.10.7 there seems to be some digressions in the generated /
used C code which cause 8.8.4 to fail to compile [1].

Thus we revert to using 8.10.2 for aarch64 and Musl which means: Still
no integer-simple and musl at the same time (however all other GHCs have
it, so it's probably not a problem) and no aarch64-darwin (GHC 8.8.4
can't target that architecture anyways). In short, the situation stays
the same.

[1]: https://github.com/NixOS/nixpkgs/pull/138523#issuecomment-927339953
2021-09-26 19:40:56 +02:00
sternenseemann
628d864ba2 haskell.compiler.ghc8107: always self-bootstrap
Allows us to get rid of the musl special-casing.
2021-09-23 20:38:36 +02:00
Niklas Hambüchen
c57ad7ccb9 haskell.compiler.ghc*: Use 8.10.7 bindist for bootstrapping.
This fixes musl+integer-simple, see #130441.

Co-Authored-By: sternenseemann <sternenseemann@systemli.org>
2021-09-23 20:38:36 +02:00
Divam
ba25b274f4 ghcjs: init at 8.10.7
The src points to the obsidiansystems repo as it has the ghcjs ported from
8.10.5 to 8.10.7, and a bunch of other fixes (#812, #811, #809)
2021-09-15 12:51:34 +09:00
Domen Kožar
6f1242469a ghc: 8.10.5-binary -> 8.10.7-binary 2021-08-29 15:29:27 +02:00
sternenseemann
a008c419dd haskell.compiler.ghc921: provide xattr on darwin
GHC 9.2.1-rc1 needs to run xattr in ghc.mk unconditionally. The fix for
this and support for the XATTR environment variable have only been added
to the GHC 8.10 series so far.
2021-08-28 16:17:21 +02:00
sternenseemann
b756d62d8d haskell.compiler.ghcHEAD: provide xattr on darwin
This darwin specific tool is required for GHC on master
nowadays. Unfortunately the XATTR environment variable only works in the
GHC 8.10 series.
2021-08-28 16:17:21 +02:00
sternenseemann
a0142cc3cc Merge remote-tracking branch 'origin/master' into haskell-updates 2021-08-28 14:45:41 +02:00
Pavol Rusnak
e0b89affa0 haskellPackages: fix ghc build on aarch64-darwin
by adding autoSignDarwinBinariesHook to nativeBuildInputs
2021-08-28 12:54:06 +02:00
sternenseemann
9eca744cc0 ghc: 8.10.6 -> 8.10.7
https://www.haskell.org/ghc/download_ghc_8_10_7.html
2021-08-27 00:42:51 +02:00
Pavol Rusnak
02c5e5173f
haskellPackages: introduce ghc8105Binary to enable aarch64-darwin bootstrap 2021-08-24 18:49:25 +02:00
sternenseemann
b83ae81600 haskell.compiler.ghc921: bootstrap using ghc8102BinaryMinimal on arm 2021-08-23 19:12:24 +02:00
Guillaume Bouchard
e0f7b04c2e ghc: add 9.2.1 (rc1) 2021-08-23 12:40:11 +02:00
sternenseemann
cb330ce4f0 ghc: 8.10.4 -> 8.10.6
The only big change is required for darwin since GHC 8.10.5 now
runs xattr in the install phase on darwin:

* 11e1dcde0d
* ec451cac39

Unfortunately, it uses the host /usr/bin/xattr by default which is
present in the build due to a lack of sandboxing on darwin. That xattr
version however still requires Python 2.7 whereas Python 3.8 is in PATH
in our build. We solve this by setting the XATTR environment variable.

We can't use python3Packages.xattr since GHC expects Apple's fork of
xattr which provides some extra flags to utilize.

Co-authored-by: Cheng Shao <cheng.shao@tweag.io>
2021-08-14 17:12:39 +02:00
sternenseemann
6d4c440f80 Revert "pkgsMusl.haskell.compiler.*: use python38 to unbreak build"
This reverts commit 36628e6e04.

As it turns out this wasn't caused by the update from python 3.8 -> 3.9,
but the underlying issue affects both python version (it seems that LTO
is at fault currently). Will have to be fixed elsewhere, reverting.
2021-07-26 12:33:18 +02:00
sternenseemann
36628e6e04 pkgsMusl.haskell.compiler.*: use python38 to unbreak build
seems like python39 currently fails to build with musl as libc
https://github.com/NixOS/nixpkgs/issues/131557. As a workaround, we can just
build the musl GHCs using python38 like we have been in the past (the python 3.8
-> 3.9 update being a more recent development).
2021-07-26 11:00:52 +02:00
Malte Brandy
264e63477d
pkgs.haskell.package-list: init
This commit introduces a maintainer script to upload our current list of
haskell-packages to hackage.
2021-07-22 23:17:37 +02:00
Niklas Hambüchen
8b15fccf8a pkgsMuslhaskell.compiler.{ghc884,ghc8104}: Use GHC 8.10 as bootstrap compiler.
This addresses the fact that `ghc865Binary` segfaults on musl
(see #118731) because of the glibc+musl mix used in there.

With the previous commits, `ghc8102Binary` was changed to use
the musl-based bindist from GHC HQ instead, which works.

With this change, all nix Haskell compilers builds on musl:

    NIX_PATH=nixpkgs=. nix-build --no-link --expr 'with import <nixpkgs> {}; { inherit (pkgsMusl.haskell.compiler) ghc884 ghc8104 ghc901 ghcHEAD; }'
2021-07-10 02:49:42 +02:00
sternenseemann
29e029da1c haskell.compiler.ghcHEAD: bootstrap using GHC 9.0
They use matching LLVM versions which should alleviate some warnings.
2021-05-17 22:08:56 +02:00
sternenseemann
b4c069dc11 haskell.compiler.ghcHEAD: 8.11.20200824 -> 9.3.20210504 2021-05-08 13:03:55 +02:00
sternenseemann
8f07082141 haskell.compiler.ghc901: build using ghc8102BinaryMinimal on arm
ghc8102Binary doesn't build on hydra on arm since it exceeds the maximum
output size. This change works around this issue by using the minimal
version of that compiler instead.
2021-05-07 15:13:37 +02:00
Peter Simons
021b8328ce ghc: drop obsolete compiler version 8.10.3 2021-03-12 21:23:15 +01:00
Peter Simons
822fc150a1 ghc: drop obsolete compiler version 8.10.2 2021-03-12 21:18:48 +01:00
Peter Simons
d0ac5c04e0 ghc: drop obsolete compiler version 8.10.1 2021-03-12 21:17:50 +01:00
Peter Simons
a7932e3f14 ghc: drop obsolete compiler version 8.8.3 2021-03-12 21:16:35 +01:00
Peter Simons
f189465dce ghc: drop obsolete compiler version 8.8.2 2021-03-12 21:16:09 +01:00
Peter Simons
0886f5bad8 ghc: drop unused binary compiler version 8.2.2 2021-03-12 21:10:19 +01:00
Peter Simons
cb4346597f ghc: drop obsolete version 8.6.5 2021-03-12 21:05:31 +01:00
(cdep)illabout
b0a16b29e2 haskell.compiler.ghc8104: add ghc-8.10.4 2021-02-12 20:35:21 +01:00
Peter Simons
1998b95adc haskellPackages: update default compiler from ghc 8.10.2 to version 8.10.3 2020-12-25 20:41:54 +01:00
Merkhad Luigton
3ebd278b2e ghc8102: bootstrap with ghc8102BinaryMinimal on aarch32
ghc refuses to evaluate on armhf even tho ghc does provide binaries for the arch
2020-11-24 15:30:24 -03:00
Robert Hensing
f73df04874 haskell.compiler.integer-simple: Exclude ghc8102Binary*
(cherry picked from commit fc1562695bdfe26c38f473e4639ab0a1c349a953)
2020-11-04 09:55:56 +01:00
Robert Hensing
f8ad73b9d8 haskell.compiler.ghc8102BinaryMinimal: init
To stay within hydra limit of 2^31 output size on aarch64-linux
2020-11-03 12:01:41 +01:00
Will Young
1c2ee215ab ghc:8.10.2Binary bootstrap for 8.8 on aarch64 (NixOS#97407) 2020-10-21 21:13:22 +02:00
Peter Simons
518338f7f7 ghc: add alpha-1 release of version 9.0.1 2020-09-29 12:06:53 +02:00
Richard Marko
bcd728c9bf ghc8102Binary: add to integerSimpleExcludes 2020-09-26 12:18:00 -07:00
Richard Marko
0d4f3ef1ab ghc8102Binary: init, enable armv7l 2020-09-24 12:26:35 +02:00
Gabor Greif
621e26fe80 ghc-8.10.x: add v8.10.2
https://mail.haskell.org/pipermail/ghc-devs/2020-August/019131.html
2020-08-08 22:32:58 +02:00
Utku Demir
ed1623421f ghcHEAD: 8.11.20200505 -> 8.11.20200731 2020-08-07 20:34:52 +02:00
Peter Simons
f1182ecc91 ghc: drop obsolete 8.4.x version
We generally keep only the last 3 major releases of GHC.
2020-07-24 13:02:55 +02:00
Gabor Greif
dd6ce8c879 ghc: add new version 8.8.4 2020-07-24 13:02:55 +02:00
Gabor Greif
dec283b463 ghcHEAD: 20200403 -> 20200505 2020-05-08 21:11:46 +02:00
Gabor Greif
a634bd0fd7 ghc: drop 8.8.1 2020-04-24 21:48:28 +02:00
Gabor Greif
7932fb22cb ghcHEAD: bump to 8.11.20200403 (#84217)
* ghcHEAD: bump to 8.11.20200403

* ghcHead: reduce diff vs. 8.10.1

dontAddExtraLibs was removed by accident (IMO) in ea19a8ed1e

* ghcHEAD: add ability to use system libffi

- enable nixpkgs' libffi
- minimise diffs against 8.10.1
- remove patching

* remove configure warning about --with-curses-includes

configure: WARNING: unrecognized options: --with-curses-includes
2020-04-17 20:50:48 +02:00
Andrew Childs
3c7ef6bcd8 ghc: 8.6.3-binary -> 8.6.5-binary 2020-03-27 20:54:27 +01:00
Gabor Greif
c8554c0574 ghc: add 8.8.3
https://mail.haskell.org/pipermail/ghc-devs/2020-February/018643.html
2020-02-28 20:42:25 +01:00
Peter Simons
525b8cd3f6 ghc: add 8.10.1-alpha2 2019-12-27 20:58:23 +01:00
Peter Simons
56f1127a42 ghc: add 8.8.2-rc1 2019-12-27 20:43:35 +01:00
Peter Simons
6966609104 Drop obsolete ghcjs-8.4.x code.
The 8.4.x version of ghcjs hasn't compiled successfully
in ages, so I reckon it's unused. The even older code
in pkgs/development/compilers/ghcjs is unused entirely;
it's not even referenced in Nixpkgs.
2019-09-30 12:48:24 +02:00
Peter Simons
e1a5f9ff46
Merge pull request #69033 from peti/t/drop-obsolete-ghc-versions
drop obsolete versions of the GHC compiler
2019-09-18 19:35:17 +02:00
Peter Simons
8fa86fda32 haskell-packages.nix: cosmetic 2019-09-18 19:28:04 +02:00
Peter Simons
1f157b8cf8 ghc: drop obsolete 8.2.2 version
We keep the last 3 major releases of GHC around, which are
versions 8.8.1, 8.6.5, and 8.4.4.
2019-09-18 18:28:11 +02:00
Peter Simons
ddb77f3437 ghc: drop obsolete 8.6.4 version
The latest version in the 8.6.x branch is 8.6.5.
2019-09-18 18:24:42 +02:00
volth
35d68ef143 treewide: remove redundant quotes 2019-08-26 21:40:19 +00:00
Peter Simons
894e102c84 ghc: add alpha-1 pre-release for version 8.8.1
The patches for https://phabricator.haskell.org/D5123 and
https://github.com/haskell/haddock/issues/900 no longer
apply and have been dropped.
2019-04-30 11:43:44 +00:00
Peter Simons
66c25cff94 ghc: add release candidate for 8.6.5 and a corresponding package set 2019-04-13 12:16:34 +02:00
Peter Simons
93e4a90502 ghc: switch our default compiler to version 8.6.4
Also, drop obsolete 8.6.x minor releases 8.6.1, 8.6.2, and 8.6.3.

(cherry picked from commit 7fde42b8ebddbd673342b98d9d7c892a0c521583)
2019-03-16 20:30:58 +01:00
Peter Simons
68be6bbc31 ghc: add new 8.6.4 version 2019-03-06 08:13:56 +01:00
Peter Simons
456f09d76f ghc: Drop outdated compiler versions 8.6.1 and 8.6.2. We have 8.6.3. 2019-03-05 11:13:52 +01:00
Artem Pyanykh
f7003e5390 ghc-8.4.4: use sphinx 1.7.x to build the documentation
ghc-8.4.4 requires sphinx < 1.8, otherwise build fails on haddock with:

    Extension error: The 'ghc-flag' directive is already registered to domain std

Also fixed evaluation errors in configurations of ghc-8.2.x and ghc-8.4.x.

Closes https://github.com/NixOS/nixpkgs/pull/55703.
2019-02-27 21:08:49 +01:00
Peter Simons
30432fa06a ghc-8.4.x: don't build Sphinx documentation
The build was broken by the recent Sphinx 1.8.x update.

Fixes https://github.com/NixOS/nixpkgs/issues/55662.
2019-02-20 20:07:07 +01:00
Will Fancher
0969e91389 Remove GHCJS 8.2 2019-01-30 04:45:41 -05:00
Will Fancher
57cb854e42 GHCJS: Add 8.6 2019-01-30 03:22:59 -05:00
Will Fancher
f8c229e12f Remove obsolete GHCJS package sets 2019-01-30 03:22:58 -05:00
Piotr Bogdan
0299aa0adb ghc-6.8.x: bootstrap with binary build
Closes https://github.com/NixOS/nixpkgs/pull/54073.
2019-01-29 10:23:54 +01:00
Kosyrev Serge
ea19a8ed1e ghcHEAD: update to 8.7 2019-01-27 10:26:07 +01:00
Kosyrev Serge
c92101bc32 ghc-8.6.3-binary 2019-01-27 10:26:07 +01:00
Peter Simons
c37ae1dcf6 ghc: add new compiler version 8.6.3 2018-12-08 11:46:20 +01:00
Craig Younkins
a655fb9fbd ghc: Adding sphinx as build dependency to build man pages
Fixes https://github.com/NixOS/nixpkgs/issues/49627.
Closes https://github.com/NixOS/nixpkgs/pull/50920.
2018-11-25 09:43:34 +01:00