At Mon, 01 Jun 2020 21:29:34 -0700, "Greg A. Woods" <woods%planix.ca@localhost> wrote: Subject: static linking glxgears and glxinfo now fails (mult. def. _glapi_tls_Context, etc.) > > Perhaps common "global" variables in TLS aren't being merged by the > linker? Maybe I can/should just turn off -DGLX_USE_TLS for libGL and > libglapi? But why do both libraries define these same variables in > objects that are pulled in? (see below for symbols in likely modules) So, I finally found the following commit (and a related one in glxcurrent.c using the comment "MASSIVE KLUDGE!"): RCS file: /cvs/master/m-NetBSD/main/xsrc/external/mit/MesaLib/dist/src/mapi/u_current.c,v date: 2019-04-09 07:14:59 -0700; author: maya; state: Exp; lines: +74 -39; commitid: XZNykixsHy1UhGiB; Add workaround for non-zero initialized initial-exec TLS variables. NetBSD doesn't support these with dlopen. Ref: https://bugs.freedesktop.org/show_bug.cgi?id=35268 https://mail-index.netbsd.org/pkgsrc-users/2015/09/11/msg022180.html http://gnats.netbsd.org/50277 Fixes dlopen of libGL reported by prlw1 on current users. From tnn, via pkgsrc/graphics/MesaLib*. I'm guessing I just want to avoid GLX_USE_TLS for the static libraries for now, though I'm guessing also that a proper fix to allow use of TLS in the static-linked case would still be desirable? Or does this only matter for loadable drivers, which cannot be in the static-linked world? -- Greg A. Woods <gwoods%acm.org@localhost> Kelowna, BC +1 250 762-7675 RoboHack <woods%robohack.ca@localhost> Planix, Inc. <woods%planix.com@localhost> Avoncote Farms <woods%avoncote.ca@localhost>
Attachment:
pgpjpDq_fSfVg.pgp
Description: OpenPGP Digital Signature