Notes |
|
(0038020)
|
Brad King
|
2015-02-23 09:18
|
|
We already support add_dependencies for IMPORTED targets, and they just transitively forward through. The same could work for INTERFACE libraries.
Furthermore, if this isn't done already, we also need dependencies on INTERFACE libraries to forward through to any of the implementations behind those interfaces. This should work without an explicit add_dependencies when possible. |
|
|
(0038355)
|
Brad King
|
2015-03-27 15:52
|
|
As mentioned in the mailing list thread linked in the description, this restriction was added by commit v3.0.0-rc1~175^2~20 (add_dependencies: Disallow use with INTERFACE_LIBRARY, 2013-12-25). The commit message does not have much detail on why. It was merged in a topic merged by commit v3.0.0-rc1~175 (Merge topic 'minor-cleanups', 2014-01-06).
I think the commit message is sparse because at the time it was a fairly obvious cleanup of the then-recently added INTERFACE library feature. The reason is that since INTERFACE libraries are not generated as build targets there can be no build-time dependency directly on them. Generated headers are expected to be provided by some other target that does build.
What is missing is that if another target in the same project consumes the generated headers through the INTERFACE library it should not have to know what other real target generates those headers. This is very similar to the use case of IMPORTED targets that have custom targets to generate them. As mentioned in 0015414:0038020, similar transitive forwarding of the dependencies should be added. |
|
|
(0038356)
|
Brad King
|
2015-03-27 15:57
|
|
|
|
(0038357)
|
Brad King
|
2015-03-27 16:28
|
|
|
|
(0039751)
|
Robert Maynard
|
2015-11-02 09:13
|
|
Closing resolved issues that have not been updated in more than 4 months. |
|