From a10903a1977aa7e94717e958993ddd16ac5abcae Mon Sep 17 00:00:00 2001 From: Piotr Tworek Date: Thu, 14 Oct 2021 23:09:53 +0200 Subject: [PATCH] libm: fix undefined __isinff / __isinfl symbol references Those symbols are not satisfied by any code or dependency of libm. As result calling cprojf function will always crash on Genode. This crash can be turned into link time error by adding --no-undefined to LD_OPT. This patch provides the missing symbols by including isninf.c in libm build. Fixes #4299 --- repos/libports/lib/mk/libm.inc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/repos/libports/lib/mk/libm.inc b/repos/libports/lib/mk/libm.inc index b4e3dbc271..68259f44fe 100644 --- a/repos/libports/lib/mk/libm.inc +++ b/repos/libports/lib/mk/libm.inc @@ -35,6 +35,9 @@ CC_WARN = SRC_C = $(wildcard $(LIBM_DIR)/src/*.c) \ $(wildcard $(LIBM_DIR)/bsdsrc/*.c) +# Provides __isinff and __isinfl used by lib/msun/src/s_cprojf.c +SRC_C += isinf.c + # # 128 bit quadruple precision format # @@ -57,6 +60,7 @@ endif SRC_C := $(filter-out $(FILTER_OUT),$(notdir $(SRC_C))) +vpath %.c $(LIBC_DIR)/lib/libc/gen/ vpath %.c $(LIBM_DIR)/src vpath %.c $(LIBM_DIR)/bsdsrc