Bug 1434574 - Build wayland with EGL OpenGL backend, r?glandium draft
authorMartin Stransky <stransky@redhat.com>
Wed, 31 Jan 2018 13:13:50 +0100
changeset 750083 5b04f1c76d3bcbbb31f309add9b6dd505f92914e
parent 749226 c1154ebbe3fa43176dffcb0782809c648a027bcd
push id97536
push userstransky@redhat.com
push dateThu, 01 Feb 2018 11:00:03 +0000
reviewersglandium
bugs1434574
milestone60.0a1
Bug 1434574 - Build wayland with EGL OpenGL backend, r?glandium MozReview-Commit-ID: LpGmUVOYqRI
gfx/gl/GLContextProvider.h
gfx/gl/moz.build
toolkit/moz.configure
--- a/gfx/gl/GLContextProvider.h
+++ b/gfx/gl/GLContextProvider.h
@@ -36,17 +36,17 @@ namespace gl {
 
 #ifdef XP_MACOSX
   #define GL_CONTEXT_PROVIDER_NAME GLContextProviderCGL
   #include "GLContextProviderImpl.h"
   #undef GL_CONTEXT_PROVIDER_NAME
   #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderCGL
 #endif
 
-#if defined(MOZ_X11)
+#if defined(MOZ_X11) && !defined(MOZ_WAYLAND)
   #define GL_CONTEXT_PROVIDER_NAME GLContextProviderGLX
   #include "GLContextProviderImpl.h"
   #undef GL_CONTEXT_PROVIDER_NAME
   #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderGLX
 #endif
 
 #define GL_CONTEXT_PROVIDER_NAME GLContextProviderEGL
 #include "GLContextProviderImpl.h"
--- a/gfx/gl/moz.build
+++ b/gfx/gl/moz.build
@@ -8,17 +8,17 @@ gl_provider = 'Null'
 
 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
     gl_provider = 'WGL'
 elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
     gl_provider = 'CGL'
 elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
     gl_provider = 'EAGL'
 elif 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']:
-    if CONFIG['MOZ_EGL_XRENDER_COMPOSITE']:
+    if CONFIG['MOZ_EGL_XRENDER_COMPOSITE'] or CONFIG['MOZ_WAYLAND']:
         gl_provider = 'EGL'
     else:
         gl_provider = 'GLX'
 elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
     gl_provider = 'EGL'
 
 if CONFIG['MOZ_GL_PROVIDER']:
     gl_provider = CONFIG['MOZ_GL_PROVIDER']
--- a/toolkit/moz.configure
+++ b/toolkit/moz.configure
@@ -209,20 +209,22 @@ def gl_provider(value):
 
 @depends(gl_provider)
 def gl_provider_define(provider):
     if provider:
         return 'GLContextProvider%s' % provider
 
 set_define('MOZ_GL_PROVIDER', gl_provider_define)
 
-@depends(gl_provider, x11)
-def gl_default_provider(value, x11):
+@depends(gl_provider, wayland, x11)
+def gl_default_provider(value, wayland, x11):
     if value:
         return value
+    elif wayland:
+        return 'EGL'
     elif x11:
         return 'GLX'
 
 set_config('MOZ_GL_PROVIDER', gl_provider)
 set_config('MOZ_GL_DEFAULT_PROVIDER', gl_default_provider)
 
 @depends(gl_default_provider)
 def gl_provider_define(provider):