[oe-commits] Richard Purdie : package_rpm: Ensure multilib code is only called in the multilib case

git version control git at git.openembedded.org
Tue Oct 4 12:47:19 UTC 2011


Module: openembedded-core.git
Branch: 2011-1
Commit: fb554596e031cf92b62a19cabdd10e8e23ab4453
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=fb554596e031cf92b62a19cabdd10e8e23ab4453

Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date:   Fri Sep 30 22:31:52 2011 +0100

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.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/classes/package_rpm.bbclass |   33 ++++++++++++++++++---------------
 1 files changed, 18 insertions(+), 15 deletions(-)

diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index fa0d8c3..7f42583 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





More information about the Openembedded-commits mailing list