diff options
author | Mart Raudsepp <leio@gentoo.org> | 2007-09-24 20:21:42 +0000 |
---|---|---|
committer | Mart Raudsepp <leio@gentoo.org> | 2007-09-24 20:21:42 +0000 |
commit | 3c968c57425b09b0d96f2d21c7f92922a243f1e2 (patch) | |
tree | a6935343aad4cc7de6b6614ec26e162ec4e71723 | |
parent | fix quoting of D (diff) | |
download | gentoo-2-3c968c57425b09b0d96f2d21c7f92922a243f1e2.tar.gz gentoo-2-3c968c57425b09b0d96f2d21c7f92922a243f1e2.tar.bz2 gentoo-2-3c968c57425b09b0d96f2d21c7f92922a243f1e2.zip |
Hopefully fix netscape-flash crashes and infinite loops and Java SWT tooltips weird behaviour and related crashes. Bug #193513 and part of bug #192310 and self-observation
(Portage version: 2.1.3.9)
-rw-r--r-- | x11-libs/gtk+/ChangeLog | 11 | ||||
-rw-r--r-- | x11-libs/gtk+/files/digest-gtk+-2.12.0-r1 | 3 | ||||
-rw-r--r-- | x11-libs/gtk+/files/gtk+-2.12.0-flash-workaround.patch | 12 | ||||
-rw-r--r-- | x11-libs/gtk+/files/gtk+-2.12.0-swt-tooltips-fix.patch | 14 | ||||
-rw-r--r-- | x11-libs/gtk+/gtk+-2.12.0-r1.ebuild | 162 |
5 files changed, 201 insertions, 1 deletions
diff --git a/x11-libs/gtk+/ChangeLog b/x11-libs/gtk+/ChangeLog index 5be5e1febeb3..302f8b75c0ad 100644 --- a/x11-libs/gtk+/ChangeLog +++ b/x11-libs/gtk+/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for x11-libs/gtk+ # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.336 2007/09/21 18:58:28 remi Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.337 2007/09/24 20:21:41 leio Exp $ + +*gtk+-2.12.0-r1 (24 Sep 2007) + + 24 Sep 2007; Mart Raudsepp <leio@gentoo.org> + +files/gtk+-2.12.0-flash-workaround.patch, + +files/gtk+-2.12.0-swt-tooltips-fix.patch, +gtk+-2.12.0-r1.ebuild: + Hopefully fix netscape-flash crashes and infinite loops and Java SWT + tooltips weird behaviour and related crashes. Bug #193513 and part of bug + #192310 and self-observation *gtk+-2.12.0 (21 Sep 2007) diff --git a/x11-libs/gtk+/files/digest-gtk+-2.12.0-r1 b/x11-libs/gtk+/files/digest-gtk+-2.12.0-r1 new file mode 100644 index 000000000000..f17cb4db830f --- /dev/null +++ b/x11-libs/gtk+/files/digest-gtk+-2.12.0-r1 @@ -0,0 +1,3 @@ +MD5 e9c280afec29b11772af5a7c807abf41 gtk+-2.12.0.tar.bz2 15732170 +RMD160 226c8f38eb7895d63f81feb60152db1ca3599628 gtk+-2.12.0.tar.bz2 15732170 +SHA256 faa1dc73f8077f72849ade14963202d8af22b51469c1e8e88e20c69d330fd2fd gtk+-2.12.0.tar.bz2 15732170 diff --git a/x11-libs/gtk+/files/gtk+-2.12.0-flash-workaround.patch b/x11-libs/gtk+/files/gtk+-2.12.0-flash-workaround.patch new file mode 100644 index 000000000000..7beccc39c872 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.12.0-flash-workaround.patch @@ -0,0 +1,12 @@ +Index: gtk+2.0-2.11.6/gtk/gtkclipboard.c +=================================================================== +--- gtk+2.0-2.11.6.orig/gtk/gtkclipboard.c 2007-08-31 16:52:48.000000000 +0200 ++++ gtk+2.0-2.11.6/gtk/gtkclipboard.c 2007-08-31 16:53:16.000000000 +0200 +@@ -287,6 +287,7 @@ + gtk_clipboard_get_for_display (GdkDisplay *display, + GdkAtom selection) + { ++ g_return_val_if_fail (display != NULL, NULL); + g_return_val_if_fail (GDK_IS_DISPLAY (display), NULL); + g_return_val_if_fail (!display->closed, NULL); + diff --git a/x11-libs/gtk+/files/gtk+-2.12.0-swt-tooltips-fix.patch b/x11-libs/gtk+/files/gtk+-2.12.0-swt-tooltips-fix.patch new file mode 100644 index 000000000000..8277cdf08e66 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.12.0-swt-tooltips-fix.patch @@ -0,0 +1,14 @@ +Fix http://bugzilla.gnome.org/show_bug.cgi?id=460194 +Patch from http://svn.gnome.org/viewcvs/gtk%2B/trunk/gtk/gtktooltips.c?view=patch&r1=18864&r2=18863&pathrev=18864 +Will be part of gtk+-2.12.1 + +--- trunk/gtk/gtktooltips.c 2007/09/24 17:13:40 18863 ++++ trunk/gtk/gtktooltips.c 2007/09/24 18:23:01 18864 +@@ -230,6 +230,7 @@ + } + + if (tooltips->active_tips_data ++ && tooltipsdata + && tooltips->active_tips_data->widget == widget + && GTK_WIDGET_DRAWABLE (tooltips->active_tips_data->widget)) + { diff --git a/x11-libs/gtk+/gtk+-2.12.0-r1.ebuild b/x11-libs/gtk+/gtk+-2.12.0-r1.ebuild new file mode 100644 index 000000000000..a2920a4ec76a --- /dev/null +++ b/x11-libs/gtk+/gtk+-2.12.0-r1.ebuild @@ -0,0 +1,162 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-2.12.0-r1.ebuild,v 1.1 2007/09/24 20:21:41 leio Exp $ + +inherit gnome.org flag-o-matic eutils autotools virtualx + +DESCRIPTION="Gimp ToolKit +" +HOMEPAGE="http://www.gtk.org/" + +LICENSE="LGPL-2" +SLOT="2" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="cups debug doc jpeg tiff xinerama" + +RDEPEND="x11-libs/libXrender + x11-libs/libX11 + x11-libs/libXi + x11-libs/libXt + x11-libs/libXext + x11-libs/libXrandr + x11-libs/libXcursor + x11-libs/libXfixes + x11-libs/libXcomposite + x11-libs/libXdamage + xinerama? ( x11-libs/libXinerama ) + >=dev-libs/glib-2.13.5 + >=x11-libs/pango-1.17.3 + >=dev-libs/atk-1.10.1 + >=x11-libs/cairo-1.2.0 + media-libs/fontconfig + x11-misc/shared-mime-info + >=media-libs/libpng-1.2.1 + cups? ( net-print/cups ) + jpeg? ( >=media-libs/jpeg-6b-r2 ) + tiff? ( >=media-libs/tiff-3.5.7 )" +DEPEND="${RDEPEND} + sys-devel/autoconf + >=dev-util/pkgconfig-0.9 + =sys-devel/automake-1.7* + x11-proto/xextproto + x11-proto/xproto + x11-proto/inputproto + x11-proto/damageproto + xinerama? ( x11-proto/xineramaproto ) + doc? ( + >=dev-util/gtk-doc-1.6 + ~app-text/docbook-xml-dtd-4.1.2 + )" + +pkg_setup() { + if ! built_with_use x11-libs/cairo X; then + einfo "Please re-emerge x11-libs/cairo with the X USE flag set" + die "cairo needs the X flag set" + fi +} + +set_gtk2_confdir() { + # An arch specific config directory is used on multilib systems + has_multilib_profile && GTK2_CONFDIR="/etc/gtk-2.0/${CHOST}" + GTK2_CONFDIR=${GTK2_CONFDIR:=/etc/gtk-2.0} +} + +src_unpack() { + unpack ${A} + cd ${S} + + # use an arch-specific config directory so that 32bit and 64bit versions + # dont clash on multilib systems + has_multilib_profile && epatch "${FILESDIR}/${PN}-2.8.0-multilib.patch" + + # http://bugzilla.gnome.org/show_bug.cgi?id=476342 + epatch "${FILESDIR}/${P}-icon-cache-speedup.patch" + + # http://bugzilla.gnome.org/show_bug.cgi?id=478173 + epatch "${FILESDIR}/${PN}-2.12.0-libtracker_so.patch" + + # Workaround adobe flash infinite loop. Patch from http://bugzilla.gnome.org/show_bug.cgi?id=463773#c11 + epatch "${FILESDIR}/${P}-flash-workaround.patch" + + # Gtk tooltips + swt crash at a later point, upstream has committed this by now - http://bugzilla.gnome.org/show_bug.cgi?id=460194 + # Seems to also fix a weird behaviour where GtkTreeView rows got a tooltip that shouldn't be there + epatch "${FILESDIR}/${P}-swt-tooltips-fix.patch" + + # -O3 and company cause random crashes in applications. Bug #133469 + replace-flags -O3 -O2 + strip-flags + + use ppc64 && append-flags -mminimal-toc + + # remember, eautoreconf applies elibtoolize. + # if you remove this, you should manually run elibtoolize + export WANT_AUTOMAKE=1.7 + cp aclocal.m4 old_macros.m4 + AT_M4DIR="." eautoreconf + + epunt_cxx +} + +src_compile() { + # png always on to display icons (foser) + local myconf="$(use_enable doc gtk-doc) \ + $(use_with jpeg libjpeg) \ + $(use_with tiff libtiff) \ + $(use_enable xinerama) \ + --with-libpng \ + --with-gdktarget=x11 \ + --with-xinput" + + # Passing --disable-debug is not recommended for production use + use debug && myconf="${myconf} --enable-debug=yes" + + econf ${myconf} || die "configure failed" + + emake || die "compile failed" +} + +src_test() { + Xmake check || die +} + +src_install() { + einstall || die "Installation failed" + + set_gtk2_confdir + dodir ${GTK2_CONFDIR} + keepdir ${GTK2_CONFDIR} + + # see bug #133241 + echo 'gtk-fallback-icon-theme = "gnome"' > ${D}/${GTK2_CONFDIR}/gtkrc + + # Enable xft in environment as suggested by <utx@gentoo.org> + dodir /etc/env.d + echo "GDK_USE_XFT=1" > ${D}/etc/env.d/50gtk2 + + dodoc AUTHORS ChangeLog* HACKING NEWS* README* + + # This has to be removed, because it's multilib specific; generated in + # postinst + rm ${D}/etc/gtk-2.0/gtk.immodules +} + +pkg_postinst() { + set_gtk2_confdir + + if [ -d "${ROOT}${GTK2_CONFDIR}" ]; then + gtk-query-immodules-2.0 > ${ROOT}${GTK2_CONFDIR}/gtk.immodules + gdk-pixbuf-query-loaders > ${ROOT}${GTK2_CONFDIR}/gdk-pixbuf.loaders + else + ewarn "The destination path ${ROOT}${GTK2_CONFDIR} doesn't exist;" + ewarn "to complete the installation of GTK+, please create the" + ewarn "directory and then manually run:" + ewarn " cd ${ROOT}${GTK2_CONFDIR}" + ewarn " gtk-query-immodules-2.0 > gtk.immodules" + ewarn " gdk-pixbuf-query-loaders > gdk-pixbuf.loaders" + fi + + if [ -e /usr/lib/gtk-2.0/2.[^1]* ]; then + elog "You need to rebuild ebuilds that installed into" /usr/lib/gtk-2.0/2.[^1]* + elog "to do that you can use qfile from portage-utils:" + elog "emerge -va1 \$(qfile -qC /usr/lib/gtk-2.0/2.[^1]*)" + fi +} |