aboutsummaryrefslogtreecommitdiffstats
path: root/meta/lib
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2012-10-22 12:20:04 +0000
committerMarcin Juszkiewicz <marcin.juszkiewicz@linaro.org>2012-11-29 12:00:22 +0100
commit2bd1f7b104c5a46b3a41ccb1fd81460a336c40d4 (patch)
treee69b03b8175f80f2cdaabd3d30ca5984b8861539 /meta/lib
parent38a761323f480f7d1498afdbf3767f56d5119ce4 (diff)
downloadopenembedded-core-contrib-2bd1f7b104c5a46b3a41ccb1fd81460a336c40d4.tar.gz
multilib/clsextend: Improve handling of regexps in PACKAGES_DYNAMIC
Now that PACKAGES_DYNAMIC is more standardised, starting with ^ anchors, the variable manipulations performed by clsextend for multilib don't work. This patch at least improves it to hack around the problem and enable mulitlib builds to work again. If this code doesn't do the right thing, the recipe is free to override the variable with the correct multilib case. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib')
-rw-r--r--meta/lib/oe/classextend.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/meta/lib/oe/classextend.py b/meta/lib/oe/classextend.py
index 86b1e8a554..857a6c97ef 100644
--- a/meta/lib/oe/classextend.py
+++ b/meta/lib/oe/classextend.py
@@ -33,6 +33,22 @@ class ClassExtender(object):
self.d.setVar(varname, newdata)
return newdata
+ def map_regexp_variable(self, varname, setvar = True):
+ var = self.d.getVar(varname, True)
+ if not var:
+ return ""
+ var = var.split()
+ newvar = []
+ for v in var:
+ if v.startswith("^"):
+ newvar.append("^" + self.extname + "-" + v[1:])
+ else:
+ newvar.append(self.extend_name(v))
+ newdata = " ".join(newvar)
+ if setvar:
+ self.d.setVar(varname, newdata)
+ return newdata
+
def map_depends(self, dep):
if dep.endswith(("-native", "-native-runtime")):
return dep