|
Boost-Build : |
From: Vladimir Prus (ghost_at_[hidden])
Date: 2002-12-06 11:02:43
Well, Dave and I were chatting via Jabber and seems to solved
the <link> issues.
We have failed to see clear distinction between internal and external
libraries. This is especially tricky if you use several projects,
all of which use Boost.Build.
The proposed solution is: introduce a simple <link> feauture.
It will have two values, static and shared, which will
determine what kind of libraries are desired.
So, for example <link>static will make everything static.
If you want a particular linkage for a certain library, you can specify
that in two ways.
1. When referring to that library
exe a : a.cpp qt/<link>shared ;
2. By using "source" rule as I've described in a previous message:
source zlib : /path/to/zlib/installation/zlib : <shared>false ;
As Dave said: "So you're using "source" as a way of adding a level of
indirection with attached bulid requirements?"
We'll also introduce <link-runtime> feature, which will affect
linking of runtime library only. It's important for Windows,
and seems unavoidable.
The last detail: <link> will be a composite feature and
<link>static will expand to
<link>static <link-runtime>static.
Therefore, <link>static will really make everything static.
OTOH, it's possible to override <link-runtime> explicitly.
Is that solution OK for everybody?
- Volodya
P.S. Markus, Dave told he recieve an email where you say that
firewall did not play nice with Psi. I did not recieve that
message yet :-( I still hope we can do something about that.
Real-time chat proved quite effective.
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