diff --git a/examples/natmod/btree/Makefile b/examples/natmod/btree/Makefile index 6273ccc657..bcaa7a93d1 100644 --- a/examples/natmod/btree/Makefile +++ b/examples/natmod/btree/Makefile @@ -36,6 +36,9 @@ ifeq ($(ARCH),xtensa) MPY_EXTERN_SYM_FILE=$(MPY_DIR)/ports/esp8266/boards/eagle.rom.addr.v6.ld endif +# Use our own errno implementation if Picolibc is used +CFLAGS += -D__PICOLIBC_ERRNO_FUNCTION=__errno + include $(MPY_DIR)/py/dynruntime.mk # btree needs gnu99 defined diff --git a/ports/qemu/Makefile b/ports/qemu/Makefile index e9e1e0f957..646659ceda 100644 --- a/ports/qemu/Makefile +++ b/ports/qemu/Makefile @@ -191,12 +191,11 @@ test_full: $(BUILD)/firmware.elf cd $(TOP)/tests && ./run-tests.py $(RUN_TESTS_FULL_ARGS) --via-mpy cd $(TOP)/tests && ./run-tests.py $(RUN_TESTS_FULL_ARGS) --via-mpy --emit native -# "btree" currently does not build for rv32imc (Picolibc TLS incompatibility). .PHONY: test_natmod test_natmod: $(BUILD)/firmware.elf $(eval DIRNAME=ports/$(notdir $(CURDIR))) cd $(TOP)/tests && \ - for natmod in deflate framebuf heapq random_basic re; do \ + for natmod in btree deflate framebuf heapq random_basic re; do \ ./run-natmodtests.py -p -d execpty:"$(QEMU_SYSTEM) $(QEMU_ARGS) -serial pty -kernel ../$(DIRNAME)/$<" extmod/$$natmod*.py; \ done diff --git a/tools/ci.sh b/tools/ci.sh index 564b7810f5..510bb3a4d3 100755 --- a/tools/ci.sh +++ b/tools/ci.sh @@ -563,7 +563,7 @@ function ci_native_mpy_modules_build { else arch=$1 fi - for natmod in deflate features1 features3 features4 framebuf heapq random re + for natmod in btree deflate features1 features3 features4 framebuf heapq random re do make -C examples/natmod/$natmod ARCH=$arch clean make -C examples/natmod/$natmod ARCH=$arch @@ -576,12 +576,6 @@ function ci_native_mpy_modules_build { else make -C examples/natmod/features2 ARCH=$arch fi - - # btree requires thread local storage support on rv32imc. - if [ $arch != "rv32imc" ]; then - make -C examples/natmod/btree ARCH=$arch clean - make -C examples/natmod/btree ARCH=$arch - fi } function ci_native_mpy_modules_32bit_build {