diff options
Diffstat (limited to 'gl/m4/float_h.m4')
-rw-r--r-- | gl/m4/float_h.m4 | 54 |
1 files changed, 31 insertions, 23 deletions
diff --git a/gl/m4/float_h.m4 b/gl/m4/float_h.m4 index 397f2d1..2f0c9c4 100644 --- a/gl/m4/float_h.m4 +++ b/gl/m4/float_h.m4 | |||
@@ -1,5 +1,5 @@ | |||
1 | # float_h.m4 serial 9 | 1 | # float_h.m4 serial 13 |
2 | dnl Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc. | 2 | dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. |
3 | dnl This file is free software; the Free Software Foundation | 3 | dnl This file is free software; the Free Software Foundation |
4 | dnl gives unlimited permission to copy and/or distribute it, | 4 | dnl gives unlimited permission to copy and/or distribute it, |
5 | dnl with or without modifications, as long as this notice is preserved. | 5 | dnl with or without modifications, as long as this notice is preserved. |
@@ -8,42 +8,46 @@ AC_DEFUN([gl_FLOAT_H], | |||
8 | [ | 8 | [ |
9 | AC_REQUIRE([AC_PROG_CC]) | 9 | AC_REQUIRE([AC_PROG_CC]) |
10 | AC_REQUIRE([AC_CANONICAL_HOST]) | 10 | AC_REQUIRE([AC_CANONICAL_HOST]) |
11 | FLOAT_H= | 11 | GL_GENERATE_FLOAT_H=false |
12 | REPLACE_FLOAT_LDBL=0 | 12 | REPLACE_FLOAT_LDBL=0 |
13 | case "$host_os" in | 13 | case "$host_os" in |
14 | aix* | beos* | openbsd* | mirbsd* | irix*) | 14 | aix* | beos* | openbsd* | mirbsd* | irix*) |
15 | FLOAT_H=float.h | 15 | GL_GENERATE_FLOAT_H=true |
16 | ;; | 16 | ;; |
17 | freebsd*) | 17 | freebsd* | dragonfly*) |
18 | case "$host_cpu" in | 18 | case "$host_cpu" in |
19 | changequote(,)dnl | 19 | changequote(,)dnl |
20 | i[34567]86 ) | 20 | i[34567]86 ) |
21 | changequote([,])dnl | 21 | changequote([,])dnl |
22 | FLOAT_H=float.h | 22 | GL_GENERATE_FLOAT_H=true |
23 | ;; | 23 | ;; |
24 | x86_64 ) | 24 | x86_64 ) |
25 | # On x86_64 systems, the C compiler may still be generating | 25 | # On x86_64 systems, the C compiler may still be generating |
26 | # 32-bit code. | 26 | # 32-bit code. |
27 | AC_EGREP_CPP([yes], | 27 | AC_COMPILE_IFELSE( |
28 | [#if defined __LP64__ || defined __x86_64__ || defined __amd64__ | 28 | [AC_LANG_SOURCE( |
29 | yes | 29 | [[#if defined __LP64__ || defined __x86_64__ || defined __amd64__ |
30 | #endif], | 30 | int ok; |
31 | #else | ||
32 | error fail | ||
33 | #endif | ||
34 | ]])], | ||
31 | [], | 35 | [], |
32 | [FLOAT_H=float.h]) | 36 | [GL_GENERATE_FLOAT_H=true]) |
33 | ;; | 37 | ;; |
34 | esac | 38 | esac |
35 | ;; | 39 | ;; |
36 | linux*) | 40 | linux*) |
37 | case "$host_cpu" in | 41 | case "$host_cpu" in |
38 | powerpc*) | 42 | powerpc*) |
39 | FLOAT_H=float.h | 43 | GL_GENERATE_FLOAT_H=true |
40 | ;; | 44 | ;; |
41 | esac | 45 | esac |
42 | ;; | 46 | ;; |
43 | esac | 47 | esac |
44 | case "$host_os" in | 48 | case "$host_os" in |
45 | aix* | freebsd* | linux*) | 49 | aix* | freebsd* | dragonfly* | linux*) |
46 | if test -n "$FLOAT_H"; then | 50 | if $GL_GENERATE_FLOAT_H; then |
47 | REPLACE_FLOAT_LDBL=1 | 51 | REPLACE_FLOAT_LDBL=1 |
48 | fi | 52 | fi |
49 | ;; | 53 | ;; |
@@ -69,14 +73,20 @@ int main () | |||
69 | [gl_cv_func_itold_works=no], | 73 | [gl_cv_func_itold_works=no], |
70 | [case "$host" in | 74 | [case "$host" in |
71 | sparc*-*-linux*) | 75 | sparc*-*-linux*) |
72 | AC_EGREP_CPP([yes], | 76 | AC_COMPILE_IFELSE( |
73 | [#if defined __LP64__ || defined __arch64__ | 77 | [AC_LANG_SOURCE( |
74 | yes | 78 | [[#if defined __LP64__ || defined __arch64__ |
75 | #endif], | 79 | int ok; |
80 | #else | ||
81 | error fail | ||
82 | #endif | ||
83 | ]])], | ||
76 | [gl_cv_func_itold_works="guessing no"], | 84 | [gl_cv_func_itold_works="guessing no"], |
77 | [gl_cv_func_itold_works="guessing yes"]) | 85 | [gl_cv_func_itold_works="guessing yes"]) |
78 | ;; | 86 | ;; |
79 | *) gl_cv_func_itold_works="guessing yes" ;; | 87 | # Guess yes on native Windows. |
88 | mingw*) gl_cv_func_itold_works="guessing yes" ;; | ||
89 | *) gl_cv_func_itold_works="guessing yes" ;; | ||
80 | esac | 90 | esac |
81 | ]) | 91 | ]) |
82 | ]) | 92 | ]) |
@@ -85,14 +95,12 @@ int main () | |||
85 | REPLACE_ITOLD=1 | 95 | REPLACE_ITOLD=1 |
86 | dnl We add the workaround to <float.h> but also to <math.h>, | 96 | dnl We add the workaround to <float.h> but also to <math.h>, |
87 | dnl to increase the chances that the fix function gets pulled in. | 97 | dnl to increase the chances that the fix function gets pulled in. |
88 | FLOAT_H=float.h | 98 | GL_GENERATE_FLOAT_H=true |
89 | ;; | 99 | ;; |
90 | esac | 100 | esac |
91 | 101 | ||
92 | if test -n "$FLOAT_H"; then | 102 | if $GL_GENERATE_FLOAT_H; then |
93 | gl_NEXT_HEADERS([float.h]) | 103 | gl_NEXT_HEADERS([float.h]) |
94 | fi | 104 | fi |
95 | AC_SUBST([FLOAT_H]) | ||
96 | AM_CONDITIONAL([GL_GENERATE_FLOAT_H], [test -n "$FLOAT_H"]) | ||
97 | AC_SUBST([REPLACE_ITOLD]) | 105 | AC_SUBST([REPLACE_ITOLD]) |
98 | ]) | 106 | ]) |