gnu: evolution-data-server: Fix locale handling.
* gnu/packages/gnome.scm (evolution-data-server)[arguments]: Add a phase that patches the source code to fix a locale handling issue.
This commit is contained in:
parent
464a29d3d7
commit
d619686250
1 changed files with 16 additions and 0 deletions
|
@ -5211,6 +5211,22 @@ (define-public evolution-data-server
|
|||
"tests/libedata-cal/test-cal-cache-utils.c")
|
||||
(("/bin/rm") (which "rm")))
|
||||
#t))
|
||||
;; This phase fixes locale canonicalization when using newer
|
||||
;; versions of ICU. The bug has been fixed upstream, and
|
||||
;; should appear starting in version 3.33.5.
|
||||
;; <https://gitlab.gnome.org/GNOME/evolution-data-server/issues/137>.
|
||||
(add-after 'unpack 'patch-locale-canonicalization
|
||||
(lambda _
|
||||
(substitute* "src/libedataserver/e-collator.c"
|
||||
(("len = uloc_canonicalize \\(posix_locale,.*" x)
|
||||
((lambda (xs) (string-join xs "\n" 'suffix))
|
||||
(list
|
||||
"if (posix_locale && ("
|
||||
" g_ascii_strcasecmp(posix_locale, \"C\") == 0 ||"
|
||||
" g_ascii_strcasecmp(posix_locale, \"POSIX\") == 0))"
|
||||
" posix_locale = \"en_US_POSIX\";"
|
||||
x))))
|
||||
#t))
|
||||
(add-before 'configure 'dont-override-rpath
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
|
|
Loading…
Reference in a new issue