Not yet used.
---
 src/waffle/egl/wegl_imports.h  | 4 ++++
 src/waffle/egl/wegl_platform.c | 6 ++++++
 src/waffle/egl/wegl_platform.h | 4 ++++
 3 files changed, 14 insertions(+)

diff --git a/src/waffle/egl/wegl_imports.h b/src/waffle/egl/wegl_imports.h
index 99e79c8..3f39b9e 100644
--- a/src/waffle/egl/wegl_imports.h
+++ b/src/waffle/egl/wegl_imports.h
@@ -35,6 +35,10 @@
 #include <EGL/egl.h>
 #include <EGL/eglext.h>
 
+#ifndef EGL_VERSION_1_5
+typedef intptr_t EGLAttrib;
+#endif
+
 #ifndef EGL_KHR_create_context
 #define EGL_KHR_create_context 1
 #define EGL_CONTEXT_MAJOR_VERSION_KHR                       
EGL_CONTEXT_CLIENT_VERSION
diff --git a/src/waffle/egl/wegl_platform.c b/src/waffle/egl/wegl_platform.c
index 8ce0a7b..669fe38 100644
--- a/src/waffle/egl/wegl_platform.c
+++ b/src/waffle/egl/wegl_platform.c
@@ -114,6 +114,9 @@ wegl_platform_init(struct wegl_platform *self, EGLenum 
egl_platform)
         goto error;                                                    \
     }
 
+#define RETRIEVE_EGL_SYMBOL_OPTIONAL(function)                         \
+    self->function = dlsym(self->eglHandle, #function);
+
     RETRIEVE_EGL_SYMBOL(eglMakeCurrent);
     RETRIEVE_EGL_SYMBOL(eglGetProcAddress);
 
@@ -138,6 +141,9 @@ wegl_platform_init(struct wegl_platform *self, EGLenum 
egl_platform)
     RETRIEVE_EGL_SYMBOL(eglDestroySurface);
     RETRIEVE_EGL_SYMBOL(eglSwapBuffers);
 
+    // EGL 1.5
+    RETRIEVE_EGL_SYMBOL_OPTIONAL(eglGetPlatformDisplay);
+
 #undef RETRIEVE_EGL_SYMBOL
 
     self->client_extensions =
diff --git a/src/waffle/egl/wegl_platform.h b/src/waffle/egl/wegl_platform.h
index 92db3b0..4573ec2 100644
--- a/src/waffle/egl/wegl_platform.h
+++ b/src/waffle/egl/wegl_platform.h
@@ -60,6 +60,10 @@ struct wegl_platform {
     __eglMustCastToProperFunctionPointerType
        (*eglGetProcAddress)(const char *procname);
 
+    // EGL 1.5
+    EGLDisplay (*eglGetPlatformDisplay)(EGLenum platform, void *native_display,
+                                        const EGLAttrib *attrib_list);
+
     // display
     EGLDisplay (*eglGetDisplay)(EGLNativeDisplayType display_id);
     EGLBoolean (*eglInitialize)(EGLDisplay dpy, EGLint *major, EGLint *minor);
-- 
2.10.0

_______________________________________________
waffle mailing list
waffle@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/waffle

Reply via email to