48 lines
1.3 KiB
Makefile
48 lines
1.3 KiB
Makefile
target := "riscv64imac-unknown-none-elf"
|
|
mode := "debug"
|
|
build-path := "target/" + target + "/" + mode + "/"
|
|
|
|
bootloader-elf := "../rustsbi/target/" + target + "/debug/rustsbi-qemu"
|
|
bootloader-bin := "../rustsbi/target/" + target + "/debug/rustsbi-qemu.bin"
|
|
kernel-elf := build-path + "tornado-kernel"
|
|
kernel-bin := build-path + "tornado-kernel.bin"
|
|
|
|
objdump := "riscv64-unknown-elf-objdump"
|
|
size := "rust-size"
|
|
|
|
threads := "1"
|
|
|
|
build:
|
|
@just -f "tornado-kernel/justfile" build
|
|
|
|
qemu: build
|
|
@qemu-system-riscv64 \
|
|
-machine virt \
|
|
-nographic \
|
|
-bios none \
|
|
-device loader,file={{bootloader-bin}},addr=0x80000000 \
|
|
-device loader,file={{kernel-bin}},addr=0x80200000 \
|
|
-smp threads={{threads}}
|
|
|
|
run: build qemu
|
|
|
|
asm: build
|
|
@{{objdump}} -D {{kernel-elf}} | less
|
|
|
|
size: build
|
|
@{{size}} -A -x {{kernel-elf}}
|
|
|
|
|
|
debug: build
|
|
@qemu-system-riscv64 \
|
|
-machine virt \
|
|
-nographic \
|
|
-bios none \
|
|
-device loader,file={{bootloader-bin}},addr=0x80000000 \
|
|
-device loader,file={{kernel-bin}},addr=0x80200000 \
|
|
-smp threads={{threads}} \
|
|
-gdb tcp::1234 -S
|
|
|
|
gdb:
|
|
@gdb --eval-command="file {{kernel-elf}}" --eval-command="target remote localhost:1234"
|