Boost logo

Boost :

Subject: Re: [boost] [test] Re: Conflicts when building libraries at root
From: Vladimir Prus (vladimir_at_[hidden])
Date: 2015-03-11 13:56:39


On 03/10/2015 01:53 AM, Gennadiy Rozental wrote:
> Vladimir Prus <vladimir <at> codesourcery.com> writes:
>> The problem is that due to
>>
>> Boost.Test-> Boost.Timer -> Boost.Chrono -> Boost.System
>>
>> dependency chain - which has asynch-exceptions=on, this effectively
>> requests Boost.System to be built and installed with asynch-exceptions=on.
>> On the other hand, top-level build requests Boost.System
>> without asynch-exceptions.
>> As result, build of develop just fails since we can't install Boost.System with
>> two different properties.
>
> I think we need dependency other way around. boost.Test itself needs to be build
> with /EHa and everything which depends on it needs it. All that Boost.Test
> depends on can be built with out /EHa (we won't be able to report error in
> these libs, but have none there, right ;o) )

Could we split the question in two?

First, you say that current direction of dependency is not necessary, and further, it
breaks builds. Shall I remove asynch-exceptions requirement then?

Second, you suggest that clients of Boost.Test should be forced, or suggested to,
enable asynch-exceptions. I don't have an opinion on the essence of this suggestion,
I'd just point out that:

- We have no control of code outside of Boost
- I'm not sure maintainers of other libraries that use Boost.Test would want to
   build with asynch-exceptions

In other words, this second question appears to be fairly complicated, and can't be
solved in time for this release for sure, and would have somebody to push for it.

So, I'll just implement solution for the first question, OK?

-- 
Vladimir Prus
CodeSourcery / Mentor Embedded
http://vladimirprus.com

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