From 1c9c67fab40a73e704e33880414bac0d4fb2be51 Mon Sep 17 00:00:00 2001 From: Thorsten Leemhuis Date: Tue, 18 Sep 2012 13:17:46 +0200 Subject: [PATCH] add patch from master to fix issues with weston --- ...0914f4ddbff0d116c918343a6726d5f4317b.patch | 38 +++++++++++++++++++ cairo.spec | 10 ++++- 2 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 cairo-f59b0914f4ddbff0d116c918343a6726d5f4317b.patch diff --git a/cairo-f59b0914f4ddbff0d116c918343a6726d5f4317b.patch b/cairo-f59b0914f4ddbff0d116c918343a6726d5f4317b.patch new file mode 100644 index 0000000..d12db0b --- /dev/null +++ b/cairo-f59b0914f4ddbff0d116c918343a6726d5f4317b.patch @@ -0,0 +1,38 @@ +From f59b0914f4ddbff0d116c918343a6726d5f4317b Mon Sep 17 00:00:00 2001 +From: Chris Wilson +Date: Sat, 11 Aug 2012 16:38:36 +0000 +Subject: egl: s/EGL_KHR_surfaceless_opengl/EGL_KHR_surfaceless_context/ + +Mesa changed the name of the extension it invented, so check for the +real name and the old name before falling back to pbuffers which are not +supported by most EGL implementations. + +References: https://bugs.freedesktop.org/show_bug.cgi?id=53361 +Signed-off-by: Chris Wilson +--- +diff --git a/src/cairo-egl-context.c b/src/cairo-egl-context.c +index eb1ef29..b24bc80 100644 +--- a/src/cairo-egl-context.c ++++ b/src/cairo-egl-context.c +@@ -122,8 +122,10 @@ _egl_make_current_surfaceless(cairo_egl_context_t *ctx) + const char *extensions; + + extensions = eglQueryString(ctx->display, EGL_EXTENSIONS); +- if (!strstr(extensions, "EGL_KHR_surfaceless_opengl")) ++ if (strstr(extensions, "EGL_KHR_surfaceless_context") == NULL && ++ strstr(extensions, "EGL_KHR_surfaceless_opengl") == NULL) + return FALSE; ++ + if (!eglMakeCurrent(ctx->display, + EGL_NO_SURFACE, EGL_NO_SURFACE, ctx->context)) + return FALSE; +@@ -174,7 +176,6 @@ cairo_egl_device_create (EGLDisplay dpy, EGLContext egl) + eglChooseConfig (dpy, config_attribs, &config, 1, &numConfigs); + + ctx->dummy_surface = eglCreatePbufferSurface (dpy, config, attribs); +- + if (ctx->dummy_surface == NULL) { + free (ctx); + return _cairo_gl_context_create_in_error (CAIRO_STATUS_NO_MEMORY); +-- +cgit v0.9.0.2-2-gbebe diff --git a/cairo.spec b/cairo.spec index 0d04067..51f3f56 100644 --- a/cairo.spec +++ b/cairo.spec @@ -5,11 +5,15 @@ Summary: A 2D graphics library Name: cairo Version: 1.12.2 -Release: 3%{?dist} +Release: 4%{?dist} URL: http://cairographics.org #VCS: git:git://git.freedesktop.org/git/cairo #Source0: http://cairographics.org/snapshots/%{name}-%{version}.tar.xz Source0: http://cairographics.org/releases/%{name}-%{version}.tar.xz +# Patch0 committed to master on 2012-08-11 +# Background: https://bugs.freedesktop.org/show_bug.cgi?id=53361 +# Commit: http://cgit.freedesktop.org/cairo/commit/?id=f59b0914f4ddbff0d116c918343a6726d5f4317b +Patch0: %{name}-f59b0914f4ddbff0d116c918343a6726d5f4317b.patch License: LGPLv2 or MPLv1.1 Group: System Environment/Libraries @@ -91,6 +95,7 @@ This package contains tools for working with the cairo graphics library. %prep %setup -q +%patch0 -p1 -b .patch0 %build %configure --disable-static \ @@ -185,6 +190,9 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/cairo/ %changelog +* Tue Sep 18 2012 Thorsten Leemhuis - 1.12.2-4 +- add patch from master to fix issues with weston + * Wed Jul 18 2012 Fedora Release Engineering - 1.12.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild