# Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ 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="ia64 sparc" # 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 ! "${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_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 }