Header cleanup / Link interface (was kdewidgets: fix build)
Stephen Kelly
steveire at gmail.com
Sat Jul 20 07:21:37 UTC 2013
Alexander Neundorf wrote:
> What happens if you would hide the dependency from C to A ?
>
> Maybe B at some point does not use A anymore
Binary incompatible change. If it is possible that B can be ported away from
A, then use
target_link_libraries(B LINK_PRIVATE A)
and A will not propagate. C will have to list it explicitly itself if
needed.
> Or if I refactor C and port it away from B (but still use A), if I simply
> remove B from the dependencies it will not build anymore, because A is
> missing.
> Without listing A, the patch would be
> -target_link_libraries(C B)
> +target_link_libraries(C A)
> which looks like "I replaced B by A". With listing A, the patch would be
> -target_link_libraries(C B A)
> +target_link_libraries(C A)
> which IMO clearly says "C doesn't use B anymore".
The rest of the patch and the commit message say a lot more.
I'm just adding information here. Whoever wants to can make the policy
decision.
Thanks,
Steve.
More information about the Kde-frameworks-devel
mailing list