]> code.ossystems Code Review - openembedded-core.git/commitdiff
package_rpm.bbclass: Replace -linux-gnun32 with -linux.* in RPM platform file
authorLei Liu <layliu@gmail.com>
Thu, 21 Nov 2013 07:30:58 +0000 (01:30 -0600)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 12 Dec 2013 16:56:37 +0000 (16:56 +0000)
On a multilib system when one of the multibs has a different OS then
other multilibs a failure can occur during the install process because
RPM assumes all systems have the same OS.

When an n32 platform is selected as an alternative multilib, it shows
up as mips64_n32-.*-linux-gnun32 in /etc/rpm/platform.  This causes
problems when the smart tool tries to add a channel for the multilib.
RPM archScore call always returns zero for arch "mips64_n32" -
after appending default vendor and os, it finds "mips64_n32-wrs-linux"
doesn't match any predefined platforms.  Fix this by removing the
restriction of -gnun32 suffix in platform file.

(From OE-Core master rev: d9489c44ee4f195ae1b09f340b9545cddba58145)

Signed-off-by: Lei Liu <lei.liu2@windriver.com>
Signed-off-by: Jeff Polk <jeff.polk@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
meta/classes/package_rpm.bbclass

index 36bad09ea1d86b50b57aa916778e2f7cc0e8af97..4f4bda32a403d4859bc81c027a833751cee085b3 100644 (file)
@@ -296,11 +296,7 @@ package_install_internal_rpm () {
                if [ ! -z "$INSTALL_PLATFORM_EXTRA_RPM" ]; then
                        for pt in $INSTALL_PLATFORM_EXTRA_RPM ; do
                                channel_priority=$(expr $channel_priority + 5)
-                               case $pt in
-                                       noarch-* | any-* | all-*)
-                                               pt=$(echo $pt | sed "s,-linux.*$,-linux\.*,")
-                                               ;;
-                               esac
+                               pt=$(echo $pt | sed "s,-linux.*$,-linux\.*,")
                                echo "$pt" >> ${target_rootfs}/etc/rpm/platform
                        done
                fi