about summary refs log tree commit diff
path: root/lib/systems/examples.nix
Commit message (Collapse)AuthorAge
* 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
* 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
| * systems: support TI MSP430 microcontrollersAaron Lindsay2019-03-25
| |
* | netbsd: add cross targetMatthew Bauer2019-02-26
|/
* Initial attempt to restore Android NDK cross buildingSander van der Burg2018-12-18
|
* 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
| * 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.
* | 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.
* systems/examples: add i686 & x86-64 embeddedMatthew Bauer2018-10-30
| | | | Fixes #28160
* 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
* avr: use new compilation infrastructureMatthew Bauer2018-10-29
| | | | | | | | | | Gets rid of: avrbinutils avrgcc to replace with: pkgsCross.avr.buildPackages.binutils pkgsCross.avr.buildPackages.gcc
* 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/.
* [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
* 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
|
* androidndk: Fix usage as crossSystemBastian Köcher2018-05-17
|
* prebuilt android cc: Edit wrapper to pass the right -m flags for armv7aJohn Ericson2018-05-11
|
* Merge pull request #40385 from obsidiansystems/lib-android-platformsJohn Ericson2018-05-11
|\ | | | | lib: Add 32-bit Android platforms
| * lib: Add 32-bit Android platformsJohn Ericson2018-05-11
| |
* | Merge pull request #40378 from obsidiansystems/lib-platform-sortJohn Ericson2018-05-11
|\| | | | | lib/systems: Sort platforms, and space CPUs
| * lib/systems: Sort platforms, and space CPUsJohn Ericson2018-05-11
| |
* | Merge remote-tracking branch 'upstream/master' into lib-floatJohn Ericson2018-05-10
|\ \ | |/ |/|
| * Merge commit '70963b382f3f820ba6d3bc3b3aaf50a2957ec1ff' into ↵John Ericson2018-05-10
| |\ | | | | | | | | | lib-platform-simplify
| | * lib/systems: Fix eval for iphone32* examplesJohn Ericson2018-05-01
| | | | | | | | | | | | Whoops messed up 9a845de873dfcc31f360a08f1b1f786c6f649c7d slightly.
| | * lib/systems: Update iOS examplesJohn Ericson2018-05-01
| | | | | | | | | | | | | | | | | | 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.
* | | lib: Clean up float/fpu optionsJohn Ericson2018-05-10
|/ / | | | | | | | | | | 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.
* | treewide: Get rid of `*Platform.arch`John Ericson2018-05-10
| | | | | | | | Use `parsed.cpu.name` or `platform.gcc.arch` instead.
* | xbursttools: Cleanup slightlyJohn Ericson2018-05-09
|/
* prebuilt android tools: Init using SDKJohn Ericson2018-02-27
| | | | Expose as an option for the cross stdenv.
* lib, treewide: Add missing MIPS arches, and fix existing usageDaniel Barlow2018-02-23
| | | | | | | | | 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
* Add riscv{32,64} crossSystems.Shea Levy2018-02-18
|
* lib/systems: musl, libc predicatesWill Dietz2018-02-11
| | | | | | Note this doesn't actually provide musl support yet, just improves our "system" code to understand musl-based triples and non-glibc linux configurations.
* lib, openssl: Get rid of openssl.systemJohn Ericson2018-01-26
| | | | We compute it on the fly, careful to avoid any mass rebuilds for now.
* lib: Remove examples platforms' `bigEndian` attrJohn Ericson2018-01-26
| | | | They still have `parsed.cpu.significantByte` which has the same info.
* lib, glibc: Get rid of withTLSJohn Ericson2018-01-26
| | | | | | | | | | | | 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
* Merge commit 'ab77a6bb1e7d2ff475210ad392f1a9bd1bb6ba3a' into gcc-simplify-flagsJohn Ericson2017-12-05
|\
| * Convert libs to a fixed-pointGraham Christensen2017-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 )
* | lib: Unbreak pogoplug example platformJohn Ericson2017-12-05
| | | | | | | | Vendor needed to be made valid
* | lib, gcc: No `inherit (platform) gcc;` in {host,build,target}PlatformJohn Ericson2017-12-05
|/
* lib and doc: Use "libSystem" as identifier for that libc in platformsJohn Ericson2017-05-31
|
* cross tests and stdenv: armv5te*l* of sheevaplug explicitJohn Ericson2017-05-29
| | | | | The "l" suffix presumably indicates it is little-endian, which it is.
* lib: Consolidate platform configurations (used for crossSystem)John Ericson2017-05-29
This is good for maintenance and education.