From ba4179bb66ad2dabc385de4584e7b57c9bffb347 Mon Sep 17 00:00:00 2001 From: dubiousjim Date: Thu, 20 Mar 2025 05:55:55 -0400 Subject: [PATCH] py/dynruntime.mk: Fix use of musl's libm.a when LINK_RUNTIME=1. Like PICOLIBC, MUSL also has its math functions in libc.a. There is a libm.a, but it's empty. Signed-off-by: dubiousjim --- py/dynruntime.mk | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/py/dynruntime.mk b/py/dynruntime.mk index 807befb46..1ef521bd9 100644 --- a/py/dynruntime.mk +++ b/py/dynruntime.mk @@ -124,6 +124,10 @@ else $(error architecture '$(ARCH)' not supported) endif +ifneq ($(findstring -musl,$(shell $(CROSS)gcc -dumpmachine)),) +USE_MUSL := 1 +endif + MICROPY_FLOAT_IMPL_UPPER = $(shell echo $(MICROPY_FLOAT_IMPL) | tr '[:lower:]' '[:upper:]') CFLAGS += $(CFLAGS_ARCH) -DMICROPY_FLOAT_IMPL=MICROPY_FLOAT_IMPL_$(MICROPY_FLOAT_IMPL_UPPER) @@ -147,6 +151,8 @@ ifeq ($(LINK_RUNTIME),1) # distribution. ifeq ($(USE_PICOLIBC),1) LIBM_NAME := libc.a +else ifeq ($(USE_MUSL),1) +LIBM_NAME := libc.a else LIBM_NAME := libm.a endif