diff options
| -rw-r--r-- | meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.24.1.bb | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.24.1.bb b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.24.1.bb index 65a2d68fd1..2377d0eec1 100644 --- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.24.1.bb +++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.24.1.bb | |||
| @@ -58,9 +58,21 @@ FILES_${PN}-dbg += " \ | |||
| 58 | 58 | ||
| 59 | postinst_pixbufloader () { | 59 | postinst_pixbufloader () { |
| 60 | if [ "x$D" != "x" ]; then | 60 | if [ "x$D" != "x" ]; then |
| 61 | exit 1 | 61 | # Update the target's pixbuf loader's cache. Since the native binary will |
| 62 | # throw an error if the shared objects do not belong to the same ELF class, | ||
| 63 | # we trick the gdk-pixbuf-query-loaders into scanning the native shared | ||
| 64 | # objects and then we remove the NATIVE_ROOT prefix from the paths in | ||
| 65 | # loaders.cache. | ||
| 66 | gdk-pixbuf-query-loaders $(find $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders \ | ||
| 67 | -name *.so | sed -e "s:$D:$NATIVE_ROOT:g") > \ | ||
| 68 | $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.cache || exit 1 | ||
| 69 | |||
| 70 | sed -i -e "s:$NATIVE_ROOT:/:g" $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.cache | ||
| 71 | |||
| 72 | exit 0 | ||
| 62 | fi | 73 | fi |
| 63 | 74 | ||
| 75 | # Update the pixbuf loaders in case they haven't been registered yet | ||
| 64 | GDK_PIXBUF_MODULEDIR=${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders gdk-pixbuf-query-loaders --update-cache | 76 | GDK_PIXBUF_MODULEDIR=${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders gdk-pixbuf-query-loaders --update-cache |
| 65 | 77 | ||
| 66 | if [ -x ${bindir}/gtk-update-icon-cache ] && [ -d ${datadir}/icons ]; then | 78 | if [ -x ${bindir}/gtk-update-icon-cache ] && [ -d ${datadir}/icons ]; then |
| @@ -93,6 +105,7 @@ do_install_append_class-native() { | |||
| 93 | GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache | 105 | GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache |
| 94 | 106 | ||
| 95 | create_wrapper ${D}/${bindir}/gdk-pixbuf-query-loaders \ | 107 | create_wrapper ${D}/${bindir}/gdk-pixbuf-query-loaders \ |
| 96 | GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache | 108 | GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache \ |
| 109 | GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders | ||
| 97 | } | 110 | } |
| 98 | BBCLASSEXTEND = "native" | 111 | BBCLASSEXTEND = "native" |
