diff options
| -rw-r--r-- | gnu/packages/base.scm | 11 | ||||
| -rw-r--r-- | gnu/packages/commencement.scm | 31 | ||||
| -rw-r--r-- | gnu/packages/gawk.scm | 6 | ||||
| -rw-r--r-- | gnu/packages/texinfo.scm | 7 | 
4 files changed, 33 insertions, 22 deletions
| diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 2f48f65caf..1140aa7491 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -1651,9 +1651,14 @@ command.")  (define* (libc-utf8-locales-for-target #:optional                                         (target (or (%current-target-system)                                                     (%current-system)))) -  (if (target-hurd? target) -      glibc-utf8-locales/hurd -      glibc-utf8-locales)) +  "Return the glibc UTF-8 locale package for TARGET." +  ;; Note: To avoid circular dependencies (such as: texinfo -> +  ;; glibc-utf8-locales -> glibc -> texinfo), refer to +  ;; 'glibc-utf8-locales-final' via 'canonical-package'. +  (canonical-package +   (if (target-hurd? target) +       glibc-utf8-locales/hurd +       glibc-utf8-locales)))  (define-public tzdata    (package diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 179b4f2d3e..8b2423913d 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -3394,17 +3394,11 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"                     #:guile guile-final                     #:bash bash-final)) -(define (%boot5-inputs) -  ;; Now with UTF-8 locales.  Remember that the bootstrap binaries were built -  ;; with an older libc, which cannot load the new locale format.  See -  ;; <https://lists.gnu.org/archive/html/guix-devel/2015-08/msg00737.html>. -  `(("locales" ,(if (target-hurd?) -                    glibc-utf8-locales-final/hurd -                    glibc-utf8-locales-final)) -    ,@(%boot4-inputs))) - -(define with-boot5 -  (package-with-explicit-inputs %boot5-inputs)) +;; There used to be a "stage 5" including a variant of the +;; 'glibc-utf8-locales' package.  This is no longer necessary since 'glibc' +;; embeds the "C.UTF-8" locale, but these aliases are kept for convenience. +(define %boot5-inputs %boot4-inputs) +(define with-boot5 with-boot4)  (define gnu-make-final    ;; The final GNU Make, which uses the final Guile. @@ -3493,7 +3487,11 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"                     ("diffutils" ,diffutils)                     ("patch" ,patch/pinned)                     ("findutils" ,findutils) -                   ("gawk" ,gawk))) +                   ("gawk" ,(package/inherit gawk +                              (native-inputs +                               (list (if (target-hurd?) +                                         glibc-utf8-locales-final/hurd +                                         glibc-utf8-locales-final)))))))            ("sed" ,sed-final)            ("grep" ,grep-final)            ("xz" ,xz-final) @@ -3504,10 +3502,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"            ("binutils" ,binutils-final)            ("gcc" ,gcc-final)            ("libc" ,glibc-final) -          ("libc:static" ,glibc-final "static") -          ("locales" ,(if (target-hurd? (%current-system)) -                          glibc-utf8-locales-final/hurd -                          glibc-utf8-locales-final))))))) +          ("libc:static" ,glibc-final "static"))))))  (define-public canonical-package    (let ((name->package (mlambda (system) @@ -3518,6 +3513,10 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"                                                  package result))))                                 vlist-null                                 `(("guile" ,guile-final) +                                 ("glibc-utf8-locales" +                                  ,(if (target-hurd? system) +                                       glibc-utf8-locales-final/hurd +                                       glibc-utf8-locales-final))                                   ,@(%final-inputs system))))))      (lambda (package)        "Return the 'canonical' variant of PACKAGE---i.e., if PACKAGE is one of diff --git a/gnu/packages/gawk.scm b/gnu/packages/gawk.scm index 2d8bc581ef..476865ada3 100644 --- a/gnu/packages/gawk.scm +++ b/gnu/packages/gawk.scm @@ -1,5 +1,5 @@  ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012-2016, 2023 Ludovic Courtès <ludo@gnu.org>  ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>  ;;; Copyright © 2018, 2022, 2023 Efraim Flashner <efraim@flashner.co.il>  ;;; Copyright © 2021, 2022 Marius Bakke <marius@gnu.org> @@ -79,6 +79,10 @@                      (("#! /usr/bin/gawk")                       (string-append "#!" (which "gawk"))))))))) +   ;; Tests explicitly require en_US.UTF-8, fr_FR.UTF-8, ru_RU.UTF-8 and +   ;; ja_JP.UTF-8. +   (native-inputs (list (libc-utf8-locales-for-target))) +     (inputs (list libsigsegv                   ;; Use the full-fledged Bash package, otherwise the test suite                   ;; sometimes fail non-deterministically. diff --git a/gnu/packages/texinfo.scm b/gnu/packages/texinfo.scm index bfa975acc0..79c21d8b45 100644 --- a/gnu/packages/texinfo.scm +++ b/gnu/packages/texinfo.scm @@ -38,6 +38,7 @@    #:use-module (guix build-system gnu)    #:use-module (gnu packages)    #:use-module (gnu packages autotools) +  #:use-module (gnu packages base)    #:use-module (gnu packages compression)    #:use-module (gnu packages gettext)    #:use-module (gnu packages ncurses) @@ -79,10 +80,12 @@         #:tests? ,(and (not (target-hurd?))                        (not (%current-target-system)))))      (inputs (list ncurses perl)) +      ;; When cross-compiling, texinfo will build some of its own binaries with      ;; the native compiler. This means ncurses is needed both in both inputs -    ;; and native-inputs. -    (native-inputs (list perl ncurses)) +    ;; and native-inputs.  Some of its tests require extra locales such as +    ;; fr_FR.UTF-8. +    (native-inputs (list perl ncurses (libc-utf8-locales-for-target)))      (native-search-paths       ;; This is the variable used by the standalone Info reader. | 
