summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2014-03-30 19:05:43 +0000
committerChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2014-03-30 19:05:43 +0000
commit090604628363ef0cf900fde42d0182e57f0e24a2 (patch)
treef760097302a5cf19f244f8ff19b6edfd761218ba /x11-libs
parentNew release version and live ebuild tracking the current release branch (diff)
downloadgentoo-2-090604628363ef0cf900fde42d0182e57f0e24a2.tar.gz
gentoo-2-090604628363ef0cf900fde42d0182e57f0e24a2.tar.bz2
gentoo-2-090604628363ef0cf900fde42d0182e57f0e24a2.zip
Fix X server crash, bug #505574.
(Portage version: 2.2.8-r1/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'x11-libs')
-rw-r--r--x11-libs/glamor/ChangeLog8
-rw-r--r--x11-libs/glamor/files/glamor-0.6.0-glamor_egl_create_argb8888.patch31
-rw-r--r--x11-libs/glamor/glamor-0.6.0-r1.ebuild54
3 files changed, 92 insertions, 1 deletions
diff --git a/x11-libs/glamor/ChangeLog b/x11-libs/glamor/ChangeLog
index 9d81c40b448b..d73d0b94ef19 100644
--- a/x11-libs/glamor/ChangeLog
+++ b/x11-libs/glamor/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-libs/glamor
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/glamor/ChangeLog,v 1.29 2014/03/27 21:27:03 chithanh Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/glamor/ChangeLog,v 1.30 2014/03/30 19:05:43 chithanh Exp $
+
+*glamor-0.6.0-r1 (30 Mar 2014)
+
+ 30 Mar 2014; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+ +files/glamor-0.6.0-glamor_egl_create_argb8888.patch, +glamor-0.6.0-r1.ebuild:
+ Fix X server crash, bug #505574.
27 Mar 2014; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
glamor-0.6.0.ebuild:
diff --git a/x11-libs/glamor/files/glamor-0.6.0-glamor_egl_create_argb8888.patch b/x11-libs/glamor/files/glamor-0.6.0-glamor_egl_create_argb8888.patch
new file mode 100644
index 000000000000..b9de24177bb8
--- /dev/null
+++ b/x11-libs/glamor/files/glamor-0.6.0-glamor_egl_create_argb8888.patch
@@ -0,0 +1,31 @@
+From cccfea4454949e3e376be42bb230603848997195 Mon Sep 17 00:00:00 2001
+From: Axel Davy <axel.davy@ens.fr>
+Date: Tue, 04 Mar 2014 09:38:55 +0000
+Subject: Fix a missing MakeCurrent in glamor_egl_create_argb8888_based_texture
+
+There is a missing MakeCurrent before creating the texture
+and link it to the EGLImage.
+
+This fixes an X server crash with the piglit test
+glx-make-current-multi-process on radeonsi from current Mesa Git.
+
+Signed-off-by: Axel Davy <axel.davy@ens.fr>
+Tested-by: Michel Dänzer <michel.daenzer@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+diff --git a/src/glamor_egl.c b/src/glamor_egl.c
+index ff4c0bd..ffa95a7 100644
+--- a/src/glamor_egl.c
++++ b/src/glamor_egl.c
+@@ -252,7 +252,9 @@ glamor_egl_create_argb8888_based_texture(ScreenPtr screen,
+ gbm_bo_destroy(bo);
+ if (image == EGL_NO_IMAGE_KHR)
+ return 0;
++ glamor_egl_make_current(screen);
+ glamor_create_texture_from_image(glamor_egl, image, &texture);
++ glamor_egl_restore_context(screen);
+ glamor_egl->egl_destroy_image_khr(glamor_egl->display, image);
+
+ return texture;
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/x11-libs/glamor/glamor-0.6.0-r1.ebuild b/x11-libs/glamor/glamor-0.6.0-r1.ebuild
new file mode 100644
index 000000000000..ab6ef74facc8
--- /dev/null
+++ b/x11-libs/glamor/glamor-0.6.0-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/glamor/glamor-0.6.0-r1.ebuild,v 1.1 2014/03/30 19:05:43 chithanh Exp $
+
+EAPI=5
+
+XORG_DRI=always
+XORG_EAUTORECONF=yes
+XORG_MODULE=driver/
+XORG_MODULE_REBUILD=yes
+S=${WORKDIR}/${PN}-egl-${PV}
+
+inherit autotools-utils xorg-2 toolchain-funcs
+
+DESCRIPTION="OpenGL based 2D rendering acceleration library"
+SRC_URI="${XORG_BASE_INDIVIDUAL_URI}/${XORG_MODULE}${PN}-egl-${PV}.tar.bz2"
+
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="gles xv"
+
+RDEPEND=">=x11-base/xorg-server-1.10
+ media-libs/mesa[egl,gbm]
+ gles? (
+ || ( media-libs/mesa[gles2] media-libs/mesa[gles] )
+ )
+ >=x11-libs/pixman-0.21.8"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-xv-add-missing-include.patch
+ "${FILESDIR}"/${P}-glamor_egl_create_argb8888.patch
+)
+
+src_configure() {
+ XORG_CONFIGURE_OPTIONS=(
+ $(use_enable gles glamor-gles2)
+ $(use_enable xv)
+ )
+ xorg-2_src_configure
+}
+
+src_prepare() {
+ sed -i 's/inst_LTLIBRARIES/lib_LTLIBRARIES/' src/Makefile.am || die
+ xorg-2_src_prepare
+ # fail to load grafic driver with hardened compiler #488906
+ if gcc-specs-now ; then
+ append-ldflags -Wl,-z,lazy
+ fi
+}
+
+src_install() {
+ # workaround parallel install failure, bug #488124.
+ autotools-utils_src_install -j1
+}