[OE-core] [PATCH 1/1] archvier.bbclass: fix copyleft filter behavior
Kevin Strasser
kevin.strasser at linux.intel.com
Thu Jan 24 23:34:15 UTC 2013
copyleft_should_include() was only filtering out recipes that
contain a license in COPYLEFT_LICENSE_EXCLUDE. This change adds
the requirement that the recipe contain a copyleft license, as
defined by COPYLEFT_LICENSE_INCLUDE.
Also, filtering results were being mistakenly negated in tar_filter().
Signed-off-by: Kevin Strasser <kevin.strasser at linux.intel.com>
---
meta/classes/archiver.bbclass | 6 ++++--
meta/lib/oe/license.py | 4 +++-
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass
index a4a2158..7fd4f0f 100644
--- a/meta/classes/archiver.bbclass
+++ b/meta/classes/archiver.bbclass
@@ -64,8 +64,10 @@ def copyleft_should_include(d):
else:
if is_included:
return True, 'recipe has included licenses: %s' % ', '.join(reason)
- else:
+ elif reason:
return False, 'recipe has excluded licenses: %s' % ', '.join(reason)
+ else:
+ return False, 'recipe has neither included nor excluded licenses'
def tar_filter(d):
"""
@@ -75,7 +77,7 @@ def tar_filter(d):
"""
if d.getVar('FILTER', True) == "yes":
included, reason = copyleft_should_include(d)
- if not included:
+ if included:
return False
else:
return True
diff --git a/meta/lib/oe/license.py b/meta/lib/oe/license.py
index 173e319..fc15e9e 100644
--- a/meta/lib/oe/license.py
+++ b/meta/lib/oe/license.py
@@ -112,5 +112,7 @@ def is_included(licensestr, whitelist=None, blacklist=None):
included = filter(lambda lic: include_license(lic), licenses)
if excluded:
return False, excluded
- else:
+ elif included:
return True, included
+ else:
+ return False, None
--
1.7.9.5
More information about the Openembedded-core
mailing list