You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stdcxx.apache.org by Martin Sebor <se...@roguewave.com> on 2007/11/12 06:18:17 UTC

library and build sizes on Windows

I enhanced the cross-build scripts to extract the date of the build
and the sizes of the library and of the bildspace (before and after
running the clean target). This works on UNIX but not on Windows
where the date has a different format and the sizes aren't being
reported. Would it be possible to change the Windows infrastructure
to add this info to the logs?

Martin


Re: [PING] Re: library and build sizes on Windows

Posted by Martin Sebor <se...@roguewave.com>.
Andrew Black wrote:
> Martin Sebor wrote:
>> Andrew Black wrote:
> [snip]
>>> The Batman script is build_stdcxx.bat, located along side the unix
>>> build_stdcxx script.  This script is batch file, which calls into
>>> parse_runlog.wsf script for the purpose of processing the result log for
>>> batman.
>> I suspect we're not going to want to touch that. But before the
>> script invokes parse_runlog.wsf it does this:
>>
>>     echo ### Building solution / Creating HTML log
>>     call build\build_%COMPILER%.bat %SHORT%
>>
>>     echo ### Post-processing for Batman
>>     cscript /nologo parse_runlog.wsf /BUILDTYPE:%SHORT% /CONFIG:%COMPILER%
>>
>> It seems that we'll be interested in making changes to this
>> build\build_%COMPILER%.bat script. Where does it come from?
> 
> It's the batch file generated by the configure.bat script.

Oh, so the "script" to migrate from Batman to stdcxx is basically
just these few lines of code:

@echo on
date /T
set
@echo off

echo ### Creating solution

call generate.bat /CONFIG:%COMPILER% /BUILDDIR:%~dp0\build /LOCALES:no

if %errorlevel% neq 0 (
         echo result.file.type=stdcxx-short> %OUTFILE%
         echo state=C>> %OUTFILE%
) else (
     echo ### Building solution / Creating HTML log
     call build\build_%COMPILER%.bat %SHORT%

     echo ### Post-processing for Batman
     cscript /nologo parse_runlog.wsf /BUILDTYPE:%SHORT% /CONFIG:%COMPILER%
)

Minus the invocation of parse_runlog.wsf, and minus the error
branch.

And the date statements that Farid's talking about should go
right after the call to generate.bat and after the call to
call build\build_%COMPILER%.bat.

Travis, could you look into creating this new script and
changing build_stdcxx.bat to invoke it?

Thanks
Martin

> 
> --Andrew Black


Re: [PING] Re: library and build sizes on Windows

Posted by Andrew Black <ab...@roguewave.com>.
Martin Sebor wrote:
> Andrew Black wrote:
[snip]
>>
>> The Batman script is build_stdcxx.bat, located along side the unix
>> build_stdcxx script.  This script is batch file, which calls into
>> parse_runlog.wsf script for the purpose of processing the result log for
>> batman.
> 
> I suspect we're not going to want to touch that. But before the
> script invokes parse_runlog.wsf it does this:
> 
>     echo ### Building solution / Creating HTML log
>     call build\build_%COMPILER%.bat %SHORT%
> 
>     echo ### Post-processing for Batman
>     cscript /nologo parse_runlog.wsf /BUILDTYPE:%SHORT% /CONFIG:%COMPILER%
> 
> It seems that we'll be interested in making changes to this
> build\build_%COMPILER%.bat script. Where does it come from?

It's the batch file generated by the configure.bat script.

--Andrew Black

Re: [PING] Re: library and build sizes on Windows

Posted by Martin Sebor <se...@roguewave.com>.
Andrew Black wrote:
> Martin Sebor wrote:
>> Farid Zaripov wrote:
> [snip]
>>>   But batman script also should to be updated to print the timestamp
>>> of the build at the beginning ("### date:"); the duration of the
>>> solution generating step ("### real time (builddir):") after execution
>>> of the configure.bat and total time at the end after cleanup
>>> ("### real time (total):"). All these actions are performed outside
>>> the build.wsf script.
>> Alright. We need to migrate this script from Batman over to stdcxx
>> so we can enhance it ourselves. In addition to the timing info and
>> the library size I also tried (but couldn't) to determine the name
>> and version of the Windows OS so even the latest test result pages
>> for Windows are incomplete.
>>
>> Andrew, I'm having trouble finding this script. Can you point me
>> in the right direction?
> 
> The Batman script is build_stdcxx.bat, located along side the unix
> build_stdcxx script.  This script is batch file, which calls into
> parse_runlog.wsf script for the purpose of processing the result log for
> batman.

I suspect we're not going to want to touch that. But before the
script invokes parse_runlog.wsf it does this:

     echo ### Building solution / Creating HTML log
     call build\build_%COMPILER%.bat %SHORT%

     echo ### Post-processing for Batman
     cscript /nologo parse_runlog.wsf /BUILDTYPE:%SHORT% /CONFIG:%COMPILER%

It seems that we'll be interested in making changes to this
build\build_%COMPILER%.bat script. Where does it come from?


Martin

Re: [PING] Re: library and build sizes on Windows

Posted by Andrew Black <ab...@roguewave.com>.
Martin Sebor wrote:
> Farid Zaripov wrote:
[snip]
>>   But batman script also should to be updated to print the timestamp
>> of the build at the beginning ("### date:"); the duration of the
>> solution generating step ("### real time (builddir):") after execution
>> of the configure.bat and total time at the end after cleanup
>> ("### real time (total):"). All these actions are performed outside
>> the build.wsf script.
> 
> Alright. We need to migrate this script from Batman over to stdcxx
> so we can enhance it ourselves. In addition to the timing info and
> the library size I also tried (but couldn't) to determine the name
> and version of the Windows OS so even the latest test result pages
> for Windows are incomplete.
> 
> Andrew, I'm having trouble finding this script. Can you point me
> in the right direction?

The Batman script is build_stdcxx.bat, located along side the unix
build_stdcxx script.  This script is batch file, which calls into
parse_runlog.wsf script for the purpose of processing the result log for
batman.

--Andrew Black

Re: [PING] Re: library and build sizes on Windows

Posted by Martin Sebor <se...@roguewave.com>.
Farid Zaripov wrote:
>> -----Original Message-----
>> From: Martin Sebor [mailto:sebor@roguewave.com] 
>> Sent: Monday, December 10, 2007 9:30 AM
>> To: stdcxx-dev@incubator.apache.org
>> Subject: RE: [PING] Re: library and build sizes on Windows
>>
>>
>> I've been doing some work on the test result scripts over the 
>> weekend and noticed a whole bunch of places where we print 
>> out the date on Windows (I counted 12). I dealt with it by 
>> trimming all but the first one from the log when processing 
>> it but we should probably get rid of all the extra dates and 
>> either replace them with the same output as on UNIX if 
>> possible (i.e., real, user, ans system times) or just the 
>> real time. Can this be done on Windows?
> 
>   I've added printing the real time of the every build step:
> http://svn.apache.org/viewvc?rev=602995&view=rev
> 
>   But batman script also should to be updated to print the timestamp
> of the build at the beginning ("### date:"); the duration of the
> solution generating step ("### real time (builddir):") after execution
> of the configure.bat and total time at the end after cleanup
> ("### real time (total):"). All these actions are performed outside
> the build.wsf script.

Alright. We need to migrate this script from Batman over to stdcxx
so we can enhance it ourselves. In addition to the timing info and
the library size I also tried (but couldn't) to determine the name
and version of the Windows OS so even the latest test result pages
for Windows are incomplete.

Andrew, I'm having trouble finding this script. Can you point me
in the right direction?

> 
>   As for the kernel and user time spent to the each step: it's hard to
> implement because we need to summarize the all times of the each
> subprocess. The GetProcessTimes() returns the times only for concrete
> process and not returning the times of the children processes, like does
> times() on unix.

Hm. We might need to settle for the real times on Windows.

Martin


RE: [PING] Re: library and build sizes on Windows

Posted by Farid Zaripov <Fa...@epam.com>.
> -----Original Message-----
> From: Martin Sebor [mailto:sebor@roguewave.com] 
> Sent: Monday, December 10, 2007 9:30 AM
> To: stdcxx-dev@incubator.apache.org
> Subject: RE: [PING] Re: library and build sizes on Windows
> 
> 
> I've been doing some work on the test result scripts over the 
> weekend and noticed a whole bunch of places where we print 
> out the date on Windows (I counted 12). I dealt with it by 
> trimming all but the first one from the log when processing 
> it but we should probably get rid of all the extra dates and 
> either replace them with the same output as on UNIX if 
> possible (i.e., real, user, ans system times) or just the 
> real time. Can this be done on Windows?

  I've added printing the real time of the every build step:
http://svn.apache.org/viewvc?rev=602995&view=rev

  But batman script also should to be updated to print the timestamp
of the build at the beginning ("### date:"); the duration of the
solution generating step ("### real time (builddir):") after execution
of the configure.bat and total time at the end after cleanup
("### real time (total):"). All these actions are performed outside
the build.wsf script.

  As for the kernel and user time spent to the each step: it's hard to
implement because we need to summarize the all times of the each
subprocess. The GetProcessTimes() returns the times only for concrete
process and not returning the times of the children processes, like does
times() on unix.

Farid.

RE: [PING] Re: library and build sizes on Windows

Posted by Martin Sebor <se...@roguewave.com>.
 author="Farid Zaripov-2">
> -----Original Message-----
> From: Martin Sebor [mailto:sebor@roguewave.com] 
> Sent: Thursday, November 22, 2007 2:19 AM
> To: stdcxx-dev@incubator.apache.org
> Subject: [PING] Re: library and build sizes on Windows
> 
> So would be it possible to change the Windows build 
> infrastructure to spit out the date and time in the same 
> format as on UNIX? I.e.,
> 
>      ### date:
>      Wed Oct 31 09:38:50 UTC 2007
> 
> Including the "### date:" part. The exact format of the 
> timestamp itself doesn't have to be exactly the same just as 
> long as it includes the time as well as the date, and it's 
> all on the same line.

  Done:  http://svn.apache.org/viewvc?rev=598697&view=rev

Farid.



I've been doing some work on the test result scripts over the weekend
and noticed a whole bunch of places where we print out the date on
Windows (I counted 12). I dealt with it by trimming all but the first one
from the log when processing it but we should probably get rid of all
the extra dates and either replace them with the same output as on
UNIX if possible (i.e., real, user, ans system times) or just the real
time. Can this be done on Windows?

Martin
-- 
View this message in context: http://www.nabble.com/library-and-build-sizes-on-Windows-tp13700030p14248460.html
Sent from the stdcxx-dev mailing list archive at Nabble.com.


RE: [PING] Re: library and build sizes on Windows

Posted by Farid Zaripov <Fa...@epam.com>.
> -----Original Message-----
> From: Martin Sebor [mailto:sebor@roguewave.com] 
> Sent: Thursday, November 22, 2007 2:19 AM
> To: stdcxx-dev@incubator.apache.org
> Subject: [PING] Re: library and build sizes on Windows
> 
> So would be it possible to change the Windows build 
> infrastructure to spit out the date and time in the same 
> format as on UNIX? I.e.,
> 
>      ### date:
>      Wed Oct 31 09:38:50 UTC 2007
> 
> Including the "### date:" part. The exact format of the 
> timestamp itself doesn't have to be exactly the same just as 
> long as it includes the time as well as the date, and it's 
> all on the same line.

  Done:  http://svn.apache.org/viewvc?rev=598697&view=rev

Farid.

[PING] Re: library and build sizes on Windows

Posted by Martin Sebor <se...@roguewave.com>.
So would be it possible to change the Windows build infrastructure
to spit out the date and time in the same format as on UNIX? I.e.,

     ### date:
     Wed Oct 31 09:38:50 UTC 2007

Including the "### date:" part. The exact format of the timestamp
itself doesn't have to be exactly the same just as long as it
includes the time as well as the date, and it's all on the same
line.

If it's not easy, what would be? It's trivial to change the UNIX
format.

Martin

Martin Sebor wrote:
> Farid Zaripov wrote:
>>> -----Original Message-----
>>> From: Martin Sebor [mailto:msebor@gmail.com] On Behalf Of Martin Sebor
>>> Sent: Monday, November 12, 2007 7:18 AM
>>> To: stdcxx-dev@incubator.apache.org
>>> Subject: library and build sizes on Windows
>>>
>>> I enhanced the cross-build scripts to extract the date of the build 
>>> and the sizes of the library and of the bildspace (before and after 
>>> running the clean target). This works on UNIX but not on Windows 
>>> where the date has a different format 
>>
>> On unix:
>> -----------------------
>> ### date:
>> Wed Oct 31 09:38:50 UTC 2007
>> -----------------------
>>
>> On windows:
>> -----------------------
>> Wed Nov 07 22:23:49 2007: Loading solution...
>> -----------------------
>>
>>   The difference in date format is the only UTC before year on unix :)
> 
> Right. The problem is the line above it. The script looks for the RE
> "^### date:" and takes the whole line below it as the date. We could
> have it look for the Windows-specific string on Windows (and strip
> what follows the timestamp) and the UNIX one on UNIX but I'd rather
> we standardize on the same data format than complicate the script
> logic.
> 
>>
>>> and the sizes aren't being reported. Would it be possible to change 
>>> the Windows infrastructure to add this info to the logs?
>>
>>   The cleaning targets performing by the BATMAN, so to add the sizes
>> to the logs the BATMAN scripts should be changed.
> 
> Okay. We'll move this part (the script that runs the whole build)
> to stdcxx very soon so we'll have direct control over its format.
> 
> Martin


Re: library and build sizes on Windows

Posted by Martin Sebor <se...@roguewave.com>.
I've committed a script to build and run our examples, locales, and tests:
    http://svn.apache.org/viewvc?view=rev&revision=596034

You can see the expected format by running on UNIX. We're not using
it for our nightly builds yet but I plan/hope to transition to it this week.
Once that's done we need to do the same for Windows.

Martin


Martin Sebor wrote:
> 
> Farid Zaripov wrote:
>>> -----Original Message-----
>>> From: Martin Sebor [mailto:msebor@gmail.com] On Behalf Of Martin Sebor
>>> Sent: Monday, November 12, 2007 7:18 AM
>>> To: stdcxx-dev@incubator.apache.org
>>> Subject: library and build sizes on Windows
>>>
>>> I enhanced the cross-build scripts to extract the date of the 
>>> build and the sizes of the library and of the bildspace 
>>> (before and after running the clean target). This works on 
>>> UNIX but not on Windows where the date has a different format 
>> 
>> On unix:
>> -----------------------
>> ### date:
>> Wed Oct 31 09:38:50 UTC 2007
>> -----------------------
>> 
>> On windows:
>> -----------------------
>> Wed Nov 07 22:23:49 2007: Loading solution...
>> -----------------------
>> 
>>   The difference in date format is the only UTC before year on unix :)
> 
> Right. The problem is the line above it. The script looks for the RE
> "^### date:" and takes the whole line below it as the date. We could
> have it look for the Windows-specific string on Windows (and strip
> what follows the timestamp) and the UNIX one on UNIX but I'd rather
> we standardize on the same data format than complicate the script
> logic.
> 
>> 
>>> and the sizes aren't being reported. Would it be possible to 
>>> change the Windows infrastructure to add this info to the logs?
>> 
>>   The cleaning targets performing by the BATMAN, so to add the sizes
>> to the logs the BATMAN scripts should be changed.
> 
> Okay. We'll move this part (the script that runs the whole build)
> to stdcxx very soon so we'll have direct control over its format.
> 
> Martin
> 
> 

-- 
View this message in context: http://www.nabble.com/library-and-build-sizes-on-Windows-tf4788960.html#a13828231
Sent from the stdcxx-dev mailing list archive at Nabble.com.


Re: library and build sizes on Windows

Posted by Martin Sebor <se...@roguewave.com>.
Farid Zaripov wrote:
>> -----Original Message-----
>> From: Martin Sebor [mailto:msebor@gmail.com] On Behalf Of Martin Sebor
>> Sent: Monday, November 12, 2007 7:18 AM
>> To: stdcxx-dev@incubator.apache.org
>> Subject: library and build sizes on Windows
>>
>> I enhanced the cross-build scripts to extract the date of the 
>> build and the sizes of the library and of the bildspace 
>> (before and after running the clean target). This works on 
>> UNIX but not on Windows where the date has a different format 
> 
> On unix:
> -----------------------
> ### date:
> Wed Oct 31 09:38:50 UTC 2007
> -----------------------
> 
> On windows:
> -----------------------
> Wed Nov 07 22:23:49 2007: Loading solution...
> -----------------------
> 
>   The difference in date format is the only UTC before year on unix :)

Right. The problem is the line above it. The script looks for the RE
"^### date:" and takes the whole line below it as the date. We could
have it look for the Windows-specific string on Windows (and strip
what follows the timestamp) and the UNIX one on UNIX but I'd rather
we standardize on the same data format than complicate the script
logic.

> 
>> and the sizes aren't being reported. Would it be possible to 
>> change the Windows infrastructure to add this info to the logs?
> 
>   The cleaning targets performing by the BATMAN, so to add the sizes
> to the logs the BATMAN scripts should be changed.

Okay. We'll move this part (the script that runs the whole build)
to stdcxx very soon so we'll have direct control over its format.

Martin

RE: library and build sizes on Windows

Posted by Farid Zaripov <Fa...@epam.com>.
> -----Original Message-----
> From: Martin Sebor [mailto:msebor@gmail.com] On Behalf Of Martin Sebor
> Sent: Monday, November 12, 2007 7:18 AM
> To: stdcxx-dev@incubator.apache.org
> Subject: library and build sizes on Windows
> 
> I enhanced the cross-build scripts to extract the date of the 
> build and the sizes of the library and of the bildspace 
> (before and after running the clean target). This works on 
> UNIX but not on Windows where the date has a different format 

On unix:
-----------------------
### date:
Wed Oct 31 09:38:50 UTC 2007
-----------------------

On windows:
-----------------------
Wed Nov 07 22:23:49 2007: Loading solution...
-----------------------

  The difference in date format is the only UTC before year on unix :)

> and the sizes aren't being reported. Would it be possible to 
> change the Windows infrastructure to add this info to the logs?

  The cleaning targets performing by the BATMAN, so to add the sizes
to the logs the BATMAN scripts should be changed.

Farid.