mirror of
https://git.yoctoproject.org/poky
synced 2026-01-29 21:08:42 +01:00
classes/license: tweak license format messages
Strictly speaking not all of these characters are operators, so reword the message to describe them as separators. Also use the standard "recipename: message" format. (From OE-Core rev: 9e5da3e83f2a5d43620e07a31728b7427329d8f4) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
617e2e9413
commit
30a5c9edc6
@@ -417,19 +417,20 @@ def check_license_format(d):
|
||||
"""
|
||||
pn = d.getVar('PN', True)
|
||||
licenses = d.getVar('LICENSE', True)
|
||||
from oe.license import license_operator
|
||||
from oe.license import license_pattern
|
||||
from oe.license import license_operator, license_operator_chars, license_pattern
|
||||
|
||||
elements = filter(lambda x: x.strip(), license_operator.split(licenses))
|
||||
for pos, element in enumerate(elements):
|
||||
if license_pattern.match(element):
|
||||
if pos > 0 and license_pattern.match(elements[pos - 1]):
|
||||
bb.warn("Recipe %s, LICENSE (%s) has invalid format, " \
|
||||
"LICENSES must have operator \"%s\" between them." %
|
||||
(pn, licenses, license_operator.pattern))
|
||||
bb.warn('%s: LICENSE value "%s" has an invalid format - license names ' \
|
||||
'must be separated by the following characters to indicate ' \
|
||||
'the license selection: %s' %
|
||||
(pn, licenses, license_operator_chars))
|
||||
elif not license_operator.match(element):
|
||||
bb.warn("Recipe %s, LICENSE (%s) has invalid operator (%s) not in" \
|
||||
" \"%s\"." % (pn, licenses, element, license_operator.pattern))
|
||||
bb.warn('%s: LICENSE value "%s" has an invalid separator "%s" that is not ' \
|
||||
'in the valid list of separators (%s)' %
|
||||
(pn, licenses, element, license_operator_chars))
|
||||
|
||||
SSTATETASKS += "do_populate_lic"
|
||||
do_populate_lic[sstate-inputdirs] = "${LICSSTATEDIR}"
|
||||
|
||||
@@ -25,7 +25,8 @@ class InvalidLicense(LicenseError):
|
||||
def __str__(self):
|
||||
return "invalid characters in license '%s'" % self.license
|
||||
|
||||
license_operator = re.compile('([&|() ])')
|
||||
license_operator_chars = '&|() '
|
||||
license_operator = re.compile('([' + license_operator_chars + '])')
|
||||
license_pattern = re.compile('[a-zA-Z0-9.+_\-]+$')
|
||||
|
||||
class LicenseVisitor(ast.NodeVisitor):
|
||||
|
||||
Reference in New Issue
Block a user