diff options
author | Samuli Suominen <ssuominen@gentoo.org> | 2009-04-30 14:12:44 +0000 |
---|---|---|
committer | Samuli Suominen <ssuominen@gentoo.org> | 2009-04-30 14:12:44 +0000 |
commit | f0f15f707fe000f09f3a8e0aa349d3a5b0e1b1d1 (patch) | |
tree | 5b44d9bc2240fde23b449da170ca8b6d5efd6d59 /x11-misc | |
parent | stable on ppc, bug 267981 (diff) | |
download | gentoo-2-f0f15f707fe000f09f3a8e0aa349d3a5b0e1b1d1.tar.gz gentoo-2-f0f15f707fe000f09f3a8e0aa349d3a5b0e1b1d1.tar.bz2 gentoo-2-f0f15f707fe000f09f3a8e0aa349d3a5b0e1b1d1.zip |
Fix segv with phosphor screensaver wrt #256446, thanks to Nick Soveiko.
(Portage version: 2.1.6.11/cvs/Linux x86_64)
Diffstat (limited to 'x11-misc')
-rw-r--r-- | x11-misc/xscreensaver/ChangeLog | 9 | ||||
-rw-r--r-- | x11-misc/xscreensaver/files/xscreensaver-5.08-phosphor-segv.patch | 19 | ||||
-rw-r--r-- | x11-misc/xscreensaver/xscreensaver-5.08-r1.ebuild | 102 |
3 files changed, 129 insertions, 1 deletions
diff --git a/x11-misc/xscreensaver/ChangeLog b/x11-misc/xscreensaver/ChangeLog index b49a56711f5c..a4494cac479b 100644 --- a/x11-misc/xscreensaver/ChangeLog +++ b/x11-misc/xscreensaver/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for x11-misc/xscreensaver # Copyright 2002-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-misc/xscreensaver/ChangeLog,v 1.249 2009/04/28 16:41:10 ssuominen Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-misc/xscreensaver/ChangeLog,v 1.250 2009/04/30 14:12:43 ssuominen Exp $ + +*xscreensaver-5.08-r1 (30 Apr 2009) + + 30 Apr 2009; Samuli Suominen <ssuominen@gentoo.org> + +files/xscreensaver-5.08-phosphor-segv.patch, + +xscreensaver-5.08-r1.ebuild: + Fix segv with phosphor screensaver wrt #256446, thanks to Nick Soveiko. 28 Apr 2009; Samuli Suominen <ssuominen@gentoo.org> xscreensaver-5.08.ebuild: diff --git a/x11-misc/xscreensaver/files/xscreensaver-5.08-phosphor-segv.patch b/x11-misc/xscreensaver/files/xscreensaver-5.08-phosphor-segv.patch new file mode 100644 index 000000000000..7cf78f9d9eaf --- /dev/null +++ b/x11-misc/xscreensaver/files/xscreensaver-5.08-phosphor-segv.patch @@ -0,0 +1,19 @@ +--- xscreensaver-5.08/hacks/phosphor.c.debug 2008-07-31 19:01:00.000000000 +0900 ++++ xscreensaver-5.08/hacks/phosphor.c 2009-01-22 22:52:11.000000000 +0900 +@@ -1353,6 +1353,7 @@ + if (state->pid) + { + waitpid(state->pid, NULL, 0); ++ state->pid = 0; + fclose (state->pipe); + } + else +@@ -1436,7 +1437,7 @@ + resize_grid (state); + + # if defined(HAVE_FORKPTY) && defined(TIOCSWINSZ) +- if (state->pid) ++ if (state->pid && state->pipe) + { + /* Tell the sub-process that the screen size has changed. */ + struct winsize ws; diff --git a/x11-misc/xscreensaver/xscreensaver-5.08-r1.ebuild b/x11-misc/xscreensaver/xscreensaver-5.08-r1.ebuild new file mode 100644 index 000000000000..8e062d77a29e --- /dev/null +++ b/x11-misc/xscreensaver/xscreensaver-5.08-r1.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-misc/xscreensaver/xscreensaver-5.08-r1.ebuild,v 1.1 2009/04/30 14:12:43 ssuominen Exp $ + +EAPI=2 +inherit autotools eutils flag-o-matic multilib pam + +DESCRIPTION="A modular screen saver and locker for the X Window System" +SRC_URI="http://www.jwz.org/xscreensaver/${P}.tar.gz" +HOMEPAGE="http://www.jwz.org/xscreensaver" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="jpeg new-login opengl pam suid xinerama" + +RDEPEND="x11-libs/libXmu + x11-libs/libXxf86vm + x11-libs/libXrandr + x11-libs/libXxf86misc + x11-libs/libXt + x11-libs/libX11 + x11-libs/libXext + x11-apps/xwininfo + x11-apps/appres + media-libs/netpbm + >=dev-libs/libxml2-2.5 + >=x11-libs/gtk+-2:2 + >=gnome-base/libglade-1.99 + pam? ( virtual/pam ) + jpeg? ( media-libs/jpeg ) + opengl? ( virtual/opengl ) + xinerama? ( x11-libs/libXinerama ) + new-login? ( gnome-base/gdm )" +DEPEND="${RDEPEND} + x11-proto/xf86vidmodeproto + x11-proto/xextproto + x11-proto/scrnsaverproto + x11-proto/recordproto + x11-proto/xf86miscproto + sys-devel/bc + dev-util/pkgconfig + sys-devel/gettext + dev-util/intltool + xinerama? ( x11-proto/xineramaproto )" + +src_prepare() { + EPATCH_SUFFIX="patch" epatch "${FILESDIR}"/${PV} + epatch "${FILESDIR}"/${P}-phosphor-segv.patch #256446 + eautoreconf #113681 +} + +src_configure() { + if use ppc || use ppc64; then + filter-flags -mabi=altivec + filter-flags -maltivec + append-flags -U__VEC__ + fi + + unset BC_ENV_ARGS #24568 + + econf \ + --with-x-app-defaults=/usr/share/X11/app-defaults \ + --with-hackdir=/usr/$(get_libdir)/misc/${PN} \ + --with-configdir=/usr/share/${PN}/config \ + --x-libraries=/usr/$(get_libdir) \ + --x-includes=/usr/include \ + --with-dpms-ext \ + --with-xf86vmode-ext \ + --with-xf86gamma-ext \ + --with-randr-ext \ + --with-proc-interrupts \ + --with-xshm-ext \ + --with-xdbe-ext \ + --enable-locking \ + --without-kerberos \ + --without-gle \ + --with-gtk \ + --with-pixbuf \ + --with-text-file=/etc/gentoo-release \ + $(use_with suid setuid-hacks) \ + $(use_with new-login login-manager) \ + $(use_with xinerama xinerama-ext) \ + $(use_with pam) \ + $(use_with opengl gl) \ + $(use_with jpeg) +} + +src_compile() { + emake -j1 || die "emake failed." #155049 +} + +src_install() { + emake install_prefix="${D}" install || die "emake install failed." + dodoc README{,.hacking} + + use pam && fperms 755 /usr/bin/${PN} + pamd_mimic_system ${PN} auth + + # Collision with electricsheep, bug 135549 + rm -f "${D}"/usr/share/${PN}/config/{electricsheep,fireflies}.xml +} |