From: Khairul Rohaizzat Jamaluddin <[email protected]>

Due to recent changes in bootimg-efi to include IMAGE_BOOT_FILES,
when both bootimg-partition and bootimg-efi occur in a single .wks
and IMAGE_BOOT_FILES are defined, files listed in IMAGE_BOOT_FILES
will be duplicated in both partition.
Since IMAGE_BOOT_FILES are crucial for bootimg-partition, but
optional for bootimg-efi, hence allow bootimg-efi to have the option
to ignore it.

The new variable, excludeibf, in bootimg-efi.py need to be set in
the .wks file to make use of this feature. Simply remove the
variable from the the .wks file if not needed.
Example:
    part /boot --source bootimg-efi --sourceparams="loader=systemd-boot,
    excludeibf=y" --ondisk sda --label msdos --active --align 1024 --use-uuid

[YOCTO #14011]

Signed-off-by: Khairul Rohaizzat Jamaluddin 
<[email protected]>
---
 scripts/lib/wic/plugins/source/bootimg-efi.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/scripts/lib/wic/plugins/source/bootimg-efi.py 
b/scripts/lib/wic/plugins/source/bootimg-efi.py
index 14c1723..b3c76e2 100644
--- a/scripts/lib/wic/plugins/source/bootimg-efi.py
+++ b/scripts/lib/wic/plugins/source/bootimg-efi.py
@@ -214,6 +214,8 @@ class BootimgEFIPlugin(SourcePlugin):
 
         if get_bitbake_var("IMAGE_BOOT_FILES") is None:
             logger.debug('No boot files defined in IMAGE_BOOT_FILES')
+        elif source_params.get('excludeibf') == 'y':
+            logger.debug('Skipping IMAGE_BOOT_FILES values')
         else:
             boot_files = None
             for (fmt, id) in (("_uuid-%s", part.uuid), ("_label-%s", 
part.label), (None, None)):
@@ -292,7 +294,9 @@ class BootimgEFIPlugin(SourcePlugin):
             (staging_kernel_dir, kernel, hdddir, kernel)
         exec_cmd(install_cmd)
 
-        if get_bitbake_var("IMAGE_BOOT_FILES"):
+        if source_params.get('excludeibf') == 'y':
+            logger.debug('Skipping IMAGE_BOOT_FILES values')
+        elif get_bitbake_var("IMAGE_BOOT_FILES"):
             for src_path, dst_path in cls.install_task:
                 install_cmd = "install -m 0644 -D %s %s" \
                               % (os.path.join(kernel_dir, src_path),
-- 
2.7.4

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#141760): 
https://lists.openembedded.org/g/openembedded-core/message/141760
Mute This Topic: https://lists.openembedded.org/mt/76380555/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub  
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to