]> code.ossystems Code Review - openembedded-core.git/commitdiff
classextend.py: don't extend file for file dependency
authorChangqing Li <changqing.li@windriver.com>
Mon, 16 Sep 2019 05:50:23 +0000 (13:50 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 16 Sep 2019 10:46:52 +0000 (11:46 +0100)
Fix error like:
lib32-e2fsprogs-1.45.3-r0 do_package_qa: QA Issue: /usr/sbin/e2scrub_all
contained in package lib32-e2fsprogs-e2scrub requires /bin/bash,
but no providers found in RDEPENDS_lib32-e2fsprogs-e2scrub

For some lib32 packages(eg: lib32-bash, lib32-sed) which probvides files,
extend is not needed

Eg: RPROVIDES of lib32-bash expects to have /bin/bash, with original
extend, it will become lib32-/bin/bash, then will cause above error

Fix by don't extend file dependency, and skip multilib check for file dependency
in do_package_qa to avoid error like:
WARNING: lib32-bash-5.0-r0 do_package: QA Issue: lib32-bash package lib32-bash
 - suspicious values '/bin/bash /bin/sh' in RPROVIDES [multilib]

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/multilib.bbclass
meta/lib/oe/classextend.py

index d625bd527c3aee21841e75bed9be23d32a5e3c9d..1a9295d36f542f06ca682be1d4aec97d32f4e7dc 100644 (file)
@@ -187,7 +187,7 @@ python do_package_qa_multilib() {
             if (not i.startswith('kernel-module')) and (not i.startswith(mlprefix)) and \
                 (not 'cross-canadian' in i) and (not i.startswith("nativesdk-")) and \
                 (not i.startswith("rtld")) and (not i.startswith('kernel-vmlinux')) \
-                and (not i.startswith("kernel-image")):
+                and (not i.startswith("kernel-image")) and (not i.startswith("/")):
                 candidates.append(i)
         if len(candidates) > 0:
             msg = "%s package %s - suspicious values '%s' in %s" \
index e25122e815b6312bd9d469cb1a73b24c77433936..f02fbe9fbadd2347a9acdf6a5ab20422e300382f 100644 (file)
@@ -24,6 +24,8 @@ class ClassExtender(object):
             if not subs.startswith(self.extname):
                 return "virtual/" + self.extname + "-" + subs
             return name
+        if name.startswith("/"):
+            return name
         if not name.startswith(self.extname):
             return self.extname + "-" + name
         return name