aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes/package_rpm.bbclass
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2012-09-10 15:58:52 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-09-10 12:02:23 +0100
commitfc985f511da86400e4fa7d17555216c12eb51666 (patch)
tree8711f77eba6a6de8228808bf07c240b5892f8f34 /meta/classes/package_rpm.bbclass
parentadb241958f125cc4c74ac5fbfc00674e7cd7305d (diff)
downloadopenembedded-core-fc985f511da86400e4fa7d17555216c12eb51666.tar.gz
package_rpm.bbclass: fix the arch (replace "-" with "_")
rpm can't use the "-" as the arch, which causes problem, e.g., when MACHINE = "beagleboard": * The arch should be armv7a-vfp-neon, but rpm only takes the armv7a, this is incorrect since it is mixed with real arch armv7a. * The nativesdk's arch should be i686-nativesdk (or x86_64-nativesdk), but rpm only takes the i686 (or x86_64), this in incorrect since it is mixed with the arch i686 (or x86_64). Replace "-" with "_" when rpm package and the rootfs generation would fix the problem, I think this is fine since it doesn't change the tune's arch, the package manager doesn't care about the arch's name, but it needs a unify arch system to avoid confusing. This is similar to what we have done on the deb which fixed the arch i486, i586 and so on to i386. [YOCTO #2328] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/package_rpm.bbclass')
-rw-r--r--meta/classes/package_rpm.bbclass10
1 files changed, 5 insertions, 5 deletions
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index 742f292307..43cdd572c3 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -27,12 +27,12 @@ package_update_index_rpm () {
fi
# Update target packages
- base_archs="${PACKAGE_ARCHS}"
- ml_archs="${MULTILIB_PACKAGE_ARCHS}"
+ base_archs="`echo ${PACKAGE_ARCHS} | sed 's/-/_/g'`"
+ ml_archs="`echo ${MULTILIB_PACKAGE_ARCHS} | sed 's/-/_/g'`"
package_update_index_rpm_common "${RPMCONF_TARGET_BASE}" base_archs ml_archs
# Update SDK packages
- base_archs="${SDK_PACKAGE_ARCHS}"
+ base_archs="`echo ${SDK_PACKAGE_ARCHS} | sed 's/-/_/g'`"
package_update_index_rpm_common "${RPMCONF_HOST_BASE}" base_archs
}
@@ -1113,8 +1113,8 @@ python do_package_rpm () {
rpmbuild = d.getVar('RPMBUILD', True)
targetsys = d.getVar('TARGET_SYS', True)
targetvendor = d.getVar('TARGET_VENDOR', True)
- package_arch = d.getVar('PACKAGE_ARCH', True) or ""
- if package_arch not in "all any noarch".split() and not package_arch.endswith("-nativesdk"):
+ package_arch = (d.getVar('PACKAGE_ARCH', True) or "").replace("-", "_")
+ if package_arch not in "all any noarch".split() and not package_arch.endswith("_nativesdk"):
ml_prefix = (d.getVar('MLPREFIX', True) or "").replace("-", "_")
d.setVar('PACKAGE_ARCH_EXTEND', ml_prefix + package_arch)
else: