mesa: dri: Add shared glapi to LIBADD on Android

Graphics / Mesa 3D Graphics Library / Mesa - Nicolas Boichat [chromium.org] - 23 May 2016 07:25 UTC

/system/vendor/lib/dri/*_dri.so actually depend on libglapi: without this, loading the so file fails with: cannot locate symbol "__emutls_v._glapi_tls_Context"

On non-Android (non-bionic) platform, EGL uses the following workflow, which works fine: dlopen("libglapi.so", RTLD_LAZY | RTLD_GLOBAL); dlopen("dri/_dri.so", RTLD_NOW | RTLD_GLOBAL);

However, bionic does not respect the RTLD_GLOBAL flag, and the dri library cannot find symbols in libglapi.so, so we need to link to libglapi.so explicitly. Android.mk already does this.

0cbc90c mesa: dri: Add shared glapi to LIBADD on Android
src/mesa/drivers/dri/Makefile.am | 8 ++++++++
1 file changed, 8 insertions(+)

Upstream: cgit.freedesktop.org


  • Share