From patchwork Tue Jan 15 20:22:48 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [3/6] license.bbclass: cleanly handle invalid licenses in incompatible_license Date: Tue, 15 Jan 2013 20:22:48 -0000 From: Christopher Larson X-Patchwork-Id: 42675 Message-Id: <15719a0894a4a514d5cad911198ac789524dcfc3.1358281118.git.chris_larson@mentor.com> To: openembedded-core@lists.openembedded.org Cc: Christopher Larson From: Christopher Larson This gives us an error message (bb.fatal) rather than a traceback due to the uncaught LicenseError. Signed-off-by: Christopher Larson --- meta/classes/license.bbclass | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass index cfb816d..cd18e19 100644 --- a/meta/classes/license.bbclass +++ b/meta/classes/license.bbclass @@ -237,7 +237,10 @@ def incompatible_license(d, dont_want_licenses, package=None): def choose_lic_set(a, b): return a if all(license_ok(lic) for lic in a) else b - licenses=oe.license.flattened_licenses(license, choose_lic_set) + try: + licenses = oe.license.flattened_licenses(license, choose_lic_set) + except oe.license.LicenseError as exc: + bb.fatal('%s: %s' % (d.getVar('P', True), exc)) return any(not license_ok(l) for l in licenses) def check_license_flags(d):