license.bbclass: canonicalise licenses when dealing with INCOMPATIBLE_LICENSE

If INCOMPATIBLE_LICENSE=GPL-3.0 but the recipe sets LICENSE=GPLv3, the current
code won't trigger because they're different strings.

Fix this by attempting to canonicalise every license name to a SPDX name, so
both names in this example become GPL-3.0.

[ YOCTO #5622 ]

(From OE-Core rev: 8998e13fc95f11d15c34fb09d8451a9d4b69f2f1)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton
2014-07-17 15:41:05 +01:00
committed by Richard Purdie
parent a9710bcfef
commit ba197e6ff3
2 changed files with 13 additions and 3 deletions

View File

@@ -540,6 +540,8 @@ python () {
check_license = False
if check_license and bad_licenses:
bad_licenses = map(lambda l: canonical_license(d, l), bad_licenses)
whitelist = []
for lic in bad_licenses:
for w in ["HOSTTOOLS_WHITELIST_", "LGPLv2_WHITELIST_", "WHITELIST_"]: