1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-12-13 16:15:30 +00:00
Commit graph

13 commits

Author SHA1 Message Date
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
Jack Cummings 2fe842a200 fix ghc bootstrap on non-nixos nonstd-storepath
Something goes amiss in the configurePhase and binaries start picking up
system binaries and everything falls apart. Patch the configure script
to use a bourne shell out of the store, and things are happier.

Closes https://github.com/NixOS/nixpkgs/pull/40691.
2018-05-19 22:24:31 +02:00
John Ericson ba52ae5048 treewide: isArm -> isAarch32
Following legacy packing conventions, `isArm` was defined just for
32-bit ARM instruction set. This is confusing to non packagers though,
because Aarch64 is an ARM instruction set.

The official ARM overview for ARMv8[1] is surprisingly not confusing,
given the overall state of affairs for ARM naming conventions, and
offers us a solution. It divides the nomenclature into three levels:

```
ISA:             ARMv8   {-A, -R, -M}
                 /    \
Mode:     Aarch32     Aarch64
             |         /   \
Encoding:   A64      A32   T32
```

At the top is the overall v8 instruction set archicture. Second are the
two modes, defined by bitwidth but differing in other semantics too, and
buttom are the encodings, (hopefully?) isomorphic if they encode the
same mode.

The 32 bit encodings are mostly backwards compatible with previous
non-Thumb and Thumb encodings, and if so we can pun the mode names to
instead mean "sets of compatable or isomorphic encodings", and then
voilà we have nice names for 32-bit and 64-bit arm instruction sets
which do not use the word ARM so as to not confused either laymen or
experienced ARM packages.

[1]: https://developer.arm.com/products/architecture/a-profile
2018-04-25 15:28:55 -04:00
Drew Hess e4f3fe051e ghc, haskell-modules: ARM cross build fixes.
As requested in #33405.
2018-01-11 10:45:44 -05:00
Drew Hess 461139e3fa
ghc: ARM builds have an LLVM runtime dependency. 2018-01-03 15:57:23 -08:00
John Ericson a5cc983c45 ghc: Clean up, and add passthru.targetPrefix, in preparation for cross
No hashes should be changed.
2018-01-02 19:50:38 -05:00
Drew Hess 1e137832b8
ghc: add ARM variants to meta.platforms for new binary versions. 2018-01-02 03:57:12 -08:00
Drew Hess 9c91d0d63c
ghc: fix armv7l-linux support in new binary versions. 2018-01-02 03:36:42 -08:00
Domen Kožar 695a026f5f
ghc: wire up new binary ghc for bootstrapping
This change brings development feedback loop improvement
from a couple of ghc rebuilds to only one for working on generic
builder.

To completely eliminate the rebuilds, use two nixpkgs clones
and point boot packages to the unmodified one.
2017-12-28 15:11:50 +00:00
Domen Kožar bd7c8ea255
ghc binaries: compile on darwin 2017-12-25 22:56:32 +00:00
Domen Kožar e4c05ae25a
ghc binaries: fix eval 2017-12-25 18:16:23 +00:00
Domen Kožar 398061dfc5
prebuilt ghcs: correctly handle rpaths 2017-12-25 17:19:43 +00:00
John Ericson ed93d2d645
ghc-{7.8.4, 7.10.3, 8.2.1}-binary: Init 2017-12-25 16:36:47 +00:00