Modular building of kde modules

Alexander Neundorf neundorf at kde.org
Tue Mar 17 22:32:31 CET 2009


On Tuesday 17 March 2009, Matthew Woehlke wrote:
> Alexander Neundorf wrote:
...
> > Or should we make it easier to build parts of kdelibs separately ?
> > Or structure kdelibs a bit like kdebase, with a set of "core" libraries
> > (kdecore, kdeui, kio, kfile), and some not so-core stuff, like e.g.
> > katepart, lkhtml, plasma, ftp and http ioslaves, kdoctools, etc. ?
>
> I suspect distros wouldn't complain about that :-).
>
> Somewhat OT, but one thing I would really appreciate is if I could
> install kcalc without dragging in the entire bulk of cups due to
> printer-applet. (This is partly a Fedora problem, however; IOW, I wish
> they'd split kdeutils - and, for that matter, kdepim - into smaller bites.)

Yes, that's a problem of Fedora.
I just checked, in kdeutils/ each subdirectory is added using
macro_optional_add_subdirectory(),
i.e. there is an option which can be used to enable/disable each subdirectory 
individually, e.g. you can enable BUILD_kcalc and disable all other BUILD_* 
options and then only kcalc will be included in the build.

I just committed a patch to 
kdelibs/cmake/modules/MacroOptionalAddSubdirectory.cmake which lets you 
disable all subdirectories in one go, so that it is easier to enable only 
selected ones, e.g. for kdeutils:
$cmake -DDISABLE_ALL_OPTIONAL_SUBDIRECTORIES=TRUE -DBUILD_kcalc <kdeutils_dir>
...
This way you get a build which includes only kcalc.

Actually of course it would be even nicer if you could just check out 
kdeutils/kcalc/ and just build that, but that requires more (although 
basically boilerplate) work from the developers.
My impression is that using macro_add_optional_subdirectory() is at least the 
much easier way to go to do this.

Alex


More information about the Kde-buildsystem mailing list