summaryrefslogtreecommitdiff
path: root/c/inline/Makefile
blob: 4a1fb6e46b23e61e15e776fd404b9490432be7f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
all: inline.hex

inline.o: inline.c
	clang -target riscv32-none-elf -I../rvcontroller-libraries -march=rv32imacb_zicntr_zicond_zicsr_zifencei_zihintpause_zilsd_zclsd_zabha_zacas_zbkb_zbkx_zcb_zcmp_zcmt -ffreestanding -O3 -c -o inline.o inline.c

inline.elf: ../rvcontroller-libraries/rvcontroller-init.o ../rvcontroller-libraries/rvcontroller-ecalls.o inline.o
	clang -target riscv32-none-elf -T rvcontroller.ld -nostdlib -nostartfiles -Xlinker --no-warn-rwx-segments -o inline.elf ../rvcontroller-libraries/rvcontroller-init.o inline.o ../rvcontroller-libraries/rvcontroller-ecalls.o

dump: inline.elf
	riscv32-none-elf-objdump -d inline.elf

inline.hex: inline.elf
	riscv32-none-elf-objcopy -O ihex inline.elf inline.hex

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

clean:
	rm -f inline.hex inline.elf inline.o init.o