[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] reset LC_MESSAGES to C too
From: |
Vladimir 'φ-coder/phcoder' Serbinenko |
Subject: |
Re: [PATCH] reset LC_MESSAGES to C too |
Date: |
Mon, 01 Apr 2013 01:59:56 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:10.0.12) Gecko/20130116 Icedove/10.0.12 |
On 30.03.2013 09:45, Andrey Borzenkov wrote:
> If user locale has non-ASCII translation strings, running grub make
> outputs only question marks:
>
> address@hidden:~/build/grub> locale
> LANG=ru_RU.utf8
> LC_CTYPE="ru_RU.utf8"
> LC_NUMERIC="ru_RU.utf8"
> LC_TIME="ru_RU.utf8"
> LC_COLLATE="ru_RU.utf8"
> LC_MONETARY="ru_RU.utf8"
> LC_MESSAGES="ru_RU.utf8"
> LC_PAPER="ru_RU.utf8"
> LC_NAME="ru_RU.utf8"
> LC_ADDRESS="ru_RU.utf8"
> LC_TELEPHONE="ru_RU.utf8"
> LC_MEASUREMENT="ru_RU.utf8"
> LC_IDENTIFICATION="ru_RU.utf8"
> LC_ALL=
>
> make[2]: ????? ?? ???????? `/home/bor/build/grub/docs'
> Making all in util/bash-completion.d
> make[2]: ???? ? ??????? `/home/bor/build/grub/util/bash-completion.d'
> make[2]: ???? `all' ?? ??????? ?????????? ??????.
> make[2]: ????? ?? ???????? `/home/bor/build/grub/util/bash-completion.d'
> make[1]: ????? ?? ???????? `/home/bor/build/grub'
>
> The reason is, grub Makefile resets LC_CTYPE to C. This makes it
> impossible to translate messages into current locale (C at the time
> tools are running). Reset LC_MESSAGES to C as well, it is better to
> have them in English than do not have them at all.
This doesn't seem right thing to do. LC_COLLATE was reset to C because
of Estonian since [a-z] in Estonian doesn't include u or t. LC_CTYPE
might break e.g. [[:alpha:]]. But I don't know how to stop it from
interfering with make and gcc messages
>
> Problem observed on Linux with glibc 2.17 and 2.15.
>
> Signed-off-by: Andrey Borzenkov <address@hidden>
>
> ---
> ChangeLog | 5 +++++
> conf/Makefile.common | 1 +
> 2 files changed, 6 insertions(+)
>
> diff --git a/ChangeLog b/ChangeLog
> index 58c2242..cd1f762 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1,3 +1,8 @@
> +2013-03-30 Andrey Borzenkov <address@hidden>
> +
> + * conf/Makefile.common: Reset LC_MESSAGES to C too to avoid
> + question marks in messages during build on non-ASCII locale.
> +
> 2013-03-26 Vladimir Serbinenko <address@hidden>
>
> * grub-core/kern/efi/mm.c (grub_efi_finish_boot_services):
> diff --git a/conf/Makefile.common b/conf/Makefile.common
> index c185a55..f49581d 100644
> --- a/conf/Makefile.common
> +++ b/conf/Makefile.common
> @@ -4,6 +4,7 @@ CFLAGS_PLATFORM=
>
> export LC_COLLATE := C
> export LC_CTYPE := C
> +export LC_MESSAGES := C
> unexport LC_ALL
>
> # Platform specific options
signature.asc
Description: OpenPGP digital signature