From 1268ed3f3ae0a76383e03b5c373b82c551c213a6 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 25 Oct 2006 19:25:07 +0000 Subject: classes/insane.bbclass: Check if packages RDEPENDS on -dbg packages Untested check inspired by Richard to check if non debug packages depends on -dbg packages. --- classes/insane.bbclass | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'classes') diff --git a/classes/insane.bbclass b/classes/insane.bbclass index 55f7721153..062b1505b1 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -90,6 +90,37 @@ def package_qa_walk(path, funcs, package,d): func(path, package,d) +def package_qa_check_rdepends(pkg, d): + if not "-dbg" in pkg and not "task-" in pkg and not "-image" in pkg: + # Copied from package_ipk.bbclass + # boiler plate to update the data + localdata = bb.data.createCopy(d) + root = "%s/install/%s" % (workdir, pkg) + + bb.data.setVar('ROOT', '', localdata) + bb.data.setVar('ROOT_%s' % pkg, root, localdata) + pkgname = bb.data.getVar('PKG_%s' % pkg, localdata, 1) + if not pkgname: + pkgname = pkg + bb.data.setVar('PKG', pkgname, localdata) + + overrides = bb.data.getVar('OVERRIDES', localdata) + if not overrides: + raise bb.build.FuncFailed('OVERRIDES not defined') + overrides = bb.data.expand(overrides, localdata) + bb.data.setVar('OVERRIDES', overrides + ':' + pkg, localdata) + + bb.data.update_data(localdata) + + # Now check the RDEPENDS + rdepends = explode_deps(bb.data.getVar('RDEPENDS', localdata, True) or "") + + + # Now do the sanity check!!! + for rdepend in rdepends: + if "-dbg" in rdepend: + bb.error("QA issue, koen give us a better msg!!!") + # The PACKAGE FUNC to scan each package python do_package_qa () { bb.note("DO PACKAGE QA") @@ -104,6 +135,8 @@ python do_package_qa () { bb.note("Package: %s" % package) path = "%s/install/%s" % (workdir, package) package_qa_walk(path, [package_qa_check_rpath, package_qa_check_devdbg, package_qa_check_perm, package_qa_check_arch], package, d) + package_qa_check_rdepends(package, d) + } -- cgit v1.2.3 From 12f3d309156ac047b0826904ef729b83b997b8b5 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 25 Oct 2006 19:48:11 +0000 Subject: classes/tinderclient.bbclass: Send some more useful data to the tinderbox Send PN, PV, PR, MACHINE, DISTRO, TARGET_FPU, TARGET_OS, TARGET_ARCH to the tinderbox. This will be used by the new data mining tinderbox --- classes/tinderclient.bbclass | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'classes') diff --git a/classes/tinderclient.bbclass b/classes/tinderclient.bbclass index d36ef0b343..3f5183cc8f 100644 --- a/classes/tinderclient.bbclass +++ b/classes/tinderclient.bbclass @@ -60,7 +60,18 @@ def tinder_format_http_post(d,status,log): "os" : os.uname()[0], "os_version" : os.uname()[2], "compiler" : "gcc", - "clobber" : data.getVar('TINDER_CLOBBER', d, True) + "clobber" : data.getVar('TINDER_CLOBBER', d, True), + "srcdate" : data.getVar('SRCDATE', d, True), + "PN" : data.getVar('PN', d, True), + "PV" : data.getVar('PV', d, True), + "PR" : data.getVar('PR', d, True), + "FILE" : data.getVar('FILE', d, True) or "N/A", + "TARGETARCH" : data.getVar('TARGET_ARCH', d, True), + "TARGETFPU" : data.getVar('TARGET_FPU', d, True) or "Unknown", + "TARGETOS" : data.getVar('TARGET_OS', d, True) or "Unknown", + "MACHINE" : data.getVar('MACHINE', d, True) or "Unknown", + "DISTRO" : data.getVar('DISTRO', d, True) or "Unknown", + "zecke-rocks" : "sure", } # optionally add the status -- cgit v1.2.3 From 8050b45254a8f36b7873b2d9027d2fe902e79a87 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Thu, 26 Oct 2006 08:58:25 +0000 Subject: insane.bbclass: import bb --- classes/insane.bbclass | 2 ++ 1 file changed, 2 insertions(+) (limited to 'classes') diff --git a/classes/insane.bbclass b/classes/insane.bbclass index 062b1505b1..f6000f1393 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -17,6 +17,7 @@ # possible and this is contained within the pax-utils-native # + # We play a special package function inherit package PACKAGE_DEPENDS += "pax-utils-native" @@ -91,6 +92,7 @@ def package_qa_walk(path, funcs, package,d): def package_qa_check_rdepends(pkg, d): + import bb if not "-dbg" in pkg and not "task-" in pkg and not "-image" in pkg: # Copied from package_ipk.bbclass # boiler plate to update the data -- cgit v1.2.3 From 4ae9f396b8b9630cb36f2e7fa793fa224ecdea45 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Thu, 26 Oct 2006 12:35:01 +0000 Subject: classes/insane.class: Make workdir known, remove whitespace --- classes/insane.bbclass | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'classes') diff --git a/classes/insane.bbclass b/classes/insane.bbclass index f6000f1393..75602d0f44 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -91,27 +91,27 @@ def package_qa_walk(path, funcs, package,d): func(path, package,d) -def package_qa_check_rdepends(pkg, d): +def package_qa_check_rdepends(pkg, workdir, d): import bb if not "-dbg" in pkg and not "task-" in pkg and not "-image" in pkg: # Copied from package_ipk.bbclass # boiler plate to update the data localdata = bb.data.createCopy(d) root = "%s/install/%s" % (workdir, pkg) - + bb.data.setVar('ROOT', '', localdata) bb.data.setVar('ROOT_%s' % pkg, root, localdata) pkgname = bb.data.getVar('PKG_%s' % pkg, localdata, 1) if not pkgname: pkgname = pkg bb.data.setVar('PKG', pkgname, localdata) - + overrides = bb.data.getVar('OVERRIDES', localdata) if not overrides: raise bb.build.FuncFailed('OVERRIDES not defined') overrides = bb.data.expand(overrides, localdata) bb.data.setVar('OVERRIDES', overrides + ':' + pkg, localdata) - + bb.data.update_data(localdata) # Now check the RDEPENDS @@ -137,7 +137,7 @@ python do_package_qa () { bb.note("Package: %s" % package) path = "%s/install/%s" % (workdir, package) package_qa_walk(path, [package_qa_check_rpath, package_qa_check_devdbg, package_qa_check_perm, package_qa_check_arch], package, d) - package_qa_check_rdepends(package, d) + package_qa_check_rdepends(package, workdir, d) } -- cgit v1.2.3 From 04b998447b47f8179c091b6ea1e84dc4485db3fa Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Thu, 26 Oct 2006 12:36:49 +0000 Subject: classes/test.bbclass: Make sure tests are really executed Make sure tests are really executed by adding the task before do_build. --- classes/test.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'classes') diff --git a/classes/test.bbclass b/classes/test.bbclass index 71afe88404..ff3e945395 100644 --- a/classes/test.bbclass +++ b/classes/test.bbclass @@ -7,7 +7,7 @@ # -addtask test after do_compile +addtask test after do_compile before do_build test_do_test () { : } -- cgit v1.2.3 From 4c49cec0f00a58693f324b06363744dbcf856329 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 28 Oct 2006 08:56:37 +0000 Subject: base.bbclass, package.bbclass: don destrucively set RDEPENDS and RRECOMMENDS, from Poky * poky rev 823: 'package.bbclass: depchains: don't -destructively- set the pkg's RRECOMMENDS.' * poky rev 824: 'base.bbclass: depchains: don't -destructively- set the pkg's RRECOMMENDS.' --- classes/base.bbclass | 4 ++++ classes/package.bbclass | 12 +++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) (limited to 'classes') diff --git a/classes/base.bbclass b/classes/base.bbclass index eda1b23b04..f4a0076f19 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -616,6 +616,10 @@ def explode_deps(s): r.append(i) return r +def packaged(pkg, d): + import os, bb + return os.access(bb.data.expand('${STAGING_DIR}/pkgdata/runtime/%s.packaged' % pkg, d), os.R_OK) + def read_pkgdatafile(fn): pkgdata = {} diff --git a/classes/package.bbclass b/classes/package.bbclass index 652b60e226..4909fc61df 100644 --- a/classes/package.bbclass +++ b/classes/package.bbclass @@ -808,7 +808,7 @@ python package_depchains() { def pkg_addrrecs(pkg, base, func, d): rdepends = explode_deps(bb.data.getVar('RDEPENDS_' + base, d, 1) or bb.data.getVar('RDEPENDS', d, 1) or "") # bb.note('rdepends for %s is %s' % (base, rdepends)) - rreclist = [] + rreclist = explode_deps(bb.data.getVar('RRECOMMENDS_' + pkg, d, 1) or bb.data.getVar('RRECOMMENDS', d, 1) or "") for depend in rdepends: split_depend = depend.split(' (') @@ -824,8 +824,9 @@ python package_depchains() { for postfix in postfixes: def func(list, name): pkg = '%s%s' % (name, postfix) - if packaged(pkg, d): - list.append(pkg) + if not pkg in list: + if packaged(pkg, d): + list.append(pkg) base = pkg[:-len(postfix)] if pkg.endswith(postfix): @@ -835,8 +836,9 @@ python package_depchains() { for prefix in prefixes: def func(list, name): pkg = '%s%s' % (prefix, name) - if packaged(pkg, d): - list.append(pkg) + if not pkg in list: + if packaged(pkg, d): + list.append(pkg) base = pkg[len(prefix):] if pkg.startswith(prefix): -- cgit v1.2.3