summary refs log tree commit diff
path: root/pkgs/stdenv
Commit message (Collapse)AuthorAge
* androidndk: Fix usage as crossSystemBastian Köcher2018-05-17
|
* Merge pull request #40154 from obsidiansystems/stdenv-arm-aliasJohn Ericson2018-05-08
|\ | | | | stdenv: Put back isArm, with deprecation notice.
| * stdenv: Put back isArm, with deprecation notice.John Ericson2018-05-07
| | | | | | | | This was always meant to be deprecated rather than removed.
| * treewide: isArm -> isAarch32John Ericson2018-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following legacy packing conventions, `isArm` was defined just for 32-bit ARM instruction set. This is confusing to non packagers though, because Aarch64 is an ARM instruction set. The official ARM overview for ARMv8[1] is surprisingly not confusing, given the overall state of affairs for ARM naming conventions, and offers us a solution. It divides the nomenclature into three levels: ``` ISA: ARMv8 {-A, -R, -M} / \ Mode: Aarch32 Aarch64 | / \ Encoding: A64 A32 T32 ``` At the top is the overall v8 instruction set archicture. Second are the two modes, defined by bitwidth but differing in other semantics too, and buttom are the encodings, (hopefully?) isomorphic if they encode the same mode. The 32 bit encodings are mostly backwards compatible with previous non-Thumb and Thumb encodings, and if so we can pun the mode names to instead mean "sets of compatable or isomorphic encodings", and then voilà we have nice names for 32-bit and 64-bit arm instruction sets which do not use the word ARM so as to not confused either laymen or experienced ARM packages. [1]: https://developer.arm.com/products/architecture/a-profile (cherry picked from commit ba52ae50488de85a9cf60a3a04f1c9ca7122ec74)
* | check-meta.nix: specify meta.timeoutMichael Raskin2018-04-27
| |
* | treewide: isArm -> isAarch32John Ericson2018-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following legacy packing conventions, `isArm` was defined just for 32-bit ARM instruction set. This is confusing to non packagers though, because Aarch64 is an ARM instruction set. The official ARM overview for ARMv8[1] is surprisingly not confusing, given the overall state of affairs for ARM naming conventions, and offers us a solution. It divides the nomenclature into three levels: ``` ISA: ARMv8 {-A, -R, -M} / \ Mode: Aarch32 Aarch64 | / \ Encoding: A64 A32 T32 ``` At the top is the overall v8 instruction set archicture. Second are the two modes, defined by bitwidth but differing in other semantics too, and buttom are the encodings, (hopefully?) isomorphic if they encode the same mode. The 32 bit encodings are mostly backwards compatible with previous non-Thumb and Thumb encodings, and if so we can pun the mode names to instead mean "sets of compatable or isomorphic encodings", and then voilà we have nice names for 32-bit and 64-bit arm instruction sets which do not use the word ARM so as to not confused either laymen or experienced ARM packages. [1]: https://developer.arm.com/products/architecture/a-profile
* | musl-stdenv: don't add special allowance for libiconvWill Dietz2018-04-25
| |
* | musl bootstrap: remove libiconvWill Dietz2018-04-24
| |
* | Merge pull request #39172 from obsidiansystems/ios-crossJohn Ericson2018-04-19
|\ \ | | | | | | ios-sdk-pkgs: Init from iOS SDK from XCode
| * | ios-sdk-pkgs: Init from iOS SDK from XCodeKen Micklas2018-04-19
| | |
* | | Merge pull request #38485 from obsidiansystems/nixos-nixpkgs-optionsJohn Ericson2018-04-19
|\ \ \ | |/ / |/| | nixpkgs module: Clean up platform options
| * | nixpkgs module: Clean up platform optionsJohn Ericson2018-04-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - `localSystem` is added, it strictly supercedes system - `crossSystem`'s description mentions `localSystem` (and vice versa). - No more weird special casing I don't even understand TEMP
* | | Merge pull request #38932 from svanderburg/cygwin-fixesJohn Ericson2018-04-18
|\ \ \ | | | | | | | | Fix stdenv-native and fix rebasing on cygwin
| * | | Fix invalid Baseaddress must be > 0x200000000 on cygwinSander van der Burg2018-04-14
| | | |
| * | | Fix stdenv-native by creating a bintools wrapper with similar settingsSander van der Burg2018-04-14
| | | |
* | | | Merge pull request #38639 from shlevy/platforms-not-brokenJohn Ericson2018-04-17
|\ \ \ \ | |/ / / |/| | | meta: Don't bypass unsupported platforms with allowBroken.
| * | | meta: Add `NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM` for consistencyJohn Ericson2018-04-17
| | | |
| * | | meta: Don't bypass unsupported platforms with allowBroken.Shea Levy2018-04-17
| |/ / | | | | | | | | | Our platforms are open-world oriented these days, and anyway there's allowUnsupportedSystem.
* / / binutils: No more darwin conditionalsJohn Ericson2018-04-03
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since at least d7bddc27b23da8ce7bc19cfeeeb0cbebdb5a4410, we've had a situation where one should depend on: - `stdenv.cc.bintools`: for executables at build time - `libbfd` or `libiberty`: for those libraries - `targetPackages.cc.bintools`: for exectuables at *run* time - `binutils`: only for specifically GNU Binutils's executables, regardless of the host platform, at run time. and that commit cleaned up this usage to reflect that. This PR flips the switch so that: - `binutils` is indeed unconditionally GNU Binutils - `binutils-raw`, which previously served that role, is gone. so that the correct usage will be enforced going forward and everything is simple. N.B. In a few cases `binutils-unwrapped` (which before and now was unconditionally actual GNU binutils), rather than `binutils` was used to replace old `binutils-raw` as it is friendly towards some cross compilation usage by avoiding a reference to the next bootstrapping change.
* | meta: Simplify platform check logicJohn Ericson2018-03-27
| | | | | | | | Code golf or readability, you decide
* | meta: Add badPlatforms attribute for platform blacklisting.Shea Levy2018-03-27
| |
* | cross stdenv: Make depsBuildBuild overrideable by config too.John Ericson2018-03-20
| |
* | Merge pull request #37395 from obsidiansystems/lib-meta-platformJohn Ericson2018-03-19
|\| | | | | lib: Factor in tiny bit of `meta.platform` checking
| * lib: Factor in tiny bit of `meta.platform` checkingJohn Ericson2018-03-19
| | | | | | | | I need it in stdenv and release-lib, so that seems motivation enough.
* | Merge pull request #34444 from obsidiansystems/meta-checkJohn Ericson2018-03-18
|\| | | | | lib: Fix #30902
| * lib, stdenv: Check `meta.platforms` against host platform and be open worldJohn Ericson2018-03-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First, we need check against the host platform, not the build platform. That's simple enough. Second, we move away from exahustive finite case analysis (i.e. exhaustively listing all platforms the package builds on). That only work in a closed-world setting, where we know all platforms we might build one. But with cross compilation, we may be building for arbitrary platforms, So we need fancier filters. This is the closed world to open world change. The solution is instead of having a list of systems (strings in the form "foo-bar"), we have a list of of systems or "patterns", i.e. attributes that partially match the output of the parsers in `lib.systems.parse`. The "check meta" logic treats the systems strings as an exact whitelist just as before, but treats the patterns as a fuzzy whitelist, intersecting the actual `hostPlatform` with the pattern and then checking for equality. (This is done using `matchAttrs`). The default convenience lists for `meta.platforms` are now changed to be lists of patterns (usually a single pattern) in `lib/systems/for-meta.nix` for maximum flexibility under this new system. Fixes #30902
| * stdenv: Clean up check meta argsJohn Ericson2018-03-14
| |
* | Merge branch 'master' into stagingJan Malakhovski2018-03-10
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolved the following conflicts (by carefully applying patches from the both branches since the fork point): pkgs/development/libraries/epoxy/default.nix pkgs/development/libraries/gtk+/3.x.nix pkgs/development/python-modules/asgiref/default.nix pkgs/development/python-modules/daphne/default.nix pkgs/os-specific/linux/systemd/default.nix
| * | stdenv: check-meta: fix fallout from #36119Jan Malakhovski2018-03-06
| | |
| * | make-bootstrap-tools: preserve coreutils symlinksWill Dietz2018-03-06
| |/ | | | | | | | | | | We go out of our way (see top of file) to build a single binary with symlinks for all of the tools, but were losing them when preparing the bootstrap tools.
* | Merge pull request #36401 from obsidiansystems/no-stdenv-cross-adapterJohn Ericson2018-03-06
|\ \ | | | | | | stdenv cross adapter: Get rid if `selfNativeBuildInput`
| * | stdenv cross adapter: Get rid if `selfNativeBuildInput`John Ericson2018-03-06
| | | | | | | | | | | | | | | | | | It is finally no longer used anywhere Fixes #30587
* | | Merge remote-tracking branch 'upstream/master' into stagingTuomas Tynkkynen2018-02-28
|\ \ \ | | |/ | |/| | | | | | | | | | | | | Conflicts: pkgs/applications/misc/pytrainer/default.nix pkgs/development/tools/pew/default.nix pkgs/tools/misc/you-get/default.nix
| * | prebuilt android tools: Init using SDKJohn Ericson2018-02-27
| | | | | | | | | | | | Expose as an option for the cross stdenv.
| * | Merge pull request #35247 from telent/mips32John Ericson2018-02-27
| |\ \ | | |/ | |/| lib, treewide: Add missing MIPS arches, and fix existing usage
| | * 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
* | | Merge pull request #35071 from oxij/stdenv/infopagesJohn Ericson2018-02-26
|\ \ \ | |/ / |/| | stdenv, bash: fixing info pages and stuff
| * | stdenv: darwin: give distinct names to all the stagesJan Malakhovski2018-02-26
| | |
| * | stdenv: linux: give distinct names to all the stagesJan Malakhovski2018-02-26
| | | | | | | | | | | | Mainly for debugging.
| * | stdenv: linux, darwin: don't build documentation for the the intermediate stagesJan Malakhovski2018-02-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | For the cc of the intermediate stages, to be precise. Doing the same for bintools requires lots of refactoring. This is mainly for the future extensibility as now you can change documentation generation with impunity without rebuilding the whole of stdenv.
* | | libgcrypt: Fix cross-compilationShea Levy2018-02-24
| | |
* | | Merge branch 'master' into stagingVladimír Čunát2018-02-20
|\ \ \ | | |/ | |/| | | | Larger rebuilds from master.
| * | Merge pull request #35111 from oxij/stdenv/available-evaluatesMichael Raskin2018-02-19
| |\ \ | | | | | | | | stdenv.mkDerivation: rename `meta.evaluates` -> `meta.available`
| | * | stdenv.mkDerivation: rename `meta.evaluates` -> `meta.available`Jan Malakhovski2018-02-18
| | | | | | | | | | | | | | | | A much better name.
| * | | Merge pull request #35110 from oxij/pkgs/pretty-fetchurlMichael Raskin2018-02-19
| |\ \ \ | | | | | | | | | | fetchurl: cleanup, better errors
| | * | | fetchurl: cleanup, better errorsJan Malakhovski2018-02-18
| | |/ / | | | | | | | | | | | | Also fix what seems like bugs in uncommon `stdenv`s.
* | | | Merge branch 'staging' into gcc-7Vladimír Čunát2018-02-19
|\ \ \ \ | | | | | | | | | | | | | | | I'm betting Hydra resources on gcc-7 getting to master before current staging.
| * | | | Merge remote-tracking branch 'origin/master' into stagingShea Levy2018-02-18
| |\| | | | | |_|/ | |/| |
| * | | Handle sourceRoots with leading dashesShea Levy2018-02-15
| | |/ | |/|
* | | Merge branch 'master' into gcc-7Shea Levy2018-02-18
|\ \ \ | | |/ | |/|