<br><br>On Wednesday, September 11, 2013, Jason Wessel <<a href="mailto:jason.wessel@windriver.com">jason.wessel@windriver.com</a>> wrote:<br>> The mkzftree is needed to allow ISO images to be compressed with<br>> minimal runtime overhead. Below is an example of the savings on a<br>
> core-image-minimal.<br>><br>> Before ls -l:<br>> 24117248 core-image-minimal-qemux86-64.iso<br>><br>> Using the mkzftree ls -l:<br>> 16777216 core-image-minimal-qemux86-64.iso<br>><br>> Signed-off-by: Jason Wessel <<a href="mailto:jason.wessel@windriver.com">jason.wessel@windriver.com</a>><br>
> ---<br>> meta/classes/bootimg.bbclass | 21 ++++++++++++++--<br>> .../zisofs-tools/<a href="http://zisofs-tools-native_1.0.8.bb">zisofs-tools-native_1.0.8.bb</a> | 26 ++++++++++++++++++++<br>
> 2 files changed, 45 insertions(+), 2 deletions(-)<br>> create mode 100644 meta/recipes-devtools/zisofs-tools/<a href="http://zisofs-tools-native_1.0.8.bb">zisofs-tools-native_1.0.8.bb</a><br>><br>> diff --git a/meta/classes/bootimg.bbclass b/meta/classes/bootimg.bbclass<br>
> index 90a241d..b312e0d 100644<br>> --- a/meta/classes/bootimg.bbclass<br>> +++ b/meta/classes/bootimg.bbclass<br>> @@ -19,19 +19,23 @@<br>><br>> # External variables (also used by syslinux.bbclass)<br>
> # ${INITRD} - indicates a filesystem image to use as an initrd (optional)<br>> +# ${COMPRESSISO}<br>> # ${NOISO} - skip building the ISO image if set to 1<br>> # ${NOHDD} - skip building the HDD image if set to 1<br>
> # ${ROOTFS} - indicates a filesystem image to include as the root filesystem (optional)<br>><br>> +COMPRESSISO ?= ""<br>> do_bootimg[depends] += "dosfstools-native:do_populate_sysroot \<br>> mtools-native:do_populate_sysroot \<br>
> - cdrtools-native:do_populate_sysroot"<br>> + cdrtools-native:do_populate_sysroot \<br>> + ${@oe.utils.ifelse(d.getVar('COMPRESSISO'),'zisofs-tools-native:do_populate_sysroot','')}"<br>
><br>> PACKAGES = " "<br>> EXCLUDE_FROM_WORLD = "1"<br>><br>> HDDDIR = "${S}/hddimg"<br>> ISODIR = "${S}/iso"<br>> +COMPACT_ISODIR = "${S}/iso.z"<br>
><br>> BOOTIMG_VOLUME_ID ?= "boot"<br>> BOOTIMG_EXTRA_SPACE ?= "512"<br>> @@ -92,10 +96,23 @@ build_iso() {<br>> grubefi_iso_populate<br>> fi<br>><br>> + if [ "${COMPRESSISO}" = "1" ] ; then<br>
> + # create compact directory, compress iso<br>> + mkdir -p ${COMPACT_ISODIR}<br>> + mkzftree -z 9 -p 4 -F ${ISODIR}/rootfs.img ${COMPACT_ISODIR}/rootfs.img<br>> +<br>
> + # move compact iso to iso, then remove compact directory<br>> + mv ${COMPACT_ISODIR}/rootfs.img ${ISODIR}/rootfs.img<br>> + rm -Rf ${COMPACT_ISODIR}<br>> + mkisofs_opts="-r"<br>
> + else<br>> + mkisofs_opts="-R -z -D -l"<br>> + fi<br>> +<br>> if [ "${PCBIOS}" = "1" ]; then<br>> mkisofs -V ${BOOTIMG_VOLUME_ID} \<br>
> -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.iso \<br>> - -b ${ISO_BOOTIMG} -c ${ISO_BOOTCAT} -r \<br>> + -b ${ISO_BOOTIMG} -c ${ISO_BOOTCAT} $mkisofs_opts \<br>
> ${MKISOFS_OPTIONS} ${ISODIR}<br>> else<br>> bbnote "EFI-only ISO images are untested, please provide feedback."<br>> diff --git a/meta/recipes-devtools/zisofs-tools/<a href="http://zisofs-tools-native_1.0.8.bb">zisofs-tools-native_1.0.8.bb</a> b/meta/recipes-devtools/zisofs-tools/<a href="http://zisofs-tools-native_1.0.8.bb">zisofs-tools-native_1.0.8.bb</a><br>
> new file mode 100644<br>> index 0000000..b590854<br>> --- /dev/null<br>> +++ b/meta/recipes-devtools/zisofs-tools/<a href="http://zisofs-tools-native_1.0.8.bb">zisofs-tools-native_1.0.8.bb</a><br>> @@ -0,0 +1,26 @@<br>
> +# zisofs-tools-native OE build file<br>> +# Copyright (C) 1989, 1991 Free Software Foundation, Inc.<br>> +SUMMARY = "A set of tools for iso file compression"<br>> +DESCRIPTION = "A set of tools for iso file compression"<br>
> +HOMEPAGE = "http://<a href="http://freecode.com/projects/zisofs-tools">http://freecode.com/projects/zisofs-tools</a>"<br>> +SECTION = "console/utils"<br>> +LICENSE = "GPLv2"<br>> +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"<br>
> +PR = "r0"<br>> +<br>> +SRC_URI = "<a href="http://pkgs.fedoraproject.org/repo/pkgs/zisofs-tools/zisofs-tools-${PV}.tar.bz2/2d0ed8c9a1f60b45f949b136f9be1f6c/zisofs-tools-${PV}.tar.bz2">http://pkgs.fedoraproject.org/repo/pkgs/zisofs-tools/zisofs-tools-${PV}.tar.bz2/2d0ed8c9a1f60b45f949b136f9be1f6c/zisofs-tools-${PV}.tar.bz2</a>"<br>
> +<br>> +SRC_URI[md5sum] = "2d0ed8c9a1f60b45f949b136f9be1f6c"<br>> +SRC_URI[sha256sum] = "ae4e53e4914934d41660248fb59d3c8761f1f1fd180d5ec993c17ddb3afd04f3"<br>> +<br>> +inherit native<br>
> +<br>> +STAGE_TEMP = "${WORKDIR}/image-temp"<br>> +<br>> +do_install() {<br>> + install -d ${STAGE_TEMP}<br>> + make install INSTALLROOT=${STAGE_TEMP}<br><br>why cant INSTALLROOT be pointing to ${D}<br>
<br><br>> +<br>> + install -d ${D}${bindir}/<br>> + install ${STAGE_TEMP}/usr/bin/* ${D}${bindir}/<br>> +}<br>> --<br>> 1.7.9.5<br>><br>> _______________________________________________<br>
> Openembedded-core mailing list<br>> <a href="mailto:Openembedded-core@lists.openembedded.org">Openembedded-core@lists.openembedded.org</a><br>> <a href="http://lists.openembedded.org/mailman/listinfo/openembedded-core">http://lists.openembedded.org/mailman/listinfo/openembedded-core</a><br>
>