diff options
Diffstat (limited to 'meta/classes/insane.bbclass')
-rw-r--r-- | meta/classes/insane.bbclass | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass index c8fa7116b3..9ffe6751d8 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass @@ -17,9 +17,6 @@ # files under exec_prefix -PACKAGE_DEPENDS += "${QADEPENDS}" -PACKAGEFUNCS += " do_package_qa " - # unsafe-references-in-binaries requires prelink-rtld from # prelink-native, but we don't want this DEPENDS for -native builds QADEPENDS = "prelink-native" @@ -828,6 +825,8 @@ python do_package_qa () { bb.note("DO PACKAGE QA") + bb.build.exec_func("read_subpackage_metadata", d) + logdir = d.getVar('T', True) pkg = d.getVar('PN', True) @@ -855,6 +854,15 @@ python do_package_qa () { pkgdest = d.getVar('PKGDEST', True) packages = d.getVar('PACKAGES', True) + cpath = oe.cachedpath.CachedPath() + global pkgfiles + pkgfiles = {} + for pkg in (packages or "").split(): + pkgfiles[pkg] = [] + for walkroot, dirs, files in cpath.walk(pkgdest + "/" + pkg): + for file in files: + pkgfiles[pkg].append(walkroot + os.sep + file) + # no packages should be scanned if not packages: return @@ -909,6 +917,15 @@ python do_package_qa () { bb.note("DONE with PACKAGE QA") } +addtask do_package_qa after do_package before do_build + +SSTATETASKS += "do_package_qa" +do_package_qa[sstate-inputdirs] = "" +do_package_qa[sstate-outputdirs] = "" +python do_package_qa_setscene () { + sstate_setscene(d) +} +addtask do_package_qa_setscene python do_qa_staging() { bb.note("QA checking staging") @@ -1018,6 +1035,8 @@ python () { issues = [] if (d.getVar('PACKAGES', True) or "").split(): + for dep in (d.getVar('QADEPENDS', True) or "").split(): + d.appendVarFlag('do_package_qa', 'depends', " %s:do_populate_sysroot" % dep) for var in 'RDEPENDS', 'RRECOMMENDS', 'RSUGGESTS', 'RCONFLICTS', 'RPROVIDES', 'RREPLACES', 'FILES', 'pkg_preinst', 'pkg_postinst', 'pkg_prerm', 'pkg_postrm', 'ALLOW_EMPTY': if d.getVar(var): issues.append(var) |