t: use user-specified utf-8 locale for testing svn
In some test-cases, UTF-8 locale is required. To find such locale, we're using the first available UTF-8 locale that returned by "locale -a". However, the locale(1) utility is unavailable on some systems, e.g. Linux with musl libc. However, without "locale -a", we can't guess provided UTF-8 locale. Add a Makefile knob GIT_TEST_UTF8_LOCALE and activate it for linux-musl in our CI system. Rename t/lib-git-svn.sh:prepare_a_utf8_locale to prepare_utf8_locale, since we no longer prepare the variable named "a_utf8_locale", but set up a fallback value for GIT_TEST_UTF8_LOCALE instead. The fallback will be LC_ALL, LANG environment variable, or the first UTF-8 locale from output of "locale -a", in that order. Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
48bf2fa8ba
commit
482c962de4
@ -121,12 +121,22 @@ start_svnserve () {
|
||||
--listen-host 127.0.0.1 &
|
||||
}
|
||||
|
||||
prepare_a_utf8_locale () {
|
||||
a_utf8_locale=$(locale -a | sed -n '/\.[uU][tT][fF]-*8$/{
|
||||
p
|
||||
q
|
||||
}')
|
||||
if test -n "$a_utf8_locale"
|
||||
prepare_utf8_locale () {
|
||||
if test -z "$GIT_TEST_UTF8_LOCALE"
|
||||
then
|
||||
case "${LC_ALL:-$LANG}" in
|
||||
*.[Uu][Tt][Ff]8 | *.[Uu][Tt][Ff]-8)
|
||||
GIT_TEST_UTF8_LOCALE="${LC_ALL:-$LANG}"
|
||||
;;
|
||||
*)
|
||||
GIT_TEST_UTF8_LOCALE=$(locale -a | sed -n '/\.[uU][tT][fF]-*8$/{
|
||||
p
|
||||
q
|
||||
}')
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
if test -n "$GIT_TEST_UTF8_LOCALE"
|
||||
then
|
||||
test_set_prereq UTF8
|
||||
else
|
||||
|
Reference in New Issue
Block a user