aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes/package_deb.bbclass
diff options
context:
space:
mode:
authorHongxu Jia <hongxu.jia@windriver.com>2013-03-02 17:12:58 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-03-02 12:59:39 +0000
commit8487b352cabd8c8ae8a7d9e7e66489e4e964bd50 (patch)
treeddff046e995ae3e167d7baa664ba96cb24a24721 /meta/classes/package_deb.bbclass
parentcaf798da9502c1c4967d13a4450fe02b1e7b4850 (diff)
downloadopenembedded-core-8487b352cabd8c8ae8a7d9e7e66489e4e964bd50.tar.gz
package_deb.bbclass:fix the arch (replace "_" with "-") in deb package control
when build deb image, such as building meta-toolchain-sdk in x86_64 host, there is warning like that: ... 'x86_64' is not a valid architecture name: character `_' not allowed (only letters, digits and characters `-') ... The params in deb package control file don't allow character `_', only letters, digits and characters `-' allowed. Change the arch's "_" to "-" in the deb package's control file at the control file creation time. Such as `x86_64'-->`x86-64' [YOCTO #3721] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/package_deb.bbclass')
-rw-r--r--meta/classes/package_deb.bbclass8
1 files changed, 8 insertions, 0 deletions
diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass
index eea15e722f..309c48da11 100644
--- a/meta/classes/package_deb.bbclass
+++ b/meta/classes/package_deb.bbclass
@@ -82,6 +82,9 @@ package_install_internal_deb () {
tac ${STAGING_ETCDIR_NATIVE}/apt/sources.list.rev > ${STAGING_ETCDIR_NATIVE}/apt/sources.list
+ # The params in deb package control don't allow character `_', so
+ # change the arch's `_' to `-' in it.
+ dpkg_arch=`echo ${dpkg_arch} | sed 's/_/-/g'`
cat "${STAGING_ETCDIR_NATIVE}/apt/apt.conf.sample" \
| sed -e "s#Architecture \".*\";#Architecture \"${dpkg_arch}\";#" \
| sed -e "s:#ROOTFS#:${target_rootfs}:g" \
@@ -259,6 +262,11 @@ python do_package_deb () {
raise KeyError(f)
if i == 'DPKG_ARCH' and d.getVar('PACKAGE_ARCH', True) == 'all':
data = 'all'
+ elif i == 'PACKAGE_ARCH' or i == 'DPKG_ARCH':
+ # The params in deb package control don't allow character
+ # `_', so change the arch's `_' to `-'. Such as `x86_64'
+ # -->`x86-64'
+ data = data.replace('_', '-')
l2.append(data)
return l2