GNU bug report logs - #67686
[PATCH core-updates 0/5] Update glibc to 2.38; make C.UTF-8 always available

Previous Next

Package: guix-patches;

Reported by: Ludovic Courtès <ludo <at> gnu.org>

Date: Thu, 7 Dec 2023 10:21:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: guix-patches <at> gnu.org
Cc: Ludovic Courtès <ludo <at> gnu.org>
Subject: [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 <at> 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





This bug report was last modified 1 year and 167 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.