diff options
author | Laurentiu Palcu <laurentiu.palcu@intel.com> | 2012-12-10 16:31:21 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-12-13 14:28:40 +0000 |
commit | 901fbfac48918db7bf809ded3df533504141c5ca (patch) | |
tree | 6f2f5df9d60b1fb1306df17da9d433dc984a317e /meta | |
parent | 06151c34f4f4cb669b2f93ebb2f78cfecf698355 (diff) | |
download | openembedded-core-901fbfac48918db7bf809ded3df533504141c5ca.tar.gz openembedded-core-901fbfac48918db7bf809ded3df533504141c5ca.tar.bz2 openembedded-core-901fbfac48918db7bf809ded3df533504141c5ca.zip |
gdk-pixbuf: handle postinstall errors differently
Apparently gdk-pixbuf-query-loaders always returns 0 but writes any
errors to stderr. So, the conditional exit at the end of the command was
useless. Write the errors to a file and exit only if the file size is
greater than 0.
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.24.1.bb | 20 |
1 files changed, 17 insertions, 3 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 2377d0eec1..33a43becaa 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 @@ -63,12 +63,26 @@ if [ "x$D" != "x" ]; then # we trick the gdk-pixbuf-query-loaders into scanning the native shared # objects and then we remove the NATIVE_ROOT prefix from the paths in # loaders.cache. -gdk-pixbuf-query-loaders $(find $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders \ - -name *.so | sed -e "s:$D:$NATIVE_ROOT:g") > \ - $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.cache || exit 1 +gdk-pixbuf-query-loaders $(ls -d -1 $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders/*.so |\ + sed -e "s:$D:$NATIVE_ROOT:g") > \ + $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.cache \ + 2>$D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.err + +# gdk-pixbuf-query-loaders always returns 0, so we need to check if loaders.err +# has anything in it +if [ -s $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.err ]; then + echo "${PN} postinstall scriptlet failed:" + cat $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.err + rm $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.err + # we've got errors, postpone postinstall for first boot + exit 1 +fi sed -i -e "s:$NATIVE_ROOT:/:g" $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.cache +# remove the empty loaders.err +rm $D/${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders.err + exit 0 fi |