diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-03-08 10:12:45 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-03-09 21:06:37 +0000 |
commit | a5352932d927a164b460a2e117bfb1bd9aeb345a (patch) | |
tree | aaf77638b9d39d1fb9ae94413d7800a7a60586c7 /meta | |
parent | ad3dfac07f856917434deb073fe9c8a788d4c21d (diff) | |
download | poky-a5352932d927a164b460a2e117bfb1bd9aeb345a.tar.gz |
staging/multilib: Fix manifest corruption
The previous fix wasn't enough to address all the possible ways the
manifests might be ordered. Rework the previous fix so it is tied
to the multilib cross-canadian code which is causing the problem.
RECIPE_SYSROOT_MANIFEST_SUBDIR is not documented as I'd hope nobody
ever needs to use this outside the core multilib code.
(From OE-Core rev: beab42e00713880cd95a04729c892f8662fbcbed)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes-global/staging.bbclass | 7 | ||||
-rw-r--r-- | meta/classes/multilib.bbclass | 1 |
2 files changed, 5 insertions, 3 deletions
diff --git a/meta/classes-global/staging.bbclass b/meta/classes-global/staging.bbclass index e6d0d1d55c..a058d344fd 100644 --- a/meta/classes-global/staging.bbclass +++ b/meta/classes-global/staging.bbclass | |||
@@ -275,9 +275,10 @@ python extend_recipe_sysroot() { | |||
275 | pn = d.getVar("PN") | 275 | pn = d.getVar("PN") |
276 | stagingdir = d.getVar("STAGING_DIR") | 276 | stagingdir = d.getVar("STAGING_DIR") |
277 | sharedmanifests = d.getVar("COMPONENTS_DIR") + "/manifests" | 277 | sharedmanifests = d.getVar("COMPONENTS_DIR") + "/manifests" |
278 | mlprefix = d.getVar("MLPREFIX") | 278 | # only needed by multilib cross-canadian since it redefines RECIPE_SYSROOT |
279 | if mlprefix: | 279 | manifestprefix = d.getVar("RECIPE_SYSROOT_MANIFEST_SUBDIR") |
280 | sharedmanifests = sharedmanifests + "/" + mlprefix | 280 | if manifestprefix: |
281 | sharedmanifests = sharedmanifests + "/" + manifestprefix | ||
281 | recipesysroot = d.getVar("RECIPE_SYSROOT") | 282 | recipesysroot = d.getVar("RECIPE_SYSROOT") |
282 | recipesysrootnative = d.getVar("RECIPE_SYSROOT_NATIVE") | 283 | recipesysrootnative = d.getVar("RECIPE_SYSROOT_NATIVE") |
283 | 284 | ||
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass index 10a4ef9c37..8a1a51aaba 100644 --- a/meta/classes/multilib.bbclass +++ b/meta/classes/multilib.bbclass | |||
@@ -51,6 +51,7 @@ python multilib_virtclass_handler () { | |||
51 | e.data.setVar("RECIPE_SYSROOT", "${WORKDIR}/recipe-sysroot") | 51 | e.data.setVar("RECIPE_SYSROOT", "${WORKDIR}/recipe-sysroot") |
52 | e.data.setVar("STAGING_DIR_TARGET", "${WORKDIR}/recipe-sysroot") | 52 | e.data.setVar("STAGING_DIR_TARGET", "${WORKDIR}/recipe-sysroot") |
53 | e.data.setVar("STAGING_DIR_HOST", "${WORKDIR}/recipe-sysroot") | 53 | e.data.setVar("STAGING_DIR_HOST", "${WORKDIR}/recipe-sysroot") |
54 | e.data.setVar("RECIPE_SYSROOT_MANIFEST_SUBDIR", "nativesdk-" + variant) | ||
54 | e.data.setVar("MLPREFIX", variant + "-") | 55 | e.data.setVar("MLPREFIX", variant + "-") |
55 | override = ":virtclass-multilib-" + variant | 56 | override = ":virtclass-multilib-" + variant |
56 | e.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + override) | 57 | e.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + override) |