Reducing excess linkage - cmake 2.6 IMPORTED targets and LINK_INTERFACE_LIBRARIES for kdelibs
modestas at vainius.eu
Wed Apr 30 16:57:58 CEST 2008
2008 m. April 28 d., Monday, Alexander Neundorf rašė:
>-your patches look good
>-I think you are right
>-cmake 2.6.0 is not released yet and we are already at alpha1 stage of KDE
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
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