diff options
author | Nitin A Kamble <nitin.a.kamble@intel.com> | 2011-11-16 11:14:43 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-11-18 10:47:13 +0000 |
commit | 79ec782aae08a13c54adb78263277f348dbb7425 (patch) | |
tree | 8596c5a5b1939aac1bf15084e9577f3952905da4 /meta/classes/insane.bbclass | |
parent | 13518fdb4fa21bfb7382e4fac14e3eabd0f395f7 (diff) | |
download | poky-79ec782aae08a13c54adb78263277f348dbb7425.tar.gz |
insane.bbclass: avoid errors for x32 kernel
x32 abi of x86_64 has 32bit userspace and the kernel is 64bit.
The qa checking code was reporting this as errors for x32 kernel
files and modules.
This commit extends the condition in the checking code to avoid
throwing the bitsize not matched error for x32 kernel files.
(From OE-Core rev: c9963542b17537f18548616c9ad4f1d92f42bffb)
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/insane.bbclass')
-rw-r--r-- | meta/classes/insane.bbclass | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass index a65f3ee865..5726e69e71 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass | |||
@@ -211,6 +211,7 @@ def package_qa_check_arch(path,name,d, elf, messages): | |||
211 | 211 | ||
212 | target_os = d.getVar('TARGET_OS', True) | 212 | target_os = d.getVar('TARGET_OS', True) |
213 | target_arch = d.getVar('TARGET_ARCH', True) | 213 | target_arch = d.getVar('TARGET_ARCH', True) |
214 | provides = d.getVar('PROVIDES', d, True) | ||
214 | 215 | ||
215 | # FIXME: Cross package confuse this check, so just skip them | 216 | # FIXME: Cross package confuse this check, so just skip them |
216 | for s in ['cross', 'nativesdk', 'cross-canadian']: | 217 | for s in ['cross', 'nativesdk', 'cross-canadian']: |
@@ -230,9 +231,10 @@ def package_qa_check_arch(path,name,d, elf, messages): | |||
230 | if not machine == elf.machine(): | 231 | if not machine == elf.machine(): |
231 | messages.append("Architecture did not match (%d to %d) on %s" % \ | 232 | messages.append("Architecture did not match (%d to %d) on %s" % \ |
232 | (machine, elf.machine(), package_qa_clean_path(path,d))) | 233 | (machine, elf.machine(), package_qa_clean_path(path,d))) |
233 | elif not bits == elf.abiSize(): | 234 | elif not ((bits == elf.abiSize()) or \ |
234 | messages.append("Bit size did not match (%d to %d) on %s" % \ | 235 | ("virtual/kernel" in provides) and (target_os == "linux-gnux32")): |
235 | (bits, elf.abiSize(), package_qa_clean_path(path,d))) | 236 | messages.append("Bit size did not match (%d to %d) %s on %s" % \ |
237 | (bits, elf.abiSize(), bpn, package_qa_clean_path(path,d))) | ||
236 | elif not littleendian == elf.isLittleEndian(): | 238 | elif not littleendian == elf.isLittleEndian(): |
237 | messages.append("Endiannes did not match (%d to %d) on %s" % \ | 239 | messages.append("Endiannes did not match (%d to %d) on %s" % \ |
238 | (littleendian, elf.isLittleEndian(), package_qa_clean_path(path,d))) | 240 | (littleendian, elf.isLittleEndian(), package_qa_clean_path(path,d))) |