Add support for building libplasma with GLES2
Review Request #100705 - Created Feb. 21, 2011 and submitted
After build kwin with GLES2 code path, the kwin binary still has dependency on libGL.so, which is introduced by libplasma.so. Then we also need to add GLES2 support to libplasma, so that kwin/plasma only has dependency on libGLESv2.so in this case. The new option "BUILD_PLASMA_WITH_OPENGLES" added in attached patch is disabled by default, and distributions can turn it on when do packaging for OpenGL ES2.0 support.
After turn the "BUILD_PLASMA_WITH_OPENGLES" option on, kwin-gles has no dependency on libGL.so now. And by default, libplasma still depends on libGL.so when run ldd.
The GLApplet seems to be unmaintained and is nowhere used in KDE (see http://lxr.kde.org/ident?i=GLApplet ). There was once one demo applet using it, but it has vanished. GLApplet uses OpenGL only for glClear before passing the QPainter to the Plasmoid. I think we could just remove the background clearing and require it from the applet and drop the link to OpenGL completely. Another thing is that given that it is just not used adding the complete GLES detection and building to Plasma does not make sense. It's probably better just to add a cmake option to disable building of the plasma applet (maybe using the mobile profile for that?). The CMake stuff to find GLES is unfortunately not in a state to be included in kdelibs. I contacted build system some time ago and they gave me a nice list of things which need to be improved and it's still on my TODO stack :-( It would be nice to have some input from Plasma devs here. Could you please add the Plasma group to the review?
Review request changed
Update the patch to remove direct OpenGL dependency for libplasma. The OpenGL usage in libplasma should better go through libQtOpenGL,which can be enabled for desktop OpenGL or OpenGL ES2.0
Revision 2 (+9 -24)