On 10-08-17 11:09, Eugene Yudin wrote:
> The system library makefile handles option the following way
> (extra/locale/Makefile.in):
>  $(locale_OUT)/wctables.h: $(locale_OUT)/gen_wctype
>          @$(disp_gen)
>          $(Q)for locale in $(call qstrip,$(UCLIBC_BUILD_MINIMAL_LOCALES)) 
> en_US
> en_GB; do \
>                   $< $(FLAG-locale-verbose) $$locale > $@ || \
>                  $< $(FLAG-locale-verbose) $$locale.UTF-8 > $@ || \
>                  $< $(FLAG-locale-verbose) $$locale.iso8859-1 > $@ && break; \
>          done
> The program "gen_wctype" receives locale name as command line parameter.
> That application call the function setlocale() inside it.
> Some time ago that call was disabled to workaround bug with locales.
> That's the reason for the absence of problems in the past.
> Changes in the last release return this call.

 So the problem really is that this command tries a number of locales, but not
any of the locales actually present on the system?

 I would propose to:
- replace the "en_US en_GB" with "C C.UTF-8" since the latter is much more
likely to be present on the host;
- use '$(sort $(patsubst %.utf8,%,$(shell locale -a)))' as an ultimate fallback.

 Does that sound reasonable? I didn't look at the history if this particular
piece of code, I guess it must have gone through several detours already...


Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
devel mailing list

Reply via email to