Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-08-23 02:22:05


Hi Philipp,

> Hi
>
> I would like to define different libraries to link with when in
> different address modes.

I think you need to use target alternatives, something like:

lib foo : : <name>foo64 <address-mode>64 ;
lib foo : : <name>foo32 <address-mode>32 ;

> Currently, I have to following in my
> site-config.jam:
>
> [ ... ]
> if [ os.name ] = LINUX {
> import site-config.linux ;
> }
>
> if [ os.name ] = SOLARIS {
> import site-config.solaris ;
> }
>
> How can I put it that I can have a site-config.solaris32 and
> site-config.solaris64 (and the same for Linux as well)?
>
> I would imagine something like
>
> if [ feature.value address-mode = 32 ] {
> // blah
> }

That's almost impossible. The targets defined in jamfiles are actually
'metatagets'. Only after Jamfiles are read, the metatargets are build with
specific properties and create real file targets. So, at the moment when
Jamfile is read, it's not known which properties will be used for building.
You can even build both 32-bit and 64-bit variant with the same invocation.

So, you need to use alternatives.

HTH,
Volodya

>
> Btw, I have
>
> feature address-mode : 32 64 : propagated ;
>
> in tools/builtin.jam.
>
> Thanks a lot in advance.
>
> Regards

 


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