summary refs log tree commit diff
path: root/pkgs/stdenv/nix
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2017-09-20 11:07:52 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2017-09-26 14:08:21 -0400
commitd349f9a34006cc484b5e7509a3f227d52d6e2a5d (patch)
tree69d187767ba311e275115b767680081c2b9b5f96 /pkgs/stdenv/nix
parent0d3d2a01d20d88dde3696ead43c557c1f3043ee7 (diff)
downloadnixpkgs-d349f9a34006cc484b5e7509a3f227d52d6e2a5d.tar
nixpkgs-d349f9a34006cc484b5e7509a3f227d52d6e2a5d.tar.gz
nixpkgs-d349f9a34006cc484b5e7509a3f227d52d6e2a5d.tar.bz2
nixpkgs-d349f9a34006cc484b5e7509a3f227d52d6e2a5d.tar.lz
nixpkgs-d349f9a34006cc484b5e7509a3f227d52d6e2a5d.tar.xz
nixpkgs-d349f9a34006cc484b5e7509a3f227d52d6e2a5d.tar.zst
nixpkgs-d349f9a34006cc484b5e7509a3f227d52d6e2a5d.zip
cc-wrapper: Use stdenvNoCC to build
cc-wrapper may wrap a cc-compiler, but it doesn't need one to build
itself. (c.f. expand-response-params is a separate derivation.) This
helps avoid cycles on the cross stuff, in addition to removing a
useless dependency edge.

I could have been super careful with overrides in the stdenv to avoid
the mass rebuild, but I don't think it's worth it.
Diffstat (limited to 'pkgs/stdenv/nix')
-rw-r--r--pkgs/stdenv/nix/default.nix13
1 files changed, 5 insertions, 8 deletions
diff --git a/pkgs/stdenv/nix/default.nix b/pkgs/stdenv/nix/default.nix
index c736442dc0a..ffff8bdf51d 100644
--- a/pkgs/stdenv/nix/default.nix
+++ b/pkgs/stdenv/nix/default.nix
@@ -1,5 +1,5 @@
 { lib
-, crossSystem, config
+, crossSystem, config, overlays
 , bootStages
 , ...
 }:
@@ -7,9 +7,7 @@
 assert crossSystem == null;
 
 bootStages ++ [
-  (prevStage: let
-    inherit (prevStage) stdenv;
-  in {
+  (prevStage: {
     inherit config overlays;
 
     stdenv = import ../generic rec {
@@ -27,10 +25,9 @@ bootStages ++ [
 
       cc = import ../../build-support/cc-wrapper {
         nativeTools = false;
-        nativePrefix = stdenv.lib.optionalString hostPlatform.isSunOS "/usr";
+        nativePrefix = lib.optionalString hostPlatform.isSunOS "/usr";
         nativeLibc = true;
-        inherit stdenv;
-        inherit (prevStage) binutils coreutils gnugrep;
+        inherit (prevStage) stdenvNoCC binutils coreutils gnugrep;
         cc = prevStage.gcc.cc;
         isGNU = true;
         shell = prevStage.bash + "/bin/sh";
@@ -38,7 +35,7 @@ bootStages ++ [
 
       shell = prevStage.bash + "/bin/sh";
 
-      fetchurlBoot = stdenv.fetchurlBoot;
+      fetchurlBoot = prevStage.stdenv.fetchurlBoot;
 
       overrides = self: super: {
         inherit cc;