commit:     359446c5a33a787dd9d1c0b8c27939d1ae707602
Author:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
AuthorDate: Sat May  9 21:45:01 2015 +0000
Commit:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
CommitDate: Sat May  9 22:24:42 2015 +0000
URL:        https://gitweb.gentoo.org/proj/gnome.git/commit/?id=359446c5

x11-libs/gtk+: depend on split gtk-update-icon-cache

Also sync ebuilds across slots and re-tests src_prepare tests.

 .../gtk+/files/gtk+-2.24.24-out-of-source.patch    |  33 +++
 .../files/gtk+-2.24.27-update-icon-cache.patch     |  64 +++++
 x11-libs/gtk+/files/gtk+-non-bash-support.patch    |  56 ++++
 x11-libs/gtk+/gtk+-2.24.27-r2.ebuild               | 292 +++++++++++++++++++++
 .../{gtk+-3.16.2.ebuild => gtk+-3.14.13.ebuild}    |  35 ++-
 x11-libs/gtk+/gtk+-3.16.2.ebuild                   |  14 +-
 x11-libs/gtk+/gtk+-9999.ebuild                     |  65 +++--
 7 files changed, 498 insertions(+), 61 deletions(-)

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
new file mode 100644
index 0000000..451233c
--- /dev/null
+++ 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?= <[email protected]>
+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.27-update-icon-cache.patch 
b/x11-libs/gtk+/files/gtk+-2.24.27-update-icon-cache.patch
new file mode 100644
index 0000000..f88e02e
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.24.27-update-icon-cache.patch
@@ -0,0 +1,64 @@
+From 2537d97e4685767ce22834c0dd24d37ba715fb52 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <[email protected]>
+Date: Sat, 9 May 2015 23:30:58 +0200
+Subject: [PATCH] Always use external gtk-update-icon-cache
+
+---
+ configure.ac    |  8 +++-----
+ gtk/Makefile.am | 13 ++-----------
+ 2 files changed, 5 insertions(+), 16 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 2671a3d..fa46004 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/gtk/Makefile.am b/gtk/Makefile.am
+index 248220d..42e4c23 100644
+--- a/gtk/Makefile.am
++++ b/gtk/Makefile.am
+@@ -1039,8 +1039,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
+ 
+@@ -1390,16 +1389,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.3.6
+

diff --git a/x11-libs/gtk+/files/gtk+-non-bash-support.patch 
b/x11-libs/gtk+/files/gtk+-non-bash-support.patch
new file mode 100644
index 0000000..a1aac42
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-non-bash-support.patch
@@ -0,0 +1,56 @@
+From 43a4a28cdc60ac7347bb89f84cf049cb3401621d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?R=C3=A9mi=20Cardona?= <[email protected]>
+Date: Sun, 26 Oct 2014 01:59:33 +0400
+Subject: [PATCH] gtk/Makefile.am: Remove bashisms
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+- improve portability of ECHO
+- remove use of shopt
+
+https://bugzilla.gnome.org/show_bug.cgi?id=738835
+
+From: Alexander Tsoy <[email protected]>
+Signed-off-by: RĂ©mi Cardona <[email protected]>
+---
+ gtk/Makefile.am | 13 +++++--------
+ 1 file changed, 5 insertions(+), 8 deletions(-)
+
+diff --git a/gtk/Makefile.am b/gtk/Makefile.am
+index 96c651a..b1478ce 100644
+--- a/gtk/Makefile.am
++++ b/gtk/Makefile.am
+@@ -19,11 +19,7 @@ GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile 
--preview --print-settings %
+ endif
+ 
+ SUBDIRS = inspector native .
+-if OS_DARWIN
+-  ECHO="echo"
+-else
+-  ECHO=echo -e
+-endif
++ECHO=printf '%b\n'
+ 
+ if HAVE_CLOUDPRINT
+ if HAVE_PAPI_CUPS
+@@ -1405,12 +1401,13 @@ gtk.gresource.xml: Makefile.am
+         n=`basename $$f`; \
+         $(ECHO) "    <file compressed=\"true\">ui/$$n</file>" >> $@; \
+       done; \
+-      shopt -s nullglob; \
+       for s in 16x16 22x22 24x24 32x32 48x48; do \
+         for c in actions status; do \
+           for f in $(srcdir)/resources/icons/$$s/$$c/*.png; do \
+-            n=`basename $$f`; \
+-            $(ECHO) "    <file>icons/$$s/$$c/$$n</file>" >> $@; \
++            if [ -e "$$f" ] ; then \
++              n=`basename $$f`; \
++              $(ECHO) "    <file>icons/$$s/$$c/$$n</file>" >> $@; \
++            fi; \
+           done; \
+         done; \
+       done; \
+-- 
+2.3.0
+

diff --git a/x11-libs/gtk+/gtk+-2.24.27-r2.ebuild 
b/x11-libs/gtk+/gtk+-2.24.27-r2.ebuild
new file mode 100644
index 0000000..4276c25
--- /dev/null
+++ b/x11-libs/gtk+/gtk+-2.24.27-r2.ebuild
@@ -0,0 +1,292 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="5"
+GCONF_DEBUG="yes"
+GNOME2_LA_PUNT="yes"
+
+inherit autotools eutils flag-o-matic gnome2 multilib virtualx readme.gentoo 
multilib-minimal
+
+DESCRIPTION="Gimp ToolKit +"
+HOMEPAGE="http://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 ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh 
~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux 
~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris 
~sparc64-solaris ~x64-solaris ~x86-solaris"
+
+# NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf)
+COMMON_DEPEND="
+       >=dev-libs/atk-2.10.0[introspection?,${MULTILIB_USEDEP}]
+       >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]
+       >=media-libs/fontconfig-2.10.92[${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:=[X]
+               >=x11-libs/gdk-pixbuf-2.30.7:2[X]
+               >=x11-libs/libXrender-0.9.8[${MULTILIB_USEDEP}]
+               >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+               >=x11-libs/libXi-1.7.2[${MULTILIB_USEDEP}]
+               >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
+               >=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}]
+               >=x11-libs/libXcursor-1.1.14[${MULTILIB_USEDEP}]
+               >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
+               >=x11-libs/libXcomposite-0.4.4-r1[${MULTILIB_USEDEP}]
+               >=x11-libs/libXdamage-1.1.4-r1[${MULTILIB_USEDEP}]
+               xinerama? ( >=x11-libs/libXinerama-1.1.3[${MULTILIB_USEDEP}] )
+       )
+"
+DEPEND="${COMMON_DEPEND}
+       dev-libs/gobject-introspection-common
+       >=dev-util/gtk-doc-am-1.20
+       sys-devel/gettext
+       >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+       !aqua? (
+               >=x11-proto/xextproto-7.2.1-r1[${MULTILIB_USEDEP}]
+               >=x11-proto/xproto-7.0.24[${MULTILIB_USEDEP}]
+               >=x11-proto/inputproto-2.3[${MULTILIB_USEDEP}]
+               >=x11-proto/damageproto-1.2.1-r1[${MULTILIB_USEDEP}]
+               xinerama? ( 
>=x11-proto/xineramaproto-1.2.1-r1[${MULTILIB_USEDEP}] )
+       )
+       test? (
+               x11-themes/hicolor-icon-theme
+               media-fonts/font-misc-misc
+               media-fonts/font-cursor-misc )
+"
+
+# gtk+-2.24.8 breaks Alt key handling in <=x11-libs/vte-0.28.2:0
+# Add blocker against old gtk-builder-convert to be sure we maintain both
+# in sync.
+RDEPEND="${COMMON_DEPEND}
+       >=dev-util/gtk-update-icon-cache-2
+       !<gnome-base/gail-1000
+       !<dev-util/gtk-builder-convert-${PV}
+       !<x11-libs/vte-0.28.2-r201:0
+       abi_x86_32? (
+               !<=app-emulation/emul-linux-x86-gtklibs-20140508
+               !app-emulation/emul-linux-x86-gtklibs[-abi_x86_32(-)]
+       )
+"
+# librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710
+PDEPEND="
+       gnome-base/librsvg[${MULTILIB_USEDEP}]
+       vim-syntax? ( app-vim/gtk-syntax )
+"
+
+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
+)
+
+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() {
+       # Fix tests running when building out of sources, bug #510596, upstream 
bug #730319
+       epatch "${FILESDIR}"/${PN}-2.24.24-out-of-source.patch
+
+       # Rely on split gtk-update-icon-cache package, bug #528810
+       epatch "${FILESDIR}"/${PN}-2.24.27-update-icon-cache.patch
+
+       # marshalers code was pre-generated with glib-2.31, upstream bug #662109
+       rm -v gdk/gdkmarshalers.c gtk/gtkmarshal.c gtk/gtkmarshalers.c \
+               perf/marshalers.c || 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
+
+       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
+               # 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
+
+       epatch_user
+
+       eautoreconf
+       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 \
+               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() {
+       unset DBUS_SESSION_BUS_ADDRESS
+       Xemake check
+}
+
+multilib_src_install() {
+       gnome2_src_install
+
+       # add -framework Carbon to the .pc files, bug #???
+       if use aqua ; then
+               for i in gtk+-2.0.pc gtk+-quartz-2.0.pc gtk+-unix-print-2.0.pc; 
do
+                       sed -e "s:Libs\: :Libs\: -framework Carbon :" \
+                               -i "${ED%/}"/usr/$(get_libdir)/pkgconfig/$i || 
die "sed failed"
+               done
+       fi
+}
+
+multilib_src_install_all() {
+       # see bug #133241
+       # Also set more default variables in sync with gtk3 and other 
distributions
+       echo 'gtk-fallback-icon-theme = "gnome"' > "${T}/gtkrc"
+       echo 'gtk-theme-name = "Adwaita"' >> "${T}/gtkrc"
+       echo 'gtk-icon-theme-name = "gnome"' >> "${T}/gtkrc"
+       echo 'gtk-cursor-theme-name = "Adwaita"' >> "${T}/gtkrc"
+
+       insinto /usr/share/gtk-2.0
+       doins "${T}"/gtkrc
+
+       dodoc AUTHORS ChangeLog* HACKING NEWS* README*
+
+       # dev-util/gtk-builder-convert split off into a separate package, 
#402905
+       rm "${ED}"usr/bin/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_VERSIONS} ]]; 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
+}

diff --git a/x11-libs/gtk+/gtk+-3.16.2.ebuild 
b/x11-libs/gtk+/gtk+-3.14.13.ebuild
similarity index 86%
copy from x11-libs/gtk+/gtk+-3.16.2.ebuild
copy to x11-libs/gtk+/gtk+-3.14.13.ebuild
index 5e2890a..b8a1722 100644
--- a/x11-libs/gtk+/gtk+-3.16.2.ebuild
+++ b/x11-libs/gtk+/gtk+-3.14.13.ebuild
@@ -1,6 +1,6 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-3.14.10.ebuild,v 1.1 
2015/03/28 09:52:54 pacho Exp $
+# $Header: $
 
 EAPI="5"
 GCONF_DEBUG="yes"
@@ -23,15 +23,12 @@ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 
~s390 ~sh ~sparc ~x86
 
 # FIXME: introspection data is built against system installation of gtk+:3
 # NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf)
-# Use gtk+:2 for gtk-update-icon-cache
 COMMON_DEPEND="
-       >=dev-libs/atk-2.15[introspection?,${MULTILIB_USEDEP}]
-       >=dev-libs/glib-2.43.4:2[${MULTILIB_USEDEP}]
+       >=dev-libs/atk-2.12[introspection?,${MULTILIB_USEDEP}]
+       >=dev-libs/glib-2.41.2:2[${MULTILIB_USEDEP}]
        media-libs/fontconfig[${MULTILIB_USEDEP}]
-       >=media-libs/libepoxy-1.0[${MULTILIB_USEDEP}]
-       >=x11-libs/cairo-1.14[aqua?,glib,svg,X?,${MULTILIB_USEDEP}]
+       >=x11-libs/cairo-1.12[aqua?,glib,svg,X?,${MULTILIB_USEDEP}]
        >=x11-libs/gdk-pixbuf-2.30:2[introspection?,X?,${MULTILIB_USEDEP}]
-       >=x11-libs/gtk+-2.24:2[${MULTILIB_USEDEP}]
        >=x11-libs/pango-1.36.7[introspection?,${MULTILIB_USEDEP}]
        x11-misc/shared-mime-info
 
@@ -40,7 +37,7 @@ COMMON_DEPEND="
                >=dev-libs/json-glib-1.0[${MULTILIB_USEDEP}] )
        colord? ( >=x11-misc/colord-0.1.9:0=[${MULTILIB_USEDEP}] )
        cups? ( >=net-print/cups-1.2[${MULTILIB_USEDEP}] )
-       introspection? ( >=dev-libs/gobject-introspection-1.39:= )
+       introspection? ( >=dev-libs/gobject-introspection-1.39 )
        wayland? (
                >=dev-libs/wayland-1.5.91[${MULTILIB_USEDEP}]
                media-libs/mesa[wayland,${MULTILIB_USEDEP}]
@@ -67,7 +64,7 @@ DEPEND="${COMMON_DEPEND}
        dev-libs/gobject-introspection-common
        >=dev-util/gdbus-codegen-2.38.2
        >=dev-util/gtk-doc-am-1.20
-       >=sys-devel/gettext-0.18.3[${MULTILIB_USEDEP}]
+       sys-devel/gettext
        virtual/pkgconfig[${MULTILIB_USEDEP}]
        X? (
                x11-proto/xextproto[${MULTILIB_USEDEP}]
@@ -79,13 +76,13 @@ DEPEND="${COMMON_DEPEND}
        test? (
                media-fonts/font-misc-misc
                media-fonts/font-cursor-misc )
-       examples? ( media-libs/libcanberra[gtk3] )
 "
 # gtk+-3.2.2 breaks Alt key handling in <=x11-libs/vte-0.30.1:2.90
 # gtk+-3.3.18 breaks scrolling in <=x11-libs/vte-0.31.0:2.90
 # >=xorg-server-1.11.4 needed for
 #  http://mail.gnome.org/archives/desktop-devel-list/2012-March/msg00024.html
 RDEPEND="${COMMON_DEPEND}
+       >=dev-util/gtk-update-icon-cache-3
        !<gnome-base/gail-1000
        !<x11-libs/vte-0.31.0:2.90
        >=x11-themes/adwaita-icon-theme-3.14
@@ -96,7 +93,8 @@ RDEPEND="${COMMON_DEPEND}
        )
 "
 # librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710
-PDEPEND="gnome-base/librsvg[${MULTILIB_USEDEP}]
+PDEPEND="
+       gnome-base/librsvg[${MULTILIB_USEDEP}]
        vim-syntax? ( app-vim/gtk-syntax )
 "
 
@@ -114,6 +112,9 @@ strip_builddir() {
 }
 
 src_prepare() {
+       # https://bugzilla.gnome.org/show_bug.cgi?id=738835
+       epatch "${FILESDIR}"/${PN}-non-bash-support.patch
+
        # -O3 and company cause random crashes in applications. Bug #133469
        replace-flags -O3 -O2
        strip-flags
@@ -121,10 +122,7 @@ src_prepare() {
        if ! use test ; then
                # don't waste time building tests
                strip_builddir SRC_SUBDIRS testsuite Makefile.{am,in}
-
-               # the tests dir needs to be build now because since commit
-               # 7ff3c6df80185e165e3bf6aa31bd014d1f8bf224 tests/gtkgears.o 
needs to be there
-               # strip_builddir SRC_SUBDIRS tests Makefile.{am,in}
+               strip_builddir SRC_SUBDIRS tests Makefile.{am,in}
        fi
 
        if ! use examples; then
@@ -133,9 +131,6 @@ src_prepare() {
                strip_builddir SRC_SUBDIRS examples Makefile.{am,in}
        fi
 
-       # Do no build and install gtk-update-icon-cache which is done by gtk+:2
-       epatch "${FILESDIR}/${P}-remove_update-icon-cache.patch"
-
        epatch_user
 
        eautoreconf
@@ -162,8 +157,8 @@ multilib_src_configure() {
                $(use_enable X xrandr) \
                $(use_enable xinerama) \
                --disable-papi \
-               --disable-mir-backend \
                --enable-man \
+               --enable-gtk2-dependency \
                --with-xml-catalog="${EPREFIX}"/etc/xml/catalog \
                --libdir="${EPREFIX}"/usr/$(get_libdir) \
                CUPS_CONFIG="${EPREFIX}/usr/bin/${CHOST}-cups-config"
@@ -189,7 +184,7 @@ multilib_src_test() {
 multilib_src_install() {
        gnome2_src_install
 
-       # add -framework Carbon to the .pc files, bug #????
+       # add -framework Carbon to the .pc files, bug #???
        if use aqua ; then
                for i in gtk+-3.0.pc gtk+-quartz-3.0.pc gtk+-unix-print-3.0.pc; 
do
                        sed -e "s:Libs\: :Libs\: -framework Carbon :" \

diff --git a/x11-libs/gtk+/gtk+-3.16.2.ebuild b/x11-libs/gtk+/gtk+-3.16.2.ebuild
index 5e2890a..80e3822 100644
--- a/x11-libs/gtk+/gtk+-3.16.2.ebuild
+++ b/x11-libs/gtk+/gtk+-3.16.2.ebuild
@@ -1,6 +1,6 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-3.14.10.ebuild,v 1.1 
2015/03/28 09:52:54 pacho Exp $
+# $Header: $
 
 EAPI="5"
 GCONF_DEBUG="yes"
@@ -23,7 +23,6 @@ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 
~s390 ~sh ~sparc ~x86
 
 # FIXME: introspection data is built against system installation of gtk+:3
 # NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf)
-# Use gtk+:2 for gtk-update-icon-cache
 COMMON_DEPEND="
        >=dev-libs/atk-2.15[introspection?,${MULTILIB_USEDEP}]
        >=dev-libs/glib-2.43.4:2[${MULTILIB_USEDEP}]
@@ -31,7 +30,6 @@ COMMON_DEPEND="
        >=media-libs/libepoxy-1.0[${MULTILIB_USEDEP}]
        >=x11-libs/cairo-1.14[aqua?,glib,svg,X?,${MULTILIB_USEDEP}]
        >=x11-libs/gdk-pixbuf-2.30:2[introspection?,X?,${MULTILIB_USEDEP}]
-       >=x11-libs/gtk+-2.24:2[${MULTILIB_USEDEP}]
        >=x11-libs/pango-1.36.7[introspection?,${MULTILIB_USEDEP}]
        x11-misc/shared-mime-info
 
@@ -40,7 +38,7 @@ COMMON_DEPEND="
                >=dev-libs/json-glib-1.0[${MULTILIB_USEDEP}] )
        colord? ( >=x11-misc/colord-0.1.9:0=[${MULTILIB_USEDEP}] )
        cups? ( >=net-print/cups-1.2[${MULTILIB_USEDEP}] )
-       introspection? ( >=dev-libs/gobject-introspection-1.39:= )
+       introspection? ( >=dev-libs/gobject-introspection-1.39 )
        wayland? (
                >=dev-libs/wayland-1.5.91[${MULTILIB_USEDEP}]
                media-libs/mesa[wayland,${MULTILIB_USEDEP}]
@@ -86,6 +84,7 @@ DEPEND="${COMMON_DEPEND}
 # >=xorg-server-1.11.4 needed for
 #  http://mail.gnome.org/archives/desktop-devel-list/2012-March/msg00024.html
 RDEPEND="${COMMON_DEPEND}
+       >=dev-util/gtk-update-icon-cache-3
        !<gnome-base/gail-1000
        !<x11-libs/vte-0.31.0:2.90
        >=x11-themes/adwaita-icon-theme-3.14
@@ -96,7 +95,8 @@ RDEPEND="${COMMON_DEPEND}
        )
 "
 # librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710
-PDEPEND="gnome-base/librsvg[${MULTILIB_USEDEP}]
+PDEPEND="
+       gnome-base/librsvg[${MULTILIB_USEDEP}]
        vim-syntax? ( app-vim/gtk-syntax )
 "
 
@@ -134,7 +134,7 @@ src_prepare() {
        fi
 
        # Do no build and install gtk-update-icon-cache which is done by gtk+:2
-       epatch "${FILESDIR}/${P}-remove_update-icon-cache.patch"
+       epatch "${FILESDIR}"/${P}-remove_update-icon-cache.patch
 
        epatch_user
 
@@ -189,7 +189,7 @@ multilib_src_test() {
 multilib_src_install() {
        gnome2_src_install
 
-       # add -framework Carbon to the .pc files, bug #????
+       # add -framework Carbon to the .pc files, bug #???
        if use aqua ; then
                for i in gtk+-3.0.pc gtk+-quartz-3.0.pc gtk+-unix-print-3.0.pc; 
do
                        sed -e "s:Libs\: :Libs\: -framework Carbon :" \

diff --git a/x11-libs/gtk+/gtk+-9999.ebuild b/x11-libs/gtk+/gtk+-9999.ebuild
index e610614..c2c45c3 100644
--- a/x11-libs/gtk+/gtk+-9999.ebuild
+++ b/x11-libs/gtk+/gtk+-9999.ebuild
@@ -3,7 +3,7 @@
 # $Header: $
 
 EAPI="5"
-GCONF_DEBUG="no"
+GCONF_DEBUG="yes"
 GNOME2_LA_PUNT="yes"
 
 inherit eutils flag-o-matic gnome2 multilib virtualx multilib-minimal
@@ -16,12 +16,7 @@ HOMEPAGE="http://www.gtk.org/";
 
 LICENSE="LGPL-2+"
 SLOT="3"
-# NOTE: This gtk+ has multi-gdk-backend support, see:
-#  * http://blogs.gnome.org/kris/2010/12/29/gdk-3-0-on-mac-os-x/
-#  * http://mail.gnome.org/archives/gtk-devel-list/2010-November/msg00099.html
-# I tried this and got it all compiling, but the end result is unusable as it
-# horribly mixes up the backends -- grobian
-IUSE="aqua cloudprint colord cups debug examples +introspection test 
vim-syntax wayland X xinerama"
+IUSE="aqua broadway cloudprint colord cups examples +introspection test 
vim-syntax wayland X xinerama"
 REQUIRED_USE="
        || ( aqua wayland X )
        xinerama? ( X )
@@ -36,14 +31,13 @@ fi
 
 # FIXME: introspection data is built against system installation of gtk+:3
 # NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf)
-# Use gtk+:2 for gtk-update-icon-cache
 COMMON_DEPEND="
-       >=dev-libs/atk-2.12[introspection?,${MULTILIB_USEDEP}]
-       >=dev-libs/glib-2.41.2:2[${MULTILIB_USEDEP}]
+       >=dev-libs/atk-2.15[introspection?,${MULTILIB_USEDEP}]
+       >=dev-libs/glib-2.43.4:2[${MULTILIB_USEDEP}]
        media-libs/fontconfig[${MULTILIB_USEDEP}]
-       >=x11-libs/cairo-1.12[aqua?,glib,svg,X?,${MULTILIB_USEDEP}]
+       >=media-libs/libepoxy-1.0[${MULTILIB_USEDEP}]
+       >=x11-libs/cairo-1.14[aqua?,glib,svg,X?,${MULTILIB_USEDEP}]
        >=x11-libs/gdk-pixbuf-2.30:2[introspection?,X?,${MULTILIB_USEDEP}]
-       >=x11-libs/gtk+-2.24:2[${MULTILIB_USEDEP}]
        >=x11-libs/pango-1.36.7[introspection?,${MULTILIB_USEDEP}]
        x11-misc/shared-mime-info
 
@@ -76,9 +70,10 @@ DEPEND="${COMMON_DEPEND}
        app-text/docbook-xsl-stylesheets
        app-text/docbook-xml-dtd:4.1.2
        dev-libs/libxslt
-       dev-util/gdbus-codegen
+       dev-libs/gobject-introspection-common
+       >=dev-util/gdbus-codegen-2.38.2
        >=dev-util/gtk-doc-am-1.20
-       sys-devel/gettext
+       >=sys-devel/gettext-0.18.3[${MULTILIB_USEDEP}]
        virtual/pkgconfig[${MULTILIB_USEDEP}]
        X? (
                x11-proto/xextproto[${MULTILIB_USEDEP}]
@@ -90,6 +85,7 @@ DEPEND="${COMMON_DEPEND}
        test? (
                media-fonts/font-misc-misc
                media-fonts/font-cursor-misc )
+       examples? ( media-libs/libcanberra[gtk3] )
 "
 
 if [[ ${PV} = 9999 ]]; then
@@ -102,8 +98,10 @@ fi
 # >=xorg-server-1.11.4 needed for
 #  http://mail.gnome.org/archives/desktop-devel-list/2012-March/msg00024.html
 RDEPEND="${COMMON_DEPEND}
+       >=dev-util/gtk-update-icon-cache-3
        !<gnome-base/gail-1000
        !<x11-libs/vte-0.31.0:2.90
+       >=x11-themes/adwaita-icon-theme-3.14
        X? ( !<x11-base/xorg-server-1.11.4 )
        abi_x86_32? (
                !<=app-emulation/emul-linux-x86-gtklibs-20140508-r3
@@ -111,7 +109,8 @@ RDEPEND="${COMMON_DEPEND}
        )
 "
 # librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710
-PDEPEND="gnome-base/librsvg[${MULTILIB_USEDEP}]
+PDEPEND="
+       gnome-base/librsvg[${MULTILIB_USEDEP}]
        vim-syntax? ( app-vim/gtk-syntax )
 "
 
@@ -129,9 +128,6 @@ strip_builddir() {
 }
 
 src_prepare() {
-       # Do no build and install gtk-update-icon-cache which is done by gtk+:2
-       epatch "${FILESDIR}/${P}-remove_update-icon-cache.patch"
-
        # -O3 and company cause random crashes in applications. Bug #133469
        replace-flags -O3 -O2
        strip-flags
@@ -152,6 +148,11 @@ src_prepare() {
                [[ ${PV} != 9999 ]] && strip_builddir SRC_SUBDIRS examples 
Makefile.in
        fi
 
+       # Do no build and install gtk-update-icon-cache which is done by gtk+:2
+       epatch "${FILESDIR}"/${P}-remove_update-icon-cache.patch
+
+       epatch_user
+
        [[ ${PV} = 9999 ]] && gnome2_src_prepare
 }
 
@@ -166,10 +167,10 @@ multilib_src_configure() {
        ECONF_SOURCE=${S} \
        gnome2_src_configure \
                $(use_enable aqua quartz-backend) \
+               $(use_enable broadway broadway-backend) \
                $(use_enable cloudprint) \
                $(use_enable colord) \
                $(use_enable cups cups auto) \
-               $(usex debug --enable-debug=yes "") \
                $(multilib_native_use_enable introspection) \
                $(use_enable wayland wayland-backend) \
                $(use_enable X x11-backend) \
@@ -180,8 +181,8 @@ multilib_src_configure() {
                $(use_enable X xrandr) \
                $(use_enable xinerama) \
                --disable-papi \
+               --disable-mir-backend \
                --enable-man \
-               --enable-gtk2-dependency \
                --with-xml-catalog="${EPREFIX}"/etc/xml/catalog \
                --libdir="${EPREFIX}"/usr/$(get_libdir) \
                CUPS_CONFIG="${EPREFIX}/usr/bin/${CHOST}-cups-config" \
@@ -197,31 +198,22 @@ multilib_src_configure() {
 }
 
 multilib_src_test() {
-       # Tests require a new gnome-themes-standard, but adding it to DEPEND
-       # would result in circular dependencies.
-       # https://bugzilla.gnome.org/show_bug.cgi?id=669562
-       if ! has_version '>=x11-themes/gnome-themes-standard-3.6[gtk]'; then
-               ewarn "Tests will be skipped because 
>=gnome-themes-standard-3.6[gtk]"
-               ewarn "is not installed. Please re-run tests after installing 
the"
-               ewarn "required version of gnome-themes-standard."
-               return 0
-       fi
-
        # FIXME: this should be handled at eclass level
        "${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/gtk" || die
 
        unset DBUS_SESSION_BUS_ADDRESS
+       unset DISPLAY #527682
        GSETTINGS_SCHEMA_DIR="${S}/gtk" Xemake check
 }
 
 multilib_src_install() {
        gnome2_src_install
 
-       # add -framework Carbon to the .pc files
+       # add -framework Carbon to the .pc files, bug #???
        if use aqua ; then
                for i in gtk+-3.0.pc gtk+-quartz-3.0.pc gtk+-unix-print-3.0.pc; 
do
                        sed -e "s:Libs\: :Libs\: -framework Carbon :" \
-                               -i "${ED}"usr/$(get_libdir)/pkgconfig/$i || die 
"sed failed"
+                               -i "${ED%/}"/usr/$(get_libdir)/pkgconfig/$i || 
die "sed failed"
                done
        fi
 }
@@ -237,7 +229,7 @@ pkg_preinst() {
        gnome2_pkg_preinst
 
        multilib_pkg_preinst() {
-               # Make sure loaders.cache belongs to gdk-pixbuf alone
+               # Make immodules.cache belongs to gtk+ alone
                local cache="usr/$(get_libdir)/gtk-3.0/3.0.0/immodules.cache"
 
                if [[ -e ${EROOT}${cache} ]]; then
@@ -251,7 +243,12 @@ pkg_preinst() {
 
 pkg_postinst() {
        gnome2_pkg_postinst
-       gnome2_query_immodules_gtk3
+
+       multilib_pkg_postinst() {
+               gnome2_query_immodules_gtk3 \
+                       || die "Update immodules cache failed (for ${ABI})"
+       }
+       multilib_parallel_foreach_abi multilib_pkg_postinst
 
        if ! has_version "app-text/evince"; then
                elog "Please install app-text/evince for print preview 
functionality."

Reply via email to