Reducing excess linkage - cmake 2.6 IMPORTED targets and LINK_INTERFACE_LIBRARIES for kdelibs

Modestas Vainius modestas at vainius.eu
Wed Apr 30 16:57:58 CEST 2008


Hello,

2008 m. April 28 d., Monday, Alexander Neundorf rašė:
>Pro:
>-your patches look good
>-I think you are right
Great.

>-cmake 2.6.0 is not released yet and we are already at alpha1 stage of KDE 
4.1
Yep, but it is very very near.

> Depending on how we deal with the compatibility problem, I'd like to do
> this once trunk is open for KDE 4.2 and require cmake 2.6.x by then, so
> *every* developer will notice when something breaks. Then we'll also have
> time to make sure at least the sources in KDE svn build properly.
I understand your concerns. You have to make sure nothing breaks on more 
platforms than GNU/Linux. Then could we ask to make that "new way" as an 
option (non-default) for kdelibs with cmake 2.6? This way we can ask other 
KDE developers to accept patches fixing target_link_libraries() (they would 
be harmless for the default way). I especially want point 2 
(LINK_INTERFACE_LIBRARIES) to be done by KDE developers (for kdelibs and 
kdepimlibs at least). Again, this can be done via some macro which would be 
noop if the option is not enabled.

We are doing this, because so much excess interlinking hurts quality of Debian 
archive and makes various transitions involving KDE painful. Currently, we 
wouldn't very mind excess linkage with QtNetwork, QtXml, QtDBus, QtSvg, kdeui 
(via kio) etc. (it would be nice to have that cleaned up too), but we 
definitely must get rid of -lX11 -lz -lldap -lXext etc (which require build 
dependences of their own).

I could rewrite the 97 patch making the "new way" depend on the kdelibs switch 
(e.g. -DUSE_LINK_INTERFACE) (which would be disabled by default) if you're 
going to accept it. Even if you prefer official KDE 4.1 to use old way, 
Debian will use the new way, so you can be sure it will be rock solid for KDE 
4.2 on GNU/Linux.

-- 
Modestas Vainius <modestas at vainius.eu>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20080430/5682d5a3/attachment.pgp 


More information about the Kde-buildsystem mailing list