From f684c917a6c3919e8dff6b79f317da8ad148e44b Mon Sep 17 00:00:00 2001 From: John Ericson Date: Fri, 23 Apr 2021 21:47:28 +0000 Subject: [PATCH] stdenvNoCC: Fix `hasCC` attr during cross, remove `noCC` `hasCC` was getting overridden in the cross bootstrapping (for GHCJS), which preventing the default logic from re-triggering for `stdenvNoCC`. Also remove `stdenv.noCC` which is obseleted by `stdenv.hasCC`. --- pkgs/stdenv/generic/make-derivation.nix | 2 +- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix index 74609412782c..4fc58238e5e3 100644 --- a/pkgs/stdenv/generic/make-derivation.nix +++ b/pkgs/stdenv/generic/make-derivation.nix @@ -104,7 +104,7 @@ in rec { ++ depsHostHost ++ depsHostHostPropagated ++ buildInputs ++ propagatedBuildInputs ++ depsTargetTarget ++ depsTargetTargetPropagated) == 0; - dontAddHostSuffix = attrs ? outputHash && !noNonNativeDeps || (stdenv.noCC or false); + dontAddHostSuffix = attrs ? outputHash && !noNonNativeDeps || !stdenv.hasCC; supportedHardeningFlags = [ "fortify" "stackprotector" "pie" "pic" "strictoverflow" "format" "relro" "bindnow" ]; # Musl-based platforms will keep "pie", other platforms will not. defaultHardeningFlags = if stdenv.hostPlatform.isMusl && diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7ef9f066a99d..5740ce520952 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30,7 +30,7 @@ in # just the plain stdenv. stdenv_32bit = lowPrio (if stdenv.hostPlatform.is32bit then stdenv else multiStdenv); - stdenvNoCC = stdenv.override { cc = null; extraAttrs.noCC = true; }; + stdenvNoCC = stdenv.override { cc = null; hasCC = false; }; mkStdenvNoLibs = stdenv: let bintools = stdenv.cc.bintools.override {