Boost logo

Boost-Build :

Subject: Re: [Boost-build] toolset requirement
From: Vladimir Prus (vladimir_at_[hidden])
Date: 2008-12-06 11:13:46


Deane Yang wrote:

> (Recap: I am trying to put into the requirements of a particular project
> the requirement "<target-os>windows:<toolset>gcc".)
>
> I did a "bjam --debug-configuration" and compared it to "bjam
> toolset=gcc --debug-configuration".
>
> I discovered that in the first case bjam first reads user-config.jam and
> therefore assumes I want to use msvc. It then processes my project's
> Jamfile under that assumption, so it objects to the "<toolset>gcc"
> requirement in the Jamfile.

Does your user-config.jam configures gcc toolset, like so:

        using gcc : ... ;

? If not, then after processing <target-os>windows:<toolset>gcc, Boost.Build
sees that you want gcc as toolset, which you don't have configured.

Typing 'toolset=gcc' on the command like has a side effect of checking if
gcc is configured in user-config.jam. If no, initialization equivalent to

        using gcc ;

is performed.

> In the second case, it still processes the msvc.jam, does everything
> under that assumption, but just before ir processes the project Jamfile,
> it switches to the gcc toolset. So the requirement is OK (but redundant).
>
> So my conclusion is that I can't do what I want to do. I have to say,
> however, that I find it odd that the command-line specification of the
> toolset is processes so late in the game and that a lot of processing is
> done with the default and therefore wrong toolset. But even if that
> really needed to be fixed, I don't think it would help me with my wish.
> Right?

I recommend that you put

        using gcc ;

into your user-config.jam -- is there any reason that does not work?

- Volodya


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