Skip to content

Commit

Permalink
cc-wrapper, cc-wrapper-old: Simplify shell logic
Browse files Browse the repository at this point in the history
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.
  • Loading branch information
Ericson2314 committed Sep 19, 2017
1 parent 6d423da commit 6c74ee6
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 15 deletions.
7 changes: 2 additions & 5 deletions pkgs/build-support/cc-wrapper/default.nix
Expand Up @@ -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;
Expand Down Expand Up @@ -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 {}) //
Expand Down
10 changes: 2 additions & 8 deletions pkgs/build-support/gcc-wrapper-old/default.nix
Expand Up @@ -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
}:
Expand Down Expand Up @@ -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
Expand Down
4 changes: 2 additions & 2 deletions pkgs/top-level/all-packages.nix
Expand Up @@ -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;
Expand All @@ -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
Expand Down

0 comments on commit 6c74ee6

Please sign in to comment.