From: Saul Wold <sgw@linux.intel.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH] rootfs_rpm: Add Multilib prefix to installed_packages list
Date: Tue, 18 Sep 2012 12:19:13 -0700 [thread overview]
Message-ID: <1347995954-1200-1-git-send-email-sgw@linux.intel.com> (raw)
RPM does not name it's packages with the Multilib prefix,
but the rootfs_rpm class keeps track of the Multilib prefixs
in a list. Use that list to re-attach the prefix for use with
the license bbclass, buildhistory bbclass will also use this
and make it more accurate between multilib and non-multilib.
Use the embedded "Platform" information to ensure we get all
the correct matching.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
meta/classes/rootfs_rpm.bbclass | 23 +++++++++++++++++++----
1 file changed, 19 insertions(+), 4 deletions(-)
diff --git a/meta/classes/rootfs_rpm.bbclass b/meta/classes/rootfs_rpm.bbclass
index c0207d8..a93b3ec 100644
--- a/meta/classes/rootfs_rpm.bbclass
+++ b/meta/classes/rootfs_rpm.bbclass
@@ -142,12 +142,27 @@ RPM_QUERY_CMD = '${RPM} --root $INSTALL_ROOTFS_RPM -D "_dbpath ${rpmlibdir}" \
list_installed_packages() {
if [ "$1" = "arch" ] ; then
- ${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH}\n]"
- elif [ "$1" = "file" ] ; then
- ${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{PACKAGEORIGIN}\n]"
+ GET_LIST=$(${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH} %{Platform}\n]")
+ elif [ "$1" = "file" ] ; then
+ GET_LIST=$(${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{PACKAGEORIGIN} %{Platform}\n]")
+ else
+ GET_LIST=$(${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{Platform}\n]")
+ fi
+ if [ "x${MULTILIB_PREFIX_LIST}" = "x" ] ; then
+ echo "$GET_LIST"
else
- ${RPM_QUERY_CMD} -qa --qf "[%{NAME}\n]"
+ for prefix in `echo ${MULTILIB_PREFIX_LIST}`; do
+ # Use awk to find the multilib prefix and then
+ # print the info, need to different return counts
+ if [ "x$1" = "x" ] ; then
+ echo "$GET_LIST" | awk -v prefix="$prefix" '$0 ~ prefix {printf("%s-%s\n", prefix, $1); } $0 !~ prefix {print $1}'
+ else
+ echo "$GET_LIST" | awk -v prefix="$prefix" '$0 ~ prefix {printf("%s-%s %s\n", prefix, $1, $2); } $0 !~ prefix {print $1, $2}'
+ fi
+ done
fi
+
+
}
rootfs_list_installed_depends() {
--
1.7.9.5
next reply other threads:[~2012-09-18 19:32 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-18 19:19 Saul Wold [this message]
2012-09-19 15:29 ` [PATCH] rootfs_rpm: Add Multilib prefix to installed_packages list Saul Wold
-- strict thread matches above, loose matches on Subject: below --
2012-09-19 16:41 Saul Wold
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1347995954-1200-1-git-send-email-sgw@linux.intel.com \
--to=sgw@linux.intel.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox