This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Q: Is anybody here using the CYGWIN=codepage:oem setting?


Corinna Vinschen <corinna-cygwin <at> cygwin.com> writes:

> > > I have no idea whether du calls setlocale() or not.

It, and all the other coreutils, do call setlocale.  Pretty much any 
application that ships with *.mo files does so (that is, any application that 
used gettext).

> 
> ...unless Cygwin itself would call setlocale().

I'm not a fan of that.  POSIX is explicit that an application that 
intentionally avoids calling setlocale() shall behave as though it had called 
setlocale(LC_ALL,"C").  If cygwin called setlocale(LC_ALL,"") on applications' 
behalf, then this will break POSIX-compliance of existing programs.  Not all 
programs are internationalized yet.  For example, I know that m4 does NOT call 
setlocale.  On the other hand, I also have no idea how (or even if) m4 would 
break if cygwin called setlocale on its behalf; about the only functions it 
calls at the moment where running in a locale besides C would have an impact 
would be in things like calls to strtod() (not likely to affect many users).  
And one of my goals, as upstream m4 maintainer, is to eventually get m4 to the 
same state as coreutils where gettext is used to provide translated messages.

I guess I'm declaring that I have no idea what the best approach would be, but 
I would like for locales to work without having to worry about changing $CYGWIN.

-- 
Eric Blake



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]