From: Trevor Woerner <twoerner@gmail.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH v5 2/6] wic: add a shared helper tool list
Date: Fri, 31 Jul 2026 11:28:06 -0400 [thread overview]
Message-ID: <20260731152810.2641327-3-twoerner@gmail.com> (raw)
In-Reply-To: <20260731152810.2641327-1-twoerner@gmail.com>
The tools wic shells out to are listed in both wic-tools and
image_types_wic.bbclass, and the copies have drifted. Add
conf/wic-helper-tools.inc as the single source of truth.
Only wic-tools staged tar-native and util-linux-native before; images
now get them too.
AI-Generated: codex/claude-opus 5 (xhigh)
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
---
changes in v5:
- new in v5
---
meta/classes-recipe/image_types_wic.bbclass | 5 +++--
meta/conf/wic-helper-tools.inc | 16 ++++++++++++++++
meta/recipes-core/meta/wic-tools.bb | 7 +++----
3 files changed, 22 insertions(+), 6 deletions(-)
create mode 100644 meta/conf/wic-helper-tools.inc
diff --git a/meta/classes-recipe/image_types_wic.bbclass b/meta/classes-recipe/image_types_wic.bbclass
index ea8c1c94ca2f..3f25b7912b26 100644
--- a/meta/classes-recipe/image_types_wic.bbclass
+++ b/meta/classes-recipe/image_types_wic.bbclass
@@ -112,14 +112,15 @@ do_image_wic[cleandirs] = "${WORKDIR}/build-wic"
USING_WIC = "${@bb.utils.contains_any('IMAGE_FSTYPES', 'wic ' + ' '.join('wic.%s' % c for c in '${CONVERSIONTYPES}'.split()), '1', '', d)}"
WKS_FILE_CHECKSUM = "${@wks_checksums(d.getVar('WKS_FILES').split(), d.getVar('WKS_SEARCH_PATH')) if '${USING_WIC}' else ''}"
do_image_wic[file-checksums] += "${WKS_FILE_CHECKSUM}"
-do_image_wic[depends] += "${@' '.join('%s-native:do_populate_sysroot' % r for r in ('wic', 'parted', 'gptfdisk', 'dosfstools', 'mtools'))}"
+
+require conf/wic-helper-tools.inc
+do_image_wic[depends] += "${@' '.join('%s:do_populate_sysroot' % r for r in ('wic-native ' + d.getVar('WIC_HELPER_TOOLS_DEPENDS')).split())}"
# We ensure all artfacts are deployed (e.g virtual/bootloader)
do_image_wic[recrdeptask] += "do_deploy"
do_image_wic[deptask] += "do_image_complete"
WKS_FILE_DEPENDS_DEFAULT = '${@bb.utils.contains_any("BUILD_ARCH", [ 'x86_64', 'i686' ], "syslinux-native", "",d)}'
-WKS_FILE_DEPENDS_DEFAULT += "wic-native bmaptool-native cdrtools-native btrfs-tools-native squashfs-tools-native e2fsprogs-native erofs-utils-native"
# Unified kernel images need objcopy
WKS_FILE_DEPENDS_DEFAULT += "virtual/cross-binutils"
WKS_FILE_DEPENDS_BOOTLOADERS = ""
diff --git a/meta/conf/wic-helper-tools.inc b/meta/conf/wic-helper-tools.inc
new file mode 100644
index 000000000000..f3b2b698e2df
--- /dev/null
+++ b/meta/conf/wic-helper-tools.inc
@@ -0,0 +1,16 @@
+WIC_HELPER_TOOLS ?= "\
+ parted \
+ gptfdisk \
+ dosfstools \
+ mtools \
+ bmaptool \
+ btrfs-tools \
+ squashfs-tools \
+ e2fsprogs \
+ util-linux \
+ tar \
+ erofs-utils \
+"
+
+WIC_HELPER_TOOLS_NATIVE_ONLY ?= "cdrtools"
+WIC_HELPER_TOOLS_DEPENDS = "${@' '.join('%s-native' % t for t in (d.getVar('WIC_HELPER_TOOLS') + ' ' + d.getVar('WIC_HELPER_TOOLS_NATIVE_ONLY')).split())}"
diff --git a/meta/recipes-core/meta/wic-tools.bb b/meta/recipes-core/meta/wic-tools.bb
index c6e3d1b419dc..c3c39cec011d 100644
--- a/meta/recipes-core/meta/wic-tools.bb
+++ b/meta/recipes-core/meta/wic-tools.bb
@@ -2,12 +2,11 @@ SUMMARY = "A meta recipe to build native tools used by wic."
LICENSE = "MIT"
+require conf/wic-helper-tools.inc
DEPENDS = "\
wic-native \
- parted-native gptfdisk-native dosfstools-native \
- mtools-native bmaptool-native grub-native cdrtools-native \
- btrfs-tools-native squashfs-tools-native pseudo-native \
- e2fsprogs-native util-linux-native tar-native erofs-utils-native \
+ ${WIC_HELPER_TOOLS_DEPENDS} \
+ grub-native pseudo-native \
virtual/cross-binutils \
"
DEPENDS:append:x86 = " syslinux-native"
--
2.50.0.173.g8b6f19ccfc3a
next prev parent reply other threads:[~2026-07-31 15:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-31 15:28 [PATCH v5 0/6] wic: ship the tools it invokes Trevor Woerner
2026-07-31 15:28 ` [PATCH v5 1/6] wic-tools: drop the target bootloader firmware Trevor Woerner
2026-07-31 15:28 ` Trevor Woerner [this message]
2026-07-31 15:28 ` [PATCH v5 3/6] wic: add runtime dependencies on the tools it invokes Trevor Woerner
2026-07-31 15:28 ` [PATCH v5 4/6] oeqa/selftest/wic: drop dead COREBASE/scripts wic lookup Trevor Woerner
2026-07-31 15:28 ` [PATCH v5 5/6] oeqa/selftest/wic: drop redundant per-test PATH overrides Trevor Woerner
2026-07-31 15:28 ` [PATCH v5 6/6] wic: gate syslinux-native on the target, not the build host Trevor Woerner
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=20260731152810.2641327-3-twoerner@gmail.com \
--to=twoerner@gmail.com \
--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.