summary refs log tree commit diff
path: root/pkgs/stdenv/linux
diff options
context:
space:
mode:
authorJohn Ericson <Ericson2314@Yahoo.com>2017-02-11 18:15:12 -0500
committerJohn Ericson <Ericson2314@Yahoo.com>2017-04-24 16:31:53 -0400
commit49c99b70cf64ccf99cd292426b3dbcaeb2e885aa (patch)
treedad93fe2a6b15c37cbadf9a378522c8a89bf00b2 /pkgs/stdenv/linux
parenta7068ace35c5344fc2760733d32cca8fd4f01116 (diff)
downloadnixpkgs-49c99b70cf64ccf99cd292426b3dbcaeb2e885aa.tar
nixpkgs-49c99b70cf64ccf99cd292426b3dbcaeb2e885aa.tar.gz
nixpkgs-49c99b70cf64ccf99cd292426b3dbcaeb2e885aa.tar.bz2
nixpkgs-49c99b70cf64ccf99cd292426b3dbcaeb2e885aa.tar.lz
nixpkgs-49c99b70cf64ccf99cd292426b3dbcaeb2e885aa.tar.xz
nixpkgs-49c99b70cf64ccf99cd292426b3dbcaeb2e885aa.tar.zst
nixpkgs-49c99b70cf64ccf99cd292426b3dbcaeb2e885aa.zip
cross-stdenv: Only prune most overrides in the final stage
Before all overrides were also pruned in the previous stage, now
only gcc and binutils are, because they alone care about about the
target platform. The rest of the overrides don't, so it's better to
preserve them in order to avoid spurious rebuilds.
Diffstat (limited to 'pkgs/stdenv/linux')
-rw-r--r--pkgs/stdenv/linux/default.nix8
1 files changed, 5 insertions, 3 deletions
diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix
index fe685a1e77c..3a244675b3a 100644
--- a/pkgs/stdenv/linux/default.nix
+++ b/pkgs/stdenv/linux/default.nix
@@ -298,12 +298,14 @@ in
         */
 
       overrides = self: super: {
-        gcc = cc;
-
         inherit (prevStage)
-          gzip bzip2 xz bash binutils coreutils diffutils findutils gawk
+          gzip bzip2 xz bash coreutils diffutils findutils gawk
           glibc gnumake gnused gnutar gnugrep gnupatch patchelf
           attr acl paxctl zlib pcre;
+      } // lib.optionalAttrs (super.targetPlatform == localSystem) {
+        # Need to get rid of these when cross-compiling.
+        inherit (prevStage) binutils;
+        gcc = cc;
       };
     };
   })