summaryrefslogtreecommitdiff
path: root/meta
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-04 17:12:32 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-05 11:16:46 +0100
commitfbff17f0f01db55c7093f089ec06840179c389bd (patch)
treedc630ce793b9205cc793bfeb0a7d3dbfc4a0c69d /meta
parent6d284d656e129be526e272f61405d1b004fe0ec9 (diff)
downloadopenembedded-core-fbff17f0f01db55c7093f089ec06840179c389bd.tar.gz
openembedded-core-fbff17f0f01db55c7093f089ec06840179c389bd.tar.bz2
openembedded-core-fbff17f0f01db55c7093f089ec06840179c389bd.zip
insane.bbclass: Allow INSANE_SKIP to work on a per test basis
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/insane.bbclass37
1 files changed, 20 insertions, 17 deletions
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index a6f9c1ea9a..3572ce7b4f 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -383,7 +383,7 @@ def package_qa_check_staged(path,d):
return sane
# Walk over all files in a directory and call func
-def package_qa_walk(path, warnfuncs, errorfuncs, package, d):
+def package_qa_walk(path, warnfuncs, errorfuncs, skip, package, d):
import oe.qa
#if this will throw an exception, then fix the dict above
@@ -414,7 +414,7 @@ def package_qa_walk(path, warnfuncs, errorfuncs, package, d):
return len(errors) == 0
-def package_qa_check_rdepends(pkg, pkgdest, d):
+def package_qa_check_rdepends(pkg, pkgdest, skip, d):
sane = True
if not "-dbg" in pkg and not "task-" in pkg and not "-image" in pkg:
# Copied from package_ipk.bbclass
@@ -439,7 +439,7 @@ def package_qa_check_rdepends(pkg, pkgdest, d):
# Now do the sanity check!!!
for rdepend in rdepends:
- if "-dbg" in rdepend:
+ if "-dbg" in rdepend and "debug-deps" not in skip:
error_msg = "%s rdepends on %s" % (pkgname,rdepend)
sane = package_qa_handle_error("debug-deps", error_msg, d)
@@ -480,27 +480,30 @@ python do_package_qa () {
testmatrix = d.getVarFlags("QAPATHTEST")
g = globals()
- warnchecks = []
- for w in (d.getVar("WARN_QA", True) or "").split():
- if w in testmatrix and testmatrix[w] in g:
- warnchecks.append(g[testmatrix[w]])
- errorchecks = []
- for e in (d.getVar("ERROR_QA", True) or "").split():
- if e in testmatrix and testmatrix[e] in g:
- errorchecks.append(g[testmatrix[e]])
-
walk_sane = True
rdepends_sane = True
for package in packages.split():
- if bb.data.getVar('INSANE_SKIP_' + package, d, True):
- bb.note("Package: %s (skipped)" % package)
- continue
+ skip = (bb.data.getVar('INSANE_SKIP_' + package, d, True) or "").split()
+ if skip:
+ bb.note("Package %s skipping QA tests: %s" % (package, str(skip)))
+ warnchecks = []
+ for w in (d.getVar("WARN_QA", True) or "").split():
+ if w in skip:
+ continue
+ if w in testmatrix and testmatrix[w] in g:
+ warnchecks.append(g[testmatrix[w]])
+ errorchecks = []
+ for e in (d.getVar("ERROR_QA", True) or "").split():
+ if e in skip:
+ continue
+ if e in testmatrix and testmatrix[e] in g:
+ errorchecks.append(g[testmatrix[e]])
bb.note("Checking Package: %s" % package)
path = "%s/%s" % (pkgdest, package)
- if not package_qa_walk(path, warnchecks, errorchecks, package, d):
+ if not package_qa_walk(path, warnchecks, errorchecks, skip, package, d):
walk_sane = False
- if not package_qa_check_rdepends(package, pkgdest, d):
+ if not package_qa_check_rdepends(package, pkgdest, skip, d):
rdepends_sane = False