summaryrefslogtreecommitdiff
path: root/src/egl/drivers/dri2/Makefile
diff options
context:
space:
mode:
authorChia-I Wu <olv@lunarg.com>2011-01-30 05:09:06 +0800
committerChia-I Wu <olv@lunarg.com>2011-01-30 05:28:24 +0800
commit218381d92755fa080bbb5635c0c4ed6d5296b79c (patch)
tree9566380058c5df94f3990d758c8d9b56343cf92f /src/egl/drivers/dri2/Makefile
parentf36cba6cf3d51a3937d3bb429609d258399751a0 (diff)
egl_dri2: Export glapi symbols for DRI drivers.
When an app loads libEGL.so dynamically with RTLD_LOCAL, loading DRI drivers would fail because of missing glapi symbols. This commit makes egl_dri2 load libglapi.so with RTLD_GLOBAL to export glapi symbols for future symbol resolutions. The same trick can be found in GLX. However, egl_dri2 can only do so when --enable-shared-glapi is given. Because, otherwise, both libGL.so and libglapi.so define glapi symbols and egl_dri2 cannot tell which library to load.
Diffstat (limited to 'src/egl/drivers/dri2/Makefile')
-rw-r--r--src/egl/drivers/dri2/Makefile4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/egl/drivers/dri2/Makefile b/src/egl/drivers/dri2/Makefile
index 553ee8771f..bd3d702933 100644
--- a/src/egl/drivers/dri2/Makefile
+++ b/src/egl/drivers/dri2/Makefile
@@ -20,4 +20,8 @@ EGL_LIBS = $(XCB_DRI2_LIBS) $(LIBUDEV_LIBS) $(DLOPEN_LIBS) $(LIBDRM_LIB)
EGL_CFLAGS = -D_EGL_MAIN=_eglBuiltInDriverDRI2
EGL_BUILTIN = true
+ifeq ($(SHARED_GLAPI),1)
+EGL_CFLAGS += -DHAVE_SHARED_GLAPI
+endif
+
include ../Makefile.template