Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
This adds enough logic to nixpkgs to support the `js-unknown-ghcjs` triple.
|
|
|
|
|
|
|
|
This reverts commit ce2f74df2cade57e74c235292c8b074281903e71.
Doubles are treated as -darwin here, to provide some consistency.
There is some ambiguity between “x86_64-darwin” and “i686-darwin”
which could refer to binaries linked between iOS simulator or real
macOS binaries. useiOSPrebuilt can be used to determine which to use,
however.
|
|
The lib tests need to be fixed as well.
This unbreaks the tarball job.
This reverts commit 00ba557856d6217121e50ea69c251e9458d9dc08.
|
|
These are used in cross-compilation to iOS devices and simulators.
Fallout from #60349.
|
|
* treewide: remove unused variables
* making ofborg happy
|
|
These were broken by the added system doubles. This just adds those to
the lib-tests.
|
|
it’s powerpc-none not ppc-none
|
|
in https://github.com/NixOS/nixpkgs/pull/60349, the attr handling was
removed. This means we rely on these double values for determing what
we are compatible with. This adds some of the missing doubles to this
list.
https://hydra.nixos.org/eval/1523389#tabs-removed
|
|
check-meta: use system tuple in platforms
|
|
This makes things a little bit more convenient. Just pass in like:
$ nix-build ’<nixpkgs>’ -A hello --argstr localSystem x86_64-linux --argstr crossSystem aarch64-linux
|
|
This is unused now.
|
|
|
|
This was never listed in doubles.nix! Not sure why?
|
|
Initial WebAssembly/WASI cross-compilation support
|
|
This isn’t really an "emulator" but it’s the closest concept we have
right now.
|
|
|
|
Adds pkgsCross.wasm32 and pkgsCross.wasm64. Use it to build Nixpkgs
with a WebAssembly toolchain.
stdenv/cross: use static overlay on isWasm
isWasm doesn’t make sense dynamically linked.
|
|
It is useful to make these dynamic and not bake them into gcc. This
means we don’t have to rebuild gcc to change these values. Instead, we
will pass cflags to gcc based on platform values. This was already
done hackily for android gcc (which is multi-target), but not for our
own gccs which are single target.
To accomplish this, we need to add a few things:
- add ‘arch’ to cpu
- add NIX_CFLAGS_COMPILE_BEFORE flag (goes before args)
- set -march everywhere
- set mcpu, mfpu, mmode, and mtune based on targetPlatform.gcc flags
cc-wrapper: only set -march when it is in the cpu type
Some architectures don’t have a good mapping of -march. For instance
POWER architecture doesn’t support the -march flag at all!
https://gcc.gnu.org/onlinedocs/gcc/RS_002f6000-and-PowerPC-Options.html#RS_002f6000-and-PowerPC-Options
|
|
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
|
|
This makes us less reliant on the systems/examples.nix. You should be
able to cross compile with just your triple:
$ nix build --arg crossSystem '{ config = "armv6l-unknown-linux-gnueabi"; }' stdenv
|
|
ppc64le and ppc64 are different targets in the configure script. We
can’t use the same one.
TODO: canonicalize similar ones based on qemu’s configure script.
|
|
Squashed to fix shell quoting, thanks @Ericson2314
|
|
|
|
|
|
this isn’t useful any more because the ndk we use no longer supports it.
|
|
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
|
|
|
|
|
|
|
|
Android and related cross fixes
|
|
|
|
systems: add isCompatible handling
|
|
|
|
v8 can run any wasm bytecode
|
|
|
|
|
|
Adds isAlpha to stdenv.<platform> flags.
|
|
Comments on conflicts:
- llvm: d6f401e1 vs. 469ecc70 - docs for 6 and 7 say the default is
to build all targets, so we should be fine
- some pypi hashes: they were equivalent, just base16 vs. base32
|
|
This adds the "Wasm" system to platform.uname.system. This is used in CMake infrastructure.
|
|
* add generic x86_32 support
- Add support for i386-i586.
- Add `isx86_32` predicate that can replace most uses of `isi686`.
- `isi686` is reinterpreted to mean "exactly i686 arch, and not say i585 or i386".
- This branch was used to build working i586 kernel running on i586 hardware.
* revert `isi[345]86`, remove dead code
- Remove changes to dead code in `doubles.nix` and `for-meta.nix`.
- Remove `isi[345]86` predicates since other cpu families don't have specific model predicates.
* remove i386-linux since linux not supported on that cpu
|