#!/bin/bash # scripts/qemu-wrapper.sh WORKSPACE_DIR=${1:-.} BUILD_TYPE=${2:-Debug} ISO_PATH=$3 IS_DEBUG=${4:-0} if [ -z "$ISO_PATH" ]; then echo "Usage: $0 [is_debug]" exit 1 fi ARGS=( "-m" "64M" "-machine" "q35" "-smp" "4,sockets=1,cores=4,threads=1" "-display" "curses" "-debugcon" "file:${WORKSPACE_DIR}/qemu-debugcon-${BUILD_TYPE}.log" "-cdrom" "${ISO_PATH}" ) if [ "$IS_DEBUG" == "1" ]; then ARGS=( "-s" "-no-reboot" "-d" "int,cpu_reset" "${ARGS[@]}" ) fi echo "QEMU WRAPPER: Executing TeachOS" echo "Arguments: ${ARGS[@]}" qemu-system-x86_64 "${ARGS[@]}" 2> "${WORKSPACE_DIR}/qemu-stderr-${BUILD_TYPE}.log"