|
Boost Testing : |
From: Stephen W. Carson (StephenC_at_[hidden])
Date: 2005-01-07 11:39:33
Aleksey Gurtovoy wrote:
>> and our initial attempt to build 1.32 with CodeWarrior 9.3 resulted
>> in a slew of build errors which has us backed off for now.
>
>
>
>Hmm, this one is strange (unless you were trying to build through Bjam
>-- in that case, please see below). Some minor issues aside, 1.32 is
>known to play friendly with CW 9.3 on OSX (it's one of our production
>configurations here at work).
>
>
Our contact at MetroWerks said the same thing, that boost should be
fine on CW 9.3 on OSX. Perhaps our Mac programmer either meant that our
code that uses boost was issuing errors when she switched to 9.3 or
maybe she did try to build boost and we just need to set the CodeWarrior
boost project up differently, (we've found jam really confusing on
Windows and Mac and no one here has ended up really confident about how
to do boost builds). I'll look into that.
>Yep, this is probably the best option at the moment. As a matter of
>fact, with the latest "regression.py" you don't need to specify
>"--bjam-toolset" explicitly: if the provided toolset is not in the
>list of the toolsets supported by build.sh/.bat scripts, the platform
>default will be used automatically.
>
>
I gave this a try just to see this much work and, indeed, the script
realized that cw wasn't supported for building jam and built it with
darwin instead.
Somewhat to my surprise, the regressions went ahead and ran using
gcc I believe even though I specified "--toolset=cw". I would have
expected the script to stop at that point and report that there was a
problem with the cw toolset or something. Or maybe I don't have a clue
what is going on.
>
>
>>>
>>> The other option would be hacking at build.sh and build.jam in
>>> boost-root/tools/build/jam_src to add the support for CW in MacOS.
>>>
>>> But it doesn't end there. Even though the Getting Started docs say
>>> that CW is supported, it currently only supports it on Windows.
>>
>>
>
>To elaborate a little more: the main issue here is the difference in
>command line options for 'mwcc' tool on OS X and Windows. The toolset
>file ($BOOST_ROOT/tools/build/v1/cw-tools.jam) needs to be modified to
>somehow accomodate for the differences.
>
>
This is all new to me, so you're going to have to walk me through
anything you want me to figure out about the build tools.
For starters, any thoughts on how to go about figuring out what the
mwcc command line options should be under OS X (and might they even be
the same as for mwcc under Windows?)
>>
>>
>>
>>>>> One more question, John Maddock suggested that I give the
>>>>> different toolset runs a "different identifier name"? What does he
>>>>> mean? The way the tables look it seems like I should use
>>>>> "--runner=Dirxion" for both darwin and CodeWarrior and the results
>>>>> will be differentiated by the differing toolset identifiers. Is
>>>>> there something else I should do to differentiate the results from
>>>>> the two compilers?
>>>
>>>
>>>
>>> He means to make a custom toolset that includes the version
>>> information.
>>
>>
>
>IOW, make a wrapper toolset file which includes the version and
>platform information in its name and place it in the same directory
>with "regression.py". Something like this:
>
> [cw-9_3-darwin-tools.jam]
>
> {
> local CW_VERSION = 9.0 ;
> extends-toolset cw ;
> }
>
>The convention is needed to be able to markup "expected" failures for
>the particular compiler version/platform.
>
I see the following is there already:
$BOOST_ROOT/tools/build/v1/cw-9_3-tools.jam
But I suppose I need to make one specific to darwin, right? (And it
doesn't go down in this v1 folder? It goes in the folder that has
regression.py?)
Also why is CW_VERSION set to 9.0. Isn't the CodeWarrior version 9.3?
So once I get this "cw-9_3-darwin-tools.jam" file set up, I should
now run the python script with "--toolset=cw-9_3-darwin", right?
Thanks,
-- Stephen W. Carson, Software Engineer DirXion Software in St. Louis, MO (636) 717-2367 "Premature optimization is the root of all evil." -Donald Knuth