|
Boost-Build : |
From: Andrei Melnikov (andy.melnikov_at_[hidden])
Date: 2006-08-10 15:47:57
On 10/08/06, Johan Nilsson <r.johan.nilsson_at_[hidden]> wrote:
> Andrei Melnikov wrote:
> > Should we have boost_filesystem-vc80-mt-x64-1_35.dll for
> > address-model=x64 builds?
>
> [Just thinking out loud]
>
> Good question. As a counter question - should the libraries generated by the
> 'normal' VC8 compiler be named <libname>-vc80-mt-x32-1_35.dll ?
>
> That being said: is the address model (and architecture) _really_ a property
> of the tool, or is the cross-compiler a tool variant? I'd lean towards the
> latter, meaning that the tool part of the generated library names should be
> changed for x64 builds. I mean, you can't invoke the regular x86 compiler
> with a /x64 switch - you are executing a separate image when you do
> cross-compiler builds.
>
> Maybe the tool version part of the tag should include the information, i.e.
> "boost_filesystem-vc80x_[ia|amd]64-mt-1_35.dll"?
>
I think the position it doesn't matter. The decoration scheme enables
autolinking and reduces DLL hell. You can put different flavours of a
library to a single folder, add the correct library search path to
Boost.Build, and will get the correct library selected automatically.
Now, if I want to create a Jamfile compatible with both 32 and 64 bit
address model, and I want to use autolinking, I have to use
model-specific library search paths. These conditional paths add
complexity, and undermine the whole idea of autolinking.
Andrei
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