RV_CC ?= $(shell command -v riscv64-unknown-elf-gcc || command -v riscv64-elf-gcc)
RV_OBJCOPY ?= $(shell command -v riscv64-unknown-elf-objcopy || command -v riscv64-elf-objcopy)

blob.hex: blob.bin
	xxd -g4 -e $< | sed -E 's/^.+: (.*)  .{16}$$/\1/' | tr ' ' '\n' > $@

blob.bin: blob
	$(RV_OBJCOPY) -O binary -j .text $< $@

blob: blob.S logo.s
	$(RV_CC) -march=rv64i -mabi=lp64 -nostdlib -e _start $< -o $@

logo.s: logo.html convert-logo.py
	python convert-logo.py $<

clean:
	@ rm -f logo.s blob blob.bin blob.hex

.PHONY: clean
