summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuillaume Deroire <guillaume.deroire@hach.com>2022-09-07 22:56:59 +0200
committergithub-actions[bot] <github-actions[bot]@users.noreply.github.com>2022-10-05 16:49:07 +0000
commit0f8777c13d11aae58bb2796dda40749d4e47106e (patch)
tree1c97ecccfa057881d5114a6bd5d505e4bd0d2f85
parent28ae8f75e667becda70cc499df5e26d9163af4b6 (diff)
downloadmeta-freescale-0f8777c13d11aae58bb2796dda40749d4e47106e.tar.gz
classes/fsl-dynamic-packagearch: Add multilib supportbackport-1213-to-kirkstone
Currently, the class doesn't support multilib image/SDK generation for packages built for MACHINE_SOCARCH with MULTILIB support and this commit fixes this. To reproduce the error, add to local.conf: require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE:virtclass-multilib-lib32 = "armv7athf-neon-vfpv4" IMAGE_INSTALL_append = "lib32-libusb1" Build image with: 'bitbake core-image-minimal' The build will fail during do_rootfs/do_populate_sdk on lib32-wayland-protocols package. (cherry picked from commit 61b81118e3cbc699f78e22752f5c5938a8b09d77)
-rw-r--r--classes/fsl-dynamic-packagearch.bbclass11
1 files changed, 11 insertions, 0 deletions
diff --git a/classes/fsl-dynamic-packagearch.bbclass b/classes/fsl-dynamic-packagearch.bbclass
index 9fcf37be..6cb0c0a9 100644
--- a/classes/fsl-dynamic-packagearch.bbclass
+++ b/classes/fsl-dynamic-packagearch.bbclass
@@ -54,6 +54,17 @@ python __anonymous () {
54 if not machine_socarch in cur_package_archs: 54 if not machine_socarch in cur_package_archs:
55 d.appendVar("PACKAGE_EXTRA_ARCHS", " %s" % machine_socarch) 55 d.appendVar("PACKAGE_EXTRA_ARCHS", " %s" % machine_socarch)
56 56
57 multilib_variants = (d.getVar("MULTILIB_VARIANTS") or "").split()
58 for variant in multilib_variants:
59 defaulttune = d.getVar("DEFAULTTUNE:virtclass-multilib-" + variant)
60 if defaulttune:
61 package_extra_archs_tune_archs = (d.getVar("PACKAGE_EXTRA_ARCHS:tune-" + defaulttune) or "").split()
62 arch_suffix = d.getVar("MACHINE_SOCARCH_SUFFIX")
63 for arch in package_extra_archs_tune_archs:
64 socarch = arch + arch_suffix
65 if not socarch in cur_package_archs:
66 d.appendVar("PACKAGE_EXTRA_ARCHS", " %s" % socarch )
67
57 if d.getVar("TUNE_ARCH") == "arm": 68 if d.getVar("TUNE_ARCH") == "arm":
58 # For ARM we have two possible machine_socarch values, one for the arm and one for the thumb instruction set 69 # For ARM we have two possible machine_socarch values, one for the arm and one for the thumb instruction set
59 # add the other value to extra archs also, so that a image recipe searches both for packages. 70 # add the other value to extra archs also, so that a image recipe searches both for packages.