|
Boost-Build : |
From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-09-22 08:57:53
Hi Alexey,
> Autodetection code is called when a module is imported. It puts all
> detected configurations to an instance of 'configurations' class
> (.versions). Some time later 'toolset.using' is called. Any of the
> following in any combinations:
>
> # configure all detected configurations from .versions
> using msvc : all ;
>
> # configure 8.0 if it was detected or try to create a new configuration
> # with default parameters for 8.0
> using msvc : 8.0 ;
>
> # configure default configuration
> using msvc : default ;
>
> # configure default configuration
> using msvc ;
>
> # patch parameters of 8.0 and configure it with new parameters
> using msvc : 8.0 : "C:\\Program Files\\Microsoft Visual Studio
> 8\\VC\\bin\\cl.exe"
>
> Resume: 'registered' configuration is simply saved configuration that
> has been detected. It will be really configured only when
> 'toolset.using' will be called.
So, essentially the configuration class is just a convenient place to store
all auto-detected configurations until they are used. So that you don't
re-run auto-detection process for each "using", right?
Ok, I think I understand now. The patch was just committed, thanks!
> > 2. What can I do with toolset in that state? Can I request such toolset
> > on command line? Say:
> >
> > bjam toolset=gcc-4.20
>
> You can do nothing until you call 'toolset.using'.
Ok.
> > 3. I'd expect toolset.using to be called for all invocations of
> > "configure". Do you mean "configure with explicit version"?
>
> Sorry, I didn't understand. Can you explain a bit more?
Nevermind, your comments above make this question irrelevant.
- Volodya
-- Vladimir Prus http://vladimir_prus.blogspot.com Boost.Build V2: http://boost.org/boost-build2
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