Separate libm detection into two variables, consistent with how
meson.build handles lib_m vs math_libs:
- MATH_LIBS: unconditional -lm for general math functions (floor,
round, etc.), used by hwclock and test_pty
- ISNAN_LIBS: conditional -lm only when isnan is not available
in libc, used by script, scriptreplay, scriptlive
Previously MATH_LIBS was only set when isnan needed -lm, making it
unreliable for utilities that need other math functions.
Signed-off-by: Karel Zak <kzak@redhat.com>
])
+AC_CHECK_LIB([m], [floor], [MATH_LIBS="-lm"])
+AC_SUBST([MATH_LIBS])
+
AC_CHECK_FUNCS([isnan], [],
- [AC_CHECK_LIB([m], [isnan], [MATH_LIBS="-lm"])]
- [AC_CHECK_LIB([m], [__isnan], [MATH_LIBS="-lm"])]
+ [AC_CHECK_LIB([m], [isnan], [ISNAN_LIBS="-lm"])]
+ [AC_CHECK_LIB([m], [__isnan], [ISNAN_LIBS="-lm"])]
)
-AC_SUBST([MATH_LIBS])
+AC_SUBST([ISNAN_LIBS])
dnl lib/mononotic.c may require -lrt
include/pty-session.h \
lib/monotonic.c
script_CFLAGS = $(AM_CFLAGS) -Wno-format-y2k
-script_LDADD = $(LDADD) libcommon.la $(MATH_LIBS) $(REALTIME_LIBS) -lutil
+script_LDADD = $(LDADD) libcommon.la $(ISNAN_LIBS) $(REALTIME_LIBS) -lutil
if HAVE_UTEMPTER
script_LDADD += -lutempter
endif
scriptreplay_SOURCES = term-utils/scriptreplay.c \
term-utils/script-playutils.c \
term-utils/script-playutils.h
-scriptreplay_LDADD = $(LDADD) libcommon.la $(MATH_LIBS)
+scriptreplay_LDADD = $(LDADD) libcommon.la $(ISNAN_LIBS)
endif # BUILD_SCRIPTREPLAY
if BUILD_SCRIPTLIVE
lib/pty-session.c \
include/pty-session.h \
lib/monotonic.c
-scriptlive_LDADD = $(LDADD) libcommon.la $(MATH_LIBS) $(REALTIME_LIBS) -lutil
+scriptlive_LDADD = $(LDADD) libcommon.la $(ISNAN_LIBS) $(REALTIME_LIBS) -lutil
endif # BUILD_SCRIPTLIVE