summaryrefslogtreecommitdiffstats
path: root/meta/classes/utils.bbclass
diff options
context:
space:
mode:
authorLianhao Lu <lianhao.lu@intel.com>2011-08-16 16:26:49 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-08-17 15:14:56 +0100
commit57bd62ad5c623216b50393841e1e75c867894765 (patch)
treeed020390a1f8c9839b61982d0c0453f60233df81 /meta/classes/utils.bbclass
parentf759bde4f7c3a0f82a0a910df2ead755ae989ac2 (diff)
downloadpoky-57bd62ad5c623216b50393841e1e75c867894765.tar.gz
package(_ipk).bbclass: opkg using ALL_MULTILIB_PACKAGE_ARCHS
[YOCTO #1345] The new variable ALL_MULTILIB_PACKAGE_ARCHS contains all the values of PACKAGE_ARCHS for each multilib variants. The opkg backend now uses this new value insteald of the PACKAGE_ARCHS to update the opkg indexes and to generate the opkg configuration files. This allows the normal packages and multilib packages may be installed into the same rootfs. (From OE-Core rev: b774bf44ef004276da12a83ebd69715c00b596ac) Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/utils.bbclass')
-rw-r--r--meta/classes/utils.bbclass24
1 files changed, 19 insertions, 5 deletions
diff --git a/meta/classes/utils.bbclass b/meta/classes/utils.bbclass
index c66c18449a..56abdd844c 100644
--- a/meta/classes/utils.bbclass
+++ b/meta/classes/utils.bbclass
@@ -352,12 +352,16 @@ def extend_variants(d, var, extend, delim=':'):
352 variants.append(eext[1]) 352 variants.append(eext[1])
353 return " ".join(variants) 353 return " ".join(variants)
354 354
355def all_multilib_tune_values(d, var, unique=True): 355def all_multilib_tune_values(d, var, unique = True, need_split = True, delim = ' '):
356 """Return a string of all ${var} in all multilib tune configuration""" 356 """Return a string of all ${var} in all multilib tune configuration"""
357 values = [] 357 values = []
358 value = d.getVar(var, True) or "" 358 value = d.getVar(var, True) or ""
359 if value != "": 359 if value != "":
360 values.append(value) 360 if need_split:
361 for item in value.split(delim):
362 values.append(item)
363 else:
364 values.append(value)
361 variants = d.getVar("MULTILIB_VARIANTS", True) or "" 365 variants = d.getVar("MULTILIB_VARIANTS", True) or ""
362 for item in variants.split(): 366 for item in variants.split():
363 localdata = bb.data.createCopy(d) 367 localdata = bb.data.createCopy(d)
@@ -366,7 +370,17 @@ def all_multilib_tune_values(d, var, unique=True):
366 bb.data.update_data(localdata) 370 bb.data.update_data(localdata)
367 value = localdata.getVar(var, True) or "" 371 value = localdata.getVar(var, True) or ""
368 if value != "": 372 if value != "":
369 values.append(value) 373 if need_split:
374 for item in value.split(delim):
375 values.append(item)
376 else:
377 values.append(value)
370 if unique: 378 if unique:
371 values = set(values) 379 #we do this to keep order as much as possible
372 return " ".join(values) 380 ret = []
381 for value in values:
382 if not value in ret:
383 ret.append(value)
384 else:
385 ret = values
386 return " ".join(ret)