Major refactor for better control of choice of EFI and BIOS boot

Split the code up and use BOOT_EFI and BOOT_BIOS to control which
goes where. We now support:

 * BOOT_BIOS=1 BOOT_EFI=0 for BIOS boot only via an ElTorito boot
   record (like debian-cd used to be before EFI support was added)

 * BOOT_BIOS=1 BOOT_EFI=2 for standard BIOS boot as
   primary ElTorito boot record and EFI as an alternate ElTorito boot
   record (common case, just like we've been doing for amd64 in
   debian-cd for a while)

 * BOOT_BIOS=0 and BOOT_EFI=1 for *only* EFI boot as the primary
   ElTorito boot record (new case, might be useful for some
   Macs *maybe*)

Set BOOT_METHODS in the debian-cd environment to determine which of
these cases is desired in a given build.

Also removed the support for the "old" syslinux packaging layout, it's
not been around for a while now.
This commit is contained in:
Steve McIntyre 2015-02-03 01:23:34 +00:00
parent 26015951f6
commit 218757dd6f
1 changed files with 177 additions and 188 deletions

View File

@ -190,44 +190,6 @@ if [ -e $CDDIR/tools/loadlin.exe ]; then
echo "\\tools\\loadlin.exe vmlinuz initrd=initrd.gz" | todos > $CDDIR/$INSTALLDIR/install.bat echo "\\tools\\loadlin.exe vmlinuz initrd=initrd.gz" | todos > $CDDIR/$INSTALLDIR/install.bat
fi fi
mkdir -p $CDDIR/../syslinux
SYSLINUXDEB=$(find_pkg_file syslinux)
if [ -z "$SYSLINUXDEB" ]; then
echo "ERROR: syslinux package is required" >&2
exit 1
fi
(dpkg --fsys-tarfile "$MIRROR/$SYSLINUXDEB" | \
tar xf - -C $CDDIR/../syslinux ./usr/lib)
if [ -n "$ARCHIVE_EXTRACTED_SOURCES" ]; then
echo $SYSLINUXDEB >> $CDDIR/../$N.pkgs_extracted
find_pkg_file syslinux source >> $CDDIR/../$N.pkgs_extracted
fi
# syslinux 6.x onwards uses different packaging layout. Deal with bold
# old and new layout for now.
if [ -f $CDDIR/../syslinux/usr/lib/syslinux/isolinux.bin ] ; then
SYSLINUX_LAYOUT=OLD
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-isohybrid-mbr syslinux/usr/lib/syslinux/isohdpfx.bin"
else
SYSLINUX_LAYOUT=NEW
ISOLINUXDEB=$(find_pkg_file isolinux)
if [ -z "$ISOLINUXDEB" ]; then
echo "ERROR: isolinux package is required" >&2
exit 1
fi
(dpkg --fsys-tarfile "$MIRROR/$ISOLINUXDEB" | \
tar xf - -C $CDDIR/../syslinux ./usr/lib)
if [ -n "$ARCHIVE_EXTRACTED_SOURCES" ]; then
echo $ISOLINUXDEB >> $CDDIR/../$N.pkgs_extracted
find_pkg_file isolinux source >> $CDDIR/../$N.pkgs_extracted
fi
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-isohybrid-mbr syslinux/usr/lib/ISOLINUX/isohdpfx.bin"
fi
# In case of a multi-arch CD the script will be called two times. The # In case of a multi-arch CD the script will be called two times. The
# first time the isolinux dir gets set up for single arch; if it is # first time the isolinux dir gets set up for single arch; if it is
# called a second time the isolinux dir already exists and we know it # called a second time the isolinux dir already exists and we know it
@ -244,70 +206,78 @@ mkdir -p boot$N/isolinux
# Isolinux setup including config and help files comes from d-i. # Isolinux setup including config and help files comes from d-i.
cat cdrom/debian-cd_info.tar.gz | (cd boot$N/isolinux/; tar zx) cat cdrom/debian-cd_info.tar.gz | (cd boot$N/isolinux/; tar zx)
# If we don't have grub stuff from d-i, tell xorriso to add a
# partition offset for the isohybrid code
if [ ! -d boot$N/isolinux/grub ] ; then
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-partition_offset 16"
fi
di_syslinux_ver="$(di_syslinux_version)"
case "$di_syslinux_ver" in
2.0)
: ;;
1.*)
echo "Error: syslinux config versions before 2.0 are not supported"
exit 1 ;;
*)
echo "Error: unrecognized syslinux config version '$di_syslinux_ver'"
exit 1 ;;
esac
# Not everything in the tarball is isolinux stuff # Not everything in the tarball is isolinux stuff
if [ -e boot$N/isolinux/win32-loader.ini ] ; then if [ -e boot$N/isolinux/win32-loader.ini ] ; then
for file in boot$N/isolinux/g2ldr* boot$N/isolinux/setup.exe boot$N/isolinux/win32-loader.ini; do for file in boot$N/isolinux/g2ldr* boot$N/isolinux/setup.exe boot$N/isolinux/win32-loader.ini; do
if [ -e $file ] ; then if [ -e $file ] ; then
mv -v $file boot$N/ mv -v $file CD$N/
fi fi
done done
# Modify win32-loader.ini for the "current" arch
sed -i "s|install/|$INSTALLDIR/|" CD$N/win32-loader.ini
if [ "${DESKTOP}" ] ; then
sed -i "s|^\(default_desktop\)=.*|\1=${DESKTOP}|" CD$N/win32-loader.ini
fi
fi fi
if [ -e boot$N/isolinux/f3.txt.withgtk ]; then # Add autorun
extra_image gtk/vmlinuz "../vmlinuz" if [ -f CD$N/setup.exe ]; then
extra_image gtk/initrd.gz "../initrd.gz" # when win32-loader is present, use that (it already checks for README.html)
mv boot$N/isolinux/f3.txt.withgtk boot$N/isolinux/f3.txt todos > $CDDIR/autorun.inf <<EOF
mv boot$N/isolinux/f4.txt.withgtk boot$N/isolinux/f4.txt [autorun]
if [ -e boot$N/isolinux/isolinux.cfg.withgtk ]; then open=setup.exe
mv boot$N/isolinux/isolinux.cfg.withgtk boot$N/isolinux/isolinux.cfg EOF
fi elif [ -f $CDDIR/README.html ]; then
if [ -e $CDDIR/tools/loadlin.exe ]; then todos > $CDDIR/autorun.inf <<EOF
echo "\\tools\\loadlin.exe \\$INSTALLDIR\\vmlinuz initrd=initrd.gz vga=788" | todos > $CDDIR/$INSTALLDIR/gtk/install.bat [autorun]
fi open=autorun.bat
EOF
todos > $CDDIR/autorun.bat <<EOF
@echo Starting "README.html"...
@start README.html
@exit
EOF
fi fi
rm -f boot$N/isolinux/isolinux.cfg.with* rm -f boot$N/isolinux/isolinux.cfg.with*
if variant_enabled "xen" ; then # Common mkisofs options when creating CDs
extra_image xen/vmlinuz "../vmlinuz ../gtk/vmlinuz" add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-J -joliet-long"
extra_image xen/initrd.gz "../initrd.gz ../gtk/initrd.gz" add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-cache-inodes"
extra_image xen/debian.cfg || extra_image xen/xm-debian.cfg
fi
# Modify win32-loader.ini for the "current" arch # BIOS-boot specific stuff. Even when we're *not* doing BIOS boot, we
if [ -e boot$N/win32-loader.ini ]; then # still create all the isolinux config files as they're parsed and
sed -i "s|install/|$INSTALLDIR/|" boot$N/win32-loader.ini # used later. We just don't grab all the syslinux files, then make
if [ "${DESKTOP}" ] ; then # sure that we *don't* set up BIOS boot on the xorriso command line.
sed -i "s|^\(default_desktop\)=.*|\1=${DESKTOP}|" boot$N/win32-loader.ini if [ "$BOOT_BIOS" = 1 ] ; then
fi echo " Using ISOLINUX boot-disks image on CD$N"
fi mkdir -p $CDDIR/../syslinux
SYSLINUXDEB=$(find_pkg_file syslinux)
if [ $SYSLINUX_LAYOUT = OLD ] ; then if [ -z "$SYSLINUXDEB" ]; then
cp -f $CDDIR/../syslinux/usr/lib/syslinux/isolinux.bin boot$N/isolinux/ echo "ERROR: syslinux package is required" >&2
cp -f $CDDIR/../syslinux/usr/lib/syslinux/vesamenu.c32 boot$N/isolinux/ exit 1
if [ -e $CDDIR/../syslinux/usr/lib/syslinux/ldlinux.c32 ]; then
cp -f $CDDIR/../syslinux/usr/lib/syslinux/ldlinux.c32 boot$N/isolinux/
cp -f $CDDIR/../syslinux/usr/lib/syslinux/libcom32.c32 boot$N/isolinux/
cp -f $CDDIR/../syslinux/usr/lib/syslinux/libutil.c32 boot$N/isolinux/
fi fi
else (dpkg --fsys-tarfile "$MIRROR/$SYSLINUXDEB" | \
tar xf - -C $CDDIR/../syslinux ./usr/lib)
if [ -n "$ARCHIVE_EXTRACTED_SOURCES" ]; then
echo $SYSLINUXDEB >> $CDDIR/../$N.pkgs_extracted
find_pkg_file syslinux source >> $CDDIR/../$N.pkgs_extracted
fi
ISOLINUXDEB=$(find_pkg_file isolinux)
if [ -z "$ISOLINUXDEB" ]; then
echo "ERROR: isolinux package is required" >&2
exit 1
fi
(dpkg --fsys-tarfile "$MIRROR/$ISOLINUXDEB" | \
tar xf - -C $CDDIR/../syslinux ./usr/lib)
if [ -n "$ARCHIVE_EXTRACTED_SOURCES" ]; then
echo $ISOLINUXDEB >> $CDDIR/../$N.pkgs_extracted
find_pkg_file isolinux source >> $CDDIR/../$N.pkgs_extracted
fi
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-isohybrid-mbr syslinux/usr/lib/ISOLINUX/isohdpfx.bin"
cp -f $CDDIR/../syslinux/usr/lib/ISOLINUX/isolinux.bin boot$N/isolinux/ cp -f $CDDIR/../syslinux/usr/lib/ISOLINUX/isolinux.bin boot$N/isolinux/
cp -f $CDDIR/../syslinux/usr/lib/syslinux/modules/bios/vesamenu.c32 boot$N/isolinux/ cp -f $CDDIR/../syslinux/usr/lib/syslinux/modules/bios/vesamenu.c32 boot$N/isolinux/
cp -f $CDDIR/../syslinux/usr/lib/syslinux/modules/bios/ldlinux.c32 boot$N/isolinux/ cp -f $CDDIR/../syslinux/usr/lib/syslinux/modules/bios/ldlinux.c32 boot$N/isolinux/
@ -315,6 +285,61 @@ else
cp -f $CDDIR/../syslinux/usr/lib/syslinux/modules/bios/libutil.c32 boot$N/isolinux/ cp -f $CDDIR/../syslinux/usr/lib/syslinux/modules/bios/libutil.c32 boot$N/isolinux/
fi fi
# If we don't have grub stuff from d-i, tell xorriso to add a
# partition offset for the isohybrid code
if [ ! -d boot$N/isolinux/grub ] || [ $BOOT_EFI = 0 ] ; then
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-partition_offset 16"
fi
# Add the normal options to make an ElTorito bootable CD/DVD using isolinux
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-b isolinux/isolinux.bin"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-c isolinux/boot.cat"
bls=4 # Specify 4 for BIOS boot, don't calculate it
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-boot-load-size $bls"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-boot-info-table"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-no-emul-boot"
# We explicitly put the boot bits in boot$N (as opposed to CD$N)
# and list it first on the eventual mkisofs command line. That
# means they'll be placed nearer the front of the eventual image;
# some older BIOSes apparently have a limitation on what they'll
# boot here.
add_mkisofs_opt $CDDIR/../$N.mkisofs_dirs "boot$N"
else
echo " No BIOS boot code for $ARCH on CD$N"
fi
di_syslinux_ver="$(di_syslinux_version)"
case "$di_syslinux_ver" in
2.0)
: ;;
1.*)
echo "Error: syslinux config versions before 2.0 are not supported"
exit 1 ;;
*)
echo "Error: unrecognized syslinux config version '$di_syslinux_ver'"
exit 1 ;;
esac
if [ -e boot$N/isolinux/f3.txt.withgtk ]; then
extra_image gtk/vmlinuz "../vmlinuz"
extra_image gtk/initrd.gz "../initrd.gz"
mv boot$N/isolinux/f3.txt.withgtk boot$N/isolinux/f3.txt
mv boot$N/isolinux/f4.txt.withgtk boot$N/isolinux/f4.txt
if [ -e boot$N/isolinux/isolinux.cfg.withgtk ]; then
mv boot$N/isolinux/isolinux.cfg.withgtk boot$N/isolinux/isolinux.cfg
fi
if [ -e $CDDIR/tools/loadlin.exe ]; then
echo "\\tools\\loadlin.exe \\$INSTALLDIR\\vmlinuz initrd=initrd.gz vga=788" | todos > $CDDIR/$INSTALLDIR/gtk/install.bat
fi
fi
rm -f boot$N/isolinux/isolinux.cfg.with*
if variant_enabled "xen" ; then
extra_image xen/vmlinuz "../vmlinuz ../gtk/vmlinuz"
extra_image xen/initrd.gz "../initrd.gz ../gtk/initrd.gz"
extra_image xen/debian.cfg || extra_image xen/xm-debian.cfg
if [ -z "$MULTIARCH" ]; then if [ -z "$MULTIARCH" ]; then
# Set up isolinux dir for only the current arch # Set up isolinux dir for only the current arch
grep -lr '%install%' boot$N/isolinux/* | xargs -r sed -i "s|%install%|$INSTALLDIR|" grep -lr '%install%' boot$N/isolinux/* | xargs -r sed -i "s|%install%|$INSTALLDIR|"
@ -323,115 +348,79 @@ if [ -z "$MULTIARCH" ]; then
# disc that does not have both amd64 and i386 dirs. # disc that does not have both amd64 and i386 dirs.
find boot$N/isolinux/ -name "amd*.cfg" -delete find boot$N/isolinux/ -name "amd*.cfg" -delete
else else
# Set up isolinux dir for multi-arch # Set up isolinux dir for multi-arch
grep -lr '%install[-amd]*%' boot$N/isolinux/* | xargs -r sed -i -e "s|%install%|$INSTALLDIR_i386|" -e "s|%install-amd%|$INSTALLDIR_amd64|" grep -lr '%install[-amd]*%' boot$N/isolinux/* | xargs -r sed -i -e "s|%install%|$INSTALLDIR_i386|" -e "s|%install-amd%|$INSTALLDIR_amd64|"
for file in boot$N/isolinux/f3.txt* boot$N/isolinux/f4.txt*; do for file in boot$N/isolinux/f3.txt* boot$N/isolinux/f4.txt*; do
sed -i "4 s/^$/(note: i386 is default; prepend 'amd64-' to use an amd64 kernel instead)/" $file sed -i "4 s/^$/(note: i386 is default; prepend 'amd64-' to use an amd64 kernel instead)/" $file
done done
if [ -e boot$N/win32-loader.ini ]; then if [ -e CD$N/win32-loader.ini ]; then
# Modify win32-loader.ini to also cover the "other" arch # Modify win32-loader.ini to also cover the "other" arch
if [ "$ARCH" = i386 ]; then if [ "$ARCH" = i386 ]; then
sed -i -e "/^arch=/d sed -i -e "/^arch=/d
/^i386\//p; s/^i386/amd64/; s/=$INSTALLDIR_i386/=$INSTALLDIR_amd64/g" \ /^i386\//p; s/^i386/amd64/; s/=$INSTALLDIR_i386/=$INSTALLDIR_amd64/g" \
boot$N/win32-loader.ini CD$N/win32-loader.ini
else else
sed -i -e "/^arch=/d sed -i -e "/^arch=/d
/^amd64\//p; s/^amd64/i386/; s/=$INSTALLDIR_amd64/=$INSTALLDIR_i386/g" \ /^amd64\//p; s/^amd64/i386/; s/=$INSTALLDIR_amd64/=$INSTALLDIR_i386/g" \
boot$N/win32-loader.ini CD$N/win32-loader.ini
fi fi
fi fi
# Apply workaround for #505243 # Apply workaround for #505243
if [ "$BOOT_BIOS" = 1 ] ; then
multiarch_workaround multiarch_workaround
fi
fi fi
if [ "$SPLASHPNG" ] ; then if [ "$SPLASHPNG" ] ; then
# Insert our own splash screen. Color index 0 is background, and # Insert our own splash screen. Color index 0 is background, and
# index 7 is foreground. Set to black and white respecively # index 7 is foreground. Set to black and white respecively
pngtopnm < $SPLASHPNG | ppmquant 16 | \ pngtopnm < $SPLASHPNG | ppmquant 16 | \
ppmtolss16 "#ffffff=7" "#000000=0" > boot$N/isolinux/splash.rle ppmtolss16 "#ffffff=7" "#000000=0" > boot$N/isolinux/splash.rle
pngtopnm < $SPLASHPNG | ppmquant 16 | pnmtopng > boot$N/isolinux/splash.png pngtopnm < $SPLASHPNG | ppmquant 16 | pnmtopng > boot$N/isolinux/splash.png
fi fi
# used by Debian Edu # used by Debian Edu
if [ "$LOGOPNG" ] ; then if [ "$LOGOPNG" ] ; then
# Add custom logo to the initrd.gz file, replacing old image # Add custom logo to the initrd.gz file, replacing old image
GTKINITRD=$CDDIR/$INSTALLDIR/gtk/initrd GTKINITRD=$CDDIR/$INSTALLDIR/gtk/initrd
GTKINITRDGZ=$GTKINITRD.gz GTKINITRDGZ=$GTKINITRD.gz
echo "info: Adding $LOGOPNG to $GTKINITRD" echo "info: Adding $LOGOPNG to $GTKINITRD"
INITRDDIR=$TDIR/initrd-$$ INITRDDIR=$TDIR/initrd-$$
# Repack initrd with new image # Repack initrd with new image
mkdir -p $INITRDDIR mkdir -p $INITRDDIR
( (
cd $INITRDDIR cd $INITRDDIR
gunzip $GTKINITRDGZ gunzip $GTKINITRDGZ
mkdir -p $INITRDDIR/usr/share/graphics mkdir -p $INITRDDIR/usr/share/graphics
cp $LOGOPNG $INITRDDIR/usr/share/graphics/logo_debian.png cp $LOGOPNG $INITRDDIR/usr/share/graphics/logo_debian.png
echo usr/share/graphics/logo_debian.png | \ echo usr/share/graphics/logo_debian.png | \
cpio -oA -H newc -F $GTKINITRD cpio -oA -H newc -F $GTKINITRD
gzip -9 $GTKINITRD gzip -9 $GTKINITRD
) )
rm -rf $INITRDDIR rm -rf $INITRDDIR
fi fi
sed -i "s|built on|built $BUILD_DATE; d-i|" boot$N/isolinux/f1.txt sed -i "s|built on|built $BUILD_DATE; d-i|" boot$N/isolinux/f1.txt
if [ -n "$KERNEL_PARAMS" ]; then if [ -n "$KERNEL_PARAMS" ]; then
# Substitute custom kernel params into the isolinux config file(s) # Substitute custom kernel params into the isolinux config file(s)
for file in boot$N/isolinux/*.cfg; do for file in boot$N/isolinux/*.cfg; do
case "$(basename $file)" in case "$(basename $file)" in
instsel.cfg) instsel.cfg)
continue ;; continue ;;
esac esac
sed -i "/^[[:space:]]\+append .*---/ s|append|append $KERNEL_PARAMS|" \ sed -i "/^[[:space:]]\+append .*---/ s|append|append $KERNEL_PARAMS|" \
$file $file
done done
fi fi
set_default_desktop set_default_desktop
# Add autorun
if [ -f boot$N/setup.exe ]; then
# when win32-loader is present, use that (it already checks for README.html)
todos > $CDDIR/autorun.inf <<EOF
[autorun]
open=setup.exe
EOF
elif [ -f $CDDIR/README.html ]; then
todos > $CDDIR/autorun.inf <<EOF
[autorun]
open=autorun.bat
EOF
todos > $CDDIR/autorun.bat <<EOF
@echo Starting "README.html"...
@start README.html
@exit
EOF
fi
rm -rf cdrom rm -rf cdrom
# Common mkisofs options when creating CDs if [ -d boot$N/isolinux/grub ] && [ $BOOT_EFI -ne 0 ] ; then
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-J -joliet-long"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-cache-inodes"
# Add the normal options to make an ElTorito bootable CD/DVD
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-b isolinux/isolinux.bin"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-c isolinux/boot.cat"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-no-emul-boot"
bls=4 # Specify 4 for BIOS boot, don't calculate it
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-boot-load-size $bls"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-boot-info-table"
# We explicitly put the boot bits in boot$N (as opposed to CD$N) and
# list it first on the eventual mkisofs command line. That means
# they'll be placed nearer the front of the eventual image; some older
# BIOSes apparently have a limitation on what they'll boot here.
add_mkisofs_opt $CDDIR/../$N.mkisofs_dirs "boot$N"
if [ -d boot$N/isolinux/grub ] ; then
echo " Adding EFI boot code for $ARCH on CD$N" echo " Adding EFI boot code for $ARCH on CD$N"
# Move GRUB files to the right place. # Move GRUB files to the right place.
@ -481,6 +470,13 @@ if [ -d boot$N/isolinux/grub ] ; then
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-eltorito-alt-boot" add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-eltorito-alt-boot"
fi fi
# Ugh - different code here depending on the version of xorriso we've got
if [ $XORRISO_VER -le 10202 ] ; then
# 1.2.2 shipping in Wheezy
echo "Using older EFI command line for xorriso $XORRISO_VER"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "--efi-boot boot/grub/efi.img"
# Add the efi image as a FAT partition too, so our CD image will
# also boot on a USB key (like isohybrid, just implemented # also boot on a USB key (like isohybrid, just implemented
# differently) # differently)
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-append_partition 2 0x01 $CDDIR/boot/grub/efi.img" add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-append_partition 2 0x01 $CDDIR/boot/grub/efi.img"
@ -489,13 +485,6 @@ if [ -d boot$N/isolinux/grub ] ; then
echo "Using newer EFI support in xorriso $XORRISO_VER" echo "Using newer EFI support in xorriso $XORRISO_VER"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-e boot/grub/efi.img -no-emul-boot" add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-e boot/grub/efi.img -no-emul-boot"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-isohybrid-gpt-basdat -isohybrid-apm-hfsplus" add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-isohybrid-gpt-basdat -isohybrid-apm-hfsplus"
# Ugh - different code here depending on the version of xorriso we've got
if [ $XORRISO_VER -le 10202 ] ; then
# 1.2.2 shipping in Wheezy
echo "Using older EFI command line for xorriso $XORRISO_VER"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "--efi-boot boot/grub/efi.img"
# Add the efi image as a FAT partition too, so our CD image will
fi fi
else else
echo " No EFI boot code for $ARCH on CD$N" echo " No EFI boot code for $ARCH on CD$N"