Boost logo

Boost-Build :

From: Edward Diener (eldiener_at_[hidden])
Date: 2007-05-23 10:27:21


Vladimir Prus wrote:
> Edward Diener wrote:
>
>> Vladimir Prus wrote:
>>> On Tuesday 22 May 2007 23:37, Edward Diener wrote:
>>>> I found the information about available toolsets in the detail section
>>>> of the Boost documentation. I would like to recommend that this
>>>> information be linked to from the area of the Configuration topic after
>>>> the line explaining the 'using tool-name;' rule, else the user of Boost
>>>> Build has no idea where to look for toolset information.
>>> This is a good idea. Thanks!
>>>
>>>> My second question has still not been answered so I will repeat it
>>>> again. It regards the 'version' parameter of the 'using tool-name' rule.
>>>>
>>>> If the version parameter can be in any form, what is its purpose ?
>>> Generally, so that you can configure several version of a toolset, and
>>> be able to request a particular version.
>> But how does a version number which is "formless" tell Boost Build what
>> to do ?
>
> In *general*, if you have two version of a toolchain:
>
> using gcc : first : g++-10 ;
> using gcc : second : g++-3.4 ;
>
> then
>
> bjam gcc-first
>
> will because "g++-10" binary to be used, and
>
> bjam gcc-second will cause
>
> "g++-3.4" binary to be used for compiling. There's no any special interpretation
> of version string.

OK, now I understand that the 'version' is just a way of letting the
user specify the toolset to be used when the base toolset name is the
same in more than one using rule.

>
>> As an example, suppose I write:
>>
>> using msvc : 7-1 ;
>>
>> instead of
>>
>> using msvc : 7.1
>>
>> since both are valid evidently because the version number can have any
>> form I like. What does 7-1 or 7.1 mean to Boost Build ? What does it so
>> with the information in the 'version' parameter ?
>
> In the particular case of msvc, version should be in the from "N.M", at
> Boost.Build uses that to decide what options this particular msvc
> supports, so that it does not pass 7.1 options to a 6.0 compiler.

Now this appears to be different from the case above as you are actually
using the 'version' string for other purposes.

I think documenting such things as you have explained here regarding
'version' should be done in the Boost Build documentation.

Thanks for your help.


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk