Commit graph

79 commits

Author SHA1 Message Date
Mario Rodas 639c8c1f6a
ghc: use ld.gold only on Linux
partly reverts commit 29f2f04ded.
2019-08-07 22:05:26 -05:00
Alp Mestanogullari 29f2f04ded ghc: always use ld.gold
gold is known to speed up GHC builds considerably, saving up to many seconds
when linking large Haskell applications, so this patch configures all
non-binary GHC derivations to use gold.
2019-08-05 07:50:26 +02:00
Peter Simons 895fb1629d
Merge pull request #64371 from mpickering/strip-ghc
ghc: Don't strip compilers
2019-07-06 12:54:31 +02:00
Matthew Pickering b1e3d0737a ghc: Don't strip compilers
To test this I built a version of the compiler with `dontStrip = True`
and the vanilla version. The size of the result is both 1.4gb which
indicates that the stripping doesn't do anything meaningful.

Not stripping means that the debug rts is properly packages as it
contains DWARF information and unused debugging symbols.

Fixes #63511
2019-07-06 10:02:03 +01:00
Matthew Bauer 48ba8a4fb5 ghc: add bash to buildInputs
Fixes #62417.
Closes #62553.
2019-06-07 10:07:39 +02:00
John Ericson 655a29ff9c ghc, go, guile: Use new pkgs*
`pkgsBuildTarget` allows us to avoid repeated and confusing conditions.
The others merely provide clarity for one the foreign package set's
target platform matters.
2019-03-24 22:12:15 -04:00
Jörg Thalheim 1b146a8c6f
treewide: remove paxutils from stdenv
More then one year ago we removed grsecurity kernels from nixpkgs:
https://github.com/NixOS/nixpkgs/pull/25277

This removes now also paxutils from stdenv.
2018-12-22 12:55:05 +01:00
Matthew Bauer 7a00e80329 ghc: don’t add libiconv automatically
ghc needs it to fail to correctly detect it for later.
2018-12-05 13:17:40 -06:00
Matthew Bauer 5f575e7339 ghc: perl is needed at runtime
ghc-split is a script that is written in perl. We need to have a perl interpreter around to use it.

Fixes #50569
2018-11-18 18:47:02 -06:00
Will Dietz 6ebb2c385b ghc: disable pie, for now limit to musl since not default yet elsewhere 2018-11-15 21:55:08 -06:00
Drew Hess a1600d0aa8
ghc: enable parallel building of GHC on aarch64.
Note: this only affects GHC, not haskellPackages, which still suffers
from https://ghc.haskell.org/trac/ghc/ticket/15449.
2018-10-14 18:00:06 -04:00
Drew Hess 4babe7f799
haskell: re-enable aarch64, but disable parallel builds on that arch.
This is a workaround for unreliable parallel Haskell builds on
aarch64. See https://ghc.haskell.org/trac/ghc/ticket/15449
2018-10-05 01:28:42 -04:00
John Ericson e1605d9b21
Merge pull request #47647 from obsidiansystems/ghc-8.2.2-change-patch
ghc-8.2.2: Oops, added adjacent patch to the one I wanted for master
2018-10-02 01:47:53 -04:00
John Ericson bfef8113f6 ghc-8.2.2: Oops, added adjacent patch the one I wanted 2018-10-02 05:41:54 +00:00
John Ericson e231a374b8
Merge pull request #47644 from obsidiansystems/ghc-8.2-hsc2hs
ghc-8.2.2: Fix which hsc2hs is installed on cross
2018-10-02 01:10:47 -04:00
John Ericson 4f5d9996a6 ghc-8.2.2: Fix which hsc2hs is installed on cross
These commits all ended up on later GHCs, and are already being patched
in for ghc-8.4.3 in nixpkgs.
2018-10-02 00:33:30 -04:00
John Ericson a3d86b49b4
Merge pull request #47626 from obsidiansystems/ghc-cross-fixes
ghc: Misc cross fixes
2018-10-01 17:19:31 -04:00
John Ericson b19113380f ghc 8.2.2: Backport cross fixes from 8.4.3
Other patches are also needed for a working build, but that doesn't mean
these patches are any less necessary.
2018-10-01 20:54:21 +00:00
Tuomas Tynkkynen f4dd2fed7f ghc: Replace meta.available checks for enableIntegerSimple
This sort of code breaks config.{allowBroken, allowUnsupportedSystem} =
true by making them do unpredictable things.
2018-09-28 15:01:00 +03:00
John Ericson e6a476c862 ghc, ghcjs: Get rid of extraneous alex, happy, and hscolour args
The compilers themselves can pull them from `bootPkgs`, where they
should always come from anyways. This enforces that, simplifies that
code, and allows use to avoid more `rec { ... }` too.
2018-09-24 20:00:39 -04:00
John Ericson 0828e2d8c3 treewide: Remove usage of remaining redundant platform compatability stuff
Want to get this out of here for 18.09, so it can be deprecated
thereafter.
2018-08-30 17:20:32 -04:00
Matthew Bauer 13c8acc3db Revert "Merge pull request #44767 from obsidiansystems/wrapper-env-var-path"
This reverts commit 89efc27f57, reversing
changes made to d0f11020ca.
2018-08-22 01:14:53 +02:00
John Ericson 30ea1bfd22 ghc-*: Tool env vars no longer need to be made full paths 2018-08-08 17:16:16 -04:00
Matthew Bauer 406914934d
Merge pull request #43711 from angerman/feature/ghc-gmp
Feature/ghc gmp
2018-07-23 11:01:56 -04:00
volth 52f53c69ce pkgs/*: remove unreferenced function arguments 2018-07-21 02:48:04 +00:00
Moritz Angermann 3f762923aa
[ghc] Backport gmp stuff 2018-07-18 10:21:38 +08:00
Will Dietz 2996d29f71 ghc: don't use LLVM w/musl on non-cross
Doesn't appear to be needed on musl-native on x86_64,
and on non-x86(-64) it's included anyway.
2018-07-11 21:34:47 -05:00
Will Dietz 3e49430922 ghc822: useLLVM when building against musl too 2018-06-23 12:53:45 -05:00
Frederik Rietdijk 48110c1295 Merge staging into master 2018-06-22 13:20:37 +02:00
John Ericson e050011aa3
Merge pull request #42311 from obsidiansystems/haskell-enable-shared-defaults
haskell: make generic builder follow compiler’s shared config
2018-06-21 18:07:11 -04:00
Matthew Bauer 9e4aebdd7b ghc8.4: add android triple
The triple is needed for armv7a-android-prebuilt to work (partly) with
GHC.

- also set EXTRA_CC_OPTS for ghc8.2
2018-06-20 22:03:59 -04:00
Matthew Bauer fd7a6ea0af haskell: make generic builder follow compiler’s shared config
enableShared in generic-builder.nix should default to what the GHC
compiler was compiled with. Add a passthru to all of the GHC compilers
to hold the value of enableShared. If enableShared is not set in the
GHC we just use false as the default value for enableSharedLibraries.

Note: I may have missed some compilers. Only GHC & GHCJS are covered
by this commit but this shouldn’t break evaluation of anything else.
2018-06-20 18:40:53 -04:00
John Ericson 07ff2c27f1
Merge pull request #37598 from dtzWill/feature/ghc-cross-musl
ghc-{8.2.2,8.4.1}: fixups mostly for 2-stage cross, musl
2018-06-18 17:01:31 -04:00
Will Dietz 6cc5483b5e ghc-{8.2.2,8.4.1}: fixups mostly for 2-stage cross, musl
* grab patches from gentoo to fix various 2-stage cross build system
  bugs
* explicitly set CrossCompilePrefix to the expected targetPrefix
  -- ensures everything has expected name and location
  -- fixes lack of prefix'ing when doing glibc -> musl "cross"
* Stage1Only: only set if doing "true" cross
* don't try to specify include/lib dirs for ncurses on cross
  -- only used by terminfo which actually removed the include option,
  and the lib option doesn't seem to do anything other than
  confuse the situation re:cross.

Fixes #37522
2018-06-13 14:41:12 -04:00
John Ericson 812decd5c1 ghc: Default integer-simple usage based one whether GNU MP is available
The user's choice is still always respected
2018-06-11 15:51:57 -04:00
Jan Malakhovski ad35019501 Merge branch 'master' into staging
Fixed conflicts:
- lib/systems/for-meta.nix: in favor of staging
- pkgs/os-specific/darwin/xcode/default.nix: in favor of master
2018-05-26 00:20:17 +00:00
Robin Gloster 33b8830a85
ghc: disable format hardening 2018-05-24 03:42:43 +02:00
Moritz Angermann 10b76a4cab ghc: paxmark all unwraped executables across the board
Shell glob works even as the exact set of executable (filenames) varries
beween configuations. Need to skip non ELFs (e.g. shell scripts),
however.
2018-05-23 10:41:15 -04:00
John Ericson 1978115c3b ghc: Handle flavors better 2018-05-23 10:27:42 -04:00
John Ericson 9ce15ea60c ghc: Normalize derivations 2018-05-23 10:27:42 -04:00
John Ericson 18742471af Merge remote-tracking branch 'upstream/master' into staging
Use newer vagrant from master
2018-05-23 09:40:37 -04:00
Peter Simons 5db3a9df5e
Revert "ghc, haskell infra: #40642 direct to master" 2018-05-23 09:36:16 +02:00
Peter Simons 0e35858252
Merge pull request #40929 from obsidiansystems/cross-ghc-for-master
ghc, haskell infra: #40642 direct to master
2018-05-22 20:37:45 +02:00
Tuomas Tynkkynen f9feacfc7c Merge remote-tracking branch 'upstream/master' into staging 2018-05-22 17:48:29 +03:00
Moritz Angermann 4b2eceaa35 ghc: fix dylib load command limits in compiler version 8.x
See https://phabricator.haskell.org/D4714 for the full details.
This will be part of ghc 8.6.

Closes https://github.com/NixOS/nixpkgs/pull/40877.
2018-05-22 10:32:17 +02:00
John Ericson d6ecbbe921
Merge branch 'staging' into feature/clean-ghc 2018-05-21 17:43:30 -04:00
Moritz Angermann 6af0c192d1 ghc: paxmark all unwraped executables across the board
Shell glob works even as the exact set of executable (filenames) varries
beween configuations.
2018-05-21 15:11:12 -04:00
John Ericson 8d2ce113d5 ghc: Handle flavors better 2018-05-21 15:11:12 -04:00
John Ericson 6f2f081b90 ghc: Normalize derivations 2018-05-21 15:11:12 -04:00
John Ericson 5e17335bd7 Merge remote-tracking branch 'upstream/staging' into strictDeps 2018-05-14 23:33:03 -04:00