Mesa (master): EGL: Implement the libglvnd interface for EGL (v3)

Emil Velikov evelikov at kemper.freedesktop.org
Mon Apr 17 13:34:14 UTC 2017


Module: Mesa
Branch: master
Commit: ce562f9e3fab769d64b0e5453ec2b4f8710a31ce
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ce562f9e3fab769d64b0e5453ec2b4f8710a31ce

Author: Kyle Brenneman <kbrenneman at nvidia.com>
Date:   Wed Jan  4 11:31:58 2017 -0700

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 at collabora.com>

---

 configure.ac                         |   12 +-
 src/egl/Makefile.am                  |   96 +-
 src/egl/generate/egl.xml             | 2412 ++++++++++++++++++++++++++++++++++
 src/egl/generate/eglFunctionList.py  |  199 +++
 src/egl/generate/egl_other.xml       |   47 +
 src/egl/generate/genCommon.py        |  223 ++++
 src/egl/generate/gen_egl_dispatch.py |  250 ++++
 src/egl/main/50_mesa.json            |    6 +
 src/egl/main/eglapi.c                |    6 +-
 src/egl/main/egldispatchstubs.c      |  110 ++
 src/egl/main/egldispatchstubs.h      |   26 +
 src/egl/main/eglglobals.c            |   47 +-
 src/egl/main/eglglobals.h            |   13 +-
 src/egl/main/eglglvnd.c              |   82 ++
 src/glx/Makefile.am                  |    2 +-
 src/glx/glxclient.h                  |    2 +-
 16 files changed, 3501 insertions(+), 32 deletions(-)

Diff:   http://cgit.freedesktop.org/mesa/mesa/diff/?id=ce562f9e3fab769d64b0e5453ec2b4f8710a31ce



More information about the mesa-commit mailing list