Boost logo

Boost :

Subject: Re: [boost] [netlib] Update: 0.9 will not be header-only
From: Jeff Garland (jeff_at_[hidden])
Date: 2010-12-04 10:42:57


Dean Michael Berris wrote:
> Hi Everyone,
>
> To those who are following the development of cpp-netlib (which shall
> be submitted for review /soon/ as Boost.Netlib), the current state of
> 0.9-devel and thus what's going to come out officially as 0.9 in a
> couple of weeks, will not be header-only. Aside from the obvious
> reason that the compile-times are starting to become unbearable (>10
> minutes to build the whole test suite!!) and after noticing that the
> intended simplicity of the API with tag-metafunction dispatch is
> limiting the expressiveness of the HTTP client types, the 0.9 release
> will be the first release that will require an externally linked-in
> static library.

Just happened to catch this. As a fan for all inline code and having made my
own mistake not being aggressive enough with date-time, I say why not make it
a configurable option? That way the client code can decide depending on their
project structure. Even though I'm well versed in building boost libs I still
love it when I don't have to be bothered. Inevitably, I'm working on some
project and then I have to shift contexts, get bjam on the machine, include
the new lib, etc when I already had that setup for the custom code I'm
working. And besides, it's possible that some of us are using external tricks
like pre-compiled headers that will reduce compile times.

So, you might have something like this

#include <boost/netlib_inline.h>

versus

#include <boost/netlib.h>

to control the option. Or, of course, you could go with compiler
macros/settings. Bottom line is that you can setup your test suite to use the
library so that compile times are fast while still allowing all-inline for the
rest of us.

Jeff


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk