From c9a2f4a3cb84f1f16a9a300454f52c072bd5f779 Mon Sep 17 00:00:00 2001 From: Bad Diode Date: Fri, 8 Sep 2023 13:14:10 +0200 Subject: Update build system to allow switching roms without make clean --- Makefile | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index ac6f24d..8da65eb 100644 --- a/Makefile +++ b/Makefile @@ -60,19 +60,22 @@ endif main: $(BUILD_DIR) $(ROM) $(BIN) -$(ROM): $(TOOLS_BIN2CARR) - ./tools/bin2carr/build/bin2carr -n uxn_rom -e u8 -o $(ROM) $(UXN_ROM) +# Creates the rom object file from the given UXN_ROM. +$(ROM_FILE): + cp $(UXN_ROM) $(ROM_FILE) + +$(ROM_OBJ): $(ROM_FILE) + $(OBJCOPY) --rename-section .data=.rodata \ + -I binary -O elf32-littlearm $(ROM_FILE) $(ROM_OBJ) # Strip and fix header to create final .gba file. $(BIN): $(ELF) $(OBJCOPY) -v -O binary $(ELF) $(BIN) $(DEVKITTOOLS)/gbafix $(BIN) + rm $(ROM_FILE) # Link files. -$(ELF): $(SRC_MAIN) $(WATCH_SRC) | $(BUILD_DIR) - cp $(UXN_ROM) $(ROM_FILE) - $(OBJCOPY) --rename-section .data=.rodata \ - -I binary -O elf32-littlearm $(ROM_FILE) $(ROM_OBJ) +$(ELF): $(SRC_MAIN) $(WATCH_SRC) $(ROM_OBJ) | $(BUILD_DIR) $(CC) $(CFLAGS) $(LDFLAGS) -o $(ELF) $(SRC_MAIN) $(ASM_FILES) $(LDLIBS) $(ROM_OBJ) # Create build directory if needed. -- cgit v1.2.1