2023-02-08 16:01:41 +01:00
|
|
|
TOPDIR=.
|
|
|
|
include $(TOPDIR)/Makefile.config
|
|
|
|
|
2023-05-10 11:19:08 +02:00
|
|
|
#
|
|
|
|
# Demo vars
|
|
|
|
#
|
|
|
|
FLAGS=--offline -r --
|
|
|
|
CARGO=RUSTFLAGS=-Awarnings cargo run ${FLAGS}
|
|
|
|
|
|
|
|
|
2023-03-28 17:54:05 +02:00
|
|
|
|
2023-04-05 17:05:55 +02:00
|
|
|
all: dumps user_lib instruction_tests syscall
|
2023-02-08 16:01:41 +01:00
|
|
|
#
|
|
|
|
# Main targets
|
|
|
|
#
|
2023-03-28 17:54:05 +02:00
|
|
|
|
2023-04-05 12:53:34 +02:00
|
|
|
instruction_tests:
|
|
|
|
$(MAKE) build -C test/riscv_instructions/
|
2023-03-28 17:54:05 +02:00
|
|
|
|
2023-03-01 13:44:48 +01:00
|
|
|
dumps:
|
2023-04-05 12:53:34 +02:00
|
|
|
$(MAKE) dumps -C test/riscv_instructions/
|
2023-03-08 13:02:03 +01:00
|
|
|
mkdir -p ${TOPDIR}/target/dumps/
|
2023-04-04 14:50:25 +02:00
|
|
|
find . -path ${TOPDIR}/target -prune -o -name '*.dump' -exec mv {} ${TOPDIR}/target/dumps/ \;
|
2023-03-08 13:02:03 +01:00
|
|
|
|
|
|
|
user_lib:
|
|
|
|
$(MAKE) -C userlib/
|
|
|
|
|
2023-04-05 15:09:10 +02:00
|
|
|
syscall: user_lib
|
|
|
|
$(MAKE) build -C test/syscall_tests/
|
|
|
|
$(RM) test/syscall_tests/*.o
|
2023-03-08 13:02:03 +01:00
|
|
|
mkdir -p ${TOPDIR}/target/guac/
|
2023-05-10 12:26:42 +02:00
|
|
|
find . -name '*.guac' -exec mv {} ${TOPDIR}/target/guac/ 2> /dev/null \;
|
2023-02-08 16:01:41 +01:00
|
|
|
|
|
|
|
clean:
|
2023-03-28 17:54:05 +02:00
|
|
|
$(MAKE) clean -C userlib/
|
2023-04-05 17:05:55 +02:00
|
|
|
$(MAKE) clean -C test/
|
2023-03-28 17:54:05 +02:00
|
|
|
$(RM) -rf $(TOPDIR)/target
|
2023-05-10 11:19:08 +02:00
|
|
|
|
|
|
|
#
|
|
|
|
# Demo targets
|
|
|
|
#
|
|
|
|
halt: syscall
|
2023-05-10 12:23:04 +02:00
|
|
|
${CARGO} -x ./target/guac/halt.guac -d3
|
2023-05-10 11:19:08 +02:00
|
|
|
|
|
|
|
pc: syscall
|
|
|
|
${CARGO} -x ./target/guac/producteur_consommateur.guac -d2
|
|
|
|
|
|
|
|
matmult: syscall
|
|
|
|
${CARGO} -x ./target/guac/matmult.guac -d2
|
|
|
|
|
2023-05-10 12:51:12 +02:00
|
|
|
lock: syscall
|
|
|
|
${CARGO} -x ./target/guac/lock.guac -d2
|
2023-05-10 11:19:08 +02:00
|
|
|
|
|
|
|
prints: syscall
|
|
|
|
${CARGO} -x ./target/guac/prints.guac -d2
|