summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/multilib.bbclass2
-rw-r--r--meta/lib/oe/classextend.py16
2 files changed, 17 insertions, 1 deletions
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass
index eaaad5fa62..3824f3b117 100644
--- a/meta/classes/multilib.bbclass
+++ b/meta/classes/multilib.bbclass
@@ -75,7 +75,7 @@ python __anonymous () {
75 clsextend.map_depends_variable("DEPENDS") 75 clsextend.map_depends_variable("DEPENDS")
76 clsextend.map_packagevars() 76 clsextend.map_packagevars()
77 clsextend.map_variable("PROVIDES") 77 clsextend.map_variable("PROVIDES")
78 clsextend.map_variable("PACKAGES_DYNAMIC") 78 clsextend.map_regexp_variable("PACKAGES_DYNAMIC")
79 clsextend.map_variable("PACKAGE_INSTALL") 79 clsextend.map_variable("PACKAGE_INSTALL")
80 clsextend.map_variable("INITSCRIPT_PACKAGES") 80 clsextend.map_variable("INITSCRIPT_PACKAGES")
81} 81}
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):
33 self.d.setVar(varname, newdata) 33 self.d.setVar(varname, newdata)
34 return newdata 34 return newdata
35 35
36 def map_regexp_variable(self, varname, setvar = True):
37 var = self.d.getVar(varname, True)
38 if not var:
39 return ""
40 var = var.split()
41 newvar = []
42 for v in var:
43 if v.startswith("^"):
44 newvar.append("^" + self.extname + "-" + v[1:])
45 else:
46 newvar.append(self.extend_name(v))
47 newdata = " ".join(newvar)
48 if setvar:
49 self.d.setVar(varname, newdata)
50 return newdata
51
36 def map_depends(self, dep): 52 def map_depends(self, dep):
37 if dep.endswith(("-native", "-native-runtime")): 53 if dep.endswith(("-native", "-native-runtime")):
38 return dep 54 return dep