mirror of
https://git.yoctoproject.org/poky
synced 2026-05-30 12:29:55 +00:00
classes/buildhistory: implement history collection for SDKs
SDKs are constructed in a similar manner to images, and the contents can
be influenced by a number of different factors, thus tracking the
contents of produced SDKs when buildhistory is enabled can help detect
the same kinds of issues as with images.
This required adding POPULATE_SDK_POST_HOST_COMMAND and
SDK_POSTPROCESS_COMMAND variables so that data collection functions can
be injected at the appropriate points in the SDK construction process,
as well as moving the list_installed_packages and
rootfs_list_installed_depends functions from the rootfs_{rpm,ipk,deb} to
the package_{rpm,ipk,deb} classes so they can also be called during
do_populate_sdk as well as do_rootfs.
Implements [YOCTO #3964].
(From OE-Core rev: c3736064483d4840e38cb1b8c13d2dd3a26b36aa)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
9e366e1532
commit
59e4815387
@@ -423,3 +423,31 @@ addtask package_write_deb before do_package_write after do_packagedata do_packag
|
||||
PACKAGEINDEXES += "[ ! -e ${DEPLOY_DIR_DEB} ] || package_update_index_deb;"
|
||||
PACKAGEINDEXDEPS += "dpkg-native:do_populate_sysroot"
|
||||
PACKAGEINDEXDEPS += "apt-native:do_populate_sysroot"
|
||||
|
||||
|
||||
# This will of course only work after rootfs_deb_do_rootfs or populate_sdk_deb has been called
|
||||
DPKG_QUERY_COMMAND = "${STAGING_BINDIR_NATIVE}/dpkg-query --admindir=$INSTALL_ROOTFS_DEB/var/lib/dpkg"
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user