diff options
author | Jim Ramsay <lack@gentoo.org> | 2007-05-07 15:22:25 +0000 |
---|---|---|
committer | Jim Ramsay <lack@gentoo.org> | 2007-05-07 15:22:25 +0000 |
commit | 0cefe9c99c3a01caffcb6829aeadd8765e619fb0 (patch) | |
tree | 885759a5ec8ad189a348314972fdfb89bc280df2 /x11-wm | |
parent | Migrate to split-ant. (diff) | |
download | gentoo-2-0cefe9c99c3a01caffcb6829aeadd8765e619fb0.tar.gz gentoo-2-0cefe9c99c3a01caffcb6829aeadd8765e619fb0.tar.bz2 gentoo-2-0cefe9c99c3a01caffcb6829aeadd8765e619fb0.zip |
Added patch from bug 177114 to fix possible segfaults for certain apps.
(Portage version: 2.1.2.5)
Diffstat (limited to 'x11-wm')
-rw-r--r-- | x11-wm/fluxbox/ChangeLog | 9 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/1.0_rc3/fluxbox-1.0_rc3-textproperties_segfault.patch | 41 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/digest-fluxbox-1.0_rc3-r1 | 3 | ||||
-rw-r--r-- | x11-wm/fluxbox/fluxbox-1.0_rc3-r1.ebuild | 168 |
4 files changed, 220 insertions, 1 deletions
diff --git a/x11-wm/fluxbox/ChangeLog b/x11-wm/fluxbox/ChangeLog index 5647f704ec23..4c68198b3790 100644 --- a/x11-wm/fluxbox/ChangeLog +++ b/x11-wm/fluxbox/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for x11-wm/fluxbox # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/ChangeLog,v 1.213 2007/04/24 18:42:56 dertobi123 Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/ChangeLog,v 1.214 2007/05/07 15:22:25 lack Exp $ + +*fluxbox-1.0_rc3-r1 (07 May 2007) + + 07 May 2007; Jim Ramsay <lack@gentoo.org> + +files/1.0_rc3/fluxbox-1.0_rc3-textproperties_segfault.patch, + +fluxbox-1.0_rc3-r1.ebuild: + Added patch from bug 177114 to fix possible segfaults for certain apps. 24 Apr 2007; Tobias Scherbaum <dertobi123@gentoo.org> fluxbox-1.0_rc3.ebuild: diff --git a/x11-wm/fluxbox/files/1.0_rc3/fluxbox-1.0_rc3-textproperties_segfault.patch b/x11-wm/fluxbox/files/1.0_rc3/fluxbox-1.0_rc3-textproperties_segfault.patch new file mode 100644 index 000000000000..c44c6a420887 --- /dev/null +++ b/x11-wm/fluxbox/files/1.0_rc3/fluxbox-1.0_rc3-textproperties_segfault.patch @@ -0,0 +1,41 @@ +--- src/FbTk/FbWindow.cc 2007-03-19 15:57:07.000000000 -0400 ++++ ../src/src/FbTk/FbWindow.cc 2007-05-05 18:41:03.000000000 -0400 +@@ -19,7 +19,7 @@ + // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + // DEALINGS IN THE SOFTWARE. + +-// $Id: fluxbox-1.0_rc3-textproperties_segfault.patch,v 1.1 2007/05/07 15:22:25 lack Exp $ ++// $Id: fluxbox-1.0_rc3-textproperties_segfault.patch,v 1.1 2007/05/07 15:22:25 lack Exp $ + + #include "FbWindow.hh" + #include "FbPixmap.hh" +@@ -465,7 +465,7 @@ + std::string FbWindow::textProperty(Atom property) const { + XTextProperty text_prop; + char ** stringlist = 0; +- int count; ++ int count = 0; + std::string ret; + + static Atom m_utf8string = XInternAtom(display(), "UTF8_STRING", False); +@@ -483,16 +483,17 @@ + } else if (text_prop.encoding == m_utf8string && text_prop.format == 8) { + #ifdef X_HAVE_UTF8_STRING + Xutf8TextPropertyToTextList(display(), &text_prop, &stringlist, &count); +- if (count == 0) ++ if (count == 0 || stringlist == 0) + return ""; + #else +- if (XTextPropertyToStringList(&text_prop, &stringlist, &count) == 0 || count == 0) ++ if (XTextPropertyToStringList(&text_prop, &stringlist, &count) == 0 || count == 0 || stringlist == 0) + return ""; + #endif + ret = stringlist[0]; + } else { + // still returns a "StringList" despite the different name +- if (XmbTextPropertyToTextList(display(), &text_prop, &stringlist, &count) == 0 || count == 0) ++ XmbTextPropertyToTextList(display(), &text_prop, &stringlist, &count); ++ if (count == 0 || stringlist == 0) + return ""; + + ret = FbStringUtil::LocaleStrToFb(stringlist[0]); diff --git a/x11-wm/fluxbox/files/digest-fluxbox-1.0_rc3-r1 b/x11-wm/fluxbox/files/digest-fluxbox-1.0_rc3-r1 new file mode 100644 index 000000000000..a68891bf80b5 --- /dev/null +++ b/x11-wm/fluxbox/files/digest-fluxbox-1.0_rc3-r1 @@ -0,0 +1,3 @@ +MD5 8ed52d10d7de72efab0948eaaa4a6a50 fluxbox-1.0rc3.tar.bz2 780622 +RMD160 5086545ea2c2b0dd71f17d314838d04f197a1294 fluxbox-1.0rc3.tar.bz2 780622 +SHA256 cf1e2aa77716e42b2457b19989c2b2d2fc5f7d900cc16a3621a2e42372f474b6 fluxbox-1.0rc3.tar.bz2 780622 diff --git a/x11-wm/fluxbox/fluxbox-1.0_rc3-r1.ebuild b/x11-wm/fluxbox/fluxbox-1.0_rc3-r1.ebuild new file mode 100644 index 000000000000..04635809f4a3 --- /dev/null +++ b/x11-wm/fluxbox/fluxbox-1.0_rc3-r1.ebuild @@ -0,0 +1,168 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/fluxbox-1.0_rc3-r1.ebuild,v 1.1 2007/05/07 15:22:25 lack Exp $ + +inherit eutils + +IUSE="nls xinerama truetype kde gnome imlib disableslit disabletoolbar" + +DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar" +MY_P="fluxbox-1.0rc3" + +S="${WORKDIR}/${MY_P}" +SRC_URI="mirror://sourceforge/fluxbox/${MY_P}.tar.bz2" +HOMEPAGE="http://www.fluxbox.org" + +# Please note that USE="kde gnome" simply adds support for the respective +# protocols, and does not depend on external libraries. They do, however, +# make the binary a fair bit bigger, so we don't want to turn them on unless +# the user actually wants them. + +RDEPEND="|| ( ( x11-libs/libXpm + x11-libs/libXrandr + xinerama? ( x11-libs/libXinerama ) + x11-apps/xmessage + ) + virtual/x11 + ) + virtual/xft + truetype? ( media-libs/freetype ) + imlib? ( >=media-libs/imlib2-1.2.0 ) + !<x11-themes/fluxbox-styles-fluxmod-20040809-r1" +DEPEND=">=sys-devel/autoconf-2.52 + nls? ( sys-devel/gettext ) + || ( ( x11-proto/xextproto + xinerama? ( x11-proto/xineramaproto ) + ) + virtual/x11 + ) + ${RDEPEND}" +PROVIDE="virtual/blackbox" + +SLOT="0" +LICENSE="MIT" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" + +pkg_setup() { + if use imlib ; then + if ! built_with_use media-libs/imlib2 X ; then + eerror "To build fluxbox with imlib in USE, you need an X enabled" + eerror "media-libs/imlib2 . Either recompile imlib2 with the X" + eerror "USE flag turned on or disable the imlib USE flag for fluxbox." + die "USE=imlib requires imlib2 with USE=X" + fi + fi +} + +src_unpack() { + unpack ${A} + cd "${S}" + + # We need to be able to include directories rather than just plain + # files in menu [include] items. This patch will allow us to do clever + # things with style ebuilds. + epatch "${FILESDIR}/1.0_rc3/${PN}-1.0_rc3-our-styles-go-over-here.patch" || die "Patch failed" + + # Bug 177114 - Segfault for certain locales + epatch "${FILESDIR}/1.0_rc3/${PN}-1.0_rc3-textproperties_segfault.patch" || die "Patch failed" + + # Add in the Gentoo -r number to fluxbox -version output. + if [[ "${PR}" == "r0" ]] ; then + suffix="gentoo" + else + suffix="gentoo-${PR}" + fi + sed -i \ + -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \ + version.h.in || die "version sed failed" + + # Turn on aa by default if possible. Fluxbox fonts are really frickin' + # broken, we'll do what we can to make it less painful by default. + use truetype 1>/dev/null && \ + echo "session.screen0.antialias: true" >> data/init.in + + # Fix broken styles + ebegin "Fixing backgrounds..." + for style in "${S}/data/styles/"* ; do + [[ -f "${style}" ]] || continue + sed -i -e 's,\([^f]\)bsetroot,\1fbsetroot,' "${style}" \ + || die "styles sed failed on ${style}" + done + eend 0 +} + +src_compile() { + export PKG_CONFIG_PATH=/usr/X11R6/lib/pkgconfig:/usr/lib/pkgconfig + + econf \ + $(use_enable nls) \ + $(use_enable xinerama) \ + $(use_enable truetype xft) \ + $(use_enable kde) \ + $(use_enable gnome) \ + $(use_enable imlib imlib2) \ + $(use_enable !disableslit slit ) \ + $(use_enable !disabletoolbar toolbar ) \ + --sysconfdir=/etc/X11/${PN} \ + --with-style=/usr/share/fluxbox/styles/Emerge \ + ${myconf} || die "configure failed" + + emake || die "make failed" + + ebegin "Creating a menu file (may take a while)" + mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed" + MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \ + CHECKINIT="no. go away." HOME="${T}/home" \ + "${S}/util/fluxbox-generate_menu" -is -ds \ + || die "menu generation failed" + eend $? +} + +src_install() { + dodir /usr/share/fluxbox + make DESTDIR="${D}" install || die "make install failed" + dodoc README* AUTHORS TODO* ChangeLog NEWS + + dodir /usr/share/xsessions + insinto /usr/share/xsessions + doins "${FILESDIR}/${PN}.desktop" + + dodir /etc/X11/Sessions + echo "/usr/bin/startfluxbox" > "${D}/etc/X11/Sessions/fluxbox" + fperms a+x /etc/X11/Sessions/fluxbox + + dodir /usr/share/fluxbox/menu.d + + # Styles menu framework + dodir /usr/share/fluxbox/menu.d/styles + insinto /usr/share/fluxbox/menu.d/styles + doins "${FILESDIR}/styles-menu-fluxbox" || die + doins "${FILESDIR}/styles-menu-commonbox" || die + doins "${FILESDIR}/styles-menu-user" || die +} + +pkg_postinst() { + einfo "As of fluxbox 0.9.10-r3, we are using an improved layout for" + einfo "styles to avoid problems with huge menus. Use the following" + einfo "in the menu for your menu styles section:" + echo + einfo " [submenu] (Styles) {Select a Style}" + einfo " [include] (/usr/share/fluxbox/menu.d/styles/)" + einfo " [end]" + echo + einfo "If you use fluxbox-generate_menu or the default global fluxbox" + einfo "menu file, this will already be present." + echo + einfo "Note that menumaker and similar utilities do *not* support" + einfo "this out of the box." + echo + einfo "As of fluxbox 0.9.14_pre1, Fluxbox uses XFT for font rendering. If" + einfo "you experience font problems, try tinkering with your theme files." + einfo "You can check the validity of a font name using:" + echo + einfo " XFT_DEBUG=1 xfd -fa 'whatever-12:bold'" + echo + einfo "The slow startup issues in previous versions should now be fixed;" + einfo "if you still encounter problems, please report bugs upstream." +} + |