Subject: Re: [Boost-build] duplicate dependencies in bjam backend
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2016-12-17 18:05:17
On 12/16/2016 12:26 PM, Stefan Seefeld wrote:
> By "non-free" I assume you mean features with explicitly defined values
> (as opposed to default ones) ?
Normal features have an enumerated set
of values. Free features have no
constraints. Features like toolset,
link, variant, etc will be part of the
path, but include, define, library-path,
and the like will not.
> That seems to imply that your generated paths (directories) are uniquely
> mapped from features, i.e. no two feature values could result in the
> same path (and thus target). Am I understanding that correctly ?
Yes. There are a number of exceptions,
but that's the general idea.
> I was pondering about that exact situation. Assume the case of a shared
> and a static library build. On unix that typically means that object
> files for the shared library are built with -fPIC, while for static libs
> they don't any special treatment.
> In those circumstances, how would a user request that both library
> variants are to be generated from the same set of object files ? (Say,
> to save space, and to speed up the compilation process) ? Does b2 allow
> that at all ?
It might work if you create separate targets
for the object files and set <link>shared
explicitly on them.
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