diff options
author | 2008-06-11 15:01:29 +0000 | |
---|---|---|
committer | 2008-06-11 15:01:29 +0000 | |
commit | 04ae81f741182a06e63edc38c8d2ccfc0b2fca9e (patch) | |
tree | 2f030f0bb861cb034d6b4a37cef550cb93d2cdb5 | |
parent | amd64 stable, bug #225231 (diff) | |
download | historical-04ae81f741182a06e63edc38c8d2ccfc0b2fca9e.tar.gz historical-04ae81f741182a06e63edc38c8d2ccfc0b2fca9e.tar.bz2 historical-04ae81f741182a06e63edc38c8d2ccfc0b2fca9e.zip |
Fix bug #225339 in gdk_window_get_frame_extents causing window misplacements by various programs; fix sort indicator on treeview not showing in certain circumstances; also include some patches that benefit embedded use cases
Package-Manager: portage-2.1.5.4
-rw-r--r-- | x11-libs/gtk+/ChangeLog | 14 | ||||
-rw-r--r-- | x11-libs/gtk+/Manifest | 7 | ||||
-rw-r--r-- | x11-libs/gtk+/files/gtk+-2.12.10-fix-get_frame_extents.patch | 42 | ||||
-rw-r--r-- | x11-libs/gtk+/files/gtk+-2.12.10-fix-nocxx.patch | 21 | ||||
-rw-r--r-- | x11-libs/gtk+/files/gtk+-2.12.10-fix-treeview_sort_indicators.patch | 25 | ||||
-rw-r--r-- | x11-libs/gtk+/files/gtk+-2.12.10-no-libintl.patch | 26 | ||||
-rw-r--r-- | x11-libs/gtk+/gtk+-2.12.10-r1.ebuild | 175 |
7 files changed, 308 insertions, 2 deletions
diff --git a/x11-libs/gtk+/ChangeLog b/x11-libs/gtk+/ChangeLog index f48a37d2a3fd..baced100e8ad 100644 --- a/x11-libs/gtk+/ChangeLog +++ b/x11-libs/gtk+/ChangeLog @@ -1,6 +1,18 @@ # ChangeLog for x11-libs/gtk+ # Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.385 2008/06/07 15:59:27 nixnut Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.386 2008/06/11 15:01:28 leio Exp $ + +*gtk+-2.12.10-r1 (11 Jun 2008) + + 11 Jun 2008; Mart Raudsepp <leio@gentoo.org> + +files/gtk+-2.12.10-fix-get_frame_extents.patch, + +files/gtk+-2.12.10-fix-nocxx.patch, + +files/gtk+-2.12.10-fix-treeview_sort_indicators.patch, + +files/gtk+-2.12.10-no-libintl.patch, +gtk+-2.12.10-r1.ebuild: + Fix bug #225339 in gdk_window_get_frame_extents causing window + misplacements by various programs; fix sort indicator on treeview not + showing in certain circumstances; also include some patches that benefit + embedded use cases 07 Jun 2008; nixnut <nixnut@gentoo.org> gtk+-2.12.9-r2.ebuild: Stable on ppc wrt bug 224817 diff --git a/x11-libs/gtk+/Manifest b/x11-libs/gtk+/Manifest index fd19a997e6ae..09ab24b1cc0a 100644 --- a/x11-libs/gtk+/Manifest +++ b/x11-libs/gtk+/Manifest @@ -9,6 +9,10 @@ AUX gtk+-2.12.0-flash-workaround.patch 532 RMD160 24d6d96f11c1fd8c8d6fe3702de2dc AUX gtk+-2.12.0-openoffice-freeze-workaround.patch 363 RMD160 40ee74aece5ce7a24d9e091bafddd880a8589a02 SHA1 783920d179ba0755ccab9186b6bff9f293828a96 SHA256 4c8d1873c8f972d8d840f1eb12a175931ecb47fb102fe701c965b38c2f35ecce AUX gtk+-2.12.1-cupsutils.patch 663 RMD160 2947c516f9697fe3c83be03ef2a613910f30f0fd SHA1 aee768637e4e714fa5e1d0079f73ebb70e606800 SHA256 12b4111f284eb3e908d97909650f1d90f0dba74b47cd31a40086ad88bed745bb AUX gtk+-2.12.1-firefox-print-preview.patch 888 RMD160 6fedfd6e63e61ec7f7301d2d881d3e69a44176dd SHA1 5eb4779ee1a8cbfb672a2b19f15dc20b96bcda84 SHA256 eadd5a4c4084ecd39317f3eb39e7d4e35aa7d26a8b7010bdd6aeb94c69f362aa +AUX gtk+-2.12.10-fix-get_frame_extents.patch 1356 RMD160 9c1e02df82e8f40abeab508eccc99413bdc5f699 SHA1 cd87646168a5920170ae27e044b47510ab6de39d SHA256 c54930b501f76cf80e75b8e34d2f56832c1f0c3c2cb768ded1da5290d57d71db +AUX gtk+-2.12.10-fix-nocxx.patch 609 RMD160 14dc65ddadca384a54024306dd0a3ce39025b844 SHA1 bc84db0615a6d5c5be8fd1b771244300e2774fce SHA256 31e7ad2c500be99cdcdccd5cc5b5df12648ea463f2c01ef61a498d892b31a5a6 +AUX gtk+-2.12.10-fix-treeview_sort_indicators.patch 727 RMD160 c878d5b88e654b319a3dbfba032dfc727c282d0c SHA1 2c1782b93a6c5feb30a99ddd580a269dfeca0ef1 SHA256 4ceb7f61e0f8f431f4d17d1153f33d227eaee118cc2cc6be3583f052918accbc +AUX gtk+-2.12.10-no-libintl.patch 691 RMD160 2290b968d630720e73225f08eefd5ccbba9e5dea SHA1 1e85f38d3ab139453ab7a41e76240c44675c9f39 SHA256 101973cc02023475fb96c4d8235d0ef90a7eeeab5489d56e0e7b0d29ca711b90 AUX gtk+-2.12.9-filechooser-fix-icon-size.patch 1265 RMD160 688d9448a2f7ed70dec30e727c6841079ece130a SHA1 cbe2069f9e849bda3676264fd71296c09b383f30 SHA256 3435b45e4958b4311a9b8066906728affc68e296f201814b53d9458677eeb2c9 AUX gtk+-2.12.9-gtk-filesystem-backend-tilde-fix.patch 1116 RMD160 f63ef76bc8f35f3a6a7b60662a9b6f4637e2a585 SHA1 ed53a93ac825a0690d67d00ed1e68c9401dcabaf SHA256 ef631e5fd1d289d545e8efd4c2b557fa2f1de685a0130f93101afea6b0668ca1 AUX gtk+-2.12.9-libtool-2.patch 920 RMD160 3ef1dfe66e89af4fe9b51d662e6cc3f7fdaa6e3d SHA1 2e788ff62ed2bffc7c3f5e7900466a3fa0f95b3b SHA256 0f9c8c0700d22c55dff1e943651a20165dc3de510e00169e6f03c7e57063abfb @@ -28,11 +32,12 @@ DIST gtk+-2.12.9.tar.bz2 16027448 RMD160 c93c046aa30b26bbf4d53b6f3e900283eb2d561 EBUILD gtk+-1.2.10-r12.ebuild 2391 RMD160 b544f23518c401e9ed5ff64f424edd967b2d7c6b SHA1 98ea86cabadaa2118d5bdfbcf3b89ec5e0239bf0 SHA256 3fb0b484f1936817152f7c12752a7aae577e1cec2694bed5ac0ac0cd384f0eea EBUILD gtk+-2.10.14.ebuild 4156 RMD160 7f4b413b39fa05c4c9140901f33f21c38998a44d SHA1 4fd35077b4a940c25202d232c846a3f8a67c5a49 SHA256 8aab4a2d5932bc051065568774decedfa92b98adc9a4939377bd38d569dd3143 EBUILD gtk+-2.12.1-r2.ebuild 4676 RMD160 75f0979550c70a425e12673e34949c05f801b5e9 SHA1 c2cd18ffb83d0b5a77fd459c673ea0160c040ff0 SHA256 32455b444f78d715dde9c2316cf55723af741e5afa7ce13987abdc06a8d515b3 +EBUILD gtk+-2.12.10-r1.ebuild 5130 RMD160 3d9c3948ffc27bbff7764366c181a837afd9586f SHA1 99c41992639fef1afd38e4081ebd7ce036a5ecbe SHA256 aeecf9a1eca6992141d64237c8619f26ade01341f44c746832a56fbbf7c19d5c EBUILD gtk+-2.12.10.ebuild 4704 RMD160 e6b7c06f24c9eea8127aac16feff5ba3f88aeb38 SHA1 d76a0138d58cbec4b153b2edb174a4ce688242aa SHA256 bd6c0918bc8467c38329b9a1703eeb13d4d4b6164ee86dd8b316199c7fe65f94 EBUILD gtk+-2.12.5-r1.ebuild 4605 RMD160 729c078b760bb67df03961e2692aa53264af39c1 SHA1 eba6b89060044067b103e92ef7468e5158e70d76 SHA256 a3693132b29c8749f04a897d16607e617dc8922a8d7a5424e6a320ad86d30348 EBUILD gtk+-2.12.8.ebuild 4571 RMD160 5ee8c3872801e50cf1dc99282e74253946422c47 SHA1 2fcdb81933fd6bab2fb7b10ede0ac7fed5d553a6 SHA256 80ea9abd64a29eafcc09e4b248214f2ad0f7aebee627ab053258a911ca2f82e6 EBUILD gtk+-2.12.9-r1.ebuild 4615 RMD160 98b7930a6ade2ad915a7101f6750922926a43c08 SHA1 e790f140baa04576a518574d076e3527cc30bca7 SHA256 1c703580dcb5620fdffd811bad7366c3484865cc570a8e319220f05f4b7b2326 EBUILD gtk+-2.12.9-r2.ebuild 5455 RMD160 a16d03626f9b8f03a656523bac0b1239242db034 SHA1 b6f55b8277da86d740f1d6c13656cac7635b049c SHA256 3fa5da02d232e4cb17bf904a8f8fc0de582626b819373346ad7c230991eb5e01 EBUILD gtk+-2.12.9.ebuild 4602 RMD160 db67856a08175fb0fc3bd068a916b0cdf20344eb SHA1 a9be62b0fc40037560c8a377fb0feb606735963f SHA256 db691d15aef069d0bcf34f49729e530d10a6b549ed7b2805ec1f57ddd7f5ad52 -MISC ChangeLog 54649 RMD160 6ffcfca82507ba49d1054f644a562d5f1da4bb56 SHA1 1a9ce7c85d0e2a2cd7381ef9f27888a8de9fd330 SHA256 4ee970391dbdb17b7e1b8b744d87707241d39ed71b6f6c15de42bf3a8a42976b +MISC ChangeLog 55173 RMD160 46aabf44ade0d6499a6d7c89349b0a03c9e70091 SHA1 bfab395927bc172867f4fa5a746ab79538e7db57 SHA256 d733e29a278fffde498729ac9e7727def4f59bde4d045a63aa4d4748913c8409 MISC metadata.xml 424 RMD160 b1748199254d5d0f0db468fdec36f07bb75a3231 SHA1 2e7dc93c7931af2139609dfb75dd38101a45d62a SHA256 8b65272928e676824c407ed438004d9e5d50077a09beee0b60984eadb695bc2d diff --git a/x11-libs/gtk+/files/gtk+-2.12.10-fix-get_frame_extents.patch b/x11-libs/gtk+/files/gtk+-2.12.10-fix-get_frame_extents.patch new file mode 100644 index 000000000000..99aab1761ae1 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.12.10-fix-get_frame_extents.patch @@ -0,0 +1,42 @@ +2008-06-06 Matthias Clasen <mclasen@redhat.com> + + Bug 536757 – regression: openoffice.org menus are placed at wrong + position since 2.12.10 + + * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): + Return the right coordinates. + +diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c +index cc1f6fd..68e9e69 100644 +--- a/gdk/x11/gdkwindow-x11.c ++++ b/gdk/x11/gdkwindow-x11.c +@@ -3412,6 +3412,7 @@ gdk_window_get_frame_extents (GdkWindow *window, + Window xwindow; + Window xparent; + Window root; ++ Window child; + Window *children; + guchar *data; + Window *vroots; +@@ -3470,13 +3471,15 @@ gdk_window_get_frame_extents (GdkWindow *window, + if ((type_return == XA_CARDINAL) && (format_return == 32) && + (nitems_return == 4) && (data)) + { +- guint32 *ldata = (guint32 *) data; ++ gulong *ldata = (gulong *) data; + got_frame_extents = TRUE; + + /* try to get the real client window geometry */ + if (XGetGeometry (GDK_DISPLAY_XDISPLAY (display), xwindow, +- &root, &wx, &wy, &ww, &wh, &wb, &wd)) +- { ++ &root, &wx, &wy, &ww, &wh, &wb, &wd) && ++ XTranslateCoordinates (GDK_DISPLAY_XDISPLAY (display), ++ xwindow, root, 0, 0, &wx, &wy, &child)) ++ { + rect->x = wx; + rect->y = wy; + rect->width = ww; +-- +1.5.4.5 + diff --git a/x11-libs/gtk+/files/gtk+-2.12.10-fix-nocxx.patch b/x11-libs/gtk+/files/gtk+-2.12.10-fix-nocxx.patch new file mode 100644 index 000000000000..9fe0c829b4aa --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.12.10-fix-nocxx.patch @@ -0,0 +1,21 @@ +Fix build on a system with a USE=nocxx gcc + +From http://svn.gnome.org/viewvc/gtk%2B?view=revision&revision=19688 and backported, +as the order of tests listed was juggled around in trunk: + +2008-03-02 Johan Dahlin + + * tests/Makefile.am (noinst_PROGRAMS): Remove autotestkeywords, it's added later, + fixes non-C++ build. + (#496032, Nelson Benitez) + +--- trunk/tests/Makefile.am 2008/03/02 15:31:49 19687 ++++ trunk/tests/Makefile.am 2008/03/02 17:19:52 19688 +@@ -54,7 +54,6 @@ + + noinst_PROGRAMS = $(TEST_PROGS) \ + autotestfilechooser \ +- autotestkeywords \ + floatingtest \ + buildertest \ + simple \ diff --git a/x11-libs/gtk+/files/gtk+-2.12.10-fix-treeview_sort_indicators.patch b/x11-libs/gtk+/files/gtk+-2.12.10-fix-treeview_sort_indicators.patch new file mode 100644 index 000000000000..31038087b7d2 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.12.10-fix-treeview_sort_indicators.patch @@ -0,0 +1,25 @@ +2008-06-08 Kristian Rietveld <kris@imendio.com> + + Merge from trunk: + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button): + always determine what arrow to show if show_sort_indicator is true. + (#352738, Chris Vine). + +diff --git a/gtk/gtktreeviewcolumn.c b/gtk/gtktreeviewcolumn.c +index 9331b8f..52994cf 100644 +--- a/gtk/gtktreeviewcolumn.c ++++ b/gtk/gtktreeviewcolumn.c +@@ -925,8 +925,7 @@ gtk_tree_view_column_update_button (GtkTreeViewColumn *tree_column) + &sort_column_id, + NULL); + +- if (tree_column->show_sort_indicator +- && (sort_column_id >= 0 && sort_column_id == tree_column->sort_column_id)) ++ if (tree_column->show_sort_indicator) + { + gboolean alternative; + +-- +1.5.4.5 + diff --git a/x11-libs/gtk+/files/gtk+-2.12.10-no-libintl.patch b/x11-libs/gtk+/files/gtk+-2.12.10-no-libintl.patch new file mode 100644 index 000000000000..4781acabf051 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.12.10-no-libintl.patch @@ -0,0 +1,26 @@ +Use glib/gi18n.h instead of libintl.h, as is done everywhere else. +In addition to following the common style, this allows building against +a patched glib on an embedded uclibc system + +--- gtk/gtktrayicon-x11.c.orig 2008-06-10 11:15:21 +0000 ++++ gtk/gtktrayicon-x11.c 2008-06-10 11:15:32 +0000 +@@ -24,7 +24,7 @@ + + #include <config.h> + #include <string.h> +-#include <libintl.h> ++#include <glib/gi18n.h> + + #include "gtkintl.h" + #include "gtkprivate.h" +--- tests/buildertest.c.orig 2008-06-10 13:25:32 +0000 ++++ tests/buildertest.c 2008-06-10 13:26:12 +0000 +@@ -20,7 +20,7 @@ + */ + + #include <string.h> +-#include <libintl.h> ++#include <glib/gi18n.h> + #include <locale.h> + #include <math.h> + diff --git a/x11-libs/gtk+/gtk+-2.12.10-r1.ebuild b/x11-libs/gtk+/gtk+-2.12.10-r1.ebuild new file mode 100644 index 000000000000..86cde61f5106 --- /dev/null +++ b/x11-libs/gtk+/gtk+-2.12.10-r1.ebuild @@ -0,0 +1,175 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-2.12.10-r1.ebuild,v 1.1 2008/06/11 15:01:28 leio Exp $ + +WANT_AUTOMAKE="1.7" + +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 vim-syntax 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 + x11-proto/xextproto + x11-proto/xproto + x11-proto/inputproto + x11-proto/damageproto + xinerama? ( x11-proto/xineramaproto ) + >=dev-util/gtk-doc-am-1.8 + doc? ( + >=dev-util/gtk-doc-1.8 + ~app-text/docbook-xml-dtd-4.1.2 + )" +PDEPEND="vim-syntax? ( app-vim/gtk-syntax )" + +pkg_setup() { + if ! built_with_use x11-libs/cairo X; then + eerror "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" + + # Workaround adobe flash infinite loop. Patch from http://bugzilla.gnome.org/show_bug.cgi?id=463773#c11 + epatch "${FILESDIR}/${PN}-2.12.0-flash-workaround.patch" + + # OpenOffice.org might hang at startup (on non-gnome env) without this workaround, bug #193513 + epatch "${FILESDIR}/${PN}-2.12.0-openoffice-freeze-workaround.patch" + + # Firefox print review crash fix, bug #195644 + epatch "${FILESDIR}/${PN}-2.12.1-firefox-print-preview.patch" + + # Fix gdk_window_get_frame_extents, to fix window placements bugs from bug #225339; included in 2.12.11 + epatch "${FILESDIR}/${P}-fix-get_frame_extents.patch" + + # Fix showing of treeview sort indicators; included in 2.12.11 + epatch "${FILESDIR}/${P}-fix-treeview_sort_indicators.patch" + + # Compile without libintl.h (uclibc) + epatch "${FILESDIR}/${P}-no-libintl.patch" + + # Work without C++ + epatch "${FILESDIR}/${P}-fix-nocxx.patch" + + # -O3 and company cause random crashes in applications. Bug #133469 + replace-flags -O3 -O2 + strip-flags + + use ppc64 && append-flags -mminimal-toc + + # Fix libtool usage for configure stage, bug #213789 + epatch "${FILESDIR}/${PN}-2.12.9-libtool-2.patch" + + # remember, eautoreconf applies elibtoolize. + # if you remove this, you should manually run elibtoolize + eautoreconf +} + +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) \ + $(use_enable cups cups auto) \ + --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() { + Xemake check || die +} + +src_install() { + emake DESTDIR="${D}" install || 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 + + elog "Please install app-text/evince for print preview functionality" +} |