blob: 3ac422edefaf196ccc0ba5c38a770b812689cce6 [file] [log] [blame]
#!/bin/bash
# Copyright 2017 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"/env.sh
set -e
case "$1" in
-h|--help)
echo "Usage: $(basename $0) [disk-path]" >&2
exit 1
;;
esac
[[ -f "$FUCHSIA_GRUB_DIR/bin/grub-mkimage" ]] || "$FUCHSIA_GRUB_SCRIPTS_DIR/build-grub.sh"
[[ -f "$FUCHSIA_GRUB_DIR/core.img" ]] || "$FUCHSIA_GRUB_SCRIPTS_DIR/build-core.sh"
disk="${1:-"$FUCHSIA_OUT_DIR/grub.raw"}"
if [[ ! -f $disk ]]; then
case $(uname) in
Linux)
fallocate -l 500k "$disk"
;;
Darwin)
mkfile -nv 500k "$disk"
;;
*)
head -c $((500*1024)) /dev/zero > "$disk"
;;
esac
fi
"$FUCHSIA_GRUB_SCRIPTS_DIR/install.sh" "$disk" || exit 1
echo "Grub installed to $disk"