On 28 April 2016 at 11:41, Nicolas Boichat <drink...@chromium.org> wrote: > /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/<driver>_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. > Ideally we'll soon be able to do a similar thing for the Linux binaries.
> Signed-off-by: Nicolas Boichat <drink...@google.com> > --- > src/mesa/drivers/dri/Makefile.am | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/src/mesa/drivers/dri/Makefile.am > b/src/mesa/drivers/dri/Makefile.am > index 08a8e64..0589bac 100644 > --- a/src/mesa/drivers/dri/Makefile.am > +++ b/src/mesa/drivers/dri/Makefile.am > @@ -6,6 +6,13 @@ MEGADRIVERS_DEPS = > > SUBDIRS+=common > > +# On Android, we need to explicitely link to libglapi.so. Typo "explicitly" - I can fix that before pushing. We want a similar patch for the gallium dri modules, correct ? (The ones in src/gallium/targets/dri/Makefile.am) Both patches look good and are Reviewed-by: Emil Velikov <emil.veli...@collabora.com> -Emil _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev