X11 expert help needed

Alexander Neundorf neundorf at kde.org
Fri Jul 29 21:54:38 CEST 2011

Hi Martin,

thanks for having a look :-)

But I still have questions...

On Thursday 28 July 2011, Martin Gräßlin wrote:
> On Monday 18 July 2011 22:43:20 Alexander Neundorf wrote:
> > Hi,
> > 
> > I'm currently comparing our FindX11.cmake with the one in current cmake.
> > Our copy is in kdelibs/cmake/modules/, CMake's is in its Module/
> > directory.
> > 
> > There are some things our version checks for, which the one from cmake
> > doesn't, and vice versa.
> > Also, we append more of the libs to the X11_LIBRARIES variable.
> > 
> > Is this good ?
> > Should the stuff we do just be merged into the cmake version ?
> > Can somebody who knows more about X11 please have a look at these two
> > files, one in kdelibs, the other one in cmake 2.8.5 or git HEAD ?
> > http://cmake.org/gitweb?p=cmake.git;a=summary
> > 
> > Helping hands are very appreciated :-)
> I just had a look at the diff. As far as I have seen the KDE version
> includes checks for 
> * XSync
> * Xkbfile
> * SM

From these three, only Xkbfile is a separate library ?
For the other two only for headers is checked.

Do you know what the exact purpose of XSync and xkbfile is (not only for KDE) 

> For XSync I can find a
> #ifdef HAVE_XSYNC
> in kde-workspace/kwin/client.cpp No idea if it is really required, but at
> least it's used. Though I cannot find a check in either the toplevel or
> kwin's CMakeLists.txt.
> Xkbfile is used by the keyboard KCM and is checked in kde-workspace
> CMakeLists.txt if(NOT X11_Xkbfile_FOUND)
>     macro_log_feature(X11_Xkbfile_FOUND "libXkbfile" "X11 keyboard layout
> library" "http://xorg.freedesktop.org" TRUE "" "Needed for keyboard
> modules.") endif(NOT X11_Xkbfile_FOUND)
> SM sounds like it would be needed by ksmserver. But at least in the
> CMakeLists.txt I could not find a usage.
> Maybe an idea would be to git blame the file and contact the devs why they
> added the checks.
> In the other direction it seems like only Xi is in CMake version which is
> missing in KDE's. 

What is Xi ?

> I think it would make sense to update the KDE's one.

In the KDE version additionally Xau, Xdmcl, Xpm and Xft are added 
automatically to X11_LIBRARIES. This means whoever uses X11_LIBRARIES, also 
links against those libraries.
I don't know how much of a problem this is, but if it is not really necessary, 
I'd prefer not to merge this part (where X11_LIBRARIES is set) to cmake.

What do you think ?


More information about the Kde-buildsystem mailing list