RFC: KDE and namespace cleanness

Lubos the one with the kdelibs hacks Lunak l.lunak at suse.cz
Mon Feb 24 17:14:36 GMT 2003

On Friday 14 of February 2003 11:22, Lubos Lunak wrote:
>  Hello,
>  See the attached patch for admin/ (still work in progress, but it works
> already). Every library may have another flag in Makefile.am listing
> allowed public symbols, for example libkdecore_la_NMCHECK = K*
> NETWinInfo::* malloc free . Those with trailing * are prefixes, the rest
> must match "exactly". Arguments are ignored, because I don't consider them
> actually important (why to allow one overloaded version and not another).

 Just FYI - it's already in CVS. And, unlike some other things, it shouldn't 
even break anything ;) , because it's not enabled anywhere yet. But if you're 
curious, you may e.g. add libkdecore_la_NMCHECK = K* to kdecore's Makefile.am 
and see what kinds of interesting symbols do we have. For example 'struct X', 
'findEntity()', 'class ContextWidget','put_it_in()' or 'struct string_entry'.

 For now, I'll just play a bit with it, and then probably enable it in some 
unimportant directory just to find out how portable this is. There's still a 
lot of time before KDE3.2 / 4.0 :).

 BTW, http://people.redhat.com/drepper/dsohowto.pdf seems to be at version 1.0 
release. What's the gcc version going to have the hidding attributes, gcc3.4?

>  BTW, one more related thing. I suggest committing the attached patch
> kinit.cpp.patch . I think the comment in the patch explains it - we
> shouldn't use main() as the entry point for kdeinit modules. This would
> also mean all kdeinit enabled apps would have to use kdemain() as their
> entry point, and all dummy.cpp files for kdeinit modules would eventually
> have to become real .cpp files in cvs containing:
> extern "C"
> int kdemain( int argc, char* argv[]);
> int main( int argc, char* argv[] )
> {
> return kdemain( argc, argv );
> }

 I've already changed this in kdeinit, and will slowly change all KDE apps and 
the kdeinit README.

Lubos Lunak
KDE developer
SuSE CR, s.r.o.  e-mail: l.lunak at suse.cz , l.lunak at kde.org
Drahobejlova 27  tel: +420 2 9654 2373
190 00 Praha 9   fax: +420 2 9654 2374
Czech Republic   http://www.suse.cz/

More information about the kde-core-devel mailing list