Implement 'round', 'roundf', 'roundl' modules.
[gnulib.git] / m4 / math_h.m4
1 # math_h.m4 serial 6
2 dnl Copyright (C) 2007 Free Software Foundation, Inc.
3 dnl This file is free software; the Free Software Foundation
4 dnl gives unlimited permission to copy and/or distribute it,
5 dnl with or without modifications, as long as this notice is preserved.
6
7 AC_DEFUN([gl_MATH_H],
8 [
9   AC_REQUIRE([gl_MATH_H_DEFAULTS])
10   gl_CHECK_NEXT_HEADERS([math.h])
11 ])
12
13 AC_DEFUN([gl_MATH_MODULE_INDICATOR],
14 [
15   dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
16   AC_REQUIRE([gl_MATH_H_DEFAULTS])
17   GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1
18 ])
19
20 AC_DEFUN([gl_MATH_H_DEFAULTS],
21 [
22   GNULIB_CEILF=0;   AC_SUBST([GNULIB_CEILF])
23   GNULIB_CEILL=0;   AC_SUBST([GNULIB_CEILL])
24   GNULIB_FLOORF=0;  AC_SUBST([GNULIB_FLOORF])
25   GNULIB_FLOORL=0;  AC_SUBST([GNULIB_FLOORL])
26   GNULIB_FREXP=0;   AC_SUBST([GNULIB_FREXP])
27   GNULIB_FREXPL=0;  AC_SUBST([GNULIB_FREXPL])
28   GNULIB_LDEXPL=0;  AC_SUBST([GNULIB_LDEXPL])
29   GNULIB_MATHL=0;   AC_SUBST([GNULIB_MATHL])
30   GNULIB_ROUND=0;   AC_SUBST([GNULIB_ROUND])
31   GNULIB_ROUNDF=0;  AC_SUBST([GNULIB_ROUNDF])
32   GNULIB_ROUNDL=0;  AC_SUBST([GNULIB_ROUNDL])
33   GNULIB_SIGNBIT=0; AC_SUBST([GNULIB_SIGNBIT])
34   GNULIB_TRUNC=0;   AC_SUBST([GNULIB_TRUNC])
35   GNULIB_TRUNCF=0;  AC_SUBST([GNULIB_TRUNCF])
36   GNULIB_TRUNCL=0;  AC_SUBST([GNULIB_TRUNCL])
37   dnl Assume proper GNU behavior unless another module says otherwise.
38   HAVE_DECL_ACOSL=1;  AC_SUBST([HAVE_DECL_ACOSL])
39   HAVE_DECL_ASINL=1;  AC_SUBST([HAVE_DECL_ASINL])
40   HAVE_DECL_ATANL=1;  AC_SUBST([HAVE_DECL_ATANL])
41   HAVE_DECL_CEILF=1;  AC_SUBST([HAVE_DECL_CEILF])
42   HAVE_DECL_CEILL=1;  AC_SUBST([HAVE_DECL_CEILL])
43   HAVE_DECL_COSL=1;   AC_SUBST([HAVE_DECL_COSL])
44   HAVE_DECL_EXPL=1;   AC_SUBST([HAVE_DECL_EXPL])
45   HAVE_DECL_FLOORF=1; AC_SUBST([HAVE_DECL_FLOORF])
46   HAVE_DECL_FLOORL=1; AC_SUBST([HAVE_DECL_FLOORL])
47   HAVE_DECL_FREXPL=1; AC_SUBST([HAVE_DECL_FREXPL])
48   HAVE_DECL_LDEXPL=1; AC_SUBST([HAVE_DECL_LDEXPL])
49   HAVE_DECL_LOGL=1;   AC_SUBST([HAVE_DECL_LOGL])
50   HAVE_DECL_ROUND=1;  AC_SUBST([HAVE_DECL_ROUND])
51   HAVE_DECL_ROUNDF=1; AC_SUBST([HAVE_DECL_ROUNDF])
52   HAVE_DECL_ROUNDL=1; AC_SUBST([HAVE_DECL_ROUNDL])
53   HAVE_DECL_SINL=1;   AC_SUBST([HAVE_DECL_SINL])
54   HAVE_DECL_SQRTL=1;  AC_SUBST([HAVE_DECL_SQRTL])
55   HAVE_DECL_TANL=1;   AC_SUBST([HAVE_DECL_TANL])
56   HAVE_DECL_TRUNC=1;  AC_SUBST([HAVE_DECL_TRUNC])
57   HAVE_DECL_TRUNCF=1; AC_SUBST([HAVE_DECL_TRUNCF])
58   HAVE_DECL_TRUNCL=1; AC_SUBST([HAVE_DECL_TRUNCL])
59   REPLACE_FREXP=0;    AC_SUBST([REPLACE_FREXP])
60   REPLACE_FREXPL=0;   AC_SUBST([REPLACE_FREXPL])
61   REPLACE_LDEXPL=0;   AC_SUBST([REPLACE_LDEXPL])
62   REPLACE_SIGNBIT=0;  AC_SUBST([REPLACE_SIGNBIT])
63 ])