From ad38102a672675f1959ff4f9e3c01489b372e920 Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Sun, 31 Mar 2024 11:29:04 -0400 Subject: darwin.stdenv: avoid an infinite recursion libiconv-darwin depends on Meson, which (indirectly) depends on libiconv. When libiconv-darwin is set as libiconv, it will cause an infinite recursion. Avoid the infinite recursion by using libiconvReal in stage 1. Every stage after that can use libiconv-darwin. --- pkgs/stdenv/darwin/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'pkgs/stdenv') diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index 3ab2382d0198c..5a2e32f3c742c 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -428,6 +428,9 @@ in # Disable tests because they use dejagnu, which fails to run. libffi = super.libffi.override { doCheck = false; }; + # Use libconvReal to break an infinite recursion. It will be dropped in the next stage. + libiconv = super.libiconvReal; + # Avoid pulling in a full python and its extra dependencies for the llvm/clang builds. libxml2 = super.libxml2.override { pythonSupport = false; }; @@ -539,7 +542,7 @@ in inherit (prevStage) ccWrapperStdenv autoconf automake bash binutils binutils-unwrapped bison brotli cmake cmakeMinimal coreutils cpio cyrus_sasl db ed expat flex gettext gmp gnugrep groff icu - libedit libffi libiconv libidn2 libkrb5 libssh2 libtool libunistring libxml2 m4 + libedit libffi libidn2 libkrb5 libssh2 libtool libunistring libxml2 m4 ncurses nghttp2 ninja openldap openssh openssl patchutils pbzx perl pkg-config python3Minimal scons sed serf sharutils sqlite subversion texinfo unzip which xz zlib zstd; -- cgit 1.4.1