From 20ad566d609bccdadf871dab1bc31a0e243f8710 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 23 Jul 2012 07:59:11 +0100 Subject: buildhistory: improve performance of image info collection Reduce the number of calls to the packaging tool, especially in the case of rpm, using helper utilities to gather the required information more efficiently where possible. (From OE-Core rev: d0b8a98c5b46c305afd389fc862b3bf0c6f1eaab) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- meta/classes/rootfs_deb.bbclass | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'meta/classes/rootfs_deb.bbclass') diff --git a/meta/classes/rootfs_deb.bbclass b/meta/classes/rootfs_deb.bbclass index a002b1ec02..750a8ca082 100644 --- a/meta/classes/rootfs_deb.bbclass +++ b/meta/classes/rootfs_deb.bbclass @@ -96,26 +96,24 @@ list_installed_packages() { if [ "$1" = "arch" ] ; then # Here we want the PACKAGE_ARCH not the deb architecture ${DPKG_QUERY_COMMAND} -W -f='${Package} ${PackageArch}\n' + elif [ "$1" = "file" ] ; then + ${DPKG_QUERY_COMMAND} -W -f='${Package} ${Package}_${Version}_${Architecture}.deb\n' | while read pkg pkgfile + do + fullpath=`find ${DEPLOY_DIR_DEB} -name "$pkgfile" || true` + if [ "$fullpath" = "" ] ; then + echo "$pkg $pkgfile" + else + echo "$pkg $fullpath" + fi + done else ${DPKG_QUERY_COMMAND} -W -f='${Package}\n' fi } -get_package_filename() { - fullname=`find ${DEPLOY_DIR_DEB} -name "$1_*.deb" || true` - if [ "$fullname" = "" ] ; then - echo $name - else - echo $fullname - fi -} - -list_package_depends() { - ${DPKG_QUERY_COMMAND} -s $1 | grep ^Depends | sed -e 's/^Depends: //' -e 's/,//g' -e 's:([=<>]* [^ )]*)::g' -} - -list_package_recommends() { - ${DPKG_QUERY_COMMAND} -s $1 | grep ^Recommends | sed -e 's/^Recommends: //' -e 's/,//g' -e 's:([=<>]* [^ )]*)::g' +rootfs_list_installed_depends() { + # Cheat here a little bit by using the opkg query helper util + ${DPKG_QUERY_COMMAND} -W -f='Package: ${Package}\nDepends: ${Depends}\nRecommends: ${Recommends}\n\n' | opkg-query-helper.py } rootfs_install_packages() { -- cgit v1.2.3-54-g00ecf