diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1609c6fac7e..2cd659a5e75 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6871,8 +6871,11 @@ let # glibc provides libiconv so systems with glibc don't need to build libiconv # separately, but we also provide libiconvReal, which will always be a # standalone libiconv, just in case you want it - libiconv = - if stdenv.isGlibc then stdenv.cc.libc + libiconv = if crossSystem != null then + (if crossSystem.libc == "glibc" then libcCross + else if crossSystem.libc == "libSystem" then darwin.libiconv + else libiconvReal) + else if stdenv.isGlibc then stdenv.cc.libc else if stdenv.isDarwin then darwin.libiconv else libiconvReal;