Skip to contentSkip to conversation

A fix for QA_check

PATCH New [email protected] 1 participant 2 messages Mar 4, 2014

lore
Share & tools
lore
#0 lore raw

v2 cover A fix for QA_check

From: Nitin A Kamble <[email protected]>

This v2 fix is improved as per feedback from Phil Blundell <[email protected]>

Thanks,
Nitin

The following changes since commit 83b3e3e8e34a2512bcb1fe298715ece58c83dca3:

package_manager.py: RpmPM: don't add smart channel if already added (2014-03-03 15:05:32 -0800)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib nitin/fix1
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=nitin/fix1

Nitin A Kamble (1):
QA_check: special case kernel modules for x32 targets

 meta/classes/insane.bbclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
Signature · 1 line
1.8.1.4
#1 lore raw

PATCH v2 1/1 QA_check: special case kernel modules for x32 targets

From: Nitin A Kamble <[email protected]>

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]

---
 meta/classes/insane.bbclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
meta/classes/insane.bbclass +2 -2
index cf00e12..1195c10 100644
@@ -443,11 +443,11 @@ def package_qa_check_arch(path,name,d, elf, messages):
 
     # Check the architecture and endiannes of the binary
     if not ((machine == elf.machine()) or \
-        ("virtual/kernel" in provides) and (target_os == "linux-gnux32")):
+        ((("virtual/kernel" in provides) or bb.data.inherits_class("module", d) ) and (target_os == "linux-gnux32"))):
         messages.append("Architecture did not match (%d to %d) on %s" % \
                  (machine, elf.machine(), package_qa_clean_path(path,d)))
     elif not ((bits == elf.abiSize()) or  \
-        ("virtual/kernel" in provides) and (target_os == "linux-gnux32")):
+        ((("virtual/kernel" in provides) or bb.data.inherits_class("module", d) ) and (target_os == "linux-gnux32"))):
         messages.append("Bit size did not match (%d to %d) %s on %s" % \
                  (bits, elf.abiSize(), bpn, package_qa_clean_path(path,d)))
     elif not littleendian == elf.isLittleEndian():
Signature · 1 line
1.8.1.4