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