diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2014-11-10 21:12:33 -0500 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2014-11-14 19:01:38 -0500 |
commit | 427d28ce7d87934492636e1b3d48f726edb64f4e (patch) | |
tree | 10202e6163a3c2bad8c59d7804ac2c2517d676af /config_h.SH | |
parent | a2162cd9dc1948488604eec402a4ff93a7f4f604 (diff) | |
download | perl-427d28ce7d87934492636e1b3d48f726edb64f4e.tar.gz |
Add Configure symbols to all the missing C99 math APIs.
Almost all - e.g. isless() will stand in for the other isfoo()
order comparison macros.
Also not going for all the *l() versions of each interface.
Diffstat (limited to 'config_h.SH')
-rwxr-xr-x | config_h.SH | 213 |
1 files changed, 213 insertions, 0 deletions
diff --git a/config_h.SH b/config_h.SH index c3b5642ca9..c3aa608afe 100755 --- a/config_h.SH +++ b/config_h.SH @@ -356,6 +356,33 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_munmap HAS_MUNMAP /**/ +/* HAS_NAN: + * This symbol, if defined, indicates that the nan routine is + * available to generate NaN. + */ +#$d_nan HAS_NAN /**/ + +/* HAS_NEARBYINT: + * This symbol, if defined, indicates that the nextafter routine is + * available to return the integral value closest to (according to + the current rounding mode) to x. + */ +#$d_nearbyint HAS_NEARBYINT /**/ + +/* HAS_NEXTAFTER: + * This symbol, if defined, indicates that the nextafter routine is + * available to return the next machine representable long double from + * x in direction y. + */ +#$d_nextafter HAS_NEXTAFTER /**/ + +/* HAS_NEXTTOWARD: + * This symbol, if defined, indicates that the nexttoward routine is + * available to return the next machine representable long double from + * x in direction y. + */ +#$d_nexttoward HAS_NEXTTOWARD /**/ + /* HAS_NICE: * This symbol, if defined, indicates that the nice routine is * available. @@ -425,6 +452,16 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_readlink HAS_READLINK /**/ +/* HAS_REMAINDER: + * This symbol, if defined, indicates that the remainder routine is available. + */ +#$d_remainder HAS_REMAINDER /**/ + +/* HAS_REMQUO: + * This symbol, if defined, indicates that the remquo routine is available. + */ +#$d_remquo HAS_REMQUO /**/ + /* HAS_RENAME: * This symbol, if defined, indicates that the rename routine is available * to rename files. Otherwise you should do the unlink(), link(), unlink() @@ -432,6 +469,13 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_rename HAS_RENAME /**/ +/* HAS_RINT: + * This symbol, if defined, indicates that the rint routine is available + * to return the nearest integral value to x as double using the current + * rounding mode. + */ +#$d_rint HAS_RINT /**/ + /* HAS_RMDIR: * This symbol, if defined, indicates that the rmdir routine is * available to remove directories. Otherwise you should fork off a @@ -439,6 +483,11 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_rmdir HAS_RMDIR /**/ +/* HAS_ROUND: + * This symbol, if defined, indicates that the round routine is available. + */ +#$d_round HAS_ROUND /**/ + /* HAS_SELECT: * This symbol, if defined, indicates that the select routine is * available to select active file descriptors. If the timeout field @@ -612,6 +661,12 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_tcsetpgrp HAS_TCSETPGRP /**/ +/* HAS_TGAMMA: + * This symbol, if defined, indicates that the lgamma routine is + * available to do the gamma function. See also HAS_LGAMMA. + */ +#$d_tgamma HAS_TGAMMA /**/ + /* HAS_TRUNCATE: * This symbol, if defined, indicates that the truncate routine is * available to truncate files. @@ -3453,6 +3508,78 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_acosh HAS_ACOSH /**/ +/* HAS_ASINH: + * This symbol, if defined, indicates that the asinh routine is + * available to do the inverse hyperbolic sine function. + */ +#$d_asinh HAS_ASINH /**/ + +/* HAS_ATANH: + * This symbol, if defined, indicates that the atanh routine is + * available to do the inverse hyperbolic tangent function. + */ +#$d_atanh HAS_ATANH /**/ + +/* HAS_CBRT: + * This symbol, if defined, indicates that the cbrt routine is + * available to do the cubic root function. + */ +#$d_cbrt HAS_CBRT /**/ + +/* HAS_COPYSIGN: + * This symbol, if defined, indicates that the copysign routine is + * available to do the copysign function. + */ +#$d_copysign HAS_COPYSIGN /**/ + +/* HAS_ERF: + * This symbol, if defined, indicates that the erf routine is + * available to do the error function. + */ +#$d_erf HAS_ERF /**/ + +/* HAS_ERFC: + * This symbol, if defined, indicates that the erfc routine is + * available to do the complementary error function. + */ +#$d_erfc HAS_ERFC /**/ + +/* HAS_EXP2: + * This symbol, if defined, indicates that the exp2 routine is + * available to do the 2**x function. + */ +#$d_exp2 HAS_EXP2 /**/ + +/* HAS_EXPM1: + * This symbol, if defined, indicates that the expm1 routine is + * available to do the exp(x) - 1 when x is near 1. + */ +#$d_expm1 HAS_EXPM1 /**/ + +/* HAS_FMA: + * This symbol, if defined, indicates that the fma routine is + * available to do the multiply-add function. + */ +#$d_fma HAS_FMA /**/ + +/* HAS_FDIM: + * This symbol, if defined, indicates that the fdim routine is + * available to do the positive difference function. + */ +#$d_fdim HAS_FDIM /**/ + +/* HAS_FMAX: + * This symbol, if defined, indicates that the fma routine is + * available to do the maximum function. + */ +#$d_fmax HAS_FMAX /**/ + +/* HAS_FMIN: + * This symbol, if defined, indicates that the fma routine is + * available to do the minimum function. + */ +#$d_fmin HAS_FMIN /**/ + /* HAS_AINTL: * This symbol, if defined, indicates that the aintl routine is * available. If copysignl is also present we can emulate modfl. @@ -3799,6 +3926,18 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_hasmntopt HAS_HASMNTOPT /**/ +/* HAS_HYPOT: + * This symbol, if defined, indicates that the hypot routine is + * available to do the hypotenuse function. + */ +#$d_hypot HAS_HYPOT /**/ + +/* HAS_ILOGB: + * This symbol, if defined, indicates that the ilogb routine is + * available. + */ +#$d_ilogb HAS_ILOGB /**/ + /* HAS_ILOGBL: * This symbol, if defined, indicates that the ilogbl routine is * available. If scalbnl is also present we can emulate frexpl. @@ -3867,6 +4006,12 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_isnanl HAS_ISNANL /**/ +/* HAS_ISNORMAL: + * This symbol, if defined, indicates that the isnormal routine is + * available to check whether a double is normal (non-zero normalized). + */ +#$d_isnormal HAS_ISNORMAL /**/ + /* HAS_J0: * This symbol, if defined, indicates to the C program that the * j0() function is available for Bessel functions of the first @@ -3888,12 +4033,70 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_ldbl_dig HAS_LDBL_DIG /* */ +/* HAS_LGAMMA: + * This symbol, if defined, indicates that the lgamma routine is + * available to do the log gamma function. See also HAS_TGAMMA and + * HAS_LGAMMA_R. + */ +#$d_lgamma HAS_LGAMMA /**/ + +/* HAS_LGAMMA_R: + * This symbol, if defined, indicates that the lgamma_r routine is + * available to do the log gamma function without using the global + * signgam variable. + */ +#$d_lgamma_r HAS_LGAMMA_R /**/ + /* LIBM_LIB_VERSION: * This symbol, if defined, indicates that libm exports _LIB_VERSION * and that math.h defines the enum to manipulate it. */ #$d_libm_lib_version LIBM_LIB_VERSION /**/ +/* HAS_LLRINT: + * This symbol, if defined, indicates that the llrint routine is + * available to return the closest long long value according to + * the current rounding mode. + */ +#$d_llrint HAS_LLRINT /**/ + +/* HAS_LLROUND: + * This symbol, if defined, indicates that the llround routine is + * available to return the nearest long long value. + */ +#$d_llround HAS_LLROUND /**/ + +/* HAS_LOG1P: + * This symbol, if defined, indicates that the lgamma routine is + * available to do the log1p function. + */ +#$d_log1p HAS_LOG1P /**/ + +/* HAS_LOG2: + * This symbol, if defined, indicates that the lgamma routine is + * available to do the log2 function. + */ +#$d_log2 HAS_LOG2 /**/ + +/* HAS_LOGB: + * This symbol, if defined, indicates that the lgamma routine is + * available to do the logb function. + */ +#$d_logb HAS_LOGB /**/ + +/* HAS_LRINT: + * This symbol, if defined, indicates that the lrint routine is + * available to return the closest integral value according to + * the current rounding mode. + */ +#$d_lrint HAS_LRINT /**/ + +/* HAS_LROUND: + * This symbol, if defined, indicates that the lround routine is + * available to return the nearest integral value. + */ +#$d_lround HAS_LROUND /**/ + /* HAS_MADVISE: * This symbol, if defined, indicates that the madvise system call is * available to map a file into memory. @@ -4031,6 +4234,11 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_sbrkproto HAS_SBRK_PROTO /**/ +/* HAS_SCALBN: + * This symbol, if defined, indicates that the scalbn routine is available. + */ +#$d_scalbn HAS_SCALBN /**/ + /* HAS_SCALBNL: * This symbol, if defined, indicates that the scalbnl routine is * available. If ilogbl is also present we can emulate frexpl. @@ -4266,6 +4474,11 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$d_timegm HAS_TIMEGM /**/ +/* HAS_TRUNC: + * This symbol, if defined, indicates that the trunc routine is available. + */ +#$d_trunc HAS_TRUNC /**/ + /* HAS_TRUNCL: * This symbol, if defined, indicates that the truncl routine is * available. If copysignl is also present we can emulate modfl. |