Merge pull request #54485 from Mic92/c.utf-8

glibc: C.UTF-8 locales
This commit is contained in:
Jörg Thalheim 2019-01-23 08:24:16 +00:00 committed by GitHub
commit b7ad5e9225
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 10 additions and 14 deletions

View File

@ -28,7 +28,6 @@
{ name { name
, withLinuxHeaders ? false , withLinuxHeaders ? false
, profilingLibraries ? false , profilingLibraries ? false
, installLocales ? false
, withGd ? false , withGd ? false
, meta , meta
, ... , ...
@ -44,7 +43,7 @@ assert withLinuxHeaders -> linuxHeaders != null;
assert withGd -> gd != null && libpng != null; assert withGd -> gd != null && libpng != null;
stdenv.mkDerivation ({ stdenv.mkDerivation ({
inherit version installLocales; inherit version;
linuxHeaders = if withLinuxHeaders then linuxHeaders else null; linuxHeaders = if withLinuxHeaders then linuxHeaders else null;
inherit (stdenv) is64bit; inherit (stdenv) is64bit;
@ -88,6 +87,11 @@ stdenv.mkDerivation ({
less linux-*?/arch/x86/kernel/syscall_table_32.S less linux-*?/arch/x86/kernel/syscall_table_32.S
*/ */
./allow-kernel-2.6.32.patch ./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.isx86_64 ./fix-x64-abi.patch
++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch; ++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch;

View File

@ -1,6 +1,5 @@
{ stdenv, callPackage { stdenv, callPackage
, withLinuxHeaders ? true , withLinuxHeaders ? true
, installLocales ? true
, profilingLibraries ? false , profilingLibraries ? false
, withGd ? false , withGd ? false
}: }:
@ -8,7 +7,7 @@
callPackage ./common.nix { inherit stdenv; } { callPackage ./common.nix { inherit stdenv; } {
name = "glibc" + stdenv.lib.optionalString withGd "-gd"; name = "glibc" + stdenv.lib.optionalString withGd "-gd";
inherit withLinuxHeaders profilingLibraries installLocales withGd; inherit withLinuxHeaders profilingLibraries withGd;
# Note: # Note:
# Things you write here override, and do not add to, # Things you write here override, and do not add to,
@ -57,9 +56,8 @@ callPackage ./common.nix { inherit stdenv; } {
''; '';
postInstall = '' postInstall = ''
if test -n "$installLocales"; then 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 make -j''${NIX_BUILD_CORES:-1} -l''${NIX_BUILD_CORES:-1} localedata/install-locales
fi
test -f $out/etc/ld.so.cache && rm $out/etc/ld.so.cache test -f $out/etc/ld.so.cache && rm $out/etc/ld.so.cache

View File

@ -13,8 +13,6 @@
callPackage ./common.nix { inherit stdenv; } { callPackage ./common.nix { inherit stdenv; } {
name = "glibc-locales"; name = "glibc-locales";
installLocales = true;
builder = ./locales-builder.sh; builder = ./locales-builder.sh;
outputs = [ "out" ]; outputs = [ "out" ];

View File

@ -9986,9 +9986,7 @@ in
inherit (darwin.apple_sdk.frameworks) Cocoa Kernel; inherit (darwin.apple_sdk.frameworks) Cocoa Kernel;
}; };
glibc = callPackage ../development/libraries/glibc { glibc = callPackage ../development/libraries/glibc { };
installLocales = config.glibc.locales or false;
};
# Provided by libc on Operating Systems that use the Extensible Linker Format. # Provided by libc on Operating Systems that use the Extensible Linker Format.
elf-header = elf-header =
@ -9999,13 +9997,11 @@ in
elf-header-real = callPackage ../development/libraries/elf-header { }; elf-header-real = callPackage ../development/libraries/elf-header { };
glibc_memusage = callPackage ../development/libraries/glibc { glibc_memusage = callPackage ../development/libraries/glibc {
installLocales = false;
withGd = true; withGd = true;
}; };
# Being redundant to avoid cycles on boot. TODO: find a better way # Being redundant to avoid cycles on boot. TODO: find a better way
glibcCross = callPackage ../development/libraries/glibc { glibcCross = callPackage ../development/libraries/glibc {
installLocales = config.glibc.locales or false;
stdenv = crossLibcStdenv; stdenv = crossLibcStdenv;
}; };