So, introducing libhybris, http://github.com/stskeeps/libhybris
- Hybris is a solution that commits hybris, by allowing us to use bionic-based HW adaptations in glibc systems.
The previous G+ post disappeared for mysterious reasons and I'd like to not assume malice at this point, as it might have been a pocket dial kind of thing removing it. Awkward.
Practically, if you know what libdl is, this is a libdl-API-like implementation that happens to be able to load Android libraries, and overrides some symbols from bionic with glibc based ones.
The applications for this is for example being able to use binary-only android HW adaptation parts - GPU, RIL, etc. Included are example thin wrappers for libEGL and libGLESv2, with test programmes. The solution is a bit alpha and the pthread implementation needs wrapping/sanity, but currently, it works and shows quite interesting promise.
Shown on video is a unmodified test program, built against Mesa headers and glibc, using GL shaders, fullscreen on a Qualcomm GPU on a HP Touchpad (thanks to WebOS Developer Relations for sending me one) with the GPU userland driver being utilized. Android kernel is utilized with glibc userland. Future directions can be Wayland on top of this solution, utilizing vendor RIL .so's, etc. Come to #mer
to discuss this more and get involved in testing this on various hardware and do more amazing demos than the one shown on the demo.