Created attachment 120007 [details]
[PATCH] i965: don't underlink i965_dri.so, causes miserable failure on musl libc
musl libc doesn't like lazy binding, which i965_dri.so depends on to load correctly in Xorg. As such, it is underlinked and doesn't load because of linking issues on musl libc.
More information: http://wiki.musl-libc.org/wiki/Functional_differences_from_glibc#Lazy_bindings
I don't think dri drivers can link directly to libglapi. Cc'ing Emil.
(In reply to Matt Turner from comment #1)
> I don't think dri drivers can link directly to libglapi. Cc'ing Emil.
In theory there should be no problems when combined with recent enough (don't recall the date/release) xserver/libglx. Priorly libglx was providing the symbols, as it was copying a ton of the gl dispatch from mesa. Nowadays it links against libGL and relies on it to handle things.
On the whole topic I've been leaning towards:
- folding the static glapi only for special users (osmesa, libgl-xlib)
- "forcing" everyone else to shared one and dropping the configure switch
- figuring some deprecation period and/or experimentally adding the libglapi link to the dri modules.
I'm leaning that foo_dri.so linked with libglapi and old xserver should still work, although that is to be tested.
All that aside: albeit not ideal, some libraries need to stay underlinked. Musl devs should seriously reconsider and add support for it.
ajax probably has an opinion.
-- GitLab Migration Automatic Message --
This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.
You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/1503.