diff --git a/pkgs/development/compilers/gcc/patches/default.nix b/pkgs/development/compilers/gcc/patches/default.nix index 619b3a922f31..2c0fa1b40852 100644 --- a/pkgs/development/compilers/gcc/patches/default.nix +++ b/pkgs/development/compilers/gcc/patches/default.nix @@ -224,7 +224,7 @@ in .${majorVersion} or [ ] ) -++ optional (targetPlatform.isWindows || targetPlatform.isCygwin) (fetchpatch { +++ optional targetPlatform.isCygwin (fetchpatch { name = "libstdc-fix-compilation-in-freestanding-win32.patch"; url = "https://inbox.sourceware.org/gcc-patches/20250922182808.2599390-2-corngood@gmail.com/raw"; hash = "sha256-+EYW9lG8CviVX7RyNHp+iX+8BRHUjt5b07k940khbbY="; diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix index 8c291ccf4920..bbd4c0a14f65 100644 --- a/pkgs/stdenv/generic/make-derivation.nix +++ b/pkgs/stdenv/generic/make-derivation.nix @@ -706,14 +706,19 @@ let __propagatedImpureHostDeps = computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps; } ) - // optionalAttrs (isWindows || isCygwin) { - allowedImpureDLLs = - allowedImpureDLLs - ++ lib.optionals isCygwin [ - "KERNEL32.dll" - "cygwin1.dll" - ]; - } + // optionalAttrs (isWindows || isCygwin) ( + let + dlls = + allowedImpureDLLs + ++ lib.optionals isCygwin [ + "KERNEL32.dll" + "cygwin1.dll" + ]; + in + { + allowedImpureDLLs = if dlls != [ ] then dlls else null; + } + ) // ( if !__structuredAttrs then makeOutputChecks attrs