On 03/10/2015 01:53 AM, Gennadiy Rozental wrote:
Vladimir Prus
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