SummerCart64/fw/cntrllr/Makefile

34 lines
795 B
Makefile
Raw Normal View History

2021-08-12 21:07:47 +02:00
CROSS=riscv64-unknown-elf-
FLAGS=\
-mabi=ilp32 \
-march=rv32i \
-std=c11 \
-Os \
-Wall \
-Wstrict-prototypes \
-fverbose-asm \
-ffunction-sections \
-fdata-sections \
-Wl,--gc-sections \
-ffreestanding \
-nostartfiles \
-nostdlib
all: cntrllr.bin print_size
cntrllr.elf: cntrllr.ld main.c rtc.c startup.S
2021-08-18 13:54:07 +02:00
@$(CROSS)gcc $(FLAGS) -Tcntrllr.ld main.c rtc.c startup.S -o cntrllr.elf
2021-08-12 21:07:47 +02:00
cntrllr.bin: cntrllr.elf
2021-08-18 13:54:07 +02:00
@$(CROSS)objcopy -O binary --gap-fill 0xFF --pad-to 0x4004 cntrllr.elf cntrllr.bin
2021-08-12 21:07:47 +02:00
print_size:
@echo 'Size of target .elf file:'
2021-08-18 13:54:07 +02:00
@$(CROSS)size -B cntrllr.elf
@echo $(shell $(CROSS)size -B cntrllr.elf | awk 'NR==2 { printf "\nTotal memory used: %.2f%%\n",(100/(16*1024))*($$4-4) }')
2021-08-12 21:07:47 +02:00
clean:
2021-08-18 13:54:07 +02:00
@rm -f cntrllr.bin cntrllr.elf
2021-08-12 21:07:47 +02:00
.PHONY: clean