1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- #!/bin/bash
-
-
-
-
-
-
-
-
- case $# in
- 0|1)
- echo Usage: $0 foo.iso foo.lkrn ...
- exit 1
- ;;
- esac
-
- isolinux_bin=${ISOLINUX_BIN:-util/isolinux.bin}
- if [ ! -r $isolinux_bin ]
- then
- echo $0: $isolinux_bin not found, please install, or set ISOLINUX_BIN in arch/i386/config correctly
- exit 1
- fi
- out=$1
- shift
- dir=bin/iso.dir
- mkdir -p $dir
- cfg=$dir/isolinux.cfg
- cp -p $isolinux_bin $dir
- cat > $cfg <<EOF
-
- SAY Etherboot ISO boot image generated by geniso
- TIMEOUT 30
- EOF
- first=
- for f
- do
- if [ ! -r $f ]
- then
- echo $f does not exist, skipping 1>&2
- continue
- fi
- b=$(basename $f)
- g=${b%.lkrn}
- g=${g//[^a-z0-9]}.krn
- case "$first" in
- "")
- echo DEFAULT $g
- ;;
- esac
- first=$g
- echo LABEL $b
- echo "" KERNEL $g
- cp -p $f $dir/$g
- done >> $cfg
- mkisofs -q -l -o $out -c boot.cat -b isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table $dir
- rm -fr $dir
|