summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--0001-Fix-some-EGLDisplay-abuse.patch52
-rw-r--r--0002-Use-eglGetPlatformDisplay-EXT-if-available.patch130
-rw-r--r--gtk3.spec14
-rw-r--r--sources2
5 files changed, 7 insertions, 192 deletions
diff --git a/.gitignore b/.gitignore
index 7d3df99..5d7ecbf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -144,3 +144,4 @@ gtk+-2.90.5.tar.bz2
/gtk+-3.21.6.tar.xz
/gtk+-3.22.0.tar.xz
/gtk+-3.22.1.tar.xz
+/gtk+-3.22.2.tar.xz
diff --git a/0001-Fix-some-EGLDisplay-abuse.patch b/0001-Fix-some-EGLDisplay-abuse.patch
deleted file mode 100644
index 5071d8c..0000000
--- a/0001-Fix-some-EGLDisplay-abuse.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From dc0e3f9d949723856dde43b7ee3a8aa87b320c88 Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Mon, 10 Oct 2016 14:10:38 -0400
-Subject: [PATCH 1/2] Fix some EGLDisplay * abuse
-
-EGLDisplays are already opaque pointers, and eglGetDisplay returns an
-EGLDisplay not a pointer to one.
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
- gdk/wayland/gdkglcontext-wayland.c | 2 +-
- gtk/inspector/general.c | 4 ++--
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/gdk/wayland/gdkglcontext-wayland.c b/gdk/wayland/gdkglcontext-wayland.c
-index 7733188..ae1354e 100644
---- a/gdk/wayland/gdkglcontext-wayland.c
-+++ b/gdk/wayland/gdkglcontext-wayland.c
-@@ -279,7 +279,7 @@ gdk_wayland_display_init_gl (GdkDisplay *display)
- {
- GdkWaylandDisplay *display_wayland = GDK_WAYLAND_DISPLAY (display);
- EGLint major, minor;
-- EGLDisplay *dpy;
-+ EGLDisplay dpy;
-
- if (display_wayland->have_egl)
- return TRUE;
-diff --git a/gtk/inspector/general.c b/gtk/inspector/general.c
-index 31dd6aa..77d0a76 100644
---- a/gtk/inspector/general.c
-+++ b/gtk/inspector/general.c
-@@ -209,7 +209,7 @@ append_glx_extension_row (GtkInspectorGeneral *gen,
- #ifdef GDK_WINDOWING_WAYLAND
- static void
- append_egl_extension_row (GtkInspectorGeneral *gen,
-- EGLDisplay *dpy,
-+ EGLDisplay dpy,
- const gchar *ext)
- {
- add_check_row (gen, GTK_LIST_BOX (gen->priv->gl_box), ext, epoxy_has_egl_extension (dpy, ext), 0);
-@@ -250,7 +250,7 @@ init_gl (GtkInspectorGeneral *gen)
- if (GDK_IS_WAYLAND_DISPLAY (gdk_display_get_default ()))
- {
- GdkDisplay *display = gdk_display_get_default ();
-- EGLDisplay *dpy;
-+ EGLDisplay dpy;
- EGLint major, minor;
- gchar *version;
-
---
-2.9.3
-
diff --git a/0002-Use-eglGetPlatformDisplay-EXT-if-available.patch b/0002-Use-eglGetPlatformDisplay-EXT-if-available.patch
deleted file mode 100644
index c337f7c..0000000
--- a/0002-Use-eglGetPlatformDisplay-EXT-if-available.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From 1a9c35461dc93979dbc45a201a6670eb049bb285 Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Mon, 10 Oct 2016 14:12:40 -0400
-Subject: [PATCH 2/2] Use eglGetPlatformDisplay{,EXT} if available
-
-Calling eglGetDisplay forces libEGL to guess what kind of pointer you
-passed it. Different EGL libraries will do different things here, and in
-particular glvnd will do something different than Mesa. Since we do have
-an API that allows us to explicitly type the display, use it.
-
-The explicit call to eglGetProcAddress is working around a bug in
-libepoxy 1.3, which does not understand the EGL concept of client
-extensions. Since it does not, the normal epoxy resolver for
-eglGetPlatformDisplayEXT would not find any provider for that entry
-point, and crash when you attempted to call it.
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
- gdk/wayland/gdkglcontext-wayland.c | 37 ++++++++++++++++++++++++++++++++++++-
- gtk/inspector/general.c | 32 +++++++++++++++++++++++++++++++-
- 2 files changed, 67 insertions(+), 2 deletions(-)
-
-diff --git a/gdk/wayland/gdkglcontext-wayland.c b/gdk/wayland/gdkglcontext-wayland.c
-index ae1354e..6573688 100644
---- a/gdk/wayland/gdkglcontext-wayland.c
-+++ b/gdk/wayland/gdkglcontext-wayland.c
-@@ -274,6 +274,40 @@ gdk_wayland_gl_context_init (GdkWaylandGLContext *self)
- {
- }
-
-+static EGLDisplay
-+gdk_wayland_get_display (GdkWaylandDisplay *display_wayland)
-+{
-+ EGLDisplay dpy = NULL;
-+
-+ if (epoxy_has_egl_extension (NULL, "EGL_KHR_platform_base"))
-+ {
-+ PFNEGLGETPLATFORMDISPLAYPROC getPlatformDisplay =
-+ (void *) eglGetProcAddress ("eglGetPlatformDisplay");
-+
-+ if (getPlatformDisplay)
-+ dpy = getPlatformDisplay (EGL_PLATFORM_WAYLAND_EXT,
-+ display_wayland->wl_display,
-+ NULL);
-+ if (dpy)
-+ return dpy;
-+ }
-+
-+ if (epoxy_has_egl_extension (NULL, "EGL_EXT_platform_base"))
-+ {
-+ PFNEGLGETPLATFORMDISPLAYEXTPROC getPlatformDisplay =
-+ (void *) eglGetProcAddress ("eglGetPlatformDisplayEXT");
-+
-+ if (getPlatformDisplay)
-+ dpy = getPlatformDisplay (EGL_PLATFORM_WAYLAND_EXT,
-+ display_wayland->wl_display,
-+ NULL);
-+ if (dpy)
-+ return dpy;
-+ }
-+
-+ return eglGetDisplay ((EGLNativeDisplayType) display_wayland->wl_display);
-+}
-+
- gboolean
- gdk_wayland_display_init_gl (GdkDisplay *display)
- {
-@@ -284,7 +318,8 @@ gdk_wayland_display_init_gl (GdkDisplay *display)
- if (display_wayland->have_egl)
- return TRUE;
-
-- dpy = eglGetDisplay ((EGLNativeDisplayType)display_wayland->wl_display);
-+ dpy = gdk_wayland_get_display (display_wayland);
-+
- if (dpy == NULL)
- return FALSE;
-
-diff --git a/gtk/inspector/general.c b/gtk/inspector/general.c
-index 77d0a76..f32f7fe 100644
---- a/gtk/inspector/general.c
-+++ b/gtk/inspector/general.c
-@@ -214,6 +214,36 @@ append_egl_extension_row (GtkInspectorGeneral *gen,
- {
- add_check_row (gen, GTK_LIST_BOX (gen->priv->gl_box), ext, epoxy_has_egl_extension (dpy, ext), 0);
- }
-+
-+static EGLDisplay
-+wayland_get_display (struct wl_display *wl_dpy)
-+{
-+ EGLDisplay dpy = NULL;
-+
-+ if (epoxy_has_egl_extension (NULL, "EGL_KHR_platform_base"))
-+ {
-+ PFNEGLGETPLATFORMDISPLAYPROC getPlatformDisplay =
-+ (void *) eglGetProcAddress ("eglGetPlatformDisplay");
-+
-+ if (getPlatformDisplay)
-+ dpy = getPlatformDisplay (EGL_PLATFORM_WAYLAND_EXT, wl_dpy, NULL);
-+ if (dpy)
-+ return dpy;
-+ }
-+
-+ if (epoxy_has_egl_extension (NULL, "EGL_EXT_platform_base"))
-+ {
-+ PFNEGLGETPLATFORMDISPLAYEXTPROC getPlatformDisplay =
-+ (void *) eglGetProcAddress ("eglGetPlatformDisplayEXT");
-+
-+ if (getPlatformDisplay)
-+ dpy = getPlatformDisplay (EGL_PLATFORM_WAYLAND_EXT, wl_dpy, NULL);
-+ if (dpy)
-+ return dpy;
-+ }
-+
-+ return eglGetDisplay ((EGLNativeDisplayType) wl_dpy);
-+}
- #endif
-
-
-@@ -254,7 +284,7 @@ init_gl (GtkInspectorGeneral *gen)
- EGLint major, minor;
- gchar *version;
-
-- dpy = eglGetDisplay ((EGLNativeDisplayType)gdk_wayland_display_get_wl_display (display));
-+ dpy = wayland_get_display (gdk_wayland_display_get_wl_display (display));
-
- if (!eglInitialize (dpy, &major, &minor))
- return;
---
-2.9.3
-
diff --git a/gtk3.spec b/gtk3.spec
index 6202c15..d3a0c3f 100644
--- a/gtk3.spec
+++ b/gtk3.spec
@@ -17,18 +17,14 @@
%global _changelog_trimtime %(date +%s -d "1 year ago")
Name: gtk3
-Version: 3.22.1
-Release: 2%{?dist}
+Version: 3.22.2
+Release: 1%{?dist}
Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X
License: LGPLv2+
URL: http://www.gtk.org
Source0: http://download.gnome.org/sources/gtk+/3.22/gtk+-%{version}.tar.xz
-# backport, will be in 3.22.2
-Patch1: 0001-Fix-some-EGLDisplay-abuse.patch
-Patch2: 0002-Use-eglGetPlatformDisplay-EXT-if-available.patch
-
BuildRequires: pkgconfig(atk) >= %{atk_version}
BuildRequires: pkgconfig(atk-bridge-2.0)
BuildRequires: pkgconfig(glib-2.0) >= %{glib2_version}
@@ -165,11 +161,8 @@ the functionality of the installed %{name} package.
%prep
%setup -q -n gtk+-%{version}
-%patch1 -p1
-%patch2 -p1
%build
-
(if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; CONFIGFLAGS=--enable-gtk-doc; fi;
%configure $CONFIGFLAGS \
--enable-xkb \
@@ -340,6 +333,9 @@ gtk-query-immodules-3.0-%{__isa_bits} --update-cache
%{_datadir}/installed-tests
%changelog
+* Mon Oct 24 2016 Kalev Lember <klember@redhat.com> - 3.22.2-1
+- Update to 3.22.2
+
* Tue Oct 11 2016 Adam Jackson <ajax@redhat.com> - 3.22.1-2
- Prefer eglGetPlatformDisplay to eglGetDisplay
diff --git a/sources b/sources
index 0291c46..66fa2fc 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-ebfa5e52167f2b8a4ec6024d51d86f1f gtk+-3.22.1.tar.xz
+ad6c8c58b47cbf1b0cbb0d6ef5c4667a gtk+-3.22.2.tar.xz
bgstack15