[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#67686] [PATCH core-updates 0/5] Update glibc to 2.38; make C.UTF-8
From: |
Ludovic Courtès |
Subject: |
[bug#67686] [PATCH core-updates 0/5] Update glibc to 2.38; make C.UTF-8 always available |
Date: |
Thu, 7 Dec 2023 11:19:52 +0100 |
Hello fellow core updaters!
Here’s a patch to (1) upgrade glibc on ‘core-updates’, and (2) make the
“C.UTF-8” locale always available.
The upgrade itself will need several iterations so we can check whether
cross-compilation still works, for which we need help from ci.guix.
It removes ‘glibc-allow-kernel-2.6.32.patch’, which no longer applies,
so we’ll have to do a poll to ensure nobody relies on this (this is
mostly for HPC people, who tend to have machines running old and
heavily-patched kernels, but hopefully this particular flavor is now
gone.)
With the upgrade, we should be able to:
(define-public glibc/hurd glibc)
Perhaps we’ll even get support for x86_64-gnu (!), though IIRC we may
need a couple more patches.
As for #2, it means that:
setlocale (LC_ALL, "C.UTF-8");
is guaranteed to always succeed. This is pretty big deal for us
because then we can get rid of most use cases for ‘glibc-utf8-locales’.
The main use of ‘glibc-utf8-locales’ is to ensure that Guile (and other
programs that behave similar) can run in a UTF-8 locale and thus
decode file names & co. according to that locale’s encoding. We’ll
be able to replace snippets like:
#~(begin
(setenv "GUIX_LOCPATH"
#$(file-append glibc-utf8-locales "/lib/locale"))
(setlocale LC_ALL "en_US.utf8")
…)
with:
#~(begin
(setlocale LC_ALL "C.UTF-8")
…)
Thoughts?
Note that I needed Greg’s GCC 11.4.0 upgrade
from <https://issues.guix.gnu.org/66730> as a prerequisite
since libsanitizer in GCC 11.3.0 fails to build with glibc 2.38.
Ludo’.
Greg Hogan (1):
gnu: gcc@11: Update to 11.4.0.
Ludovic Courtès (4):
gnu: glibc-utf8-locales: Generalize and use gexps.
DRAFT gnu: glibc: Update to 2.38.
gnu: glibc: Install C.UTF-8 locale.
gnu: glibc: Ensure C.UTF-8 locale is always found.
gnu/local.mk | 2 +-
gnu/packages/base.scm | 143 ++++++++++++------
gnu/packages/gcc.scm | 7 +-
.../gcc-10-tree-sra-union-handling.patch | 33 ----
.../glibc-2.37-versioned-locpath.patch | 57 ++++---
.../patches/glibc-2.38-ldd-x86_64.patch | 8 +
6 files changed, 138 insertions(+), 112 deletions(-)
delete mode 100644 gnu/packages/patches/gcc-10-tree-sra-union-handling.patch
create mode 100644 gnu/packages/patches/glibc-2.38-ldd-x86_64.patch
base-commit: 69d31a158001f2cb97983bd13f4575f6c9484451
--
2.41.0
- [bug#67686] [PATCH core-updates 0/5] Update glibc to 2.38; make C.UTF-8 always available,
Ludovic Courtès <=