Annotation of qemu/roms/ipxe/src/util/genliso, revision 1.1

1.1     ! root        1: #!/bin/bash
        !             2: #
        !             3: # Generate a legacy floppy emulation ISO boot image
        !             4: #
        !             5: # genliso foo.liso foo.lkrn bar.lkrn ...
        !             6: #
        !             7: # The .liso image filename is the first argument followed by
        !             8: #   a list of .lkrn images  include in .liso image
        !             9: 
        !            10: case $# in
        !            11: 0|1)
        !            12:        echo Usage: $0 foo.liso foo.lkrn ...
        !            13:        exit 1
        !            14:        ;;
        !            15: esac
        !            16: 
        !            17: case "`mtools -V`" in
        !            18: Mtools\ version\ 3.9.9*|Mtools\ version\ 3.9.1[0-9]*|[mM]tools\ *\ [4-9].*)
        !            19:        ;;
        !            20: *)
        !            21:        echo Mtools version 3.9.9 or later is required
        !            22:        exit 1
        !            23:        ;;
        !            24: esac
        !            25: 
        !            26: out=$1
        !            27: shift
        !            28: 
        !            29: dir=`mktemp -d bin/liso.dir.XXXXXX`
        !            30: 
        !            31: img=$dir/boot.img
        !            32: mformat -f 1440 -C -i $img ::
        !            33: 
        !            34: cfg=$dir/syslinux.cfg
        !            35: cat > $cfg <<EOF
        !            36: # These default options can be changed in the genliso script
        !            37: SAY iPXE ISO boot image generated by genliso
        !            38: TIMEOUT 30
        !            39: EOF
        !            40: 
        !            41: first=
        !            42: for f
        !            43: do
        !            44:        if [ ! -r $f ]
        !            45:        then
        !            46:                echo $f does not exist, skipping 1>&2
        !            47:                continue
        !            48:        fi
        !            49:        # shorten name for 8.3 filesystem
        !            50:        b=$(basename $f)
        !            51:        g=${b%.lkrn}
        !            52:        g=${g//[^a-z0-9]}
        !            53:        g=${g:0:8}.krn
        !            54:        case "$first" in
        !            55:        "")
        !            56:                echo DEFAULT $g
        !            57:                ;;
        !            58:        esac
        !            59:        first=$g
        !            60:        echo LABEL $b
        !            61:        echo "" KERNEL $g
        !            62:        mcopy -m -i $img $f ::$g
        !            63: done >> $cfg
        !            64: 
        !            65: mcopy -i $img $cfg ::syslinux.cfg
        !            66: 
        !            67: if ! syslinux $img
        !            68: then
        !            69:        exit 1
        !            70: fi
        !            71: 
        !            72: mkisofs -q -o $out -c boot.cat -b boot.img $dir
        !            73: 
        !            74: rm -fr $dir

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.