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

1.1     ! root        1: #!/bin/bash
        !             2: #
        !             3: # Generate a syslinux floppy that loads a iPXE image
        !             4: #
        !             5: # gensdsk foo.sdsk foo.lkrn
        !             6: #
        !             7: # the floppy image is the first argument
        !             8: #   followed by list of .lkrn images
        !             9: #
        !            10: 
        !            11: case $# in
        !            12: 0|1)
        !            13:        echo Usage: $0 foo.sdsk foo.lkrn ...
        !            14:        exit 1
        !            15:        ;;
        !            16: esac
        !            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: img=$1
        !            26: shift
        !            27: dir=`mktemp -d bin/sdsk.dir.XXXXXX`
        !            28: 
        !            29: mformat -f 1440 -C -i $img ::
        !            30: cfg=$dir/syslinux.cfg
        !            31: cat > $cfg <<EOF
        !            32: 
        !            33: # These default options can be changed in the gensdsk script
        !            34: TIMEOUT 30
        !            35: EOF
        !            36: first=
        !            37: for f
        !            38: do
        !            39:        if [ ! -r $f ]
        !            40:        then
        !            41:                echo $f does not exist, skipping 1>&2
        !            42:                continue
        !            43:        fi
        !            44:        # shorten name for 8.3 filesystem
        !            45:        b=$(basename $f)
        !            46:        g=${b%.lkrn}
        !            47:        g=${g//[^a-z0-9]}
        !            48:        g=${g:0:8}.krn
        !            49:        case "$first" in
        !            50:        "")
        !            51:                echo DEFAULT $g
        !            52:                ;;
        !            53:        esac
        !            54:        first=$g
        !            55:        echo LABEL $b
        !            56:        echo "" KERNEL $g
        !            57:        mcopy -m -i $img $f ::$g
        !            58: done >> $cfg
        !            59: mcopy -i $img $cfg ::syslinux.cfg
        !            60: if ! syslinux $img
        !            61: then
        !            62:        exit 1
        !            63: fi
        !            64: 
        !            65: 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.