summaryrefslogtreecommitdiff
path: root/m4/math_h.m4
diff options
context:
space:
mode:
Diffstat (limited to 'm4/math_h.m4')
-rw-r--r--m4/math_h.m4227
1 files changed, 121 insertions, 106 deletions
diff --git a/m4/math_h.m4 b/m4/math_h.m4
index a9ba5e655..b3a10c3fb 100644
--- a/m4/math_h.m4
+++ b/m4/math_h.m4
@@ -1,10 +1,10 @@
-# math_h.m4 serial 122
+# math_h.m4 serial 125
dnl Copyright (C) 2007-2021 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.
-AC_DEFUN([gl_MATH_H],
+AC_DEFUN_ONCE([gl_MATH_H],
[
AC_REQUIRE([gl_MATH_H_DEFAULTS])
gl_CHECK_NEXT_HEADERS([math.h])
@@ -53,119 +53,134 @@ AC_DEFUN([gl_MATH_H],
tanf tanl tanhf trunc truncf truncl])
])
+# gl_MATH_MODULE_INDICATOR([modulename])
+# sets the shell variable that indicates the presence of the given module
+# to a C preprocessor expression that will evaluate to 1.
+# This macro invocation must not occur in macros that are AC_REQUIREd.
AC_DEFUN([gl_MATH_MODULE_INDICATOR],
[
- dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
- AC_REQUIRE([gl_MATH_H_DEFAULTS])
+ dnl Ensure to expand the default settings once only.
+ gl_MATH_H_REQUIRE_DEFAULTS
gl_MODULE_INDICATOR_SET_VARIABLE([$1])
dnl Define it also as a C macro, for the benefit of the unit tests.
gl_MODULE_INDICATOR_FOR_TESTS([$1])
])
+# Initializes the default values for AC_SUBSTed shell variables.
+# This macro must not be AC_REQUIREd. It must only be invoked, and only
+# outside of macros or in macros that are not AC_REQUIREd.
+AC_DEFUN([gl_MATH_H_REQUIRE_DEFAULTS],
+[
+ m4_defun(GL_MODULE_INDICATOR_PREFIX[_MATH_H_MODULE_INDICATOR_DEFAULTS], [
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ACOSF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ACOSL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ASINF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ASINL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ATANF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ATANL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ATAN2F])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CBRT])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CBRTF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CBRTL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CEIL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CEILF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CEILL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_COPYSIGN])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_COPYSIGNF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_COPYSIGNL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_COSF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_COSL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_COSHF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXPF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXPL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXP2])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXP2F])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXP2L])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXPM1])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXPM1F])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXPM1L])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FABSF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FABSL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FLOOR])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FLOORF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FLOORL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FMA])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FMAF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FMAL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FMOD])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FMODF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FMODL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FREXPF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FREXP])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FREXPL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_HYPOT])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_HYPOTF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_HYPOTL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ILOGB])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ILOGBF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ILOGBL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISFINITE])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISINF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISNAN])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISNANF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISNAND])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISNANL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LDEXPF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LDEXPL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOGF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOGL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG10])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG10F])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG10L])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG1P])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG1PF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG1PL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG2])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG2F])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOG2L])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOGB])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOGBF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOGBL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MODF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MODFF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MODFL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_POWF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REMAINDER])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REMAINDERF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REMAINDERL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RINT])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RINTF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RINTL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ROUND])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ROUNDF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ROUNDL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SIGNBIT])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SINF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SINL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SINHF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SQRTF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SQRTL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TANF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TANL])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TANHF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TRUNC])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TRUNCF])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TRUNCL])
+ dnl Support Microsoft deprecated alias function names by default.
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_J0], [1])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_J1], [1])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_JN], [1])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_Y0], [1])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_Y1], [1])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_YN], [1])
+ ])
+ m4_require(GL_MODULE_INDICATOR_PREFIX[_MATH_H_MODULE_INDICATOR_DEFAULTS])
+ AC_REQUIRE([gl_MATH_H_DEFAULTS])
+])
+
AC_DEFUN([gl_MATH_H_DEFAULTS],
[
- GNULIB_ACOSF=0; AC_SUBST([GNULIB_ACOSF])
- GNULIB_ACOSL=0; AC_SUBST([GNULIB_ACOSL])
- GNULIB_ASINF=0; AC_SUBST([GNULIB_ASINF])
- GNULIB_ASINL=0; AC_SUBST([GNULIB_ASINL])
- GNULIB_ATANF=0; AC_SUBST([GNULIB_ATANF])
- GNULIB_ATANL=0; AC_SUBST([GNULIB_ATANL])
- GNULIB_ATAN2F=0; AC_SUBST([GNULIB_ATAN2F])
- GNULIB_CBRT=0; AC_SUBST([GNULIB_CBRT])
- GNULIB_CBRTF=0; AC_SUBST([GNULIB_CBRTF])
- GNULIB_CBRTL=0; AC_SUBST([GNULIB_CBRTL])
- GNULIB_CEIL=0; AC_SUBST([GNULIB_CEIL])
- GNULIB_CEILF=0; AC_SUBST([GNULIB_CEILF])
- GNULIB_CEILL=0; AC_SUBST([GNULIB_CEILL])
- GNULIB_COPYSIGN=0; AC_SUBST([GNULIB_COPYSIGN])
- GNULIB_COPYSIGNF=0; AC_SUBST([GNULIB_COPYSIGNF])
- GNULIB_COPYSIGNL=0; AC_SUBST([GNULIB_COPYSIGNL])
- GNULIB_COSF=0; AC_SUBST([GNULIB_COSF])
- GNULIB_COSL=0; AC_SUBST([GNULIB_COSL])
- GNULIB_COSHF=0; AC_SUBST([GNULIB_COSHF])
- GNULIB_EXPF=0; AC_SUBST([GNULIB_EXPF])
- GNULIB_EXPL=0; AC_SUBST([GNULIB_EXPL])
- GNULIB_EXP2=0; AC_SUBST([GNULIB_EXP2])
- GNULIB_EXP2F=0; AC_SUBST([GNULIB_EXP2F])
- GNULIB_EXP2L=0; AC_SUBST([GNULIB_EXP2L])
- GNULIB_EXPM1=0; AC_SUBST([GNULIB_EXPM1])
- GNULIB_EXPM1F=0; AC_SUBST([GNULIB_EXPM1F])
- GNULIB_EXPM1L=0; AC_SUBST([GNULIB_EXPM1L])
- GNULIB_FABSF=0; AC_SUBST([GNULIB_FABSF])
- GNULIB_FABSL=0; AC_SUBST([GNULIB_FABSL])
- GNULIB_FLOOR=0; AC_SUBST([GNULIB_FLOOR])
- GNULIB_FLOORF=0; AC_SUBST([GNULIB_FLOORF])
- GNULIB_FLOORL=0; AC_SUBST([GNULIB_FLOORL])
- GNULIB_FMA=0; AC_SUBST([GNULIB_FMA])
- GNULIB_FMAF=0; AC_SUBST([GNULIB_FMAF])
- GNULIB_FMAL=0; AC_SUBST([GNULIB_FMAL])
- GNULIB_FMOD=0; AC_SUBST([GNULIB_FMOD])
- GNULIB_FMODF=0; AC_SUBST([GNULIB_FMODF])
- GNULIB_FMODL=0; AC_SUBST([GNULIB_FMODL])
- GNULIB_FREXPF=0; AC_SUBST([GNULIB_FREXPF])
- GNULIB_FREXP=0; AC_SUBST([GNULIB_FREXP])
- GNULIB_FREXPL=0; AC_SUBST([GNULIB_FREXPL])
- GNULIB_HYPOT=0; AC_SUBST([GNULIB_HYPOT])
- GNULIB_HYPOTF=0; AC_SUBST([GNULIB_HYPOTF])
- GNULIB_HYPOTL=0; AC_SUBST([GNULIB_HYPOTL])
- GNULIB_ILOGB=0; AC_SUBST([GNULIB_ILOGB])
- GNULIB_ILOGBF=0; AC_SUBST([GNULIB_ILOGBF])
- GNULIB_ILOGBL=0; AC_SUBST([GNULIB_ILOGBL])
- GNULIB_ISFINITE=0; AC_SUBST([GNULIB_ISFINITE])
- GNULIB_ISINF=0; AC_SUBST([GNULIB_ISINF])
- GNULIB_ISNAN=0; AC_SUBST([GNULIB_ISNAN])
- GNULIB_ISNANF=0; AC_SUBST([GNULIB_ISNANF])
- GNULIB_ISNAND=0; AC_SUBST([GNULIB_ISNAND])
- GNULIB_ISNANL=0; AC_SUBST([GNULIB_ISNANL])
- GNULIB_LDEXPF=0; AC_SUBST([GNULIB_LDEXPF])
- GNULIB_LDEXPL=0; AC_SUBST([GNULIB_LDEXPL])
- GNULIB_LOG=0; AC_SUBST([GNULIB_LOG])
- GNULIB_LOGF=0; AC_SUBST([GNULIB_LOGF])
- GNULIB_LOGL=0; AC_SUBST([GNULIB_LOGL])
- GNULIB_LOG10=0; AC_SUBST([GNULIB_LOG10])
- GNULIB_LOG10F=0; AC_SUBST([GNULIB_LOG10F])
- GNULIB_LOG10L=0; AC_SUBST([GNULIB_LOG10L])
- GNULIB_LOG1P=0; AC_SUBST([GNULIB_LOG1P])
- GNULIB_LOG1PF=0; AC_SUBST([GNULIB_LOG1PF])
- GNULIB_LOG1PL=0; AC_SUBST([GNULIB_LOG1PL])
- GNULIB_LOG2=0; AC_SUBST([GNULIB_LOG2])
- GNULIB_LOG2F=0; AC_SUBST([GNULIB_LOG2F])
- GNULIB_LOG2L=0; AC_SUBST([GNULIB_LOG2L])
- GNULIB_LOGB=0; AC_SUBST([GNULIB_LOGB])
- GNULIB_LOGBF=0; AC_SUBST([GNULIB_LOGBF])
- GNULIB_LOGBL=0; AC_SUBST([GNULIB_LOGBL])
- GNULIB_MODF=0; AC_SUBST([GNULIB_MODF])
- GNULIB_MODFF=0; AC_SUBST([GNULIB_MODFF])
- GNULIB_MODFL=0; AC_SUBST([GNULIB_MODFL])
- GNULIB_POWF=0; AC_SUBST([GNULIB_POWF])
- GNULIB_REMAINDER=0; AC_SUBST([GNULIB_REMAINDER])
- GNULIB_REMAINDERF=0; AC_SUBST([GNULIB_REMAINDERF])
- GNULIB_REMAINDERL=0; AC_SUBST([GNULIB_REMAINDERL])
- GNULIB_RINT=0; AC_SUBST([GNULIB_RINT])
- GNULIB_RINTF=0; AC_SUBST([GNULIB_RINTF])
- GNULIB_RINTL=0; AC_SUBST([GNULIB_RINTL])
- GNULIB_ROUND=0; AC_SUBST([GNULIB_ROUND])
- GNULIB_ROUNDF=0; AC_SUBST([GNULIB_ROUNDF])
- GNULIB_ROUNDL=0; AC_SUBST([GNULIB_ROUNDL])
- GNULIB_SIGNBIT=0; AC_SUBST([GNULIB_SIGNBIT])
- GNULIB_SINF=0; AC_SUBST([GNULIB_SINF])
- GNULIB_SINL=0; AC_SUBST([GNULIB_SINL])
- GNULIB_SINHF=0; AC_SUBST([GNULIB_SINHF])
- GNULIB_SQRTF=0; AC_SUBST([GNULIB_SQRTF])
- GNULIB_SQRTL=0; AC_SUBST([GNULIB_SQRTL])
- GNULIB_TANF=0; AC_SUBST([GNULIB_TANF])
- GNULIB_TANL=0; AC_SUBST([GNULIB_TANL])
- GNULIB_TANHF=0; AC_SUBST([GNULIB_TANHF])
- GNULIB_TRUNC=0; AC_SUBST([GNULIB_TRUNC])
- GNULIB_TRUNCF=0; AC_SUBST([GNULIB_TRUNCF])
- GNULIB_TRUNCL=0; AC_SUBST([GNULIB_TRUNCL])
- dnl Support Microsoft deprecated alias function names by default.
- GNULIB_MDA_J0=1; AC_SUBST([GNULIB_MDA_J0])
- GNULIB_MDA_J1=1; AC_SUBST([GNULIB_MDA_J1])
- GNULIB_MDA_JN=1; AC_SUBST([GNULIB_MDA_JN])
- GNULIB_MDA_Y0=1; AC_SUBST([GNULIB_MDA_Y0])
- GNULIB_MDA_Y1=1; AC_SUBST([GNULIB_MDA_Y1])
- GNULIB_MDA_YN=1; AC_SUBST([GNULIB_MDA_YN])
dnl Assume proper GNU behavior unless another module says otherwise.
HAVE_ACOSF=1; AC_SUBST([HAVE_ACOSF])
HAVE_ACOSL=1; AC_SUBST([HAVE_ACOSL])