summaryrefslogtreecommitdiff
path: root/src/egl/drivers/glx/Makefile.am
diff options
context:
space:
mode:
authorChad Versace <chad.versace@linux.intel.com>2013-08-01 08:10:31 -0700
committerChad Versace <chad.versace@linux.intel.com>2013-08-08 15:17:51 -0700
commit2c2e64edaba0f6aeb181ca5b51eb8dea8e9b39f9 (patch)
tree01dbda144eb51ee72d134f32bdea215fd0cfcd4d /src/egl/drivers/glx/Makefile.am
parentfb3d62fe3d4fc40ba4ad9804d8b6f451316c9ae2 (diff)
egl: Do not export private symbols
libEGL was incorrectly exporting *all* symbols, public and private. This patch adds -fvisibility=hidden to libEGL's linker flags to ensure that only symbols annotated with __attribute__((visibility("default"))) get exported. Sanity-checked with libEGL's builtin DRI2 driver and the i965 DRI driver by running Piglit on X/EGL and by running weston-gears on Weston as an X client. Sanity-checked with libEGL's Gallium driver (which is not built-in) and the swrast Gallium driver by running es2gears_x11. Kristian reviewed the symbol diff in `nm libEGL.so`. CC: "9.2" <mesa-stable@lists.freedesktop.org> CC: Ian Romanick <idr@freedesktop.org> Acked-by: Kristian Høgsberg <krh@bitplanet.net> Reviewed-by: Jakob Bornecrantz <jakob@vmware.com> Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
Diffstat (limited to 'src/egl/drivers/glx/Makefile.am')
-rw-r--r--src/egl/drivers/glx/Makefile.am1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/egl/drivers/glx/Makefile.am b/src/egl/drivers/glx/Makefile.am
index 6bf67eaebbe..6db95b40cd4 100644
--- a/src/egl/drivers/glx/Makefile.am
+++ b/src/egl/drivers/glx/Makefile.am
@@ -22,6 +22,7 @@
AM_CFLAGS = \
-I$(top_srcdir)/include \
-I$(top_srcdir)/src/egl/main \
+ $(VISIBILITY_CFLAGS) \
$(X11_CFLAGS) \
$(DEFINES)