| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
See discussion in https://github.com/NixOS/nixpkgs/commit/6ac7b19c978e951c124c5ea434c94f95f593888e.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This commit breaks native armv7l-linux builds. Revert it until it can
be root-caused. This reversion does not affect other platforms or
cross-compiling.
This reverts commit 0f5c80463176f7b146e8ef1943a3bbd61d4cbaf0.
|
| |
|
|
|
|
|
|
|
|
| |
Now that we do `--enable-targes=all`, there is no risk of missing the
needed emulation.
This reverts commit ebc9b161cd184502bf4912b9348a507e2d0540da.
This reverts commit 88efc22b44dedf423398491f9a55d1631b0b50ff.
|
|
|
|
| |
Mainly making sure we have tools to build target libs
|
| |
|
| |
|
|\ |
|
| |\ |
|
| |\ \ |
|
| |\ \ \ |
|
| |\ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Hardening on by default now that we don't use the cross wrapper. In
turn, hardening requires libssp in particular.
|
| |_|_|_|/
|/| | | | |
|
|\ \ \ \ \
| |_|_|_|/
|/| | | |
| | | | | |
gcc-modernize-builder
|
| |\ \ \ \ |
|
| | | | | | |
|
|\| | | | |
| |_|_|_|/
|/| | | |
| | | | | |
gcc-modernize-builder
|
| |\| | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Previously configureFlags was defined as one giant interpolated string.
Here we refactor this definition to instead use the usual stdenv string
combinators. This seems more in-line with the average nixpkgs expression
and it seems a bit more natural to things of these as lists of flags
rather than monolithic strings.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
directly
One should do this when needed executables at run time. It is more
honest and cross-friendly than refering to binutils directly, if one
neeeds the default binary tools for the target platform, rather than
binutils in particular.
|
| | | | |
| | | | |
| | | | |
| | | | | |
Switch to xz since there is no bz2 variant (apparently)
|
| | |\ \ \
| | | | | |
| | | | | |
| | | | | | |
No native hashes should be changed
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This gets us one step closer to removing `gccCrossStageFinal`.
Care is taken to avoid a mass rebuild; will clean up with one later.
|
| | |/ / /
| | | | |
| | | | |
| | | | | |
This has been forgotten in #29349 ?
|
| | | | |
| | | | |
| | | | |
| | | | | |
No need for silly differences.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
...just as we did for binutils. When the underlying issue is resolved
(probably with a configure script patch or lib/systems/parse.nix
change), this should be reverted.
|
|\| | | |
| |_|_|/
|/| | |
| | | | |
gcc-modernize-builder
|
| |\| | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
Forgot to do this in last commit.
|
| | | |
| | | |
| | | |
| | | | |
Less noise in the diff help maintain these behemoths.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fixes #27889
This works properly now that LD_DYLD_PATH is fixed
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This fixes the gcc build but results in a gcc that doesn't generate
valid binaries.
gcc -o hello hello.c
./hello
Killed: 9
This reverts commit 2adf36ab8c7903e100e6e7a0a6447934ec09b10e.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- NIX_CC_CROSS is now completely gone!
- NIX_CC is defined reliably, so no manual def needed
- stdenv.ccCross -> stdenv.cc, also removing need for "or" fallback
|
|\| | |
| |_|/
|/| |
| | | |
gcc-modernize-builder
|
| |\| |
|
| | |
| | |
| | |
| | | |
have a build cc-wrapper around as well
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| | |
Instead of `NIX_CC` vs `NIX_CC_CROSS` spagetti, unconditionally use
`NIX_BUILD_CC` and `NIX_CC` in a consistent manner.
|