blob: 354707a9719b7dd8811f51d1655e6366c0849fff [file] [log] [blame]
#!/usr/bin/env 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.
if ! which VBoxManage 2>&1 > /dev/null ; then
echo "VBoxManage (virtualbox command line tools) must be on your PATH." >&2
exit 1
fi
if [[ -z $FUCHSIA_SCRIPTS_DIR ]]; then
source $( cd $( dirname "${BASH_SOURCE[0]}" ) && pwd)/../env.sh
fi
# VBoxManage makes RPCs to a running virtualbox instance, but the locks
# sometimes long outlast the RPC completion, so making VBoxManage sleepy avoids
# those issues.
VBOXMANAGE=`which VBoxManage`
VBoxManage() {
"${VBOXMANAGE}" "$@"
sleep 0.5
}
export FUCHSIA_VBOX_NAME=${FUCHSIA_VBOX_NAME:-fuchsia}
export FUCHSIA_VBOX_CPUS
export FUCHSIA_VBOX_RAM=${FUCHSIA_VBOX_RAM:-4096}
export FUCHSIA_VBOX_VRAM=${FUCHSIA_VBOX_VRAM:-128}
export FUCHSIA_VBOX_SOURCE_DISK=${FUCHSIA_VBOX_SOURCE_DISK:-"$FUCHSIA_OUT_DIR/build-installer/efi_fs"}
export FUCHSIA_VBOX_VDI=${FUCHSIA_VBOX_VDI:-$FUCHSIA_OUT_DIR/vbox/efi_fs.vdi}
export FUCHSIA_VBOX_CONSOLE_SOCK=${FUCHSIA_VBOX_CONSOLE_SOCK:-"$FUCHSIA_OUT_DIR/vbox/${FUCHSIA_VBOX_NAME}.sock"}
if [[ -z ${FUCHSIA_VBOX_CPUS} ]]; then
ncpu=$(getconf _NPROCESSORS_ONLN || echo 4)
# VirtualBox only suppots up to 32 CPUs
if [[ $ncpu -gt 32 ]]; then
ncpu=32
fi
FUCHSIA_VBOX_CPUS=$ncpu
fi