]> code.ossystems Code Review - openembedded-core.git/commitdiff
package_rpm: Ensure multilib code is only called in the multilib case
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 30 Sep 2011 21:31:52 +0000 (22:31 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 4 Oct 2011 10:31:29 +0000 (11:31 +0100)
This fixes some error messages in the do_rootfs logs of non-multilib
builds.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/package_rpm.bbclass

index fa0d8c345762f2a3e5dd2d64d6fb935259edae28..7f425837befbd5180b5a99d6d048bd5641728173 100644 (file)
@@ -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