<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Eliminate RTLD_GLOBAL glapi hacks after removing support for static libglapi"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=57702#c3">Comment # 3</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Eliminate RTLD_GLOBAL glapi hacks after removing support for static libglapi"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=57702">bug 57702</a>
              from <span class="vcard"><a class="email" href="mailto:fjhmesabug@gmail.com" title="fjhenigman <fjhmesabug@gmail.com>"> <span class="fn">fjhenigman</span></a>
</span></b>
        <pre>If I'm understanding correctly:
- this bug asks that, for example, /usr/lib64/dri/i965_dri.so pull in libglapi
- at the moment it's deliberately not pulled because some use case didn't want
that
- that other use case no longer exists in current code, but there's reluctance
to break older versions by making the requested change
- in time, fear of breaking old code will reduce, and this change could happen

Here's another reason for making that change: gbm_create_device() fails because
dlopening (for example) i965_dri.so fails due to missing glapi symbols.  Unless
you link in or dlopen libglapi, or link in something that pulls it in such as
libGL.  The dlopen(libglapi) hack seems to be widespread:

chrome:
<a href="http://src.chromium.org/chrome/trunk/src/ui/ozone/platform/dri/ozone_platform_gbm.cc">http://src.chromium.org/chrome/trunk/src/ui/ozone/platform/dri/ozone_platform_gbm.cc</a>

wayland:
<a href="http://fossies.org/linux/weston/src/compositor-drm.c">http://fossies.org/linux/weston/src/compositor-drm.c</a>

enlightenment:
<a href="https://git.enlightenment.org/core/efl.git/commit/?h=devs/devilhorns/drm&id=73a7ac2ec8201123785ec17eff97364f72a474a1">https://git.enlightenment.org/core/efl.git/commit/?h=devs/devilhorns/drm&id=73a7ac2ec8201123785ec17eff97364f72a474a1</a>

Now I find waffle has the same problem.  Do I need to add the same hack there?
<a href="https://github.com/waffle-gl/waffle/pull/21">https://github.com/waffle-gl/waffle/pull/21</a>

If we must use the hack for now, wouldn't it be better in gbm_create_device, so
every
gbm user doesn't clutter their code with it?</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>