diff options
| author | Mike Crowe <mac@mcrowe.com> | 2025-10-20 17:03:53 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-10-27 11:37:43 +0000 |
| commit | 9ef3f820bba8957ebd5d155789611822fee8e62f (patch) | |
| tree | d54f745c53c25924597a76e4ed4df2794944ee9a | |
| parent | 2b871830dcfa7f9fdef89e113e6919d0d82fcfd2 (diff) | |
| download | poky-9ef3f820bba8957ebd5d155789611822fee8e62f.tar.gz | |
multilib.bbclass: Filter ROOTFS_RO_UNNEEDED to fix uninstallation
When building an entire multilib image (e.g. lib32-core-image-minimal)
we need to ensure that the unneeded packages in ROOTFS_RO_UNNEEDED get
the multilib prefix applied before they are compared against the list of
installed packages inside Rootfs._uninstall_unneeded() to decide whether
they need to be installed.
Before this change with local.conf containing:
MACHINE = qemuarm64
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE:virtclass-multilib-lib32 = "armv7at-neon"
IMAGE_FEATURES = "read-only-rootfs"
running:
bitbake lib32-core-image-minimal
tar tavf tmp/deploy/images/qemuarm64/lib32-core-image-minimal-qemuarm64.rootfs.tar.zst|grep postinst
shows three files:
-rwxr-xr-x 0/0 25 2018-03-09 12:34 ./etc/init.d/run-postinsts
lrwxrwxrwx 0/0 0 2018-03-09 12:34 ./etc/rcS.d/S99run-postinsts -> ../init.d/run-postinsts
-rwxr-xr-x 0/0 2153 2018-03-09 12:34 ./usr/sbin/run-postinsts
whereas with this change there are no matching files.
(From OE-Core rev: 77c35362fb13c75145f9f999216b3d879ab18b77)
Signed-off-by: Mike Crowe <mac@mcrowe.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/classes/multilib.bbclass | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass index 677dbc854a..15056dac4d 100644 --- a/meta/classes/multilib.bbclass +++ b/meta/classes/multilib.bbclass | |||
| @@ -116,6 +116,7 @@ python __anonymous () { | |||
| 116 | clsextend = oe.classextend.ClassExtender(variant, prefixes, d) | 116 | clsextend = oe.classextend.ClassExtender(variant, prefixes, d) |
| 117 | clsextend.set_filter("PACKAGE_INSTALL", deps=False) | 117 | clsextend.set_filter("PACKAGE_INSTALL", deps=False) |
| 118 | clsextend.set_filter("LINGUAS_INSTALL", deps=False) | 118 | clsextend.set_filter("LINGUAS_INSTALL", deps=False) |
| 119 | clsextend.set_filter("ROOTFS_RO_UNNEEDED", deps=False) | ||
| 119 | clsextend.set_filter("RDEPENDS", deps=True) | 120 | clsextend.set_filter("RDEPENDS", deps=True) |
| 120 | pinstall = d.getVar("LINGUAS_INSTALL") + " " + d.getVar("PACKAGE_INSTALL") | 121 | pinstall = d.getVar("LINGUAS_INSTALL") + " " + d.getVar("PACKAGE_INSTALL") |
| 121 | d.setVar("PACKAGE_INSTALL", pinstall) | 122 | d.setVar("PACKAGE_INSTALL", pinstall) |
