[Mesa-dev] Mesa symbol visibility

Ian Romanick idr at freedesktop.org
Wed Aug 11 13:38:11 PDT 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Kevin H. Hobbs wrote:
> How is symbol visibility set up in mesa's shared objects?
> 
> When I do :
> 
> ./autogen.sh --with-driver=xlib --disable-gallium --enable-debug
> 
> I get for example :
> 
> $ nm lib/libGL.so | grep glDepthFunc
> 000000000020ce30 T glDepthFunc
> $ nm lib/libOSMesa.so | grep glDepthFunc
> 00000000001ca760 T glDepthFunc
> 
> As I understand it there is no way for these two libraries to be linked
> by the same application.
> 
> Is the visibility for glDepthFunc set in include/GL/gl.h with :
> 
> define GLAPI __attribute__((visibility("default")))
> 
> and :
> 
> 
> GLAPI void GLAPIENTRY glDepthFunc( GLenum func );
> 
> Is there no way to use say mklib's EXPORTS --version-script options to
> get only the right things in the right libraries?

Uh.. You can't link two different OpenGL libraries any more than you can
link two different C libraries (say, glibc and ulibc) that both export
printf.  glDepthFunc is part of the public interface of the library.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkxjCjEACgkQX1gOwKyEAw+IbACfV6Tfh/OMD8bjW5pVL4OKrElX
keEAoJyW8O3yscD3U2/p8+YPX60igkvT
=ZM2x
-----END PGP SIGNATURE-----


More information about the mesa-dev mailing list