x11-wm/mutter: Add patch to build with mesa-19.3
authorMatt Turner <mattst88@gentoo.org>
Sat, 23 Nov 2019 19:49:33 +0000 (14:49 -0500)
committerMatt Turner <mattst88@gentoo.org>
Sat, 23 Nov 2019 21:41:20 +0000 (16:41 -0500)
Closes: https://bugs.gentoo.org/698736
Signed-off-by: Matt Turner <mattst88@gentoo.org>
x11-wm/mutter/files/3.30-eglmesaext-include.patch [new file with mode: 0644]
x11-wm/mutter/files/3.32-eglmesaext-include.patch [new file with mode: 0644]
x11-wm/mutter/mutter-3.30.2-r4.ebuild
x11-wm/mutter/mutter-3.32.2.ebuild

diff --git a/x11-wm/mutter/files/3.30-eglmesaext-include.patch b/x11-wm/mutter/files/3.30-eglmesaext-include.patch
new file mode 100644 (file)
index 0000000..884d57c
--- /dev/null
@@ -0,0 +1,69 @@
+From 813ea4e5743920ecf325aac8efe420bd5fe3baf2 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Sun, 20 Oct 2019 12:04:31 +0200
+Subject: [PATCH] EGL: Include EGL/eglmesaext.h
+
+The eglext.h shipped by libglvnd does not include the Mesa extensions,
+unlike the header shipped in Mesa.
+
+Fixes https://gitlab.gnome.org/GNOME/mutter/issues/876
+---
+ cogl/configure.ac           | 3 ++-
+ src/backends/meta-egl-ext.h | 1 +
+ src/backends/meta-egl.c     | 1 +
+ src/backends/meta-egl.h     | 1 +
+ 4 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/cogl/configure.ac b/cogl/configure.ac
+index 3be282fc2..f333b0512 100644
+--- a/cogl/configure.ac
++++ b/cogl/configure.ac
+@@ -759,7 +759,8 @@ AS_IF([test "x$NEED_EGL" = "xyes" && test "x$EGL_CHECKED" != "xyes"],
+           )
+         COGL_EGL_INCLUDES="#include <EGL/egl.h>
+-#include <EGL/eglext.h>"
++#include <EGL/eglext.h>
++#include <EGL/eglmesaext.h>"
+         AC_SUBST([COGL_EGL_INCLUDES])
+       ])
+diff --git a/src/backends/meta-egl-ext.h b/src/backends/meta-egl-ext.h
+index 8705e7d5b..db0b74f76 100644
+--- a/src/backends/meta-egl-ext.h
++++ b/src/backends/meta-egl-ext.h
+@@ -29,6 +29,7 @@
+ #include <EGL/egl.h>
+ #include <EGL/eglext.h>
++#include <EGL/eglmesaext.h>
+ /*
+  * This is a little different to the tests shipped with EGL implementations,
+diff --git a/src/backends/meta-egl.c b/src/backends/meta-egl.c
+index 755ec4908..bd253c956 100644
+--- a/src/backends/meta-egl.c
++++ b/src/backends/meta-egl.c
+@@ -31,6 +31,7 @@
+ #include <EGL/egl.h>
+ #include <EGL/eglext.h>
++#include <EGL/eglmesaext.h>
+ #include <gio/gio.h>
+ #include <glib.h>
+ #include <glib-object.h>
+diff --git a/src/backends/meta-egl.h b/src/backends/meta-egl.h
+index 060c7cd2d..2fef2642e 100644
+--- a/src/backends/meta-egl.h
++++ b/src/backends/meta-egl.h
+@@ -27,6 +27,7 @@
+ #include <EGL/egl.h>
+ #include <EGL/eglext.h>
++#include <EGL/eglmesaext.h>
+ #include <glib-object.h>
+ #define META_EGL_ERROR meta_egl_error_quark ()
+-- 
+2.23.0
+
diff --git a/x11-wm/mutter/files/3.32-eglmesaext-include.patch b/x11-wm/mutter/files/3.32-eglmesaext-include.patch
new file mode 100644 (file)
index 0000000..c91c562
--- /dev/null
@@ -0,0 +1,68 @@
+From a444a4c5f58ea516ad3cd9d6ddc0056c3ca9bc90 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Sun, 20 Oct 2019 12:04:31 +0200
+Subject: [PATCH] EGL: Include EGL/eglmesaext.h
+
+The eglext.h shipped by libglvnd does not include the Mesa extensions,
+unlike the header shipped in Mesa.
+
+Fixes https://gitlab.gnome.org/GNOME/mutter/issues/876
+---
+ cogl/cogl/meson.build       | 2 +-
+ src/backends/meta-egl-ext.h | 1 +
+ src/backends/meta-egl.c     | 1 +
+ src/backends/meta-egl.h     | 1 +
+ 4 files changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/cogl/cogl/meson.build b/cogl/cogl/meson.build
+index 261955796..b0e66bff3 100644
+--- a/cogl/cogl/meson.build
++++ b/cogl/cogl/meson.build
+@@ -48,7 +48,7 @@ cogl_gl_header_h = configure_file(
+ built_headers += [cogl_gl_header_h]
+ if have_egl
+-  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
++  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
+ else
+   cogl_egl_includes_string = ''
+ endif
+diff --git a/src/backends/meta-egl-ext.h b/src/backends/meta-egl-ext.h
+index 8705e7d5b..db0b74f76 100644
+--- a/src/backends/meta-egl-ext.h
++++ b/src/backends/meta-egl-ext.h
+@@ -29,6 +29,7 @@
+ #include <EGL/egl.h>
+ #include <EGL/eglext.h>
++#include <EGL/eglmesaext.h>
+ /*
+  * This is a little different to the tests shipped with EGL implementations,
+diff --git a/src/backends/meta-egl.c b/src/backends/meta-egl.c
+index 6554be935..fdeff4f77 100644
+--- a/src/backends/meta-egl.c
++++ b/src/backends/meta-egl.c
+@@ -27,6 +27,7 @@
+ #include <EGL/egl.h>
+ #include <EGL/eglext.h>
++#include <EGL/eglmesaext.h>
+ #include <gio/gio.h>
+ #include <glib.h>
+ #include <glib-object.h>
+diff --git a/src/backends/meta-egl.h b/src/backends/meta-egl.h
+index f2a816445..4591e7d85 100644
+--- a/src/backends/meta-egl.h
++++ b/src/backends/meta-egl.h
+@@ -28,6 +28,7 @@
+ #include <EGL/egl.h>
+ #include <EGL/eglext.h>
++#include <EGL/eglmesaext.h>
+ #include <glib-object.h>
+ #define META_EGL_ERROR meta_egl_error_quark ()
+-- 
+2.22.0
+
index 8f07d9a2c97171e14c55e9994c43c19bc50cda28..79b230df1ed786884ff2a1955d9688e917971950 100644 (file)
@@ -88,6 +88,8 @@ PATCHES=(
        "${WORKDIR}"/patches/
        # Hack to not fail USE="-wayland,-gles2" builds with no mesa[gles2]
        "${FILESDIR}"/3.28.3-no-gles2-fix.patch # requires eautoreconf
+
+       "${FILESDIR}"/3.30-eglmesaext-include.patch
 )
 
 src_prepare() {
index 4685bb23716ce113bf266deb5f9dc9e38f57650d..099d7ded03d8e4a82fed1e203602b42eaf8e6624 100644 (file)
@@ -97,6 +97,8 @@ PATCHES=(
        "${WORKDIR}"/patches/
        # Allow building USE=wayland without cogl-gles2 from USE=gles2
        "${FILESDIR}"/${PV}-no-cogl-gles2.patch
+
+       "${FILESDIR}"/3.32-eglmesaext-include.patch
 )
 
 src_configure() {