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