Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CC = arm-none-eabi-gcc
- LINK = arm-none-eabi-ld
- OBJCOPY = arm-none-eabi-objcopy
- CTRULIB = "../libctru"
- GCCLIB = "../libgcc"
- CFLAGS += -Wall -std=c99 -march=armv6 -O3 -I"$(CTRULIB)/include" -I$(DEVKITPRO)/libnds/include
- LDFLAGS += --script=ctr_hb_script.ld -L"$(DEVKITARM)/arm-none-eabi/lib" -L"$(CTRULIB)/lib" -L"$(GCCLIB)"
- CFILES = $(wildcard source/*.c)
- OFILES = $(CFILES:source/%.c=build/%.o)
- DFILES = $(CFILES:source/%.c=build/%.d)
- SFILES = $(wildcard source/*.s)
- OFILES += $(SFILES:source/%.s=build/%.o)
- PROJECTNAME = ${shell basename "$(CURDIR)"}
- .PHONY:=all dir
- all: dir $(PROJECTNAME).bin
- dir:
- @mkdir -p build
- $(PROJECTNAME).bin: $(PROJECTNAME).elf
- $(OBJCOPY) -O binary $< $@
- @rm -f $(PROJECTNAME).bin
- $(PROJECTNAME).elf: $(OFILES)
- $(LINK) $(LDFLAGS) -o $(PROJECTNAME).elf $(filter-out build/crt0.o, $(OFILES)) -lctru -lc -lgcc
- clean:
- @rm -f build/*.o build/*.d
- @rm -f $(PROJECTNAME).elf $(PROJECTNAME).bin
- @rmdir /s /q build
- @cls
- @echo "All cleaned up!"
- -include $(DFILES)
- build/%.o: source/%.c
- $(CC) $(CFLAGS) -c $< -o $@
- @$(CC) -MM $< > build/$*.d
- build/%.o: source/%.s
- $(CC) $(CFLAGS) -c $< -o $@
- @$(CC) -MM $< > build/$*.d
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement