From 1f8f6fe4eb6884ac3a254d4ef54c7841e407ecab Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Mon, 21 Jan 2013 22:49:50 +0000 Subject: packagedata: Add error message if multiple recipes try to write the same package If multiple recipes try and write the same package it resulted in a rather confusing traceback and unintuitive error. This patch prints a human readable error instead. [YOCTO #3645] (From OE-Core rev: 6f817779af77fdb0b861297f0f43c4c6607ce6f0) Signed-off-by: Richard Purdie --- meta/classes/packagedata.bbclass | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/meta/classes/packagedata.bbclass b/meta/classes/packagedata.bbclass index 790d874c1c..120cd6445f 100644 --- a/meta/classes/packagedata.bbclass +++ b/meta/classes/packagedata.bbclass @@ -1,7 +1,8 @@ python read_subpackage_metadata () { import oe.packagedata - data = oe.packagedata.read_pkgdata(d.getVar('PN', True), d) + pn = d.getVar('PN', True) + data = oe.packagedata.read_pkgdata(pn, d) for key in data.keys(): d.setVar(key, data[key]) @@ -9,5 +10,9 @@ python read_subpackage_metadata () { for pkg in d.getVar('PACKAGES', True).split(): sdata = oe.packagedata.read_subpkgdata(pkg, d) for key in sdata.keys(): + if key == "PN": + if sdata[key] != pn: + bb.fatal("Recipe %s is trying to create package %s which was already written by recipe %s. This will cause corruption, please resolve this and only provide the package from one recipe or the other or only build one of the recipes." % (pn, pkg, sdata[key])) + continue d.setVar(key, sdata[key]) } -- cgit v1.2.3-54-g00ecf