--- /home/pacho/gentoo-x86/eclass/gnome2-utils.eclass 2012-10-28 00:24:10.000000000 +0200 +++ gnome2-utils.eclass 2013-09-07 09:47:41.000000000 +0200 @@ -392,29 +392,33 @@ # @DESCRIPTION: # Updates gtk2 immodules/gdk-pixbuf loaders listing. gnome2_query_immodules_gtk2() { - local GTK2_CONFDIR="/etc/gtk-2.0/$(get_abi_CHOST)" + if has_version ">=x11-libs/gtk+-2.24.20:2"; then + "${EPREFIX}/usr/bin/gtk-query-immodules-2.0" --update-cache + else + local GTK2_CONFDIR="/etc/gtk-2.0/$(get_abi_CHOST)" - local query_exec="${EPREFIX}/usr/bin/gtk-query-immodules-2.0" - local gtk_conf="${EPREFIX}${GTK2_CONFDIR}/gtk.immodules" - local gtk_conf_dir=$(dirname "${gtk_conf}") + local query_exec="${EPREFIX}/usr/bin/gtk-query-immodules-2.0" + local gtk_conf="${EPREFIX}${GTK2_CONFDIR}/gtk.immodules" + local gtk_conf_dir=$(dirname "${gtk_conf}") - einfo "Generating Gtk2 immodules/gdk-pixbuf loaders listing:" - einfo "-> ${gtk_conf}" + einfo "Generating Gtk2 immodules/gdk-pixbuf loaders listing:" + einfo "-> ${gtk_conf}" - mkdir -p "${gtk_conf_dir}" - local tmp_file=$(mktemp -t tmp.XXXXXXXXXXgtk_query_immodules) - if [ -z "${tmp_file}" ]; then - ewarn "gtk_query_immodules: cannot create temporary file" - return 1 - fi + mkdir -p "${gtk_conf_dir}" + local tmp_file=$(mktemp -t tmp.XXXXXXXXXXgtk_query_immodules) + if [ -z "${tmp_file}" ]; then + ewarn "gtk_query_immodules: cannot create temporary file" + return 1 + fi - if ${query_exec} > "${tmp_file}"; then - cat "${tmp_file}" > "${gtk_conf}" || \ - ewarn "Failed to write to ${gtk_conf}" - else - ewarn "Cannot update gtk.immodules, file generation failed" + if ${query_exec} > "${tmp_file}"; then + cat "${tmp_file}" > "${gtk_conf}" || \ + ewarn "Failed to write to ${gtk_conf}" + else + ewarn "Cannot update gtk.immodules, file generation failed" + fi + rm "${tmp_file}" fi - rm "${tmp_file}" } # @FUNCTION: gnome2_query_immodules_gtk3