[util] Detect genisoimage as mkisofs replacement
authorStefan Hajnoczi <stefanha@gmail.com>
Sat, 13 Feb 2010 17:00:42 +0000 (17:00 +0000)
committerMarty Connor <mdc@etherboot.org>
Sat, 13 Feb 2010 17:46:03 +0000 (12:46 -0500)
Debian based systems may have genisoimage(1) instead of mkisofs(1).
They are command-line compatible so the util/geniso script should be
able to choose either one.

This patch also changes the use of the mkisofs quiet (-q) flag to its
long form (-quiet).  This should be compatible with more versions of
cdrtools and cdrkit.

Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com>
Signed-off-by: Marty Connor <mdc@etherboot.org>
src/util/geniso

index 7c2f767..3804c8e 100755 (executable)
@@ -13,6 +13,7 @@ case $# in
        exit 1
        ;;
 esac
+
 # This should be the default location of the isolinux.bin file
 isolinux_bin=${ISOLINUX_BIN:-util/isolinux.bin}
 if [ ! -r $isolinux_bin ]
@@ -20,6 +21,15 @@ then
        echo $0: $isolinux_bin not found, please install, or set ISOLINUX_BIN in arch/i386/Makefile correctly
        exit 1
 fi
+
+# There should either be mkisofs or the compatible genisoimage program
+mkisofs=`which mkisofs genisoimage | head -n1`
+if [ -z $mkisofs ]
+then
+       echo $0: mkisofs or genisoimage not found, please install or set PATH
+       exit 1
+fi
+
 out=$1
 shift
 dir=`mktemp -d bin/iso.dir.XXXXXX`
@@ -51,5 +61,5 @@ do
        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
+$mkisofs -quiet -l -o $out -c boot.cat -b isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table $dir
 rm -fr $dir