diff options
author | Vladimír Čunát <v@cunat.cz> | 2022-06-01 18:18:07 +0200 |
---|---|---|
committer | Vladimír Čunát <v@cunat.cz> | 2022-06-05 08:59:20 +0200 |
commit | 088b29159d2e14a6e722cdc2a8204af7b3118b76 (patch) | |
tree | e4e85df9ed86c76be8f22a5578f62c71fcad0aa3 /pkgs/stdenv/linux | |
parent | 25fee8ca78a925ee52844943e29bf6f13664b71b (diff) |
libidn2: hack to avoid referencing bootstrap tools
Due to bootstrap tools getting purged from closure of libidn2.dev, a very large rebuild is caused.
Diffstat (limited to 'pkgs/stdenv/linux')
-rw-r--r-- | pkgs/stdenv/linux/default.nix | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 64c21fa105d42..d5b220b8520a7 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -432,8 +432,16 @@ in inherit (prevStage) gzip bzip2 xz bash coreutils diffutils findutils gawk gnumake gnused gnutar gnugrep gnupatch patchelf - attr acl zlib pcre libunistring libidn2; + attr acl zlib pcre libunistring; ${localSystem.libc} = getLibc prevStage; + + # Hack: avoid libidn2.{bin,dev} referencing bootstrap tools. There's a logical cycle. + libidn2 = import ../../development/libraries/libidn2/no-bootstrap-reference.nix { + inherit lib; + inherit (prevStage) libidn2; + inherit (self) stdenv runCommandLocal patchelf libunistring; + }; + } // lib.optionalAttrs (super.stdenv.targetPlatform == localSystem) { # Need to get rid of these when cross-compiling. inherit (prevStage) binutils binutils-unwrapped; |