What to do with the kdebase/workspace dependency?

Andreas Pakulat apaku at gmx.de
Tue May 11 21:57:26 UTC 2010


On 11.05.10 23:06:31, Alexander Neundorf wrote:
> On Tuesday 11 May 2010, Andreas Pakulat wrote:
> > On 11.05.10 22:18:01, Alexander Neundorf wrote:
> > > On Tuesday 11 May 2010, Andreas Pakulat wrote:
> > > > Hi,
> > > >
> > > > so, 4.0 is out and I think we should try to tackle the
> > > > kdebase/workspace dependency. Its a problem for various distro's which
> > > > split the libraries, its a problem for people compiling kdebase
> > > > themselves and disabling parts of it (because the kdebase/workspace
> > > > cmake stuff doesn't support this properly)
> > >
> > > What exactly ?
> >
> > There's just a single KDE4WorkspaceConfig.cmake that loads and creates
> > all targets and only those that were active during building of
> > kdebase/workspace. What would be needed is a way to do find_package(
> > KDE4Workspace 4.3.0 COMPONENTS processui processcore REQUIRED) and have
> > it fail if either processui or processcore libraries are missing.
> 
> Would checking if(KDE4WORKSPACE_PROCESSUIL
> 
> Right now this is in KDE4WorkspaceConfig.cmake:
> _kde4workspace_set_lib_vars( PROCESSUI          processui)
> 
> Would 
> if(TARGET processui)
>    _kde4workspace_set_lib_vars( PROCESSUI          processui)
> endif(TARGET processui)
> 
> 
> be better ?
> Then you could check 
> if (KDE4WORKSPACE_PROCESSUIL_LIBRARY)
>  ...
> endif(KDE4WORKSPACE_PROCESSUIL_LIBRARY)

I'm not following, the thing that came up on IRC today was somebody who
had kdebase/workspace built+installed, but not libs/ksysguard (i.e.
processui/processcore where missing). Nonetheless the variable was set
to the import-target-name which then results in linking errors. So this
should be found during cmake time and ideally without kdevelop doing
additionally if-checks, but just using the COMPONENTS support of
find_package.

Anyway, there are more reasons apart from this, why the dependency is a
problem and those are not fixable so easily.

Andreas

-- 
Best of all is never to have been born.  Second best is to die soon.




More information about the KDevelop-devel mailing list