summaryrefslogtreecommitdiffstats
path: root/meta/classes/staging.bbclass
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2018-02-27 17:22:32 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-03-01 22:13:55 +0000
commit3eff72cc1f5989144f8d2cc93fab69e4d3d80f8c (patch)
treef6a23e388a034f9836b1852eb5cf1f39dfdc6fca /meta/classes/staging.bbclass
parent6a07697a6dcb5e77aed4b01df4b30024c4b3d0fe (diff)
downloadpoky-3eff72cc1f5989144f8d2cc93fab69e4d3d80f8c.tar.gz
sstatesig/staging/package_manager: Create common sstate manifest code
Create a common function for locating task manifest files rather than several implementations with missing pieces. (From OE-Core rev: 68150bac7444f089f19c789e9f6602d59f605d7a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/staging.bbclass')
-rw-r--r--meta/classes/staging.bbclass36
1 files changed, 5 insertions, 31 deletions
diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index 1b9e84d97e..3fcbc9f15d 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -470,40 +470,14 @@ python extend_recipe_sysroot() {
470 470
471 os.symlink(c + "." + taskhash, depdir + "/" + c) 471 os.symlink(c + "." + taskhash, depdir + "/" + c)
472 472
473 d2 = d 473 manifest, d2 = oe.sstatesig.find_sstate_manifest(c, setscenedeps[dep][2], "populate_sysroot", d, multilibs)
474 destsysroot = recipesysroot 474 destsysroot = d2.getVar("RECIPE_SYSROOT")
475 variant = ''
476 if setscenedeps[dep][2].startswith("virtual:multilib"):
477 variant = setscenedeps[dep][2].split(":")[2]
478 if variant != current_variant:
479 if variant not in multilibs:
480 multilibs[variant] = get_multilib_datastore(variant, d)
481 d2 = multilibs[variant]
482 destsysroot = d2.getVar("RECIPE_SYSROOT")
483 475
484 native = False 476 native = False
485 if c.endswith("-native"): 477 if c.endswith("-native") or "-cross-" in c or "-crosssdk" in c:
486 manifest = d2.expand("${SSTATE_MANIFESTS}/manifest-${BUILD_ARCH}-%s.populate_sysroot" % c)
487 native = True 478 native = True
488 elif c.startswith("nativesdk-"): 479
489 manifest = d2.expand("${SSTATE_MANIFESTS}/manifest-${SDK_ARCH}_${SDK_OS}-%s.populate_sysroot" % c) 480 if manifest:
490 elif "-cross-" in c:
491 manifest = d2.expand("${SSTATE_MANIFESTS}/manifest-${BUILD_ARCH}_${TARGET_ARCH}-%s.populate_sysroot" % c)
492 native = True
493 elif "-crosssdk" in c:
494 manifest = d2.expand("${SSTATE_MANIFESTS}/manifest-${BUILD_ARCH}_${SDK_ARCH}_${SDK_OS}-%s.populate_sysroot" % c)
495 native = True
496 else:
497 pkgarchs = ['${MACHINE_ARCH}']
498 pkgarchs = pkgarchs + list(reversed(d2.getVar("PACKAGE_EXTRA_ARCHS").split()))
499 pkgarchs.append('allarch')
500 for pkgarch in pkgarchs:
501 manifest = d2.expand("${SSTATE_MANIFESTS}/manifest-%s-%s.populate_sysroot" % (pkgarch, c))
502 if os.path.exists(manifest):
503 break
504 if not os.path.exists(manifest):
505 bb.warn("Manifest %s not found?" % manifest)
506 else:
507 newmanifest = collections.OrderedDict() 481 newmanifest = collections.OrderedDict()
508 if native: 482 if native:
509 fm = fixme['native'] 483 fm = fixme['native']