2012/11/6 Stephen Kelly <steve...@gmail.com>

> Stephen Kelly wrote:


> <lots of amazing stuff>


>
So that it is fully aware of all of its [transitive] dependencies (and any
> includes and compile defintions requirements) and I would use it like this:
>
>  add_executable(foo_exe ...)
>  target_link_libraries(foo_exe boost::mpl)
>

Yeah, I like that!!
That breaks cycles, but it also breaks transitive dependencies, no?


> I'm not sure if there's any good alternative to the _iface targets for
> cycle-avoidance, but if it's good enough, and can be implemented, I'd say
> it
> would be feature-prooven.


Why do we need to avoid cycles? CMake supports recursive dependencies among
static libraries. For header only libraries, cycles should not be
problematic either.

I would say the graph of interfaces may be acyclic, as long as there is at
most one shared library per strongly connected component.

Cheers, Daniel
--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers

Reply via email to