aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/base.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-10-01 21:32:50 +0200
committerLudovic Courtès <ludo@gnu.org>2015-10-05 22:34:50 +0200
commit85e5721421b7e8ee1cf6b76d34e892034e3c4f51 (patch)
treeb09628a5a5c3c7fedd84b4a0b7562d8f29e76dce /gnu/packages/base.scm
parentf211b2af676751b66d1443e5371b92c9a98c8a0c (diff)
downloadguix-85e5721421b7e8ee1cf6b76d34e892034e3c4f51.tar
guix-85e5721421b7e8ee1cf6b76d34e892034e3c4f51.tar.gz
gnu: glibc: Look for locale data in versioned sub-directories.
Suggested by Mark H Weaver <mhw@netris.org>. * gnu/packages/patches/glibc-versioned-locpath.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/base.scm (glibc)[source]: Use it. [arguments]: Add explicit version sub-directory to libc_cv_localedir. [native-search-paths]: Use 'GUIX_LOCPATH' instead of 'LOCPATH'. (glibc-locales, glibc-utf8-locales): Write to a VERSION sub-directory.
Diffstat (limited to 'gnu/packages/base.scm')
-rw-r--r--gnu/packages/base.scm7
1 files changed, 5 insertions, 2 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 1250f51108..f951e28b3b 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -484,6 +484,7 @@ store.")
(patches (map search-patch
'("glibc-ldd-x86_64.patch"
"glibc-locale-incompatibility.patch"
+ "glibc-versioned-locpath.patch"
"glibc-o-largefile.patch")))))
(build-system gnu-build-system)
@@ -614,7 +615,9 @@ store.")
(native-search-paths
;; Search path for packages that provide locale data. This is useful
- ;; primarily in build environments.
+ ;; primarily in build environments. Use 'GUIX_LOCPATH' rather than
+ ;; 'LOCPATH' to avoid interference with the host system's libc on foreign
+ ;; distros.
(list (search-path-specification
(variable "GUIX_LOCPATH")
(files '("lib/locale")))))
@@ -657,7 +660,7 @@ the 'share/locale' sub-directory of this package.")
(alist-delete 'install ,phases)))
((#:configure-flags flags)
`(append ,flags
- ;; Use $(libdir)/locale as is the case by default.
+ ;; Use $(libdir)/locale/X.Y as is the case by default.
(list (string-append "libc_cv_localedir="
(assoc-ref %outputs "out")
"/lib/locale/"