This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add socklen_t probe; Configure maintenance.
[perl5.git] / Porting / Glossary
1 This file contains a description of all the shell variables whose value is
2 determined by the Configure script.  Variables intended for use in C
3 programs (e.g. I_UNISTD) are already described in config_h.SH.  [`configpm'
4 generates pod documentation for Config.pm from this file--please try to keep
5 the formatting regular.]
6
7 _a (Unix.U):
8         This variable defines the extension used for ordinary libraries.
9         For unix, it is '.a'.  The '.' is included.  Other possible
10         values include '.lib'.
11
12 _exe (Unix.U):
13         This variable defines the extension used for executable files.
14         For unix it is empty.  Other possible values include '.exe'.
15
16 _o (Unix.U):
17         This variable defines the extension used for object files.
18         For unix, it is '.o'.  The '.' is included.  Other possible
19         values include '.obj'.
20
21 afs (afs.U):
22         This variable is set to 'true' if AFS (Andrew File System) is used
23         on the system, 'false' otherwise.  It is possible to override this
24         with a hint value or command line option, but you'd better know
25         what you are doing.
26
27 alignbytes (alignbytes.U):
28         This variable holds the number of bytes required to align a
29         double-- or a long double when applicable. Usual values are
30         2, 4 and 8.  The default is eight, for safety.
31
32 ansi2knr (ansi2knr.U):
33         This variable is set if the user needs to run ansi2knr.  
34         Currently, this is not supported, so we just abort.
35
36 aphostname (d_gethname.U):
37         This variable contains the command which can be used to compute the
38         host name. The command is fully qualified by its absolute path, to make
39         it safe when used by a process with super-user privileges.
40
41 api_revision (patchlevel.U):
42         The three variables, api_revision, api_version, and
43         api_subversion, specify the version of the oldest perl binary
44         compatible with the present perl.  In a full version string
45         such as '5.6.1', api_revision is the '5'.
46         Prior to 5.5.640, the format was a floating point number,
47         like 5.00563.
48                 perl.c:incpush() and lib/lib.pm will automatically search in
49         $sitelib/.. for older directories back to the limit specified
50         by these api_ variables.  This is only useful if you have a
51         perl library directory tree structured like the default one.
52         See INSTALL for how this works.  The versioned site_perl
53         directory was introduced in 5.005, so that is the lowest
54         possible value.  The version list appropriate for the current
55         system is determined in inc_version_list.U.
56                 XXX To do:  Since compatibility can depend on compile time
57         options (such as bincompat, longlong, etc.) it should
58         (perhaps) be set by Configure, but currently it isn't.
59         Currently, we read a hard-wired value from patchlevel.h.
60         Perhaps what we ought to do is take the hard-wired value from
61         patchlevel.h but then modify it if the current Configure
62         options warrant.  patchlevel.h then would use an #ifdef guard.
63
64 api_subversion (patchlevel.U):
65         The three variables, api_revision, api_version, and
66         api_subversion, specify the version of the oldest perl binary
67         compatible with the present perl.  In a full version string
68         such as '5.6.1', api_subversion is the '1'.  See api_revision for
69         full details.
70
71 api_version (patchlevel.U):
72         The three variables, api_revision, api_version, and
73         api_subversion, specify the version of the oldest perl binary
74         compatible with the present perl.  In a full version string
75         such as '5.6.1', api_version is the '6'.  See api_revision for
76         full details.  As a special case, 5.5.0 is rendered in the
77         old-style as 5.005.  (In the 5.005_0x maintenance series,
78         this was the only versioned directory in $sitelib.)
79
80 api_versionstring (patchlevel.U):
81         This variable combines api_revision, api_version, and
82         api_subversion in a format such as 5.6.1 (or 5_6_1) suitable
83         for use as a directory name.  This is filesystem dependent.
84
85 ar (Loc.U):
86         This variable is used internally by Configure to determine the
87         full pathname (if any) of the ar program.  After Configure runs,
88         the value is reset to a plain "ar" and is not useful.
89
90 archlib (archlib.U):
91         This variable holds the name of the directory in which the user wants
92         to put architecture-dependent public library files for $package.
93         It is most often a local directory such as /usr/local/lib.
94         Programs using this variable must be prepared to deal
95         with filename expansion.
96
97 archlibexp (archlib.U):
98         This variable is the same as the archlib variable, but is
99         filename expanded at configuration time, for convenient use.
100
101 archname64 (use64bits.U):
102         This variable is used for the 64-bitness part of $archname.
103
104 archname (archname.U):
105         This variable is a short name to characterize the current
106         architecture.  It is used mainly to construct the default archlib.
107
108 archobjs (Unix.U):
109         This variable defines any additional objects that must be linked
110         in with the program on this architecture.  On unix, it is usually
111         empty.  It is typically used to include emulations of unix calls
112         or other facilities.  For perl on OS/2, for example, this would
113         include os2/os2.obj.
114
115 awk (Loc.U):
116         This variable is used internally by Configure to determine the
117         full pathname (if any) of the awk program.  After Configure runs,
118         the value is reset to a plain "awk" and is not useful.
119
120 baserev (baserev.U):
121         The base revision level of this package, from the .package file.
122
123 bash (Loc.U):
124         This variable is defined but not used by Configure.
125         The value is a plain '' and is not useful.
126
127 bin (bin.U):
128         This variable holds the name of the directory in which the user wants
129         to put publicly executable images for the package in question.  It
130         is most often a local directory such as /usr/local/bin. Programs using
131         this variable must be prepared to deal with ~name substitution.
132
133 bincompat5005 (bincompat5005.U):
134         This variable contains y if Perl 5.006 should be binary-compatible
135         with Perl 5.005.
136
137 binexp (bin.U):
138         This is the same as the bin variable, but is filename expanded at
139         configuration time, for use in your makefiles.
140
141 bison (Loc.U):
142         This variable is defined but not used by Configure.
143         The value is a plain '' and is not useful.
144
145 byacc (Loc.U):
146         This variable is used internally by Configure to determine the
147         full pathname (if any) of the byacc program.  After Configure runs,
148         the value is reset to a plain "byacc" and is not useful.
149
150 byteorder (byteorder.U):
151         This variable holds the byte order. In the following, larger digits
152         indicate more significance.  The variable byteorder is either 4321
153         on a big-endian machine, or 1234 on a little-endian, or 87654321
154         on a Cray ... or 3412 with weird order !
155
156 c (n.U):
157         This variable contains the \c string if that is what causes the echo
158         command to suppress newline.  Otherwise it is null.  Correct usage is
159         $echo $n "prompt for a question: $c".
160
161 castflags (d_castneg.U):
162         This variable contains a flag that precise difficulties the
163         compiler has casting odd floating values to unsigned long:
164         0 = ok
165         1 = couldn't cast < 0
166         2 = couldn't cast >= 0x80000000
167         4 = couldn't cast in argument expression list
168
169 cat (Loc.U):
170         This variable is used internally by Configure to determine the
171         full pathname (if any) of the cat program.  After Configure runs,
172         the value is reset to a plain "cat" and is not useful.
173
174 cc (cc.U):
175         This variable holds the name of a command to execute a C compiler which
176         can resolve multiple global references that happen to have the same
177         name.  Usual values are 'cc', 'Mcc', 'cc -M', and 'gcc'.
178
179 cccdlflags (dlsrc.U):
180         This variable contains any special flags that might need to be
181         passed with 'cc -c' to compile modules to be used to create a shared
182         library that will be used for dynamic loading.  For hpux, this
183         should be +z.  It is up to the makefile to use it.
184
185 ccdlflags (dlsrc.U):
186         This variable contains any special flags that might need to be
187         passed to cc to link with a shared library for dynamic loading.
188         It is up to the makefile to use it.  For sunos 4.1, it should
189         be empty.
190
191 ccflags (ccflags.U):
192         This variable contains any additional C compiler flags desired by
193         the user.  It is up to the Makefile to use this.
194
195 ccsymbols (Cppsym.U):
196         The variable contains the symbols defined by the C compiler alone.
197         The list is a space-separated list of symbol=value tokens.
198
199 cf_by (cf_who.U):
200         Login name of the person who ran the Configure script and answered the
201         questions. This is used to tag both config.sh and config_h.SH.
202
203 cf_email (cf_email.U):
204         Electronic mail address of the person who ran Configure. This can be
205         used by units that require the user's e-mail, like MailList.U.
206
207 cf_time (cf_who.U):
208         Holds the output of the "date" command when the configuration file was
209         produced. This is used to tag both config.sh and config_h.SH.
210
211 charsize (charsize.U):
212         This variable contains the value of the CHARSIZE symbol, which
213         indicates to the C program how many bytes there are in a character.
214
215 chgrp (Loc.U):
216         This variable is defined but not used by Configure.
217         The value is a plain '' and is not useful.
218
219 chmod (Loc.U):
220         This variable is defined but not used by Configure.
221         The value is a plain '' and is not useful.
222
223 chown (Loc.U):
224         This variable is defined but not used by Configure.
225         The value is a plain '' and is not useful.
226
227 clocktype (d_times.U):
228         This variable holds the type returned by times(). It can be long,
229         or clock_t on BSD sites (in which case <sys/types.h> should be
230         included).
231
232 comm (Loc.U):
233         This variable is used internally by Configure to determine the
234         full pathname (if any) of the comm program.  After Configure runs,
235         the value is reset to a plain "comm" and is not useful.
236
237 compress (Loc.U):
238         This variable is defined but not used by Configure.
239         The value is a plain '' and is not useful.
240
241 CONFIGDOTSH (Oldsyms.U):
242         This is set to 'true' in config.sh so that a shell script
243         sourcing config.sh can tell if it has been sourced already.
244
245 contains (contains.U):
246         This variable holds the command to do a grep with a proper return
247         status.  On most sane systems it is simply "grep".  On insane systems
248         it is a grep followed by a cat followed by a test.  This variable
249         is primarily for the use of other Configure units.
250
251 cp (Loc.U):
252         This variable is used internally by Configure to determine the
253         full pathname (if any) of the cp program.  After Configure runs,
254         the value is reset to a plain "cp" and is not useful.
255
256 cpio (Loc.U):
257         This variable is defined but not used by Configure.
258         The value is a plain '' and is not useful.
259
260 cpp (Loc.U):
261         This variable is used internally by Configure to determine the
262         full pathname (if any) of the cpp program.  After Configure runs,
263         the value is reset to a plain "cpp" and is not useful.
264
265 cpp_stuff (cpp_stuff.U):
266         This variable contains an identification of the catenation mechanism
267         used by the C preprocessor.
268
269 cppccsymbols (Cppsym.U):
270         The variable contains the symbols defined by both
271         the bare C compiler and during a compilation that
272         includes stdio.h.
273         The list is a space-separated list of symbol=value tokens.
274
275 cppflags (ccflags.U):
276         This variable holds the flags that will be passed to the C pre-
277         processor. It is up to the Makefile to use it.
278
279 cpplast (cppstdin.U):
280         This variable has the same functionality as cppminus, only it applies
281         to cpprun and not cppstdin.
282
283 cppminus (cppstdin.U):
284         This variable contains the second part of the string which will invoke
285         the C preprocessor on the standard input and produce to standard
286         output.  This variable will have the value "-" if cppstdin needs
287         a minus to specify standard input, otherwise the value is "".
288
289 cpprun (cppstdin.U):
290         This variable contains the command which will invoke a C preprocessor
291         on standard input and put the output to stdout. It is guaranteed not
292         to be a wrapper and may be a null string if no preprocessor can be
293         made directly available. This preprocessor might be different from the
294         one used by the C compiler. Don't forget to append cpplast after the
295         preprocessor options.
296
297 cppstdin (cppstdin.U):
298         This variable contains the command which will invoke the C
299         preprocessor on standard input and put the output to stdout.
300         It is primarily used by other Configure units that ask about
301         preprocessor symbols.
302
303 cppsymbols (Cppsym.U):
304         The variable contains the symbols during a compilation
305         that includes stdio.h.
306         The list is a space-separated list of symbol=value tokens.
307
308 crosscompile (crosscompile.U):
309         This variable conditionally defines the CROSSCOMPILE symbol
310         which signifies that the build process is be a cross-compilation.
311         This is normally set by hints files or from Configure command line.
312
313 cryptlib (d_crypt.U):
314         This variable holds -lcrypt or the path to a libcrypt.a archive if
315         the crypt() function is not defined in the standard C library. It is
316         up to the Makefile to use this.
317
318 csh (Loc.U):
319         This variable is used internally by Configure to determine the
320         full pathname (if any) of the csh program.  After Configure runs,
321         the value is reset to a plain "csh" and is not useful.
322
323 d_access (d_access.U):
324         This variable conditionally defines HAS_ACCESS if the access() system
325         call is available to check for access permissions using real IDs.
326
327 d_accessx (d_accessx.U):
328         This variable conditionally defines the HAS_ACCESSX symbol, which
329         indicates to the C program that the accessx() routine is available.
330
331 d_alarm (d_alarm.U):
332         This variable conditionally defines the HAS_ALARM symbol, which
333         indicates to the C program that the alarm() routine is available.
334
335 d_archlib (archlib.U):
336         This variable conditionally defines ARCHLIB to hold the pathname
337         of architecture-dependent library files for $package.  If
338         $archlib is the same as $privlib, then this is set to undef.
339
340 d_atolf (atolf.U):
341         This variable conditionally defines the HAS_ATOLF symbol, which
342         indicates to the C program that the atolf() routine is available.
343
344 d_atoll (atoll.U):
345         This variable conditionally defines the HAS_ATOLL symbol, which
346         indicates to the C program that the atoll() routine is available.
347
348 d_attribut (d_attribut.U):
349         This variable conditionally defines HASATTRIBUTE, which
350         indicates the C compiler can check for function attributes,
351         such as printf formats.
352
353 d_bcmp (d_bcmp.U):
354         This variable conditionally defines the HAS_BCMP symbol if
355         the bcmp() routine is available to compare strings.
356
357 d_bcopy (d_bcopy.U):
358         This variable conditionally defines the HAS_BCOPY symbol if
359         the bcopy() routine is available to copy strings.
360
361 d_bincompat5005 (bincompat5005.U):
362         This variable conditionally defines BINCOMPAT5005 so that embed.h
363         can take special action if Perl 5.006 should be binary-compatible
364         with Perl 5.005.  This is impossible for builds that use features
365         like threads and multiplicity it is always $undef for those versions.
366
367 d_bsd (Guess.U):
368         This symbol conditionally defines the symbol BSD when running on a
369         BSD system.
370
371 d_bsdgetpgrp (d_getpgrp.U):
372         This variable conditionally defines USE_BSD_GETPGRP if
373         getpgrp needs one arguments whereas USG one needs none.
374
375 d_bsdsetpgrp (d_setpgrp.U):
376         This variable conditionally defines USE_BSD_SETPGRP if
377         setpgrp needs two arguments whereas USG one needs none.
378         See also d_setpgid for a POSIX interface.
379
380 d_bzero (d_bzero.U):
381         This variable conditionally defines the HAS_BZERO symbol if
382         the bzero() routine is available to set memory to 0.
383
384 d_casti32 (d_casti32.U):
385         This variable conditionally defines CASTI32, which indicates
386         whether the C compiler can cast large floats to 32-bit ints.
387
388 d_castneg (d_castneg.U):
389         This variable conditionally defines CASTNEG, which indicates
390         wether the C compiler can cast negative float to unsigned.
391
392 d_charvspr (d_vprintf.U):
393         This variable conditionally defines CHARVSPRINTF if this system
394         has vsprintf returning type (char*).  The trend seems to be to
395         declare it as "int vsprintf()".
396
397 d_chown (d_chown.U):
398         This variable conditionally defines the HAS_CHOWN symbol, which
399         indicates to the C program that the chown() routine is available.
400
401 d_chroot (d_chroot.U):
402         This variable conditionally defines the HAS_CHROOT symbol, which
403         indicates to the C program that the chroot() routine is available.
404
405 d_chsize (d_chsize.U):
406         This variable conditionally defines the CHSIZE symbol, which
407         indicates to the C program that the chsize() routine is available
408         to truncate files.  You might need a -lx to get this routine.
409
410 d_closedir (d_closedir.U):
411         This variable conditionally defines HAS_CLOSEDIR if closedir() is
412         available.
413
414 d_const (d_const.U):
415         This variable conditionally defines the HASCONST symbol, which
416         indicates to the C program that this C compiler knows about the
417         const type.
418
419 d_crypt (d_crypt.U):
420         This variable conditionally defines the CRYPT symbol, which
421         indicates to the C program that the crypt() routine is available
422         to encrypt passwords and the like.
423
424 d_csh (d_csh.U):
425         This variable conditionally defines the CSH symbol, which
426         indicates to the C program that the C-shell exists.
427
428 d_cuserid (d_cuserid.U):
429         This variable conditionally defines the HAS_CUSERID symbol, which
430         indicates to the C program that the cuserid() routine is available
431         to get character login names.
432
433 d_dbl_dig (d_dbl_dig.U):
434         This variable conditionally defines d_dbl_dig if this system's
435         header files provide DBL_DIG, which is the number of significant
436         digits in a double precision number.
437
438 d_difftime (d_difftime.U):
439         This variable conditionally defines the HAS_DIFFTIME symbol, which
440         indicates to the C program that the difftime() routine is available.
441
442 d_dirnamlen (i_dirent.U):
443         This variable conditionally defines DIRNAMLEN, which indicates
444         to the C program that the length of directory entry names is
445         provided by a d_namelen field.
446
447 d_dlerror (d_dlerror.U):
448         This variable conditionally defines the HAS_DLERROR symbol, which
449         indicates to the C program that the dlerror() routine is available.
450
451 d_dlopen (d_dlopen.U):
452         This variable conditionally defines the HAS_DLOPEN symbol, which
453         indicates to the C program that the dlopen() routine is available.
454
455 d_dlsymun (d_dlsymun.U):
456         This variable conditionally defines DLSYM_NEEDS_UNDERSCORE, which
457         indicates that we need to prepend an underscore to the symbol
458         name before calling dlsym().
459
460 d_dosuid (d_dosuid.U):
461         This variable conditionally defines the symbol DOSUID, which
462         tells the C program that it should insert setuid emulation code
463         on hosts which have setuid #! scripts disabled.
464
465 d_drand48proto (d_drand48proto.U):
466         This variable conditionally defines the HAS_DRAND48_PROTO symbol,
467         which indicates to the C program that the system provides
468         a prototype for the drand48() function.  Otherwise, it is
469         up to the program to supply one.
470
471 d_dup2 (d_dup2.U):
472         This variable conditionally defines HAS_DUP2 if dup2() is
473         available to duplicate file descriptors.
474
475 d_eaccess (d_eaccess.U):
476         This variable conditionally defines the HAS_EACCESS symbol, which
477         indicates to the C program that the eaccess() routine is available.
478
479 d_endgrent (d_endgrent.U):
480         This variable conditionally defines the HAS_ENDGRENT symbol, which
481         indicates to the C program that the endgrent() routine is available
482         for sequential access of the group database.
483
484 d_endhent (d_endhent.U):
485         This variable conditionally defines HAS_ENDHOSTENT if endhostent() is
486         available to close whatever was being used for host queries.
487
488 d_endnent (d_endnent.U):
489         This variable conditionally defines HAS_ENDNETENT if endnetent() is
490         available to close whatever was being used for network queries.
491
492 d_endpent (d_endpent.U):
493         This variable conditionally defines HAS_ENDPROTOENT if endprotoent() is
494         available to close whatever was being used for protocol queries.
495
496 d_endpwent (d_endpwent.U):
497         This variable conditionally defines the HAS_ENDPWENT symbol, which
498         indicates to the C program that the endpwent() routine is available
499         for sequential access of the passwd database.
500
501 d_endsent (d_endsent.U):
502         This variable conditionally defines HAS_ENDSERVENT if endservent() is
503         available to close whatever was being used for service queries.
504
505 d_endspent (d_endspent.U):
506         This variable conditionally defines HAS_ENDSPENT if endspent() is
507         available to finalize the scan of SysV shadow password entries.
508
509 d_eofnblk (nblock_io.U):
510         This variable conditionally defines EOF_NONBLOCK if EOF can be seen
511         when reading from a non-blocking I/O source.
512
513 d_eunice (Guess.U):
514         This variable conditionally defines the symbols EUNICE and VAX, which
515         alerts the C program that it must deal with ideosyncracies of VMS.
516
517 d_fchmod (d_fchmod.U):
518         This variable conditionally defines the HAS_FCHMOD symbol, which
519         indicates to the C program that the fchmod() routine is available
520         to change mode of opened files.
521
522 d_fchown (d_fchown.U):
523         This variable conditionally defines the HAS_FCHOWN symbol, which
524         indicates to the C program that the fchown() routine is available
525         to change ownership of opened files.
526
527 d_fcntl (d_fcntl.U):
528         This variable conditionally defines the HAS_FCNTL symbol, and indicates
529         whether the fcntl() function exists
530
531 d_fd_macros (d_fd_set.U):
532         This variable contains the eventual value of the HAS_FD_MACROS symbol,
533         which indicates if your C compiler knows about the macros which
534         manipulate an fd_set.
535
536 d_fd_set (d_fd_set.U):
537         This variable contains the eventual value of the HAS_FD_SET symbol,
538         which indicates if your C compiler knows about the fd_set typedef.
539
540 d_fds_bits (d_fd_set.U):
541         This variable contains the eventual value of the HAS_FDS_BITS symbol,
542         which indicates if your fd_set typedef contains the fds_bits member.
543         If you have an fd_set typedef, but the dweebs who installed it did
544         a half-fast job and neglected to provide the macros to manipulate
545         an fd_set, HAS_FDS_BITS will let us know how to fix the gaffe.
546
547 d_fgetpos (d_fgetpos.U):
548         This variable conditionally defines HAS_FGETPOS if fgetpos() is
549         available to get the file position indicator.
550
551 d_flexfnam (d_flexfnam.U):
552         This variable conditionally defines the FLEXFILENAMES symbol, which
553         indicates that the system supports filenames longer than 14 characters.
554
555 d_flock (d_flock.U):
556         This variable conditionally defines HAS_FLOCK if flock() is
557         available to do file locking.
558
559 d_fork (d_fork.U):
560         This variable conditionally defines the HAS_FORK symbol, which
561         indicates to the C program that the fork() routine is available.
562
563 d_fpathconf (d_pathconf.U):
564         This variable conditionally defines the HAS_FPATHCONF symbol, which
565         indicates to the C program that the pathconf() routine is available
566         to determine file-system related limits and options associated
567         with a given open file descriptor.
568
569 d_fpos64_t (io64.U):
570         This symbol will be defined if the C compiler supports fpos64_t.
571
572 d_fs_data_s (d_fs_data_s.U):
573         This variable conditionally defines the HAS_STRUCT_FS_DATA symbol,
574         which indicates that the struct fs_data is supported.
575
576 d_fseeko (d_fseeko.U):
577         This variable conditionally defines the HAS_FSEEKO symbol, which
578         indicates to the C program that the fseeko() routine is available.
579
580 d_fsetpos (d_fsetpos.U):
581         This variable conditionally defines HAS_FSETPOS if fsetpos() is
582         available to set the file position indicator.
583
584 d_fstatfs (d_fstatfs.U):
585         This variable conditionally defines the HAS_FSTATFS symbol, which
586         indicates to the C program that the fstatfs() routine is available.
587
588 d_fstatvfs (d_statvfs.U):
589         This variable conditionally defines the HAS_FSTATVFS symbol, which
590         indicates to the C program that the fstatvfs() routine is available.
591
592 d_ftello (d_ftello.U):
593         This variable conditionally defines the HAS_FTELLO symbol, which
594         indicates to the C program that the ftello() routine is available.
595
596 d_ftime (d_ftime.U):
597         This variable conditionally defines the HAS_FTIME symbol, which indicates
598         that the ftime() routine exists.  The ftime() routine is basically
599         a sub-second accuracy clock.
600
601 d_Gconvert (d_gconvert.U):
602         This variable holds what Gconvert is defined as to convert
603         floating point numbers into strings. It could be 'gconvert'
604         or a more complex macro emulating gconvert with gcvt() or sprintf.
605         Possible values are:
606         d_Gconvert='gconvert((x),(n),(t),(b))'
607         d_Gconvert='gcvt((x),(n),(b))'
608         d_Gconvert='sprintf((b),"%.*g",(n),(x))'
609
610 d_getcwd (d_getcwd.U):
611         This variable conditionally defines the HAS_GETCWD symbol, which
612         indicates to the C program that the getcwd() routine is available
613         to get the current working directory.
614
615 d_getgrent (d_getgrent.U):
616         This variable conditionally defines the HAS_GETGRENT symbol, which
617         indicates to the C program that the getgrent() routine is available
618         for sequential access of the group database.
619
620 d_getgrps (d_getgrps.U):
621         This variable conditionally defines the HAS_GETGROUPS symbol, which
622         indicates to the C program that the getgroups() routine is available
623         to get the list of process groups.
624
625 d_gethbyaddr (d_gethbyad.U):
626         This variable conditionally defines the HAS_GETHOSTBYADDR symbol, which
627         indicates to the C program that the gethostbyaddr() routine is available
628         to look up hosts by their IP addresses.
629
630 d_gethbyname (d_gethbynm.U):
631         This variable conditionally defines the HAS_GETHOSTBYNAME symbol, which
632         indicates to the C program that the gethostbyname() routine is available
633         to look up host names in some data base or other.
634
635 d_gethent (d_gethent.U):
636         This variable conditionally defines HAS_GETHOSTENT if gethostent() is
637         available to look up host names in some data base or another.
638
639 d_gethname (d_gethname.U):
640         This variable conditionally defines the HAS_GETHOSTNAME symbol, which
641         indicates to the C program that the gethostname() routine may be
642         used to derive the host name.
643
644 d_gethostprotos (d_gethostprotos.U):
645         This variable conditionally defines the HAS_GETHOST_PROTOS symbol,
646         which indicates to the C program that <netdb.h> supplies
647         prototypes for the various gethost*() functions.  
648         See also netdbtype.U for probing for various netdb types.
649
650 d_getlogin (d_getlogin.U):
651         This variable conditionally defines the HAS_GETLOGIN symbol, which
652         indicates to the C program that the getlogin() routine is available
653         to get the login name.
654
655 d_getmnt (d_getmnt.U):
656         This variable conditionally defines the HAS_GETMNT symbol, which
657         indicates to the C program that the getmnt() routine is available
658         to retrieve one or more mount info blocks by filename.
659
660 d_getmntent (d_getmntent.U):
661         This variable conditionally defines the HAS_GETMNTENT symbol, which
662         indicates to the C program that the getmntent() routine is available
663         to iterate through mounted files to get their mount info.
664
665 d_getnbyaddr (d_getnbyad.U):
666         This variable conditionally defines the HAS_GETNETBYADDR symbol, which
667         indicates to the C program that the getnetbyaddr() routine is available
668         to look up networks by their IP addresses.
669
670 d_getnbyname (d_getnbynm.U):
671         This variable conditionally defines the HAS_GETNETBYNAME symbol, which
672         indicates to the C program that the getnetbyname() routine is available
673         to look up networks by their names.
674
675 d_getnent (d_getnent.U):
676         This variable conditionally defines HAS_GETNETENT if getnetent() is
677         available to look up network names in some data base or another.
678
679 d_getnetprotos (d_getnetprotos.U):
680         This variable conditionally defines the HAS_GETNET_PROTOS symbol,
681         which indicates to the C program that <netdb.h> supplies
682         prototypes for the various getnet*() functions.  
683         See also netdbtype.U for probing for various netdb types.
684
685 d_getpbyname (d_getprotby.U):
686         This variable conditionally defines the HAS_GETPROTOBYNAME 
687         symbol, which indicates to the C program that the 
688         getprotobyname() routine is available to look up protocols
689         by their name.
690
691 d_getpbynumber (d_getprotby.U):
692         This variable conditionally defines the HAS_GETPROTOBYNUMBER 
693         symbol, which indicates to the C program that the 
694         getprotobynumber() routine is available to look up protocols
695         by their number.
696
697 d_getpent (d_getpent.U):
698         This variable conditionally defines HAS_GETPROTOENT if getprotoent() is
699         available to look up protocols in some data base or another.
700
701 d_getpgid (d_getpgid.U):
702         This variable conditionally defines the HAS_GETPGID symbol, which
703         indicates to the C program that the getpgid(pid) function
704         is available to get the process group id.
705
706 d_getpgrp2 (d_getpgrp2.U):
707         This variable conditionally defines the HAS_GETPGRP2 symbol, which
708         indicates to the C program that the getpgrp2() (as in DG/UX) routine
709         is available to get the current process group.
710
711 d_getpgrp (d_getpgrp.U):
712         This variable conditionally defines HAS_GETPGRP if getpgrp() is
713         available to get the current process group.
714
715 d_getppid (d_getppid.U):
716         This variable conditionally defines the HAS_GETPPID symbol, which
717         indicates to the C program that the getppid() routine is available
718         to get the parent process ID.
719
720 d_getprior (d_getprior.U):
721         This variable conditionally defines HAS_GETPRIORITY if getpriority()
722         is available to get a process's priority.
723
724 d_getprotoprotos (d_getprotoprotos.U):
725         This variable conditionally defines the HAS_GETPROTO_PROTOS symbol,
726         which indicates to the C program that <netdb.h> supplies
727         prototypes for the various getproto*() functions.  
728         See also netdbtype.U for probing for various netdb types.
729
730 d_getpwent (d_getpwent.U):
731         This variable conditionally defines the HAS_GETPWENT symbol, which
732         indicates to the C program that the getpwent() routine is available
733         for sequential access of the passwd database.
734
735 d_getsbyname (d_getsrvby.U):
736         This variable conditionally defines the HAS_GETSERVBYNAME 
737         symbol, which indicates to the C program that the 
738         getservbyname() routine is available to look up services
739         by their name.
740
741 d_getsbyport (d_getsrvby.U):
742         This variable conditionally defines the HAS_GETSERVBYPORT 
743         symbol, which indicates to the C program that the 
744         getservbyport() routine is available to look up services
745         by their port.
746
747 d_getsent (d_getsent.U):
748         This variable conditionally defines HAS_GETSERVENT if getservent() is
749         available to look up network services in some data base or another.
750
751 d_getservprotos (d_getservprotos.U):
752         This variable conditionally defines the HAS_GETSERV_PROTOS symbol,
753         which indicates to the C program that <netdb.h> supplies
754         prototypes for the various getserv*() functions.  
755         See also netdbtype.U for probing for various netdb types.
756
757 d_getspent (d_getspent.U):
758         This variable conditionally defines HAS_GETSPENT if getspent() is
759         available to retrieve SysV shadow password entries sequentially.
760
761 d_getspnam (d_getspnam.U):
762         This variable conditionally defines HAS_GETSPNAM if getspnam() is
763         available to retrieve SysV shadow password entries by name.
764
765 d_gettimeod (d_ftime.U):
766         This variable conditionally defines the HAS_GETTIMEOFDAY symbol, which
767         indicates that the gettimeofday() system call exists (to obtain a
768         sub-second accuracy clock). You should probably include <sys/resource.h>.
769
770 d_gnulibc (d_gnulibc.U):
771         Defined if we're dealing with the GNU C Library.
772
773 d_grpasswd (i_grp.U):
774         This variable conditionally defines GRPASSWD, which indicates
775         that struct group in <grp.h> contains gr_passwd.
776
777 d_hasmntopt (d_hasmntopt.U):
778         This variable conditionally defines the HAS_HASMNTOPT symbol, which
779         indicates to the C program that the hasmntopt() routine is available
780         to query the mount options of file systems.
781
782 d_htonl (d_htonl.U):
783         This variable conditionally defines HAS_HTONL if htonl() and its
784         friends are available to do network order byte swapping.
785
786 d_iconv (d_iconv.U):
787         This variable conditionally defines the HAS_ICONV symbol, which
788         indicates to the C program that the iconv() routine is available.
789
790 d_index (d_strchr.U):
791         This variable conditionally defines HAS_INDEX if index() and
792         rindex() are available for string searching.
793
794 d_inetaton (d_inetaton.U):
795         This variable conditionally defines the HAS_INET_ATON symbol, which
796         indicates to the C program that the inet_aton() function is available
797         to parse IP address "dotted-quad" strings.
798
799 d_int64_t (d_int64_t.U):
800         This symbol will be defined if the C compiler supports int64_t.
801
802 d_isascii (d_isascii.U):
803         This variable conditionally defines the HAS_ISASCII constant,
804         which indicates to the C program that isascii() is available.
805
806 d_killpg (d_killpg.U):
807         This variable conditionally defines the HAS_KILLPG symbol, which
808         indicates to the C program that the killpg() routine is available
809         to kill process groups.
810
811 d_lchown (d_lchown.U):
812         This variable conditionally defines the HAS_LCHOWN symbol, which
813         indicates to the C program that the lchown() routine is available
814         to operate on a symbolic link (instead of following the link).
815
816 d_ldbl_dig (d_ldbl_dig.U):
817         This variable conditionally defines d_ldbl_dig if this system's
818         header files provide LDBL_DIG, which is the number of significant
819         digits in a long double precision number.
820
821 d_link (d_link.U):
822         This variable conditionally defines HAS_LINK if link() is
823         available to create hard links.
824
825 d_locconv (d_locconv.U):
826         This variable conditionally defines HAS_LOCALECONV if localeconv() is
827         available for numeric and monetary formatting conventions.
828
829 d_lockf (d_lockf.U):
830         This variable conditionally defines HAS_LOCKF if lockf() is
831         available to do file locking.
832
833 d_longdbl (d_longdbl.U):
834         This variable conditionally defines HAS_LONG_DOUBLE if 
835         the long double type is supported.
836
837 d_longlong (d_longlong.U):
838         This variable conditionally defines HAS_LONG_LONG if 
839         the long long type is supported.
840
841 d_lstat (d_lstat.U):
842         This variable conditionally defines HAS_LSTAT if lstat() is
843         available to do file stats on symbolic links.
844
845 d_mblen (d_mblen.U):
846         This variable conditionally defines the HAS_MBLEN symbol, which
847         indicates to the C program that the mblen() routine is available
848         to find the number of bytes in a multibye character.
849
850 d_mbstowcs (d_mbstowcs.U):
851         This variable conditionally defines the HAS_MBSTOWCS symbol, which
852         indicates to the C program that the mbstowcs() routine is available
853         to convert a multibyte string into a wide character string.
854
855 d_mbtowc (d_mbtowc.U):
856         This variable conditionally defines the HAS_MBTOWC symbol, which
857         indicates to the C program that the mbtowc() routine is available
858         to convert multibyte to a wide character.
859
860 d_memchr (d_memchr.U):
861         This variable conditionally defines the HAS_MEMCHR symbol, which
862         indicates to the C program that the memchr() routine is available
863         to locate characters within a C string.
864
865 d_memcmp (d_memcmp.U):
866         This variable conditionally defines the HAS_MEMCMP symbol, which
867         indicates to the C program that the memcmp() routine is available
868         to compare blocks of memory.
869
870 d_memcpy (d_memcpy.U):
871         This variable conditionally defines the HAS_MEMCPY symbol, which
872         indicates to the C program that the memcpy() routine is available
873         to copy blocks of memory.
874
875 d_memmove (d_memmove.U):
876         This variable conditionally defines the HAS_MEMMOVE symbol, which
877         indicates to the C program that the memmove() routine is available
878         to copy potentatially overlapping blocks of memory.
879
880 d_memset (d_memset.U):
881         This variable conditionally defines the HAS_MEMSET symbol, which
882         indicates to the C program that the memset() routine is available
883         to set blocks of memory.
884
885 d_mkdir (d_mkdir.U):
886         This variable conditionally defines the HAS_MKDIR symbol, which
887         indicates to the C program that the mkdir() routine is available
888         to create directories..
889
890 d_mkdtemp (d_mkdtemp.U):
891         This variable conditionally defines the HAS_MKDTEMP symbol, which
892         indicates to the C program that the mkdtemp() routine is available
893         to exclusively create a uniquely named temporary directory.
894
895 d_mkfifo (d_mkfifo.U):
896         This variable conditionally defines the HAS_MKFIFO symbol, which
897         indicates to the C program that the mkfifo() routine is available.
898
899 d_mkstemp (d_mkstemp.U):
900         This variable conditionally defines the HAS_MKSTEMP symbol, which
901         indicates to the C program that the mkstemp() routine is available
902         to exclusively create and open a uniquely named temporary file.
903
904 d_mkstemps (d_mkstemps.U):
905         This variable conditionally defines the HAS_MKSTEMPS symbol, which
906         indicates to the C program that the mkstemps() routine is available
907         to exclusively create and open a uniquely named (with a suffix)
908         temporary file.
909
910 d_mktime (d_mktime.U):
911         This variable conditionally defines the HAS_MKTIME symbol, which
912         indicates to the C program that the mktime() routine is available.
913
914 d_mmap (d_mmap.U):
915         This variable conditionally defines HAS_MMAP if mmap() is
916         available to map a file into memory.
917
918 d_mprotect (d_mprotect.U):
919         This variable conditionally defines HAS_MPROTECT if mprotect() is
920         available to modify the access protection of a memory mapped file.
921
922 d_msg (d_msg.U):
923         This variable conditionally defines the HAS_MSG symbol, which
924         indicates that the entire msg*(2) library is present.
925
926 d_msg_ctrunc (d_socket.U):
927         This variable conditionally defines the HAS_MSG_CTRUNC symbol,
928         which indicates that the MSG_CTRUNC is available.  #ifdef is
929         not enough because it may be an enum, glibc has been known to do this.
930
931 d_msg_dontroute (d_socket.U):
932         This variable conditionally defines the HAS_MSG_DONTROUTE symbol,
933         which indicates that the MSG_DONTROUTE is available.  #ifdef is
934         not enough because it may be an enum, glibc has been known to do this.
935
936 d_msg_oob (d_socket.U):
937         This variable conditionally defines the HAS_MSG_OOB symbol,
938         which indicates that the MSG_OOB is available.  #ifdef is
939         not enough because it may be an enum, glibc has been known to do this.
940
941 d_msg_peek (d_socket.U):
942         This variable conditionally defines the HAS_MSG_PEEK symbol,
943         which indicates that the MSG_PEEK is available.  #ifdef is
944         not enough because it may be an enum, glibc has been known to do this.
945
946 d_msg_proxy (d_socket.U):
947         This variable conditionally defines the HAS_MSG_PROXY symbol,
948         which indicates that the MSG_PROXY is available.  #ifdef is
949         not enough because it may be an enum, glibc has been known to do this.
950
951 d_msgctl (d_msgctl.U):
952         This variable conditionally defines the HAS_MSGCTL symbol, which
953         indicates to the C program that the msgctl() routine is available.
954
955 d_msgget (d_msgget.U):
956         This variable conditionally defines the HAS_MSGGET symbol, which
957         indicates to the C program that the msgget() routine is available.
958
959 d_msgrcv (d_msgrcv.U):
960         This variable conditionally defines the HAS_MSGRCV symbol, which
961         indicates to the C program that the msgrcv() routine is available.
962
963 d_msgsnd (d_msgsnd.U):
964         This variable conditionally defines the HAS_MSGSND symbol, which
965         indicates to the C program that the msgsnd() routine is available.
966
967 d_msync (d_msync.U):
968         This variable conditionally defines HAS_MSYNC if msync() is
969         available to synchronize a mapped file.
970
971 d_munmap (d_munmap.U):
972         This variable conditionally defines HAS_MUNMAP if munmap() is
973         available to unmap a region mapped by mmap().
974
975 d_mymalloc (mallocsrc.U):
976         This variable conditionally defines MYMALLOC in case other parts
977         of the source want to take special action if MYMALLOC is used.
978         This may include different sorts of profiling or error detection.
979
980 d_nice (d_nice.U):
981         This variable conditionally defines the HAS_NICE symbol, which
982         indicates to the C program that the nice() routine is available.
983
984 d_nv_preserves_uv (perlxv.U):
985         This variable indicates whether a variable of type nvtype
986         can preserve all the bits a variable of type uvtype.
987
988 d_off64_t (io64.U):
989         This symbol will be defined if the C compiler supports off64_t.
990
991 d_old_pthread_create_joinable (d_pthrattrj.U):
992         This variable conditionally defines pthread_create_joinable.
993         undef if pthread.h defines PTHREAD_CREATE_JOINABLE.
994
995 d_oldpthreads (usethreads.U):
996         This variable conditionally defines the OLD_PTHREADS_API symbol,
997         and indicates that Perl should be built to use the old
998         draft POSIX threads API.  This is only potentially meaningful if
999         usethreads is set.
1000
1001 d_oldsock (d_socket.U):
1002         This variable conditionally defines the OLDSOCKET symbol, which
1003         indicates that the BSD socket interface is based on 4.1c and not 4.2.
1004
1005 d_open3 (d_open3.U):
1006         This variable conditionally defines the HAS_OPEN3 manifest constant,
1007         which indicates to the C program that the 3 argument version of
1008         the open(2) function is available.
1009
1010 d_pathconf (d_pathconf.U):
1011         This variable conditionally defines the HAS_PATHCONF symbol, which
1012         indicates to the C program that the pathconf() routine is available
1013         to determine file-system related limits and options associated
1014         with a given filename.
1015
1016 d_pause (d_pause.U):
1017         This variable conditionally defines the HAS_PAUSE symbol, which
1018         indicates to the C program that the pause() routine is available
1019         to suspend a process until a signal is received.
1020
1021 d_phostname (d_gethname.U):
1022         This variable conditionally defines the HAS_PHOSTNAME symbol, which
1023         contains the shell command which, when fed to popen(), may be
1024         used to derive the host name.
1025
1026 d_pipe (d_pipe.U):
1027         This variable conditionally defines the HAS_PIPE symbol, which
1028         indicates to the C program that the pipe() routine is available
1029         to create an inter-process channel.
1030
1031 d_poll (d_poll.U):
1032         This variable conditionally defines the HAS_POLL symbol, which
1033         indicates to the C program that the poll() routine is available
1034         to poll active file descriptors.
1035
1036 d_portable (d_portable.U):
1037         This variable conditionally defines the PORTABLE symbol, which
1038         indicates to the C program that it should not assume that it is
1039         running on the machine it was compiled on.
1040
1041 d_PRId64 (quadfio.U):
1042         This variable conditionally defines the PERL_PRId64 symbol, which
1043         indiciates that stdio has a symbol to print 64-bit decimal numbers.
1044
1045 d_PRIeldbl (longdblfio.U):
1046         This variable conditionally defines the PERL_PRIfldlbl symbol, which
1047         indiciates that stdio has a symbol to print long doubles.
1048
1049 d_PRIEldbl (longdblfio.U):
1050         This variable conditionally defines the PERL_PRIfldlbl symbol, which
1051         indiciates that stdio has a symbol to print long doubles.
1052
1053 d_PRIfldbl (longdblfio.U):
1054         This variable conditionally defines the PERL_PRIfldlbl symbol, which
1055         indiciates that stdio has a symbol to print long doubles.
1056
1057 d_PRIFldbl (longdblfio.U):
1058         This variable conditionally defines the PERL_PRIfldlbl symbol, which
1059         indiciates that stdio has a symbol to print long doubles.
1060
1061 d_PRIgldbl (longdblfio.U):
1062         This variable conditionally defines the PERL_PRIfldlbl symbol, which
1063         indiciates that stdio has a symbol to print long doubles.
1064
1065 d_PRIGldbl (longdblfio.U):
1066         This variable conditionally defines the PERL_PRIfldlbl symbol, which
1067         indiciates that stdio has a symbol to print long doubles.
1068
1069 d_PRIi64 (quadfio.U):
1070         This variable conditionally defines the PERL_PRIi64 symbol, which
1071         indiciates that stdio has a symbol to print 64-bit decimal numbers.
1072
1073 d_PRIo64 (quadfio.U):
1074         This variable conditionally defines the PERL_PRIo64 symbol, which
1075         indiciates that stdio has a symbol to print 64-bit octal numbers.
1076
1077 d_PRIu64 (quadfio.U):
1078         This variable conditionally defines the PERL_PRIu64 symbol, which
1079         indiciates that stdio has a symbol to print 64-bit unsigned decimal
1080         numbers.
1081
1082 d_PRIx64 (quadfio.U):
1083         This variable conditionally defines the PERL_PRIx64 symbol, which
1084         indiciates that stdio has a symbol to print 64-bit hexadecimal numbers.
1085
1086 d_PRIX64 (quadfio.U):
1087         This variable conditionally defines the PERL_PRIX64 symbol, which
1088         indiciates that stdio has a symbol to print 64-bit hExADECimAl numbers.
1089
1090 d_pthread_yield (d_pthread_y.U):
1091         This variable conditionally defines the HAS_PTHREAD_YIELD
1092         symbol if the pthread_yield routine is available to yield
1093         the execution of the current thread.
1094
1095 d_pwage (i_pwd.U):
1096         This variable conditionally defines PWAGE, which indicates
1097         that struct passwd contains pw_age.
1098
1099 d_pwchange (i_pwd.U):
1100         This variable conditionally defines PWCHANGE, which indicates
1101         that struct passwd contains pw_change.
1102
1103 d_pwclass (i_pwd.U):
1104         This variable conditionally defines PWCLASS, which indicates
1105         that struct passwd contains pw_class.
1106
1107 d_pwcomment (i_pwd.U):
1108         This variable conditionally defines PWCOMMENT, which indicates
1109         that struct passwd contains pw_comment.
1110
1111 d_pwexpire (i_pwd.U):
1112         This variable conditionally defines PWEXPIRE, which indicates
1113         that struct passwd contains pw_expire.
1114
1115 d_pwgecos (i_pwd.U):
1116         This variable conditionally defines PWGECOS, which indicates
1117         that struct passwd contains pw_gecos.
1118
1119 d_pwpasswd (i_pwd.U):
1120         This variable conditionally defines PWPASSWD, which indicates
1121         that struct passwd contains pw_passwd.
1122
1123 d_pwquota (i_pwd.U):
1124         This variable conditionally defines PWQUOTA, which indicates
1125         that struct passwd contains pw_quota.
1126
1127 d_quad (quadtype.U):
1128         This variable, if defined, tells that there's a 64-bit integer type,
1129         quadtype.
1130
1131 d_readdir (d_readdir.U):
1132         This variable conditionally defines HAS_READDIR if readdir() is
1133         available to read directory entries.
1134
1135 d_readlink (d_readlink.U):
1136         This variable conditionally defines the HAS_READLINK symbol, which
1137         indicates to the C program that the readlink() routine is available
1138         to read the value of a symbolic link.
1139
1140 d_rename (d_rename.U):
1141         This variable conditionally defines the HAS_RENAME symbol, which
1142         indicates to the C program that the rename() routine is available
1143         to rename files.
1144
1145 d_rewinddir (d_readdir.U):
1146         This variable conditionally defines HAS_REWINDDIR if rewinddir() is
1147         available.
1148
1149 d_rmdir (d_rmdir.U):
1150         This variable conditionally defines HAS_RMDIR if rmdir() is
1151         available to remove directories.
1152
1153 d_safebcpy (d_safebcpy.U):
1154         This variable conditionally defines the HAS_SAFE_BCOPY symbol if
1155         the bcopy() routine can do overlapping copies.
1156
1157 d_safemcpy (d_safemcpy.U):
1158         This variable conditionally defines the HAS_SAFE_MEMCPY symbol if
1159         the memcpy() routine can do overlapping copies.
1160
1161 d_sanemcmp (d_sanemcmp.U):
1162         This variable conditionally defines the HAS_SANE_MEMCMP symbol if
1163         the memcpy() routine is available and can be used to compare relative
1164         magnitudes of chars with their high bits set.
1165
1166 d_sched_yield (d_pthread_y.U):
1167         This variable conditionally defines the HAS_SCHED_YIELD
1168         symbol if the sched_yield routine is available to yield
1169         the execution of the current thread.
1170
1171 d_scm_rights (d_socket.U):
1172         This variable conditionally defines the HAS_SCM_RIGHTS symbol,
1173         which indicates that the SCM_RIGHTS is available.  #ifdef is
1174         not enough because it may be an enum, glibc has been known to do this.
1175
1176 d_seekdir (d_readdir.U):
1177         This variable conditionally defines HAS_SEEKDIR if seekdir() is
1178         available.
1179
1180 d_select (d_select.U):
1181         This variable conditionally defines HAS_SELECT if select() is
1182         available to select active file descriptors. A <sys/time.h>
1183         inclusion may be necessary for the timeout field.
1184
1185 d_sem (d_sem.U):
1186         This variable conditionally defines the HAS_SEM symbol, which
1187         indicates that the entire sem*(2) library is present.
1188
1189 d_semctl (d_semctl.U):
1190         This variable conditionally defines the HAS_SEMCTL symbol, which
1191         indicates to the C program that the semctl() routine is available.
1192
1193 d_semctl_semid_ds (d_union_semun.U):
1194         This variable conditionally defines USE_SEMCTL_SEMID_DS, which
1195         indicates that struct semid_ds * is to be used for semctl IPC_STAT.
1196
1197 d_semctl_semun (d_union_semun.U):
1198         This variable conditionally defines USE_SEMCTL_SEMUN, which
1199         indicates that union semun is to be used for semctl IPC_STAT.
1200
1201 d_semget (d_semget.U):
1202         This variable conditionally defines the HAS_SEMGET symbol, which
1203         indicates to the C program that the semget() routine is available.
1204
1205 d_semop (d_semop.U):
1206         This variable conditionally defines the HAS_SEMOP symbol, which
1207         indicates to the C program that the semop() routine is available.
1208
1209 d_setegid (d_setegid.U):
1210         This variable conditionally defines the HAS_SETEGID symbol, which
1211         indicates to the C program that the setegid() routine is available
1212         to change the effective gid of the current program.
1213
1214 d_seteuid (d_seteuid.U):
1215         This variable conditionally defines the HAS_SETEUID symbol, which
1216         indicates to the C program that the seteuid() routine is available
1217         to change the effective uid of the current program.
1218
1219 d_setgrent (d_setgrent.U):
1220         This variable conditionally defines the HAS_SETGRENT symbol, which
1221         indicates to the C program that the setgrent() routine is available
1222         for initializing sequential access to the group database.
1223
1224 d_setgrps (d_setgrps.U):
1225         This variable conditionally defines the HAS_SETGROUPS symbol, which
1226         indicates to the C program that the setgroups() routine is available
1227         to set the list of process groups.
1228
1229 d_sethent (d_sethent.U):
1230         This variable conditionally defines HAS_SETHOSTENT if sethostent() is
1231         available.
1232
1233 d_setlinebuf (d_setlnbuf.U):
1234         This variable conditionally defines the HAS_SETLINEBUF symbol, which
1235         indicates to the C program that the setlinebuf() routine is available
1236         to change stderr or stdout from block-buffered or unbuffered to a
1237         line-buffered mode.
1238
1239 d_setlocale (d_setlocale.U):
1240         This variable conditionally defines HAS_SETLOCALE if setlocale() is
1241         available to handle locale-specific ctype implementations.
1242
1243 d_setnent (d_setnent.U):
1244         This variable conditionally defines HAS_SETNETENT if setnetent() is
1245         available.
1246
1247 d_setpent (d_setpent.U):
1248         This variable conditionally defines HAS_SETPROTOENT if setprotoent() is
1249         available.
1250
1251 d_setpgid (d_setpgid.U):
1252         This variable conditionally defines the HAS_SETPGID symbol if the
1253         setpgid(pid, gpid) function is available to set process group ID.
1254
1255 d_setpgrp2 (d_setpgrp2.U):
1256         This variable conditionally defines the HAS_SETPGRP2 symbol, which
1257         indicates to the C program that the setpgrp2() (as in DG/UX) routine
1258         is available to set the current process group.
1259
1260 d_setpgrp (d_setpgrp.U):
1261         This variable conditionally defines HAS_SETPGRP if setpgrp() is
1262         available to set the current process group.
1263
1264 d_setprior (d_setprior.U):
1265         This variable conditionally defines HAS_SETPRIORITY if setpriority()
1266         is available to set a process's priority.
1267
1268 d_setpwent (d_setpwent.U):
1269         This variable conditionally defines the HAS_SETPWENT symbol, which
1270         indicates to the C program that the setpwent() routine is available
1271         for initializing sequential access to the passwd database.
1272
1273 d_setregid (d_setregid.U):
1274         This variable conditionally defines HAS_SETREGID if setregid() is
1275         available to change the real and effective gid of the current
1276         process.
1277
1278 d_setresgid (d_setregid.U):
1279         This variable conditionally defines HAS_SETRESGID if setresgid() is
1280         available to change the real, effective and saved gid of the current
1281         process.
1282
1283 d_setresuid (d_setreuid.U):
1284         This variable conditionally defines HAS_SETREUID if setresuid() is
1285         available to change the real, effective and saved uid of the current
1286         process.
1287
1288 d_setreuid (d_setreuid.U):
1289         This variable conditionally defines HAS_SETREUID if setreuid() is
1290         available to change the real and effective uid of the current
1291         process.
1292
1293 d_setrgid (d_setrgid.U):
1294         This variable conditionally defines the HAS_SETRGID symbol, which
1295         indicates to the C program that the setrgid() routine is available
1296         to change the real gid of the current program.
1297
1298 d_setruid (d_setruid.U):
1299         This variable conditionally defines the HAS_SETRUID symbol, which
1300         indicates to the C program that the setruid() routine is available
1301         to change the real uid of the current program.
1302
1303 d_setsent (d_setsent.U):
1304         This variable conditionally defines HAS_SETSERVENT if setservent() is
1305         available.
1306
1307 d_setsid (d_setsid.U):
1308         This variable conditionally defines HAS_SETSID if setsid() is
1309         available to set the process group ID.
1310
1311 d_setspent (d_setspent.U):
1312         This variable conditionally defines HAS_SETSPENT if setspent() is
1313         available to initialize the scan of SysV shadow password entries.
1314
1315 d_setvbuf (d_setvbuf.U):
1316         This variable conditionally defines the HAS_SETVBUF symbol, which
1317         indicates to the C program that the setvbuf() routine is available
1318         to change buffering on an open stdio stream.
1319
1320 d_sfio (d_sfio.U):
1321         This variable conditionally defines the USE_SFIO symbol,
1322         and indicates whether sfio is available (and should be used).
1323
1324 d_shm (d_shm.U):
1325         This variable conditionally defines the HAS_SHM symbol, which
1326         indicates that the entire shm*(2) library is present.
1327
1328 d_shmat (d_shmat.U):
1329         This variable conditionally defines the HAS_SHMAT symbol, which
1330         indicates to the C program that the shmat() routine is available.
1331
1332 d_shmatprototype (d_shmat.U):
1333         This variable conditionally defines the HAS_SHMAT_PROTOTYPE 
1334         symbol, which indicates that sys/shm.h has a prototype for
1335         shmat.
1336
1337 d_shmctl (d_shmctl.U):
1338         This variable conditionally defines the HAS_SHMCTL symbol, which
1339         indicates to the C program that the shmctl() routine is available.
1340
1341 d_shmdt (d_shmdt.U):
1342         This variable conditionally defines the HAS_SHMDT symbol, which
1343         indicates to the C program that the shmdt() routine is available.
1344
1345 d_shmget (d_shmget.U):
1346         This variable conditionally defines the HAS_SHMGET symbol, which
1347         indicates to the C program that the shmget() routine is available.
1348
1349 d_sigaction (d_sigaction.U):
1350         This variable conditionally defines the HAS_SIGACTION symbol, which
1351         indicates that the Vr4 sigaction() routine is available.
1352
1353 d_sigsetjmp (d_sigsetjmp.U):
1354         This variable conditionally defines the HAS_SIGSETJMP symbol,
1355         which indicates that the sigsetjmp() routine is available to
1356         call setjmp() and optionally save the process's signal mask.
1357
1358 d_socket (d_socket.U):
1359         This variable conditionally defines HAS_SOCKET, which indicates
1360         that the BSD socket interface is supported.
1361
1362 d_socklen_t (d_socklen_t.U):
1363         This symbol will be defined if the C compiler supports socklen_t.
1364
1365 d_sockpair (d_socket.U):
1366         This variable conditionally defines the HAS_SOCKETPAIR symbol, which
1367         indicates that the BSD socketpair() is supported.
1368
1369 d_sqrtl (d_sqrtl.U):
1370         This variable conditionally defines the HAS_SQRTL symbol, which
1371         indicates to the C program that the sqrtl() routine is available.
1372
1373 d_statblks (d_statblks.U):
1374         This variable conditionally defines USE_STAT_BLOCKS
1375         if this system has a stat structure declaring
1376         st_blksize and st_blocks.
1377
1378 d_statfs_f_flags (d_statfs_f_flags.U):
1379         This variable conditionally defines the HAS_STRUCT_STATFS_F_FLAGS
1380         symbol, which indicates to struct statfs from has f_flags member.
1381         This kind of struct statfs is coming from sys/mount.h (BSD),
1382         not from sys/statfs.h (SYSV).
1383
1384 d_statfs_s (d_statfs_s.U):
1385         This variable conditionally defines the HAS_STRUCT_STATFS symbol,
1386         which indicates that the struct statfs is supported.
1387
1388 d_statvfs (d_statvfs.U):
1389         This variable conditionally defines the HAS_STATVFS symbol, which
1390         indicates to the C program that the statvfs() routine is available.
1391
1392 d_stdio_cnt_lval (d_stdstdio.U):
1393         This variable conditionally defines STDIO_CNT_LVALUE if the
1394         FILE_cnt macro can be used as an lvalue.
1395
1396 d_stdio_ptr_lval (d_stdstdio.U):
1397         This variable conditionally defines STDIO_PTR_LVALUE if the
1398         FILE_ptr macro can be used as an lvalue.
1399
1400 d_stdio_stream_array (stdio_streams.U):
1401         This variable tells whether there is an array holding
1402         the stdio streams.
1403
1404 d_stdiobase (d_stdstdio.U):
1405         This variable conditionally defines USE_STDIO_BASE if this system
1406         has a FILE structure declaring a usable _base field (or equivalent)
1407         in stdio.h.
1408
1409 d_stdstdio (d_stdstdio.U):
1410         This variable conditionally defines USE_STDIO_PTR if this system
1411         has a FILE structure declaring usable _ptr and _cnt fields (or
1412         equivalent) in stdio.h.
1413
1414 d_strchr (d_strchr.U):
1415         This variable conditionally defines HAS_STRCHR if strchr() and
1416         strrchr() are available for string searching.
1417
1418 d_strcoll (d_strcoll.U):
1419         This variable conditionally defines HAS_STRCOLL if strcoll() is
1420         available to compare strings using collating information.
1421
1422 d_strctcpy (d_strctcpy.U):
1423         This variable conditionally defines the USE_STRUCT_COPY symbol, which
1424         indicates to the C program that this C compiler knows how to copy
1425         structures.
1426
1427 d_strerrm (d_strerror.U):
1428         This variable holds what Strerrr is defined as to translate an error
1429         code condition into an error message string. It could be 'strerror'
1430         or a more complex macro emulating strrror with sys_errlist[], or the
1431         "unknown" string when both strerror and sys_errlist are missing.
1432
1433 d_strerror (d_strerror.U):
1434         This variable conditionally defines HAS_STRERROR if strerror() is
1435         available to translate error numbers to strings.
1436
1437 d_strtod (d_strtod.U):
1438         This variable conditionally defines the HAS_STRTOD symbol, which
1439         indicates to the C program that the strtod() routine is available
1440         to provide better numeric string conversion than atof().
1441
1442 d_strtol (d_strtol.U):
1443         This variable conditionally defines the HAS_STRTOL symbol, which
1444         indicates to the C program that the strtol() routine is available
1445         to provide better numeric string conversion than atoi() and friends.
1446
1447 d_strtold (d_strtold.U):
1448         This variable conditionally defines the HAS_STRTOLD symbol, which
1449         indicates to the C program that the strtold() routine is available.
1450
1451 d_strtoll (d_strtoll.U):
1452         This variable conditionally defines the HAS_STRTOLL symbol, which
1453         indicates to the C program that the strtoll() routine is available.
1454
1455 d_strtoul (d_strtoul.U):
1456         This variable conditionally defines the HAS_STRTOUL symbol, which
1457         indicates to the C program that the strtoul() routine is available
1458         to provide conversion of strings to unsigned long.
1459
1460 d_strtoull (d_strtoull.U):
1461         This variable conditionally defines the HAS_STRTOULL symbol, which
1462         indicates to the C program that the strtoull() routine is available.
1463
1464 d_strtouq (d_strtouq.U):
1465         This variable conditionally defines the HAS_STRTOUQ symbol, which
1466         indicates to the C program that the strtouq() routine is available.
1467
1468 d_strxfrm (d_strxfrm.U):
1469         This variable conditionally defines HAS_STRXFRM if strxfrm() is
1470         available to transform strings.
1471
1472 d_suidsafe (d_dosuid.U):
1473         This variable conditionally defines SETUID_SCRIPTS_ARE_SECURE_NOW
1474         if setuid scripts can be secure.  This test looks in /dev/fd/.
1475
1476 d_symlink (d_symlink.U):
1477         This variable conditionally defines the HAS_SYMLINK symbol, which
1478         indicates to the C program that the symlink() routine is available
1479         to create symbolic links.
1480
1481 d_syscall (d_syscall.U):
1482         This variable conditionally defines HAS_SYSCALL if syscall() is
1483         available call arbitrary system calls.
1484
1485 d_sysconf (d_sysconf.U):
1486         This variable conditionally defines the HAS_SYSCONF symbol, which
1487         indicates to the C program that the sysconf() routine is available
1488         to determine system related limits and options.
1489
1490 d_sysernlst (d_strerror.U):
1491         This variable conditionally defines HAS_SYS_ERRNOLIST if sys_errnolist[]
1492         is available to translate error numbers to the symbolic name.
1493
1494 d_syserrlst (d_strerror.U):
1495         This variable conditionally defines HAS_SYS_ERRLIST if sys_errlist[] is
1496         available to translate error numbers to strings.
1497
1498 d_system (d_system.U):
1499         This variable conditionally defines HAS_SYSTEM if system() is
1500         available to issue a shell command.
1501
1502 d_tcgetpgrp (d_tcgtpgrp.U):
1503         This variable conditionally defines the HAS_TCGETPGRP symbol, which
1504         indicates to the C program that the tcgetpgrp() routine is available.
1505         to get foreground process group ID.
1506
1507 d_tcsetpgrp (d_tcstpgrp.U):
1508         This variable conditionally defines the HAS_TCSETPGRP symbol, which
1509         indicates to the C program that the tcsetpgrp() routine is available
1510         to set foreground process group ID.
1511
1512 d_telldir (d_readdir.U):
1513         This variable conditionally defines HAS_TELLDIR if telldir() is
1514         available.
1515
1516 d_telldirproto (d_telldirproto.U):
1517         This variable conditionally defines the HAS_TELLDIR_PROTO symbol,
1518         which indicates to the C program that the system provides
1519         a prototype for the telldir() function.  Otherwise, it is
1520         up to the program to supply one.
1521
1522 d_time (d_time.U):
1523         This variable conditionally defines the HAS_TIME symbol, which indicates
1524         that the time() routine exists.  The time() routine is normaly
1525         provided on UNIX systems.
1526
1527 d_times (d_times.U):
1528         This variable conditionally defines the HAS_TIMES symbol, which indicates
1529         that the times() routine exists.  The times() routine is normaly
1530         provided on UNIX systems. You may have to include <sys/times.h>.
1531
1532 d_truncate (d_truncate.U):
1533         This variable conditionally defines HAS_TRUNCATE if truncate() is
1534         available to truncate files.
1535
1536 d_tzname (d_tzname.U):
1537         This variable conditionally defines HAS_TZNAME if tzname[] is
1538         available to access timezone names.
1539
1540 d_umask (d_umask.U):
1541         This variable conditionally defines the HAS_UMASK symbol, which
1542         indicates to the C program that the umask() routine is available.
1543         to set and get the value of the file creation mask.
1544
1545 d_uname (d_gethname.U):
1546         This variable conditionally defines the HAS_UNAME symbol, which
1547         indicates to the C program that the uname() routine may be
1548         used to derive the host name.
1549
1550 d_union_semun (d_union_semun.U):
1551         This variable conditionally defines HAS_UNION_SEMUN if the
1552         union semun is defined by including <sys/sem.h>.
1553
1554 d_ustat (d_ustat.U):
1555         This variable conditionally defines HAS_USTAT if ustat() is
1556         available to query file system statistics by dev_t.
1557
1558 d_vendorbin (vendorbin.U):
1559         This variable conditionally defines PERL_VENDORBIN.
1560
1561 d_vendorlib (vendorlib.U):
1562         This variable conditionally defines PERL_VENDORLIB.
1563
1564 d_vfork (d_vfork.U):
1565         This variable conditionally defines the HAS_VFORK symbol, which
1566         indicates the vfork() routine is available.
1567
1568 d_void_closedir (d_closedir.U):
1569         This variable conditionally defines VOID_CLOSEDIR if closedir()
1570         does not return a value.
1571
1572 d_voidsig (d_voidsig.U):
1573         This variable conditionally defines VOIDSIG if this system
1574         declares "void (*signal(...))()" in signal.h.  The old way was to
1575         declare it as "int (*signal(...))()".
1576
1577 d_voidtty (i_sysioctl.U):
1578         This variable conditionally defines USE_IOCNOTTY to indicate that the
1579         ioctl() call with TIOCNOTTY should be used to void tty association.
1580         Otherwise (on USG probably), it is enough to close the standard file
1581         decriptors and do a setpgrp().
1582
1583 d_volatile (d_volatile.U):
1584         This variable conditionally defines the HASVOLATILE symbol, which
1585         indicates to the C program that this C compiler knows about the
1586         volatile declaration.
1587
1588 d_vprintf (d_vprintf.U):
1589         This variable conditionally defines the HAS_VPRINTF symbol, which
1590         indicates to the C program that the vprintf() routine is available
1591         to printf with a pointer to an argument list.
1592
1593 d_wait4 (d_wait4.U):
1594         This variable conditionally defines the HAS_WAIT4 symbol, which
1595         indicates the wait4() routine is available.
1596
1597 d_waitpid (d_waitpid.U):
1598         This variable conditionally defines HAS_WAITPID if waitpid() is
1599         available to wait for child process.
1600
1601 d_wcstombs (d_wcstombs.U):
1602         This variable conditionally defines the HAS_WCSTOMBS symbol, which
1603         indicates to the C program that the wcstombs() routine is available
1604         to convert wide character strings to multibyte strings.
1605
1606 d_wctomb (d_wctomb.U):
1607         This variable conditionally defines the HAS_WCTOMB symbol, which
1608         indicates to the C program that the wctomb() routine is available
1609         to convert a wide character to a multibyte.
1610
1611 d_xenix (Guess.U):
1612         This variable conditionally defines the symbol XENIX, which alerts
1613         the C program that it runs under Xenix.
1614
1615 date (Loc.U):
1616         This variable is used internally by Configure to determine the
1617         full pathname (if any) of the date program.  After Configure runs,
1618         the value is reset to a plain "date" and is not useful.
1619
1620 db_hashtype (i_db.U):
1621         This variable contains the type of the hash structure element
1622         in the <db.h> header file.  In older versions of DB, it was
1623         int, while in newer ones it is u_int32_t.
1624
1625 db_prefixtype (i_db.U):
1626         This variable contains the type of the prefix structure element
1627         in the <db.h> header file.  In older versions of DB, it was
1628         int, while in newer ones it is size_t.
1629
1630 defvoidused (voidflags.U):
1631         This variable contains the default value of the VOIDUSED symbol (15).
1632
1633 direntrytype (i_dirent.U):
1634         This symbol is set to 'struct direct' or 'struct dirent' depending on
1635         whether dirent is available or not. You should use this pseudo type to
1636         portably declare your directory entries.
1637
1638 dlext (dlext.U):
1639         This variable contains the extension that is to be used for the
1640         dynamically loaded modules that perl generaties.
1641
1642 dlsrc (dlsrc.U):
1643         This variable contains the name of the dynamic loading file that
1644         will be used with the package.
1645
1646 doublesize (doublesize.U):
1647         This variable contains the value of the DOUBLESIZE symbol, which
1648         indicates to the C program how many bytes there are in a double.
1649
1650 drand01 (randfunc.U):
1651         Indicates the macro to be used to generate normalized
1652         random numbers.  Uses randfunc, often divided by
1653         (double) (((unsigned long) 1 << randbits)) in order to
1654         normalize the result.
1655         In C programs, the macro 'Drand01' is mapped to drand01.
1656
1657 dynamic_ext (Extensions.U):
1658         This variable holds a list of XS extension files we want to
1659         link dynamically into the package.  It is used by Makefile.
1660
1661 eagain (nblock_io.U):
1662         This variable bears the symbolic errno code set by read() when no
1663         data is present on the file and non-blocking I/O was enabled (otherwise,
1664         read() blocks naturally).
1665
1666 ebcdic (ebcdic.U):
1667         This variable conditionally defines EBCDIC if this
1668         system uses EBCDIC encoding.  Among other things, this
1669         means that the character ranges are not contiguous.
1670         See trnl.U
1671
1672 echo (Loc.U):
1673         This variable is used internally by Configure to determine the
1674         full pathname (if any) of the echo program.  After Configure runs,
1675         the value is reset to a plain "echo" and is not useful.
1676
1677 egrep (Loc.U):
1678         This variable is used internally by Configure to determine the
1679         full pathname (if any) of the egrep program.  After Configure runs,
1680         the value is reset to a plain "egrep" and is not useful.
1681
1682 emacs (Loc.U):
1683         This variable is defined but not used by Configure.
1684         The value is a plain '' and is not useful.
1685
1686 eunicefix (Init.U):
1687         When running under Eunice this variable contains a command which will
1688         convert a shell script to the proper form of text file for it to be
1689         executable by the shell.  On other systems it is a no-op.
1690
1691 exe_ext (Unix.U):
1692         This is an old synonym for _exe.
1693
1694 expr (Loc.U):
1695         This variable is used internally by Configure to determine the
1696         full pathname (if any) of the expr program.  After Configure runs,
1697         the value is reset to a plain "expr" and is not useful.
1698
1699 extensions (Extensions.U):
1700         This variable holds a list of all extension files (both XS and
1701         non-xs linked into the package.  It is propagated to Config.pm
1702         and is typically used to test whether a particular extesion 
1703         is available.
1704
1705 fflushall (fflushall.U):
1706         This symbol, if defined, tells that to flush
1707         all pending stdio output one must loop through all
1708         the stdio file handles stored in an array and fflush them.
1709         Note that if fflushNULL is defined, fflushall will not
1710         even be probed for and will be left undefined.
1711
1712 fflushNULL (fflushall.U):
1713         This symbol, if defined, tells that fflush(NULL) does flush
1714         all pending stdio output.
1715
1716 find (Loc.U):
1717         This variable is defined but not used by Configure.
1718         The value is a plain '' and is not useful.
1719
1720 firstmakefile (Unix.U):
1721         This variable defines the first file searched by make.  On unix,
1722         it is makefile (then Makefile).  On case-insensitive systems,
1723         it might be something else.  This is only used to deal with
1724         convoluted make depend tricks.
1725
1726 flex (Loc.U):
1727         This variable is defined but not used by Configure.
1728         The value is a plain '' and is not useful.
1729
1730 fpossize (fpossize.U):
1731         This variable contains the size of a fpostype in bytes.
1732
1733 fpostype (fpostype.U):
1734         This variable defines Fpos_t to be something like fpos_t, long, 
1735         uint, or whatever type is used to declare file positions in libc.
1736
1737 freetype (mallocsrc.U):
1738         This variable contains the return type of free().  It is usually
1739         void, but occasionally int.
1740
1741 full_ar (Loc_ar.U):
1742         This variable contains the full pathname to 'ar', whether or
1743         not the user has specified 'portability'.  This is only used
1744         in the Makefile.SH.
1745
1746 full_csh (d_csh.U):
1747         This variable contains the full pathname to 'csh', whether or
1748         not the user has specified 'portability'.  This is only used
1749         in the compiled C program, and we assume that all systems which
1750         can share this executable will have the same full pathname to
1751         'csh.'
1752
1753 full_sed (Loc_sed.U):
1754         This variable contains the full pathname to 'sed', whether or
1755         not the user has specified 'portability'.  This is only used
1756         in the compiled C program, and we assume that all systems which
1757         can share this executable will have the same full pathname to
1758         'sed.'
1759
1760 gccversion (cc.U):
1761         If GNU cc (gcc) is used, this variable holds '1' or '2' to 
1762         indicate whether the compiler is version 1 or 2.  This is used in
1763         setting some of the default cflags.  It is set to '' if not gcc.
1764
1765 gidformat (gidf.U):
1766         This variable contains the format string used for printing a Gid_t.
1767
1768 gidsign (gidsign.U):
1769         This variable contains the signedness of a gidtype.
1770         1 for unsigned, -1 for signed.
1771
1772 gidsize (gidsize.U):
1773         This variable contains the size of a gidtype in bytes.
1774
1775 gidtype (gidtype.U):
1776         This variable defines Gid_t to be something like gid_t, int,
1777         ushort, or whatever type is used to declare the return type
1778         of getgid().  Typically, it is the type of group ids in the kernel.
1779
1780 glibpth (libpth.U):
1781         This variable holds the general path (space-separated) used to
1782         find libraries.  It may contain directories that do not exist on
1783         this platform, libpth is the cleaned-up version.
1784
1785 grep (Loc.U):
1786         This variable is used internally by Configure to determine the
1787         full pathname (if any) of the grep program.  After Configure runs,
1788         the value is reset to a plain "grep" and is not useful.
1789
1790 groupcat (nis.U):
1791         This variable contains a command that produces the text of the
1792         /etc/group file.  This is normally "cat /etc/group", but can be
1793         "ypcat group" when NIS is used.
1794         On some systems, such as os390, there may be no equivalent
1795         command, in which case this variable is unset.
1796
1797 groupstype (groupstype.U):
1798         This variable defines Groups_t to be something like gid_t, int, 
1799         ushort, or whatever type is used for the second argument to
1800         getgroups() and setgroups().  Usually, this is the same as
1801         gidtype (gid_t), but sometimes it isn't.
1802
1803 gzip (Loc.U):
1804         This variable is used internally by Configure to determine the
1805         full pathname (if any) of the gzip program.  After Configure runs,
1806         the value is reset to a plain "gzip" and is not useful.
1807
1808 h_fcntl (h_fcntl.U):
1809         This is variable gets set in various places to tell i_fcntl that
1810         <fcntl.h> should be included.
1811
1812 h_sysfile (h_sysfile.U):
1813         This is variable gets set in various places to tell i_sys_file that
1814         <sys/file.h> should be included.
1815
1816 hint (Oldconfig.U):
1817         Gives the type of hints used for previous answers. May be one of
1818         "default", "recommended" or "previous".
1819
1820 hostcat (nis.U):
1821         This variable contains a command that produces the text of the
1822         /etc/hosts file.  This is normally "cat /etc/hosts", but can be
1823         "ypcat hosts" when NIS is used.
1824         On some systems, such as os390, there may be no equivalent
1825         command, in which case this variable is unset.
1826
1827 huge (models.U):
1828         This variable contains a flag which will tell the C compiler and loader
1829         to produce a program running with a huge memory model.  If the
1830         huge model is not supported, contains the flag to produce large
1831         model programs.  It is up to the Makefile to use this.
1832
1833 i16size (perlxv.U):
1834         This variable is the size of an I16 in bytes.
1835
1836 i16type (perlxv.U):
1837         This variable contains the C type used for Perl's I16.
1838
1839 i32size (perlxv.U):
1840         This variable is the size of an I32 in bytes.
1841
1842 i32type (perlxv.U):
1843         This variable contains the C type used for Perl's I32.
1844
1845 i64size (perlxv.U):
1846         This variable is the size of an I64 in bytes.
1847
1848 i64type (perlxv.U):
1849         This variable contains the C type used for Perl's I64.
1850
1851 i8size (perlxv.U):
1852         This variable is the size of an I8 in bytes.
1853
1854 i8type (perlxv.U):
1855         This variable contains the C type used for Perl's I8.
1856
1857 i_arpainet (i_arpainet.U):
1858         This variable conditionally defines the I_ARPA_INET symbol,
1859         and indicates whether a C program should include <arpa/inet.h>.
1860
1861 i_bsdioctl (i_sysioctl.U):
1862         This variable conditionally defines the I_SYS_BSDIOCTL symbol, which
1863         indicates to the C program that <sys/bsdioctl.h> exists and should
1864         be included.
1865
1866 i_db (i_db.U):
1867         This variable conditionally defines the I_DB symbol, and indicates
1868         whether a C program may include Berkeley's DB include file <db.h>.
1869
1870 i_dbm (i_dbm.U):
1871         This variable conditionally defines the I_DBM symbol, which
1872         indicates to the C program that <dbm.h> exists and should
1873         be included.
1874
1875 i_dirent (i_dirent.U):
1876         This variable conditionally defines I_DIRENT, which indicates
1877         to the C program that it should include <dirent.h>.
1878
1879 i_dld (i_dld.U):
1880         This variable conditionally defines the I_DLD symbol, which
1881         indicates to the C program that <dld.h> (GNU dynamic loading)
1882         exists and should be included.
1883
1884 i_dlfcn (i_dlfcn.U):
1885         This variable conditionally defines the I_DLFCN symbol, which
1886         indicates to the C program that <dlfcn.h> exists and should
1887         be included.
1888
1889 i_fcntl (i_fcntl.U):
1890         This variable controls the value of I_FCNTL (which tells
1891         the C program to include <fcntl.h>).
1892
1893 i_float (i_float.U):
1894         This variable conditionally defines the I_FLOAT symbol, and indicates
1895         whether a C program may include <float.h> to get symbols like DBL_MAX
1896         or DBL_MIN, i.e. machine dependent floating point values.
1897
1898 i_gdbm (i_gdbm.U):
1899         This variable conditionally defines the I_GDBM symbol, which
1900         indicates to the C program that <gdbm.h> exists and should
1901         be included.
1902
1903 i_grp (i_grp.U):
1904         This variable conditionally defines the I_GRP symbol, and indicates
1905         whether a C program should include <grp.h>.
1906
1907 i_iconv (i_iconv.U):
1908         This variable conditionally defines the I_ICONV symbol, and indicates
1909         whether a C program should include <iconv.h>.
1910
1911 i_inttypes (i_inttypes.U):
1912         This variable conditionally defines the I_INTTYPES symbol,
1913         and indicates whether a C program should include <inttypes.h>.
1914
1915 i_limits (i_limits.U):
1916         This variable conditionally defines the I_LIMITS symbol, and indicates
1917         whether a C program may include <limits.h> to get symbols like WORD_BIT
1918         and friends.
1919
1920 i_locale (i_locale.U):
1921         This variable conditionally defines the I_LOCALE symbol,
1922         and indicates whether a C program should include <locale.h>.
1923
1924 i_machcthr (i_machcthr.U):
1925         This variable conditionally defines the I_MACH_CTHREADS symbol,
1926         and indicates whether a C program should include <mach/cthreads.h>.
1927
1928 i_malloc (i_malloc.U):
1929         This variable conditionally defines the I_MALLOC symbol, and indicates
1930         whether a C program should include <malloc.h>.
1931
1932 i_math (i_math.U):
1933         This variable conditionally defines the I_MATH symbol, and indicates
1934         whether a C program may include <math.h>.
1935
1936 i_memory (i_memory.U):
1937         This variable conditionally defines the I_MEMORY symbol, and indicates
1938         whether a C program should include <memory.h>.
1939
1940 i_mntent (i_mntent.U):
1941         This variable conditionally defines the I_MNTENT symbol, and indicates
1942         whether a C program should include <mntent.h>.
1943
1944 i_ndbm (i_ndbm.U):
1945         This variable conditionally defines the I_NDBM symbol, which
1946         indicates to the C program that <ndbm.h> exists and should
1947         be included.
1948
1949 i_netdb (i_netdb.U):
1950         This variable conditionally defines the I_NETDB symbol, and indicates
1951         whether a C program should include <netdb.h>.
1952
1953 i_neterrno (i_neterrno.U):
1954         This variable conditionally defines the I_NET_ERRNO symbol, which
1955         indicates to the C program that <net/errno.h> exists and should
1956         be included.
1957
1958 i_netinettcp (i_netinettcp.U):
1959         This variable conditionally defines the I_NETINET_TCP symbol,
1960         and indicates whether a C program should include <netinet/tcp.h>.
1961
1962 i_niin (i_niin.U):
1963         This variable conditionally defines I_NETINET_IN, which indicates
1964         to the C program that it should include <netinet/in.h>. Otherwise,
1965         you may try <sys/in.h>.
1966
1967 i_poll (i_poll.U):
1968         This variable conditionally defines the I_POLL symbol, and indicates
1969         whether a C program should include <poll.h>.
1970
1971 i_pthread (i_pthread.U):
1972         This variable conditionally defines the I_PTHREAD symbol,
1973         and indicates whether a C program should include <pthread.h>.
1974
1975 i_pwd (i_pwd.U):
1976         This variable conditionally defines I_PWD, which indicates
1977         to the C program that it should include <pwd.h>.
1978
1979 i_rpcsvcdbm (i_dbm.U):
1980         This variable conditionally defines the I_RPCSVC_DBM symbol, which
1981         indicates to the C program that <rpcsvc/dbm.h> exists and should
1982         be included.  Some System V systems might need this instead of <dbm.h>.
1983
1984 i_sfio (i_sfio.U):
1985         This variable conditionally defines the I_SFIO symbol,
1986         and indicates whether a C program should include <sfio.h>.
1987
1988 i_sgtty (i_termio.U):
1989         This variable conditionally defines the I_SGTTY symbol, which
1990         indicates to the C program that it should include <sgtty.h> rather
1991         than <termio.h>.
1992
1993 i_shadow (i_shadow.U):
1994         This variable conditionally defines the I_SHADOW symbol, and indicates
1995         whether a C program should include <shadow.h>.
1996
1997 i_socks (i_socks.U):
1998         This variable conditionally defines the I_SOCKS symbol, and indicates
1999         whether a C program should include <socks.h>.
2000
2001 i_stdarg (i_varhdr.U):
2002         This variable conditionally defines the I_STDARG symbol, which
2003         indicates to the C program that <stdarg.h> exists and should
2004         be included.
2005
2006 i_stddef (i_stddef.U):
2007         This variable conditionally defines the I_STDDEF symbol, which
2008         indicates to the C program that <stddef.h> exists and should
2009         be included.
2010
2011 i_stdlib (i_stdlib.U):
2012         This variable conditionally defines the I_STDLIB symbol, which
2013         indicates to the C program that <stdlib.h> exists and should
2014         be included.
2015
2016 i_string (i_string.U):
2017         This variable conditionally defines the I_STRING symbol, which
2018         indicates that <string.h> should be included rather than <strings.h>.
2019
2020 i_sysaccess (i_sysaccess.U):
2021         This variable conditionally defines the I_SYS_ACCESS symbol,
2022         and indicates whether a C program should include <sys/access.h>.
2023
2024 i_sysdir (i_sysdir.U):
2025         This variable conditionally defines the I_SYS_DIR symbol, and indicates
2026         whether a C program should include <sys/dir.h>.
2027
2028 i_sysfile (i_sysfile.U):
2029         This variable conditionally defines the I_SYS_FILE symbol, and indicates
2030         whether a C program should include <sys/file.h> to get R_OK and friends.
2031
2032 i_sysfilio (i_sysioctl.U):
2033         This variable conditionally defines the I_SYS_FILIO symbol, which
2034         indicates to the C program that <sys/filio.h> exists and should
2035         be included in preference to <sys/ioctl.h>.
2036
2037 i_sysin (i_niin.U):
2038         This variable conditionally defines I_SYS_IN, which indicates
2039         to the C program that it should include <sys/in.h> instead of
2040         <netinet/in.h>.
2041
2042 i_sysioctl (i_sysioctl.U):
2043         This variable conditionally defines the I_SYS_IOCTL symbol, which
2044         indicates to the C program that <sys/ioctl.h> exists and should
2045         be included.
2046
2047 i_syslog (i_syslog.U):
2048         This variable conditionally defines the I_SYSLOG symbol,
2049         and indicates whether a C program should include <syslog.h>.
2050
2051 i_sysmman (i_sysmman.U):
2052         This variable conditionally defines the I_SYS_MMAN symbol, and
2053         indicates whether a C program should include <sys/mman.h>.
2054
2055 i_sysmode (i_sysmode.U):
2056         This variable conditionally defines the I_SYSMODE symbol,
2057         and indicates whether a C program should include <sys/mode.h>.
2058
2059 i_sysmount (i_sysmount.U):
2060         This variable conditionally defines the I_SYSMOUNT symbol,
2061         and indicates whether a C program should include <sys/mount.h>.
2062
2063 i_sysndir (i_sysndir.U):
2064         This variable conditionally defines the I_SYS_NDIR symbol, and indicates
2065         whether a C program should include <sys/ndir.h>.
2066
2067 i_sysparam (i_sysparam.U):
2068         This variable conditionally defines the I_SYS_PARAM symbol, and indicates
2069         whether a C program should include <sys/param.h>.
2070
2071 i_sysresrc (i_sysresrc.U):
2072         This variable conditionally defines the I_SYS_RESOURCE symbol,
2073         and indicates whether a C program should include <sys/resource.h>.
2074
2075 i_syssecrt (i_syssecrt.U):
2076         This variable conditionally defines the I_SYS_SECURITY symbol,
2077         and indicates whether a C program should include <sys/security.h>.
2078
2079 i_sysselct (i_sysselct.U):
2080         This variable conditionally defines I_SYS_SELECT, which indicates
2081         to the C program that it should include <sys/select.h> in order to
2082         get the definition of struct timeval.
2083
2084 i_syssockio (i_sysioctl.U):
2085         This variable conditionally defines I_SYS_SOCKIO to indicate to the
2086         C program that socket ioctl codes may be found in <sys/sockio.h>
2087         instead of <sys/ioctl.h>.
2088
2089 i_sysstat (i_sysstat.U):
2090         This variable conditionally defines the I_SYS_STAT symbol,
2091         and indicates whether a C program should include <sys/stat.h>.
2092
2093 i_sysstatfs (i_sysstatfs.U):
2094         This variable conditionally defines the I_SYSSTATFS symbol,
2095         and indicates whether a C program should include <sys/statfs.h>.
2096
2097 i_sysstatvfs (i_sysstatvfs.U):
2098         This variable conditionally defines the I_SYSSTATVFS symbol,
2099         and indicates whether a C program should include <sys/statvfs.h>.
2100
2101 i_systime (i_time.U):
2102         This variable conditionally defines I_SYS_TIME, which indicates
2103         to the C program that it should include <sys/time.h>.
2104
2105 i_systimek (i_time.U):
2106         This variable conditionally defines I_SYS_TIME_KERNEL, which
2107         indicates to the C program that it should include <sys/time.h>
2108         with KERNEL defined.
2109
2110 i_systimes (i_systimes.U):
2111         This variable conditionally defines the I_SYS_TIMES symbol, and indicates
2112         whether a C program should include <sys/times.h>.
2113
2114 i_systypes (i_systypes.U):
2115         This variable conditionally defines the I_SYS_TYPES symbol,
2116         and indicates whether a C program should include <sys/types.h>.
2117
2118 i_sysuio (i_sysuio.U):
2119         This variable conditionally defines the I_SYSUIO symbol, and indicates
2120         whether a C program should include <sys/uio.h>.
2121
2122 i_sysun (i_sysun.U):
2123         This variable conditionally defines I_SYS_UN, which indicates
2124         to the C program that it should include <sys/un.h> to get UNIX
2125         domain socket definitions.
2126
2127 i_sysutsname (i_sysutsname.U):
2128         This variable conditionally defines the I_SYSUTSNAME symbol,
2129         and indicates whether a C program should include <sys/utsname.h>.
2130
2131 i_sysvfs (i_sysvfs.U):
2132         This variable conditionally defines the I_SYSVFS symbol,
2133         and indicates whether a C program should include <sys/vfs.h>.
2134
2135 i_syswait (i_syswait.U):
2136         This variable conditionally defines I_SYS_WAIT, which indicates
2137         to the C program that it should include <sys/wait.h>.
2138
2139 i_termio (i_termio.U):
2140         This variable conditionally defines the I_TERMIO symbol, which
2141         indicates to the C program that it should include <termio.h> rather
2142         than <sgtty.h>.
2143
2144 i_termios (i_termio.U):
2145         This variable conditionally defines the I_TERMIOS symbol, which
2146         indicates to the C program that the POSIX <termios.h> file is
2147         to be included.
2148
2149 i_time (i_time.U):
2150         This variable conditionally defines I_TIME, which indicates
2151         to the C program that it should include <time.h>.
2152
2153 i_unistd (i_unistd.U):
2154         This variable conditionally defines the I_UNISTD symbol, and indicates
2155         whether a C program should include <unistd.h>.
2156
2157 i_ustat (i_ustat.U):
2158         This variable conditionally defines the I_USTAT symbol, and indicates
2159         whether a C program should include <ustat.h>.
2160
2161 i_utime (i_utime.U):
2162         This variable conditionally defines the I_UTIME symbol, and indicates
2163         whether a C program should include <utime.h>.
2164
2165 i_values (i_values.U):
2166         This variable conditionally defines the I_VALUES symbol, and indicates
2167         whether a C program may include <values.h> to get symbols like MAXLONG
2168         and friends.
2169
2170 i_varargs (i_varhdr.U):
2171         This variable conditionally defines I_VARARGS, which indicates
2172         to the C program that it should include <varargs.h>.
2173
2174 i_varhdr (i_varhdr.U):
2175         Contains the name of the header to be included to get va_dcl definition.
2176         Typically one of varargs.h or stdarg.h.
2177
2178 i_vfork (i_vfork.U):
2179         This variable conditionally defines the I_VFORK symbol, and indicates
2180         whether a C program should include vfork.h.
2181
2182 ignore_versioned_solibs (libs.U):
2183         This variable should be non-empty if non-versioned shared
2184         libraries (libfoo.so.x.y) are to be ignored (because they
2185         cannot be linked against).
2186
2187 inc_version_list (inc_version_list.U):
2188         This variable specifies the list of subdirectories in over
2189         which perl.c:incpush() and lib/lib.pm will automatically
2190         search when adding directories to @INC.  The elements in
2191         the list are separated by spaces.  This is only useful
2192         if you have a perl library directory tree structured like the
2193         default one.  See INSTALL for how this works.  The versioned
2194         site_perl directory was introduced in 5.005, so that is the
2195         lowest possible value.
2196
2197 inc_version_list_init (inc_version_list.U):
2198         This variable holds the same list as inc_version_list, but
2199         each item is enclosed in double quotes and separated by commas, 
2200         suitable for use in the PERL_INC_VERSION_LIST initialization.
2201
2202 incpath (usrinc.U):
2203         This variable must preceed the normal include path to get hte
2204         right one, as in "$incpath/usr/include" or "$incpath/usr/lib".
2205         Value can be "" or "/bsd43" on mips.
2206
2207 inews (Loc.U):
2208         This variable is defined but not used by Configure.
2209         The value is a plain '' and is not useful.
2210
2211 installarchlib (archlib.U):
2212         This variable is really the same as archlibexp but may differ on
2213         those systems using AFS. For extra portability, only this variable
2214         should be used in makefiles.
2215
2216 installbin (bin.U):
2217         This variable is the same as binexp unless AFS is running in which case
2218         the user is explicitely prompted for it. This variable should always
2219         be used in your makefiles for maximum portability.
2220
2221 installman1dir (man1dir.U):
2222         This variable is really the same as man1direxp, unless you are using
2223         AFS in which case it points to the read/write location whereas
2224         man1direxp only points to the read-only access location. For extra
2225         portability, you should only use this variable within your makefiles.
2226
2227 installman3dir (man3dir.U):
2228         This variable is really the same as man3direxp, unless you are using
2229         AFS in which case it points to the read/write location whereas
2230         man3direxp only points to the read-only access location. For extra
2231         portability, you should only use this variable within your makefiles.
2232
2233 installprefix (installprefix.U):
2234         This variable holds the name of the directory below which 
2235         "make install" will install the package.  For most users, this
2236         is the same as prefix.  However, it is useful for
2237         installing the software into a different (usually temporary)
2238         location after which it can be bundled up and moved somehow
2239         to the final location specified by prefix.
2240
2241 installprefixexp (installprefix.U):
2242         This variable holds the full absolute path of installprefix
2243         with all ~-expansion done.
2244
2245 installprivlib (privlib.U):
2246         This variable is really the same as privlibexp but may differ on
2247         those systems using AFS. For extra portability, only this variable
2248         should be used in makefiles.
2249
2250 installscript (scriptdir.U):
2251         This variable is usually the same as scriptdirexp, unless you are on
2252         a system running AFS, in which case they may differ slightly. You
2253         should always use this variable within your makefiles for portability.
2254
2255 installsitearch (sitearch.U):
2256         This variable is really the same as sitearchexp but may differ on
2257         those systems using AFS. For extra portability, only this variable
2258         should be used in makefiles.
2259
2260 installsitebin (sitebin.U):
2261         This variable is usually the same as sitebinexp, unless you are on
2262         a system running AFS, in which case they may differ slightly. You
2263         should always use this variable within your makefiles for portability.
2264
2265 installsitelib (sitelib.U):
2266         This variable is really the same as sitelibexp but may differ on
2267         those systems using AFS. For extra portability, only this variable
2268         should be used in makefiles.
2269
2270 installstyle (installstyle.U):
2271         This variable describes the "style" of the perl installation.
2272         This is intended to be useful for tools that need to
2273         manipulate entire perl distributions.  Perl itself doesn't use
2274         this to find its libraries -- the library directories are
2275         stored directly in Config.pm.  Currently, there are only two
2276         styles:  "lib" and "lib/perl5".  The default library locations
2277         (e.g. privlib, sitelib) are either $prefix/lib or
2278         $prefix/lib/perl5.  The former is useful if $prefix is a
2279         directory dedicated to perl (e.g. /opt/perl), while the latter
2280         is useful if $prefix is shared by many packages, e.g. if
2281         $prefix=/usr/local.
2282                 This may later be extended to include other information, so
2283         be careful with pattern-matching on the results.
2284                 For compatibility with perl5.005 and earlier, the default
2285         setting is based on whether or not $prefix contains the string
2286         "perl".
2287
2288 installusrbinperl (instubperl.U):
2289         This variable tells whether Perl should be installed also as
2290         /usr/bin/perl in addition to
2291         $installbin/perl
2292
2293 installvendorbin (vendorbin.U):
2294         This variable is really the same as vendorbinexp but may differ on
2295         those systems using AFS. For extra portability, only this variable
2296         should be used in makefiles.
2297
2298 installvendorlib (vendorlib.U):
2299         This variable is really the same as vendorlibexp but may differ on
2300         those systems using AFS. For extra portability, only this variable
2301         should be used in makefiles.
2302
2303 intsize (intsize.U):
2304         This variable contains the value of the INTSIZE symbol, which
2305         indicates to the C program how many bytes there are in an int.
2306
2307 ivdformat (perlxvf.U):
2308         This variable contains the format string used for printing
2309         a Perl IV as a signed decimal integer. 
2310
2311 ivsize (perlxv.U):
2312         This variable is the size of an IV in bytes.
2313
2314 ivtype (perlxv.U):
2315         This variable contains the C type used for Perl's IV.
2316
2317 known_extensions (Extensions.U):
2318         This variable holds a list of all XS extensions included in 
2319         the package.
2320
2321 ksh (Loc.U):
2322         This variable is defined but not used by Configure.
2323         The value is a plain '' and is not useful.
2324
2325 large (models.U):
2326         This variable contains a flag which will tell the C compiler and loader
2327         to produce a program running with a large memory model.  It is up to
2328         the Makefile to use this.
2329
2330 ld (dlsrc.U):
2331         This variable indicates the program to be used to link
2332         libraries for dynamic loading.  On some systems, it is 'ld'.
2333         On ELF systems, it should be $cc.  Mostly, we'll try to respect
2334         the hint file setting.
2335
2336 lddlflags (dlsrc.U):
2337         This variable contains any special flags that might need to be
2338         passed to $ld to create a shared library suitable for dynamic
2339         loading.  It is up to the makefile to use it.  For hpux, it
2340         should be '-b'.  For sunos 4.1, it is empty.
2341
2342 ldflags (ccflags.U):
2343         This variable contains any additional C loader flags desired by
2344         the user.  It is up to the Makefile to use this.
2345
2346 ldlibpthname (libperl.U):
2347         This variable holds the name of the shared library
2348         search path, often LD_LIBRARY_PATH.  To get an empty
2349         string, the hints file must set this to 'none'.
2350
2351 less (Loc.U):
2352         This variable is used internally by Configure to determine the
2353         full pathname (if any) of the less program.  After Configure runs,
2354         the value is reset to a plain "less" and is not useful.
2355
2356 lib_ext (Unix.U):
2357         This is an old synonym for _a.
2358
2359 libc (libc.U):
2360         This variable contains the location of the C library.
2361
2362 libperl (libperl.U):
2363         The perl executable is obtained by linking perlmain.c with
2364         libperl, any static extensions (usually just DynaLoader),
2365         and any other libraries needed on this system.  libperl
2366         is usually libperl.a, but can also be libperl.so.xxx if
2367         the user wishes to build a perl executable with a shared
2368         library.
2369
2370 libpth (libpth.U):
2371         This variable holds the general path (space-separated) used to find
2372         libraries. It is intended to be used by other units.
2373
2374 libs (libs.U):
2375         This variable holds the additional libraries we want to use.
2376         It is up to the Makefile to deal with it.
2377
2378 libsdirs (libs.U):
2379         This variable holds the directory names aka dirnames of the libraries
2380         we found and accepted, duplicates are removed.
2381
2382 libsfiles (libs.U):
2383         This variable holds the filenames aka basenames of the libraries
2384         we found and accepted.
2385
2386 libsfound (libs.U):
2387         This variable holds the full pathnames of the libraries
2388         we found and accepted.
2389
2390 libspath (libs.U):
2391         This variable holds the directory names probed for libraries.
2392
2393 libswanted (Myinit.U):
2394         This variable holds a list of all the libraries we want to
2395         search.  The order is chosen to pick up the c library
2396         ahead of ucb or bsd libraries for SVR4.
2397
2398 line (Loc.U):
2399         This variable is defined but not used by Configure.
2400         The value is a plain '' and is not useful.
2401
2402 lint (Loc.U):
2403         This variable is defined but not used by Configure.
2404         The value is a plain '' and is not useful.
2405
2406 lkflags (ccflags.U):
2407         This variable contains any additional C partial linker flags desired by
2408         the user.  It is up to the Makefile to use this.
2409
2410 ln (Loc.U):
2411         This variable is used internally by Configure to determine the
2412         full pathname (if any) of the ln program.  After Configure runs,
2413         the value is reset to a plain "ln" and is not useful.
2414
2415 lns (lns.U):
2416         This variable holds the name of the command to make 
2417         symbolic links (if they are supported).  It can be used
2418         in the Makefile. It is either 'ln -s' or 'ln'
2419
2420 locincpth (ccflags.U):
2421         This variable contains a list of additional directories to be
2422         searched by the compiler.  The appropriate '-I' directives will
2423         be added to ccflags.  This is intended to simplify setting
2424         local directories from the Configure command line.
2425         It's not much, but it parallels the loclibpth stuff in libpth.U.
2426
2427 loclibpth (libpth.U):
2428         This variable holds the paths (space-separated) used to find local
2429         libraries.  It is prepended to libpth, and is intended to be easily
2430         set from the command line.
2431
2432 longdblsize (d_longdbl.U):
2433         This variable contains the value of the LONG_DOUBLESIZE symbol, which
2434         indicates to the C program how many bytes there are in a long double,
2435         if this system supports long doubles.
2436
2437 longlongsize (d_longlong.U):
2438         This variable contains the value of the LONGLONGSIZE symbol, which
2439         indicates to the C program how many bytes there are in a long long,
2440         if this system supports long long.
2441
2442 longsize (intsize.U):
2443         This variable contains the value of the LONGSIZE symbol, which
2444         indicates to the C program how many bytes there are in a long.
2445
2446 lp (Loc.U):
2447         This variable is defined but not used by Configure.
2448         The value is a plain '' and is not useful.
2449
2450 lpr (Loc.U):
2451         This variable is defined but not used by Configure.
2452         The value is a plain '' and is not useful.
2453
2454 ls (Loc.U):
2455         This variable is used internally by Configure to determine the
2456         full pathname (if any) of the ls program.  After Configure runs,
2457         the value is reset to a plain "ls" and is not useful.
2458
2459 lseeksize (lseektype.U):
2460         This variable defines lseektype to be something like off_t, long, 
2461         or whatever type is used to declare lseek offset's type in the
2462         kernel (which also appears to be lseek's return type).
2463
2464 lseektype (lseektype.U):
2465         This variable defines lseektype to be something like off_t, long, 
2466         or whatever type is used to declare lseek offset's type in the
2467         kernel (which also appears to be lseek's return type).
2468
2469 mail (Loc.U):
2470         This variable is defined but not used by Configure.
2471         The value is a plain '' and is not useful.
2472
2473 mailx (Loc.U):
2474         This variable is defined but not used by Configure.
2475         The value is a plain '' and is not useful.
2476
2477 make (Loc.U):
2478         This variable is used internally by Configure to determine the
2479         full pathname (if any) of the make program.  After Configure runs,
2480         the value is reset to a plain "make" and is not useful.
2481
2482 make_set_make (make.U):
2483         Some versions of 'make' set the variable MAKE.  Others do not.
2484         This variable contains the string to be included in Makefile.SH
2485         so that MAKE is set if needed, and not if not needed.
2486         Possible values are:
2487         make_set_make='#'               # If your make program handles this for you,
2488         make_set_make="MAKE=$make"      # if it doesn't.
2489         I used a comment character so that we can distinguish a
2490         'set' value (from a previous config.sh or Configure '-D' option)
2491         from an uncomputed value.
2492
2493 mallocobj (mallocsrc.U):
2494         This variable contains the name of the malloc.o that this package
2495         generates, if that malloc.o is preferred over the system malloc.
2496         Otherwise the value is null.  This variable is intended for generating
2497         Makefiles.  See mallocsrc.
2498
2499 mallocsrc (mallocsrc.U):
2500         This variable contains the name of the malloc.c that comes with
2501         the package, if that malloc.c is preferred over the system malloc.
2502         Otherwise the value is null.  This variable is intended for generating
2503         Makefiles.
2504
2505 malloctype (mallocsrc.U):
2506         This variable contains the kind of ptr returned by malloc and realloc.
2507
2508 man1dir (man1dir.U):
2509         This variable contains the name of the directory in which manual
2510         source pages are to be put.  It is the responsibility of the
2511         Makefile.SH to get the value of this into the proper command.
2512         You must be prepared to do the ~name expansion yourself.
2513
2514 man1direxp (man1dir.U):
2515         This variable is the same as the man1dir variable, but is filename
2516         expanded at configuration time, for convenient use in makefiles.
2517
2518 man1ext (man1dir.U):
2519         This variable contains the extension that the manual page should
2520         have: one of 'n', 'l', or '1'.  The Makefile must supply the '.'.
2521         See man1dir.
2522
2523 man3dir (man3dir.U):
2524         This variable contains the name of the directory in which manual
2525         source pages are to be put.  It is the responsibility of the
2526         Makefile.SH to get the value of this into the proper command.
2527         You must be prepared to do the ~name expansion yourself.
2528
2529 man3direxp (man3dir.U):
2530         This variable is the same as the man3dir variable, but is filename
2531         expanded at configuration time, for convenient use in makefiles.
2532
2533 man3ext (man3dir.U):
2534         This variable contains the extension that the manual page should
2535         have: one of 'n', 'l', or '3'.  The Makefile must supply the '.'.
2536         See man3dir.
2537
2538 Mcc (Loc.U):
2539         This variable is used internally by Configure to determine the
2540         full pathname (if any) of the Mcc program.  After Configure runs,
2541         the value is reset to a plain "Mcc" and is not useful.
2542
2543 medium (models.U):
2544         This variable contains a flag which will tell the C compiler and loader
2545         to produce a program running with a medium memory model.  If the
2546         medium model is not supported, contains the flag to produce large
2547         model programs.  It is up to the Makefile to use this.
2548
2549 mips_type (usrinc.U):
2550         This variable holds the environment type for the mips system.
2551         Possible values are "BSD 4.3" and "System V".
2552
2553 mkdir (Loc.U):
2554         This variable is used internally by Configure to determine the
2555         full pathname (if any) of the mkdir program.  After Configure runs,
2556         the value is reset to a plain "mkdir" and is not useful.
2557
2558 mmaptype (d_mmap.U):
2559         This symbol contains the type of pointer returned by mmap()
2560         (and simultaneously the type of the first argument).
2561         It can be 'void *' or 'caddr_t'.
2562
2563 models (models.U):
2564         This variable contains the list of memory models supported by this
2565         system.  Possible component values are none, split, unsplit, small,
2566         medium, large, and huge.  The component values are space separated.
2567
2568 modetype (modetype.U):
2569         This variable defines modetype to be something like mode_t, 
2570         int, unsigned short, or whatever type is used to declare file 
2571         modes for system calls.
2572
2573 more (Loc.U):
2574         This variable is used internally by Configure to determine the
2575         full pathname (if any) of the more program.  After Configure runs,
2576         the value is reset to a plain "more" and is not useful.
2577
2578 multiarch (multiarch.U):
2579         This variable conditionally defines the MULTIARCH symbol
2580         which signifies the presence of multiplatform files.
2581         This is normally set by hints files.
2582
2583 mv (Loc.U):
2584         This variable is defined but not used by Configure.
2585         The value is a plain '' and is not useful.
2586
2587 myarchname (archname.U):
2588         This variable holds the architecture name computed by Configure in
2589         a previous run. It is not intended to be perused by any user and
2590         should never be set in a hint file.
2591
2592 mydomain (myhostname.U):
2593         This variable contains the eventual value of the MYDOMAIN symbol,
2594         which is the domain of the host the program is going to run on.
2595         The domain must be appended to myhostname to form a complete host name.
2596         The dot comes with mydomain, and need not be supplied by the program.
2597
2598 myhostname (myhostname.U):
2599         This variable contains the eventual value of the MYHOSTNAME symbol,
2600         which is the name of the host the program is going to run on.
2601         The domain is not kept with hostname, but must be gotten from mydomain.
2602         The dot comes with mydomain, and need not be supplied by the program.
2603
2604 myuname (Oldconfig.U):
2605         The output of 'uname -a' if available, otherwise the hostname. On Xenix,
2606         pseudo variables assignments in the output are stripped, thank you. The
2607         whole thing is then lower-cased.
2608
2609 n (n.U):
2610         This variable contains the '-n' flag if that is what causes the echo
2611         command to suppress newline.  Otherwise it is null.  Correct usage is
2612         $echo $n "prompt for a question: $c".
2613
2614 netdb_hlen_type (netdbtype.U):
2615         This variable holds the type used for the 2nd argument to
2616         gethostbyaddr().  Usually, this is int or size_t or unsigned.
2617         This is only useful if you have gethostbyaddr(), naturally.
2618
2619 netdb_host_type (netdbtype.U):
2620         This variable holds the type used for the 1st argument to
2621         gethostbyaddr().  Usually, this is char * or void *,  possibly
2622         with or without a const prefix.
2623         This is only useful if you have gethostbyaddr(), naturally.
2624
2625 netdb_name_type (netdbtype.U):
2626         This variable holds the type used for the argument to
2627         gethostbyname().  Usually, this is char * or const char *.
2628         This is only useful if you have gethostbyname(), naturally.
2629
2630 netdb_net_type (netdbtype.U):
2631         This variable holds the type used for the 1st argument to
2632         getnetbyaddr().  Usually, this is int or long.
2633         This is only useful if you have getnetbyaddr(), naturally.
2634
2635 nm (Loc.U):
2636         This variable is used internally by Configure to determine the
2637         full pathname (if any) of the nm program.  After Configure runs,
2638         the value is reset to a plain "nm" and is not useful.
2639
2640 nm_opt (usenm.U):
2641         This variable holds the options that may be necessary for nm.
2642
2643 nm_so_opt (usenm.U):
2644         This variable holds the options that may be necessary for nm
2645         to work on a shared library but that can not be used on an
2646         archive library.  Currently, this is only used by Linux, where
2647         nm --dynamic is *required* to get symbols from an ELF library which
2648         has been stripped, but nm --dynamic is *fatal* on an archive library.
2649         Maybe Linux should just always set usenm=false.
2650
2651 nonxs_ext (Extensions.U):
2652         This variable holds a list of all non-xs extensions included
2653         in the package.  All of them will be built.
2654
2655 nroff (Loc.U):
2656         This variable is used internally by Configure to determine the
2657         full pathname (if any) of the nroff program.  After Configure runs,
2658         the value is reset to a plain "nroff" and is not useful.
2659
2660 nvsize (perlxv.U):
2661         This variable is the size of an NV in bytes.
2662
2663 nvtype (perlxv.U):
2664         This variable contains the C type used for Perl's NV.
2665
2666 o_nonblock (nblock_io.U):
2667         This variable bears the symbol value to be used during open() or fcntl()
2668         to turn on non-blocking I/O for a file descriptor. If you wish to switch
2669         between blocking and non-blocking, you may try ioctl(FIOSNBIO) instead,
2670         but that is only supported by some devices.
2671
2672 obj_ext (Unix.U):
2673         This is an old synonym for _o.
2674
2675 old_pthread_create_joinable (d_pthrattrj.U):
2676         This variable defines the constant to use for creating joinable
2677         (aka undetached) pthreads.  Unused if pthread.h defines
2678         PTHREAD_CREATE_JOINABLE.  If used, possible values are
2679         PTHREAD_CREATE_UNDETACHED and __UNDETACHED.
2680
2681 optimize (ccflags.U):
2682         This variable contains any optimizer/debugger flag that should be used.
2683         It is up to the Makefile to use it.
2684
2685 orderlib (orderlib.U):
2686         This variable is "true" if the components of libraries must be ordered
2687         (with `lorder $* | tsort`) before placing them in an archive.  Set to
2688         "false" if ranlib or ar can generate random libraries.
2689
2690 osname (Oldconfig.U):
2691         This variable contains the operating system name (e.g. sunos,
2692         solaris, hpux, etc.).  It can be useful later on for setting
2693         defaults.  Any spaces are replaced with underscores.  It is set
2694         to a null string if we can't figure it out.
2695
2696 osvers (Oldconfig.U):
2697         This variable contains the operating system version (e.g.
2698         4.1.3, 5.2, etc.).  It is primarily used for helping select
2699         an appropriate hints file, but might be useful elsewhere for
2700         setting defaults.  It is set to '' if we can't figure it out.
2701         We try to be flexible about how much of the version number
2702         to keep, e.g. if 4.1.1, 4.1.2, and 4.1.3 are essentially the
2703         same for this package, hints files might just be os_4.0 or
2704         os_4.1, etc., not keeping separate files for each little release.
2705
2706 package (package.U):
2707         This variable contains the name of the package being constructed.
2708         It is primarily intended for the use of later Configure units.
2709
2710 pager (pager.U):
2711         This variable contains the name of the preferred pager on the system.
2712         Usual values are (the full pathnames of) more, less, pg, or cat.
2713
2714 passcat (nis.U):
2715         This variable contains a command that produces the text of the
2716         /etc/passwd file.  This is normally "cat /etc/passwd", but can be
2717         "ypcat passwd" when NIS is used.
2718         On some systems, such as os390, there may be no equivalent
2719         command, in which case this variable is unset.
2720
2721 patchlevel (patchlevel.U):
2722         The patchlevel level of this package.
2723         The value of patchlevel comes from the patchlevel.h file.
2724         In a version number such as 5.6.1, this is the "6".
2725         In patchlevel.h, this is referred to as the "PERL_VERSION".
2726
2727 path_sep (Unix.U):
2728         This is an old synonym for p_ in Head.U, the character
2729         used to separate elements in the command shell search PATH.
2730
2731 perl (Loc.U):
2732         This variable is used internally by Configure to determine the
2733         full pathname (if any) of the perl program.  After Configure runs,
2734         the value is reset to a plain "perl" and is not useful.
2735
2736 PERL_REVISION (Oldsyms.U):
2737         In a Perl version number such as 5.6.2, this is the 5.
2738         This value is manually set in patchlevel.h
2739
2740 PERL_SUBVERSION (Oldsyms.U):
2741         In a Perl version number such as 5.6.2, this is the 2.
2742         Values greater than 50 represent potentially unstable
2743         development subversions.
2744         This value is manually set in patchlevel.h
2745
2746 PERL_VERSION (Oldsyms.U):
2747         In a Perl version number such as 5.6.2, this is the 6.
2748         This value is manually set in patchlevel.h
2749
2750 perladmin (perladmin.U):
2751         Electronic mail address of the perl5 administrator.
2752
2753 perlpath (perlpath.U):
2754         This variable contains the eventual value of the PERLPATH symbol,
2755         which contains the name of the perl interpreter to be used in
2756         shell scripts and in the "eval 'exec'" idiom.
2757
2758 pg (Loc.U):
2759         This variable is used internally by Configure to determine the
2760         full pathname (if any) of the pg program.  After Configure runs,
2761         the value is reset to a plain "pg" and is not useful.
2762
2763 phostname (myhostname.U):
2764         This variable contains the eventual value of the PHOSTNAME symbol,
2765         which is a command that can be fed to popen() to get the host name.
2766         The program should probably not presume that the domain is or isn't
2767         there already.
2768
2769 pidtype (pidtype.U):
2770         This variable defines PIDTYPE to be something like pid_t, int, 
2771         ushort, or whatever type is used to declare process ids in the kernel.
2772
2773 plibpth (libpth.U):
2774         Holds the private path used by Configure to find out the libraries.
2775         Its value is prepend to libpth. This variable takes care of special
2776         machines, like the mips.  Usually, it should be empty.
2777
2778 pm_apiversion (xs_apiversion.U):
2779         This variable contains the version of the oldest perl
2780         compatible with the present perl.  (That is, pure perl modules
2781         written for $pm_apiversion will still work for the current
2782         version).  perl.c:incpush() and lib/lib.pm will automatically
2783         search in $sitelib for older directories across major versions
2784         back to pm_apiversion.  This is only useful if you have a perl
2785         library directory tree structured like the default one.  The
2786         versioned site_perl library was introduced in 5.005, so that's
2787         the default setting for this variable.  It's hard to imagine
2788         it changing before Perl6.  It is included here for symmetry
2789         with xs_apiveprsion -- the searching algorithms will
2790         (presumably) be similar.
2791         See the INSTALL file for how this works.
2792
2793 pmake (Loc.U):
2794         This variable is defined but not used by Configure.
2795         The value is a plain '' and is not useful.
2796
2797 pr (Loc.U):
2798         This variable is defined but not used by Configure.
2799         The value is a plain '' and is not useful.
2800
2801 prefix (prefix.U):
2802         This variable holds the name of the directory below which the
2803         user will install the package.  Usually, this is /usr/local, and
2804         executables go in /usr/local/bin, library stuff in /usr/local/lib,
2805         man pages in /usr/local/man, etc.  It is only used to set defaults
2806         for things in bin.U, mansrc.U, privlib.U, or scriptdir.U.
2807
2808 prefixexp (prefix.U):
2809         This variable holds the full absolute path of the directory below
2810         which the user will install the package.  Derived from prefix.
2811
2812 privlib (privlib.U):
2813         This variable contains the eventual value of the PRIVLIB symbol,
2814         which is the name of the private library for this package.  It may
2815         have a ~ on the front. It is up to the makefile to eventually create
2816         this directory while performing installation (with ~ substitution).
2817
2818 privlibexp (privlib.U):
2819         This variable is the ~name expanded version of privlib, so that you
2820         may use it directly in Makefiles or shell scripts.
2821
2822 prototype (prototype.U):
2823         This variable holds the eventual value of CAN_PROTOTYPE, which
2824         indicates the C compiler can handle funciton prototypes.
2825
2826 ptrsize (ptrsize.U):
2827         This variable contains the value of the PTRSIZE symbol, which
2828         indicates to the C program how many bytes there are in a pointer.
2829
2830 quadkind (quadtype.U):
2831         This variable, if defined, encodes the type of a quad:
2832         1 = int, 2 = long, 3 = long long, 4 = int64_t.
2833
2834 quadtype (quadtype.U):
2835         This variable defines Quad_t to be something like long, int, 
2836         long long, int64_t, or whatever type is used for 64-bit integers.
2837
2838 randbits (randfunc.U):
2839         Indicates how many bits are produced by the function used to
2840         generate normalized random numbers.
2841
2842 randfunc (randfunc.U):
2843         Indicates the name of the random number function to use.
2844         Values include drand48, random, and rand. In C programs,
2845         the 'Drand01' macro is defined to generate uniformly distributed
2846         random numbers over the range [0., 1.[ (see drand01 and nrand).
2847
2848 randseedtype (randfunc.U):
2849         Indicates the type of the argument of the seedfunc.
2850
2851 ranlib (orderlib.U):
2852         This variable is set to the pathname of the ranlib program, if it is
2853         needed to generate random libraries.  Set to ":" if ar can generate
2854         random libraries or if random libraries are not supported
2855
2856 rd_nodata (nblock_io.U):
2857         This variable holds the return code from read() when no data is
2858         present. It should be -1, but some systems return 0 when O_NDELAY is
2859         used, which is a shame because you cannot make the difference between
2860         no data and an EOF.. Sigh!
2861
2862 rm (Loc.U):
2863         This variable is used internally by Configure to determine the
2864         full pathname (if any) of the rm program.  After Configure runs,
2865         the value is reset to a plain "rm" and is not useful.
2866
2867 rmail (Loc.U):
2868         This variable is defined but not used by Configure.
2869         The value is a plain '' and is not useful.
2870
2871 runnm (usenm.U):
2872         This variable contains 'true' or 'false' depending whether the
2873         nm extraction should be performed or not, according to the value
2874         of usenm and the flags on the Configure command line.
2875
2876 sched_yield (d_pthread_y.U):
2877         This variable defines the way to yield the execution
2878         of the current thread.
2879
2880 scriptdir (scriptdir.U):
2881         This variable holds the name of the directory in which the user wants
2882         to put publicly scripts for the package in question.  It is either
2883         the same directory as for binaries, or a special one that can be
2884         mounted across different architectures, like /usr/share. Programs
2885         must be prepared to deal with ~name expansion.
2886
2887 scriptdirexp (scriptdir.U):
2888         This variable is the same as scriptdir, but is filename expanded
2889         at configuration time, for programs not wanting to bother with it.
2890
2891 sed (Loc.U):
2892         This variable is used internally by Configure to determine the
2893         full pathname (if any) of the sed program.  After Configure runs,
2894         the value is reset to a plain "sed" and is not useful.
2895
2896 seedfunc (randfunc.U):
2897         Indicates the random number generating seed function.
2898         Values include srand48, srandom, and srand.
2899
2900 selectminbits (selectminbits.U):
2901         This variable holds the minimum number of bits operated by select.
2902         That is, if you do select(n, ...), how many bits at least will be
2903         cleared in the masks if some activity is detected.  Usually this
2904         is either n or 32*ceil(n/32), especially many little-endians do
2905         the latter.  This is only useful if you have select(), naturally.
2906
2907 selecttype (selecttype.U):
2908         This variable holds the type used for the 2nd, 3rd, and 4th
2909         arguments to select.  Usually, this is 'fd_set *', if HAS_FD_SET
2910         is defined, and 'int *' otherwise.  This is only useful if you 
2911         have select(), naturally.
2912
2913 sendmail (Loc.U):
2914         This variable is defined but not used by Configure.
2915         The value is a plain '' and is not useful.
2916
2917 sh (sh.U):
2918         This variable contains the full pathname of the shell used
2919         on this system to execute Bourne shell scripts.  Usually, this will be
2920         /bin/sh, though it's possible that some systems will have /bin/ksh,
2921         /bin/pdksh, /bin/ash, /bin/bash, or even something such as
2922         D:/bin/sh.exe.
2923         This unit comes before Options.U, so you can't set sh with a '-D'
2924         option, though you can override this (and startsh)
2925         with '-O -Dsh=/bin/whatever -Dstartsh=whatever'
2926
2927 shar (Loc.U):
2928         This variable is defined but not used by Configure.
2929         The value is a plain '' and is not useful.
2930
2931 sharpbang (spitshell.U):
2932         This variable contains the string #! if this system supports that
2933         construct.
2934
2935 shmattype (d_shmat.U):
2936         This symbol contains the type of pointer returned by shmat().
2937         It can be 'void *' or 'char *'.
2938
2939 shortsize (intsize.U):
2940         This variable contains the value of the SHORTSIZE symbol which
2941         indicates to the C program how many bytes there are in a short.
2942
2943 shrpenv (libperl.U):
2944         If the user builds a shared libperl.so, then we need to tell the
2945         'perl' executable where it will be able to find the installed libperl.so. 
2946         One way to do this on some systems is to set the environment variable
2947         LD_RUN_PATH to the directory that will be the final location of the
2948         shared libperl.so.  The makefile can use this with something like
2949         $shrpenv $(CC) -o perl perlmain.o $libperl $libs
2950         Typical values are
2951         shrpenv="env LD_RUN_PATH=$archlibexp/CORE"
2952         or
2953         shrpenv=''
2954         See the main perl Makefile.SH for actual working usage.
2955         Alternatively, we might be able to use a command line option such
2956         as -R $archlibexp/CORE (Solaris, NetBSD) or -Wl,-rpath
2957         $archlibexp/CORE (Linux).
2958
2959 shsharp (spitshell.U):
2960         This variable tells further Configure units whether your sh can
2961         handle # comments.
2962
2963 sig_count (sig_name.U):
2964         This variable holds a number larger than the largest valid
2965         signal number.  This is usually the same as the NSIG macro.
2966
2967 sig_name (sig_name.U):
2968         This variable holds the signal names, space separated. The leading
2969         SIG in signal name is removed.  A ZERO is prepended to the
2970         list.  This is currently not used.
2971
2972 sig_name_init (sig_name.U):
2973         This variable holds the signal names, enclosed in double quotes and
2974         separated by commas, suitable for use in the SIG_NAME definition 
2975         below.  A "ZERO" is prepended to the list, and the list is 
2976         terminated with a plain 0.  The leading SIG in signal names
2977         is removed. See sig_num.
2978
2979 sig_num (sig_name.U):
2980         This variable holds the signal numbers, space separated. A ZERO is
2981         prepended to the list (corresponding to the fake SIGZERO), and 
2982         the list is terminated with a 0.  Those numbers correspond to 
2983         the value of the signal listed in the same place within the
2984         sig_name list.
2985
2986 sig_num_init (sig_name.U):
2987         This variable holds the signal numbers, enclosed in double quotes and
2988         separated by commas, suitable for use in the SIG_NUM definition 
2989         below.  A "ZERO" is prepended to the list, and the list is 
2990         terminated with a plain 0.
2991
2992 signal_t (d_voidsig.U):
2993         This variable holds the type of the signal handler (void or int).
2994
2995 sitearch (sitearch.U):
2996         This variable contains the eventual value of the SITEARCH symbol,
2997         which is the name of the private library for this package.  It may
2998         have a ~ on the front. It is up to the makefile to eventually create
2999         this directory while performing installation (with ~ substitution).
3000         The standard distribution will put nothing in this directory.
3001         After perl has been installed, users may install their own local
3002         architecture-dependent modules in this directory with
3003         MakeMaker Makefile.PL
3004         or equivalent.  See INSTALL for details.
3005
3006 sitearchexp (sitearch.U):
3007         This variable is the ~name expanded version of sitearch, so that you
3008         may use it directly in Makefiles or shell scripts.
3009
3010 sitebin (sitebin.U):
3011         This variable holds the name of the directory in which the user wants
3012         to put add-on publicly executable files for the package in question.  It
3013         is most often a local directory such as /usr/local/bin. Programs using
3014         this variable must be prepared to deal with ~name substitution.
3015         The standard distribution will put nothing in this directory.
3016         After perl has been installed, users may install their own local
3017         executables in this directory with
3018         MakeMaker Makefile.PL
3019         or equivalent.  See INSTALL for details.
3020
3021 sitebinexp (sitebin.U):
3022         This is the same as the sitebin variable, but is filename expanded at
3023         configuration time, for use in your makefiles.
3024
3025 sitelib (sitelib.U):
3026         This variable contains the eventual value of the SITELIB symbol,
3027         which is the name of the private library for this package.  It may
3028         have a ~ on the front. It is up to the makefile to eventually create
3029         this directory while performing installation (with ~ substitution).
3030         The standard distribution will put nothing in this directory.
3031         After perl has been installed, users may install their own local
3032         architecture-independent modules in this directory with
3033         MakeMaker Makefile.PL
3034         or equivalent.  See INSTALL for details.
3035
3036 sitelibexp (sitelib.U):
3037         This variable is the ~name expanded version of sitelib, so that you
3038         may use it directly in Makefiles or shell scripts.
3039
3040 siteprefix (siteprefix.U):
3041         This variable holds the full absolute path of the directory below
3042         which the user will install add-on packages.
3043         See INSTALL for usage and examples.
3044
3045 siteprefixexp (siteprefix.U):
3046         This variable holds the full absolute path of the directory below
3047         which the user will install add-on packages.  Derived from siteprefix.
3048
3049 sizetype (sizetype.U):
3050         This variable defines sizetype to be something like size_t, 
3051         unsigned long, or whatever type is used to declare length 
3052         parameters for string functions.
3053
3054 sleep (Loc.U):
3055         This variable is defined but not used by Configure.
3056         The value is a plain '' and is not useful.
3057
3058 smail (Loc.U):
3059         This variable is defined but not used by Configure.
3060         The value is a plain '' and is not useful.
3061
3062 small (models.U):
3063         This variable contains a flag which will tell the C compiler and loader
3064         to produce a program running with a small memory model.  It is up to
3065         the Makefile to use this.
3066
3067 so (so.U):
3068         This variable holds the extension used to identify shared libraries
3069         (also known as shared objects) on the system. Usually set to 'so'.
3070
3071 sockethdr (d_socket.U):
3072         This variable has any cpp '-I' flags needed for socket support.
3073
3074 socketlib (d_socket.U):
3075         This variable has the names of any libraries needed for socket support.
3076
3077 sort (Loc.U):
3078         This variable is used internally by Configure to determine the
3079         full pathname (if any) of the sort program.  After Configure runs,
3080         the value is reset to a plain "sort" and is not useful.
3081
3082 spackage (package.U):
3083         This variable contains the name of the package being constructed,
3084         with the first letter uppercased, i.e. suitable for starting
3085         sentences.
3086
3087 spitshell (spitshell.U):
3088         This variable contains the command necessary to spit out a runnable
3089         shell on this system.  It is either cat or a grep '-v' for # comments.
3090
3091 split (models.U):
3092         This variable contains a flag which will tell the C compiler and loader
3093         to produce a program that will run in separate I and D space, for those
3094         machines that support separation of instruction and data space.  It is
3095         up to the Makefile to use this.
3096
3097 sPRId64 (quadfio.U):
3098         This variable, if defined, contains the string used by stdio to
3099         format 64-bit decimal numbers (format 'd') for output.
3100
3101 sPRIeldbl (longdblfio.U):
3102         This variable, if defined, contains the string used by stdio to
3103         format long doubles (format 'e') for output.
3104
3105 sPRIEldbl (longdblfio.U):
3106         This variable, if defined, contains the string used by stdio to
3107         format long doubles (format 'E') for output.
3108
3109 sPRIfldbl (longdblfio.U):
3110         This variable, if defined, contains the string used by stdio to
3111         format long doubles (format 'f') for output.
3112
3113 sPRIFldbl (longdblfio.U):
3114         This variable, if defined, contains the string used by stdio to
3115         format long doubles (format 'F') for output.
3116
3117 sPRIgldbl (longdblfio.U):
3118         This variable, if defined, contains the string used by stdio to
3119         format long doubles (format 'g') for output.
3120
3121 sPRIGldbl (longdblfio.U):
3122         This variable, if defined, contains the string used by stdio to
3123         format long doubles (format 'G') for output.
3124
3125 sPRIi64 (quadfio.U):
3126         This variable, if defined, contains the string used by stdio to
3127         format 64-bit decimal numbers (format 'i') for output.
3128
3129 sPRIo64 (quadfio.U):
3130         This variable, if defined, contains the string used by stdio to
3131         format 64-bit octal numbers (format 'o') for output.
3132
3133 sPRIu64 (quadfio.U):
3134         This variable, if defined, contains the string used by stdio to
3135         format 64-bit unsigned decimal numbers (format 'u') for output.
3136
3137 sPRIx64 (quadfio.U):
3138         This variable, if defined, contains the string used by stdio to
3139         format 64-bit hexadecimal numbers (format 'x') for output.
3140
3141 sPRIX64 (quadfio.U):
3142         This variable, if defined, contains the string used by stdio to
3143         format 64-bit hExADECimAl numbers (format 'X') for output.
3144
3145 src (src.U):
3146         This variable holds the path to the package source. It is up to
3147         the Makefile to use this variable and set VPATH accordingly to
3148         find the sources remotely.
3149
3150 ssizetype (ssizetype.U):
3151         This variable defines ssizetype to be something like ssize_t, 
3152         long or int.  It is used by functions that return a count 
3153         of bytes or an error condition.  It must be a signed type.
3154         We will pick a type such that sizeof(SSize_t) == sizeof(Size_t).
3155
3156 startperl (startperl.U):
3157         This variable contains the string to put on the front of a perl
3158         script to make sure (hopefully) that it runs with perl and not some
3159         shell. Of course, that leading line must be followed by the classical
3160         perl idiom:
3161         eval 'exec perl -S $0 ${1+"$@"}'
3162         if $running_under_some_shell;
3163         to guarantee perl startup should the shell execute the script. Note
3164         that this magic incatation is not understood by csh.
3165
3166 startsh (startsh.U):
3167         This variable contains the string to put on the front of a shell
3168         script to make sure (hopefully) that it runs with sh and not some
3169         other shell.
3170
3171 static_ext (Extensions.U):
3172         This variable holds a list of XS extension files we want to
3173         link statically into the package.  It is used by Makefile.
3174
3175 stdchar (stdchar.U):
3176         This variable conditionally defines STDCHAR to be the type of char
3177         used in stdio.h.  It has the values "unsigned char" or "char".
3178
3179 stdio_base (d_stdstdio.U):
3180         This variable defines how, given a FILE pointer, fp, to access the
3181         _base field (or equivalent) of stdio.h's FILE structure.  This will
3182         be used to define the macro FILE_base(fp).
3183
3184 stdio_bufsiz (d_stdstdio.U):
3185         This variable defines how, given a FILE pointer, fp, to determine
3186         the number of bytes store in the I/O buffer pointer to by the
3187         _base field (or equivalent) of stdio.h's FILE structure.  This will
3188         be used to define the macro FILE_bufsiz(fp).
3189
3190 stdio_cnt (d_stdstdio.U):
3191         This variable defines how, given a FILE pointer, fp, to access the
3192         _cnt field (or equivalent) of stdio.h's FILE structure.  This will
3193         be used to define the macro FILE_cnt(fp).
3194
3195 stdio_filbuf (d_stdstdio.U):
3196         This variable defines how, given a FILE pointer, fp, to tell
3197         stdio to refill it's internal buffers (?).  This will
3198         be used to define the macro FILE_filbuf(fp).
3199
3200 stdio_ptr (d_stdstdio.U):
3201         This variable defines how, given a FILE pointer, fp, to access the
3202         _ptr field (or equivalent) of stdio.h's FILE structure.  This will
3203         be used to define the macro FILE_ptr(fp).
3204
3205 stdio_stream_array (stdio_streams.U):
3206         This variable tells the name of the array holding the stdio streams.
3207         Usual values include _iob, __iob, and __sF.
3208
3209 strings (i_string.U):
3210         This variable holds the full path of the string header that will be
3211         used. Typically /usr/include/string.h or /usr/include/strings.h.
3212
3213 submit (Loc.U):
3214         This variable is defined but not used by Configure.
3215         The value is a plain '' and is not useful.
3216
3217 subversion (patchlevel.U):
3218         The subversion level of this package.
3219         The value of subversion comes from the patchlevel.h file.
3220         In a version number such as 5.6.1, this is the "1".
3221         This is unique to perl.
3222
3223 sysman (sysman.U):
3224         This variable holds the place where the manual is located on this
3225         system. It is not the place where the user wants to put his manual
3226         pages. Rather it is the place where Configure may look to find manual
3227         for unix commands (section 1 of the manual usually). See mansrc.
3228
3229 tail (Loc.U):
3230         This variable is defined but not used by Configure.
3231         The value is a plain '' and is not useful.
3232
3233 tar (Loc.U):
3234         This variable is defined but not used by Configure.
3235         The value is a plain '' and is not useful.
3236
3237 tbl (Loc.U):
3238         This variable is defined but not used by Configure.
3239         The value is a plain '' and is not useful.
3240
3241 tee (Loc.U):
3242         This variable is defined but not used by Configure.
3243         The value is a plain '' and is not useful.
3244
3245 test (Loc.U):
3246         This variable is used internally by Configure to determine the
3247         full pathname (if any) of the test program.  After Configure runs,
3248         the value is reset to a plain "test" and is not useful.
3249
3250 timeincl (i_time.U):
3251         This variable holds the full path of the included time header(s).
3252
3253 timetype (d_time.U):
3254         This variable holds the type returned by time(). It can be long,
3255         or time_t on BSD sites (in which case <sys/types.h> should be
3256         included). Anyway, the type Time_t should be used.
3257
3258 touch (Loc.U):
3259         This variable is used internally by Configure to determine the
3260         full pathname (if any) of the touch program.  After Configure runs,
3261         the value is reset to a plain "touch" and is not useful.
3262
3263 tr (Loc.U):
3264         This variable is used internally by Configure to determine the
3265         full pathname (if any) of the tr program.  After Configure runs,
3266         the value is reset to a plain "tr" and is not useful.
3267
3268 trnl (trnl.U):
3269         This variable contains the value to be passed to the tr(1)
3270         command to transliterate a newline.  Typical values are
3271         '\012' and '\n'.  This is needed for EBCDIC systems where
3272         newline is not necessarily '\012'.
3273
3274 troff (Loc.U):
3275         This variable is defined but not used by Configure.
3276         The value is a plain '' and is not useful.
3277
3278 u16size (perlxv.U):
3279         This variable is the size of an U16 in bytes.
3280
3281 u16type (perlxv.U):
3282         This variable contains the C type used for Perl's U16.
3283
3284 u32size (perlxv.U):
3285         This variable is the size of an U32 in bytes.
3286
3287 u32type (perlxv.U):
3288         This variable contains the C type used for Perl's U32.
3289
3290 u64size (perlxv.U):
3291         This variable is the size of an U64 in bytes.
3292
3293 u64type (perlxv.U):
3294         This variable contains the C type used for Perl's U64.
3295
3296 u8size (perlxv.U):
3297         This variable is the size of an U8 in bytes.
3298
3299 u8type (perlxv.U):
3300         This variable contains the C type used for Perl's U8.
3301
3302 uidformat (uidf.U):
3303         This variable contains the format string used for printing a Uid_t.
3304
3305 uidsign (uidsign.U):
3306         This variable contains the signedness of a uidtype.
3307         1 for unsigned, -1 for signed.
3308
3309 uidsize (uidsize.U):
3310         This variable contains the size of a uidtype in bytes.
3311
3312 uidtype (uidtype.U):
3313         This variable defines Uid_t to be something like uid_t, int, 
3314         ushort, or whatever type is used to declare user ids in the kernel.
3315
3316 uname (Loc.U):
3317         This variable is used internally by Configure to determine the
3318         full pathname (if any) of the uname program.  After Configure runs,
3319         the value is reset to a plain "uname" and is not useful.
3320
3321 uniq (Loc.U):
3322         This variable is used internally by Configure to determine the
3323         full pathname (if any) of the uniq program.  After Configure runs,
3324         the value is reset to a plain "uniq" and is not useful.
3325
3326 uquadtype (quadtype.U):
3327         This variable defines Uquad_t to be something like unsigned long,
3328         unsigned int, unsigned long long, uint64_t, or whatever type is
3329         used for 64-bit integers.
3330
3331 use5005threads (usethreads.U):
3332         This variable conditionally defines the USE_5005THREADS symbol,
3333         and indicates that Perl should be built to use the 5.005-based
3334         threading implementation.
3335
3336 use64bits (use64bits.U):
3337         This variable conditionally defines the USE_64_BITS symbol,
3338         and indicates that 64-bit integer types should be used
3339         when available.
3340
3341 usedl (dlsrc.U):
3342         This variable indicates if the system supports dynamic
3343         loading of some sort.  See also dlsrc and dlobj.
3344
3345 useithreads (usethreads.U):
3346         This variable conditionally defines the USE_ITHREADS symbol,
3347         and indicates that Perl should be built to use the interpreter-based
3348         threading implementation.
3349
3350 uselargefiles (uselfs.U):
3351         This variable conditionally defines the USE_LARGE_FILES symbol,
3352         and indicates that large file interfaces should be used when
3353         available.  The use64bits symbol will also be turned on if necessary.
3354
3355 uselongdouble (uselongdbl.U):
3356         This variable conditionally defines the USE_LONG_DOUBLE symbol,
3357         and indicates that long doubles should be used when available.
3358
3359 usemorebits (usemorebits.U):
3360         This variable conditionally defines the USE_MORE_BITS symbol,
3361         and indicates that explicit 64-bit interfaces and long doubles
3362         should be used when available.
3363
3364 usemultiplicity (usemultiplicity.U):
3365         This variable conditionally defines the MULTIPLICITY symbol,
3366         and indicates that Perl should be built to use multiplicity.
3367
3368 usemymalloc (mallocsrc.U):
3369         This variable contains y if the malloc that comes with this package
3370         is desired over the system's version of malloc.  People often include
3371         special versions of malloc for effiency, but such versions are often
3372         less portable.  See also mallocsrc and mallocobj.
3373         If this is 'y', then -lmalloc is removed from $libs.
3374
3375 usenm (usenm.U):
3376         This variable contains 'true' or 'false' depending whether the
3377         nm extraction is wanted or not.
3378
3379 useopcode (Extensions.U):
3380         This variable holds either 'true' or 'false' to indicate
3381         whether the Opcode extension should be used.  The sole
3382         use for this currently is to allow an easy mechanism
3383         for users to skip the Opcode extension from the Configure
3384         command line.
3385
3386 useperlio (useperlio.U):
3387         This variable conditionally defines the USE_PERLIO symbol,
3388         and indicates that the PerlIO abstraction should be
3389         used throughout.
3390
3391 useposix (Extensions.U):
3392         This variable holds either 'true' or 'false' to indicate
3393         whether the POSIX extension should be used.  The sole
3394         use for this currently is to allow an easy mechanism
3395         for hints files to indicate that POSIX will not compile
3396         on a particular system.
3397
3398 usesfio (d_sfio.U):
3399         This variable is set to true when the user agrees to use sfio.
3400         It is set to false when sfio is not available or when the user
3401         explicitely requests not to use sfio.  It is here primarily so
3402         that command-line settings can override the auto-detection of
3403         d_sfio without running into a "WHOA THERE".
3404
3405 useshrplib (libperl.U):
3406         This variable is set to 'yes' if the user wishes
3407         to build a shared libperl, and 'no' otherwise.
3408
3409 usesocks (usesocks.U):
3410         This variable conditionally defines the USE_SOCKS symbol,
3411         and indicates that Perl should be built to use SOCKS.
3412
3413 usethreads (usethreads.U):
3414         This variable conditionally defines the USE_THREADS symbol,
3415         and indicates that Perl should be built to use threads.
3416
3417 usevendorprefix (vendorprefix.U):
3418         This variable tells whether the vendorprefix
3419         and consequently other vendor* paths are in use.
3420
3421 usevfork (d_vfork.U):
3422         This variable is set to true when the user accepts to use vfork.
3423         It is set to false when no vfork is available or when the user
3424         explicitely requests not to use vfork.
3425
3426 usrinc (usrinc.U):
3427         This variable holds the path of the include files, which is
3428         usually /usr/include. It is mainly used by other Configure units.
3429
3430 uuname (Loc.U):
3431         This variable is defined but not used by Configure.
3432         The value is a plain '' and is not useful.
3433
3434 uvoformat (perlxvf.U):
3435         This variable contains the format string used for printing
3436         a Perl UV as an unsigned octal integer. 
3437
3438 uvsize (perlxv.U):
3439         This variable is the size of a UV in bytes.
3440
3441 uvtype (perlxv.U):
3442         This variable contains the C type used for Perl's UV.
3443
3444 uvuformat (perlxvf.U):
3445         This variable contains the format string used for printing
3446         a Perl UV as an unsigned decimal integer. 
3447
3448 uvxformat (perlxvf.U):
3449         This variable contains the format string used for printing
3450         a Perl UV as an unsigned hexadecimal integer. 
3451
3452 vendorbin (vendorbin.U):
3453         This variable contains the eventual value of the VENDORBIN symbol.
3454         It may have a ~ on the front.
3455         The standard distribution will put nothing in this directory.
3456         Vendors who distribute perl may wish to place additional
3457         binaries in this directory with
3458         MakeMaker Makefile.PL INSTALLDIRS=vendor 
3459         or equivalent.  See INSTALL for details.
3460
3461 vendorbinexp (vendorbin.U):
3462         This variable is the ~name expanded version of vendorbin, so that you
3463         may use it directly in Makefiles or shell scripts.
3464
3465 vendorlib (vendorlib.U):
3466         This variable contains the eventual value of the VENDORLIB symbol,
3467         which is the name of the private library for this package.
3468         The standard distribution will put nothing in this directory.
3469         Vendors who distribute perl may wish to place their own
3470         modules in this directory with
3471         MakeMaker Makefile.PL INSTALLDIRS=vendor 
3472         or equivalent.  See INSTALL for details.
3473
3474 vendorlibexp (vendorlib.U):
3475         This variable is the ~name expanded version of vendorlib, so that you
3476         may use it directly in Makefiles or shell scripts.
3477
3478 vendorprefix (vendorprefix.U):
3479         This variable holds the full absolute path of the directory below
3480         which the vendor will install add-on packages.
3481         See INSTALL for usage and examples.
3482
3483 vendorprefixexp (vendorprefix.U):
3484         This variable holds the full absolute path of the directory below
3485         which the vendor will install add-on packages.  Derived from vendorprefix.
3486
3487 version (patchlevel.U):
3488         The full version number of this package, such as 5.6.1 (or 5_6_1).
3489         This combines baserev, patchlevel, and subversion to get the
3490         full version number, including any possible subversions.
3491         This is suitable for use as a directory name, and hence is
3492         filesystem dependent.
3493
3494 vi (Loc.U):
3495         This variable is defined but not used by Configure.
3496         The value is a plain '' and is not useful.
3497
3498 voidflags (voidflags.U):
3499         This variable contains the eventual value of the VOIDFLAGS symbol,
3500         which indicates how much support of the void type is given by this
3501         compiler.  See VOIDFLAGS for more info.
3502
3503 xlibpth (libpth.U):
3504         This variable holds extra path (space-separated) used to find
3505         libraries on this platform, for example CPU-specific libraries
3506         (on multi-CPU platforms) may be listed here.
3507
3508 xs_apiversion (xs_apiversion.U):
3509         This variable contains the version of the oldest perl binary
3510         compatible with the present perl.  perl.c:incpush() and
3511         lib/lib.pm will automatically search in $sitearch for older
3512         directories across major versions back to xs_apiversion.
3513         This is only useful if you have a perl library directory tree
3514         structured like the default one.
3515         See INSTALL for how this works.
3516         The versioned site_perl directory was introduced in 5.005,
3517         so that is the lowest possible value.
3518         Since this can depend on compile time options (such as
3519         bincompat) it is set by Configure.  Other non-default sources
3520         of potential incompatibility, such as multiplicity, threads,
3521         debugging, 64bits, sfio, etc., are not checked for currently,
3522         though in principle we could go snooping around in old
3523         Config.pm files.
3524
3525 zcat (Loc.U):
3526         This variable is defined but not used by Configure.
3527         The value is a plain '' and is not useful.
3528
3529 zip (Loc.U):
3530         This variable is used internally by Configure to determine the
3531         full pathname (if any) of the zip program.  After Configure runs,
3532         the value is reset to a plain "zip" and is not useful.
3533