On Wed, 2021-02-17 at 05:00 +0100, Meh Mbeh Ida Delphine wrote: > These functions that will later be used in package.bbclass simply make the > source and recipe licenses in the same format so that they can easily be > compared and the ouput warnings filtered accordingly. > split_spdx_lic() splits the license strings and returns a set of the > canonicalised licenses. > rem_false_lics() does two things: > - Converts '-or-later' licenses to their canonicalised form > - Gets rid of "WITH Linux-syscall-note" from license string if specified in > local.conf > > Signed-off-by: Ida Delphine <[email protected]> > --- > meta/classes/license.bbclass | 27 +++++++++++++++++++++++++++ > 1 file changed, 27 insertions(+) > > diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass > index dc91118340..576464cb26 100644 > --- a/meta/classes/license.bbclass > +++ b/meta/classes/license.bbclass > @@ -435,3 +435,30 @@ python do_populate_lic_setscene () { > sstate_setscene(d) > } > addtask do_populate_lic_setscene > + > + > +def split_spdx_lic(d, licensestr): > + """ > + Split the license strings and returns a set of the > + canonicalised licenses. > + """ > + import oe.license > + split_lic = oe.license.list_licenses(licensestr) > + spdx_lic = set([canonical_license(d, l) for l in split_lic]) > + return spdx_lic > + > +def rem_false_lics(d, pkglic): > + pkglicsperpkg = set([]) > + for l in pkglic: > + if l.endswith('-or-later'): > + # Converts '-or-later' licenses to their canonicalised form > + lic_ = l.replace('-or-later', '+') > + pkglicsperpkg.add(lic_) > + elif l.endswith(' WITH Linux-syscall-note'): > + # Gets rid of "WITH Linux-syscall-note from license sring" > + if d.getVar("LICENSE_WITH_LINUX_SYS") == "1": > + lic_ = l.replace(' WITH Linux-syscall-note', '') > + pkglicsperpkg.add(lic_) > + else: > + pkglicsperpkg.add(l) > + return pkglicsperpkg
Creating these functions is good. We should put them into the function library in meta/lib/oe/license.py. I already commented about a couple of elements of this second function. Cheers, Richard
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#148233): https://lists.openembedded.org/g/openembedded-core/message/148233 Mute This Topic: https://lists.openembedded.org/mt/80697040/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
