summary refs log tree commit diff
path: root/lib/systems
Commit message (Collapse)AuthorAge
...
* | treewide: remove unused variables (#63177)volth2019-06-16
| | | | | | | | | | | | * treewide: remove unused variables * making ofborg happy
* | systems: fix lib-testsMatthew Bauer2019-06-04
| | | | | | | | | | These were broken by the added system doubles. This just adds those to the lib-tests.
* | systems: fixup from last commitMatthew Bauer2019-06-04
| | | | | | | | it’s powerpc-none not ppc-none
* | systems: add missing doublesMatthew Bauer2019-06-04
| | | | | | | | | | | | | | | | | | 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
* | Merge pull request #60349 from matthewbauer/fix-60345Matthew Bauer2019-06-04
|\ \ | | | | | | check-meta: use system tuple in platforms
| * | systems: allow passing in string for cross/localSystemMatthew Bauer2019-06-04
| | | | | | | | | | | | | | | | | | 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
| * | systems: remove forMetaMatthew Bauer2019-06-04
| | | | | | | | | | | | This is unused now.
| * | systems: add riscv doubleMatthew Bauer2019-04-30
| | | | | | | | | | | | This was never listed in doubles.nix! Not sure why?
* | | Adds pkgsCross.gnu32 and pkgsCross.gnu64 platformsLionello Lunesu2019-05-05
|/ /
* | Merge pull request #56555 from matthewbauer/wasmMatthew Bauer2019-04-23
|\ \ | | | | | | Initial WebAssembly/WASI cross-compilation support
| * | wasmtime: init and use for emulationMatthew Bauer2019-04-23
| | | | | | | | | | | | | | | This isn’t really an "emulator" but it’s the closest concept we have right now.
| * | wasm: don’t assume muslMatthew Bauer2019-04-23
| | |
| * | wasm: init cross targetMatthew Bauer2019-04-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | cc-wrapper: make machine configuration configurableMatthew Bauer2019-04-20
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | release-cross: remove alpha-elf targetMatthew Bauer2019-04-20
| | | | | | | | | | | | | | | | 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
* | kernel-headers: infer ARCH from config tripleMatthew Bauer2019-04-19
| | | | | | | | | | | | | | 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
* | systems: correct qemu architecturesMatthew Bauer2019-04-19
| | | | | | | | | | | | | | 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.
* | systems: fix emulator identityMatthew Bauer2019-04-19
| | | | | | | | Squashed to fix shell quoting, thanks @Ericson2314
* | systems/parse.nix: fixup arm compatibilitiesMatthew Bauer2019-04-19
| |
* | androidndk-pkgs: Remove -mfloat flagKen Micklas2019-04-16
| |
* | systems: remove android armv5te platformMatthew Bauer2019-04-10
| | | | | | | | this isn’t useful any more because the ndk we use no longer supports it.
* | androidndk: fixup messMatthew Bauer2019-04-10
| | | | | | | | | | | | | | 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.
* | Merge branch 'master' into staging-nextVladimír Čunát2019-04-02
|\ \ | | | | | | | | | Hydra nixpkgs: ?compare=1512490
| * | msp430: include vendor headers with stdenvAaron Lindsay2019-03-25
| | |
| * | systems: support TI MSP430 microcontrollersAaron Lindsay2019-03-25
| | |
* | | Merge staging-next into stagingFrederik Rietdijk2019-03-01
|\| |
| * | cross/tests: add llvm-based testsMatthew Bauer2019-02-26
| | |
| * | Merge pull request #56393 from matthewbauer/is-compatibleMatthew Bauer2019-02-26
| |\ \ | | | | | | | | systems: add isCompatible handling
| | * | systems: add “emultator” for wasmMatthew Bauer2019-02-25
| | | | | | | | | | | | | | | | v8 can run any wasm bytecode
| | * | systems: add isCompatible handlingMatthew Bauer2019-02-21
| | |/
* | | Merge pull request #56197 from matthewbauer/cross-fixes3Matthew Bauer2019-02-26
|\ \ \ | | | | | | | | Android and related cross fixes
| * | | mesa: armv7a-linux supports mesaMatthew Bauer2019-02-24
| |/ /
* / / netbsd: add cross targetMatthew Bauer2019-02-26
|/ /
* / alpha-embedded: isAlpha code Added (#56090)Vincent Weisner2019-02-20
|/ | | Adds isAlpha to stdenv.<platform> flags.
* Merge branch 'master' into staging-nextVladimír Čunát2019-02-01
|\ | | | | | | | | | | | | 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
| * systems/default.nix: wasm in platform.uname.systemMatthew Bauer2019-01-27
| | | | | | This adds the "Wasm" system to platform.uname.system. This is used in CMake infrastructure.
* | add generic x86_32 support (#52634)Daniel Goertzen2019-01-06
|/ | | | | | | | | | | | | | | | * 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
* Merge branch 'master' into staging-nextVladimír Čunát2019-01-05
|\ | | | | | | A few more rebuilds (~1k on x86_64-linux).
| * lib: Fix Mingw on 32-bit ARMJohn Ericson2019-01-04
| |
* | Merge branch 'master' into stagingJan Tojnar2018-12-25
|\|
| * Initial attempt to restore Android NDK cross buildingSander van der Burg2018-12-18
| |
* | platform.emulator: fix non-x86 systemsJörg Thalheim2018-12-12
|/
* systems/parse.nix: support eabihfMatthew Bauer2018-12-02
| | | | | | | | | | | | 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
* Merge pull request #50212 from matthewbauer/host-emulatorMatthew Bauer2018-11-29
|\ | | | | Add "emulator" function to systems
| * treewide: add emulator to platformMatthew Bauer2018-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | You can use stdenv.hostPlatform.emulator to get an executable that runs cross-built binaries. This could be any emulator. For instance, we use QEMU to emulate Linux targets and Wine to emulate Windows targets. To work with qemu, we need to support custom targets. I’ve reworked the cross tests in pkgs/test/cross to use this functionality. Also, I’ve used talloc to cross-execute with the emulator. There appears to be a cross-execute for all waf builds. In the future, it would be nice to set this for all waf builds. Adds stdenv.hostPlatform.qemuArch attrbute to get the qemuArch for each platform.
| * systems/examples.nix: move riscv function to let bindingMatthew Bauer2018-11-29
| | | | | | | | | | Makes it easier to use mapAttrs with lib.systems.examples. Now every entry in it are legitimate systems.
* | systems/parse: add older x86 architecturesMatthew Bauer2018-11-21
| | | | | | | | | | i386, i486, i586 are added. These may have issues as many places assume i686 is the only valid 32 bit x86 architecture.
* | lib/systems: Added missing semicolonsVincent Weisner2018-11-09
| |
* | lib/system: Added Embedded Platforms for the CPUsVincent Weisner2018-11-09
| | | | | | | | 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.
* | Update parse.nixVincent Weisner2018-11-02
| |