diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2014-08-30 09:17:11 -0400 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2014-08-31 17:53:07 -0400 |
commit | 2f6b96eb42d99b04896d80305f8877cb2440cf44 (patch) | |
tree | 828ddf85b837cde1ddc957588b9b830a29816247 | |
parent | 935e3c48aca0518881b33f771790170d02704a26 (diff) | |
download | perl-2f6b96eb42d99b04896d80305f8877cb2440cf44.tar.gz |
POSIX math: Configure scan d_fegetround and i_fenv.
-rwxr-xr-x | Configure | 12 | ||||
-rw-r--r-- | Cross/config.sh-arm-linux | 2 | ||||
-rw-r--r-- | NetWare/config.wc | 2 | ||||
-rw-r--r-- | Porting/Glossary | 4 | ||||
-rw-r--r-- | Porting/config.sh | 2 | ||||
-rwxr-xr-x | config_h.SH | 12 | ||||
-rw-r--r-- | configure.com | 2 | ||||
-rw-r--r-- | plan9/config_sh.sample | 2 | ||||
-rw-r--r-- | symbian/config.sh | 2 | ||||
-rw-r--r-- | uconfig.h | 16 | ||||
-rw-r--r-- | uconfig.sh | 2 | ||||
-rw-r--r-- | uconfig64.sh | 2 | ||||
-rw-r--r-- | win32/config.ce | 2 | ||||
-rw-r--r-- | win32/config.gc | 2 | ||||
-rw-r--r-- | win32/config.vc | 2 |
15 files changed, 64 insertions, 2 deletions
@@ -462,6 +462,7 @@ d_fcntl_can_lock='' d_fd_macros='' d_fd_set='' d_fds_bits='' +d_fegetround='' d_fgetpos='' d_finite='' d_finitel='' @@ -911,6 +912,7 @@ i_dirent='' i_dlfcn='' i_execinfo='' i_fcntl='' +i_fenv='' i_float='' i_fp='' i_fp_class='' @@ -6757,6 +6759,10 @@ EOCP esac $rm_try +: see if this is a fenv.h system +set fenv.h i_fenv +eval $inhdr + : see if this is a float.h system set float.h i_float eval $inhdr @@ -13679,6 +13685,10 @@ EOM fi $rm_try +: see if fegetround exists +set fegetround d_fegetround +eval $inlibc + : see if fgetpos exists set fgetpos d_fgetpos eval $inlibc @@ -23323,6 +23333,7 @@ d_fcntl_can_lock='$d_fcntl_can_lock' d_fd_macros='$d_fd_macros' d_fd_set='$d_fd_set' d_fds_bits='$d_fds_bits' +d_fegetround='$d_fegetround' d_fgetpos='$d_fgetpos' d_finite='$d_finite' d_finitel='$d_finitel' @@ -23798,6 +23809,7 @@ i_dirent='$i_dirent' i_dlfcn='$i_dlfcn' i_execinfo='$i_execinfo' i_fcntl='$i_fcntl' +i_fenv='$i_fenv' i_float='$i_float' i_fp='$i_fp' i_fp_class='$i_fp_class' diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux index 8360124799..21d4169ba9 100644 --- a/Cross/config.sh-arm-linux +++ b/Cross/config.sh-arm-linux @@ -192,6 +192,7 @@ d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' d_fds_bits='undef' +d_fegetround='define' d_fgetpos='define' d_finite='define' d_finitel='define' @@ -661,6 +662,7 @@ i_dirent='define' i_dlfcn='define' i_execinfo='undef' i_fcntl='undef' +i_fenv='define' i_float='define' i_fp='undef' i_fp_class='undef' diff --git a/NetWare/config.wc b/NetWare/config.wc index 675d9ba197..7e94133202 100644 --- a/NetWare/config.wc +++ b/NetWare/config.wc @@ -180,6 +180,7 @@ d_fcntl_can_lock='undef' d_fd_macros='define' d_fd_set='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='undef' d_finitel='undef' @@ -643,6 +644,7 @@ i_dirent='define' i_dlfcn='define' i_execinfo='undef' i_fcntl='define' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' diff --git a/Porting/Glossary b/Porting/Glossary index d514458688..5a436e0d26 100644 --- a/Porting/Glossary +++ b/Porting/Glossary @@ -808,6 +808,10 @@ d_fds_bits (d_fd_set.U): a half-fast job and neglected to provide the macros to manipulate an fd_set, HAS_FDS_BITS will let us know how to fix the gaffe. +d_fegetround (d_fegetround.U): + This variable conditionally defines HAS_FEGETROUND if fegetround() is + available to get the floating point rounding mode. + d_fgetpos (d_fgetpos.U): This variable conditionally defines HAS_FGETPOS if fgetpos() is available to get the file position indicator. diff --git a/Porting/config.sh b/Porting/config.sh index 42099c6f25..de2425d885 100644 --- a/Porting/config.sh +++ b/Porting/config.sh @@ -201,6 +201,7 @@ d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='define' @@ -676,6 +677,7 @@ i_dirent='define' i_dlfcn='define' i_execinfo='undef' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' diff --git a/config_h.SH b/config_h.SH index fd070ae15a..d55726e5ce 100755 --- a/config_h.SH +++ b/config_h.SH @@ -162,6 +162,12 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_fcntl HAS_FCNTL /**/ +/* HAS_FEGETROUND: + * This symbol, if defined, indicates that the fegetround routine is + * available to get the floating point rounding mode. + */ +#$d_fegetround HAS_FEGETROUND /**/ + /* HAS_FGETPOS: * This symbol, if defined, indicates that the fgetpos routine is * available to get the file position indicator, similar to ftell(). @@ -708,6 +714,12 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$i_fcntl I_FCNTL /**/ +/* I_FENV: + * This symbol, if defined, indicates to the C program that it should + * include <fenv.h> to get the floating point environment definitions. + */ +#$i_fenv I_FENV /**/ + /* I_FLOAT: * This symbol, if defined, indicates to the C program that it should * include <float.h> to get definition of symbols like DBL_MAX or diff --git a/configure.com b/configure.com index b1763c1289..33a4869bd6 100644 --- a/configure.com +++ b/configure.com @@ -5974,6 +5974,7 @@ $ WC "d_fcntl_can_lock='" + d_fcntl_can_lock + "'" $ WC "d_fd_set='" + d_fd_set + "'" $ WC "d_fd_macros='define'" $ WC "d_fds_bits='define'" +$ WC "d_fegetround='undef'" $ WC "d_fgetpos='define'" $ IF F$ELEMENT(0, "-", archname) .NES. "VMS_VAX" .AND. use_ieee_math $ THEN @@ -6414,6 +6415,7 @@ $ WC "i_dirent='undef'" ! we roll our own $ WC "i_dlfcn='undef'" $ WC "i_execinfo='undef'" $ WC "i_fcntl='" + i_fcntl + "'" +$ WC "i_fenv='undef'" $ WC "i_float='define'" $ WC "i_fp='undef'" $ WC "i_fp_class='undef'" diff --git a/plan9/config_sh.sample b/plan9/config_sh.sample index 79bf0afddb..e554ba230a 100644 --- a/plan9/config_sh.sample +++ b/plan9/config_sh.sample @@ -192,6 +192,7 @@ d_fcntl_can_lock='undef' d_fd_macros='undef' d_fd_set='undef' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='undef' d_finitel='undef' @@ -655,6 +656,7 @@ i_dirent='define' i_dlfcn='undef' i_execinfo='undef' i_fcntl='define' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' diff --git a/symbian/config.sh b/symbian/config.sh index 50cf11dbdb..ba281855a4 100644 --- a/symbian/config.sh +++ b/symbian/config.sh @@ -136,6 +136,7 @@ d_fcntl_can_lock='undef' d_fd_macros='undef' d_fd_set='undef' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='undef' d_finite='undef' d_finitel='undef' @@ -582,6 +583,7 @@ i_dirent='define' i_dlfcn='undef' i_execinfo='undef' i_fcntl='define' +i_fenv='undef' i_float='undef' i_fp='undef' i_fp_class='undef' @@ -127,6 +127,12 @@ */ /*#define HAS_FCNTL / **/ +/* HAS_FEGETROUND: + * This symbol, if defined, indicates that the fegetround routine is + * available to get the floating point rounding mode. + */ +/*#define HAS_FEGETROUND / **/ + /* HAS_FGETPOS: * This symbol, if defined, indicates that the fgetpos routine is * available to get the file position indicator, similar to ftell(). @@ -673,6 +679,12 @@ */ /*#define I_FCNTL / **/ +/* I_FENV: + * This symbol, if defined, indicates to the C program that it should + * include <fenv.h> to get the floating point environment definitions. + */ +/*#define I_FENV / **/ + /* I_FLOAT: * This symbol, if defined, indicates to the C program that it should * include <float.h> to get definition of symbols like DBL_MAX or @@ -4829,6 +4841,6 @@ #endif /* Generated from: - * 12401deb2bd159475d6a3533b0fe0fae288825fd27c04f4f0f6655e4959ec9b7 config_h.SH - * d4624634f898a9b01fb9baadf847f7614e0d036dd077852f40d37a9593af8e38 uconfig.sh + * 0486f11f3248b90661c12addfea9b9c4166aa7ab6b424d1b7b901b7bf1a62c89 config_h.SH + * a376d0ca25730310baa72472d022838903cee6091bc06eb4a01fc6c22d6f9c4a uconfig.sh * ex: set ro: */ diff --git a/uconfig.sh b/uconfig.sh index 33e3d8f99d..49df8be0ff 100644 --- a/uconfig.sh +++ b/uconfig.sh @@ -130,6 +130,7 @@ d_fcntl_can_lock='undef' d_fd_macros='undef' d_fd_set='undef' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='undef' d_finite='undef' d_finitel='undef' @@ -568,6 +569,7 @@ i_dirent='define' i_dlfcn='undef' i_execinfo='undef' i_fcntl='undef' +i_fenv='undef' i_float='undef' i_fp='undef' i_fp_class='undef' diff --git a/uconfig64.sh b/uconfig64.sh index bab54fb0e9..ebd2dcb7b9 100644 --- a/uconfig64.sh +++ b/uconfig64.sh @@ -131,6 +131,7 @@ d_fcntl_can_lock='undef' d_fd_macros='undef' d_fd_set='undef' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='undef' d_finite='undef' d_finitel='undef' @@ -569,6 +570,7 @@ i_dirent='define' i_dlfcn='undef' i_execinfo='undef' i_fcntl='undef' +i_fenv='undef' i_float='undef' i_fp='undef' i_fp_class='undef' diff --git a/win32/config.ce b/win32/config.ce index 6f1e5590fb..8258479c2d 100644 --- a/win32/config.ce +++ b/win32/config.ce @@ -178,6 +178,7 @@ d_fcntl_can_lock='undef' d_fd_macros='define' d_fd_set='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='undef' d_finitel='undef' @@ -639,6 +640,7 @@ i_dirent='define' i_dlfcn='define' i_execinfo='undef' i_fcntl='define' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' diff --git a/win32/config.gc b/win32/config.gc index 6206fee3df..2885d3fdce 100644 --- a/win32/config.gc +++ b/win32/config.gc @@ -179,6 +179,7 @@ d_fcntl_can_lock='undef' d_fd_macros='define' d_fd_set='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='undef' d_finitel='undef' @@ -651,6 +652,7 @@ i_dirent='define' i_dlfcn='define' i_execinfo='undef' i_fcntl='define' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' diff --git a/win32/config.vc b/win32/config.vc index 19369f2b0a..45ccd24727 100644 --- a/win32/config.vc +++ b/win32/config.vc @@ -179,6 +179,7 @@ d_fcntl_can_lock='undef' d_fd_macros='define' d_fd_set='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='undef' d_finitel='undef' @@ -650,6 +651,7 @@ i_dirent='define' i_dlfcn='define' i_execinfo='undef' i_fcntl='define' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' |