AMDG On 10/20/2018 03:52 PM, Peter Dimov via Boost wrote:
Steven Watanabe wrote:
That seems a bit worrisome to me, as I really don't like the idea of having a mixed-state sytem in the long term. It'll be really easy to end up with targets that use both the global /boost/headers and the library specific include paths. I can live with that as a temporary measure, but it's still ugly.
This is unavoidable - in the interim or otherwise - unless we either somehow solve, or outright eliminate, cyclic dependencies. Until then, libraries that form a cycle have to remain /boost//headers.
It's not unsolvable and I think we definitely need to have a game plan for solving it before beginning this particular project. In Boost.Build, it may be as simple as saying: alias targets may be cyclic provided that the build-requests are consistent for each alias-target in the cycle. i.e. you can't have a/release -> b/release -> a/debug. This is a pain to implement, but it's definitely possible, and I'm reasonably confident that it won't result in any weird paradoxes. In Christ, Steven Watanabe