about summary refs log tree commit diff
path: root/lib/systems
Commit message (Collapse)AuthorAge
* 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
| |
* | CPU FixJörg Thalheim2018-11-01
| | | | | | Co-Authored-By: vincrusher <vincentweisner@icloud.com>
* | Update parse.nixVincent Weisner2018-11-01
|/
* Merge pull request #49567 from obsidiansystems/arm-auto-detectJohn Ericson2018-10-31
|\ | | | | lib.systems.platforms: Add more ARM autodetection
| * lib.systems.platforms: Add more ARM autodetectionJohn Ericson2018-10-31
| |
* | systems/examples: add i686 & x86-64 embeddedMatthew Bauer2018-10-30
| | | | | | | | Fixes #28160
* | systems/parse.nix: support weird system configsMatthew Bauer2018-10-29
| | | | | | | | | | | | | | | | There are some weird ones out there that don’t follow any pattern: - arm-none-eabi - powerpc-none-eabi - aarch64-none-elf
* | gcc: support avrMatthew Bauer2018-10-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* | systems: add avrlibc for avr systemsMatthew Bauer2018-10-29
| |
* | avr: use new compilation infrastructureMatthew Bauer2018-10-29
| | | | | | | | | | | | | | | | | | | | Gets rid of: avrbinutils avrgcc to replace with: pkgsCross.avr.buildPackages.binutils pkgsCross.avr.buildPackages.gcc
* | tests/systems.nix: fix testsMatthew Bauer2018-10-18
| | | | | | | | these weren’t being run correctly
* | Correctly set windows doublesMatthew Bauer2018-10-17
| | | | | | | | mingw is the toolchain name but it is actually run on a window kernel
* | lib/systems: use lookup for uname.systemMatthew Bauer2018-10-17
| | | | | | | | This is a little bit cleaner and avoids the if ... else if ... chain.
* | systems/doubles.nix: add mingw doublesMatthew Bauer2018-10-16
| | | | | | | | this makes it easier to show what supports windows vs. unix.
* | lib/systems: add uname attrsMatthew Bauer2018-10-16
| |
* | lib/systems: use correct config for armv7l-hf-multiplatformBen Wolsieffer2018-10-06
|/
* androidndk: Add Darwin supportJohn Ericson2018-09-17
| | | | | Also switch Linux to using the official sha1 hashes for consistency. They are gotten from https://developer.android.com/ndk/downloads/.
* hurd: cleanup unmaintained targetJörg Thalheim2018-08-28
| | | | | | This has been not touched in 6 years. Let's remove it to cause less problems when adding new cross-compiling infrastructure. This also simplify gcc significantly.
* [RFC] ppc64le enablement (#45340)CrystalGamma2018-08-21
| | | | | | | | | | | | | | | | * 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
* systems: fix netbsd triple parsingMatthew Bauer2018-07-28
| | | | | | | | binutils expects x86_64-unknown-netbsd<version> (only 3 parts!). Any other combo seems to fail. Also handle darwin versions similarly. /cc @Ericson2314
* systems: Allow detection of powerpc and sparcJohn Q Crosscompiler2018-07-26
|
* xcode: add xcodePlatform to systemMatthew Bauer2018-06-25
| | | | | This give us a little bit more control over what target we are using. Eventually we can target other things like WatchOS or MacOS.
* xcode: add xcodeVer to systemMatthew Bauer2018-06-25
| | | | | This version number controls which xcode version to use when building cross to iOS.
* android: add ndkVer to resolve ndk ambiguityMatthew Bauer2018-06-22
| | | | | | | | 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
* android: Use NDK 17 for aarch32Matthew Bauer2018-06-22
|
* platforms/raspberrypi: enable kernelAutoModulesBen Wolsieffer2018-06-12
|
* Merge branch 'plat-fix-for-merge-2' into masterTuomas Tynkkynen2018-06-01
|\
| * platforms.nix: More rpi2 cleanupTuomas Tynkkynen2018-05-31
| |
| * platforms.nix: Clean up obsolete cruft from raspberrypi2Tuomas Tynkkynen2018-05-31
| |
| * platforms.nix: Clean up obsolete cruft from raspberrypiTuomas Tynkkynen2018-05-31
| | | | | | | | | | Works fine without, and the 'DRM n' is actually preventing the mainline VC4 driver from building.
| * linux_rpi: Specify defconfig in kernel expressionTuomas Tynkkynen2018-05-31
| | | | | | | | | | | | | | In particular, now the mainline kernel can be built on the RPi 1 as well (so kernelBaseConfig should always be a mainline defconfig from now on). And RPi 2 users can now use linux_rpi without doing the `nixpkgs.config.platform = lib.systems.platforms.raspberrypi2;` dance.
* | lib: Fix `nix-env -qaP -f . --xml --meta`John Ericson2018-05-29
| | | | | | | | A merge undid my fix in d437f2c365a12fb3894eb87f52decf53c745f475.
* | Merge branch 'master' into stagingJan Malakhovski2018-05-26
|\ \ | | | | | | | | | | | | | | | Fixed conflicts: - lib/systems/for-meta.nix: in favor of staging - pkgs/os-specific/darwin/xcode/default.nix: in favor of master
| * | lib: Fix `nix-env -qaP -f . --xml --meta`John Ericson2018-05-24
| |/ | | | | | | | | The function value cannot be serialized so nix-env was mad. Turns out we can just remove it like we do in `lib/systems/inspect.nix`.