summaryrefslogtreecommitdiff
path: root/assembly/multitask/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'assembly/multitask/Makefile')
-rw-r--r--assembly/multitask/Makefile24
1 files changed, 24 insertions, 0 deletions
diff --git a/assembly/multitask/Makefile b/assembly/multitask/Makefile
new file mode 100644
index 0000000..bb51bce
--- /dev/null
+++ b/assembly/multitask/Makefile
@@ -0,0 +1,24 @@
+MARCH ?= rv32imacbzicntr_zicond_zicsr_zifencei_zihintpause_zilsd_zclsd_zabha_zacas_zbkb_zbkx_zcb_zcmp_zcmt
+
+.PHONY: all dump load clean
+
+all: multitask.hex
+
+multitask.o: multitask.S
+ riscv32-none-elf-as -I../rvcontroller-libraries -march=${MARCH} -o multitask.o multitask.S
+
+multitask.elf: multitask.o
+ riscv32-none-elf-ld -T rvcontroller.ld --no-warn-rwx-segments -o multitask.elf multitask.o
+
+dump: multitask.elf
+ riscv32-none-elf-objdump -d multitask.elf
+
+multitask.hex: multitask.elf
+ riscv32-none-elf-objcopy -O ihex multitask.elf multitask.hex
+
+load: multitask.hex
+ bash -c "wl-copy < multitask.hex"
+
+clean:
+ rm -f multitask.hex multitask.elf multitask.o
+