Greetings Farid

I wonder if MSVC 7.1 has a fixed length buffer used in generating the temporary batch file. If this is the case, the buffer seems to have an odd length. wc indicates that the fragment of the vcproject present in the output file has a length of 1044 characters, with the entire fragment having a length of 1228 characters. These numbers might be a tad off, as I'm using unix newlines rather than windows newlines.

The fact that it's the last block of characters rather than the first block is a tad puzzling if this is a fixed length buffer. If the command were read in blocks of X characters (Where X is a round number like 2048), and a bug causes MSVC to not echo the intermediate reads, this could make more sense.

A workaround might be to create a test_locales.bat script, containing the series of commands, then execute that script as the pre-build (or build event?). It might also be possible to compress the command string by using a for /F loop to iterate over the locales to test, rather than spelling out each test step.

--Andrew Black

Farid Zaripov wrote:
-----Original Message-----
From: Martin Sebor [mailto:[EMAIL PROTECTED] Sent: Tuesday, January 16, 2007 8:27 PM
To: [email protected]
Subject: Windows locale failures

It looks like the recent changes to the Windows side of the build and test infrastructure might be causing all locales to fail to build (see the error below). Farid, can you see what's going on?

  Hmm, I see that Pre-Build command line is broken.

Should be:

@echo off
if exist "%builddir%\lib\stdlib12d.dll" if not exist
"%builddir%\12d\bin\stdlib12d.dll" copy /Y
"%builddir%\lib\stdlib12d.dll" "%builddir%\12d\bin\stdlib12d.dll"
echo cscript /nologo "%srcdir%\etc\config\windows\run_locale_utils.wsf"
/s /b:"%builddir%\12d\bin" > "%builddir%\12d\bin\sanity_test.bat"
echo cscript /nologo "%srcdir%\etc\config\windows\run_locale_utils.wsf"
/f /b:"%builddir%\12d\bin" /i:"%srcdir%\etc\nls" /l:af_ZA.ISO-8859-1 >
"%builddir%\12d\bin\af_ZA.ISO-8859-1.bat"
and so on by one line per locale

But the present command line is:

@echo off
i12d\bin\zh_CN.GBK.bat"
echo cscript /nologo "%srcdir%\etc\config\windows\run_locale_utils.wsf"
/f /b:"%builddir%\12d\bin" /i:"%srcdir%\etc\nls" /l:zh_HK.BIG5-HKSCS >
"%builddir%\12d\bin\zh_HK.BIG5-HKSCS.bat"
...

  Seems to first 'i' from line "i12d\bin\zh_CN.GBK.bat"" is cutted line
"if exist ...", but I have no idea how this can happened.

Farid.

Reply via email to