summary refs log tree commit diff
path: root/lib/systems/examples.nix
Commit message (Collapse)AuthorAge
* 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.