gdk-pixbuf: try to workaround upgrade problems
authorGrazvydas Ignotas <notasas@gmail.com>
Thu, 9 Oct 2014 01:47:49 +0000 (04:47 +0300)
committerGrazvydas Ignotas <notasas@gmail.com>
Thu, 9 Oct 2014 01:47:49 +0000 (04:47 +0300)
recipes/gdk-pixbuf/gdk-pixbuf_2.30.8.bb

index 024147a..65ee800 100644 (file)
@@ -31,13 +31,17 @@ EXTRA_OECONF = "\
 "
 EXTRA_OECONF_append_virtclass-native = " --without-libtiff --without-libjpeg"
 
+RREPLACES_${PN} = "gtk+"
+
 PACKAGES =+ "${PN}-xlib"
 
 FILES_${PN}-xlib = "${libdir}/*pixbuf_xlib*so.*"
 ALLOW_EMPTY_${PN}-xlib = "1"
 
-FILES_${PN} = "${bindir}/gdk-pixbuf-query-loaders \
-       ${bindir}/gdk-pixbuf-pixdata \
+RREPLACES_${PN}-xlib = "gtk+"
+
+FILES_${PN} = "${bindir}/gdk-pixbuf-query-loaders* \
+       ${bindir}/gdk-pixbuf-pixdata* \
        ${libdir}/lib*.so.*"
 
 FILES_${PN}-dev += " \
@@ -61,6 +65,18 @@ GDK_PIXBUF_MODULEDIR=${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders gdk-pixbuf-query-l
 test -x ${bindir}/gtk-update-icon-cache && gtk-update-icon-cache  -q ${datadir}/icons/hicolor
 }
 
+pkg_postinst_append () {
+# needed for upgrade from old gtk+, the files belonged to gtk+ so they end up being deleted..
+test -L /usr/lib/libgdk_pixbuf-2.0.so.0 || ln -s /usr/lib/libgdk_pixbuf-2.0.so.0.3000.8 /usr/lib/libgdk_pixbuf-2.0.so.0
+test -x /usr/bin/gdk-pixbuf-query-loaders || cp /usr/bin/gdk-pixbuf-query-loaders_ /usr/bin/gdk-pixbuf-query-loaders
+test -x /usr/bin/gdk-pixbuf-pixdata || cp /usr/bin/gdk-pixbuf-pixdata_ /usr/bin/gdk-pixbuf-pixdata
+}
+
+do_install_append () {
+       cp ${D}/${bindir}/gdk-pixbuf-query-loaders ${D}/${bindir}/gdk-pixbuf-query-loaders_
+       cp ${D}/${bindir}/gdk-pixbuf-pixdata ${D}/${bindir}/gdk-pixbuf-pixdata_
+}
+
 PACKAGES_DYNAMIC += "gdk-pixbuf-loader-*"
 PACKAGES_DYNAMIC_class-native = ""