diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2011-12-22 16:55:57 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-01-03 12:12:36 +0000 |
commit | 77d845c50ba906011bcc52020c85c34b81bd063a (patch) | |
tree | de838fb54dbca1c30d0e925990e818ce1581a2bd /meta/classes/rootfs_rpm.bbclass | |
parent | 663c893b084333ea9703079a9b056d74ffa5e2a3 (diff) | |
download | poky-77d845c50ba906011bcc52020c85c34b81bd063a.tar.gz |
classes/rootfs_rpm: handle recommends in query functions
Implement list_package_recommends() for rpm, and filter out the
"suggests" (RPM's equivalent of recommends) in list_package_depends().
Respectively, these changes fix buildhistory handling of recommends for
RPM (so that they are included in the image graphs) and also prevents
failures during do_rootfs with buildhistory enabled if a recommend is
unsatisfied.
(From OE-Core rev: b6787f5d6e181d8c39cce7b050e261d1a1d1b075)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/rootfs_rpm.bbclass')
-rw-r--r-- | meta/classes/rootfs_rpm.bbclass | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/meta/classes/rootfs_rpm.bbclass b/meta/classes/rootfs_rpm.bbclass index 5fd45d758c..966b074181 100644 --- a/meta/classes/rootfs_rpm.bbclass +++ b/meta/classes/rootfs_rpm.bbclass | |||
@@ -174,7 +174,9 @@ get_package_filename() { | |||
174 | list_package_depends() { | 174 | list_package_depends() { |
175 | pkglist=`list_installed_packages` | 175 | pkglist=`list_installed_packages` |
176 | 176 | ||
177 | for req in `${RPM_QUERY_CMD} -q --qf "[%{REQUIRES}\n]" $1`; do | 177 | # REQUIRE* lists "soft" requirements (which we know as recommends and RPM refers to |
178 | # as "suggests") so filter these out with the help of awk | ||
179 | for req in `${RPM_QUERY_CMD} -q --qf "[%{REQUIRENAME} %{REQUIREFLAGS}\n]" $1 | awk '{ if( and($2, 0x80000) == 0) print $1 }'`; do | ||
178 | if echo "$req" | grep -q "^rpmlib" ; then continue ; fi | 180 | if echo "$req" | grep -q "^rpmlib" ; then continue ; fi |
179 | 181 | ||
180 | realpkg="" | 182 | realpkg="" |
@@ -193,7 +195,7 @@ list_package_depends() { | |||
193 | } | 195 | } |
194 | 196 | ||
195 | list_package_recommends() { | 197 | list_package_recommends() { |
196 | : | 198 | ${RPM_QUERY_CMD} -q --suggests $1 |
197 | } | 199 | } |
198 | 200 | ||
199 | install_all_locales() { | 201 | install_all_locales() { |