From 554e3d254075a75a0ce8e114ab5144fff5440440 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sat, 23 Mar 2013 17:36:53 +0000 Subject: package/populate_sdk: Move functions from package_* to populate_sdk_* This fixes build failures introduced with "classes/buildhistory: implement history collection for SDK" by moving the functions to files where only the specific image type which is enabled is inherited. The failures occured when multiple PACKAGE_CLASSES were enabled. (From OE-Core rev: 9a414a57ad69a426a8d8a2970c42ca7427240615) Signed-off-by: Richard Purdie --- meta/classes/package_deb.bbclass | 28 ---------------------------- meta/classes/package_ipk.bbclass | 24 ------------------------ meta/classes/package_rpm.bbclass | 17 ----------------- meta/classes/populate_sdk_deb.bbclass | 26 ++++++++++++++++++++++++++ meta/classes/populate_sdk_ipk.bbclass | 22 ++++++++++++++++++++++ meta/classes/populate_sdk_rpm.bbclass | 15 +++++++++++++++ 6 files changed, 63 insertions(+), 69 deletions(-) diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass index a937b85a61..455919913b 100644 --- a/meta/classes/package_deb.bbclass +++ b/meta/classes/package_deb.bbclass @@ -423,31 +423,3 @@ 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 -} diff --git a/meta/classes/package_ipk.bbclass b/meta/classes/package_ipk.bbclass index cec2f17334..d003ae7e81 100644 --- a/meta/classes/package_ipk.bbclass +++ b/meta/classes/package_ipk.bbclass @@ -430,27 +430,3 @@ addtask package_write_ipk before do_package_write after do_packagedata do_packag PACKAGEINDEXES += "[ ! -e ${DEPLOY_DIR_IPK} ] || package_update_index_ipk;" PACKAGEINDEXDEPS += "opkg-utils-native:do_populate_sysroot" PACKAGEINDEXDEPS += "opkg-native:do_populate_sysroot" - - -list_installed_packages() { - if [ "$1" = "arch" ] ; then - opkg-cl ${OPKG_ARGS} status | opkg-query-helper.py -a - elif [ "$1" = "file" ] ; then - opkg-cl ${OPKG_ARGS} status | opkg-query-helper.py -f | while read pkg pkgfile - do - fullpath=`find ${DEPLOY_DIR_IPK} -name "$pkgfile" || true` - if [ "$fullpath" = "" ] ; then - echo "$pkg $pkgfile" - else - echo "$pkg $fullpath" - fi - done - else - opkg-cl ${OPKG_ARGS} list_installed | awk '{ print $1 }' - fi -} - -rootfs_list_installed_depends() { - opkg-cl ${OPKG_ARGS} status | opkg-query-helper.py -} - diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass index 7d67b9685c..12b4bfa536 100644 --- a/meta/classes/package_rpm.bbclass +++ b/meta/classes/package_rpm.bbclass @@ -1155,20 +1155,3 @@ addtask package_write_rpm before do_package_write after do_packagedata do_packag PACKAGEINDEXES += "[ ! -e ${DEPLOY_DIR_RPM} ] || package_update_index_rpm;" PACKAGEINDEXDEPS += "rpm-native:do_populate_sysroot" PACKAGEINDEXDEPS += "createrepo-native:do_populate_sysroot" - - -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]" | translate_smart_to_oe arch - elif [ "$1" = "file" ]; then - ${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH} %{PACKAGEORIGIN}\n]" | translate_smart_to_oe - else - ${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH}\n]" | translate_smart_to_oe - fi -} - -rootfs_list_installed_depends() { - rpmresolve -t $INSTALL_ROOTFS_RPM/${rpmlibdir} -} diff --git a/meta/classes/populate_sdk_deb.bbclass b/meta/classes/populate_sdk_deb.bbclass index 0361a13bbf..3e123ac561 100644 --- a/meta/classes/populate_sdk_deb.bbclass +++ b/meta/classes/populate_sdk_deb.bbclass @@ -67,3 +67,29 @@ populate_sdk_deb () { populate_sdk_log_check populate_sdk } +# 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 +} diff --git a/meta/classes/populate_sdk_ipk.bbclass b/meta/classes/populate_sdk_ipk.bbclass index becaf96dcf..4e14d9a3a6 100644 --- a/meta/classes/populate_sdk_ipk.bbclass +++ b/meta/classes/populate_sdk_ipk.bbclass @@ -56,3 +56,25 @@ populate_sdk_ipk() { populate_sdk_log_check populate_sdk } + +list_installed_packages() { + if [ "$1" = "arch" ] ; then + opkg-cl ${OPKG_ARGS} status | opkg-query-helper.py -a + elif [ "$1" = "file" ] ; then + opkg-cl ${OPKG_ARGS} status | opkg-query-helper.py -f | while read pkg pkgfile + do + fullpath=`find ${DEPLOY_DIR_IPK} -name "$pkgfile" || true` + if [ "$fullpath" = "" ] ; then + echo "$pkg $pkgfile" + else + echo "$pkg $fullpath" + fi + done + else + opkg-cl ${OPKG_ARGS} list_installed | awk '{ print $1 }' + fi +} + +rootfs_list_installed_depends() { + opkg-cl ${OPKG_ARGS} status | opkg-query-helper.py +} diff --git a/meta/classes/populate_sdk_rpm.bbclass b/meta/classes/populate_sdk_rpm.bbclass index bbee35eab5..219cd185ce 100644 --- a/meta/classes/populate_sdk_rpm.bbclass +++ b/meta/classes/populate_sdk_rpm.bbclass @@ -155,3 +155,18 @@ python () { d.setVar('MULTILIB_OS_LIST', ml_os_list) } +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]" | translate_smart_to_oe arch + elif [ "$1" = "file" ]; then + ${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH} %{PACKAGEORIGIN}\n]" | translate_smart_to_oe + else + ${RPM_QUERY_CMD} -qa --qf "[%{NAME} %{ARCH}\n]" | translate_smart_to_oe + fi +} + +rootfs_list_installed_depends() { + rpmresolve -t $INSTALL_ROOTFS_RPM/${rpmlibdir} +} -- cgit v1.2.3-54-g00ecf