From: Andrei Gherzan <[email protected]>

base.bbclass modified in order to check if there is an "or" operand, and if it 
is,
should check further if there are other non-excluded licenses.

[YOCTO #1844]

Signed-off-by: Andrei Gherzan <[email protected]>
---
 meta/classes/base.bbclass |   17 +++++++++++++++--
 1 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index e65a722..4ac809a 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -401,8 +401,21 @@ python () {
                 import re
                 this_license = d.getVar('LICENSE', 1)
                 if this_license and re.search(dont_want_license, this_license):
-                    bb.note("SKIPPING %s because it's %s" % (pn, this_license))
-                    raise bb.parse.SkipPackage("incompatible with license %s" 
% this_license)
+                   this_license_no_spaces = re.sub(r'\s', '', this_license)
+                   licenses = re.split('[|]', this_license_no_spaces)
+                   if len(licenses) != 0:
+                       good_license=""
+                       for onelicense in licenses:
+                           if not re.search(dont_want_license, onelicense):
+                               good_license = onelicense
+                       if good_license == "":
+                           bb.note("SKIPPING %s because it's %s" % (pn, 
this_license))
+                           raise bb.parse.SkipPackage("incompatible with 
license %s" % this_license)
+                       else:
+                           bb.note("NOT SKIPPING %s because it's %s which 
contains %s" % (pn, this_license, good_license))
+                   else:
+                       bb.note("SKIPPING %s because it's %s" % (pn, 
this_license))
+                       raise bb.parse.SkipPackage("incompatible with license 
%s" % this_license)
 
     srcuri = d.getVar('SRC_URI', 1)
     # Svn packages should DEPEND on subversion-native
-- 
1.7.6.4


_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Reply via email to