summaryrefslogtreecommitdiffstats
path: root/meta/classes/multilib_global.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes/multilib_global.bbclass')
-rw-r--r--meta/classes/multilib_global.bbclass25
1 files changed, 12 insertions, 13 deletions
diff --git a/meta/classes/multilib_global.bbclass b/meta/classes/multilib_global.bbclass
index 6095d278dd..973ac9130b 100644
--- a/meta/classes/multilib_global.bbclass
+++ b/meta/classes/multilib_global.bbclass
@@ -171,24 +171,23 @@ def preferred_ml_updates(d):
171 d.appendVar("SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS", " " + " ".join(extras)) 171 d.appendVar("SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS", " " + " ".join(extras))
172 172
173python multilib_virtclass_handler_vendor () { 173python multilib_virtclass_handler_vendor () {
174 if isinstance(e, bb.event.ConfigParsed): 174 for v in d.getVar("MULTILIB_VARIANTS").split():
175 for v in e.data.getVar("MULTILIB_VARIANTS").split(): 175 if d.getVar("TARGET_VENDOR:virtclass-multilib-" + v, False) is None:
176 if e.data.getVar("TARGET_VENDOR:virtclass-multilib-" + v, False) is None: 176 d.setVar("TARGET_VENDOR:virtclass-multilib-" + v, d.getVar("TARGET_VENDOR", False) + "ml" + v)
177 e.data.setVar("TARGET_VENDOR:virtclass-multilib-" + v, e.data.getVar("TARGET_VENDOR", False) + "ml" + v) 177 preferred_ml_updates(d)
178 preferred_ml_updates(e.data)
179} 178}
180addhandler multilib_virtclass_handler_vendor 179addhandler multilib_virtclass_handler_vendor
181multilib_virtclass_handler_vendor[eventmask] = "bb.event.ConfigParsed" 180multilib_virtclass_handler_vendor[eventmask] = "bb.event.ConfigParsed"
182 181
183python multilib_virtclass_handler_global () { 182python multilib_virtclass_handler_global () {
184 variant = e.data.getVar("BBEXTENDVARIANT") 183 variant = d.getVar("BBEXTENDVARIANT")
185 if variant: 184 if variant:
186 return 185 return
187 186
188 non_ml_recipes = d.getVar('NON_MULTILIB_RECIPES').split() 187 non_ml_recipes = d.getVar('NON_MULTILIB_RECIPES').split()
189 188
190 if bb.data.inherits_class('kernel', e.data) or \ 189 if bb.data.inherits_class('kernel', d) or \
191 bb.data.inherits_class('module-base', e.data) or \ 190 bb.data.inherits_class('module-base', d) or \
192 d.getVar('BPN') in non_ml_recipes: 191 d.getVar('BPN') in non_ml_recipes:
193 192
194 # We need to avoid expanding KERNEL_VERSION which we can do by deleting it 193 # We need to avoid expanding KERNEL_VERSION which we can do by deleting it
@@ -197,7 +196,7 @@ python multilib_virtclass_handler_global () {
197 localdata.delVar("KERNEL_VERSION") 196 localdata.delVar("KERNEL_VERSION")
198 localdata.delVar("KERNEL_VERSION_PKG_NAME") 197 localdata.delVar("KERNEL_VERSION_PKG_NAME")
199 198
200 variants = (e.data.getVar("MULTILIB_VARIANTS") or "").split() 199 variants = (d.getVar("MULTILIB_VARIANTS") or "").split()
201 200
202 import oe.classextend 201 import oe.classextend
203 clsextends = [] 202 clsextends = []
@@ -208,22 +207,22 @@ python multilib_virtclass_handler_global () {
208 origprovs = provs = localdata.getVar("PROVIDES") or "" 207 origprovs = provs = localdata.getVar("PROVIDES") or ""
209 for clsextend in clsextends: 208 for clsextend in clsextends:
210 provs = provs + " " + clsextend.map_variable("PROVIDES", setvar=False) 209 provs = provs + " " + clsextend.map_variable("PROVIDES", setvar=False)
211 e.data.setVar("PROVIDES", provs) 210 d.setVar("PROVIDES", provs)
212 211
213 # Process RPROVIDES 212 # Process RPROVIDES
214 origrprovs = rprovs = localdata.getVar("RPROVIDES") or "" 213 origrprovs = rprovs = localdata.getVar("RPROVIDES") or ""
215 for clsextend in clsextends: 214 for clsextend in clsextends:
216 rprovs = rprovs + " " + clsextend.map_variable("RPROVIDES", setvar=False) 215 rprovs = rprovs + " " + clsextend.map_variable("RPROVIDES", setvar=False)
217 if rprovs.strip(): 216 if rprovs.strip():
218 e.data.setVar("RPROVIDES", rprovs) 217 d.setVar("RPROVIDES", rprovs)
219 218
220 # Process RPROVIDES:${PN}... 219 # Process RPROVIDES:${PN}...
221 for pkg in (e.data.getVar("PACKAGES") or "").split(): 220 for pkg in (d.getVar("PACKAGES") or "").split():
222 origrprovs = rprovs = localdata.getVar("RPROVIDES:%s" % pkg) or "" 221 origrprovs = rprovs = localdata.getVar("RPROVIDES:%s" % pkg) or ""
223 for clsextend in clsextends: 222 for clsextend in clsextends:
224 rprovs = rprovs + " " + clsextend.map_variable("RPROVIDES:%s" % pkg, setvar=False) 223 rprovs = rprovs + " " + clsextend.map_variable("RPROVIDES:%s" % pkg, setvar=False)
225 rprovs = rprovs + " " + clsextend.extname + "-" + pkg 224 rprovs = rprovs + " " + clsextend.extname + "-" + pkg
226 e.data.setVar("RPROVIDES:%s" % pkg, rprovs) 225 d.setVar("RPROVIDES:%s" % pkg, rprovs)
227} 226}
228 227
229addhandler multilib_virtclass_handler_global 228addhandler multilib_virtclass_handler_global