|
Boost : |
From: Vinnie Falco (vinnie.falco_at_[hidden])
Date: 2020-03-06 22:42:19
On Fri, Mar 6, 2020 at 2:11 PM Janson R. via Boost
<boost_at_[hidden]> wrote:
>
> On 06/03/2020 20:02, Peter Dimov via Boost wrote:
> > It's about libraries that depend on it.
>
> IMO libraries that depend on it would rather have the choice of having
> it as header-only or compiled and deal with the consequencea of their
> choice themselves rather than being forced onto a model.
I think Peter is right in this case. Library A which uses library B
should not have an opinion on whether library B is consumed as
header-only or as a linked library. The decision on how each library
in a linked executable is configured should be up to the top-level
build target (i.e. the program) and not any of the individual
components. This is why the default for libraries which have a
header-only configuration, should be a linkable library target, since
it creates the least headache.
A header-only configuration option is only provided to capture that
subset of users who don't want the hassle of integrating another
linked library into their build, for whatever reason. It should not be
the default, and it should not be encouraged as the status-quo.
Regards
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk