summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDongxiao Xu <dongxiao.xu@intel.com>2012-04-18 20:48:16 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-04-18 15:55:04 +0100
commitd233c90823f7b443cad7ff6f5f3a74672e5edbf6 (patch)
treef22b5fe1bcba8bc4e92a1adfe8dc16acbd230e4d
parentb76513948b754458f0b1ea63290f46253aa5d624 (diff)
downloadpoky-d233c90823f7b443cad7ff6f5f3a74672e5edbf6.tar.gz
packageinfo.bbclass: A workaround for RPM architecture renaming
For beagleboard platform, the PACKAGE_ARCH for certain recipes is "armv7a-vfp-neon", however, the architecture label in RPM file name is "armv7a" due to a potential bug in RPM backend. This commit is a workaround to make Hob work in this case. (From OE-Core rev: 00bd4589b21fe3a716ff2732ea55651c4abd77e4) Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/packageinfo.bbclass13
1 files changed, 12 insertions, 1 deletions
diff --git a/meta/classes/packageinfo.bbclass b/meta/classes/packageinfo.bbclass
index 46b9097a54..26cce604ae 100644
--- a/meta/classes/packageinfo.bbclass
+++ b/meta/classes/packageinfo.bbclass
@@ -20,14 +20,25 @@ python packageinfo_handler () {
20 pkgrename = sdata['PKG_%s' % pkgname] 20 pkgrename = sdata['PKG_%s' % pkgname]
21 pkgv = sdata['PKGV'].replace('-', '+') 21 pkgv = sdata['PKGV'].replace('-', '+')
22 pkgr = sdata['PKGR'] 22 pkgr = sdata['PKGR']
23 # We found there are some renaming issue with certain architecture.
24 # For example, armv7a-vfp-neon, it will use armv7a in the rpm file. This is the workaround for it.
25 arch_tmp = arch.split('-')[0]
23 if os.path.exists(deploy_dir + '/' + arch + '/' + \ 26 if os.path.exists(deploy_dir + '/' + arch + '/' + \
24 pkgname + '-' + pkgv + '-' + pkgr + '.' + arch + '.' + packaging) or \ 27 pkgname + '-' + pkgv + '-' + pkgr + '.' + arch + '.' + packaging) or \
25 os.path.exists(deploy_dir + '/' + arch + '/' + \ 28 os.path.exists(deploy_dir + '/' + arch + '/' + \
29 pkgname + '-' + pkgv + '-' + pkgr + '.' + arch_tmp + '.' + packaging) or \
30 os.path.exists(deploy_dir + '/' + arch + '/' + \
26 pkgrename + '-' + pkgv + '-' + pkgr + '.' + arch + '.' + packaging) or \ 31 pkgrename + '-' + pkgv + '-' + pkgr + '.' + arch + '.' + packaging) or \
27 os.path.exists(deploy_dir + '/' + arch + '/' + \ 32 os.path.exists(deploy_dir + '/' + arch + '/' + \
33 pkgrename + '-' + pkgv + '-' + pkgr + '.' + arch_tmp + '.' + packaging) or \
34 os.path.exists(deploy_dir + '/' + arch + '/' + \
28 pkgname + '_' + pkgv + '-' + pkgr + '_' + arch + '.' + packaging) or \ 35 pkgname + '_' + pkgv + '-' + pkgr + '_' + arch + '.' + packaging) or \
29 os.path.exists(deploy_dir + '/' + arch + '/' + \ 36 os.path.exists(deploy_dir + '/' + arch + '/' + \
30 pkgrename + '_' + pkgv + '-' + pkgr + '_' + arch + '.' + packaging): 37 pkgname + '_' + pkgv + '-' + pkgr + '_' + arch_tmp + '.' + packaging) or \
38 os.path.exists(deploy_dir + '/' + arch + '/' + \
39 pkgrename + '_' + pkgv + '-' + pkgr + '_' + arch + '.' + packaging) or \
40 os.path.exists(deploy_dir + '/' + arch + '/' + \
41 pkgrename + '_' + pkgv + '-' + pkgr + '_' + arch_tmp + '.' + packaging):
31 pkginfolist.append(sdata) 42 pkginfolist.append(sdata)
32 bb.event.fire(bb.event.PackageInfo(pkginfolist), e.data) 43 bb.event.fire(bb.event.PackageInfo(pkginfolist), e.data)
33} 44}