diff options
author | John Ericson <John.Ericson@Obsidian.Systems> | 2017-09-18 21:12:23 -0400 |
---|---|---|
committer | John Ericson <John.Ericson@Obsidian.Systems> | 2017-09-19 16:45:24 -0400 |
commit | 6c74ee68b9d985a9a5b26eb9e6ee1bfc06283bee (patch) | |
tree | 812917bd5e9d73d60b87768dc103e0bbb49a185f /pkgs | |
parent | 6d423da7cc696f6a307dca72ca9634ac1ee0ecc4 (diff) | |
download | nixlib-6c74ee68b9d985a9a5b26eb9e6ee1bfc06283bee.tar nixlib-6c74ee68b9d985a9a5b26eb9e6ee1bfc06283bee.tar.gz nixlib-6c74ee68b9d985a9a5b26eb9e6ee1bfc06283bee.tar.bz2 nixlib-6c74ee68b9d985a9a5b26eb9e6ee1bfc06283bee.tar.lz nixlib-6c74ee68b9d985a9a5b26eb9e6ee1bfc06283bee.tar.xz nixlib-6c74ee68b9d985a9a5b26eb9e6ee1bfc06283bee.tar.zst nixlib-6c74ee68b9d985a9a5b26eb9e6ee1bfc06283bee.zip |
cc-wrapper, cc-wrapper-old: Simplify shell logic
1. `crossDrv` is now the default so we don't need to worry about that in build != host builds. 2. shell is the build time shell, so `wrapCCCross` doesn't need to worry, as build == host. 3. `shell.shellPath` will always be appended where useful. 4. Complicated `shell == ""` logic served no purpose.
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/build-support/cc-wrapper/default.nix | 7 | ||||
-rw-r--r-- | pkgs/build-support/gcc-wrapper-old/default.nix | 10 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 4 |
3 files changed, 6 insertions, 15 deletions
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix index 999faf756ed4..866be9cded9e 100644 --- a/pkgs/build-support/cc-wrapper/default.nix +++ b/pkgs/build-support/cc-wrapper/default.nix @@ -86,7 +86,8 @@ stdenv.mkDerivation { preferLocalBuild = true; - inherit cc shell libc_bin libc_dev libc_lib binutils_bin coreutils_bin; + inherit cc libc_bin libc_dev libc_lib binutils_bin coreutils_bin; + shell = getBin shell + shell.shellPath or ""; gnugrep_bin = if nativeTools then "" else gnugrep; binPrefix = prefix; @@ -384,10 +385,6 @@ stdenv.mkDerivation { # for substitution in utils.sh expandResponseParams = "${expand-response-params}/bin/expand-response-params"; - crossAttrs = { - shell = shell.crossDrv + shell.crossDrv.shellPath; - }; - meta = let cc_ = if cc != null then cc else {}; in (if cc_ ? meta then removeAttrs cc.meta ["priority"] else {}) // diff --git a/pkgs/build-support/gcc-wrapper-old/default.nix b/pkgs/build-support/gcc-wrapper-old/default.nix index 8d28879fb06f..ae17989d932b 100644 --- a/pkgs/build-support/gcc-wrapper-old/default.nix +++ b/pkgs/build-support/gcc-wrapper-old/default.nix @@ -6,7 +6,7 @@ # variables so that the compiler and the linker just "work". { name ? "", stdenv, lib, nativeTools, nativeLibc, nativePrefix ? "" -, gcc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? "" +, gcc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? stdenv.shell , zlib ? null , hostPlatform, targetPlatform }: @@ -56,15 +56,9 @@ stdenv.mkDerivation { langAda = if nativeTools then false else gcc ? langAda && gcc.langAda; langVhdl = if nativeTools then false else gcc ? langVhdl && gcc.langVhdl; zlib = if gcc != null && gcc ? langVhdl then zlib else null; - shell = if shell == "" then stdenv.shell else - if builtins.isAttrs shell then (shell + shell.shellPath) - else shell; + shell = shell + shell.shellPath or ""; crossAttrs = { - shell = shell.crossDrv + shell.crossDrv.shellPath; - coreutils = coreutils.crossDrv; - binutils = binutils.crossDrv; - gcc = gcc.crossDrv; # # This is not the best way to do this. I think the reference should be # the style in the gcc-cross-wrapper, but to keep a stable stdenv now I diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5418ddc002f8..068fa3230d63 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6230,7 +6230,7 @@ with pkgs; }; wrapCCCross = - {cc, libc, binutils, shell ? "", name ? "gcc-cross-wrapper"}: + {cc, libc, binutils, name ? "gcc-cross-wrapper"}: forcedNativePackages.ccWrapperFun { nativeTools = false; @@ -6240,7 +6240,7 @@ with pkgs; isGNU = cc.isGNU or false; isClang = cc.isClang or false; - inherit cc binutils libc shell name; + inherit cc binutils libc name; }; # prolog |