[oe-commits] Paul Eggleton : classes/buildhistory: fix error when no packages are installed

git at git.openembedded.org git at git.openembedded.org
Thu Jun 20 12:03:53 UTC 2013


Module: openembedded-core.git
Branch: master-next
Commit: 03d86123e9e804e62de38effd307f070d7863080
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=03d86123e9e804e62de38effd307f070d7863080

Author: Paul Eggleton <paul.eggleton at linux.intel.com>
Date:   Wed Jun 19 17:53:06 2013 +0100

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 <paul.eggleton at linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/classes/buildhistory.bbclass |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index c8fd68c..36e7fe1 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



More information about the Openembedded-commits mailing list