Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-06-02 02:38:41

On Wednesday 01 June 2005 11:20, Johan Nilsson wrote:
> "Vladimir Prus" <ghost_at_[hidden]> wrote in message
> > On Friday 20 May 2005 11:12, judoka1981 wrote:
> >> > root/Jamfile. I'm using the install rule as I'd like all libraries
> >> > (pre-built as well as included in project) at the same location.
> >>
> >> Just wanted to add that the install rule also tries to copy
> >> prebuilt.lib onto itself, even though "<install-dependencies>off" is
> >> specified.
> >
> > "Onto itself"? That's very stange. I've tried with this Jamfile:
> >
> > lib prebuilt : : <file>libprebuilt.a ;
> > lib my : my.cpp prebuilt ;
> > install dist : my ;
> I've got a subdir called "libs", which is supposed to contain prebuilt
> _and_ generated libraries. After building e.g. "my" lib I try to install it
> into "libs", where the prebuilt is already located, hence the attempt to
> specify <install-dependencies>off.
> Does that explain the problem better to you?

Yes, I can now reproduce the problem.

> > When built with "bjam -n link=static", it would try to copy
> > "libprebuilt.a" to
> > "dist", which is more or less expected.
> Unless <install-dependencies>off, or?

Regardless of <install-dependencies>. Consider:

lib prebuilt : : <file>libprebuilt.a ;
lib my : my.cpp prebuilt ;
exe main : main.cpp my ;
install dist : my ;

Here, 'main' will link to 'prebuilt' in all cases. Likewise, 'dist' will see
'prebuilt' it its sources and try to install it.

I've modified the logic so that 'my' passed to dependents a <library>
property, which is used for proper linking, but is ignored by 'install'
unless <install-dependencies> is on. That change fixes the "copy onto itself"

It's in CVS and in the current nightly build. Can you try it? And please also
check if the "remove prebuilt libraries on --clean" problem is there. I could
not reproduce it, so if it reproduces for you, could you please create a
small testcase?


Vladimir Prus
Boost.Build V2:

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at