From: Paul Eggleton Date: Wed, 19 Jun 2013 16:53:06 +0000 (+0100) Subject: classes/buildhistory: fix error when no packages are installed X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~36953 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=03d86123e9e804e62de38effd307f070d7863080;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git classes/buildhistory: fix error when no packages are installed "xargs -n1 basename" will execute basename even if there are no lines piped into it, causing a "basename: missing operand" error if no packages are installed, which will happen for the target portion of buildtools-tarball. (xargs' -r option could have been used here, but it is a GNU extension and I thought it best to avoid that for the sake of future interoperability). Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass index c8fd68c39e0..36e7fe13be2 100644 --- a/meta/classes/buildhistory.bbclass +++ b/meta/classes/buildhistory.bbclass @@ -319,7 +319,11 @@ buildhistory_get_installed() { list_installed_packages file | sort > $pkgcache cat $pkgcache | awk '{ print $1 }' > $1/installed-package-names.txt - cat $pkgcache | awk '{ print $2 }' | xargs -n1 basename > $1/installed-packages.txt + if [ -s $pkgcache ] ; then + cat $pkgcache | awk '{ print $2 }' | xargs -n1 basename > $1/installed-packages.txt + else + printf "" > $1/installed-packages.txt + fi # Produce dependency graph # First, filter out characters that cause issues for dot