As a follow up to this discussion, I came with the attached patch. It appears to work ok for regular merges and binpkg merges with FEATURES="collision-protect".
Per my reading of PMS it does not appear to violate anything so I guess it is ok. -- Gilles Dartiguelongue <e...@gentoo.org> Gentoo
[1;32mIndex: gdk-pixbuf-2.28.2.ebuild[0;0m [1;32m===================================================================[0;0m [1;32mRCS file: /var/cvsroot/gentoo-x86/x11-libs/gdk-pixbuf/gdk-pixbuf-2.28.2.ebuild,v[0;0m [1;32mretrieving revision 1.3[0;0m [1;32mdiff -u -B -r1.3 gdk-pixbuf-2.28.2.ebuild[0;0m [1;31m--- gdk-pixbuf-2.28.2.ebuild 3 Sep 2013 21:59:11 -0000 1.3[0;0m [1;34m+++ gdk-pixbuf-2.28.2.ebuild 9 Sep 2013 22:28:20 -0000[0;0m [1;35m@@ -67,6 +67,15 @@[0;0m [0;0m [0;0m [0;0m pkg_preinst() {[0;0m [0;0m gnome2_gdk_pixbuf_savelist[0;0m [1;34m+[0;0m [1;34m+ # Make sure loaders.cache belongs to gdk-pixbuf alone[0;0m [1;34m+ local cache="usr/$(get_libdir)/${PN}-2.0/2.10.0/loaders.cache"[0;0m [1;34m+[0;0m [1;34m+ if [[ -e ${ROOT}${cache} ]]; then[0;0m [1;34m+ cp "${ROOT}"${cache} "${D}"/${cache} || die[0;0m [1;34m+ else[0;0m [1;34m+ touch "${D}"/${cache} || die[0;0m [1;34m+ fi[0;0m [0;0m }[0;0m [0;0m [0;0m [0;0m pkg_postinst() {[0;0m