This is the mail archive of the
cygwin-patches
mailing list for the Cygwin project.
Re: [PATCH] ccwrap: fix build with non-english locale set
- From: patrick bendorf <mail at patrick-bendorf dot de>
- To: cygwin-patches at cygwin dot com
- Date: Mon, 29 Feb 2016 14:19:40 +0100
- Subject: Re: [PATCH] ccwrap: fix build with non-english locale set
- Authentication-results: sourceware.org; auth=none
- References: <56D3EF72 dot 20504 at patrick-bendorf dot de> <20160229103339 dot GB3525 at calimero dot vinschen dot de> <b818ad6d60ddfd3557c3d9e21efc6344 at patrick-bendorf dot de> <56D43D9B dot 5020602 at dronecode dot org dot uk> <20160229125813 dot GE3525 at calimero dot vinschen dot de>
after some discussion on irc and the list i'm resubmitting a simpler
version of the patch.
setting the locale on cygwin to 'C.UTF-8' is not needed, so i'm always
setting it to 'C' which is sufficient for the build process and the most
simple fix.
/winsup/
* ccwrap: change locale to 'C' as ccwrap searches for literal strings
"search starts here" and "End of search list" which may be localized.
---
winsup/ccwrap | 1 +
1 file changed, 1 insertion(+)
diff --git a/winsup/ccwrap b/winsup/ccwrap
index 7580e7a..0c6a170 100755
--- a/winsup/ccwrap
+++ b/winsup/ccwrap
@@ -12,6 +12,7 @@ if ($ARGV[0] ne '++') {
$cxx = 1;
}
die "$0: $ccorcxx environment variable does not exist\n" unless exists
$ENV{$ccorcxx};
+$ENV{'LANG'} = 'C';
my @compiler = split ' ', $ENV{$ccorcxx};
if ("@ARGV" !~ / -nostdinc/o) {
my $fd;
--
2.7.0
patrick
Am 2016-02-29 13:58, schrieb Corinna Vinschen:
On Feb 29 12:46, Jon Turney wrote:
On 29/02/2016 12:19, mail@patrick-bendorf.de wrote:
>+if (`uname -o` =~ /cygwin/i) {
>+ $ENV{'LANG'} = 'C.UTF-8';
>+} else {
>+ $ENV{'LANG'} = 'C';
This can just say "$ENV{'LANG'} = 'C';" right? As that has to work
everywhere?
Uh, I missed that. Yes, of course that should work, too.
Corinna