From fbf50a71e8ba812ab1fecb9e1c9097b3531bf500 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 30 Sep 2011 22:31:52 +0100 Subject: package_rpm: Ensure multilib code is only called in the multilib case This fixes some error messages in the do_rootfs logs of non-multilib builds. (From OE-Core rev: 439867efcc9a7df6062fdb8dae85004b1e9ed08c) Signed-off-by: Richard Purdie --- meta/classes/package_rpm.bbclass | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) (limited to 'meta/classes/package_rpm.bbclass') diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass index fa0d8c3457..7f425837be 100644 --- a/meta/classes/package_rpm.bbclass +++ b/meta/classes/package_rpm.bbclass @@ -354,6 +354,8 @@ package_install_internal_rpm () { -D "__dbi_txn create nofsync private" \ | grep -i 'Packageorigin' | cut -d : -f 2 > ${target_rootfs}/install/install_solution.manifest + touch ${target_rootfs}/install/install_multilib_solution.manifest + if [ ! -z "${multilib_to_install}" ]; then for pkg in ${multilib_to_install} ; do echo "Processing $pkg..." @@ -376,24 +378,25 @@ package_install_internal_rpm () { fi echo $pkg_name >> ${target_rootfs}/install/install_multilib.manifest done - fi - # multilib package installation + # multilib package installation - # Generate an install solution by doing a --justdb install, then recreate it with - # an actual package install! - ${RPM} --predefine "_rpmds_sysinfo_path ${target_rootfs}/etc/rpm/sysinfo" \ - --predefine "_rpmrc_platform_path ${target_rootfs}/etc/rpm/platform" \ - -D "_dbpath ${target_rootfs}/install" -D "`cat ${confbase}-ml_archs.macro`" \ - -D "__dbi_txn create nofsync" \ - -U --justdb --noscripts --notriggers --noparentdirs --nolinktos --ignoresize \ - ${target_rootfs}/install/install_multilib.manifest + # Generate an install solution by doing a --justdb install, then recreate it with + # an actual package install! + ${RPM} --predefine "_rpmds_sysinfo_path ${target_rootfs}/etc/rpm/sysinfo" \ + --predefine "_rpmrc_platform_path ${target_rootfs}/etc/rpm/platform" \ + -D "_dbpath ${target_rootfs}/install" -D "`cat ${confbase}-ml_archs.macro`" \ + -D "__dbi_txn create nofsync" \ + -U --justdb --noscripts --notriggers --noparentdirs --nolinktos --ignoresize \ + ${target_rootfs}/install/install_multilib.manifest + + # Now that we have a solution, pull out a list of what to install... + echo "Manifest: ${target_rootfs}/install/install_multilib.manifest" + ${RPM} -D "_dbpath ${target_rootfs}/install" -qa --yaml \ + -D "__dbi_txn create nofsync private" \ + | grep -i 'Packageorigin' | cut -d : -f 2 > ${target_rootfs}/install/install_multilib_solution.manifest - # Now that we have a solution, pull out a list of what to install... - echo "Manifest: ${target_rootfs}/install/install_multilib.manifest" - ${RPM} -D "_dbpath ${target_rootfs}/install" -qa --yaml \ - -D "__dbi_txn create nofsync private" \ - | grep -i 'Packageorigin' | cut -d : -f 2 > ${target_rootfs}/install/install_multilib_solution.manifest + fi cat ${target_rootfs}/install/install_solution.manifest > ${target_rootfs}/install/total_solution.manifest cat ${target_rootfs}/install/install_multilib_solution.manifest >> ${target_rootfs}/install/total_solution.manifest -- cgit v1.2.3-54-g00ecf