Boost logo

Boost :

Subject: Re: [boost] [config][predef] Is it OK for boost.config to depend on boost.predef?
From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2014-05-28 10:38:21


On Wed, May 28, 2014 at 8:50 AM, Beman Dawes <bdawes_at_[hidden]> wrote:

> There is a config pull request outstanding that includes <boost/predef.h>.
>
> If it was almost any library other than config, I'd apply this without a
> second thought. But Boost config is special in that if it breaks, virtually
> the whole of boost breaks. So it makes sense to be cautious about
> dependencies. Has there been any discussion about the relationship between
> Boost.config and Boost.predef?
>

There may have been some minor discussion some years ago when I first
proposed Predef. But i don't remember one after that. My goal is to have
Config depend on Predef. And eventually rewrite Config such that is does
use any of the platform specific defs directly.

> Even if we accept the patch, is <boost/predef.h> the right header? It just
>

It's not the right header. Predef supports fine grain inclusion of its
headers.

So the desired effect can be achieved several ways:
>
> 1) #include <boost/predef.h> in the include/boost/config/platform/
> headers.
> 2) #include <boost/predef/platform.h> in the
> include/boost/config/platform/
> headers.
> 3) #include <boost/predef.h> in the files that actually use the desired
> macros.
> 4) #include <boost/predef/platform.h> in the files that actually use the
> desired macros.
>

5)
#include <boost/predef/platform/windows_desktop.h>
#include <boost/predef/platform/windows_runtime.h>

> If I had been writing the code myself, I probably would have selected
> option (4). What do others think?
>

I would go with option (5) :-) Or a variation of that as needed.

Note/Warning, I was not planning on merging Predef develop to master until
after the next release (as the docs need to be updated and quickbook is
giving me problems ATM). So whatever change that depends on those added
defs will need to be postponed until after the next release.

-- 
-- Rene Rivera
-- Grafik - Don't Assume Anything
-- Robot Dreams - http://robot-dreams.net
-- rrivera/acm.org (msn) - grafikrobot/aim,yahoo,skype,efnet,gmail

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