u-boot: Add mkenvimage tool
PATCH v5 1/1 u-boot: Add mkenvimage tool
This utility is used for creation of images containing usable in run-time U-Boot environment.
As of today this utility is added per-board like here [1] for Intel Edison board.
Given there're quite some U-Boot tools that we may want to add later this recipe name switch from "u-boot-mkimage" to generic "u-boot-tools" still for compatibility we provide "u-boot-mkimage" with help of PROVIDES as well as proposed "u-boot-mkenvimage".
---
Changes v4 -> v5:
* Added backward compatibility with "u-boot-mkimage" recipe
* Improved handling of nativesdk
* Update all references from "u-boot-mkimage" to "u-boot-tools"
Changes v3 -> v4:
* Updated maintainer info to make Yocto autobuilder happy again
Changes v2 -> v3:
* Recipe renamed to "u-boot-tools" to better match its contents (especially in the future as we add more tools there)
* Existing "u-boot-mkimage" and newly introduced "u-boot-mkenvimage" made avaialble via PROVIDES
Changes v1 -> v2:
* Got rid of a separate recipe and instead added mkenvimage to u-boot mkimage recipe
meta/classes/image_types.bbclass | 2 +-
meta/classes/kernel-fitimage.bbclass | 2 +-
meta/classes/kernel-uimage.bbclass | 2 +-
meta/conf/distro/include/distro_alias.inc | 2 +-
meta/conf/distro/include/maintainers.inc | 2 +-
...boot-mkimage_2018.07.bb => u-boot-tools_2018.07.bb} | 18 +++++++++++++++++-
6 files changed, 22 insertions(+), 6 deletions(-)
rename meta/recipes-bsp/u-boot/{u-boot-mkimage_2018.07.bb => u-boot-tools_2018.07.bb} (66%)meta/classes/image_types.bbclass +1 -1
@@ -308,7 +308,7 @@ CONVERSION_DEPENDS_lzo = "lzop-native" CONVERSION_DEPENDS_zip = "zip-native" CONVERSION_DEPENDS_sum = "mtd-utils-native" CONVERSION_DEPENDS_bmap = "bmap-tools-native" -CONVERSION_DEPENDS_u-boot = "u-boot-mkimage-native" +CONVERSION_DEPENDS_u-boot = "u-boot-tools-native" CONVERSION_DEPENDS_vmdk = "qemu-native" CONVERSION_DEPENDS_vdi = "qemu-native" CONVERSION_DEPENDS_qcow2 = "qemu-native"
meta/classes/kernel-fitimage.bbclass +1 -1
@@ -4,7 +4,7 @@ python __anonymous () { kerneltypes = d.getVar('KERNEL_IMAGETYPES') or "" if 'fitImage' in kerneltypes.split(): depends = d.getVar("DEPENDS") - depends = "%s u-boot-mkimage-native dtc-native" % depends + depends = "%s u-boot-tools-native dtc-native" % depends d.setVar("DEPENDS", depends) uarch = d.getVar("UBOOT_ARCH")
meta/classes/kernel-uimage.bbclass +1 -1
@@ -3,7 +3,7 @@ inherit kernel-uboot python __anonymous () { if "uImage" in d.getVar('KERNEL_IMAGETYPES'): depends = d.getVar("DEPENDS") - depends = "%s u-boot-mkimage-native" % depends + depends = "%s u-boot-tools-native" % depends d.setVar("DEPENDS", depends) # Override KERNEL_IMAGETYPE_FOR_MAKE variable, which is internal
meta/conf/distro/include/distro_alias.inc +1 -1
@@ -354,7 +354,7 @@ DISTRO_PN_ALIAS_pn-tremor = "OSPDT upstream=http://www.xiph.org/vorbis/" DISTRO_PN_ALIAS_pn-ttf-bitstream-vera = "Debian=ttf-bitstream-vera Ubuntu=ttf-bitstream-vera" DISTRO_PN_ALIAS_pn-tzcode = "OSPDT" DISTRO_PN_ALIAS_pn-u-boot-fw-utils = "Ubuntu=u-boot-tools Debian=u-boot-tools" -DISTRO_PN_ALIAS_pn-u-boot-mkimage = "Ubuntu=uboot-mkimage Debian=uboot-mkimage" +DISTRO_PN_ALIAS_pn-u-boot-tools = "Ubuntu=u-boot-tools Debian=uboot-tools" DISTRO_PN_ALIAS_pn-udev = "Mandriva=udev Fedora=udev" DISTRO_PN_ALIAS_pn-udev-extraconf = "OE-Core" DISTRO_PN_ALIAS_pn-unfs3 = "Debian=unfs3 Fedora=unfs3"
meta/conf/distro/include/maintainers.inc +1 -1
@@ -654,7 +654,7 @@ RECIPE_MAINTAINER_pn-tzcode-native = "Armin Kuster <akuster808 at gmail.com>" RECIPE_MAINTAINER_pn-tzdata = "Armin Kuster <akuster808 at gmail.com>" RECIPE_MAINTAINER_pn-u-boot = "Marek Vasut <marek.vasut at gmail.com>" RECIPE_MAINTAINER_pn-u-boot-fw-utils = "Marek Vasut <marek.vasut at gmail.com>" -RECIPE_MAINTAINER_pn-u-boot-mkimage = "Marek Vasut <marek.vasut at gmail.com>" +RECIPE_MAINTAINER_pn-u-boot-tools = "Marek Vasut <marek.vasut at gmail.com>" RECIPE_MAINTAINER_pn-udev-extraconf = "Ross Burton <ross.burton at intel.com>" RECIPE_MAINTAINER_pn-unfs3 = "Ross Burton <ross.burton at intel.com>" RECIPE_MAINTAINER_pn-unifdef = "Ross Burton <ross.burton at intel.com>"
meta/recipes-bsp/u-boot/u-boot-tools_2018.07.bb renamed from meta/recipes-bsp/u-boot/u-boot-mkimage_2018.07.bb +17 -1
@@ -1,8 +1,18 @@ require u-boot-common_${PV}.inc -SUMMARY = "U-Boot bootloader image creation tool" +SUMMARY = "U-Boot bootloader tools" DEPENDS += "openssl" +PROVIDES = "${MLPREFIX}u-boot-mkimage ${MLPREFIX}u-boot-mkenvimage" +PROVIDES_class-native = "u-boot-mkimage-native u-boot-mkenvimage-native" + +PACKAGES += "${PN}-mkimage ${PN}-mkenvimage" + +# Required for backward compatibility with "u-boot-mkimage-xxx.bb" +RPROVIDES_${PN}-mkimage = "u-boot-mkimage" +RREPLACES_${PN}-mkimage = "u-boot-mkimage" +RCONFLICTS_${PN}-mkimage = "u-boot-mkimage" + EXTRA_OEMAKE_class-target = 'CROSS_COMPILE="${TARGET_PREFIX}" CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1' EXTRA_OEMAKE_class-native = 'CC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1' EXTRA_OEMAKE_class-nativesdk = 'CROSS_COMPILE="${HOST_PREFIX}" CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'
@@ -20,8 +30,14 @@ do_compile () { do_install () { install -d ${D}${bindir} + + # mkimage install -m 0755 tools/mkimage ${D}${bindir}/uboot-mkimage ln -sf uboot-mkimage ${D}${bindir}/mkimage + + # mkenvimage + install -m 0755 tools/mkenvimage ${D}${bindir}/uboot-mkenvimage + ln -sf uboot-mkenvimage ${D}${bindir}/mkenvimage } RDEPENDS_${PN} += "dtc"
Signature · 1 line
2.16.2
You'll need to add:
ALLOW_EMPTY_${PN} = "1"
FILES_${PN} = ""
FILES_${PN}-mkimage = "${bindir}/mkimage"
FILES_${PN}-mkenvimage = "${bindir}/mkenvimage"
RDEPENDS_${PN}-mkimage += "dtc" RDEPENDS_${PN} += "${PN}-mkimage ${PN}-mkenvimage"
And remove the current RDEPENDS_${PN} += "dtc".
To package this correctly, right now everything ends in ${PN}, so the PACKAGES and RREPLACES/RPROVIDES/RCONFLICTS aren't really used.
Quoted 182 lines · Alexey Brodkin
This utility is used for creation of images containing usable in run-time U-Boot environment.
As of today this utility is added per-board like here [1] for Intel Edison board.
Given there're quite some U-Boot tools that we may want to add later this recipe name switch from "u-boot-mkimage" to generic "u-boot-tools" still for compatibility we provide "u-boot-mkimage" with help of PROVIDES as well as proposed "u-boot-mkenvimage".
Signed-off-by Alexey Brodkin <[email protected]>Cc Richard Purdie <[email protected]>Cc Otavio Salvador <[email protected]>Cc Martin Jansa <[email protected]>Cc Ross Burton <[email protected]>Cc Marek Vasut <[email protected]>---
Changes v4 -> v5:
* Added backward compatibility with "u-boot-mkimage" recipe
* Improved handling of nativesdk
* Update all references from "u-boot-mkimage" to "u-boot-tools"Changes v3 -> v4:
* Updated maintainer info to make Yocto autobuilder happy againChanges v2 -> v3:
* Recipe renamed to "u-boot-tools" to better match its contents (especially in the future as we add more tools there)
* Existing "u-boot-mkimage" and newly introduced "u-boot-mkenvimage" made avaialble via PROVIDESChanges v1 -> v2:
* Got rid of a separate recipe and instead added mkenvimage to u-boot mkimage recipemeta/classes/image_types.bbclass | 2 +- meta/classes/kernel-fitimage.bbclass | 2 +- meta/classes/kernel-uimage.bbclass | 2 +- meta/conf/distro/include/distro_alias.inc | 2 +- meta/conf/distro/include/maintainers.inc | 2 +- ...boot-mkimage_2018.07.bb => u-boot-tools_2018.07.bb} | 18 +++++++++++++++++- 6 files changed, 22 insertions(+), 6 deletions(-) rename meta/recipes-bsp/u-boot/{u-boot-mkimage_2018.07.bb =>u-boot-tools_2018.07.bb} (66%)
meta/classes/image_types.bbclass +1
-1@@ -308,7 +308,7 @@ CONVERSION_DEPENDS_lzo = "lzop-native" CONVERSION_DEPENDS_zip = "zip-native" CONVERSION_DEPENDS_sum = "mtd-utils-native" CONVERSION_DEPENDS_bmap = "bmap-tools-native" -CONVERSION_DEPENDS_u-boot = "u-boot-mkimage-native" +CONVERSION_DEPENDS_u-boot = "u-boot-tools-native" CONVERSION_DEPENDS_vmdk = "qemu-native" CONVERSION_DEPENDS_vdi = "qemu-native" CONVERSION_DEPENDS_qcow2 = "qemu-native"meta/classes/kernel-fitimage.bbclass +1
-1@@ -4,7 +4,7 @@ python __anonymous () { kerneltypes = d.getVar('KERNEL_IMAGETYPES') or "" if 'fitImage' in kerneltypes.split(): depends = d.getVar("DEPENDS") - depends = "%s u-boot-mkimage-native dtc-native" % depends + depends = "%s u-boot-tools-native dtc-native" % depends d.setVar("DEPENDS", depends) uarch = d.getVar("UBOOT_ARCH")meta/classes/kernel-uimage.bbclass +1
-1@@ -3,7 +3,7 @@ inherit kernel-uboot python __anonymous () { if "uImage" in d.getVar('KERNEL_IMAGETYPES'): depends = d.getVar("DEPENDS") - depends = "%s u-boot-mkimage-native" % depends + depends = "%s u-boot-tools-native" % depends d.setVar("DEPENDS", depends) # Override KERNEL_IMAGETYPE_FOR_MAKE variable, which is internalmeta/conf/distro/include/distro_alias.inc +0
-0@@ -354,7 +354,7 @@ DISTRO_PN_ALIAS_pn-tremor = "OSPDT upstream=http://www.xiph.org/vorbis/"
DISTRO_PN_ALIAS_pn-ttf-bitstream-vera = "Debian=ttf-bitstream-vera
Ubuntu=ttf-bitstream-vera"
DISTRO_PN_ALIAS_pn-tzcode = "OSPDT" DISTRO_PN_ALIAS_pn-u-boot-fw-utils = "Ubuntu=u-boot-tools
Debian=u-boot-tools"
-DISTRO_PN_ALIAS_pn-u-boot-mkimage = "Ubuntu=uboot-mkimage Debian=uboot-mkimage"meta/conf/distro/include/distro_alias.inc +1
-0+DISTRO_PN_ALIAS_pn-u-boot-tools = "Ubuntu=u-boot-tools Debian=uboot-tools" DISTRO_PN_ALIAS_pn-udev = "Mandriva=udev Fedora=udev" DISTRO_PN_ALIAS_pn-udev-extraconf = "OE-Core" DISTRO_PN_ALIAS_pn-unfs3 = "Debian=unfs3 Fedora=unfs3"meta/conf/distro/include/maintainers.inc +0
-0@@ -654,7 +654,7 @@ RECIPE_MAINTAINER_pn-tzcode-native = "Armin Kuster <[email protected]>"
RECIPE_MAINTAINER_pn-tzdata = "Armin Kuster <[email protected]>" RECIPE_MAINTAINER_pn-u-boot = "Marek Vasut <[email protected]>" RECIPE_MAINTAINER_pn-u-boot-fw-utils = "Marek Vasut <
[email protected]>"
-RECIPE_MAINTAINER_pn-u-boot-mkimage = "Marek Vasut <[email protected]Quoted 1 line
"
+RECIPE_MAINTAINER_pn-u-boot-tools = "Marek Vasut <[email protected]>"
RECIPE_MAINTAINER_pn-udev-extraconf = "Ross Burton <[email protected]Quoted 1 line
"
RECIPE_MAINTAINER_pn-unfs3 = "Ross Burton <[email protected]>" RECIPE_MAINTAINER_pn-unifdef = "Ross Burton <[email protected]>"
meta/recipes-bsp/u-boot/u-boot-tools_2018.07.bb renamed from meta/recipes-bsp/u-boot/u-boot-mkimage_2018.07.bb +11
-1@@ -1,8 +1,18 @@ require u-boot-common_${PV}.inc -SUMMARY = "U-Boot bootloader image creation tool" +SUMMARY = "U-Boot bootloader tools" DEPENDS += "openssl" +PROVIDES = "${MLPREFIX}u-boot-mkimage ${MLPREFIX}u-boot-mkenvimage" +PROVIDES_class-native = "u-boot-mkimage-native u-boot-mkenvimage-native" + +PACKAGES += "${PN}-mkimage ${PN}-mkenvimage" + +# Required for backward compatibility with "u-boot-mkimage-xxx.bb" +RPROVIDES_${PN}-mkimage = "u-boot-mkimage" +RREPLACES_${PN}-mkimage = "u-boot-mkimage" +RCONFLICTS_${PN}-mkimage = "u-boot-mkimage" + EXTRA_OEMAKE_class-target = 'CROSS_COMPILE="${TARGET_PREFIX}" CC="${CC}${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'
EXTRA_OEMAKE_class-native = 'CC="${BUILD_CC} ${BUILD_CFLAGS}
${BUILD_LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'
EXTRA_OEMAKE_class-nativesdk = 'CROSS_COMPILE="${HOST_PREFIX}" CC="${CC}
${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'meta/recipes-bsp/u-boot/u-boot-tools_2018.07.bb renamed from meta/recipes-bsp/u-boot/u-boot-mkimage_2018.07.bb +6
-1@@ -20,8 +30,14 @@ do_compile () { do_install () { install -d ${D}${bindir} + + # mkimage install -m 0755 tools/mkimage ${D}${bindir}/uboot-mkimage ln -sf uboot-mkimage ${D}${bindir}/mkimage + + # mkenvimage + install -m 0755 tools/mkenvimage ${D}${bindir}/uboot-mkenvimage + ln -sf uboot-mkenvimage ${D}${bindir}/mkenvimage } RDEPENDS_${PN} += "dtc" --2.16.2