tools/ci.sh: Add natmod tests for QEMU/Arm.

This commit adds the natmod tests for the MPS2_AN385 board running
inside QEMU to the CI pipeline.  Now natmod tests capabilities are equal
between the Arm and RV32 platforms for the QEMU port.

Signed-off-by: Alessandro Gatti <a.gatti@frob.it>
This commit is contained in:
Alessandro Gatti 2025-01-24 18:00:05 +01:00 committed by Damien George
parent ca3090a33f
commit f594c6f66e
2 changed files with 16 additions and 11 deletions

View file

@ -40,6 +40,8 @@ endif
include $(TOP)/py/py.mk
include $(TOP)/extmod/extmod.mk
GIT_SUBMODULES += lib/berkeley-db-1.xx
CFLAGS += -DMICROPY_HEAP_SIZE=$(MICROPY_HEAP_SIZE)
################################################################################

View file

@ -266,6 +266,7 @@ function ci_powerpc_build {
# ports/qemu
function ci_qemu_setup_arm {
ci_mpy_format_setup
ci_gcc_arm_setup
sudo apt-get update
sudo apt-get install qemu-system
@ -287,6 +288,10 @@ function ci_qemu_build_arm {
make ${MAKEOPTS} -C ports/qemu clean
make ${MAKEOPTS} -C ports/qemu test_full
make ${MAKEOPTS} -C ports/qemu BOARD=SABRELITE test_full
# Test building and running native .mpy with armv7m architecture.
ci_native_mpy_modules_build armv7m
make ${MAKEOPTS} -C ports/qemu test_natmod
}
function ci_qemu_build_rv32 {
@ -480,20 +485,18 @@ function ci_native_mpy_modules_build {
else
arch=$1
fi
make -C examples/natmod/features1 ARCH=$arch
for natmod in features1 features3 features4 deflate framebuf heapq random re
do
make -C examples/natmod/$natmod ARCH=$arch
done
# btree requires thread local storage support on rv32imc.
if [ $arch != rv32imc ]; then
# This requires soft-float support on rv32imc.
make -C examples/natmod/features2 ARCH=$arch
# This requires thread local storage support on rv32imc.
make -C examples/natmod/btree ARCH=$arch
fi
make -C examples/natmod/features3 ARCH=$arch
make -C examples/natmod/features4 ARCH=$arch
make -C examples/natmod/deflate ARCH=$arch
make -C examples/natmod/framebuf ARCH=$arch
make -C examples/natmod/heapq ARCH=$arch
make -C examples/natmod/random ARCH=$arch
make -C examples/natmod/re ARCH=$arch
# features2 requires soft-float on armv7m and rv32imc.
if [ $arch != rv32imc ] && [ $arch != armv7m ]; then
make -C examples/natmod/features2 ARCH=$arch
fi
}
function ci_native_mpy_modules_32bit_build {