gnu: commencement: Use locales for the right libc version on GNU/Hurd.
Fixes <https://issues.guix.gnu.org/66472>. Until now, we were unconditionally using ‘glibc-utf8-locales’, which targets the glibc version used on Linux (2.35) rather than that used on the Hurd (2.37). This would lead to build failures due to the inability to use locale encoding when targeting i586-gnu. * gnu/packages/base.scm (glibc-utf8-locales/hurd): New variable. * gnu/packages/commencement.scm (glibc-utf8-locales-final/hurd): New variable. (%boot5-inputs): Use it when ‘target-hurd?’ returns #t. (%final-inputs): Likewise. Change-Id: I1666d615dffbe3561cf2d9612b85cd31a48a7dcdmaster
parent
5149bf99ba
commit
95ea1277ae
|
@ -1512,6 +1512,11 @@ command.")
|
||||||
(delete 'build))))) ; nothing to build
|
(delete 'build))))) ; nothing to build
|
||||||
(supported-systems %hurd-systems)))
|
(supported-systems %hurd-systems)))
|
||||||
|
|
||||||
|
(define-public glibc-utf8-locales/hurd
|
||||||
|
;; Locales for the libc version used on GNU/Hurd.
|
||||||
|
(hidden-package
|
||||||
|
(make-glibc-utf8-locales glibc/hurd)))
|
||||||
|
|
||||||
(define* (libc-for-target #:optional
|
(define* (libc-for-target #:optional
|
||||||
(target (or (%current-target-system)
|
(target (or (%current-target-system)
|
||||||
(%current-system))))
|
(%current-system))))
|
||||||
|
|
|
@ -3365,6 +3365,16 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||||
`(("glibc" ,glibc-final)
|
`(("glibc" ,glibc-final)
|
||||||
("gzip" ,(with-boot4 gzip))))))
|
("gzip" ,(with-boot4 gzip))))))
|
||||||
|
|
||||||
|
(define-public glibc-utf8-locales-final/hurd
|
||||||
|
;; Locales for the libc version used on GNU/Hurd.
|
||||||
|
(package
|
||||||
|
(inherit glibc-utf8-locales/hurd)
|
||||||
|
(properties `((hidden? . #t)
|
||||||
|
,@(package-properties glibc-utf8-locales/hurd)))
|
||||||
|
(native-inputs
|
||||||
|
`(("glibc" ,glibc-final)
|
||||||
|
("gzip" ,(with-boot4 gzip))))))
|
||||||
|
|
||||||
(define-public ld-wrapper
|
(define-public ld-wrapper
|
||||||
;; The final 'ld' wrapper, which uses the final Guile and Binutils.
|
;; The final 'ld' wrapper, which uses the final Guile and Binutils.
|
||||||
(make-ld-wrapper "ld-wrapper"
|
(make-ld-wrapper "ld-wrapper"
|
||||||
|
@ -3383,7 +3393,9 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||||
;; Now with UTF-8 locales. Remember that the bootstrap binaries were built
|
;; Now with UTF-8 locales. Remember that the bootstrap binaries were built
|
||||||
;; with an older libc, which cannot load the new locale format. See
|
;; with an older libc, which cannot load the new locale format. See
|
||||||
;; <https://lists.gnu.org/archive/html/guix-devel/2015-08/msg00737.html>.
|
;; <https://lists.gnu.org/archive/html/guix-devel/2015-08/msg00737.html>.
|
||||||
`(("locales" ,glibc-utf8-locales-final)
|
`(("locales" ,(if (target-hurd?)
|
||||||
|
glibc-utf8-locales-final/hurd
|
||||||
|
glibc-utf8-locales-final))
|
||||||
,@(%boot4-inputs)))
|
,@(%boot4-inputs)))
|
||||||
|
|
||||||
(define with-boot5
|
(define with-boot5
|
||||||
|
@ -3484,7 +3496,9 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||||
("gcc" ,gcc-final)
|
("gcc" ,gcc-final)
|
||||||
("libc" ,glibc-final)
|
("libc" ,glibc-final)
|
||||||
("libc:static" ,glibc-final "static")
|
("libc:static" ,glibc-final "static")
|
||||||
("locales" ,glibc-utf8-locales-final))))))
|
("locales" ,(if (target-hurd?)
|
||||||
|
glibc-utf8-locales-final/hurd
|
||||||
|
glibc-utf8-locales-final)))))))
|
||||||
|
|
||||||
(define-public canonical-package
|
(define-public canonical-package
|
||||||
(let ((name->package (mlambda (system)
|
(let ((name->package (mlambda (system)
|
||||||
|
|
Reference in New Issue