Add gles support to egl-helpers, wire up in egl-headless and gtk.

Add support for OpenGL ES to egl-helpers.  Wire up the new option for
egl-headless and gtk UIs.  egl-headless actually works fine.  gtk hits a
not-yet implemented code path in libEGL when trying to use gles mode:

  libEGL warning: FIXME: egl/x11 doesn't support front buffer rendering.

(This is mesa 17.2.3).

Cc: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Tested-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Message-id: 20180618112141.23398-1-kraxel@redhat.com
This commit is contained in:
Gerd Hoffmann 2018-06-18 13:21:41 +02:00
parent 595123df1d
commit 54d208ffda
8 changed files with 61 additions and 31 deletions

View file

@ -2485,10 +2485,6 @@ static void early_gtk_display_init(DisplayOptions *opts)
assert(opts->type == DISPLAY_TYPE_GTK);
if (opts->has_gl && opts->gl != DISPLAYGL_MODE_OFF) {
if (opts->gl == DISPLAYGL_MODE_ES) {
error_report("gtk: opengl es not supported");
return;
}
#if defined(CONFIG_OPENGL)
#if defined(CONFIG_GTK_GL) && defined(GDK_WINDOWING_WAYLAND)
if (GDK_IS_WAYLAND_DISPLAY(gdk_display_get_default())) {
@ -2497,7 +2493,8 @@ static void early_gtk_display_init(DisplayOptions *opts)
} else
#endif
{
gtk_egl_init();
DisplayGLMode mode = opts->has_gl ? opts->gl : DISPLAYGL_MODE_ON;
gtk_egl_init(mode);
}
#endif
}