diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-10-30 13:37:39 +0100 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-10-30 13:37:39 +0100 |
commit | 7e0c8fe656bbc2fcbdfc3e03a367d2c6ff389769 (patch) | |
tree | 38e753812c0ceba947d65ec0555a5a66c1a5aa4e /nixpkgs/pkgs/development/libraries/glibc | |
parent | 46cf147fc42b72f68ecd52b3b03a8bfd6077f42b (diff) | |
parent | 63678e9f3d3afecfeafa0acead6239cdb447574c (diff) | |
download | nixlib-7e0c8fe656bbc2fcbdfc3e03a367d2c6ff389769.tar nixlib-7e0c8fe656bbc2fcbdfc3e03a367d2c6ff389769.tar.gz nixlib-7e0c8fe656bbc2fcbdfc3e03a367d2c6ff389769.tar.bz2 nixlib-7e0c8fe656bbc2fcbdfc3e03a367d2c6ff389769.tar.lz nixlib-7e0c8fe656bbc2fcbdfc3e03a367d2c6ff389769.tar.xz nixlib-7e0c8fe656bbc2fcbdfc3e03a367d2c6ff389769.tar.zst nixlib-7e0c8fe656bbc2fcbdfc3e03a367d2c6ff389769.zip |
Merge commit '63678e9f3d3afecfeafa0acead6239cdb447574c' into HEAD
Conflicts: nixpkgs/pkgs/build-support/rust/build-rust-package/default.nix
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/glibc')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glibc/default.nix | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/nixpkgs/pkgs/development/libraries/glibc/default.nix b/nixpkgs/pkgs/development/libraries/glibc/default.nix index 1c822bf1ed01..11676560e80b 100644 --- a/nixpkgs/pkgs/development/libraries/glibc/default.nix +++ b/nixpkgs/pkgs/development/libraries/glibc/default.nix @@ -3,7 +3,7 @@ , profilingLibraries ? false , withGd ? false , withLibcrypt? false -, buildPackages +, pkgsBuildBuild , libgcc }: @@ -95,17 +95,26 @@ in "user-defined-trusted-dirs=${libgcc}/lib" ]; - postInstall = previousAttrs.postInstall + (if stdenv.hostPlatform == stdenv.buildPlatform then '' + postInstall = previousAttrs.postInstall + (if stdenv.buildPlatform.canExecute stdenv.hostPlatform then '' echo SUPPORTED-LOCALES=C.UTF-8/UTF-8 > ../glibc-2*/localedata/SUPPORTED make -j''${NIX_BUILD_CORES:-1} localedata/install-locales - '' else lib.optionalString stdenv.buildPlatform.isLinux '' + '' else lib.optionalString stdenv.buildPlatform.isLinux # This is based on http://www.linuxfromscratch.org/lfs/view/development/chapter06/glibc.html # Instead of using their patch to build a build-native localedef, - # we simply use the one from buildPackages + # we simply use the one from pkgsBuildBuild. + # + # Note that we can't use pkgsBuildHost (aka buildPackages) here, because + # that will cause an eval-time infinite recursion: "buildPackages.glibc + # depended on buildPackages.libgcc, which, since it's GCC, depends on the + # target's bintools, which depend on the target's glibc, which, again, + # depends on buildPackages.glibc, causing an infinute recursion when + # evaluating buildPackages.glibc when glibc hasn't come from stdenv + # (e.g. on musl)." https://github.com/NixOS/nixpkgs/pull/259964 + '' pushd ../glibc-2*/localedata export I18NPATH=$PWD GCONV_PATH=$PWD/../iconvdata - mkdir -p $NIX_BUILD_TOP/${buildPackages.glibc}/lib/locale - ${lib.getBin buildPackages.glibc}/bin/localedef \ + mkdir -p $NIX_BUILD_TOP/${pkgsBuildBuild.glibc}/lib/locale + ${lib.getBin pkgsBuildBuild.glibc}/bin/localedef \ --alias-file=../intl/locale.alias \ -i locales/C \ -f charmaps/UTF-8 \ @@ -115,7 +124,7 @@ in else "--big-endian"} \ C.UTF-8 - cp -r $NIX_BUILD_TOP/${buildPackages.glibc}/lib/locale $out/lib + cp -r $NIX_BUILD_TOP/${pkgsBuildBuild.glibc}/lib/locale $out/lib popd '') + '' |