Skip to content

Commit

Permalink
Merge pull request #54485 from Mic92/c.utf-8
Browse files Browse the repository at this point in the history
glibc: C.UTF-8 locales
  • Loading branch information
Mic92 authored Jan 23, 2019
2 parents 9b05542 + d966f31 commit b7ad5e9
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 14 deletions.
8 changes: 6 additions & 2 deletions pkgs/development/libraries/glibc/common.nix
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
{ name
, withLinuxHeaders ? false
, profilingLibraries ? false
, installLocales ? false
, withGd ? false
, meta
, ...
Expand All @@ -44,7 +43,7 @@ assert withLinuxHeaders -> linuxHeaders != null;
assert withGd -> gd != null && libpng != null;

stdenv.mkDerivation ({
inherit version installLocales;
inherit version;
linuxHeaders = if withLinuxHeaders then linuxHeaders else null;

inherit (stdenv) is64bit;
Expand Down Expand Up @@ -88,6 +87,11 @@ stdenv.mkDerivation ({
less linux-*?/arch/x86/kernel/syscall_table_32.S
*/
./allow-kernel-2.6.32.patch
/* Provide utf-8 locales by default, so we can use it in stdenv without depending on our large locale-archive. */
(fetchurl {
url = "https://salsa.debian.org/glibc-team/glibc/raw/49767c9f7de4828220b691b29de0baf60d8a54ec/debian/patches/localedata/locale-C.diff";
sha256 = "0irj60hs2i91ilwg5w7sqrxb695c93xg0ik7yhhq9irprd7fidn4";
})
]
++ lib.optional stdenv.isx86_64 ./fix-x64-abi.patch
++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch;
Expand Down
8 changes: 3 additions & 5 deletions pkgs/development/libraries/glibc/default.nix
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
{ stdenv, callPackage
, withLinuxHeaders ? true
, installLocales ? true
, profilingLibraries ? false
, withGd ? false
}:

callPackage ./common.nix { inherit stdenv; } {
name = "glibc" + stdenv.lib.optionalString withGd "-gd";

inherit withLinuxHeaders profilingLibraries installLocales withGd;
inherit withLinuxHeaders profilingLibraries withGd;

# Note:
# Things you write here override, and do not add to,
Expand Down Expand Up @@ -57,9 +56,8 @@ callPackage ./common.nix { inherit stdenv; } {
'';

postInstall = ''
if test -n "$installLocales"; then
make -j''${NIX_BUILD_CORES:-1} -l''${NIX_BUILD_CORES:-1} localedata/install-locales
fi
echo SUPPORTED-LOCALES=C.UTF-8/UTF-8 > ../glibc-2*/localedata/SUPPORTED
make -j''${NIX_BUILD_CORES:-1} -l''${NIX_BUILD_CORES:-1} localedata/install-locales
test -f $out/etc/ld.so.cache && rm $out/etc/ld.so.cache
Expand Down
2 changes: 0 additions & 2 deletions pkgs/development/libraries/glibc/locales.nix
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@
callPackage ./common.nix { inherit stdenv; } {
name = "glibc-locales";

installLocales = true;

builder = ./locales-builder.sh;

outputs = [ "out" ];
Expand Down
6 changes: 1 addition & 5 deletions pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -9986,9 +9986,7 @@ in
inherit (darwin.apple_sdk.frameworks) Cocoa Kernel;
};

glibc = callPackage ../development/libraries/glibc {
installLocales = config.glibc.locales or false;
};
glibc = callPackage ../development/libraries/glibc { };

# Provided by libc on Operating Systems that use the Extensible Linker Format.
elf-header =
Expand All @@ -9999,13 +9997,11 @@ in
elf-header-real = callPackage ../development/libraries/elf-header { };

glibc_memusage = callPackage ../development/libraries/glibc {
installLocales = false;
withGd = true;
};

# Being redundant to avoid cycles on boot. TODO: find a better way
glibcCross = callPackage ../development/libraries/glibc {
installLocales = config.glibc.locales or false;
stdenv = crossLibcStdenv;
};

Expand Down

0 comments on commit b7ad5e9

Please sign in to comment.