[oe-commits] Paul Eggleton : base.bbclass: fix substring matching in COMMERCIAL_LICENSE

git version control git at git.openembedded.org
Thu Sep 8 08:59:37 UTC 2011


Module: openembedded-core.git
Branch: master
Commit: b23e51e6c961cf3f7e2aaf89648fecce78424c99
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=b23e51e6c961cf3f7e2aaf89648fecce78424c99

Author: Paul Eggleton <paul.eggleton at linux.intel.com>
Date:   Wed Sep  7 17:05:42 2011 +0100

base.bbclass: fix substring matching in COMMERCIAL_LICENSE

Previously, if for example you had a package called "mx", and a second
package called "libomxil" listed in COMMERCIAL_LICENSE (without mx being
listed there), it would match mx as being commercially licensed because
mx is a substring of libomxil. Fix the search to ensure it only matches
the listed package name exactly.

Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/classes/base.bbclass |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 3501f4b..104bec8 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -340,9 +340,9 @@ python () {
     if license == "INVALID":
         bb.fatal('This recipe does not have the LICENSE field set (%s)' % pn)
 
-    commercial_license = bb.data.getVar('COMMERCIAL_LICENSE', d, 1)
+    commercial_license = " %s " % bb.data.getVar('COMMERCIAL_LICENSE', d, 1)
     import re
-    pnr = pn.replace('+', "\+")
+    pnr = "[ \t]%s[ \t]" % pn.replace('+', "\+")
     if commercial_license and re.search(pnr, commercial_license):
         bb.debug(1, "Skipping %s because it's commercially licensed" % pn)
         raise bb.parse.SkipPackage("because it may require a commercial license to ship in a product (listed in COMMERCIAL_LICENSE)")





More information about the Openembedded-commits mailing list