mirror of
https://github.com/cccriscv/mini-riscv-os.git
synced 2025-11-16 12:34:33 +00:00
31 lines
544 B
Makefile
31 lines
544 B
Makefile
CC = riscv64-unknown-elf-gcc
|
|
CFLAGS = -nostdlib -fno-builtin -mcmodel=medany -march=rv32ima -mabi=ilp32
|
|
|
|
OBJ = \
|
|
start.s \
|
|
sys.s \
|
|
lib.c \
|
|
timer.c \
|
|
task.c \
|
|
os.c \
|
|
user.c \
|
|
trap.c
|
|
|
|
QEMU = qemu-system-riscv32
|
|
QFLAGS = -nographic -smp 4 -machine virt -bios none
|
|
|
|
OBJDUMP = riscv64-unknown-elf-objdump
|
|
|
|
all: os.elf
|
|
|
|
os.elf: $(OBJ)
|
|
$(CC) $(CFLAGS) -T os.ld -o os.elf $^
|
|
|
|
qemu: $(TARGET)
|
|
@qemu-system-riscv32 -M ? | grep virt >/dev/null || exit
|
|
@echo "Press Ctrl-A and then X to exit QEMU"
|
|
$(QEMU) $(QFLAGS) -kernel os.elf
|
|
|
|
clean:
|
|
rm -f *.elf
|