summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorNitin A Kamble <nitin.a.kamble@intel.com>2014-03-04 10:17:52 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-03-07 14:58:46 +0000
commitd31d2e85cfab8b85988047facd60438539467813 (patch)
tree982b0064be406dd124e795e6a0ae8de80453c196 /meta
parent01e5d7bc53ebf5f85408b17d58abb7e1c7604009 (diff)
downloadpoky-d31d2e85cfab8b85988047facd60438539467813.tar.gz
insane: Special case kernel modules for x32 targets
The Kernel module packages for x32 target have 64 bit binaries, which breaks the QA_check expecting all the packages to be 32bit. Make a special case for kernel module packages for x32 targets, to avoid this false error. Fixes Bug: [YOCTO #5903] (From OE-Core rev: a4261ab92735abfba835e916931d2e920f335aaa) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/insane.bbclass4
1 files changed, 2 insertions, 2 deletions
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 11c1feb84a..9ce336415a 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -443,11 +443,11 @@ def package_qa_check_arch(path,name,d, elf, messages):
443 443
444 # Check the architecture and endiannes of the binary 444 # Check the architecture and endiannes of the binary
445 if not ((machine == elf.machine()) or \ 445 if not ((machine == elf.machine()) or \
446 ("virtual/kernel" in provides) and (target_os == "linux-gnux32")): 446 ((("virtual/kernel" in provides) or bb.data.inherits_class("module", d) ) and (target_os == "linux-gnux32"))):
447 messages.append("Architecture did not match (%d to %d) on %s" % \ 447 messages.append("Architecture did not match (%d to %d) on %s" % \
448 (machine, elf.machine(), package_qa_clean_path(path,d))) 448 (machine, elf.machine(), package_qa_clean_path(path,d)))
449 elif not ((bits == elf.abiSize()) or \ 449 elif not ((bits == elf.abiSize()) or \
450 ("virtual/kernel" in provides) and (target_os == "linux-gnux32")): 450 ((("virtual/kernel" in provides) or bb.data.inherits_class("module", d) ) and (target_os == "linux-gnux32"))):
451 messages.append("Bit size did not match (%d to %d) %s on %s" % \ 451 messages.append("Bit size did not match (%d to %d) %s on %s" % \
452 (bits, elf.abiSize(), bpn, package_qa_clean_path(path,d))) 452 (bits, elf.abiSize(), bpn, package_qa_clean_path(path,d)))
453 elif not littleendian == elf.isLittleEndian(): 453 elif not littleendian == elf.isLittleEndian():