Emery Hemingway
ccedb29f4b
Define a i686-genode system double
2020-08-04 18:08:56 +02:00
Aaron Janse
60fd049b65
redox: add as target
2020-07-21 13:11:36 -07:00
Emery Hemingway
9f91fa02a6
lib/systems: Add Genode platform definitions
...
Add platform definitions for 64-bit ARM and x86. This is sufficient for
for building Genode where a toolchain is provided as an overlay.
Toolchain: git+https://git.sr.ht/~ehmry/genodepkgs?rev=14fc773ac9ecd2cbb30cb4612b284eee83d83546
2020-03-24 20:41:21 +05:30
John Ericson
00afca0929
lib: Add armv6l-none to doubles list
2020-03-12 09:56:17 -04:00
Matthew Bauer
acb24b4cc4
lib/systems: Assume newlib when no kernel and no libc is provided
...
newlib is the default for most tools when no kernel is provided. Other
exist, but this seems like a safe default.
(cherry picked from commit 8009c20711
)
2020-03-12 02:22:19 -04:00
Chuck
5d4821141b
stdenv: Remove isArm (use isAarch32 instead)
...
isArm has been deprecated for three releases. All references have been
removed. Tree-wide substitution was performed in #37401 21 months ago.
2020-02-05 10:56:14 -08:00
Chuck
a7835b936e
lib.systems.elaborate: isArm -> isAarch32
...
This is the last reference to isArm. isArm is deprecated after 18.03.
This substitution was performed tree-wide in #37401 .
2020-02-05 10:56:14 -08:00
Matthew Bauer
9c1a2ac51e
Merge remote-tracking branch 'origin/master' into ios-with-xcode-11
2020-01-03 15:34:20 -05:00
Matthew Bauer
010d2f4aa2
lib/systems: use newer ios sdk
2020-01-03 15:20:54 -05:00
John Ericson
80524db331
Merge branch 'ghcjs-cross-without-cc-19.09' into ghcjs-cross-without-cc
2019-11-25 14:11:18 +00:00
John Ericson
765d2608b6
Fix lib tests
...
js-ghcjs didn't fit in an existing categor.
2019-11-25 14:09:50 +00:00
John Ericson
6bc456c91c
Merge remote-tracking branch 'upstream/master' into ghcjs-cross-without-cc
2019-11-25 00:23:07 +00:00
John Ericson
c739c420db
Add support for cross compiling to js-ghcjs
...
This platform doesn't have a C compiler, and so relies and the changes
in the previous commit to work.
2019-11-25 00:12:38 +00:00
Michael Bishop
4aa1ffae04
initial implementation of vc4 cross-compile
2019-11-19 22:19:15 -04:00
John Ericson
16f0fe7fe3
Merge remote-tracking branch 'upstream/master' into mingw-mcfthreads
2019-11-11 20:48:14 -05:00
John Ericson
91718534f1
lib: Switch to w64 vendor for MinGW
...
It is needed for the `-municode` flag, supposedly.
2019-11-11 00:25:24 -05:00
oxalica
c98da73802
lib.systems: remove redundant mapping
2019-11-04 12:13:30 +08:00
oxalica
955d032b47
lib.systems: handle mips family properly
2019-11-03 22:10:06 +08:00
John Ericson
3098d65210
lib: Add armv7a-linux to doubles.nix
...
This is needed for android.
2019-10-01 12:51:57 -04:00
Vladimír Čunát
f21211ebfe
Merge branch 'master' into staging
2019-09-02 23:25:24 +02:00
John Ericson
c2b34b2b57
Merge remote-tracking branch 'upstream/master' into js-unknown-ghcjs
2019-09-02 01:57:01 -04:00
John Ericson
a77a2cfe4a
lib: Further clean up systems list
2019-09-02 01:55:38 -04:00
John Ericson
f57fe63d5f
Merge lib sort into feature/js-unknown-ghcjs
2019-09-02 01:44:30 -04:00
John Ericson
3d8cf08706
lib: Sort platform predicates
2019-09-02 01:38:22 -04:00
John Ericson
c33d80c071
Merge remote-tracking branch 'upstream/master' into feature/js-unknown-ghcjs
2019-09-02 01:31:31 -04:00
Moritz Angermann
446f8c851d
Add support for js-unknown-ghcjs
...
This adds enough logic to nixpkgs to support the `js-unknown-ghcjs` triple.
2019-09-02 01:27:05 -04:00
volth
08f68313a4
treewide: remove redundant rec
2019-08-28 11:07:32 +00:00
volth
35d68ef143
treewide: remove redundant quotes
2019-08-26 21:40:19 +00:00
Jay Kruer
e931a525f9
Add RISC-V embedded crossSystems
2019-07-25 21:45:11 -07:00
Matthew Bauer
d059185bad
Revert "Revert "systems/doubles.nix: add Apple doubles""
...
This reverts commit ce2f74df2c
.
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.
2019-07-10 15:14:59 -04:00
Frederik Rietdijk
ce2f74df2c
Revert "systems/doubles.nix: add Apple doubles"
...
The lib tests need to be fixed as well.
This unbreaks the tarball job.
This reverts commit 00ba557856
.
2019-07-10 12:37:06 +02:00
Matthew Bauer
00ba557856
systems/doubles.nix: add Apple doubles
...
These are used in cross-compilation to iOS devices and simulators.
Fallout from #60349 .
2019-07-08 12:33:16 -04:00
volth
f3282c8d1e
treewide: remove unused variables ( #63177 )
...
* treewide: remove unused variables
* making ofborg happy
2019-06-16 19:59:05 +00:00
Matthew Bauer
0fef9f89e4
systems: fix lib-tests
...
These were broken by the added system doubles. This just adds those to
the lib-tests.
2019-06-04 14:51:33 -04:00
Matthew Bauer
de70b76779
systems: fixup from last commit
...
it’s powerpc-none not ppc-none
2019-06-04 13:42:14 -04:00
Matthew Bauer
f7c7207a3f
systems: add missing doubles
...
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
2019-06-04 13:34:40 -04:00
Matthew Bauer
760c9995b0
Merge pull request #60349 from matthewbauer/fix-60345
...
check-meta: use system tuple in platforms
2019-06-04 11:29:48 -04:00
Matthew Bauer
635b762569
systems: allow passing in string for cross/localSystem
...
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
2019-06-04 11:17:25 -04:00
Matthew Bauer
40271ae138
systems: remove forMeta
...
This is unused now.
2019-06-04 11:09:43 -04:00
Lionello Lunesu
fb147b07ad
Adds pkgsCross.gnu32 and pkgsCross.gnu64 platforms
2019-05-05 15:24:10 +08:00
Matthew Bauer
e500bb8409
systems: add riscv double
...
This was never listed in doubles.nix! Not sure why?
2019-04-30 12:59:38 -04:00
Matthew Bauer
7488a367af
Merge pull request #56555 from matthewbauer/wasm
...
Initial WebAssembly/WASI cross-compilation support
2019-04-23 22:44:33 -04:00
Matthew Bauer
dbb94b984f
wasmtime: init and use for emulation
...
This isn’t really an "emulator" but it’s the closest concept we have
right now.
2019-04-23 21:48:57 -04:00
Matthew Bauer
d591a109be
wasm: don’t assume musl
2019-04-23 21:48:57 -04:00
Matthew Bauer
9abff4af4f
wasm: init cross target
...
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.
2019-04-23 21:48:57 -04:00
Matthew Bauer
d180cb9850
cc-wrapper: make machine configuration configurable
...
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
2019-04-20 20:05:51 -04:00
Matthew Bauer
ae50241871
release-cross: remove alpha-elf target
...
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
2019-04-20 17:22:52 -04:00
Matthew Bauer
d8934feba1
kernel-headers: infer ARCH from config triple
...
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
2019-04-19 14:53:48 -04:00
Matthew Bauer
5eea658778
systems: correct qemu architectures
...
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.
2019-04-19 12:03:56 -04:00
Matthew Bauer
23560ea057
systems: fix emulator identity
...
Squashed to fix shell quoting, thanks @Ericson2314
2019-04-19 12:03:44 -04:00