which indicates to the C program that the asctime_r()
routine is available.
+d_asinh (d_asinh.U):
+ This variable conditionally defines the HAS_ASINH symbol, which
+ indicates to the C program that the asinh() routine is available.
+
+d_atanh (d_atanh.U):
+ This variable conditionally defines the HAS_ATANH symbol, which
+ indicates to the C program that the atanh() routine is available.
+
d_atolf (atolf.U):
This variable conditionally defines the HAS_ATOLF symbol, which
indicates to the C program that the atolf() routine is available.
This variable conditionally defines CASTNEG, which indicates
whether the C compiler can cast negative float to unsigned.
+d_cbrt (d_cbrt.U):
+ This variable conditionally defines the HAS_CBRT symbol, which
+ indicates to the C program that the cbrt() (cube root) function
+ is available.
+
d_charvspr (d_vprintf.U):
This variable conditionally defines CHARVSPRINTF if this system
has vsprintf returning type (char*). The trend seems to be to
indicates to the C program that this C compiler knows about the
const type.
+d_copysign (d_copysign.U):
+ This variable conditionally defines the HAS_COPYSIGN symbol, which
+ indicates to the C program that the copysign() routine is available.
+
d_copysignl (d_copysignl.U):
This variable conditionally defines the HAS_COPYSIGNL symbol, which
indicates to the C program that the copysignl() routine is available.
This variable conditionally defines EOF_NONBLOCK if EOF can be seen
when reading from a non-blocking I/O source.
+d_erf (d_erf.U):
+ This variable conditionally defines the HAS_ERF symbol, which
+ indicates to the C program that the erf() routine is available.
+
+d_erfc (d_erfc.U):
+ This variable conditionally defines the HAS_ERFC symbol, which
+ indicates to the C program that the erfc() routine is available.
+
d_eunice (Guess.U):
This variable conditionally defines the symbols EUNICE and VAX, which
alerts the C program that it must deal with idiosyncrasies of VMS.
+d_exp2 (d_exp2.U):
+ This variable conditionally defines the HAS_EXP2 symbol, which
+ indicates to the C program that the exp2() routine is available.
+
+d_expm1 (d_expm1.U):
+ This variable conditionally defines the HAS_EXPM1 symbol, which
+ indicates to the C program that the expm1() routine is available.
+
d_faststdio (d_faststdio.U):
This variable conditionally defines the HAS_FAST_STDIO symbol,
which indicates to the C program that the "fast stdio" is available
This variable contains the eventual value of the HAS_FD_SET symbol,
which indicates if your C compiler knows about the fd_set typedef.
+d_fdim (d_fdim.U):
+ This variable conditionally defines the HAS_FDIM symbol, which
+ indicates to the C program that the fdim() routine is available.
+
d_fds_bits (d_fd_set.U):
This variable contains the eventual value of the HAS_FDS_BITS symbol,
which indicates if your fd_set typedef contains the fds_bits member.
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.
a prototype for the flock() function. Otherwise, it is
up to the program to supply one.
+d_fma (d_fma.U):
+ This variable conditionally defines the HAS_FMA symbol, which
+ indicates to the C program that the fma() routine is available.
+
+d_fmax (d_fmax.U):
+ This variable conditionally defines the HAS_FMAX symbol, which
+ indicates to the C program that the fmax() routine is available.
+
+d_fmin (d_fmin.U):
+ This variable conditionally defines the HAS_FMIN symbol, which
+ indicates to the C program that the fmin() routine is available.
+
d_fork (d_fork.U):
This variable conditionally defines the HAS_FORK symbol, which
indicates to the C program that the fork() routine is available.
This variable conditionally defines the HAS_FP_CLASS symbol, which
indicates to the C program that the fp_class() routine is available.
-d_fp_class_l (d_fp_classl.U):
- This variable conditionally defines the HAS_FP_CLASSL symbol, which
- indicates to the C program that the fp_classl() routine is available.
-
-d_fp_classify (d_fp_classify.U):
+d_fp_classify (d_fpclassify.U):
This variable conditionally defines the HAS_FP_CLASSIFY symbol, which
indicates to the C program that the fp_classify() routine is available.
+d_fp_classl (d_fp_classl.U):
+ This variable conditionally defines the HAS_FP_CLASSL symbol, which
+ indicates to the C program that the fp_classl() routine is available.
+
d_fpathconf (d_pathconf.U):
This variable conditionally defines the HAS_FPATHCONF symbol, which
indicates to the C program that the pathconf() routine is available
This variable conditionally defines the HAS_FPCLASSL symbol, which
indicates to the C program that the fpclassl() routine is available.
+d_fpgetround (d_fpgetround.U):
+ This variable conditionally defines HAS_FPGETROUND if fpgetround()
+ is available to get the floating point rounding mode.
+
d_fpos64_t (d_fpos64_t.U):
This symbol will be defined if the C compiler supports fpos64_t.
This variable conditionally defines HAS_HTONL if htonl() and its
friends are available to do network order byte swapping.
+d_hypot (d_hypot.U):
+ This variable conditionally defines HAS_HYPOT if hypot is available
+ for numerically stable hypotenuse function.
+
+d_ilogb (d_ilogb.U):
+ This variable conditionally defines the HAS_ILOGB symbol, which
+ indicates to the C program that the ilogb() routine is available
+ for extracting the exponent of double x as a signed integer.
+
d_ilogbl (d_ilogbl.U):
This variable conditionally defines the HAS_ILOGBL symbol, which
- indicates to the C program that the ilogbl() routine is available.
+ indicates to the C program that the ilogbl() routine is available
+ for extracting the exponent of long double x as a signed integer.
If scalbnl is also present we can emulate frexpl.
d_inc_version_list (inc_version_list.U):
This variable conditionally defines the HAS_ISNANL symbol, which
indicates to the C program that the isnanl() routine is available.
-d_j0 (d_j0.U):
+d_isnormal (d_isnormal.U):
+ This variable conditionally defines the HAS_ISNORMAL symbol, which
+ indicates to the C program that the isnormal() routine is available.
+d_j0 (d_j0.U):
This variable conditionally defines the HAS_J0 symbol, which
indicates to the C program that the j0() routine is available.
-d_j0l (d_j0l.U):
-
+d_j0l (d_j0.U):
This variable conditionally defines the HAS_J0L symbol, which
indicates to the C program that the j0l() routine is available.
indicates to the C program that the killpg() routine is available
to kill process groups.
+d_lc_monetary_2008 (d_lc_monetary_2008.U):
+ This variable conditionally defines HAS_LC_MONETARY_2008 if libc
+ has the international currency locale rules from POSIX
+ 1003.1-2008.
+
d_lchown (d_lchown.U):
This variable conditionally defines the HAS_LCHOWN symbol, which
indicates to the C program that the lchown() routine is available
This variable conditionally defines the HAS_LDEXPL symbol, which
indicates to the C program that the ldexpl() routine is available.
+d_lgamma (d_lgamma.U):
+ This variable conditionally defines the HAS_LGAMMA symbol, which
+ indicates to the C program that the lgamma() routine is available
+ for the log gamma function. See also d_tgamma and d_lgamma_r.
+
+d_lgamma_r (d_lgamma_r.U):
+ This variable conditionally defines the HAS_LGAMMA_R symbol, which
+ indicates to the C program that the lgamma_r() routine is available
+ for the log gamma function, without using the global signgam variable.
+
d_libm_lib_version (d_libm_lib_version.U):
This variable conditionally defines the LIBM_LIB_VERSION symbol,
which indicates to the C program that math.h defines _LIB_VERSION
This variable conditionally defines HAS_LINK if link() is
available to create hard links.
+d_llrint (d_llrint.U):
+ This variable conditionally defines the HAS_LLRINT symbol, which
+ indicates to the C program that the llrint() routine is available
+ to return the long long value closest to (according to the current
+ rounding mode) to x.
+
+d_llrintl (d_llrintl.U):
+ This variable conditionally defines the HAS_LLRINTL symbol, which
+ indicates to the C program that the llrintl() routine is available
+ to return the long long value closest to (according to the current
+ rounding mode) to long double x.
+
+d_llround (d_llround.U):
+ This variable conditionally defines the HAS_LLROUND symbol, which
+ indicates to the C program that the llround() routine is available
+ to return the long long value nearest to x.
+
+d_llroundl (d_llroundl.U):
+ This variable conditionally defines the HAS_LLROUNDL symbol, which
+ indicates to the C program that the llroundl() routine is available
+ to return the long long value nearest to long double x.
+
d_localtime64 (d_timefuncs64.U):
This variable conditionally defines the HAS_LOCALTIME64 symbol, which
indicates to the C program that the localtime64 () routine is available.
This variable conditionally defines HAS_LOCKF if lockf() is
available to do file locking.
+d_log1p (d_log1p.U):
+ This variable conditionally defines the HAS_LOG1P symbol, which
+ indicates to the C program that the logp1() routine is available
+ to compute log(1 + x) for values of x close to zero.
+
+d_log2 (d_log2.U):
+ This variable conditionally defines the HAS_LOG2 symbol, which
+ indicates to the C program that the log2() routine is available
+ to compute log base two.
+
+d_logb (d_logb.U):
+ This variable conditionally defines the HAS_LOGB symbol, which
+ indicates to the C program that the logb() routine is available
+ to extract the exponent of x.
+
d_longdbl (d_longdbl.U):
This variable conditionally defines HAS_LONG_DOUBLE if
the long double type is supported.
This variable conditionally defines HAS_LONG_LONG if
the long long type is supported.
+d_lrint (d_lrint.U):
+ This variable conditionally defines the HAS_LRINT symbol, which
+ indicates to the C program that the lrint() routine is available
+ to return the integral value closest to (according to the current
+ rounding mode) to x.
+
+d_lrintl (d_lrintl.U):
+ This variable conditionally defines the HAS_LRINTL symbol, which
+ indicates to the C program that the lrintl() routine is available
+ to return the integral value closest to (according to the current
+ rounding mode) to long double x.
+
+d_lround (d_lround.U):
+ This variable conditionally defines the HAS_LROUND symbol, which
+ indicates to the C program that the lround() routine is available
+ to return the integral value nearest to x.
+
+d_lroundl (d_lroundl.U):
+ This variable conditionally defines the HAS_LROUNDL symbol, which
+ indicates to the C program that the lroundl() routine is available
+ to return the integral value nearest to x of the long double argument.
+
d_lseekproto (d_lseekproto.U):
This variable conditionally defines the HAS_LSEEK_PROTO symbol,
which indicates to the C program that the system provides
This variable conditionally defines the HAS_MODFL symbol, which
indicates to the C program that the modfl() routine is available.
-d_modfl_pow32_bug (d_modfl.U):
- This variable conditionally defines the HAS_MODFL_POW32_BUG symbol,
- which indicates that modfl() is broken for long doubles >= pow(2, 32).
- For example from 4294967303.150000 one would get 4294967302.000000
- and 1.150000. The bug has been seen in certain versions of glibc,
- release 2.2.2 is known to be okay.
-
d_modflproto (d_modfl.U):
This symbol, if defined, indicates that the system provides
a prototype for the modfl() function. Otherwise, it is up
This variable conditionally defines the HAS_MSG symbol, which
indicates that the entire msg*(2) library is present.
-d_msg_ctrunc (d_socket.U):
- This variable conditionally defines the HAS_MSG_CTRUNC symbol,
- which indicates that the MSG_CTRUNC is available. #ifdef is
- not enough because it may be an enum, glibc has been known to do this.
-
-d_msg_dontroute (d_socket.U):
- This variable conditionally defines the HAS_MSG_DONTROUTE symbol,
- which indicates that the MSG_DONTROUTE is available. #ifdef is
- not enough because it may be an enum, glibc has been known to do this.
-
-d_msg_oob (d_socket.U):
- This variable conditionally defines the HAS_MSG_OOB symbol,
- which indicates that the MSG_OOB is available. #ifdef is
- not enough because it may be an enum, glibc has been known to do this.
-
-d_msg_peek (d_socket.U):
- This variable conditionally defines the HAS_MSG_PEEK symbol,
- which indicates that the MSG_PEEK is available. #ifdef is
- not enough because it may be an enum, glibc has been known to do this.
-
-d_msg_proxy (d_socket.U):
- This variable conditionally defines the HAS_MSG_PROXY symbol,
- which indicates that the MSG_PROXY is available. #ifdef is
- not enough because it may be an enum, glibc has been known to do this.
-
d_msgctl (d_msgctl.U):
This variable conditionally defines the HAS_MSGCTL symbol, which
indicates to the C program that the msgctl() routine is available.
of the source want to take special action if MYMALLOC is used.
This may include different sorts of profiling or error detection.
+d_nan (d_nan.U):
+ This variable conditionally defines HAS_NAN if nan() is
+ available to generate NaN.
+
d_ndbm (i_ndbm.U):
This variable conditionally defines the HAS_NDBM symbol, which
indicates that both the ndbm.h include file and an appropriate ndbm
undefined. Consult the different d_*ndbm_h_uses_prototypes variables
to get the same information for alternative ndbm.h include files.
+d_nearbyint (d_nearbyint.U):
+ This variable conditionally defines HAS_NEARBYINT if nearbyint()
+ is available to return the integral value closest to (according to
+ the current rounding mode) to x.
+
+d_nextafter (d_nextafter.U):
+ This variable conditionally defines HAS_NEXTAFTER if nextafter()
+ is available to return the next machine representable double from
+ x in direction y.
+
+d_nexttoward (d_nexttoward.U):
+ This variable conditionally defines HAS_NEXTTOWARD if nexttoward()
+ is available to return the next machine representable long double from
+ x in direction y.
+
d_nice (d_nice.U):
This variable conditionally defines the HAS_NICE symbol, which
indicates to the C program that the nice() routine is available.
d_prctl (d_prctl.U):
This variable conditionally defines the HAS_PRCTL symbol, which
indicates to the C program that the prctl() routine is available.
+ Note that there are at least two prctl variants: Linux and Irix.
+ While they are somewhat similar, they are incompatible.
d_prctl_set_name (d_prctl.U):
This variable conditionally defines the HAS_PRCTL_SET_NAME symbol,
which indicates to the C program that the random_r()
routine is available.
+d_re_comp (d_regcmp.U):
+ This variable conditionally defines the HAS_RECOMP symbol, which
+ indicates to the C program that the re_comp() routine is available
+ for regular patern matching (usally on BSD). If so, it is likely that
+ re_exec() exists.
+
d_readdir (d_readdir.U):
This variable conditionally defines HAS_READDIR if readdir() is
available to read directory entries.
This variable conditionally defines the HAS_RECVMSG symbol, which
indicates to the C program that the recvmsg() routine is available.
+d_regcmp (d_regcmp.U):
+ This variable conditionally defines the HAS_REGCMP symbol, which
+ indicates to the C program that the regcmp() routine is available
+ for regular patern matching (usally on System V).
+
+d_regcomp (d_regcmp.U):
+ This variable conditionally defines the HAS_REGCOMP symbol, which
+ indicates to the C program that the regcomp() routine is available
+ for regular patern matching (usally on POSIX.2 conforming systems).
+
+d_remainder (d_remainder.U):
+ This variable conditionally defines the HAS_REMAINDER symbol, which
+ indicates to the C program that the remainder() routine is available.
+
+d_remquo (d_remquo.U):
+ This variable conditionally defines the HAS_REMQUO symbol, which
+ indicates to the C program that the remquo() routine is available.
+
d_rename (d_rename.U):
This variable conditionally defines the HAS_RENAME symbol, which
indicates to the C program that the rename() routine is available
This variable conditionally defines HAS_REWINDDIR if rewinddir() is
available.
+d_rint (d_rint.U):
+ This variable conditionally defines the HAS_RINT symbol, which
+ indicates to the C program that the rint() routine is available.
+
d_rmdir (d_rmdir.U):
This variable conditionally defines HAS_RMDIR if rmdir() is
available to remove directories.
+d_round (d_round.U):
+ This variable conditionally defines the HAS_ROUND symbol, which
+ indicates to the C program that the round() routine is available.
+
d_safebcpy (d_safebcpy.U):
This variable conditionally defines the HAS_SAFE_BCOPY symbol if
the bcopy() routine can do overlapping copies. Normally, you
a prototype for the sbrk() function. Otherwise, it is
up to the program to supply one.
+d_scalbn (d_scalbn.U):
+ This variable conditionally defines the HAS_SCALBN symbol, which
+ indicates to the C program that the scalbn() routine is available.
+
d_scalbnl (d_scalbnl.U):
This variable conditionally defines the HAS_SCALBNL symbol, which
indicates to the C program that the scalbnl() routine is available.
symbol if the sched_yield routine is available to yield
the execution of the current thread.
-d_scm_rights (d_socket.U):
- This variable conditionally defines the HAS_SCM_RIGHTS symbol,
- which indicates that the SCM_RIGHTS is available. #ifdef is
- not enough because it may be an enum, glibc has been known to do this.
-
d_SCNfldbl (longdblfio.U):
This variable conditionally defines the PERL_PRIfldbl symbol, which
indicates that stdio has a symbol to scan long doubles.
a prototype for the setresuid() function. Otherwise, it is
up to the program to supply one.
+d_stat (d_stat.U):
+ This variable conditionally defines HAS_STAT if stat() is
+ available to get file status.
+
d_statblks (d_statblks.U):
This variable conditionally defines USE_STAT_BLOCKS
if this system has a stat structure declaring
a prototype for the telldir() function. Otherwise, it is
up to the program to supply one.
+d_tgamma (d_tgamma.U):
+ This variable conditionally defines the HAS_TGAMMA symbol, which
+ indicates to the C program that the tgamma() routine is available
+ for the gamma function. See also d_lgamma.
+
d_time (d_time.U):
This variable conditionally defines the HAS_TIME symbol, which indicates
that the time() routine exists. The time() routine is normally
which indicates to the C program that the tmpnam_r()
routine is available.
+d_trunc (d_trunc.U):
+ This variable conditionally defines the HAS_TRUNC symbol, which
+ indicates to the C program that the trunc() routine is available
+ to round doubles towards zero.
+
d_truncate (d_truncate.U):
This variable conditionally defines HAS_TRUNCATE if truncate() is
available to truncate files.
+d_truncl (d_truncl.U):
+ This variable conditionally defines the HAS_TRUNCL symbol, which
+ indicates to the C program that the truncl() routine is available
+ to round long doubles towards zero. If copysignl is also present,
+ we can emulate modfl.
+
d_ttyname_r (d_ttyname_r.U):
This variable conditionally defines the HAS_TTYNAME_R symbol,
which indicates to the C program that the ttyname_r()
This variable contains the name of the dynamic loading file that
will be used with the package.
+doubleinfbytes (infnan.U):
+ This variable contains comma-separated list of hexadecimal bytes
+ for the double precision infinity.
+
+doublekind (longdblfio.U):
+ This variable, if defined, encodes the type of a double:
+ 1 = IEEE 754 32-bit little endian,
+ 2 = IEEE 754 32-bit big endian,
+ 3 = IEEE 754 64-bit little endian,
+ 4 = IEEE 754 64-bit big endian,
+ 5 = IEEE 754 128-bit little endian,
+ 6 = IEEE 754 128-bit big endian,
+ 7 = IEEE 754 64-bit mixed endian le-be,
+ 8 = IEEE 754 64-bit mixed endian be-le,
+ -1 = unknown format.
+
+doublemantbits (mantbits.U):
+ This symbol, if defined, tells how many mantissa bits
+ there are in double precision floating point format.
+ Note that this is usually DBL_MANT_DIG minus one, since
+ with the standard IEEE 754 formats DBL_MANT_DIG includes
+ the implicit bit which doesn't really exist.
+
+doublenanbytes (infnan.U):
+ This variable contains comma-separated list of hexadecimal bytes
+ for the double precision not-a-number.
+
doublesize (doublesize.U):
This variable contains the value of the DOUBLESIZE symbol, which
indicates to the C program how many bytes there are in a double.
This variable controls the value of I_FCNTL (which tells
the C program to include <fcntl.h>).
+i_fenv (i_fenv.U):
+ This variable conditionally defines the I_FENV symbol, which
+ indicates to the C program that <fenv.h> exists and should
+ be included.
+
i_float (i_float.U):
This variable conditionally defines the I_FLOAT symbol, and indicates
whether a C program may include <float.h> to get symbols like DBL_MAX
This variable conditionally defines I_PWD, which indicates
to the C program that it should include <pwd.h>.
+i_quadmath (i_quadmath.U):
+ This variable conditionally defines I_QUADMATH, which indicates
+ to the C program that it should include <quadmath.h>.
+
i_rpcsvcdbm (i_dbm.U):
This variable conditionally defines the I_RPCSVC_DBM symbol, which
indicates to the C program that <rpcsvc/dbm.h> exists and should
libraries. It is prepended to libpth, and is intended to be easily
set from the command line.
+longdblinfbytes (infnan.U):
+ This variable contains comma-separated list of hexadecimal bytes
+ for the long double precision infinity.
+
longdblkind (d_longdbl.U):
This variable, if defined, encodes the type of a long double:
- 0 = double, 1 = IEEE 754 128-bit big little endian,
- 2 = IEEE 754 128-bit big big endian, 3 = x86 80-bit little endian,
+ 0 = double, 1 = IEEE 754 128-bit little endian,
+ 2 = IEEE 754 128-bit big endian, 3 = x86 80-bit little endian,
4 = x86 80-bit big endian, 5 = double-double 128-bit little endian,
6 = double-double 128-bit big endian, -1 = unknown format.
+longdblmantbits (longdblmant.U):
+ This symbol, if defined, tells how many mantissa bits
+ there are in long double precision floating point format.
+ Note that this can be LDBL_MANT_DIG minus one,
+ since LDBL_MANT_DIG can include the IEEE 754 implicit bit.
+ The common x86-style 80-bit long double does not have
+ an implicit bit.
+
+longdblnanbytes (infnan.U):
+ This variable contains comma-separated list of hexadecimal bytes
+ for the long double precision not-a-number.
+
longdblsize (d_longdbl.U):
This variable contains the value of the LONG_DOUBLESIZE symbol, which
indicates to the C program how many bytes there are in a long double,
- if this system supports long doubles.
+ if this system supports long doubles. Note that this is
+ sizeof(long double), which may include unused bytes.
longlongsize (d_longlong.U):
This variable contains the value of the LONGLONGSIZE symbol, which
This variable contains the format string used for printing
a Perl NV using %G-ish floating point format.
+nvmantbits (mantbits.U):
+ This variable tells how many bits the mantissa of a Perl NV has,
+ not including the possible implicit bit.
+
nvsize (perlxv.U):
- This variable is the size of an NV in bytes.
+ This variable is the size of a Perl NV in bytes.
+ Note that some floating point formats have unused bytes.
nvtype (perlxv.U):
This variable contains the C type used for Perl's NV.
for hints files to indicate that POSIX will not compile
on a particular system.
+usequadmath (usequadmath.U):
+ This variable conditionally defines the USE_QUADMATH symbol,
+ and indicates that the quadmath library __float128 long doubles
+ should be used when available.
+
usereentrant (usethreads.U):
This variable conditionally defines the USE_REENTRANT_API symbol,
which indicates that the thread code may try to use the various