From: Mikko Rapeli <mikko.rapeli@linaro.org>
To: openembedded-core@lists.openembedded.org
Cc: Mikko Rapeli <mikko.rapeli@linaro.org>
Subject: [PATCH v9 02/11] wic bootimg-efi.py: keep timestamps and add debug prints
Date: Thu, 17 Oct 2024 11:45:43 +0300 [thread overview]
Message-ID: <20241017084552.182136-3-mikko.rapeli@linaro.org> (raw)
In-Reply-To: <20241017084552.182136-1-mikko.rapeli@linaro.org>
Keep timestamps etc to help build reproducibility.
Add prints to see what is being copied to ESP partition.
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
---
scripts/lib/wic/plugins/source/bootimg-efi.py | 49 ++++++++++++-------
1 file changed, 30 insertions(+), 19 deletions(-)
diff --git a/scripts/lib/wic/plugins/source/bootimg-efi.py b/scripts/lib/wic/plugins/source/bootimg-efi.py
index 7cc5131541..d00f5428da 100644
--- a/scripts/lib/wic/plugins/source/bootimg-efi.py
+++ b/scripts/lib/wic/plugins/source/bootimg-efi.py
@@ -43,16 +43,18 @@ class BootimgEFIPlugin(SourcePlugin):
if initrd:
initrds = initrd.split(';')
for rd in initrds:
- cp_cmd = "cp %s/%s %s" % (bootimg_dir, rd, hdddir)
- exec_cmd(cp_cmd, True)
+ cp_cmd = "cp -v -p %s/%s %s" % (bootimg_dir, rd, hdddir)
+ out = exec_cmd(cp_cmd, True)
+ logger.debug("initrd files:\n%s" % (out))
else:
logger.debug("Ignoring missing initrd")
if dtb:
if ';' in dtb:
raise WicError("Only one DTB supported, exiting")
- cp_cmd = "cp %s/%s %s" % (bootimg_dir, dtb, hdddir)
- exec_cmd(cp_cmd, True)
+ cp_cmd = "cp -v -p %s/%s %s" % (bootimg_dir, dtb, hdddir)
+ out = exec_cmd(cp_cmd, True)
+ logger.debug("dtb files:\n%s" % (out))
@classmethod
def do_configure_grubefi(cls, hdddir, creator, cr_workdir, source_params):
@@ -150,6 +152,7 @@ class BootimgEFIPlugin(SourcePlugin):
"%s/hdd/boot/loader/loader.conf", cr_workdir)
cfg = open("%s/hdd/boot/loader/loader.conf" % cr_workdir, "w")
cfg.write(loader_conf)
+ logger.debug("loader.conf:\n%s" % (loader_conf))
cfg.close()
configfile = creator.ks.bootloader.configfile
@@ -401,30 +404,33 @@ class BootimgEFIPlugin(SourcePlugin):
exec_native_cmd(objcopy_cmd, native_sysroot)
else:
if source_params.get('install-kernel-into-boot-dir') != 'false':
- install_cmd = "install -m 0644 %s/%s %s/%s" % \
+ install_cmd = "install -v -p -m 0644 %s/%s %s/%s" % \
(staging_kernel_dir, kernel, hdddir, kernel)
- exec_cmd(install_cmd)
+ out = exec_cmd(install_cmd)
+ logger.debug("Installed kernel files:\n%s" % out)
if get_bitbake_var("IMAGE_EFI_BOOT_FILES"):
for src_path, dst_path in cls.install_task:
- install_cmd = "install -m 0644 -D %s %s" \
+ install_cmd = "install -v -p -m 0644 -D %s %s" \
% (os.path.join(kernel_dir, src_path),
os.path.join(hdddir, dst_path))
- exec_cmd(install_cmd)
+ out = exec_cmd(install_cmd)
+ logger.debug("Installed IMAGE_EFI_BOOT_FILES:\n%s" % out)
try:
if source_params['loader'] == 'grub-efi':
shutil.copyfile("%s/hdd/boot/EFI/BOOT/grub.cfg" % cr_workdir,
"%s/grub.cfg" % cr_workdir)
for mod in [x for x in os.listdir(kernel_dir) if x.startswith("grub-efi-")]:
- cp_cmd = "cp %s/%s %s/EFI/BOOT/%s" % (kernel_dir, mod, hdddir, mod[9:])
+ cp_cmd = "cp -v -p %s/%s %s/EFI/BOOT/%s" % (kernel_dir, mod, hdddir, mod[9:])
exec_cmd(cp_cmd, True)
shutil.move("%s/grub.cfg" % cr_workdir,
"%s/hdd/boot/EFI/BOOT/grub.cfg" % cr_workdir)
elif source_params['loader'] == 'systemd-boot':
for mod in [x for x in os.listdir(kernel_dir) if x.startswith("systemd-")]:
- cp_cmd = "cp %s/%s %s/EFI/BOOT/%s" % (kernel_dir, mod, hdddir, mod[8:])
- exec_cmd(cp_cmd, True)
+ cp_cmd = "cp -v -p %s/%s %s/EFI/BOOT/%s" % (kernel_dir, mod, hdddir, mod[8:])
+ out = exec_cmd(cp_cmd, True)
+ logger.debug("systemd-boot files:\n%s" % out)
elif source_params['loader'] == 'uefi-kernel':
kernel = get_bitbake_var("KERNEL_IMAGETYPE")
if not kernel:
@@ -445,8 +451,9 @@ class BootimgEFIPlugin(SourcePlugin):
raise WicError("UEFI stub kernel is incompatible with target %s" % target)
for mod in [x for x in os.listdir(kernel_dir) if x.startswith(kernel)]:
- cp_cmd = "cp %s/%s %s/EFI/BOOT/%s" % (kernel_dir, mod, hdddir, kernel_efi_image)
- exec_cmd(cp_cmd, True)
+ cp_cmd = "cp -v -p %s/%s %s/EFI/BOOT/%s" % (kernel_dir, mod, hdddir, kernel_efi_image)
+ out = exec_cmd(cp_cmd, True)
+ logger.debug("uefi-kernel files:\n%s" % out)
else:
raise WicError("unrecognized bootimg-efi loader: %s" %
source_params['loader'])
@@ -455,13 +462,15 @@ class BootimgEFIPlugin(SourcePlugin):
startup = os.path.join(kernel_dir, "startup.nsh")
if os.path.exists(startup):
- cp_cmd = "cp %s %s/" % (startup, hdddir)
- exec_cmd(cp_cmd, True)
+ cp_cmd = "cp -v -p %s %s/" % (startup, hdddir)
+ out = exec_cmd(cp_cmd, True)
+ logger.debug("startup files:\n%s" % out)
for paths in part.include_path or []:
for path in paths:
- cp_cmd = "cp -r %s %s/" % (path, hdddir)
+ cp_cmd = "cp -v -p -r %s %s/" % (path, hdddir)
exec_cmd(cp_cmd, True)
+ logger.debug("include_path files:\n%s" % out)
du_cmd = "du -bks %s" % hdddir
out = exec_cmd(du_cmd)
@@ -489,12 +498,14 @@ class BootimgEFIPlugin(SourcePlugin):
label = part.label if part.label else "ESP"
- dosfs_cmd = "mkdosfs -n %s -i %s -C %s %d" % \
+ dosfs_cmd = "mkdosfs -v -n %s -i %s -C %s %d" % \
(label, part.fsuuid, bootimg, blocks)
exec_native_cmd(dosfs_cmd, native_sysroot)
+ logger.debug("mkdosfs:\n%s" % (str(out)))
- mcopy_cmd = "mcopy -i %s -s %s/* ::/" % (bootimg, hdddir)
- exec_native_cmd(mcopy_cmd, native_sysroot)
+ mcopy_cmd = "mcopy -v -p -i %s -s %s/* ::/" % (bootimg, hdddir)
+ out = exec_native_cmd(mcopy_cmd, native_sysroot)
+ logger.debug("mcopy:\n%s" % (str(out)))
chmod_cmd = "chmod 644 %s" % bootimg
exec_cmd(chmod_cmd)
--
2.34.1
next prev parent reply other threads:[~2024-10-17 8:46 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-17 8:45 [PATCH v9 00/11] systemd uki support Mikko Rapeli
2024-10-17 8:45 ` [PATCH v9 01/11] uki.bbclass: add class for building Unified Kernel Images (UKI) Mikko Rapeli
2024-10-17 8:45 ` Mikko Rapeli [this message]
2024-10-17 8:45 ` [PATCH v9 03/11] wic bootimg-efi.py: change UKI support from wic plugin to uki.bbclass Mikko Rapeli
2024-10-17 8:45 ` [PATCH v9 04/11] oeqa selftest uki.py: add tests for uki.bbclass Mikko Rapeli
2024-10-17 8:45 ` [PATCH v9 05/11] oeqa selftest efibootpartition.py: add TEST_RUNQEMUPARAMS to runqemu Mikko Rapeli
2024-10-17 8:45 ` [PATCH v9 06/11] oeqa selftest efibootpartition.py: remove systemd-boot from grub-efi test Mikko Rapeli
2024-10-17 8:45 ` [PATCH v9 07/11] oeqa selftest wic.py: add TEST_RUNQEMUPARAMS to runqemu Mikko Rapeli
2024-10-17 8:45 ` [PATCH v9 08/11] oeqa selftest wic.py: support UKIs via uki.bbclass Mikko Rapeli
2024-10-17 8:45 ` [PATCH v9 09/11] oeqa data.py: add skipIfNotBuildArch decorator Mikko Rapeli
2024-10-17 8:45 ` [PATCH v9 10/11] oeqa selftest wic.py: mark efi tests to run on x86_64 build host only Mikko Rapeli
2024-10-17 8:45 ` [PATCH v9 11/11] oeqa selftest wic.py: fix missing ext4 image Mikko Rapeli
2024-10-22 10:26 ` [OE-core] [PATCH v9 00/11] systemd uki support Ross Burton
2024-10-22 19:34 ` Mikko Rapeli
2024-10-22 19:54 ` Richard Purdie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241017084552.182136-3-mikko.rapeli@linaro.org \
--to=mikko.rapeli@linaro.org \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.