qemu_v8.mk: Add CI test for Rust applications

Invoke optee_rust/ci/qemu-check.exp in target "check-rust" to
trigger CI test for Rust applications.
Run build and check progress:
$ make CFG_TEE_CORE_LOG_LEVEL=0 OPTEE_RUST_ENABLE=y check-rust

Signed-off-by: Yuan Zhuang <zhuangyuan04@baidu.com>
Reviewed-by: Jerome Forissier <jerome@forissier.org>
Tested-by: Jerome Forissier <jerome@forissier.org>
diff --git a/qemu_v8.mk b/qemu_v8.mk
index 3f4ef86..4c71673 100644
--- a/qemu_v8.mk
+++ b/qemu_v8.mk
@@ -403,7 +403,7 @@
 		$(QEMU_XEN) \
 		$(QEMU_EXTRA_ARGS)
 
-ifneq ($(filter check,$(MAKECMDGOALS)),)
+ifneq ($(filter check check-rust,$(MAKECMDGOALS)),)
 CHECK_DEPS := all
 endif
 
@@ -431,5 +431,24 @@
 
 check-only: check
 
+check-rust: $(CHECK_DEPS)
+	ln -sf $(ROOT)/out-br/images/rootfs.cpio.gz $(BINARIES_PATH)/
+	cd $(BINARIES_PATH) && \
+		export QEMU=$(QEMU_BUILD)/aarch64-softmmu/qemu-system-aarch64 && \
+		export QEMU_SMP=$(QEMU_SMP) && \
+		export QEMU_GIC=$(QEMU_GIC_VERSION) && \
+		export QEMU_MEM=$(QEMU_MEM) && \
+		expect $(ROOT)/optee_rust/ci/qemu-check.exp -- $(check-args) || \
+		(if [ "$(DUMP_LOGS_ON_ERROR)" ]; then \
+			echo "== $$PWD/serial0.log:"; \
+			cat serial0.log; \
+			echo "== end of $$PWD/serial0.log:"; \
+			echo "== $$PWD/serial1.log:"; \
+			cat serial1.log; \
+			echo "== end of $$PWD/serial1.log:"; \
+		fi; false)
+
+check-only-rust: check-rust
+
 check-clean:
 	rm -f serial0.log serial1.log