1#!/usr/bin/env bash 2 3# Copyright 2016 The Fuchsia Authors 4# 5# Use of this source code is governed by a MIT-style 6# license that can be found in the LICENSE file or at 7# https://opensource.org/licenses/MIT 8 9set -e -u 10 11DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 12 13PROJECT="x64" 14PROJECT_DIR="$DIR/../build-$PROJECT" 15BOOTDATA="${1:-$PROJECT_DIR/bootdata.bin}" 16 17(cd "$DIR/.."; ENABLE_NEW_BOOT=true $DIR/make-parallel $PROJECT) || exit 18 19if ! which xorriso grub-mkrescue &> /dev/null; then 20 echo "ERROR: You must install xorriso and grub-mkrescue" 21 exit 22fi 23 24trap 'rm -rf "$TEMP"' EXIT HUP INT TERM 25TEMP="$(mktemp -d)" 26 27mkdir -p "$TEMP/boot/grub" 28cp "$PROJECT_DIR/multiboot.bin" "$PROJECT_DIR/zircon.zbi" "$TEMP/boot/" 29cat > "$TEMP/boot/grub/grub.cfg" << \EOF 30set timeout=0 31menuentry "Zircon" { 32 multiboot /boot/multiboot.bin 33 module /boot/initrd.bin 34} 35EOF 36grub-mkrescue -o "$PROJECT_DIR/zircon.iso" "$TEMP" 37