commit 5347713a89ab9419132dd15ddb669884f6c751c9
parent b2470355be8626830ee82decaca490c37c05c62f
Author: kar <git@13f0.net>
Date: Sun, 1 Jun 2025 23:35:58 -0400
add my sort of unbloated x11-libs/gtk+2
Diffstat:
8 files changed, 636 insertions(+), 0 deletions(-)
diff --git a/metadata/md5-cache/x11-libs/gtk+-2.24.33-r3 b/metadata/md5-cache/x11-libs/gtk+-2.24.33-r3
@@ -0,0 +1,19 @@
+BDEPEND=dev-util/glib-utils >=sys-devel/gettext-0.18.3 virtual/pkgconfig examples? ( x11-libs/gdk-pixbuf ) sys-devel/gnuconfig >=app-portage/elt-patches-20250306 || ( >=dev-build/automake-1.17-r1:1.17 >=dev-build/automake-1.16.5:1.16 ) || ( >=dev-build/autoconf-2.72-r1:2.72 ) >=dev-build/libtool-2.4.7-r3 app-arch/xz-utils test? ( x11-base/xorg-server[xvfb] x11-apps/xhost )
+DEFINED_PHASES=compile configure install postinst postrm preinst prepare test
+DEPEND=# >=app-accessibility/at-spi2-core-2.46.0[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=dev-libs/glib-2.34.3:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=media-libs/fontconfig-2.10.92[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] virtual/libintl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/gdk-pixbuf-2.30.7:2[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/pango-1.36.3[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-misc/shared-mime-info cups? ( >=net-print/cups-1.7.1-r2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) introspection? ( >=dev-libs/gobject-introspection-0.9.3:= ) !aqua? ( >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),X,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libX11-1.6.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXcomposite-0.4.4-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXcursor-1.1.14[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXdamage-1.1.4-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXext-1.3.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXfixes-5.0.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXi-1.7.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXrandr-1.5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXrender-0.9.8[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] xinerama? ( >=x11-libs/libXinerama-1.1.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) !aqua? ( x11-base/xorg-proto ) test? ( media-fonts/font-cursor-misc media-fonts/font-misc-misc x11-themes/hicolor-icon-theme )
+DESCRIPTION=Gimp ToolKit +
+EAPI=8
+HOMEPAGE=https://www.gtk.org/
+IDEPEND=dev-util/desktop-file-utils x11-misc/shared-mime-info
+INHERIT=flag-o-matic gnome2 multilib multilib-minimal readme.gentoo-r1 virtualx
+IUSE=aqua cups examples +introspection test vim-syntax xinerama abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64 test
+KEYWORDS=~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris
+LICENSE=LGPL-2+
+PDEPEND=gnome-base/librsvg[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] vim-syntax? ( app-vim/gtk-syntax )
+RDEPEND=# >=app-accessibility/at-spi2-core-2.46.0[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=dev-libs/glib-2.34.3:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=media-libs/fontconfig-2.10.92[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] virtual/libintl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/gdk-pixbuf-2.30.7:2[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/pango-1.36.3[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-misc/shared-mime-info cups? ( >=net-print/cups-1.7.1-r2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) introspection? ( >=dev-libs/gobject-introspection-0.9.3:= ) !aqua? ( >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),X,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libX11-1.6.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXcomposite-0.4.4-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXcursor-1.1.14[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXdamage-1.1.4-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXext-1.3.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXfixes-5.0.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXi-1.7.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXrandr-1.5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXrender-0.9.8[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] xinerama? ( >=x11-libs/libXinerama-1.1.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) !<dev-util/gtk-builder-convert-2.24.33
+REQUIRED_USE=xinerama? ( !aqua )
+RESTRICT=test !test? ( test )
+SLOT=2
+SRC_URI=mirror://gnome/sources/gtk+/2.24/gtk+-2.24.33.tar.xz
+_eclasses_=toolchain-funcs f9d71a6efe9d083aec750dd13968e169 flag-o-matic b892042b2667b8ac69ec8a2571dc290a gnuconfig ddeb9f8caff1b5f71a09c75b7534df79 libtool c81bd096be5f4c82f4e8f156ef112402 autotools 35f9bf6198bb538e28dcdea5fda274f2 gnome.org e1b4f392dbfedfb8974b71b017937f08 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 gnome2-utils a8cf148ec7f5ae0b1f1d33ae5f7f9e88 xdg 3ef49a87c52c8b77c476351195dfe575 gnome2 26fd01914b36038dc8e964ff4bd03a95 multilib b2a329026f2e404e9e371097dda47f96 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 readme.gentoo-r1 b045f3acf546393ab6b3170781875358 virtualx 9741d451eb64ea8bb9faee90d68a9b68
+_md5_=54e90ade8dd8ea179710a9dae3a2f616
diff --git a/metadata/md5-cache/x11-libs/gtk+-2.24.33-r4 b/metadata/md5-cache/x11-libs/gtk+-2.24.33-r4
@@ -0,0 +1,19 @@
+BDEPEND=dev-util/glib-utils >=sys-devel/gettext-0.18.3 virtual/pkgconfig examples? ( x11-libs/gdk-pixbuf ) sys-devel/gnuconfig >=app-portage/elt-patches-20250306 || ( >=dev-build/automake-1.17-r1:1.17 >=dev-build/automake-1.16.5:1.16 ) || ( >=dev-build/autoconf-2.72-r1:2.72 ) >=dev-build/libtool-2.4.7-r3 app-arch/xz-utils test? ( x11-base/xorg-server[xvfb] x11-apps/xhost )
+DEFINED_PHASES=compile configure install postinst postrm preinst prepare test
+DEPEND=>=dev-libs/glib-2.34.3:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=media-libs/fontconfig-2.10.92[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] virtual/libintl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/gdk-pixbuf-2.30.7:2[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/pango-1.36.3[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-misc/shared-mime-info cups? ( >=net-print/cups-1.7.1-r2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) introspection? ( >=dev-libs/gobject-introspection-0.9.3:= ) !aqua? ( >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),X,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libX11-1.6.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXcomposite-0.4.4-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXcursor-1.1.14[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXdamage-1.1.4-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXext-1.3.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXfixes-5.0.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXi-1.7.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXrandr-1.5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXrender-0.9.8[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] xinerama? ( >=x11-libs/libXinerama-1.1.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) !aqua? ( x11-base/xorg-proto ) test? ( media-fonts/font-cursor-misc media-fonts/font-misc-misc x11-themes/hicolor-icon-theme )
+DESCRIPTION=Gimp ToolKit +
+EAPI=8
+HOMEPAGE=https://www.gtk.org/
+IDEPEND=dev-util/desktop-file-utils x11-misc/shared-mime-info
+INHERIT=flag-o-matic gnome2 multilib multilib-minimal readme.gentoo-r1 virtualx
+IUSE=aqua cups examples +introspection test vim-syntax xinerama abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64 test
+KEYWORDS=~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris
+LICENSE=LGPL-2+
+PDEPEND=gnome-base/librsvg[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] vim-syntax? ( app-vim/gtk-syntax )
+RDEPEND=>=dev-libs/glib-2.34.3:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=media-libs/fontconfig-2.10.92[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] virtual/libintl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/gdk-pixbuf-2.30.7:2[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/pango-1.36.3[introspection?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-misc/shared-mime-info cups? ( >=net-print/cups-1.7.1-r2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) introspection? ( >=dev-libs/gobject-introspection-0.9.3:= ) !aqua? ( >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),X,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libX11-1.6.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXcomposite-0.4.4-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXcursor-1.1.14[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXdamage-1.1.4-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXext-1.3.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXfixes-5.0.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXi-1.7.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXrandr-1.5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=x11-libs/libXrender-0.9.8[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] xinerama? ( >=x11-libs/libXinerama-1.1.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) !<dev-util/gtk-builder-convert-2.24.33
+REQUIRED_USE=xinerama? ( !aqua )
+RESTRICT=test !test? ( test )
+SLOT=2
+SRC_URI=mirror://gnome/sources/gtk+/2.24/gtk+-2.24.33.tar.xz
+_eclasses_=toolchain-funcs f9d71a6efe9d083aec750dd13968e169 flag-o-matic b892042b2667b8ac69ec8a2571dc290a gnuconfig ddeb9f8caff1b5f71a09c75b7534df79 libtool c81bd096be5f4c82f4e8f156ef112402 autotools 35f9bf6198bb538e28dcdea5fda274f2 gnome.org e1b4f392dbfedfb8974b71b017937f08 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 gnome2-utils a8cf148ec7f5ae0b1f1d33ae5f7f9e88 xdg 3ef49a87c52c8b77c476351195dfe575 gnome2 26fd01914b36038dc8e964ff4bd03a95 multilib b2a329026f2e404e9e371097dda47f96 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 readme.gentoo-r1 b045f3acf546393ab6b3170781875358 virtualx 9741d451eb64ea8bb9faee90d68a9b68
+_md5_=82df94cc7813dedd691512427e78892d
diff --git a/x11-libs/gtk+/Manifest b/x11-libs/gtk+/Manifest
@@ -0,0 +1 @@
+DIST gtk+-2.24.33.tar.xz 12661828 BLAKE2B f3488b220aaee54bf36fa77e2112d060152e57938845d240014a7d43a5743b1d4de19cc09c683d9d238fd1967cd67cc3c493f2475e4e481f6709f5cdc652c65c SHA512 71b588797c81f727dfac8dcb1be193f7436f717d30ecf18eae2d3aeb0f445b3be4743400acac16435490db8f564f01032065d3f42d27871317f80c98aef929d5
diff --git a/x11-libs/gtk+/files/gtk+-2.24.24-out-of-source.patch b/x11-libs/gtk+/files/gtk+-2.24.24-out-of-source.patch
@@ -0,0 +1,33 @@
+From 9e0f33144aff8d792ab105927cf686eda0afd25e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sun, 18 May 2014 10:50:05 +0200
+Subject: [PATCH] aliasfilecheck: check for sources both in builddir & srcdir.
+
+The $gtk_all_c_sources variable contains both supplied and generated
+sources. The former reside in $srcdir, the latter in the build directory
+(cwd).
+
+In order to handle both kinds properly, first try to find each source
+file in cwd, and then fallback to $srcdir. This makes it possible to use
+out-of-source builds, and guarantees that fresh-built source files will
+be used rather than pre-generated copies included in the distribution
+tarball.
+---
+ gtk/aliasfilescheck.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gtk/aliasfilescheck.sh b/gtk/aliasfilescheck.sh
+index 31b49d4..3636a82 100755
+--- a/gtk/aliasfilescheck.sh
++++ b/gtk/aliasfilescheck.sh
+@@ -6,6 +6,6 @@ if test "x$gtk_all_c_sources" = x; then
+ fi
+
+ grep 'IN_FILE' ${srcdir-.}/gtk.symbols | sed 's/.*(//;s/).*//' | grep __ | sort -u > expected-files
+-{ cd ${srcdir-.}; grep '^ *# *define __' $gtk_all_c_sources; } | sed 's/.*define //;s/ *$//' | sort > actual-files
++{ for f in $gtk_all_c_sources; do if test -f ${f}; then grep '^ *# *define __' ${f}; else grep '^ *# *define __' "${srcdir-.}"/${f}; fi; done } | sed 's/.*define //;s/ *$//' | sort > actual-files
+
+ diff expected-files actual-files && rm -f expected-files actual-files
+--
+1.9.3
+
diff --git a/x11-libs/gtk+/files/gtk+-2.24.31-update-icon-cache.patch b/x11-libs/gtk+/files/gtk+-2.24.31-update-icon-cache.patch
@@ -0,0 +1,78 @@
+From 260f94f3914ba18a256e6f1c222f643a57854e80 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sat, 9 May 2015 23:30:58 +0200
+Subject: [PATCH] Always use external gtk-update-icon-cache
+
+---
+ configure.ac | 8 +++-----
+ docs/reference/gtk/Makefile.am | 2 +-
+ gtk/Makefile.am | 13 ++-----------
+ 3 files changed, 6 insertions(+), 17 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4e11b40..7ef8cb6 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -913,11 +913,9 @@ dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
+
+ AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
+
+-if test $cross_compiling = yes; then
+- AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
+- if test x$GTK_UPDATE_ICON_CACHE = xno; then
+- REBUILD_PNGS=#
+- fi
++AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
++if test x$GTK_UPDATE_ICON_CACHE = xno; then
++ REBUILD_PNGS=#
+ fi
+
+ AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
+diff --git a/docs/reference/gtk/Makefile.am b/docs/reference/gtk/Makefile.am
+index c239445..60b5265 100644
+--- a/docs/reference/gtk/Makefile.am
++++ b/docs/reference/gtk/Makefile.am
+@@ -368,7 +368,7 @@ EXTRA_DIST += version.xml.in
+
+ if ENABLE_MAN
+
+-man_MANS = gtk-query-immodules-2.0.1 gtk-update-icon-cache.1 gtk-builder-convert.1
++man_MANS = gtk-query-immodules-2.0.1 gtk-builder-convert.1
+
+ %.1 : %.xml
+ @XSLTPROC@ -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
+diff --git a/gtk/Makefile.am b/gtk/Makefile.am
+index 8cc4536..a7afbf3 100644
+--- a/gtk/Makefile.am
++++ b/gtk/Makefile.am
+@@ -1087,8 +1087,7 @@ endif
+ # Installed tools
+ #
+ bin_PROGRAMS = \
+- gtk-query-immodules-2.0 \
+- gtk-update-icon-cache
++ gtk-query-immodules-2.0
+
+ bin_SCRIPTS = gtk-builder-convert
+
+@@ -1438,16 +1437,8 @@ stamp-icons: $(STOCK_ICONS)
+ ) done \
+ && touch stamp-icons
+
+-if CROSS_COMPILING
+-gtk_update_icon_cache_program = $(GTK_UPDATE_ICON_CACHE)
+-else
+-gtk_update_icon_cache_program = \
+- ./gtk-update-icon-cache
+-endif
+-
+ gtkbuiltincache.h: @REBUILD@ stamp-icons
+- $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT)
+- $(gtk_update_icon_cache_program) --force --ignore-theme-index \
++ $(GTK_UPDATE_ICON_CACHE) --force --ignore-theme-index \
+ --include-image-data \
+ --source builtin_icons stock-icons > gtkbuiltincache.h.tmp && \
+ mv gtkbuiltincache.h.tmp gtkbuiltincache.h
+--
+2.10.0
+
diff --git a/x11-libs/gtk+/files/gtk+-2.24.33-Fix-casts.patch b/x11-libs/gtk+/files/gtk+-2.24.33-Fix-casts.patch
@@ -0,0 +1,167 @@
+https://bugs.gentoo.org/880617
+
+From 81c42586e6d9db7434e9b3f657fbd238294dd9d9 Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gentoo.org>
+Date: Sat, 13 May 2023 11:35:28 -0400
+Subject: [PATCH] Fix casts
+
+---
+ gtk/gtkcellrendererspin.c | 2 +-
+ gtk/gtkcomboboxtext.c | 2 +-
+ gtk/gtkimmodule.c | 2 +-
+ gtk/gtklabel.c | 2 +-
+ gtk/gtkscale.c | 2 +-
+ gtk/gtktoolpalette.c | 2 +-
+ gtk/gtktreeview.c | 2 +-
+ gtk/gtkuimanager.c | 2 +-
+ gtk/gtkwidget.c | 2 +-
+ modules/other/gail/gailtreeview.c | 2 +-
+ modules/printbackends/cups/gtkprintbackendcups.c | 2 +-
+ 11 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/gtk/gtkcellrendererspin.c b/gtk/gtkcellrendererspin.c
+index 2a3961bf20..68e5b9aaae 100644
+--- a/gtk/gtkcellrendererspin.c
++++ b/gtk/gtkcellrendererspin.c
+@@ -207,7 +207,7 @@ gtk_cell_renderer_spin_set_property (GObject *object,
+ }
+
+ if (obj)
+- priv->adjustment = g_object_ref_sink (obj);
++ priv->adjustment = GTK_ADJUSTMENT (g_object_ref_sink (obj));
+ break;
+ case PROP_CLIMB_RATE:
+ priv->climb_rate = g_value_get_double (value);
+diff --git a/gtk/gtkcomboboxtext.c b/gtk/gtkcomboboxtext.c
+index 9ffba68766..42c51abebc 100644
+--- a/gtk/gtkcomboboxtext.c
++++ b/gtk/gtkcomboboxtext.c
+@@ -275,7 +275,7 @@ gtk_combo_box_text_buildable_custom_tag_start (GtkBuildable *buildable,
+
+ parser_data = g_slice_new0 (ItemParserData);
+ parser_data->builder = g_object_ref (builder);
+- parser_data->object = g_object_ref (buildable);
++ parser_data->object = G_OBJECT (g_object_ref (buildable));
+ parser_data->domain = gtk_builder_get_translation_domain (builder);
+ *parser = item_parser;
+ *data = parser_data;
+diff --git a/gtk/gtkimmodule.c b/gtk/gtkimmodule.c
+index 1fcb17a7d8..445b2be87f 100644
+--- a/gtk/gtkimmodule.c
++++ b/gtk/gtkimmodule.c
+@@ -662,7 +662,7 @@ lookup_immodule (gchar **immodules_list)
+ gboolean found;
+ gchar *context_id;
+ found = g_hash_table_lookup_extended (contexts_hash, *immodules_list,
+- &context_id, NULL);
++ (gpointer *) &context_id, NULL);
+ if (found)
+ return context_id;
+ }
+diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c
+index c47de5924f..cf68685536 100644
+--- a/gtk/gtklabel.c
++++ b/gtk/gtklabel.c
+@@ -1336,7 +1336,7 @@ gtk_label_buildable_custom_tag_start (GtkBuildable *buildable,
+
+ parser_data = g_slice_new0 (PangoParserData);
+ parser_data->builder = g_object_ref (builder);
+- parser_data->object = g_object_ref (buildable);
++ parser_data->object = G_OBJECT (g_object_ref (buildable));
+ *parser = pango_parser;
+ *data = parser_data;
+ return TRUE;
+diff --git a/gtk/gtkscale.c b/gtk/gtkscale.c
+index 4317523fb8..a573b2f6ba 100644
+--- a/gtk/gtkscale.c
++++ b/gtk/gtkscale.c
+@@ -1471,7 +1471,7 @@ gtk_scale_add_mark (GtkScale *scale,
+ mark->position = position;
+
+ priv->marks = g_slist_insert_sorted_with_data (priv->marks, mark,
+- (GCompareFunc) compare_marks,
++ compare_marks,
+ GINT_TO_POINTER (
+ gtk_range_get_inverted (GTK_RANGE (scale))
+ ));
+diff --git a/gtk/gtktoolpalette.c b/gtk/gtktoolpalette.c
+index b984193ca3..f64b552fb0 100644
+--- a/gtk/gtktoolpalette.c
++++ b/gtk/gtktoolpalette.c
+@@ -734,7 +734,7 @@ gtk_tool_palette_add (GtkContainer *container,
+
+ g_ptr_array_add (palette->priv->groups, info);
+ info->pos = palette->priv->groups->len - 1;
+- info->widget = g_object_ref_sink (child);
++ info->widget = (GtkToolItemGroup *) g_object_ref_sink (child);
+
+ gtk_widget_set_parent (child, GTK_WIDGET (palette));
+ }
+diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c
+index 89301eb91d..0d2d15b488 100644
+--- a/gtk/gtktreeview.c
++++ b/gtk/gtktreeview.c
+@@ -14147,7 +14147,7 @@ gtk_tree_view_set_search_entry (GtkTreeView *tree_view,
+
+ if (entry)
+ {
+- tree_view->priv->search_entry = g_object_ref (entry);
++ tree_view->priv->search_entry = GTK_WIDGET (g_object_ref (entry));
+ tree_view->priv->search_custom_entry_set = TRUE;
+
+ if (tree_view->priv->search_entry_changed_id == 0)
+diff --git a/gtk/gtkuimanager.c b/gtk/gtkuimanager.c
+index d004cf1ed3..8cbeda9e85 100644
+--- a/gtk/gtkuimanager.c
++++ b/gtk/gtkuimanager.c
+@@ -503,7 +503,7 @@ gtk_ui_manager_buildable_construct_child (GtkBuildable *buildable,
+ g_signal_connect (widget, "hierarchy-changed",
+ G_CALLBACK (child_hierarchy_changed_cb),
+ GTK_UI_MANAGER (buildable));
+- return g_object_ref (widget);
++ return G_OBJECT (g_object_ref (widget));
+ }
+
+ static void
+diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
+index 1d1f6bb60e..a2ae2b430f 100644
+--- a/gtk/gtkwidget.c
++++ b/gtk/gtkwidget.c
+@@ -10679,7 +10679,7 @@ gtk_widget_buildable_custom_tag_start (GtkBuildable *buildable,
+ AccelGroupParserData *parser_data;
+
+ parser_data = g_slice_new0 (AccelGroupParserData);
+- parser_data->object = g_object_ref (buildable);
++ parser_data->object = G_OBJECT (g_object_ref (buildable));
+ *parser = accel_group_parser;
+ *data = parser_data;
+ return TRUE;
+diff --git a/modules/other/gail/gailtreeview.c b/modules/other/gail/gailtreeview.c
+index 23923c59a1..ac6ff0a1c4 100644
+--- a/modules/other/gail/gailtreeview.c
++++ b/modules/other/gail/gailtreeview.c
+@@ -995,7 +995,7 @@ gail_tree_view_ref_child (AtkObject *obj,
+ gail_cell_add_state (cell, ATK_STATE_FOCUSABLE, FALSE);
+ if (focus_index == i)
+ {
+- gailview->focus_cell = g_object_ref (cell);
++ gailview->focus_cell = ATK_OBJECT (g_object_ref (cell));
+ gail_cell_add_state (cell, ATK_STATE_FOCUSED, FALSE);
+ g_signal_emit_by_name (gailview,
+ "active-descendant-changed",
+diff --git a/modules/printbackends/cups/gtkprintbackendcups.c b/modules/printbackends/cups/gtkprintbackendcups.c
+index 2a000dc16f..753c53cb89 100644
+--- a/modules/printbackends/cups/gtkprintbackendcups.c
++++ b/modules/printbackends/cups/gtkprintbackendcups.c
+@@ -3479,7 +3479,7 @@ cups_request_ppd (GtkPrinter *printer)
+ g_io_channel_set_encoding (data->ppd_io, NULL, NULL);
+ g_io_channel_set_close_on_unref (data->ppd_io, TRUE);
+
+- data->printer = g_object_ref (printer);
++ data->printer = GTK_PRINTER_CUPS (g_object_ref (printer));
+
+ resource = g_strdup_printf ("/printers/%s.ppd",
+ gtk_printer_cups_get_ppd_name (GTK_PRINTER_CUPS (printer)));
+--
+2.39.3
+
diff --git a/x11-libs/gtk+/files/gtk+-2.24.33-respect-NM.patch b/x11-libs/gtk+/files/gtk+-2.24.33-respect-NM.patch
@@ -0,0 +1,12 @@
+https://bugs.gentoo.org/725852
+--- a/configure.ac
++++ b/configure.ac
+@@ -190,7 +190,7 @@ m4_ifdef([LT_OUTPUT], [LT_OUTPUT])
+ AC_SYS_LARGEFILE
+
+ AM_PROG_AS
+-AC_PATH_TOOL(NM, nm, nm)
++AC_CHECK_TOOL(NM, nm, nm)
+
+ dnl Initialize maintainer mode
+ AM_MAINTAINER_MODE([enable])
diff --git a/x11-libs/gtk+/gtk+-2.24.33-r4.ebuild b/x11-libs/gtk+/gtk+-2.24.33-r4.ebuild
@@ -0,0 +1,307 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+GNOME2_EAUTORECONF="yes"
+
+inherit flag-o-matic gnome2 multilib multilib-minimal readme.gentoo-r1 virtualx
+
+DESCRIPTION="Gimp ToolKit +"
+HOMEPAGE="https://www.gtk.org/"
+
+LICENSE="LGPL-2+"
+SLOT="2"
+IUSE="aqua cups examples +introspection test vim-syntax xinerama"
+REQUIRED_USE="
+ xinerama? ( !aqua )
+"
+
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Upstream wants us to do their job:
+# https://bugzilla.gnome.org/show_bug.cgi?id=768663#c1
+RESTRICT="test"
+
+# >=app-accessibility/at-spi2-core-2.46.0[introspection?,${MULTILIB_USEDEP}]
+COMMON_DEPEND="
+ >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]
+ >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}]
+ virtual/libintl[${MULTILIB_USEDEP}]
+ >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),${MULTILIB_USEDEP}]
+ >=x11-libs/gdk-pixbuf-2.30.7:2[introspection?,${MULTILIB_USEDEP}]
+ >=x11-libs/pango-1.36.3[introspection?,${MULTILIB_USEDEP}]
+ x11-misc/shared-mime-info
+
+ cups? ( >=net-print/cups-1.7.1-r2:=[${MULTILIB_USEDEP}] )
+ introspection? ( >=dev-libs/gobject-introspection-0.9.3:= )
+ !aqua? (
+ >=x11-libs/cairo-1.12.14-r4:=[aqua?,svg(+),X,${MULTILIB_USEDEP}]
+ >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXcomposite-0.4.4-r1[${MULTILIB_USEDEP}]
+ >=x11-libs/libXcursor-1.1.14[${MULTILIB_USEDEP}]
+ >=x11-libs/libXdamage-1.1.4-r1[${MULTILIB_USEDEP}]
+ >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
+ >=x11-libs/libXi-1.7.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXrandr-1.5[${MULTILIB_USEDEP}]
+ >=x11-libs/libXrender-0.9.8[${MULTILIB_USEDEP}]
+ xinerama? ( >=x11-libs/libXinerama-1.1.3[${MULTILIB_USEDEP}] )
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ !aqua? ( x11-base/xorg-proto )
+ test? (
+ media-fonts/font-cursor-misc
+ media-fonts/font-misc-misc
+ x11-themes/hicolor-icon-theme
+ )
+"
+
+# >=dev-util/gtk-update-icon-cache-2
+# >=x11-themes/adwaita-icon-theme-3.14
+# x11-themes/gnome-themes-standard
+RDEPEND="${COMMON_DEPEND}"
+# librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710
+# x11-themes/gtk-engines-adwaita
+PDEPEND="
+ gnome-base/librsvg[${MULTILIB_USEDEP}]
+ vim-syntax? ( app-vim/gtk-syntax )
+"
+# docbook-4.1.2 and xsl required for man pages
+# docbook-4.3 required for gtk-doc
+# app-text/docbook-xml-dtd:4.1.2
+# app-text/docbook-xml-dtd:4.3
+# app-text/docbook-xsl-stylesheets
+# dev-libs/gobject-introspection-common
+# dev-libs/libxslt
+# >=dev-build/gtk-doc-am-1.20
+BDEPEND="
+ dev-util/glib-utils
+ >=sys-devel/gettext-0.18.3
+ virtual/pkgconfig
+ examples? ( x11-libs/gdk-pixbuf )
+"
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="To make the gtk2 file chooser use 'current directory' mode by default,
+edit ~/.config/gtk-2.0/gtkfilechooser.ini to contain the following:
+[Filechooser Settings]
+StartupMode=cwd"
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/gtk-query-immodules-2.0$(get_exeext)
+)
+
+PATCHES=(
+ # Fix tests running when building out of sources, bug #510596, upstream bug #730319
+ "${FILESDIR}"/${PN}-2.24.24-out-of-source.patch
+ # Rely on split gtk-update-icon-cache package, bug #528810
+ "${FILESDIR}"/${PN}-2.24.31-update-icon-cache.patch # requires eautoreconf
+ # Respect ${NM}, bug #725852
+ "${FILESDIR}"/${PN}-2.24.33-respect-NM.patch # requires eautoreconf
+ # Fix casts, bug #880617
+ "${FILESDIR}"/${PN}-2.24.33-Fix-casts.patch
+)
+
+strip_builddir() {
+ local rule=$1
+ shift
+ local directory=$1
+ shift
+ sed -e "s/^\(${rule} =.*\)${directory}\(.*\)$/\1\2/" -i $@ \
+ || die "Could not strip director ${directory} from build."
+}
+
+set_gtk2_confdir() {
+ # An arch specific config directory is used on multilib systems
+ GTK2_CONFDIR="/etc/gtk-2.0/${CHOST}"
+}
+
+src_prepare() {
+ # Various glib marshaller churn could break build against a different glib version, force regeneration
+ rm -v gdk/gdkmarshalers.{c,h} gtk/gtkmarshal.{c,h} gtk/gtkmarshalers.{c,h} \
+ perf/marshalers.{c,h} gtk/gtkaliasdef.c gtk/gtkalias.h || die
+
+ # Stop trying to build unmaintained docs, bug #349754, upstream bug #623150
+ strip_builddir SUBDIRS tutorial docs/Makefile.{am,in}
+ strip_builddir SUBDIRS faq docs/Makefile.{am,in}
+
+ # -O3 and company cause random crashes in applications, bug #133469
+ replace-flags -O3 -O2
+ strip-flags
+ # Not compatible with C23 decls
+ append-flags -std=gnu17
+
+ if ! use test ; then
+ # don't waste time building tests
+ strip_builddir SRC_SUBDIRS tests Makefile.{am,in}
+ strip_builddir SUBDIRS tests gdk/Makefile.{am,in} gtk/Makefile.{am,in}
+ else
+ # Non-working test in gentoo's env
+ sed 's:\(g_test_add_func ("/ui-tests/keys-events.*\):/*\1*/:g' \
+ -i gtk/tests/testing.c || die "sed 1 failed"
+
+ # Cannot work because glib is too clever to find real user's home
+ # gentoo bug #285687, upstream bug #639832
+ # XXX: /!\ Pay extra attention to second sed when bumping /!\
+ sed '/TEST_PROGS.*recentmanager/d' -i gtk/tests/Makefile.am \
+ || die "failed to disable recentmanager test (1)"
+ sed '/^TEST_PROGS =/,+3 s/recentmanager//' -i gtk/tests/Makefile.in \
+ || die "failed to disable recentmanager test (2)"
+ sed 's:\({ "GtkFileChooserButton".*},\):/*\1*/:g' -i gtk/tests/object.c \
+ || die "failed to disable recentmanager test (3)"
+
+ # https://bugzilla.gnome.org/show_bug.cgi?id=617473
+ sed -i -e 's:pltcheck.sh:$(NULL):g' \
+ gtk/Makefile.am || die
+
+ # UI tests require immodules already installed; bug #413185
+ if ! has_version 'x11-libs/gtk+:2'; then
+ ewarn "Disabling UI tests because this is the first install of"
+ ewarn "gtk+:2 on this machine. Please re-run the tests after ${P}"
+ ewarn "has been installed."
+ sed '/g_test_add_func.*ui-tests/ d' \
+ -i gtk/tests/testing.c || die "sed 2 failed"
+ fi
+ fi
+
+ if ! use examples; then
+ # don't waste time building demos
+ strip_builddir SRC_SUBDIRS demos Makefile.{am,in}
+ fi
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ [[ ${ABI} == ppc64 ]] && append-flags -mminimal-toc
+
+ ECONF_SOURCE=${S} \
+ gnome2_src_configure \
+ $(usex aqua --with-gdktarget=quartz --with-gdktarget=x11) \
+ $(usex aqua "" --with-xinput) \
+ $(use_enable cups cups auto) \
+ $(multilib_native_use_enable introspection) \
+ $(use_enable xinerama) \
+ --disable-papi \
+ --enable-man \
+ --with-xml-catalog="${EPREFIX}"/etc/xml/catalog \
+ CUPS_CONFIG="${EPREFIX}/usr/bin/${CHOST}-cups-config"
+
+ # work-around gtk-doc out-of-source brokedness
+ if multilib_is_native_abi; then
+ local d
+ for d in gdk gtk libgail-util; do
+ ln -s "${S}"/docs/reference/${d}/html docs/reference/${d}/html || die
+ done
+ fi
+}
+
+multilib_src_test() {
+ virtx emake check
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
+
+multilib_src_install_all() {
+ # see bug #133241
+ # Also set more default variables in sync with gtk3 and other distributions
+ insinto /usr/share/gtk-2.0
+ newins - gtkrc <<- 'EOF'
+ gtk-fallback-icon-theme = "gnome"
+ gtk-theme-name = "Adwaita"
+ gtk-icon-theme-name = "Adwaita"
+ gtk-cursor-theme-name = "Adwaita"
+ EOF
+
+ einstalldocs
+ rm "${ED}"/usr/share/doc/${P}/ChangeLog # empty file
+
+ # dev-util/gtk-builder-convert split off into a separate package, #402905
+ rm "${ED}"/usr/bin/gtk-builder-convert || die
+ rm "${ED}"/usr/share/man/man1/gtk-builder-convert.* || die
+
+ readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+ gnome2_pkg_preinst
+
+ multilib_pkg_preinst() {
+ # Make immodules.cache belongs to gtk+ alone
+ local cache="/usr/$(get_libdir)/gtk-2.0/2.10.0/immodules.cache"
+
+ if [[ -e "${EROOT}${cache}" ]]; then
+ cp "${EROOT}${cache}" "${ED}${cache}" || die
+ else
+ touch "${ED}${cache}" || die
+ fi
+ }
+ multilib_parallel_foreach_abi multilib_pkg_preinst
+}
+
+pkg_postinst() {
+ gnome2_pkg_postinst
+
+ multilib_pkg_postinst() {
+ gnome2_query_immodules_gtk2 \
+ || die "Update immodules cache failed (for ${ABI})"
+ }
+ multilib_parallel_foreach_abi multilib_pkg_postinst
+
+ set_gtk2_confdir
+
+ if [[ -e "${EROOT}/etc/gtk-2.0/gtk.immodules" ]]; then
+ elog "File /etc/gtk-2.0/gtk.immodules has been moved to \$CHOST"
+ elog "aware location. Removing deprecated file."
+ rm -f "${EROOT}/etc/gtk-2.0/gtk.immodules"
+ fi
+
+ if [[ -e "${EROOT}${GTK2_CONFDIR}/gtk.immodules" ]]; then
+ elog "File /etc/gtk-2.0/gtk.immodules has been moved to"
+ elog "${EROOT}/usr/$(get_libdir)/gtk-2.0/2.10.0/immodules.cache"
+ elog "Removing deprecated file."
+ rm -f "${EROOT}${GTK2_CONFDIR}/gtk.immodules"
+ fi
+
+ # pixbufs are now handled by x11-libs/gdk-pixbuf
+ if [[ -e "${EROOT}${GTK2_CONFDIR}/gdk-pixbuf.loaders" ]]; then
+ elog "File ${EROOT}${GTK2_CONFDIR}/gdk-pixbuf.loaders is now handled by x11-libs/gdk-pixbuf"
+ elog "Removing deprecated file."
+ rm -f "${EROOT}${GTK2_CONFDIR}/gdk-pixbuf.loaders"
+ fi
+
+ # two checks needed since we dropped multilib conditional
+ if [[ -e "${EROOT}/etc/gtk-2.0/gdk-pixbuf.loaders" ]]; then
+ elog "File ${EROOT}/etc/gtk-2.0/gdk-pixbuf.loaders is now handled by x11-libs/gdk-pixbuf"
+ elog "Removing deprecated file."
+ rm -f "${EROOT}/etc/gtk-2.0/gdk-pixbuf.loaders"
+ fi
+
+ if [[ -e "${EROOT}"/usr/lib/gtk-2.0/2.[^1]* ]]; then
+ elog "You need to rebuild ebuilds that installed into" "${EROOT}"/usr/lib/gtk-2.0/2.[^1]*
+ elog "to do that you can use qfile from portage-utils:"
+ elog "emerge -va1 \$(qfile -qC ${EPREFIX}/usr/lib/gtk-2.0/2.[^1]*)"
+ fi
+
+ if ! has_version "app-text/evince"; then
+ elog "Please install app-text/evince for print preview functionality."
+ elog "Alternatively, check \"gtk-print-preview-command\" documentation and"
+ elog "add it to your gtkrc."
+ fi
+
+ readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+ gnome2_pkg_postrm
+
+ if [[ -z ${REPLACED_BY_VERSION} ]]; then
+ multilib_pkg_postrm() {
+ rm -f "${EROOT}/usr/$(get_libdir)/gtk-2.0/2.10.0/immodules.cache"
+ }
+ multilib_foreach_abi multilib_pkg_postrm
+ fi
+}