From 9a519998f4e64dc067882c9fcd4416db49fccccd Mon Sep 17 00:00:00 2001 From: Xiaofeng Yan Date: Thu, 7 Jun 2012 16:37:07 -0700 Subject: archiver.bbclass: Reduce some duplication for function get_licenses The content to modify this bbclass is as follow: - Use the existing functions to get license as a directory instead of rewriting it for avoiding code duplication. - Use SPDXLICENSEMAP to map licenses [YOCTO #2473] (From OE-Core rev: 31bee6e7b0a23efc1555ab739ef10041803d5bb1) Signed-off-by: Xiaofeng Yan Signed-off-by: Elizabeth Flanagan Signed-off-by: Richard Purdie --- meta/classes/archiver.bbclass | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'meta') diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass index ed2dbe4..083bb1d 100644 --- a/meta/classes/archiver.bbclass +++ b/meta/classes/archiver.bbclass @@ -225,17 +225,18 @@ def archive_logs(d,logdir,bbinc=False): def get_licenses(d): '''get licenses for running .bb file''' - licenses = d.getVar('LICENSE', 1).replace('&', '|') - licenses = licenses.replace('(', '').replace(')', '') - clean_licenses = "" - for x in licenses.split(): - if x.strip() == '' or x == 'CLOSED': - continue - if x != "|": - clean_licenses += x - if '|' in clean_licenses: - clean_licenses = clean_licenses.replace('|','') - return clean_licenses + import oe.license + + licenses_type = d.getVar('LICENSE', True) or "" + lics = oe.license.is_included(licenses_type)[1:][0] + lice = '' + for lic in lics: + licens = d.getVarFlag('SPDXLICENSEMAP', lic) + if licens != None: + lice += licens + else: + lice += lic + return lice def move_tarball_deploy(d,tarball_list): -- cgit v1.1