changes to how kdepimlibs and kdebase/workspace are installed and found

Maciej Mrozowski reavertm at
Fri Dec 19 18:11:35 CET 2008

On Thursday 18 of December 2008 20:31:42 Brad King wrote:

> Perhaps we can split it into
> multiple INSTALL(EXPORT) files.  Then use a customized
> KDE4WorkspaceConfig.cmake file that loads multiple export files.  The
> config file can check for each export file and provide it if it is
> available.  Some boolean variables can be set to indicate what was found.

I like the idea and I could create complete patch for kdebase-workspace, but I 
need some hints (for one workspace library and maybe example entry in as I'm not really CMake hacker.
So far I tried to realize first step - install multiple EXPORTS - one per 
library - and I run in some problem with libraries that depend on other 
workspace libraries.
For example, replacing:

install(TARGETS nepomukqueryclient EXPORT kdeworkspaceLibraryTargets 

with something like:

install(TARGETS nepomukqueryclient EXPORT nepomukqueryclient 
install (EXPORT nepomukqueryclient DESTINATION ${LIB_INSTALL_DIR}/cmake)

(in my version I got it to be installed in /usr/lib/cmake/ - similar to pkg-
config, and added lib prefix for those cmake modules to distinguish them from 
their corresponding clients)

results with:
CMake Error: INSTALL(EXPORT "libnepomukqueryclient" ...) includes target 
"nepomukqueryclient" which requires target "nepomukquery"that is not in the 
export set.

How to handle such cases properly?
Imho it may not be possible to separately export everything as it seems that 
libraries depending on each other would need to be exported together (and thus 
built together, as install (TARGETS) command is responsible for it, right?). 
While it should not be a problem really it would be rather workaround and it 
should be done proper way of at all imho.
(as it appeared that "hacking" build system to not use this way of finding 
packages is not that hard)

(and btw, KDE4 CMake files would really need some love in terms of 
reformatting :)


Wyslij internetowa kartke z zyczeniami!
Kliknij >>>

More information about the Kde-buildsystem mailing list