2025-05-21 18:52:21 +00:00
|
|
|
# Makefile
|
|
|
|
|
SRC_DIR = src
|
|
|
|
|
BUILD_DIR = build
|
2025-07-30 21:17:12 +00:00
|
|
|
BOOTLOADER_SRC = $(SRC_DIR)/boot.s
|
2025-05-21 18:52:21 +00:00
|
|
|
BOOTLOADER_IMG = $(BUILD_DIR)/boot.img
|
|
|
|
|
|
|
|
|
|
QEMU = qemu-system-i386
|
|
|
|
|
|
|
|
|
|
all: $(BOOTLOADER_IMG)
|
|
|
|
|
|
|
|
|
|
$(BUILD_DIR):
|
|
|
|
|
mkdir -p $(BUILD_DIR)
|
|
|
|
|
|
|
|
|
|
$(BOOTLOADER_IMG): $(BOOTLOADER_SRC) | $(BUILD_DIR)
|
2025-07-30 21:17:12 +00:00
|
|
|
nasm -f bin $(BOOTLOADER_SRC) -i $(SRC_DIR) -o $(BOOTLOADER_IMG)
|
2025-05-21 18:52:21 +00:00
|
|
|
|
2025-07-30 21:17:12 +00:00
|
|
|
.PHONY: debug
|
|
|
|
|
debug:
|
|
|
|
|
$(QEMU) $(QEMU_FLAGS) -s -S -drive format=raw,file=$(BOOTLOADER_IMG)
|
|
|
|
|
|
|
|
|
|
.PHONY: run
|
2025-05-21 18:52:21 +00:00
|
|
|
run: all
|
|
|
|
|
$(QEMU) -drive format=raw,file=$(BOOTLOADER_IMG) -display gtk
|
|
|
|
|
|
|
|
|
|
clean:
|
|
|
|
|
rm -rf $(BUILD_DIR)
|
|
|
|
|
|