35 lines
1.2 KiB
Plaintext
35 lines
1.2 KiB
Plaintext
# check-math-lib.m4
|
|
# serial 6
|
|
dnl Copyright (C) 2007, 2009-2026 Free Software Foundation, Inc.
|
|
dnl This file is free software; the Free Software Foundation
|
|
dnl gives unlimited permission to copy and/or distribute it,
|
|
dnl with or without modifications, as long as this notice is preserved.
|
|
dnl This file is offered as-is, without any warranty.
|
|
dnl
|
|
dnl gl_CHECK_MATH_LIB (VARIABLE, TYPE, EXPRESSION [, EXTRA-CODE])
|
|
dnl
|
|
dnl Sets the shell VARIABLE according to the libraries needed by EXPRESSION
|
|
dnl (that operates on a variable x of type TYPE) to compile and link: to the
|
|
dnl empty string if no extra libraries are needed, to "-lm" if -lm is needed,
|
|
dnl or to "missing" if it does not compile and link either way.
|
|
dnl
|
|
dnl Example: gl_CHECK_MATH_LIB([ROUNDF_LIBM], [float], [x = roundf (x);])
|
|
AC_DEFUN([gl_CHECK_MATH_LIB], [
|
|
saved_LIBS="$LIBS"
|
|
$1=missing
|
|
for libm in "" "-lm"; do
|
|
LIBS="$saved_LIBS $libm"
|
|
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
|
#ifndef __NO_MATH_INLINES
|
|
# define __NO_MATH_INLINES 1 /* for glibc */
|
|
#endif
|
|
#include <math.h>
|
|
$4
|
|
$2 x;]],
|
|
[$3])],
|
|
[$1=$libm
|
|
break])
|
|
done
|
|
LIBS="$saved_LIBS"
|
|
])
|