This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Finish adding memrchr Configure probe
[perl5.git] / Porting / Glossary
index 4ff252f..58e06e7 100644 (file)
@@ -699,6 +699,38 @@ d_dosuid (d_dosuid.U):
        tells the C program that it should insert setuid emulation code
        on hosts which have setuid #! scripts disabled.
 
+d_double_has_inf (longdblfio.U):
+       This variable conditionally defines the symbol DOUBLE_HAS_INF
+       which indicates that the double type has an infinity.
+
+d_double_has_nan (longdblfio.U):
+       This variable conditionally defines the symbol DOUBLE_HAS_INF
+       which indicates that the double type has a not-a-number.
+
+d_double_has_negative_zero (longdblfio.U):
+       This variable conditionally defines the symbol DOUBLE_HAS_NEGATIVE_ZERO
+       which indicates that the double type has a negative zero.
+
+d_double_has_subnormals (longdblfio.U):
+       This variable conditionally defines the symbol DOUBLE_HAS_SUBNORMALS
+       which indicates that the double type has subnormals (denormals).
+
+d_double_style_cray (longdblfio.U):
+       This variable conditionally defines the symbol DOUBLE_STYLE_CRAY
+       which indicates that the double is the 64-bit CRAY mainframe format.
+
+d_double_style_ibm (longdblfio.U):
+       This variable conditionally defines the symbol DOUBLE_STYLE_IBM,
+       which indicates that the double is the 64-bit IBM mainframe format.
+
+d_double_style_ieee (longdblfio.U):
+       This variable conditionally defines the symbol DOUBLE_STYLE_IEEE,
+       which indicates that the double is the 64-bit IEEE 754.
+
+d_double_style_vax (longdblfio.U):
+       This variable conditionally defines the symbol DOUBLE_STYLE_VAX,
+       which indicates that the double is the 64-bit VAX format D or G.
+
 d_drand48_r (d_drand48_r.U):
        This variable conditionally defines the HAS_DRAND48_R symbol,
        which indicates to the C program that the drand48_r()
@@ -714,6 +746,11 @@ d_dup2 (d_dup2.U):
        This variable conditionally defines HAS_DUP2 if dup2() is
        available to duplicate file descriptors.
 
+d_duplocale (d_newlocale.U):
+       This variable conditionally defines the HAS_DUPLOCALE symbol, which
+       indicates to the C program that the duplocale() routine is available
+       to duplicate a locale object.
+
 d_eaccess (d_eaccess.U):
        This variable conditionally defines the HAS_EACCESS symbol, which
        indicates to the C program that the eaccess() routine is available.
@@ -812,6 +849,10 @@ d_fchmod (d_fchmod.U):
        indicates to the C program that the fchmod() routine is available
        to change mode of opened files.
 
+d_fchmodat (d_fsat.U):
+       This variable conditionally defines the HAS_FCHMODAT symbol, which
+       indicates the POSIX fchmodat() function is available.
+
 d_fchown (d_fchown.U):
        This variable conditionally defines the HAS_FCHOWN symbol, which
        indicates to the C program that the fchown() routine is available
@@ -834,6 +875,10 @@ d_fd_set (d_fd_set.U):
        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_fdclose (d_fdclose.U):
+       This variable conditionally defines the HAS_FDCLOSE symbol, which
+       indicates to the C program that the fdclose() routine is available.
+
 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.
@@ -974,6 +1019,12 @@ d_futimes (d_futimes.U):
        This variable conditionally defines the HAS_FUTIMES symbol, which
        indicates to the C program that the futimes() routine is available.
 
+d_gai_strerror (d_gai_strerror.U):
+       This variable conditionally defines the HAS_GAI_STRERROR symbol
+       if the gai_strerror() routine is available and can be used to
+       translate error codes returned by getaddrinfo() into human
+       readable strings.
+
 d_Gconvert (d_gconvert.U):
        This variable holds what Gconvert is defined as to convert
        floating point numbers into strings.  By default, Configure
@@ -1405,6 +1456,10 @@ d_isinfl (d_isinfl.U):
        This variable conditionally defines the HAS_ISINFL symbol, which
        indicates to the C program that the isinfl() routine is available.
 
+d_isless (d_isless.U):
+       This variable conditionally defines the HAS_ISLESS symbol, which
+       indicates to the C program that the isless() routine is available.
+
 d_isnan (d_isnan.U):
        This variable conditionally defines the HAS_ISNAN symbol, which
        indicates to the C program that the isnan() routine is available.
@@ -1474,17 +1529,21 @@ d_link (d_link.U):
        This variable conditionally defines HAS_LINK if link() is
        available to create hard links.
 
+d_linkat (d_fsat.U):
+       This variable conditionally defines the HAS_LINKAT symbol, which
+       indicates the POSIX linkat() function is available.
+
 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.
+       to return the long long value closest to a double (according
+       to the current rounding mode).
 
 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.
+       to return the long long value closest to a long double (according
+       to the current rounding mode).
 
 d_llround (d_llround.U):
        This variable conditionally defines the HAS_LLROUND symbol, which
@@ -1494,7 +1553,7 @@ d_llround (d_llround.U):
 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.
+       to return the long long value nearest to x away from zero.
 
 d_localtime64 (d_timefuncs64.U):
        This variable conditionally defines the HAS_LOCALTIME64 symbol, which
@@ -1532,6 +1591,30 @@ d_logb (d_logb.U):
        indicates to the C program that the logb() routine is available
        to extract the exponent of x.
 
+d_long_double_style_ieee (d_longdbl.U):
+       This variable conditionally defines LONG_DOUBLE_STYLE_IEEE
+       if the long double is any of the IEEE 754 style long doubles:
+       LONG_DOUBLE_STYLE_IEEE_STD, LONG_DOUBLE_STYLE_IEEE_EXTENDED,
+       LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE.
+
+d_long_double_style_ieee_doubledouble (d_longdbl.U):
+       This variable conditionally defines LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE
+       if the long double is the 128-bit IEEE 754 double-double.
+
+d_long_double_style_ieee_extended (d_longdbl.U):
+       This variable conditionally defines LONG_DOUBLE_STYLE_IEEE_EXTENDED
+       if the long double is the 80-bit IEEE 754 extended precision.
+       Note that despite the 'extended' this is less than the 'std',
+       since thisis an extension of the double precision.
+
+d_long_double_style_ieee_std (d_longdbl.U):
+       This variable conditionally defines LONG_DOUBLE_STYLE_IEEE_STD
+       if the long double is the 128-bit IEEE 754.
+
+d_long_double_style_vax (d_longdbl.U):
+       This variable conditionally defines LONG_DOUBLE_STYLE_VAX
+       if the long double is the 128-bit VAX format H.
+
 d_longdbl (d_longdbl.U):
        This variable conditionally defines HAS_LONG_DOUBLE if
        the long double type is supported.
@@ -1543,14 +1626,14 @@ d_longlong (d_longlong.U):
 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.
+       to return the integral value closest to a double (according
+       to the current rounding mode).
 
 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.
+       to return the integral value closest to a long double (according
+       to the current rounding mode).
 
 d_lround (d_lround.U):
        This variable conditionally defines the HAS_LROUND symbol, which
@@ -1560,7 +1643,7 @@ d_lround (d_lround.U):
 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.
+       to return the integral value nearest to x away from zero.
 
 d_lseekproto (d_lseekproto.U):
        This variable conditionally defines the HAS_LSEEK_PROTO symbol,
@@ -1614,6 +1697,12 @@ d_memcpy (d_memcpy.U):
        indicates to the C program that the memcpy() routine is available
        to copy blocks of memory.
 
+d_memmem (d_memmem.U):
+       This variable conditionally defines the HAS_MEMMEM symbol, which
+       indicates to the C program that the memmem() routine is available
+       to return a pointer to the start of the first occurance of a
+       substring in a memory area (or NULL if not found).
+
 d_memmove (d_memmove.U):
        This variable conditionally defines the HAS_MEMMOVE symbol, which
        indicates to the C program that the memmove() routine is available
@@ -1624,6 +1713,12 @@ d_memset (d_memset.U):
        indicates to the C program that the memset() routine is available
        to set blocks of memory.
 
+d_memrchr (d_memrchr.U):
+       This variable conditionally defines the HAS_MEMRCHR symbol, which
+       indicates to the C program that the memrchr() routine is available
+       to return a pointer to the last occurrence of a byte in a memory
+       area (or NULL if not found).
+
 d_mkdir (d_mkdir.U):
        This variable conditionally defines the HAS_MKDIR symbol, which
        indicates to the C program that the mkdir() routine is available
@@ -1679,6 +1774,31 @@ d_msg (d_msg.U):
        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.
@@ -1791,6 +1911,10 @@ d_open3 (d_open3.U):
        which indicates to the C program that the 3 argument version of
        the open(2) function is available.
 
+d_openat (d_fsat.U):
+       This variable conditionally defines the HAS_OPENAT symbol, which
+       indicates the POSIX openat() function is available.
+
 d_pathconf (d_pathconf.U):
        This variable conditionally defines the HAS_PATHCONF symbol, which
        indicates to the C program that the pathconf() routine is available
@@ -1965,6 +2089,11 @@ d_quad (quadtype.U):
        This variable, if defined, tells that there's a 64-bit integer type,
        quadtype.
 
+d_querylocale (d_newlocale.U):
+       This variable conditionally defines the HAS_QUERYLOCALE symbol, which
+       indicates to the C program that the querylocale() routine is available
+       to return the name of the locale for a category mask.
+
 d_random_r (d_random_r.U):
        This variable conditionally defines the HAS_RANDOM_R symbol,
        which indicates to the C program that the random_r()
@@ -2026,6 +2155,10 @@ d_rename (d_rename.U):
        indicates to the C program that the rename() routine is available
        to rename files.
 
+d_renameat (d_fsat.U):
+       This variable conditionally defines the HAS_RENAMEAT symbol, which
+       indicates the POSIX renameat() function is available.
+
 d_rewinddir (d_readdir.U):
        This variable conditionally defines HAS_REWINDDIR if rewinddir() is
        available.
@@ -2077,6 +2210,11 @@ d_sched_yield (d_pthread_y.U):
        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.
@@ -2298,6 +2436,38 @@ d_sigaction (d_sigaction.U):
        This variable conditionally defines the HAS_SIGACTION symbol, which
        indicates that the Vr4 sigaction() routine is available.
 
+d_siginfo_si_addr (d_siginfo_si.U):
+       This variable conditionally defines the HAS_SIGINFO_SI_ADDR symbol,
+       which indicates that the siginfo_t struct has the si_addr member.
+
+d_siginfo_si_band (d_siginfo_si.U):
+       This variable conditionally defines the HAS_SIGINFO_SI_BAND symbol,
+       which indicates that the siginfo_t struct has the si_band member.
+
+d_siginfo_si_errno (d_siginfo_si.U):
+       This variable conditionally defines the HAS_SIGINFO_SI_ERRNO symbol,
+       which indicates that the siginfo_t struct has the si_errno member.
+
+d_siginfo_si_fd (d_siginfo_si.U):
+       This variable conditionally defines the HAS_SIGINFO_SI_FD symbol,
+       which indicates that the siginfo_t struct has the si_fd member.
+
+d_siginfo_si_pid (d_siginfo_si.U):
+       This variable conditionally defines the HAS_SIGINFO_SI_PID symbol,
+       which indicates that the siginfo_t struct has the si_pid member.
+
+d_siginfo_si_status (d_siginfo_si.U):
+       This variable conditionally defines the HAS_SIGINFO_SI_STATUS symbol,
+       which indicates that the siginfo_t struct has the si_status member.
+
+d_siginfo_si_uid (d_siginfo_si.U):
+       This variable conditionally defines the HAS_SIGINFO_SI_UID symbol,
+       which indicates that the siginfo_t struct has the si_uid member.
+
+d_siginfo_si_value (d_siginfo_si.U):
+       This variable conditionally defines the HAS_SIGINFO_SI_VALUE symbol,
+       which indicates that the siginfo_t struct has the si_value member.
+
 d_signbit (d_signbit.U):
        This variable conditionally defines the HAS_SIGNBIT symbol, which
        indicates to the C program that the signbit() routine is available
@@ -2477,6 +2647,12 @@ d_strerror (d_strerror.U):
        This variable conditionally defines HAS_STRERROR if strerror() is
        available to translate error numbers to strings.
 
+d_strerror_l (d_strerror_l.U):
+       This variable conditionally defines the HAS_STRERROR_L symbol, which
+       indicates to the C program that the strerror_l() routine is available
+       to return the error message for a given errno value in a particular
+       locale (identified by a locale_t object).
+
 d_strerror_r (d_strerror_r.U):
        This variable conditionally defines the HAS_STRERROR_R symbol,
        which indicates to the C program that the strerror_r()
@@ -2667,6 +2843,10 @@ d_union_semun (d_union_semun.U):
        This variable conditionally defines HAS_UNION_SEMUN if the
        union semun is defined by including <sys/sem.h>.
 
+d_unlinkat (d_fsat.U):
+       This variable conditionally defines the HAS_UNLINKAT symbol, which
+       indicates the POSIX unlinkat() function isavailable.
+
 d_unordered (d_unordered.U):
        This variable conditionally defines the HAS_UNORDERED symbol, which
        indicates to the C program that the unordered() routine is available.
@@ -2805,6 +2985,9 @@ db_version_patch (i_db.U):
        Berkeley DB found in the <db.h> header file.
        For DB version 1 this is always 0.
 
+default_inc_excludes_dot (defaultincdot.U):
+       When defined, remove the legacy '.' from @INC
+
 direntrytype (i_dirent.U):
        This symbol is set to 'struct direct' or 'struct dirent' depending on
        whether dirent is available or not. You should use this pseudo type to
@@ -2832,6 +3015,12 @@ doublekind (longdblfio.U):
        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,
+       9 = VAX 32bit little endian F float format
+       10 = VAX 64bit little endian D float format
+       11 = VAX 64bit little endian G float format
+       12 = IBM 32bit format
+       13 = IBM 64bit format
+       14 = Cray 64bit format
        -1 = unknown format.
 
 doublemantbits (mantbits.U):
@@ -2865,9 +3054,14 @@ drand48_r_proto (d_drand48_r.U):
 dtrace (usedtrace.U):
        This variable holds the location of the dtrace executable.
 
-dtraceobject (usedtrace.U):
+dtraceobject (dtraceobject.U):
        Whether we need to build an object file with the dtrace tool.
 
+dtracexnolibs (dtraceobject.U):
+       Whether dtrace accepts -xnolibs.  If available we call dtrace -h
+       and dtrace -G with -xnolibs to allow dtrace to run in a jail on
+       FreeBSD.
+
 dynamic_ext (Extensions.U):
        This variable holds a list of XS extension files we want to
        link dynamically into the package.  It is used by Makefile.
@@ -3692,6 +3886,10 @@ i_vfork (i_vfork.U):
        This variable conditionally defines the I_VFORK symbol, and indicates
        whether a C program should include vfork.h.
 
+i_xlocale (d_newlocale.U):
+       This symbol, if defined, indicates to the C program that it should
+       include <xlocale.h> to get uselocale() and its friends
+
 ignore_versioned_solibs (libs.U):
        This variable should be non-empty if non-versioned shared
        libraries (libfoo.so.x.y) are to be ignored (because they
@@ -4078,12 +4276,19 @@ longdblinfbytes (infnan.U):
 
 longdblkind (d_longdbl.U):
        This variable, if defined, encodes the type of a long double:
-       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.
+       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,
+       7 = 128-bit mixed-endian double-double (64-bit LEs in BE),
+       8 = 128-bit mixed-endian double-double (64-bit BEs in LE),
+       9 = 128-bit PDP-style mixed-endian long doubles,
+       -1 = unknown format.
 
-longdblmantbits (longdblmant.U):
+longdblmantbits (mantbits.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,