This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Handle also extra directories et alia.
[perl5.git] / Porting / Glossary
index ade0295..75a044f 100644 (file)
@@ -1,8 +1,31 @@
+
+!!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
+This file is built by metaconfig.
+
 This file contains a description of all the shell variables whose value is
 determined by the Configure script.  Variables intended for use in C
 programs (e.g. I_UNISTD) are already described in config_h.SH.  [`configpm'
 generates pod documentation for Config.pm from this file--please try to keep
-the formatting regular and verify that its output looks as you intend.]
+the formatting regular.]
+
+Mcc (Loc.U):
+       This variable is used internally by Configure to determine the
+       full pathname (if any) of the Mcc program.  After Configure runs,
+       the value is reset to a plain "Mcc" and is not useful.
+
+PERL_REVISION (Oldsyms.U):
+       In a Perl version number such as 5.6.2, this is the 5.
+       This value is manually set in patchlevel.h
+
+PERL_SUBVERSION (Oldsyms.U):
+       In a Perl version number such as 5.6.2, this is the 2.
+       Values greater than 50 represent potentially unstable
+       development subversions.
+       This value is manually set in patchlevel.h
+
+PERL_VERSION (Oldsyms.U):
+       In a Perl version number such as 5.6.2, this is the 6.
+       This value is manually set in patchlevel.h
 
 _a (Unix.U):
        This variable defines the extension used for ordinary library files.
@@ -11,9 +34,9 @@ _a (Unix.U):
 
 _exe (Unix.U):
        This variable defines the extension used for executable files.
-       DJGPP, Cygwin and OS/2 use '.exe'.  Stratus VOS uses '.pm'. On
-       operating systems which do not require a specific extension for
-       executable files, this variable is empty.
+       DJGPP, Cygwin and OS/2 use '.exe'.  Stratus VOS uses '.pm'.
+       On operating systems which do not require a specific extension
+       for executable files, this variable is empty.
 
 _o (Unix.U):
        This variable defines the extension used for object files.
@@ -53,7 +76,8 @@ api_revision (patchlevel.U):
        such as '5.6.1', api_revision is the '5'.
        Prior to 5.5.640, the format was a floating point number,
        like 5.00563.
-               perl.c:incpush() and lib/lib.pm will automatically search in
+
+       perl.c:incpush() and lib/lib.pm will automatically search in
        $sitelib/.. for older directories back to the limit specified
        by these api_ variables.  This is only useful if you have a
        perl library directory tree structured like the default one.
@@ -61,7 +85,8 @@ api_revision (patchlevel.U):
        directory was introduced in 5.005, so that is the lowest
        possible value.  The version list appropriate for the current
        system is determined in inc_version_list.U.
-               XXX To do:  Since compatibility can depend on compile time
+
+       XXX To do:  Since compatibility can depend on compile time
        options (such as bincompat, longlong, etc.) it should
        (perhaps) be set by Configure, but currently it isn't.
        Currently, we read a hard-wired value from patchlevel.h.
@@ -122,6 +147,9 @@ archobjs (Unix.U):
 
 asctime_r_proto (d_asctime_r.U):
        This variable encodes the prototype of asctime_r.
+       It is zero if d_asctime_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_asctime_r
+       is defined.
 
 awk (Loc.U):
        This variable is used internally by Configure to determine the
@@ -141,10 +169,6 @@ bin (bin.U):
        is most often a local directory such as /usr/local/bin. Programs using
        this variable must be prepared to deal with ~name substitution.
 
-bincompat5005 (bincompat5005.U):
-       This variable contains y if this version of Perl should be
-       binary-compatible with Perl 5.005.
-
 binexp (bin.U):
        This is the same as the bin variable, but is filename expanded at
        configuration time, for use in your makefiles.
@@ -160,10 +184,10 @@ byacc (Loc.U):
        the value is reset to a plain "byacc" and is not useful.
 
 byteorder (byteorder.U):
-       This variable holds the byte order. In the following, larger digits
-       indicate more significance.  The variable byteorder is either 4321
-       on a big-endian machine, or 1234 on a little-endian, or 87654321
-       on a Cray ... or 3412 with weird order !
+       This variable holds the byte order in a UV. In the following,
+       larger digits indicate more significance.  The variable byteorder
+       is either 4321 on a big-endian machine, or 1234 on a little-endian,
+       or 87654321 on a Cray ... or 3412 with weird order !
 
 c (n.U):
        This variable contains the \c string if that is what causes the echo
@@ -336,6 +360,9 @@ cppsymbols (Cppsym.U):
 
 crypt_r_proto (d_crypt_r.U):
        This variable encodes the prototype of crypt_r.
+       It is zero if d_crypt_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_crypt_r
+       is defined.
 
 cryptlib (d_crypt.U):
        This variable holds -lcrypt or the path to a libcrypt.a archive if
@@ -349,9 +376,97 @@ csh (Loc.U):
 
 ctermid_r_proto (d_ctermid_r.U):
        This variable encodes the prototype of ctermid_r.
+       It is zero if d_ctermid_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_ctermid_r
+       is defined.
 
 ctime_r_proto (d_ctime_r.U):
        This variable encodes the prototype of ctime_r.
+       It is zero if d_ctime_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_ctime_r
+       is defined.
+
+d_Gconvert (d_gconvert.U):
+       This variable holds what Gconvert is defined as to convert
+       floating point numbers into strings.  By default, Configure
+       sets this macro to use the first of gconvert, gcvt, or sprintf
+       that pass sprintf-%g-like behaviour tests.  If perl is using
+       long doubles, the macro uses the first of the following
+       functions that pass Configure's tests: qgcvt, sprintf (if
+       Configure knows how to make sprintf format long doubles--see
+       sPRIgldbl), gconvert, gcvt, and sprintf (casting to double).  
+       The gconvert_preference and gconvert_ld_preference variables   
+       can be used to alter Configure's preferences, for doubles and
+       long doubles, respectively.  If present, they contain a       
+       space-separated list of one or more of the above function       
+       names in the order they should be tried.
+
+       d_Gconvert may be set to override Configure with a platform-
+       specific function.  If this function expects a double, a
+       different value may need to be set by the uselongdouble.cbu
+       call-back unit so that long doubles can be formatted without
+       loss of precision.
+
+d_PRIEUldbl (longdblfio.U):
+       This variable conditionally defines the PERL_PRIfldbl symbol, which
+       indiciates that stdio has a symbol to print long doubles.
+       The 'U' in the name is to separate this from d_PRIeldbl so that even
+       case-blind systems can see the difference.
+
+d_PRIFUldbl (longdblfio.U):
+       This variable conditionally defines the PERL_PRIfldbl symbol, which
+       indiciates that stdio has a symbol to print long doubles.
+       The 'U' in the name is to separate this from d_PRIfldbl so that even
+       case-blind systems can see the difference.
+
+d_PRIGUldbl (longdblfio.U):
+       This variable conditionally defines the PERL_PRIfldbl symbol, which
+       indiciates that stdio has a symbol to print long doubles.
+       The 'U' in the name is to separate this from d_PRIgldbl so that even
+       case-blind systems can see the difference.
+
+d_PRIXU64 (quadfio.U):
+       This variable conditionally defines the PERL_PRIXU64 symbol, which
+       indiciates that stdio has a symbol to print 64-bit hExADECimAl numbers.
+       The 'U' in the name is to separate this from d_PRIx64 so that even
+       case-blind systems can see the difference.
+
+d_PRId64 (quadfio.U):
+       This variable conditionally defines the PERL_PRId64 symbol, which
+       indiciates that stdio has a symbol to print 64-bit decimal numbers.
+
+d_PRIeldbl (longdblfio.U):
+       This variable conditionally defines the PERL_PRIfldbl symbol, which
+       indiciates that stdio has a symbol to print long doubles.
+
+d_PRIfldbl (longdblfio.U):
+       This variable conditionally defines the PERL_PRIfldbl symbol, which
+       indiciates that stdio has a symbol to print long doubles.
+
+d_PRIgldbl (longdblfio.U):
+       This variable conditionally defines the PERL_PRIfldbl symbol, which
+       indiciates that stdio has a symbol to print long doubles.
+
+d_PRIi64 (quadfio.U):
+       This variable conditionally defines the PERL_PRIi64 symbol, which
+       indiciates that stdio has a symbol to print 64-bit decimal numbers.
+
+d_PRIo64 (quadfio.U):
+       This variable conditionally defines the PERL_PRIo64 symbol, which
+       indiciates that stdio has a symbol to print 64-bit octal numbers.
+
+d_PRIu64 (quadfio.U):
+       This variable conditionally defines the PERL_PRIu64 symbol, which
+       indiciates that stdio has a symbol to print 64-bit unsigned decimal
+       numbers.
+
+d_PRIx64 (quadfio.U):
+       This variable conditionally defines the PERL_PRIx64 symbol, which
+       indiciates that stdio has a symbol to print 64-bit hexadecimal numbers.
+
+d_SCNfldbl (longdblfio.U):
+       This variable conditionally defines the PERL_PRIfldbl symbol, which
+       indiciates that stdio has a symbol to scan long doubles.
 
 d__fwalk (d__fwalk.U):
        This variable conditionally defines HAS__FWALK if _fwalk() is
@@ -400,13 +515,6 @@ d_bcopy (d_bcopy.U):
        This variable conditionally defines the HAS_BCOPY symbol if
        the bcopy() routine is available to copy strings.
 
-d_bincompat5005 (bincompat5005.U):
-       This variable conditionally defines BINCOMPAT5005 so that embed.h
-       can take special action if this version of Perl should be
-       binary-compatible with Perl 5.005.  This is impossible for builds
-       that use features like threads and multiplicity it is always $undef
-       for those versions.
-
 d_bsd (Guess.U):
        This symbol conditionally defines the symbol BSD when running on a
        BSD system.
@@ -752,26 +860,6 @@ d_ftime (d_ftime.U):
        that the ftime() routine exists.  The ftime() routine is basically
        a sub-second accuracy clock.
 
-d_Gconvert (d_gconvert.U):
-       This variable holds what Gconvert is defined as to convert
-       floating point numbers into strings.  By default, Configure
-       sets this macro to use the first of gconvert, gcvt, or sprintf
-       that pass sprintf-%g-like behaviour tests.  If perl is using
-       long doubles, the macro uses the first of the following
-       functions that pass Configure's tests: qgcvt, sprintf (if
-       Configure knows how to make sprintf format long doubles--see
-       sPRIgldbl), gconvert, gcvt, and sprintf (casting to double).  
-       The gconvert_preference and gconvert_ld_preference variables   
-       can be used to alter Configure's preferences, for doubles and
-       long doubles, respectively.  If present, they contain a       
-       space-separated list of one or more of the above function       
-       names in the order they should be tried.
-               d_Gconvert may be set to override Configure with a platform-
-       specific function.  If this function expects a double, a
-       different value may need to be set by the uselongdouble.cbu
-       call-back unit so that long doubles can be formatted without
-       loss of precision.
-
 d_getcwd (d_getcwd.U):
        This variable conditionally defines the HAS_GETCWD symbol, which
        indicates to the C program that the getcwd() routine is available
@@ -1239,6 +1327,12 @@ d_modfl_pow32_bug (d_modfl.U):
        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
+       to the program to supply one.  C99 says it should be
+       long double modfl(long double, long double *);
+
 d_mprotect (d_mprotect.U):
        This variable conditionally defines HAS_MPROTECT if mprotect() is
        available to modify the access protection of a memory mapped file.
@@ -1305,6 +1399,10 @@ d_mymalloc (mallocsrc.U):
        of the source want to take special action if MYMALLOC is used.
        This may include different sorts of profiling or error detection.
 
+d_nanosleep (d_nanosleep.U):
+       This variable conditionally defines HAS_NANOSLEEP
+       if nanosleep() is available to sleep with 1E-9 sec accuracy.
+
 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.
@@ -1375,63 +1473,6 @@ d_portable (d_portable.U):
        indicates to the C program that it should not assume that it is
        running on the machine it was compiled on.
 
-d_PRId64 (quadfio.U):
-       This variable conditionally defines the PERL_PRId64 symbol, which
-       indiciates that stdio has a symbol to print 64-bit decimal numbers.
-
-d_PRIeldbl (longdblfio.U):
-       This variable conditionally defines the PERL_PRIfldbl symbol, which
-       indiciates that stdio has a symbol to print long doubles.
-
-d_PRIEUldbl (longdblfio.U):
-       This variable conditionally defines the PERL_PRIfldbl symbol, which
-       indiciates that stdio has a symbol to print long doubles.
-       The 'U' in the name is to separate this from d_PRIeldbl so that even
-       case-blind systems can see the difference.
-
-d_PRIfldbl (longdblfio.U):
-       This variable conditionally defines the PERL_PRIfldbl symbol, which
-       indiciates that stdio has a symbol to print long doubles.
-
-d_PRIFUldbl (longdblfio.U):
-       This variable conditionally defines the PERL_PRIfldbl symbol, which
-       indiciates that stdio has a symbol to print long doubles.
-       The 'U' in the name is to separate this from d_PRIfldbl so that even
-       case-blind systems can see the difference.
-
-d_PRIgldbl (longdblfio.U):
-       This variable conditionally defines the PERL_PRIfldbl symbol, which
-       indiciates that stdio has a symbol to print long doubles.
-
-d_PRIGUldbl (longdblfio.U):
-       This variable conditionally defines the PERL_PRIfldbl symbol, which
-       indiciates that stdio has a symbol to print long doubles.
-       The 'U' in the name is to separate this from d_PRIgldbl so that even
-       case-blind systems can see the difference.
-
-d_PRIi64 (quadfio.U):
-       This variable conditionally defines the PERL_PRIi64 symbol, which
-       indiciates that stdio has a symbol to print 64-bit decimal numbers.
-
-d_PRIo64 (quadfio.U):
-       This variable conditionally defines the PERL_PRIo64 symbol, which
-       indiciates that stdio has a symbol to print 64-bit octal numbers.
-
-d_PRIu64 (quadfio.U):
-       This variable conditionally defines the PERL_PRIu64 symbol, which
-       indiciates that stdio has a symbol to print 64-bit unsigned decimal
-       numbers.
-
-d_PRIx64 (quadfio.U):
-       This variable conditionally defines the PERL_PRIx64 symbol, which
-       indiciates that stdio has a symbol to print 64-bit hexadecimal numbers.
-
-d_PRIXU64 (quadfio.U):
-       This variable conditionally defines the PERL_PRIXU64 symbol, which
-       indiciates that stdio has a symbol to print 64-bit hExADECimAl numbers.
-       The 'U' in the name is to separate this from d_PRIx64 so that even
-       case-blind systems can see the difference.
-
 d_procselfexe (d_procselfexe.U):
        Defined if $procselfexe is symlink to the absolute
        pathname of the executing program.
@@ -1562,10 +1603,6 @@ d_scm_rights (d_socket.U):
        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
-       indiciates that stdio has a symbol to scan long doubles.
-
 d_seekdir (d_readdir.U):
        This variable conditionally defines HAS_SEEKDIR if seekdir() is
        available.
@@ -2223,6 +2260,9 @@ drand01 (randfunc.U):
 
 drand48_r_proto (d_drand48_r.U):
        This variable encodes the prototype of drand48_r.
+       It is zero if d_drand48_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_drand48_r
+       is defined.
 
 dynamic_ext (Extensions.U):
        This variable holds a list of XS extension files we want to
@@ -2255,21 +2295,39 @@ emacs (Loc.U):
 
 endgrent_r_proto (d_endgrent_r.U):
        This variable encodes the prototype of endgrent_r.
+       It is zero if d_endgrent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_endgrent_r
+       is defined.
 
 endhostent_r_proto (d_endhostent_r.U):
        This variable encodes the prototype of endhostent_r.
+       It is zero if d_endhostent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_endhostent_r
+       is defined.
 
 endnetent_r_proto (d_endnetent_r.U):
        This variable encodes the prototype of endnetent_r.
+       It is zero if d_endnetent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_endnetent_r
+       is defined.
 
 endprotoent_r_proto (d_endprotoent_r.U):
        This variable encodes the prototype of endprotoent_r.
+       It is zero if d_endprotoent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_endprotoent_r
+       is defined.
 
 endpwent_r_proto (d_endpwent_r.U):
        This variable encodes the prototype of endpwent_r.
+       It is zero if d_endpwent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_endpwent_r
+       is defined.
 
 endservent_r_proto (d_endservent_r.U):
        This variable encodes the prototype of endservent_r.
+       It is zero if d_endservent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_endservent_r
+       is defined.
 
 eunicefix (Init.U):
        When running under Eunice this variable contains a command which will
@@ -2293,6 +2351,10 @@ extensions (Extensions.U):
 extras (Extras.U):
        This variable holds a list of extra modules to install.
 
+fflushNULL (fflushall.U):
+       This symbol, if defined, tells that fflush(NULL) does flush
+       all pending stdio output.
+
 fflushall (fflushall.U):
        This symbol, if defined, tells that to flush
        all pending stdio output one must loop through all
@@ -2300,10 +2362,6 @@ fflushall (fflushall.U):
        Note that if fflushNULL is defined, fflushall will not
        even be probed for and will be left undefined.
 
-fflushNULL (fflushall.U):
-       This symbol, if defined, tells that fflush(NULL) does flush
-       all pending stdio output.
-
 find (Loc.U):
        This variable is defined but not used by Configure.
        The value is a plain '' and is not useful.
@@ -2354,75 +2412,140 @@ full_sed (Loc_sed.U):
        can share this executable will have the same full pathname to
        'sed.'
 
+gccansipedantic (gccvers.U):
+       If GNU cc (gcc) is used, this variable will enable (if set) the
+       -ansi and -pedantic ccflags for building core files (through
+       cflags script). (See Porting/pumpkin.pod for full description).
+
 gccosandvers (gccvers.U):
-       If GNU cc (gcc) is used, this variable the operating system and
-       version used to compile the gcc.  It is set to '' if not gcc,
+       If GNU cc (gcc) is used, this variable holds the operating system
+       and version used to compile gcc.  It is set to '' if not gcc,
        or if nothing useful can be parsed as the os version.
 
 gccversion (gccvers.U):
-       If GNU cc (gcc) is used, this variable holds '1' or '2' to 
+       If GNU cc (gcc) is used, this variable holds '1' or '2' to
        indicate whether the compiler is version 1 or 2.  This is used in
        setting some of the default cflags.  It is set to '' if not gcc.
 
 getgrent_r_proto (d_getgrent_r.U):
        This variable encodes the prototype of getgrent_r.
+       It is zero if d_getgrent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrent_r
+       is defined.
 
 getgrgid_r_proto (d_getgrgid_r.U):
        This variable encodes the prototype of getgrgid_r.
+       It is zero if d_getgrgid_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrgid_r
+       is defined.
 
 getgrnam_r_proto (d_getgrnam_r.U):
        This variable encodes the prototype of getgrnam_r.
+       It is zero if d_getgrnam_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrnam_r
+       is defined.
 
 gethostbyaddr_r_proto (d_gethostbyaddr_r.U):
        This variable encodes the prototype of gethostbyaddr_r.
+       It is zero if d_gethostbyaddr_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostbyaddr_r
+       is defined.
 
 gethostbyname_r_proto (d_gethostbyname_r.U):
        This variable encodes the prototype of gethostbyname_r.
+       It is zero if d_gethostbyname_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostbyname_r
+       is defined.
 
 gethostent_r_proto (d_gethostent_r.U):
        This variable encodes the prototype of gethostent_r.
+       It is zero if d_gethostent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostent_r
+       is defined.
 
 getlogin_r_proto (d_getlogin_r.U):
        This variable encodes the prototype of getlogin_r.
+       It is zero if d_getlogin_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getlogin_r
+       is defined.
 
 getnetbyaddr_r_proto (d_getnetbyaddr_r.U):
        This variable encodes the prototype of getnetbyaddr_r.
+       It is zero if d_getnetbyaddr_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetbyaddr_r
+       is defined.
 
 getnetbyname_r_proto (d_getnetbyname_r.U):
        This variable encodes the prototype of getnetbyname_r.
+       It is zero if d_getnetbyname_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetbyname_r
+       is defined.
 
 getnetent_r_proto (d_getnetent_r.U):
        This variable encodes the prototype of getnetent_r.
+       It is zero if d_getnetent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetent_r
+       is defined.
 
 getprotobyname_r_proto (d_getprotobyname_r.U):
        This variable encodes the prototype of getprotobyname_r.
+       It is zero if d_getprotobyname_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotobyname_r
+       is defined.
 
 getprotobynumber_r_proto (d_getprotobynumber_r.U):
        This variable encodes the prototype of getprotobynumber_r.
+       It is zero if d_getprotobynumber_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotobynumber_r
+       is defined.
 
 getprotoent_r_proto (d_getprotoent_r.U):
        This variable encodes the prototype of getprotoent_r.
+       It is zero if d_getprotoent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotoent_r
+       is defined.
 
 getpwent_r_proto (d_getpwent_r.U):
        This variable encodes the prototype of getpwent_r.
+       It is zero if d_getpwent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwent_r
+       is defined.
 
 getpwnam_r_proto (d_getpwnam_r.U):
        This variable encodes the prototype of getpwnam_r.
+       It is zero if d_getpwnam_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwnam_r
+       is defined.
 
 getpwuid_r_proto (d_getpwuid_r.U):
        This variable encodes the prototype of getpwuid_r.
+       It is zero if d_getpwuid_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwuid_r
+       is defined.
 
 getservbyname_r_proto (d_getservbyname_r.U):
        This variable encodes the prototype of getservbyname_r.
+       It is zero if d_getservbyname_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservbyname_r
+       is defined.
 
 getservbyport_r_proto (d_getservbyport_r.U):
        This variable encodes the prototype of getservbyport_r.
+       It is zero if d_getservbyport_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservbyport_r
+       is defined.
 
 getservent_r_proto (d_getservent_r.U):
        This variable encodes the prototype of getservent_r.
+       It is zero if d_getservent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservent_r
+       is defined.
 
 getspnam_r_proto (d_getspnam_r.U):
        This variable encodes the prototype of getspnam_r.
+       It is zero if d_getspnam_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_getspnam_r
+       is defined.
 
 gidformat (gidf.U):
        This variable contains the format string used for printing a Gid_t.
@@ -2451,6 +2574,14 @@ gmake (Loc.U):
 
 gmtime_r_proto (d_gmtime_r.U):
        This variable encodes the prototype of gmtime_r.
+       It is zero if d_gmtime_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_gmtime_r
+       is defined.
+
+gnulibc_version (d_gnulibc.U):
+       This variable contains the version number of the GNU C library.
+       It is usually something like '2.2.5'.  It is a plain '' if this
+       is not the GNU C library, or if the version is unknown.
 
 grep (Loc.U):
        This variable is used internally by Configure to determine the
@@ -2971,9 +3102,27 @@ installstyle (installstyle.U):
        directory dedicated to perl (e.g. /opt/perl), while the latter
        is useful if $prefix is shared by many packages, e.g. if
        $prefix=/usr/local.
-               This may later be extended to include other information, so
+
+       Unfortunately, while this "style" variable is used to set
+       defaults for all three directory hierarchies (core, vendor, and
+       site), there is no guarantee that the same style is actually
+       appropriate for all those directories.  For example, $prefix
+       might be /opt/perl, but $siteprefix might be /usr/local.
+       (Perhaps, in retrospect, the "lib" style should never have been
+       supported, but it did seem like a nice idea at the time.)
+
+       The situation is even less clear for tools such as MakeMaker
+       that can be used to install additional modules into
+       non-standard places.  For example, if a user intends to install
+       a module into a private directory (perhaps by setting PREFIX on
+       the Makefile.PL command line), then there is no reason to
+       assume that the Configure-time $installstyle setting will be
+       relevant for that PREFIX.
+
+       This may later be extended to include other information, so
        be careful with pattern-matching on the results.
-               For compatibility with perl5.005 and earlier, the default
+
+       For compatibility with perl5.005 and earlier, the default
        setting is based on whether or not $prefix contains the string
        "perl".
 
@@ -3126,6 +3275,9 @@ lns (lns.U):
 
 localtime_r_proto (d_localtime_r.U):
        This variable encodes the prototype of localtime_r.
+       It is zero if d_localtime_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_localtime_r
+       is defined.
 
 locincpth (ccflags.U):
        This variable contains a list of additional directories to be
@@ -3189,18 +3341,17 @@ make (Loc.U):
        full pathname (if any) of the make program.  After Configure runs,
        the value is reset to a plain "make" and is not useful.
 
-       Both the directory and the command name can vary from system
-       to system; while most systems call the command 'make', other
-       values include 'gmake' and 'gnumake'.
-
 make_set_make (make.U):
        Some versions of 'make' set the variable MAKE.  Others do not.
        This variable contains the string to be included in Makefile.SH
        so that MAKE is set if needed, and not if not needed.
        Possible values are:
+
        make_set_make='#'               # If your make program handles this for you,
+
        make_set_make="MAKE=$make"      # if it doesn't.
-       I used a comment character so that we can distinguish a
+
+       This uses a comment character to distinguish a
        'set' value (from a previous config.sh or Configure '-D' option)
        from an uncomputed value.
 
@@ -3249,11 +3400,6 @@ man3ext (man3dir.U):
        have: one of 'n', 'l', or '3'.  The Makefile must supply the '.'.
        See man3dir.
 
-Mcc (Loc.U):
-       This variable is used internally by Configure to determine the
-       full pathname (if any) of the Mcc program.  After Configure runs,
-       the value is reset to a plain "Mcc" and is not useful.
-
 mips_type (usrinc.U):
        This variable holds the environment type for the mips system.
        Possible values are "BSD 4.3" and "System V".
@@ -3369,6 +3515,18 @@ nroff (Loc.U):
        full pathname (if any) of the nroff program.  After Configure runs,
        the value is reset to a plain "nroff" and is not useful.
 
+nvEUformat (perlxvf.U):
+       This variable contains the format string used for printing
+       a Perl NV using %E-ish floating point format.
+
+nvFUformat (perlxvf.U):
+       This variable confains the format string used for printing
+       a Perl NV using %F-ish floating point format.
+
+nvGUformat (perlxvf.U):
+       This variable contains the format string used for printing
+       a Perl NV using %G-ish floating point format.
+
 nv_preserves_uv_bits (perlxv.U):
        This variable indicates how many of bits type uvtype
        a variable nvtype can preserve.
@@ -3377,26 +3535,14 @@ nveformat (perlxvf.U):
        This variable contains the format string used for printing
        a Perl NV using %e-ish floating point format.
 
-nvEUformat (perlxvf.U):
-       This variable contains the format string used for printing
-       a Perl NV using %E-ish floating point format.
-
 nvfformat (perlxvf.U):
        This variable confains the format string used for printing
        a Perl NV using %f-ish floating point format.
 
-nvFUformat (perlxvf.U):
-       This variable confains the format string used for printing
-       a Perl NV using %F-ish floating point format.
-
 nvgformat (perlxvf.U):
        This variable contains the format string used for printing
        a Perl NV using %g-ish floating point format.
 
-nvGUformat (perlxvf.U):
-       This variable contains the format string used for printing
-       a Perl NV using %G-ish floating point format.
-
 nvsize (perlxv.U):
        This variable is the size of an NV in bytes.
 
@@ -3483,11 +3629,6 @@ perl5 (perl5.U):
        installed perl5.005 or later suitable for running the script
        to determine inc_version_list.
 
-perl5 (perl5.U):
-       This variable contains the full path (if any) to a previously
-       installed perl5.005 or later suitable for running the script
-       to determine inc_version_list.
-
 perl (Loc.U):
        This variable is defined but not used by Configure.
        The value is a plain '' and is not useful.
@@ -3500,20 +3641,6 @@ perl_patchlevel (patchlevel.U):
        the maintenance versus development dichotomy except
        by also being increasing.
 
-PERL_REVISION (Oldsyms.U):
-       In a Perl version number such as 5.6.2, this is the 5.
-       This value is manually set in patchlevel.h
-
-PERL_SUBVERSION (Oldsyms.U):
-       In a Perl version number such as 5.6.2, this is the 2.
-       Values greater than 50 represent potentially unstable
-       development subversions.
-       This value is manually set in patchlevel.h
-
-PERL_VERSION (Oldsyms.U):
-       In a Perl version number such as 5.6.2, this is the 6.
-       This value is manually set in patchlevel.h
-
 perladmin (perladmin.U):
        Electronic mail address of the perl5 administrator.
 
@@ -3524,7 +3651,13 @@ perllibs (End.U):
 perlpath (perlpath.U):
        This variable contains the eventual value of the PERLPATH symbol,
        which contains the name of the perl interpreter to be used in
-       shell scripts and in the "eval 'exec'" idiom.
+       shell scripts and in the "eval 'exec'" idiom.  This variable is
+       not necessarily the pathname of the file containing the perl
+       interpreter; you must append the executable extension (_exe) if
+       it is not already present.  Note that Perl code that runs during
+       the Perl build process cannot reference this variable, as Perl
+       may not have been installed, or even if installed, may be a
+       different version of Perl.
 
 pg (Loc.U):
        This variable is used internally by Configure to determine the
@@ -3623,6 +3756,9 @@ randfunc (randfunc.U):
 
 random_r_proto (d_random_r.U):
        This variable encodes the prototype of random_r.
+       It is zero if d_random_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_random_r
+       is defined.
 
 randseedtype (randfunc.U):
        Indicates the type of the argument of the seedfunc.
@@ -3640,9 +3776,15 @@ rd_nodata (nblock_io.U):
 
 readdir64_r_proto (d_readdir64_r.U):
        This variable encodes the prototype of readdir64_r.
+       It is zero if d_readdir64_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_readdir64_r
+       is defined.
 
 readdir_r_proto (d_readdir_r.U):
        This variable encodes the prototype of readdir_r.
+       It is zero if d_readdir_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_readdir_r
+       is defined.
 
 revision (patchlevel.U):
        The value of revision comes from the patchlevel.h file.
@@ -3669,6 +3811,66 @@ runnm (usenm.U):
        nm extraction should be performed or not, according to the value
        of usenm and the flags on the Configure command line.
 
+sPRIEUldbl (longdblfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format long doubles (format 'E') for output.
+       The 'U' in the name is to separate this from sPRIeldbl so that even
+       case-blind systems can see the difference.
+
+sPRIFUldbl (longdblfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format long doubles (format 'F') for output.
+       The 'U' in the name is to separate this from sPRIfldbl so that even
+       case-blind systems can see the difference.
+
+sPRIGUldbl (longdblfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format long doubles (format 'G') for output.
+       The 'U' in the name is to separate this from sPRIgldbl so that even
+       case-blind systems can see the difference.
+
+sPRIXU64 (quadfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format 64-bit hExADECimAl numbers (format 'X') for output.
+       The 'U' in the name is to separate this from sPRIx64 so that even
+       case-blind systems can see the difference.
+
+sPRId64 (quadfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format 64-bit decimal numbers (format 'd') for output.
+
+sPRIeldbl (longdblfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format long doubles (format 'e') for output.
+
+sPRIfldbl (longdblfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format long doubles (format 'f') for output.
+
+sPRIgldbl (longdblfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format long doubles (format 'g') for output.
+
+sPRIi64 (quadfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format 64-bit decimal numbers (format 'i') for output.
+
+sPRIo64 (quadfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format 64-bit octal numbers (format 'o') for output.
+
+sPRIu64 (quadfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format 64-bit unsigned decimal numbers (format 'u') for output.
+
+sPRIx64 (quadfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format 64-bit hexadecimal numbers (format 'x') for output.
+
+sSCNfldbl (longdblfio.U):
+       This variable, if defined, contains the string used by stdio to
+       format long doubles (format 'f') for input.
+
 sched_yield (d_pthread_y.U):
        This variable defines the way to yield the execution
        of the current thread.
@@ -3712,24 +3914,45 @@ sendmail (Loc.U):
 
 setgrent_r_proto (d_setgrent_r.U):
        This variable encodes the prototype of setgrent_r.
+       It is zero if d_setgrent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_setgrent_r
+       is defined.
 
 sethostent_r_proto (d_sethostent_r.U):
        This variable encodes the prototype of sethostent_r.
+       It is zero if d_sethostent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_sethostent_r
+       is defined.
 
 setlocale_r_proto (d_setlocale_r.U):
        This variable encodes the prototype of setlocale_r.
+       It is zero if d_setlocale_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_setlocale_r
+       is defined.
 
 setnetent_r_proto (d_setnetent_r.U):
        This variable encodes the prototype of setnetent_r.
+       It is zero if d_setnetent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_setnetent_r
+       is defined.
 
 setprotoent_r_proto (d_setprotoent_r.U):
        This variable encodes the prototype of setprotoent_r.
+       It is zero if d_setprotoent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_setprotoent_r
+       is defined.
 
 setpwent_r_proto (d_setpwent_r.U):
        This variable encodes the prototype of setpwent_r.
+       It is zero if d_setpwent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_setpwent_r
+       is defined.
 
 setservent_r_proto (d_setservent_r.U):
        This variable encodes the prototype of setservent_r.
+       It is zero if d_setservent_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_setservent_r
+       is defined.
 
 sh (sh.U):
        This variable contains the full pathname of the shell used
@@ -3915,79 +4138,25 @@ spackage (package.U):
 
 spitshell (spitshell.U):
        This variable contains the command necessary to spit out a runnable
-       shell on this system.  It is either cat or a grep '-v' for # comments.
-
-sPRId64 (quadfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format 64-bit decimal numbers (format 'd') for output.
-
-sPRIeldbl (longdblfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format long doubles (format 'e') for output.
-
-sPRIEUldbl (longdblfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format long doubles (format 'E') for output.
-       The 'U' in the name is to separate this from sPRIeldbl so that even
-       case-blind systems can see the difference.
-
-sPRIfldbl (longdblfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format long doubles (format 'f') for output.
-
-sPRIFUldbl (longdblfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format long doubles (format 'F') for output.
-       The 'U' in the name is to separate this from sPRIfldbl so that even
-       case-blind systems can see the difference.
-
-sPRIgldbl (longdblfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format long doubles (format 'g') for output.
-
-sPRIGUldbl (longdblfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format long doubles (format 'G') for output.
-       The 'U' in the name is to separate this from sPRIgldbl so that even
-       case-blind systems can see the difference.
-
-sPRIi64 (quadfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format 64-bit decimal numbers (format 'i') for output.
-
-sPRIo64 (quadfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format 64-bit octal numbers (format 'o') for output.
-
-sPRIu64 (quadfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format 64-bit unsigned decimal numbers (format 'u') for output.
-
-sPRIx64 (quadfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format 64-bit hexadecimal numbers (format 'x') for output.
-
-sPRIXU64 (quadfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format 64-bit hExADECimAl numbers (format 'X') for output.
-       The 'U' in the name is to separate this from sPRIx64 so that even
-       case-blind systems can see the difference.
+       shell on this system.  It is either cat or a grep -v for # comments.
 
 srand48_r_proto (d_srand48_r.U):
        This variable encodes the prototype of srand48_r.
+       It is zero if d_srand48_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_srand48_r
+       is defined.
 
 srandom_r_proto (d_srandom_r.U):
        This variable encodes the prototype of srandom_r.
+       It is zero if d_srandom_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_srandom_r
+       is defined.
 
 src (src.U):
        This variable holds the path to the package source. It is up to
        the Makefile to use this variable and set VPATH accordingly to
        find the sources remotely.
 
-sSCNfldbl (longdblfio.U):
-       This variable, if defined, contains the string used by stdio to
-       format long doubles (format 'f') for input.
-
 ssizetype (ssizetype.U):
        This variable defines ssizetype to be something like ssize_t, 
        long or int.  It is used by functions that return a count 
@@ -4049,6 +4218,9 @@ stdio_stream_array (stdio_streams.U):
 
 strerror_r_proto (d_strerror_r.U):
        This variable encodes the prototype of strerror_r.
+       It is zero if d_strerror_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_strerror_r
+       is defined.
 
 strings (i_string.U):
        This variable holds the full path of the string header that will be
@@ -4106,6 +4278,9 @@ timetype (d_time.U):
 
 tmpnam_r_proto (d_tmpnam_r.U):
        This variable encodes the prototype of tmpnam_r.
+       It is zero if d_tmpnam_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_tmpnam_r
+       is defined.
 
 to (Cross.U):
        This variable contains the command used by Configure
@@ -4135,6 +4310,9 @@ troff (Loc.U):
 
 ttyname_r_proto (d_ttyname_r.U):
        This variable encodes the prototype of ttyname_r.
+       It is zero if d_ttyname_r is undef, and one of the
+       REENTRANT_PROTO_T_ABC macros of reentr.h if d_ttyname_r
+       is defined.
 
 u16size (perlxv.U):
        This variable is the size of an U16 in bytes.
@@ -4189,11 +4367,6 @@ uquadtype (quadtype.U):
        unsigned int, unsigned long long, uint64_t, or whatever type is
        used for 64-bit integers.
 
-use5005threads (usethreads.U):
-       This variable conditionally defines the USE_5005THREADS symbol,
-       and indicates that Perl should be built to use the 5.005-based
-       threading implementation.
-
 use64bitall (use64bits.U):
        This variable conditionally defines the USE_64_BIT_ALL symbol,
        and indicates that 64-bit integer types should be used
@@ -4288,8 +4461,8 @@ usesfio (d_sfio.U):
        d_sfio without running into a "WHOA THERE".
 
 useshrplib (libperl.U):
-       This variable is set to 'yes' if the user wishes
-       to build a shared libperl, and 'no' otherwise.
+       This variable is set to 'true' if the user wishes
+       to build a shared libperl, and 'false' otherwise.
 
 usesocks (usesocks.U):
        This variable conditionally defines the USE_SOCKS symbol,
@@ -4316,6 +4489,10 @@ uuname (Loc.U):
        This variable is defined but not used by Configure.
        The value is a plain '' and is not useful.
 
+uvXUformat (perlxvf.U):
+       This variable contains the format string used for printing
+       a Perl UV as an unsigned hexadecimal integer in uppercase ABCDEF.
+
 uvoformat (perlxvf.U):
        This variable contains the format string used for printing
        a Perl UV as an unsigned octal integer. 
@@ -4334,10 +4511,6 @@ uvxformat (perlxvf.U):
        This variable contains the format string used for printing
        a Perl UV as an unsigned hexadecimal integer in lowercase abcdef.
 
-uvXUformat (perlxvf.U):
-       This variable contains the format string used for printing
-       a Perl UV as an unsigned hexadecimal integer in uppercase ABCDEF.
-
 vendorarch (vendorarch.U):
        This variable contains the value of the PERL_VENDORARCH symbol.
        It may have a ~ on the front. 
@@ -4443,13 +4616,17 @@ xs_apiversion (xs_apiversion.U):
        See INSTALL for how this works.
        The versioned site_perl directory was introduced in 5.005,
        so that is the lowest possible value.
-       Since this can depend on compile time options (such as
-       bincompat) it is set by Configure.  Other non-default sources
+       Since this can depend on compile time options
+       it is set by Configure.  Other non-default sources
        of potential incompatibility, such as multiplicity, threads,
        debugging, 64bits, sfio, etc., are not checked for currently,
        though in principle we could go snooping around in old
        Config.pm files.
 
+yacc (yacc.U):
+       This variable holds the name of the compiler compiler we
+       want to use in the Makefile. It can be yacc, byacc, or bison -y.
+
 yaccflags (yacc.U):
        This variable contains any additional yacc flags desired by the
        user.  It is up to the Makefile to use this.