EGL: Implement the libglvnd interface for EGL (v3)
The new interface mostly just sits on top of the existing library. The only change to the existing EGL code is to split the client extension string into platform extensions and everything else. On non-glvnd builds, eglQueryString will just concatenate the two strings. The EGL dispatch stubs are all generated. The script is based on the one used to generate entrypoints in libglvnd itself. v2: [Kyle] - Rebased against master. - Reworked the EGL makefile to use separate libraries - Made the EGL code generation scripts work with Python 2 and 3. - Change gen_egl_dispatch.py to use argparse for the command line arguments. - Assorted formatting and style cleanup in the Python scripts. v3: [Emil Velikov] - Rebase - Remove separate glvnd glx/egl configure toggles Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
This commit is contained in:

committed by
Emil Velikov

parent
370df207ca
commit
ce562f9e3f
12
configure.ac
12
configure.ac
@@ -1348,10 +1348,11 @@ dnl Libglvnd configuration
|
||||
dnl
|
||||
AC_ARG_ENABLE([libglvnd],
|
||||
[AS_HELP_STRING([--enable-libglvnd],
|
||||
[Build for libglvnd @<:@default=disabled@:>@])],
|
||||
[Build GLX and EGL for libglvnd @<:@default=disabled@:>@])],
|
||||
[enable_libglvnd="$enableval"],
|
||||
[enable_libglvnd=no])
|
||||
AM_CONDITIONAL(USE_LIBGLVND_GLX, test "x$enable_libglvnd" = xyes)
|
||||
AM_CONDITIONAL(USE_LIBGLVND, test "x$enable_libglvnd" = xyes)
|
||||
|
||||
if test "x$enable_libglvnd" = xyes ; then
|
||||
dnl XXX: update once we can handle more than libGL/glx.
|
||||
dnl Namely: we should error out if neither of the glvnd enabled libraries
|
||||
@@ -1367,8 +1368,11 @@ if test "x$enable_libglvnd" = xyes ; then
|
||||
;;
|
||||
esac
|
||||
|
||||
PKG_CHECK_MODULES([GLVND], libglvnd >= 0.1.0)
|
||||
DEFINES="${DEFINES} -DUSE_LIBGLVND_GLX=1"
|
||||
PKG_CHECK_MODULES([GLVND], libglvnd >= 0.2.0)
|
||||
PKG_CHECK_VAR(LIBGLVND_DATADIR, libglvnd, datadir)
|
||||
AC_SUBST([LIBGLVND_DATADIR])
|
||||
|
||||
DEFINES="${DEFINES} -DUSE_LIBGLVND=1"
|
||||
DEFAULT_GL_LIB_NAME=GLX_mesa
|
||||
fi
|
||||
|
||||
|
Reference in New Issue
Block a user