| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
This doesn’t appear to ever have worked. binutils doesn’t seem to
support the alpha-elf target at all. It doesn’t make sense to keep
this around.
https://hydra.nixos.org/build/92403855/nixlog/1/tail
|
|
|
|
|
|
|
| |
New android ndk (18) now uses clang. We were going through the wrapper
that are provided. This lead to surprising errors when building.
Ideally we could use the llvm linker as well, but this leads to errors
as many packages don’t support the llvm linker.
|
|\
| |
| |
| | |
Hydra nixpkgs: ?compare=1512490
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
eabihf is an abi that can be used with ARM architectures that support
the “hard float”. It should probably only be used with ARM32 when you
are absolutely sure your binaries will run on ARM systems with a FPU.
Also, add an example "armhf-embedded" to match the preexisting
arm-embedded system. qmk_firmware needs hard float in a few places, so
add them here to get that to work.
Fixes #51184
|
|\
| |
| | |
Add "emulator" function to systems
|
| |
| |
| |
| |
| | |
Makes it easier to use mapAttrs with lib.systems.examples. Now every
entry in it are legitimate systems.
|
| | |
|
|/
|
|
| |
I added some embedded platforms for the CPUs I added to the parse.nix file.
These could be used as new platforms for the added CPUs.
|
|
|
|
| |
Fixes #28160
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- respect libc’s incdir and libdir
- make non-unix systems single threaded
- set LIMITS_H_TEST to false for avr
- misc updates to support new libc’s
- use multilib with avr
For threads we want to use:
- posix on unix systems
- win32 on windows
- single on everything else
For avr:
- add library directories for avrlibc
- to disable relro and bind
- avr5 should have precedence over avr3 - otherwise gcc uses the wrong one
|
|
|
|
|
|
|
|
|
|
| |
Gets rid of:
avrbinutils
avrgcc
to replace with:
pkgsCross.avr.buildPackages.binutils
pkgsCross.avr.buildPackages.gcc
|
| |
|
|
|
|
|
| |
Also switch Linux to using the official sha1 hashes for consistency.
They are gotten from https://developer.android.com/ndk/downloads/.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* ppc64le enablement
* gcc, glibc: properly handle __float128
* lib/systems, stdenv: syntax cleanup
* gcc7: remove ugly hack
* gcc: add/update __float128 flags
* stdenv: add another pair of quotes for consistency
* gcc: move __float128 flag for ppc64le-glibc into common/platform-flags.nix
|
|
|
|
|
| |
This give us a little bit more control over what target we are using.
Eventually we can target other things like WatchOS or MacOS.
|
|
|
|
|
| |
This version number controls which xcode version to use when building
cross to iOS.
|
|
|
|
|
|
|
|
| |
It wasn’t exactly clear which NDK you were using previously. This adds
an attribute to system that handles what version of the NDK we should
use when building things.
/cc @Ericson2314
|
| |
|
| |
|
| |
|
|\
| |
| | |
lib: Add 32-bit Android platforms
|
| | |
|
|\|
| |
| | |
lib/systems: Sort platforms, and space CPUs
|
| | |
|
|\ \
| |/
|/| |
|
| |\
| | |
| | |
| | | |
lib-platform-simplify
|
| | |
| | |
| | |
| | | |
Whoops messed up 9a845de873dfcc31f360a08f1b1f786c6f649c7d slightly.
|
| | |
| | |
| | |
| | |
| | |
| | | |
The commented-out configs are @shlevy's old known-good ones. I changed
them as needed to play nice with lib.systems.parse but did not test so
leaving them as comments for now.
|
|/ /
| |
| |
| |
| |
| | |
ARM ABIs now have a float field. This is used as a fallback to lessen
our use of `platform.gcc.float`. I didn't know what the MIPs convention
is so I kept using `platform.gcc.float` in that case.
|
| |
| |
| |
| | |
Use `parsed.cpu.name` or `platform.gcc.arch` instead.
|
|/ |
|
|
|
|
| |
Expose as an option for the cross stdenv.
|
|
|
|
|
|
|
|
|
| |
Existing "mips64el" should be "mipsel".
This is just the barest minimum so that nixpkgs can recognize them as
systems - although required for building individual derivations onto
MIPS boards, it is not sufficient if you want to actually build nixos on
those targets
|
| |
|
|
|
|
|
|
| |
Note this doesn't actually provide musl support yet,
just improves our "system" code to understand
musl-based triples and non-glibc linux configurations.
|
|
|
|
| |
We compute it on the fly, careful to avoid any mass rebuilds for now.
|
|
|
|
| |
They still have `parsed.cpu.significantByte` which has the same info.
|
|
|
|
|
|
|
|
|
|
|
|
| |
glibc removed the underlying flag in 2011 in
83cd14204559abbb52635006832eaf4d2f42514a [1].
This gets us one step closer to fixing #34274: the cross stdenv for
aarch64-unknown-linux-gnu at least evals now.
Thanks to @Dezgeg for doing all the research for this.
[1]: https://sourceware.org/git/?p=glibc.git;a=commit;h=83cd14204559abbb52635006832eaf4d2f42514a
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This does break the API of being able to import any lib file and get
its libs, however I'm not sure people did this.
I made this while exploring being able to swap out docFn with a stub
in #2305, to avoid functor performance problems. I don't know if that
is going to move forward (or if it is a problem or not,) but after
doing all this work figured I'd put it up anyway :)
Two notable advantages to this approach:
1. when a lib inherits another lib's functions, it doesn't
automatically get put in to the scope of lib
2. when a lib implements a new obscure functions, it doesn't
automatically get put in to the scope of lib
Using the test script (later in this commit) I got the following diff
on the API:
+ diff master fixed-lib
11764a11765,11766
> .types.defaultFunctor
> .types.defaultTypeMerge
11774a11777,11778
> .types.isOptionType
> .types.isType
11781a11786
> .types.mkOptionType
11788a11794
> .types.setType
11795a11802
> .types.types
This means that this commit _adds_ to the API, however I can't find a
way to fix these last remaining discrepancies. At least none are
_removed_.
Test script (run with nix-repl in the PATH):
#!/bin/sh
set -eux
repl() {
suff=${1:-}
echo "(import ./lib)$suff" \
| nix-repl 2>&1
}
attrs_to_check() {
repl "${1:-}" \
| tr ';' $'\n' \
| grep "\.\.\." \
| cut -d' ' -f2 \
| sed -e "s/^/${1:-}./" \
| sort
}
summ() {
repl "${1:-}" \
| tr ' ' $'\n' \
| sort \
| uniq
}
deep_summ() {
suff="${1:-}"
depth="${2:-4}"
depth=$((depth - 1))
summ "$suff"
for attr in $(attrs_to_check "$suff" | grep -v "types.types"); do
if [ $depth -eq 0 ]; then
summ "$attr" | sed -e "s/^/$attr./"
else
deep_summ "$attr" "$depth" | sed -e "s/^/$attr./"
fi
done
}
(
cd nixpkgs
#git add .
#git commit -m "Auto-commit, sorry" || true
git checkout fixed-lib
deep_summ > ../fixed-lib
git checkout master
deep_summ > ../master
)
if diff master fixed-lib; then
echo "SHALLOW MATCH!"
fi
(
cd nixpkgs
git checkout fixed-lib
repl .types
)
|
| |
| |
| |
| | |
Vendor needed to be made valid
|
|/ |
|
| |
|
|
|
|
|
| |
The "l" suffix presumably indicates it is little-endian, which it
is.
|
|
This is good for maintenance and education.
|