Re: [PATCH] libkdeinit symbol pruning

Waldo Bastian <[email protected]>
Newsgroups gmane.comp.kde.devel.optimize
Message-ID <[email protected]>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tuesday 20 July 2004 11:13, David Faure wrote:
> On Monday 19 July 2004 13:04, Waldo Bastian wrote:
> > On Monday 19 July 2004 02:05, David Faure wrote:
> > > On Monday 19 July 2004 01:06, Karl Vogel wrote:
> > > > It will break apps that link to the libkdeinit_*.so's or dlopen them
> > > > and try to resolve symbols other than kdemain... but I guess if any
> > > > app does that, then it's already broken by violating the kde abi,
> > > > no?!
> > >
> > > Thinking about it, I'm not sure anyone links to a kdeinit module.
> > > What people do, which is unportable, is to link to a kparts part, but
> > > that's unrelated.
> >
> > What if an application defines a plugin API that plugins can call? (Or
> > worse, if the application doesn't define an API and plugins just call
> > stuff all over the place)
>
> You are right, this happens: with kded :/
> kded modules find symbols in the kded binary itself (so now that I have the
> kdeinit symbol pruning patch applied, kwallet and kpasswdserver don't load
> anymore). This always seemed dirty to me - shouldn't we have a libkded
> instead?

The problem is then that we need to put all of kded in libkded, otherwise we 
just shift the problem. And if we have all of kded in libkded, we still 
export all the symbols, so I don't think that's a good solution.

I think it would be a better solution if kded had a way to specify that it 
wants to export the symbols that are part of its plugin interface. (That 
should be all the stuff that is defined in kdedmodule.h / implemented in 
kdedmodule.cpp)

kded seems illustrative for programs with a plugin interface that isn't pure 
virtual.

Cheers,
Waldo
- -- 
[email protected]  |   KDE Community World Summit 2004  |  [email protected]
[email protected]  | 21-29 August, Ludwigsburg, Germany |  [email protected]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQFA/PqAN4pvrENfboIRAu90AKCjmXg9TFZep2DidcB6hoNZMH92EQCfUHoy
81QexrJkcDXAMFKsu/v3mEY=
=O5iF
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.