[Buildroot] [PATCH 1/1] Generation of locales: made call to tr more robust

Thierry Bultel thierry.bultel at wanadoo.fr
Sun Nov 10 09:50:17 UTC 2013


Le 09/11/2013 14:47, Thomas De Schampheleire a écrit :
> Thierry Bultel <thierry.bultel at wanadoo.fr> wrote:
>> From: tbultel <tbultel at basystemes.fr>
>>
>> When calling 'tr' without quoting braces, bash can make really weird things
>> if there are existing 'single-letter-named' directories
>> eg:
>> tbultel at laois:~/test$ echo AAA | tr [A-Z] [a-z]
>> aaa
>> tbultel at laois:~/test$ echo AAA | tr [A-Z] [a-z]
>> AAA
>>
>> The (quick) analysis is that the callee (tr) argvs then
>> contain 'm' thus the translation does not work
>>
>> Using quotes works around it
>> tbultel at laois:~/test$ echo AAA | tr '[A-Z]' '[a-z]'
>> aaa
>>
>>
>> Signed-off-by: tbultel <tbultel at basystemes.fr>
>
> This should be real name, not a username.
>
>> ---
>> Makefile |    2 +-
>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/Makefile b/Makefile
>> index 1496bd7..7f835c0 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -548,7 +548,7 @@ target-generatelocales: host-localedef
>> 		I18NPATH=$(STAGING_DIR)/usr/share/i18n:/usr/share/i18n \
>> 		$(HOST_DIR)/usr/bin/localedef \
>> 			--prefix=$(TARGET_DIR) \
>> -			--`echo $(BR2_ENDIAN) | tr [A-Z] [a-z]`-endian \
>> +			--`echo $(BR2_ENDIAN) | tr '[A-Z]' '[a-z]'`-endian \
>> 			-i $${inputfile} -f $${charmap} \
>> 			$${locale} ; \
>> 	done
>
> While there's nothing wrong with your fix itself, I wonder why this isn't using the UPPERCASE and LOWERCASE macros we have defined in package/pkg-utils.mak...
>
> Best regards,
> Thomas
>
>
>

The LOWERCASE macro does not seem to exist




More information about the buildroot mailing list