# if we don't have an initrd we a) can't boot and b) there was an error
# during build, so check for the file:
- if [ -f "$CHROOT_OUTPUT"/boot/initrd* ] ; then
- cp "$CHROOT_OUTPUT"/boot/initrd* "$BUILD_OUTPUT"/boot/isolinux/initrd.gz
+ INITRD="$(ls $CHROOT_OUTPUT/boot/initrd* 2>/dev/null| grep -v '.bak$' | sort -r | head -1)"
+ if [ -n "$INITRD" ] ; then
+ cp $INITRD "$BUILD_OUTPUT"/boot/isolinux/initrd.gz
+ find $CHROOT_OUTPUT/boot/ -name initrd\*.bak -exec rm {} \;
else
log "No initrd found inside $CHROOT_OUTPUT/boot/ - Exiting"
eerror "No initrd found inside $CHROOT_OUTPUT/boot/ - Exiting" ; eend 1
bailout 10
fi
- KERNEL_IMAGE="$(ls $CHROOT_OUTPUT/boot/vmlinuz* | sort -r | head -1)"
- cp "$KERNEL_IMAGE" "$BUILD_OUTPUT"/boot/isolinux/linux26
+ KERNEL_IMAGE="$(ls $CHROOT_OUTPUT/boot/vmlinuz* 2>/dev/null | sort -r | head -1)"
+ if [ -n "$KERNEL_IMAGE" ] ; then
+ cp "$KERNEL_IMAGE" "$BUILD_OUTPUT"/boot/isolinux/linux26
+ else
+ log "No kernel found inside $CHROOT_OUTPUT/boot/ - Exiting"
+ eerror "No kernel found inside $CHROOT_OUTPUT/boot/ - Exiting" ; eend 1
+ bailout 11
+ fi
+
cp /usr/lib/syslinux/chain.c32 "$BUILD_OUTPUT"/boot/isolinux/
cp /usr/lib/syslinux/isolinux.bin "$BUILD_OUTPUT"/boot/isolinux/
cp /usr/lib/syslinux/memdisk "$BUILD_OUTPUT"/boot/isolinux/
( cd "$BUILD_OUTPUT"/windows
for file in pageant plink pscp psftp putty puttygen ; do
wget -O ${file}.exe ${WINDOWS_BINARIES}/${file}.exe
- md5sum ${WINDOWS_BINARIES}/${file}.exe > ${WINDOWS_BINARIES}/${file}.exe.md5
+ md5sum ${file}.exe > ${file}.exe.md5
done )
fi
fi