MARCH ?= rv64im_zicond_zifencei

.PHONY: all dump clean load

all: multiplatform.bin multiplatform.hex multiplatform.elf

multiplatform.o: multiplatform.S
	riscv64-linux-gnu-as -I../rvcontroller-libraries -march=${MARCH} -o multiplatform.o multiplatform.S

multiplatform.elf:  multiplatform.o
	riscv64-linux-gnu-ld -o multiplatform.elf multiplatform.o

dump: multiplatform.elf
	riscv64-linux-gnu-objdump -d multiplatform.elf

multiplatform.bin: multiplatform.elf
	riscv64-linux-gnu-objcopy -O binary multiplatform.elf multiplatform.bin

multiplatform.hex: multiplatform.elf
	riscv64-linux-gnu-objcopy -O ihex multiplatform.elf multiplatform.hex

load: multiplatform.hex
	bash -c "wl-copy < multiplatform.hex"

clean:
	rm -f multiplatform.bin multiplatform.hex multiplatform.elf multiplatform.o
