Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-06-16 08:52:44


Hi Mat,
> On 6/15/05, Vladimir Prus <ghost_at_[hidden]> wrote:
> > On Monday 13 June 2005 23:43, JOAQUIN LOPEZ MU?Z wrote:
> > > For the record, the same thing happens with BB2 in vacpp.
> > > For instance, serialization builds into:
> > >
> > > boost_serialization-xlc-d-1_33.so.1.33.0
> >
> > And what's wrong with that? I think it's exactly the same as in V1.
>
> We have a library that depends on boost. We've been building some of
> the required boost libs using the alias rule. Using BBv2 from 1.32.0
> this yielded boost libraries without any version suffix. We were then
> able to provide clients of our library with IDE-based project
> stationery that links against the BBv2-built artifacts. Everything
> worked fine. But, when we upgraded to CVS BBv2, the BBv2-built boost
> libraries now have a 1.33.0 suffix. As a result, they are no longer
> usable by the IDE-based client projects.

I see. Apparently "like in V1" is not a guarantee against problems.

> This change has cost us a fair amount of time so far. First we had to
> figure out why, after upgrading and cleaning, our IDE-based client
> projects were breaking. Second we had to try to determine whether this
> was intentional BBv2 behavior or a bug. Since we couldn't find any
> documentation about the change we posted here and waited.

Sorry that it broken your project -- the idea was to make life easier for
installing boost.

> Third we
> (still) have to figure out a new Jamfile structure to support our
> desired workflow. It would be great to have some guidance on this last
> point.

The first question is: are those suffixes necessary for OSX in any case? For
Linux, the suffixes allow several versions of boost to coexist. If OSX is the
same, then we need suffixes at least for Boost "standalone" install. If not,
and OSX has some other mechanism to handle library versions, we can remove
the suffix completely.

If the suffix cannot be removed in all cases, we need to remove it selectively
for your project. The problem is that boost Jamfiles use command line option
to select if the suffix is added or not. Building with

bjam --layout=system

should get rid of the suffix, but it's clearly not nice solution. Probably, we
should be adding the suffix only when building Boost itself for install (that
is via "bjam stage" or "bjam install" in Boost root), and not in any other
case?

- 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