[OE-core] [PATCH] insane.bbclass: add qa_package_check_name

Constantin Musca constantinx.musca at intel.com
Tue Nov 13 14:08:49 UTC 2012


Check if package names match the [a-z0-9.+-]+ regular
expression

[YOCTO #3139]

Signed-off-by: Constantin Musca <constantinx.musca at intel.com>
---
 meta/classes/insane.bbclass | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index d51d1a1..f22e620 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -235,6 +235,15 @@ def package_qa_check_staticdev(path, name, d, elf, messages):
         messages.append("non -staticdev package contains static .a library: %s path '%s'" % \
                  (name, package_qa_clean_path(path,d)))
 
+def package_qa_check_name(name, d):
+    """
+    Check if the package name matches the [a-z0-9.+-]+ regular expression
+    """
+    import re
+    pattern = re.compile("^[a-z0-9.+-]+$")
+    if not pattern.match(name):
+        package_qa_handle_error("pkgname", "%s doesn't match the [a-z0-9.+-]+ regex\n" % name, d)
+
 def package_qa_check_libdir(d):
     """
     Check for wrong library installation paths. For instance, catch
@@ -780,6 +789,9 @@ python do_package_qa () {
                 errorchecks.append(g[testmatrix[e]])
 
         bb.note("Checking Package: %s" % package)
+        # Check package name
+        package_qa_check_name(package, d)
+
         path = "%s/%s" % (pkgdest, package)
         if not package_qa_walk(path, warnchecks, errorchecks, skip, package, d):
             walk_sane  = False
-- 
1.7.11.7





More information about the Openembedded-core mailing list