opengl: EGL: special case for GLES emulation
This patch modifies the library loaded in libEGL.so to
handle the case of GLES emulation as follows:
- if we detect that we run inside the emulator, check the
GPU emulation status through ro.kernel.qemu.gles, which
will be set to 1 if supported, or 0 otherwise.
When trying to run on an older version of the emulator,
the kernel parameter will not be defined at all.
- if GPU emulation is supported, use egl.cfg as usual.
It will contain a line like "0 0 emulation" that will
load libEGL_android.so appropriately.
- nothing is changed if we don't run inside the emulator.
NOTE: Ideally, we would modify libEGL_emulation.so to
redirect all calls to libEGL_android.so in this case.
However, this turns out to be extremely tedious to implement
(too many functions with different signatures).
As such, it is much simpler to make the check before
loading the library.
Change-Id: I9930bc168d9013cc8700feedc57b979384467c37
1 file changed