Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-08 Thread David Holmes

On 8/10/2013 2:28 AM, Francis ANDRE wrote:


Le 07/10/2013 11:32, Magnus Ihse Bursie a écrit :

On 2013-10-06 05:19, David Holmes wrote:

Magnus,

Echoing Naoto's comments I don't agree that we should be supporting
this. In the original email a workaround was mentioned using an
environment variable - if that is the case then I don't think we need
to do anything here. Even if not, who knows how many other languages
we might have to support in this way.


I didn't think a simple patch would generate so much discussion. :-)

I'm just about this close --| |-- to dropping this but let me just
elaborate on a few points here:
1) The fix was indeed intended to be language independet; the comment
about Frech was unfortunate and should be rewritten.

2) The workaround mentioned was for JDK7. No such workaround is
possible for JDK8, and we will fail at configure time.

3) I think English should be the supported locale; unfortunately on
Windows platforms changing locale is system-wide and thus not possible
to change for only JDK build tools. Building in a virtual machine with
English locale to work around this is of course possible, but that
will make a slow build even slower.

4) At the very least, a simple fix that don't get configure
artificially caught when trying to check if the tools is okay, when it
actually is, would be okay.


New webrev fixing the comment:
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.02


If anyone still objects to this, let me known and I'll drop it.

You must change in your patch the ' ' character following ersion by a
dot '.' because in fact the character is X'FF' which is not displayable
and replaced by a space.

h: 43 6F 6D 70 69 6C 61 74 65 75 72 20 64 27 6F 70 ; Compilateur
d'op
0010h: 74 69 6D 69 73 61 74 69 6F 6E 20 4D 69 63 72 6F ; timisation
Micro
0020h: 73 6F 66 74 20 28 52 29 20 33 32 FF 62 69 74 73 ; soft (R)
32ÿbits
0030h: 20 43 2F 43 2B 2B 20 76 65 72 73 69 6F 6E FF 31 ;  C/C++
versionÿ1
0040h: 36 2E 30 30 2E 33 30 33 31 39 2E 30 31 20 70 6F ;
6.00.30319.01 po
0050h: 75 72 20 38 30 78 38 36 0A  ; ur 80x86.

By the way, I would prefer a fix like in the hotspot JDK7u with a user
settable variable like ALT_MSVC_COMPILER_VERSION and
ALT_MSVC_LINK_VERSION. If those variables are not defined, then use the
make script. There are so many ALT_ variables to customize the build
that it make sense to use ALT variables also in that case.


The new build in JDK has deprecated the use of ALT_ environment 
variables in favour of using configure options and variables. Hence 
Magnus's approach.


I just don't want to open the flood gates on language specific tool changes.

David
-



But you decide, it is just my pratical preference.

Francis


/Magnus





Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-07 Thread Magnus Ihse Bursie

On 2013-10-06 05:19, David Holmes wrote:

Magnus,

Echoing Naoto's comments I don't agree that we should be supporting 
this. In the original email a workaround was mentioned using an 
environment variable - if that is the case then I don't think we need 
to do anything here. Even if not, who knows how many other languages 
we might have to support in this way.


I didn't think a simple patch would generate so much discussion. :-)

I'm just about this close --| |-- to dropping this but let me just 
elaborate on a few points here:
1) The fix was indeed intended to be language independet; the comment 
about Frech was unfortunate and should be rewritten.


2) The workaround mentioned was for JDK7. No such workaround is possible 
for JDK8, and we will fail at configure time.


3) I think English should be the supported locale; unfortunately on 
Windows platforms changing locale is system-wide and thus not possible 
to change for only JDK build tools. Building in a virtual machine with 
English locale to work around this is of course possible, but that will 
make a slow build even slower.


4) At the very least, a simple fix that don't get configure artificially 
caught when trying to check if the tools is okay, when it actually is, 
would be okay.



New webrev fixing the comment: 
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.02


If anyone still objects to this, let me known and I'll drop it.

/Magnus


Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-07 Thread Francis ANDRE


Le 07/10/2013 11:32, Magnus Ihse Bursie a écrit :

On 2013-10-06 05:19, David Holmes wrote:

Magnus,

Echoing Naoto's comments I don't agree that we should be supporting this. In 
the original email a workaround was mentioned using an environment variable - 
if that is the case then I don't think we need to do anything here. Even if 
not, who knows how many other languages we might have to support in this way.


I didn't think a simple patch would generate so much discussion. :-)

I'm just about this close --| |-- to dropping this but let me just elaborate 
on a few points here:
1) The fix was indeed intended to be language independet; the comment about 
Frech was unfortunate and should be rewritten.


2) The workaround mentioned was for JDK7. No such workaround is possible for 
JDK8, and we will fail at configure time.


3) I think English should be the supported locale; unfortunately on Windows 
platforms changing locale is system-wide and thus not possible to change for 
only JDK build tools. Building in a virtual machine with English locale to 
work around this is of course possible, but that will make a slow build even 
slower.


4) At the very least, a simple fix that don't get configure artificially 
caught when trying to check if the tools is okay, when it actually is, would 
be okay.



New webrev fixing the comment: 
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.02


If anyone still objects to this, let me known and I'll drop it.
You must change in your patch the ' ' character following ersion by a dot '.' 
because in fact the character is X'FF' which is not displayable and replaced by 
a space.


h: 43 6F 6D 70 69 6C 61 74 65 75 72 20 64 27 6F 70 ; Compilateur d'op
0010h: 74 69 6D 69 73 61 74 69 6F 6E 20 4D 69 63 72 6F ; timisation Micro
0020h: 73 6F 66 74 20 28 52 29 20 33 32 FF 62 69 74 73 ; soft (R) 32ÿbits
0030h: 20 43 2F 43 2B 2B 20 76 65 72 73 69 6F 6E FF 31 ;  C/C++ versionÿ1
0040h: 36 2E 30 30 2E 33 30 33 31 39 2E 30 31 20 70 6F ; 6.00.30319.01 po
0050h: 75 72 20 38 30 78 38 36 0A  ; ur 80x86.

By the way, I would prefer a fix like in the hotspot JDK7u with a user settable 
variable like ALT_MSVC_COMPILER_VERSION and ALT_MSVC_LINK_VERSION. If those 
variables are not defined, then use the make script. There are so many ALT_ 
variables to customize the build that it make sense to use ALT variables also in 
that case.


But you decide, it is just my pratical preference.

Francis


/Magnus





Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-07 Thread Naoto Sato

Hi Magnus,

I think we need to make it clear that the locale we support for building 
the JDK is US English, which is proven to work, and it should be 
documented in README-builds.html or similar. Your change in configure 
script looks good, in order for passing non-English CL.EXE through, but 
I don't think we would support building JDK in a non-English locale 
and it would be on developers' own risk if they prefer to do so. 
Supporting locales for building JDK would provide far more complexity 
than benefit, IMO.


Naoto

On 10/7/13 2:32 AM, Magnus Ihse Bursie wrote:

On 2013-10-06 05:19, David Holmes wrote:

Magnus,

Echoing Naoto's comments I don't agree that we should be supporting
this. In the original email a workaround was mentioned using an
environment variable - if that is the case then I don't think we need
to do anything here. Even if not, who knows how many other languages
we might have to support in this way.


I didn't think a simple patch would generate so much discussion. :-)

I'm just about this close --| |-- to dropping this but let me just
elaborate on a few points here:
1) The fix was indeed intended to be language independet; the comment
about Frech was unfortunate and should be rewritten.

2) The workaround mentioned was for JDK7. No such workaround is possible
for JDK8, and we will fail at configure time.

3) I think English should be the supported locale; unfortunately on
Windows platforms changing locale is system-wide and thus not possible
to change for only JDK build tools. Building in a virtual machine with
English locale to work around this is of course possible, but that will
make a slow build even slower.

4) At the very least, a simple fix that don't get configure artificially
caught when trying to check if the tools is okay, when it actually is,
would be okay.


New webrev fixing the comment:
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.02


If anyone still objects to this, let me known and I'll drop it.

/Magnus




Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-05 Thread Dmitry Samersoff
Francis,

We have exactly the same (or may be ever worse) problems in russia but I
still think it's good to stay with english locale during build.

1. Try applocale -

http://www.microsoft.com/en-us/download/details.aspx?id=13209

not sure it works for modern windows, for windowsXP it solved the problem.


2. Personally I use virtual box and virtual image. It allows me to have
clean window in one click when its behaviour become strange.

-Dmitry




On 2013-10-04 22:04, Francis ANDRE wrote:
 Changing the LANG to C or en_US does not work neither. The VS C++
 compiler does not use the LANG variable for providing messages. I know
 that on WXP, there are options to setup the language of work like
 English but I cannot turn my PC to English because others tools like
 Excel will work in English with the decimal point as '.' instead of the
 ',' for France... The setup of the language for WS Studio is just the
 one you choose at download time -- much like the JDK of Sun for Japanese
 or Chinese --; The point here is that I succeed in downloading the ENU
 VS2010 version but after the installation, it is the French version that
 runs
 
 Anyhow, I think that for this specific case of VS C++ which is not a
 compiler that follows the Linux/Cygwin rules --ie LANG=en_US, one should
 provide a way to support non en_US VS C++ compiler for computing the
 vervion used.
 
 Francis
 Le 04/10/2013 19:16, Naoto Sato a écrit :
 The issue here (and the reason why the rule is to run build in en_US)
 is that the build would be error prone if we allow running builds in
 locales other than US English. In the past, we had several build
 errors related to this, e.g., 'date' command produced differently
 formatted date string for each locale which resulted in build errors.

 Naoto

 On 10/4/13 9:42 AM, Magnus Ihse Bursie wrote:
 I agree that the general rule is to build in an English environment.
 Unfortunately, on Windows, it is not as trivial, nor often possible
 to get tools to produce different output by setting a locale. It is
 not the case with cl.exe, anyway. And in this case, Microsoft
 apparently does not provide the English version to French users.
 Hence this fix.

 /Magnus

 4 okt 2013 kl. 18:18 skrev Naoto Sato naoto.s...@oracle.com:

 Hi Magnus,

 Well, it would work for Latin languages, but not for others, e.g.,
 CJK. I thought that the general rule was to run the build in English
 environment. I would think that French CL.EXE would produce English
 version string on Windows configured for en_US locale.

 Naoto

 On 10/4/13 6:12 AM, Magnus Ihse Bursie wrote:
 Bug: https://bugs.openjdk.java.net/browse/JDK-8025933

 In France, it's not possible to download the English version of Visual
 Studio; hence CL.EXE presents itself as:
 Compilateur d'optimisation Microsoft (R) 32 bits C/C++ version
 16.00.30319.01 pour 80x86
 instead of
 Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01
 for 80x86

 With a simple fix we can handle this in configure as well.

 WebRev:
 http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.01



 /Magnus



 


-- 
Dmitry Samersoff
Oracle Java development team, Saint Petersburg, Russia
* I would love to change the world, but they won't give me the sources.


Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-05 Thread Dmitry Samersoff
Magnus,

Besides general discussion of multi-language locale

fix looks good for me,

but I would prefer to have more generic comments there like

support for different formats of msvc version output

because the fix isn't french specific.

-Dmitry


On 2013-10-04 17:12, Magnus Ihse Bursie wrote:
 Bug: https://bugs.openjdk.java.net/browse/JDK-8025933
 
 In France, it's not possible to download the English version of Visual
 Studio; hence CL.EXE presents itself as:
 Compilateur d'optimisation Microsoft (R) 32 bits C/C++ version
 16.00.30319.01 pour 80x86
 instead of
 Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01
 for 80x86
 
 With a simple fix we can handle this in configure as well.
 
 WebRev:
 http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.01
 
 
 /Magnus


-- 
Dmitry Samersoff
Oracle Java development team, Saint Petersburg, Russia
* I would love to change the world, but they won't give me the sources.


Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-05 Thread David Holmes

Magnus,

Echoing Naoto's comments I don't agree that we should be supporting 
this. In the original email a workaround was mentioned using an 
environment variable - if that is the case then I don't think we need to 
do anything here. Even if not, who knows how many other languages we 
might have to support in this way.


David

On 4/10/2013 11:12 PM, Magnus Ihse Bursie wrote:

Bug: https://bugs.openjdk.java.net/browse/JDK-8025933

In France, it's not possible to download the English version of Visual
Studio; hence CL.EXE presents itself as:
Compilateur d'optimisation Microsoft (R) 32 bits C/C++ version
16.00.30319.01 pour 80x86
instead of
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01
for 80x86

With a simple fix we can handle this in configure as well.

WebRev:
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.01


/Magnus


RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-04 Thread Magnus Ihse Bursie

Bug: https://bugs.openjdk.java.net/browse/JDK-8025933

In France, it's not possible to download the English version of Visual 
Studio; hence CL.EXE presents itself as:
Compilateur d'optimisation Microsoft (R) 32 bits C/C++ version 
16.00.30319.01 pour 80x86

instead of
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01 
for 80x86


With a simple fix we can handle this in configure as well.

WebRev: 
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.01


/Magnus


Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-04 Thread Naoto Sato

Hi Magnus,

Well, it would work for Latin languages, but not for others, e.g., CJK. 
I thought that the general rule was to run the build in English 
environment. I would think that French CL.EXE would produce English 
version string on Windows configured for en_US locale.


Naoto

On 10/4/13 6:12 AM, Magnus Ihse Bursie wrote:

Bug: https://bugs.openjdk.java.net/browse/JDK-8025933

In France, it's not possible to download the English version of Visual
Studio; hence CL.EXE presents itself as:
Compilateur d'optimisation Microsoft (R) 32 bits C/C++ version
16.00.30319.01 pour 80x86
instead of
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01
for 80x86

With a simple fix we can handle this in configure as well.

WebRev:
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.01


/Magnus




Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-04 Thread Magnus Ihse Bursie
I agree that the general rule is to build in an English environment. 
Unfortunately, on Windows, it is not as trivial, nor often possible to get 
tools to produce different output by setting a locale. It is not the case with 
cl.exe, anyway. And in this case, Microsoft apparently does not provide the 
English version to French users. Hence this fix. 

/Magnus

4 okt 2013 kl. 18:18 skrev Naoto Sato naoto.s...@oracle.com:

 Hi Magnus,
 
 Well, it would work for Latin languages, but not for others, e.g., CJK. I 
 thought that the general rule was to run the build in English environment. I 
 would think that French CL.EXE would produce English version string on 
 Windows configured for en_US locale.
 
 Naoto
 
 On 10/4/13 6:12 AM, Magnus Ihse Bursie wrote:
 Bug: https://bugs.openjdk.java.net/browse/JDK-8025933
 
 In France, it's not possible to download the English version of Visual
 Studio; hence CL.EXE presents itself as:
 Compilateur d'optimisation Microsoft (R) 32 bits C/C++ version
 16.00.30319.01 pour 80x86
 instead of
 Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01
 for 80x86
 
 With a simple fix we can handle this in configure as well.
 
 WebRev:
 http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.01
 
 
 /Magnus
 


Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-04 Thread Naoto Sato
The issue here (and the reason why the rule is to run build in en_US) is 
that the build would be error prone if we allow running builds in 
locales other than US English. In the past, we had several build errors 
related to this, e.g., 'date' command produced differently formatted 
date string for each locale which resulted in build errors.


Naoto

On 10/4/13 9:42 AM, Magnus Ihse Bursie wrote:

I agree that the general rule is to build in an English environment. 
Unfortunately, on Windows, it is not as trivial, nor often possible to get 
tools to produce different output by setting a locale. It is not the case with 
cl.exe, anyway. And in this case, Microsoft apparently does not provide the 
English version to French users. Hence this fix.

/Magnus

4 okt 2013 kl. 18:18 skrev Naoto Sato naoto.s...@oracle.com:


Hi Magnus,

Well, it would work for Latin languages, but not for others, e.g., CJK. I 
thought that the general rule was to run the build in English environment. I 
would think that French CL.EXE would produce English version string on Windows 
configured for en_US locale.

Naoto

On 10/4/13 6:12 AM, Magnus Ihse Bursie wrote:

Bug: https://bugs.openjdk.java.net/browse/JDK-8025933

In France, it's not possible to download the English version of Visual
Studio; hence CL.EXE presents itself as:
Compilateur d'optimisation Microsoft (R) 32 bits C/C++ version
16.00.30319.01 pour 80x86
instead of
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01
for 80x86

With a simple fix we can handle this in configure as well.

WebRev:
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.01


/Magnus






Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-04 Thread Francis ANDRE
Changing the LANG to C or en_US does not work neither. The VS C++ compiler does 
not use the LANG variable for providing messages. I know that on WXP, there are 
options to setup the language of work like English but I cannot turn my PC to 
English because others tools like Excel will work in English with the decimal 
point as '.' instead of the ',' for France... The setup of the language for WS 
Studio is just the one you choose at download time -- much like the JDK of Sun 
for Japanese or Chinese --; The point here is that I succeed in downloading the 
ENU VS2010 version but after the installation, it is the French version that 
runs


Anyhow, I think that for this specific case of VS C++ which is not a compiler 
that follows the Linux/Cygwin rules --ie LANG=en_US, one should provide a way to 
support non en_US VS C++ compiler for computing the vervion used.


Francis
Le 04/10/2013 19:16, Naoto Sato a écrit :
The issue here (and the reason why the rule is to run build in en_US) is that 
the build would be error prone if we allow running builds in locales other 
than US English. In the past, we had several build errors related to this, 
e.g., 'date' command produced differently formatted date string for each 
locale which resulted in build errors.


Naoto

On 10/4/13 9:42 AM, Magnus Ihse Bursie wrote:
I agree that the general rule is to build in an English environment. 
Unfortunately, on Windows, it is not as trivial, nor often possible to get 
tools to produce different output by setting a locale. It is not the case 
with cl.exe, anyway. And in this case, Microsoft apparently does not provide 
the English version to French users. Hence this fix.


/Magnus

4 okt 2013 kl. 18:18 skrev Naoto Sato naoto.s...@oracle.com:


Hi Magnus,

Well, it would work for Latin languages, but not for others, e.g., CJK. I 
thought that the general rule was to run the build in English environment. I 
would think that French CL.EXE would produce English version string on 
Windows configured for en_US locale.


Naoto

On 10/4/13 6:12 AM, Magnus Ihse Bursie wrote:

Bug: https://bugs.openjdk.java.net/browse/JDK-8025933

In France, it's not possible to download the English version of Visual
Studio; hence CL.EXE presents itself as:
Compilateur d'optimisation Microsoft (R) 32 bits C/C++ version
16.00.30319.01 pour 80x86
instead of
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01
for 80x86

With a simple fix we can handle this in configure as well.

WebRev:
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.01 




/Magnus









Re: RFR (S): JDK-8025933 Configure should support French cl.exe

2013-10-04 Thread Naoto Sato
It's true that Microsoft VS follows the settings in the Control Panel (I 
doubt it looks at LANG/LC_ALL, as they are POSIX env vars), I think we 
will have to live with it, as that's the way Microsoft does their 
internationalization.


Naoto

On 10/4/13 11:04 AM, Francis ANDRE wrote:

Changing the LANG to C or en_US does not work neither. The VS C++
compiler does not use the LANG variable for providing messages. I know
that on WXP, there are options to setup the language of work like
English but I cannot turn my PC to English because others tools like
Excel will work in English with the decimal point as '.' instead of the
',' for France... The setup of the language for WS Studio is just the
one you choose at download time -- much like the JDK of Sun for Japanese
or Chinese --; The point here is that I succeed in downloading the ENU
VS2010 version but after the installation, it is the French version that
runs

Anyhow, I think that for this specific case of VS C++ which is not a
compiler that follows the Linux/Cygwin rules --ie LANG=en_US, one should
provide a way to support non en_US VS C++ compiler for computing the
vervion used.

Francis
Le 04/10/2013 19:16, Naoto Sato a écrit :

The issue here (and the reason why the rule is to run build in en_US)
is that the build would be error prone if we allow running builds in
locales other than US English. In the past, we had several build
errors related to this, e.g., 'date' command produced differently
formatted date string for each locale which resulted in build errors.

Naoto

On 10/4/13 9:42 AM, Magnus Ihse Bursie wrote:

I agree that the general rule is to build in an English environment.
Unfortunately, on Windows, it is not as trivial, nor often possible
to get tools to produce different output by setting a locale. It is
not the case with cl.exe, anyway. And in this case, Microsoft
apparently does not provide the English version to French users.
Hence this fix.

/Magnus

4 okt 2013 kl. 18:18 skrev Naoto Sato naoto.s...@oracle.com:


Hi Magnus,

Well, it would work for Latin languages, but not for others, e.g.,
CJK. I thought that the general rule was to run the build in English
environment. I would think that French CL.EXE would produce English
version string on Windows configured for en_US locale.

Naoto

On 10/4/13 6:12 AM, Magnus Ihse Bursie wrote:

Bug: https://bugs.openjdk.java.net/browse/JDK-8025933

In France, it's not possible to download the English version of Visual
Studio; hence CL.EXE presents itself as:
Compilateur d'optimisation Microsoft (R) 32 bits C/C++ version
16.00.30319.01 pour 80x86
instead of
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01
for 80x86

With a simple fix we can handle this in configure as well.

WebRev:
http://cr.openjdk.java.net/~ihse/JDK-8025933-configure-support-french-cl.exe/webrev.01



/Magnus