summaryrefslogtreecommitdiff
path: root/debug.sh
diff options
context:
space:
mode:
Diffstat (limited to 'debug.sh')
-rwxr-xr-xdebug.sh42
1 files changed, 27 insertions, 15 deletions
diff --git a/debug.sh b/debug.sh
index 34f01dd..7618ba6 100755
--- a/debug.sh
+++ b/debug.sh
@@ -1,30 +1,42 @@
#!/usr/bin/env bash
-make -C kjarna_runtime &&
-make -C kjarna &&
+BOOT_DIR=boot
+BOOT_FILE=${BOOT_DIR}/kjarna.efi
-BOOT_DIR=EFI/BOOT
-BOOT_FILE=BOOTX64.EFI
-SYS_DIR=adasoft/sophia
-OVMF_DIR=/usr/share/ovmf/x64
+SERVICE_DIR=service
+SERVICE_FILE=${SERVICE_DIR}/kjarna.os
-LOADER_FILE=kjarna/kjarna.efi
-SHIM_FILE=kjarna_runtime/kjarna.os
+FIRMWARE_DIR=/usr/share/ovmf/x64
+FIRMWARE_FILE=${FIRMWARE_DIR}/OVMF_CODE.fd
+FIRMWARE_VARS=${FIRMWARE_DIR}/OVMF_VARS.fd
-KERNEL_FILE=kc/core/kernel.os
+INSTALL_PREFIX=adasoft/sophia
+
+make -C ${SERVICE_DIR} &&
+make -C ${BOOT_DIR} &&
tempdir=$(mktemp -d) &&
-rundir=${tempdir}/run &&
+rundir=${tempdir}/run
+
+varsfile=${tempdir}/$(basename ${FIRMWARE_VARS})
+
+efidir=${rundir}/efi
+efibootdir=${efidir}/boot
+bootdir=${efidir}/adasoft/kjarna
+bootfile=${efibootdir}/BOOTX64.EFI
+servdir=${rundir}/service/kjarna
-cp ${OVMF_DIR}/OVMF_VARS.fd ${tempdir} &&
+mkdir -p ${efidir} ${efibootdir} &&
+mkdir -p ${bootdir} ${servdir} &&
-mkdir -p ${rundir}/${BOOT_DIR} ${rundir}/${SYS_DIR} &&
-cp ${LOADER_FILE} ${rundir}/${BOOT_DIR}/${BOOT_FILE} &&
-cp ${LOADER_FILE} ${SHIM_FILE} ${rundir}/${SYS_DIR} &&
+cp ${FIRMWARE_VARS} ${varsfile} &&
+cp ${BOOT_FILE} ${bootdir} &&
+cp ${BOOT_FILE} ${bootfile} &&
+cp ${SERVICE_FILE} ${servdir} &&
qemu-system-x86_64 -d int \
-drive if=pflash,format=raw,unit=0,file=/usr/share/ovmf/x64/OVMF_CODE.fd,readonly=on \
- -drive if=pflash,format=raw,unit=1,file=${tempdir}/OVMF_VARS.fd \
+ -drive if=pflash,format=raw,unit=1,file=${varsfile} \
-net none -drive file=fat:rw:${rundir} -monitor stdio \
-serial file:sophia.log -no-shutdown -no-reboot -s -S