diff mbox series

syslinux: Allow mtools to be optional

Message ID 20240108202247.767072-1-JPEWhacker@gmail.com
State Accepted, archived
Commit 06da552733091bc8d332bb932c86cbc8362d44b9
Headers show
Series syslinux: Allow mtools to be optional | expand

Commit Message

Joshua Watt Jan. 8, 2024, 8:22 p.m. UTC
Adds a PACKAGECONFIG to syslinux to determine if the mtools version of
the utilities is installed or not. The difference between the two
versions is that the mtools version can be used by any user with write
permission, while the non-mtools can only be used by root.

The syslinux-nomtools package is removed, as it was empty and doesn't
appear to be used anyway

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
 .../syslinux/syslinux_6.04-pre2.bb              | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)
diff mbox series

Patch

diff --git a/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb b/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb
index 1931bfb3c05..332655bdf98 100644
--- a/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb
+++ b/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb
@@ -63,6 +63,10 @@  EXTRA_OEMAKE = " \
 	RANLIB="${RANLIB}" \
 "
 
+# mtools allows non-root users to install syslinux
+PACKAGECONFIG ??= "mtools"
+PACKAGECONFIG[mtools] = ",,,"
+
 #
 # Tasks for native/nativesdk which just build the installer.
 #
@@ -77,10 +81,15 @@  do_compile() {
 do_install() {
 	install -d ${D}${bindir}
 	install \
-		${B}/bios/mtools/syslinux \
 		${B}/bios/extlinux/extlinux \
 		${B}/bios/utils/isohybrid \
 		${D}${bindir}
+
+	if ${@bb.utils.contains("PACKAGECONFIG", "mtools", "true", "false", d)}; then
+		install ${B}/bios/mtools/syslinux ${D}${bindir}
+	else
+		install ${B}/bios/linux/syslinux ${D}${bindir}
+	fi
 }
 
 #
@@ -104,14 +113,12 @@  do_install:class-target() {
 	install -m 644 ${S}/bios/core/ldlinux.bss ${D}${datadir}/syslinux/
 }
 
-PACKAGES += "${PN}-nomtools ${PN}-extlinux ${PN}-mbr ${PN}-chain ${PN}-pxelinux ${PN}-isolinux ${PN}-misc"
+PACKAGES += "${PN}-extlinux ${PN}-mbr ${PN}-chain ${PN}-pxelinux ${PN}-isolinux ${PN}-misc"
 
-RDEPENDS:${PN} += "mtools"
-RDEPENDS:${PN}-nomtools += "libext2fs"
+RDEPENDS:${PN} += "${@bb.utils.contains("PACKAGECONFIG", "mtools", "mtools", "", d)}"
 RDEPENDS:${PN}-misc += "perl"
 
 FILES:${PN} = "${bindir}/syslinux"
-FILES:${PN}-nomtools = "${bindir}/syslinux-nomtools"
 FILES:${PN}-extlinux = "${sbindir}/extlinux"
 FILES:${PN}-mbr = "${datadir}/${BPN}/mbr.bin"
 FILES:${PN}-chain = "${datadir}/${BPN}/chain.c32"