trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: November 2011

Re: [trinity-devel] kdepim 3.5.13 and libkcal

From: Darrell Anderson <humanreadable@...>
Date: Sun, 6 Nov 2011 11:55:08 -0800 (PST)
> > Building kdepim from the 3.5.13
> source tarball results in
> > two include libkcal directories:
> > 
> > $PREFIX/include/libkcal
> > 
> > $PREFIX/include/kde/libkcal
> > 
> > All but two of the header files are in the latter
> > directory.
> > 
> > In KDE 3.5.10 there was only $PREFIX/include/libkcal.
> > 
> > Why is kdepim creating two libkcal directories? Is
> there a
> > way to patch that?
> > 
> > does your package system allow you to modify the
> > package tree? why not just do a quick "mv" and put
> > all the headers into the correct dirs?
> 
> I thought about that but closer inspection of the kdepim
> package shows a whole bunch of $PREFIX/include/kde/..
> subdirectories. I suspect there is a fundamental problem
> with the make files that should be fixed.
> 

Looks like the fix was straightforward: a one line patch in the libkcal CMakeLists.txt file.

Almost. Kipi-plugins still would not build. Further inspection showed the kdepim build process placing numerous header files in $PREFIX/include/kde rather than $PREFIX/include. I then modifed all of the kdepim CMakeLists.txt files that did this.

Patch:

http://humanreadable.nfshost.com/trinity/patches/kdepim/include-dirs.patch

After applying the patch and rebuilding kdepim, the affected header files were installed to $PREFIX/include/ rather than $PREFIX/include/kde/.

Building kipi-plugins then succeeded.

The kdegraphics package also creates this subdirectory.

Patch:

http://humanreadable.nfshost.com/trinity/patches/kdegraphics/include-dirs.patch

As most of us here do not build every single additional package in the applications tree, there could very well be other apps that will fail to build because of this unexpected location of kdepim and kdegraphics header files. The kipi-plugins package might be the exception but who knows. That most of us do not build these additional packages likely is why nobody discovered this problem earlier. Perhaps we should have a policy of building every single package before releasing source tarballs?

KDE 3.5.10 does not have a $PREFIX/include/kde directory. I don't know why this happened with Trinity.

With that said, possibly this $PREFIX/include/kde subdirectory was created because of conflicts with KDE4/QT4. If that is the case then packages such as kipi-plugins need patching to find the header files in the new location. Also a subdirectory name of $PREFIX/include/trinity or $PREFIX/include/kde3 would be better than $PREFIX/include/kde so nobody confuses those header files with KDE4 files.

If there is no conflict then would somebody please merge these patches in svn? If the patches cause conflicts with KDE4/QT4 then let me know and I'll try to patch kipi-plugins accordingly.

Darrell