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