Document that POSIX::localtime needs explicit argument.
[perl.git] / Porting / Glossary
1
2 !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
3 This file is built by metaconfig.
4
5 This file contains a description of all the shell variables whose value is
6 determined by the Configure script.  Variables intended for use in C
7 programs (e.g. I_UNISTD) are already described in config_h.SH.  [`configpm'
8 generates pod documentation for Config.pm from this file--please try to keep
9 the formatting regular.]
10
11 _a (Unix.U):
12         This variable defines the extension used for ordinary library files.
13         For unix, it is '.a'.  The '.' is included.  Other possible
14         values include '.lib'.
15
16 _exe (Unix.U):
17         This variable defines the extension used for executable files.
18         DJGPP, Cygwin and OS/2 use '.exe'.  Stratus VOS uses '.pm'.
19         On operating systems which do not require a specific extension
20         for executable files, this variable is empty.
21
22 _o (Unix.U):
23         This variable defines the extension used for object files.
24         For unix, it is '.o'.  The '.' is included.  Other possible
25         values include '.obj'.
26
27 afs (afs.U):
28         This variable is set to 'true' if AFS (Andrew File System) is used
29         on the system, 'false' otherwise.  It is possible to override this
30         with a hint value or command line option, but you'd better know
31         what you are doing.
32
33 afsroot (afs.U):
34         This variable is by default set to '/afs'. In the unlikely case
35         this is not the correct root, it is possible to override this with
36         a hint value or command line option.  This will be used in subsequent
37         tests for AFSness in the configure and test process.
38
39 alignbytes (alignbytes.U):
40         This variable holds the number of bytes required to align a
41         double-- or a long double when applicable. Usual values are
42         2, 4 and 8.  The default is eight, for safety.
43
44 ansi2knr (ansi2knr.U):
45         This variable is set if the user needs to run ansi2knr.
46         Currently, this is not supported, so we just abort.
47
48 aphostname (d_gethname.U):
49         This variable contains the command which can be used to compute the
50         host name. The command is fully qualified by its absolute path, to make
51         it safe when used by a process with super-user privileges.
52
53 api_revision (patchlevel.U):
54         The three variables, api_revision, api_version, and
55         api_subversion, specify the version of the oldest perl binary
56         compatible with the present perl.  In a full version string
57         such as '5.6.1', api_revision is the '5'.
58         Prior to 5.5.640, the format was a floating point number,
59         like 5.00563.
60
61         perl.c:incpush() and lib/lib.pm will automatically search in
62         $sitelib/.. for older directories back to the limit specified
63         by these api_ variables.  This is only useful if you have a
64         perl library directory tree structured like the default one.
65         See INSTALL for how this works.  The versioned site_perl
66         directory was introduced in 5.005, so that is the lowest
67         possible value.  The version list appropriate for the current
68         system is determined in inc_version_list.U.
69
70         XXX To do:  Since compatibility can depend on compile time
71         options (such as bincompat, longlong, etc.) it should
72         (perhaps) be set by Configure, but currently it isn't.
73         Currently, we read a hard-wired value from patchlevel.h.
74         Perhaps what we ought to do is take the hard-wired value from
75         patchlevel.h but then modify it if the current Configure
76         options warrant.  patchlevel.h then would use an #ifdef guard.
77
78 api_subversion (patchlevel.U):
79         The three variables, api_revision, api_version, and
80         api_subversion, specify the version of the oldest perl binary
81         compatible with the present perl.  In a full version string
82         such as '5.6.1', api_subversion is the '1'.  See api_revision for
83         full details.
84
85 api_version (patchlevel.U):
86         The three variables, api_revision, api_version, and
87         api_subversion, specify the version of the oldest perl binary
88         compatible with the present perl.  In a full version string
89         such as '5.6.1', api_version is the '6'.  See api_revision for
90         full details.  As a special case, 5.5.0 is rendered in the
91         old-style as 5.005.  (In the 5.005_0x maintenance series,
92         this was the only versioned directory in $sitelib.)
93
94 api_versionstring (patchlevel.U):
95         This variable combines api_revision, api_version, and
96         api_subversion in a format such as 5.6.1 (or 5_6_1) suitable
97         for use as a directory name.  This is filesystem dependent.
98
99 ar (Loc.U):
100         This variable is used internally by Configure to determine the
101         full pathname (if any) of the ar program.  After Configure runs,
102         the value is reset to a plain "ar" and is not useful.
103
104 archlib (archlib.U):
105         This variable holds the name of the directory in which the user wants
106         to put architecture-dependent public library files for $package.
107         It is most often a local directory such as /usr/local/lib.
108         Programs using this variable must be prepared to deal
109         with filename expansion.
110
111 archlibexp (archlib.U):
112         This variable is the same as the archlib variable, but is
113         filename expanded at configuration time, for convenient use.
114
115 archname (archname.U):
116         This variable is a short name to characterize the current
117         architecture.  It is used mainly to construct the default archlib.
118
119 archname64 (use64bits.U):
120         This variable is used for the 64-bitness part of $archname.
121
122 archobjs (Unix.U):
123         This variable defines any additional objects that must be linked
124         in with the program on this architecture.  On unix, it is usually
125         empty.  It is typically used to include emulations of unix calls
126         or other facilities.  For perl on OS/2, for example, this would
127         include os2/os2.obj.
128
129 asctime_r_proto (d_asctime_r.U):
130         This variable encodes the prototype of asctime_r.
131         It is zero if d_asctime_r is undef, and one of the
132         REENTRANT_PROTO_T_ABC macros of reentr.h if d_asctime_r
133         is defined.
134
135 awk (Loc.U):
136         This variable is used internally by Configure to determine the
137         full pathname (if any) of the awk program.  After Configure runs,
138         the value is reset to a plain "awk" and is not useful.
139
140 baserev (baserev.U):
141         The base revision level of this package, from the .package file.
142
143 bash (Loc.U):
144         This variable is defined but not used by Configure.
145         The value is the empty string and is not useful.
146
147 bin (bin.U):
148         This variable holds the name of the directory in which the user wants
149         to put publicly executable images for the package in question.  It
150         is most often a local directory such as /usr/local/bin. Programs using
151         this variable must be prepared to deal with ~name substitution.
152
153 bin_ELF (dlsrc.U):
154         This variable saves the result from configure if generated binaries
155         are in ELF format. Only set to defined when the test has actually
156         been performed, and the result was positive.
157
158 binexp (bin.U):
159         This is the same as the bin variable, but is filename expanded at
160         configuration time, for use in your makefiles.
161
162 bison (Loc.U):
163         This variable is used internally by Configure to determine the
164         full pathname (if any) of the bison program.  After Configure runs,
165         the value is reset to a plain "bison" and is not useful.
166
167 byacc (Loc.U):
168         This variable is used internally by Configure to determine the
169         full pathname (if any) of the byacc program.  After Configure runs,
170         the value is reset to a plain "byacc" and is not useful.
171
172 byteorder (byteorder.U):
173         This variable holds the byte order in a UV. In the following,
174         larger digits indicate more significance.  The variable byteorder
175         is either 4321 on a big-endian machine, or 1234 on a little-endian,
176         or 87654321 on a Cray ... or 3412 with weird order !
177
178 c (n.U):
179         This variable contains the \c string if that is what causes the echo
180         command to suppress newline.  Otherwise it is null.  Correct usage is
181         $echo $n "prompt for a question: $c".
182
183 castflags (d_castneg.U):
184         This variable contains a flag that precise difficulties the
185         compiler has casting odd floating values to unsigned long:
186         0 = ok
187         1 = couldn't cast < 0
188         2 = couldn't cast >= 0x80000000
189         4 = couldn't cast in argument expression list
190
191 cat (Loc.U):
192         This variable is used internally by Configure to determine the
193         full pathname (if any) of the cat program.  After Configure runs,
194         the value is reset to a plain "cat" and is not useful.
195
196 cc (cc.U):
197         This variable holds the name of a command to execute a C compiler which
198         can resolve multiple global references that happen to have the same
199         name.  Usual values are 'cc' and 'gcc'.
200         Fervent ANSI compilers may be called 'c89'.  AIX has xlc.
201
202 cccdlflags (dlsrc.U):
203         This variable contains any special flags that might need to be
204         passed with 'cc -c' to compile modules to be used to create a shared
205         library that will be used for dynamic loading.  For hpux, this
206         should be +z.  It is up to the makefile to use it.
207
208 ccdlflags (dlsrc.U):
209         This variable contains any special flags that might need to be
210         passed to cc to link with a shared library for dynamic loading.
211         It is up to the makefile to use it.  For sunos 4.1, it should
212         be empty.
213
214 ccflags (ccflags.U):
215         This variable contains any additional C compiler flags desired by
216         the user.  It is up to the Makefile to use this.
217
218 ccflags_uselargefiles (uselfs.U):
219         This variable contains the compiler flags needed by large file builds
220         and added to ccflags by hints files.
221
222 ccname (Checkcc.U):
223         This can set either by hints files or by Configure.  If using
224         gcc, this is gcc, and if not, usually equal to cc, unimpressive, no?
225         Some platforms, however, make good use of this by storing the
226         flavor of the C compiler being used here.  For example if using
227         the Sun WorkShop suite, ccname will be 'workshop'.
228
229 ccsymbols (Cppsym.U):
230         The variable contains the symbols defined by the C compiler alone.
231         The symbols defined by cpp or by cc when it calls cpp are not in
232         this list, see cppsymbols and cppccsymbols.
233         The list is a space-separated list of symbol=value tokens.
234
235 ccversion (Checkcc.U):
236         This can set either by hints files or by Configure.  If using
237         a (non-gcc) vendor cc, this variable may contain a version for
238         the compiler.
239
240 cf_by (cf_who.U):
241         Login name of the person who ran the Configure script and answered the
242         questions. This is used to tag both config.sh and config_h.SH.
243
244 cf_email (cf_email.U):
245         Electronic mail address of the person who ran Configure. This can be
246         used by units that require the user's e-mail, like MailList.U.
247
248 cf_time (cf_who.U):
249         Holds the output of the "date" command when the configuration file was
250         produced. This is used to tag both config.sh and config_h.SH.
251
252 charbits (charsize.U):
253         This variable contains the value of the CHARBITS symbol, which
254         indicates to the C program how many bits there are in a character.
255
256 charsize (charsize.U):
257         This variable contains the value of the CHARSIZE symbol, which
258         indicates to the C program how many bytes there are in a character.
259
260 chgrp (Loc.U):
261         This variable is defined but not used by Configure.
262         The value is the empty string and is not useful.
263
264 chmod (Loc.U):
265         This variable is used internally by Configure to determine the
266         full pathname (if any) of the chmod program.  After Configure runs,
267         the value is reset to a plain "chmod" and is not useful.
268
269 chown (Loc.U):
270         This variable is defined but not used by Configure.
271         The value is the empty string and is not useful.
272
273 clocktype (d_times.U):
274         This variable holds the type returned by times(). It can be long,
275         or clock_t on BSD sites (in which case <sys/types.h> should be
276         included).
277
278 comm (Loc.U):
279         This variable is used internally by Configure to determine the
280         full pathname (if any) of the comm program.  After Configure runs,
281         the value is reset to a plain "comm" and is not useful.
282
283 compress (Loc.U):
284         This variable is defined but not used by Configure.
285         The value is the empty string and is not useful.
286
287 config_arg0 (Options.U):
288         This variable contains the string used to invoke the Configure
289         command, as reported by the shell in the $0 variable.
290
291 config_argc (Options.U):
292         This variable contains the number of command-line arguments
293         passed to Configure, as reported by the shell in the $# variable.
294         The individual arguments are stored as variables config_arg1,
295         config_arg2, etc.
296
297 config_args (Options.U):
298         This variable contains a single string giving the command-line
299         arguments passed to Configure.  Spaces within arguments,
300         quotes, and escaped characters are not correctly preserved.
301         To reconstruct the command line, you must assemble the individual
302         command line pieces, given in config_arg[0-9]*.
303
304 contains (contains.U):
305         This variable holds the command to do a grep with a proper return
306         status.  On most sane systems it is simply "grep".  On insane systems
307         it is a grep followed by a cat followed by a test.  This variable
308         is primarily for the use of other Configure units.
309
310 cp (Loc.U):
311         This variable is used internally by Configure to determine the
312         full pathname (if any) of the cp program.  After Configure runs,
313         the value is reset to a plain "cp" and is not useful.
314
315 cpio (Loc.U):
316         This variable is defined but not used by Configure.
317         The value is the empty string and is not useful.
318
319 cpp (Loc.U):
320         This variable is used internally by Configure to determine the
321         full pathname (if any) of the cpp program.  After Configure runs,
322         the value is reset to a plain "cpp" and is not useful.
323
324 cpp_stuff (cpp_stuff.U):
325         This variable contains an identification of the concatenation mechanism
326         used by the C preprocessor.
327
328 cppccsymbols (Cppsym.U):
329         The variable contains the symbols defined by the C compiler
330         when it calls cpp.  The symbols defined by the cc alone or cpp
331         alone are not in this list, see ccsymbols and cppsymbols.
332         The list is a space-separated list of symbol=value tokens.
333
334 cppflags (ccflags.U):
335         This variable holds the flags that will be passed to the C pre-
336         processor. It is up to the Makefile to use it.
337
338 cpplast (cppstdin.U):
339         This variable has the same functionality as cppminus, only it applies
340         to cpprun and not cppstdin.
341
342 cppminus (cppstdin.U):
343         This variable contains the second part of the string which will invoke
344         the C preprocessor on the standard input and produce to standard
345         output.  This variable will have the value "-" if cppstdin needs
346         a minus to specify standard input, otherwise the value is "".
347
348 cpprun (cppstdin.U):
349         This variable contains the command which will invoke a C preprocessor
350         on standard input and put the output to stdout. It is guaranteed not
351         to be a wrapper and may be a null string if no preprocessor can be
352         made directly available. This preprocessor might be different from the
353         one used by the C compiler. Don't forget to append cpplast after the
354         preprocessor options.
355
356 cppstdin (cppstdin.U):
357         This variable contains the command which will invoke the C
358         preprocessor on standard input and put the output to stdout.
359         It is primarily used by other Configure units that ask about
360         preprocessor symbols.
361
362 cppsymbols (Cppsym.U):
363         The variable contains the symbols defined by the C preprocessor
364         alone.  The symbols defined by cc or by cc when it calls cpp are
365         not in this list, see ccsymbols and cppccsymbols.
366         The list is a space-separated list of symbol=value tokens.
367
368 crypt_r_proto (d_crypt_r.U):
369         This variable encodes the prototype of crypt_r.
370         It is zero if d_crypt_r is undef, and one of the
371         REENTRANT_PROTO_T_ABC macros of reentr.h if d_crypt_r
372         is defined.
373
374 cryptlib (d_crypt.U):
375         This variable holds -lcrypt or the path to a libcrypt.a archive if
376         the crypt() function is not defined in the standard C library. It is
377         up to the Makefile to use this.
378
379 csh (Loc.U):
380         This variable is used internally by Configure to determine the
381         full pathname (if any) of the csh program.  After Configure runs,
382         the value is reset to a plain "csh" and is not useful.
383
384 ctermid_r_proto (d_ctermid_r.U):
385         This variable encodes the prototype of ctermid_r.
386         It is zero if d_ctermid_r is undef, and one of the
387         REENTRANT_PROTO_T_ABC macros of reentr.h if d_ctermid_r
388         is defined.
389
390 ctime_r_proto (d_ctime_r.U):
391         This variable encodes the prototype of ctime_r.
392         It is zero if d_ctime_r is undef, and one of the
393         REENTRANT_PROTO_T_ABC macros of reentr.h if d_ctime_r
394         is defined.
395
396 d__fwalk (d__fwalk.U):
397         This variable conditionally defines HAS__FWALK if _fwalk() is
398         available to apply a function to all the file handles.
399
400 d_access (d_access.U):
401         This variable conditionally defines HAS_ACCESS if the access() system
402         call is available to check for access permissions using real IDs.
403
404 d_accessx (d_accessx.U):
405         This variable conditionally defines the HAS_ACCESSX symbol, which
406         indicates to the C program that the accessx() routine is available.
407
408 d_acosh (d_acosh.U):
409         This variable conditionally defines the HAS_ACOSH symbol, which
410         indicates to the C program that the acosh() routine is available.
411
412 d_aintl (d_aintl.U):
413         This variable conditionally defines the HAS_AINTL symbol, which
414         indicates to the C program that the aintl() routine is available.
415         If copysignl is also present we can emulate modfl.
416
417 d_alarm (d_alarm.U):
418         This variable conditionally defines the HAS_ALARM symbol, which
419         indicates to the C program that the alarm() routine is available.
420
421 d_archlib (archlib.U):
422         This variable conditionally defines ARCHLIB to hold the pathname
423         of architecture-dependent library files for $package.  If
424         $archlib is the same as $privlib, then this is set to undef.
425
426 d_asctime64 (d_timefuncs64.U):
427         This variable conditionally defines the HAS_ASCTIME64 symbol, which
428         indicates to the C program that the asctime64 () routine is available.
429
430 d_asctime_r (d_asctime_r.U):
431         This variable conditionally defines the HAS_ASCTIME_R symbol,
432         which indicates to the C program that the asctime_r()
433         routine is available.
434
435 d_asinh (d_asinh.U):
436         This variable conditionally defines the HAS_ASINH symbol, which
437         indicates to the C program that the asinh() routine is available.
438
439 d_atanh (d_atanh.U):
440         This variable conditionally defines the HAS_ATANH symbol, which
441         indicates to the C program that the atanh() routine is available.
442
443 d_atolf (atolf.U):
444         This variable conditionally defines the HAS_ATOLF symbol, which
445         indicates to the C program that the atolf() routine is available.
446
447 d_atoll (atoll.U):
448         This variable conditionally defines the HAS_ATOLL symbol, which
449         indicates to the C program that the atoll() routine is available.
450
451 d_attribute_deprecated (d_attribut.U):
452         This variable conditionally defines HASATTRIBUTE_DEPRECATED, which
453         indicates that GCC can handle the attribute for marking deprecated
454         APIs
455
456 d_attribute_format (d_attribut.U):
457         This variable conditionally defines HASATTRIBUTE_FORMAT, which
458         indicates the C compiler can check for printf-like formats.
459
460 d_attribute_malloc (d_attribut.U):
461         This variable conditionally defines HASATTRIBUTE_MALLOC, which
462         indicates the C compiler can understand functions as having
463         malloc-like semantics.
464
465 d_attribute_nonnull (d_attribut.U):
466         This variable conditionally defines HASATTRIBUTE_NONNULL, which
467         indicates that the C compiler can know that certain arguments
468         must not be NULL, and will check accordingly at compile time.
469
470 d_attribute_noreturn (d_attribut.U):
471         This variable conditionally defines HASATTRIBUTE_NORETURN, which
472         indicates that the C compiler can know that certain functions
473         are guaranteed never to return.
474
475 d_attribute_pure (d_attribut.U):
476         This variable conditionally defines HASATTRIBUTE_PURE, which
477         indicates that the C compiler can know that certain functions
478         are "pure" functions, meaning that they have no side effects, and
479         only rely on function input and/or global data for their results.
480
481 d_attribute_unused (d_attribut.U):
482         This variable conditionally defines HASATTRIBUTE_UNUSED, which
483         indicates that the C compiler can know that certain variables
484         and arguments may not always be used, and to not throw warnings
485         if they don't get used.
486
487 d_attribute_warn_unused_result (d_attribut.U):
488         This variable conditionally defines
489         HASATTRIBUTE_WARN_UNUSED_RESULT, which indicates that the C
490         compiler can know that certain functions have a return values
491         that must not be ignored, such as malloc() or open().
492
493 d_backtrace (d_backtrace.U):
494         This variable conditionally defines the HAS_BACKTRACE symbol, which
495         indicates to the C program that the backtrace() routine is available
496         to get a stack trace.
497
498 d_bcmp (d_bcmp.U):
499         This variable conditionally defines the HAS_BCMP symbol if
500         the bcmp() routine is available to compare strings.
501
502 d_bcopy (d_bcopy.U):
503         This variable conditionally defines the HAS_BCOPY symbol if
504         the bcopy() routine is available to copy strings.
505
506 d_bsd (Guess.U):
507         This symbol conditionally defines the symbol BSD when running on a
508         BSD system.
509
510 d_bsdgetpgrp (d_getpgrp.U):
511         This variable conditionally defines USE_BSD_GETPGRP if
512         getpgrp needs one arguments whereas USG one needs none.
513
514 d_bsdsetpgrp (d_setpgrp.U):
515         This variable conditionally defines USE_BSD_SETPGRP if
516         setpgrp needs two arguments whereas USG one needs none.
517         See also d_setpgid for a POSIX interface.
518
519 d_builtin_choose_expr (d_builtin.U):
520         This conditionally defines HAS_BUILTIN_CHOOSE_EXPR, which
521         indicates that the compiler supports __builtin_choose_expr(x,y,z).
522         This built-in function is analogous to the "x?y:z" operator in C,
523         except that the expression returned has its type unaltered by
524         promotion rules. Also, the built-in function does not evaluate
525         the expression that was not chosen.
526
527 d_builtin_expect (d_builtin.U):
528         This conditionally defines HAS_BUILTIN_EXPECT, which indicates
529         that the compiler supports __builtin_expect(exp,c).  You may use
530         __builtin_expect to provide the compiler with branch prediction
531         information.
532
533 d_bzero (d_bzero.U):
534         This variable conditionally defines the HAS_BZERO symbol if
535         the bzero() routine is available to set memory to 0.
536
537 d_c99_variadic_macros (d_c99_variadic.U):
538         This variable conditionally defines the HAS_C99_VARIADIC_MACROS
539         symbol, which indicates to the C program that C99 variadic macros
540         are available.
541
542 d_casti32 (d_casti32.U):
543         This variable conditionally defines CASTI32, which indicates
544         whether the C compiler can cast large floats to 32-bit ints.
545
546 d_castneg (d_castneg.U):
547         This variable conditionally defines CASTNEG, which indicates
548         whether the C compiler can cast negative float to unsigned.
549
550 d_cbrt (d_cbrt.U):
551         This variable conditionally defines the HAS_CBRT symbol, which
552         indicates to the C program that the cbrt() (cube root) function
553         is available.
554
555 d_charvspr (d_vprintf.U):
556         This variable conditionally defines CHARVSPRINTF if this system
557         has vsprintf returning type (char*).  The trend seems to be to
558         declare it as "int vsprintf()".
559
560 d_chown (d_chown.U):
561         This variable conditionally defines the HAS_CHOWN symbol, which
562         indicates to the C program that the chown() routine is available.
563
564 d_chroot (d_chroot.U):
565         This variable conditionally defines the HAS_CHROOT symbol, which
566         indicates to the C program that the chroot() routine is available.
567
568 d_chsize (d_chsize.U):
569         This variable conditionally defines the CHSIZE symbol, which
570         indicates to the C program that the chsize() routine is available
571         to truncate files.  You might need a -lx to get this routine.
572
573 d_class (d_class.U):
574         This variable conditionally defines the HAS_CLASS symbol, which
575         indicates to the C program that the class() routine is available.
576
577 d_clearenv (d_clearenv.U):
578         This variable conditionally defines the HAS_CLEARENV symbol, which
579         indicates to the C program that the clearenv () routine is available.
580
581 d_closedir (d_closedir.U):
582         This variable conditionally defines HAS_CLOSEDIR if closedir() is
583         available.
584
585 d_cmsghdr_s (d_cmsghdr_s.U):
586         This variable conditionally defines the HAS_STRUCT_CMSGHDR symbol,
587         which indicates that the struct cmsghdr is supported.
588
589 d_const (d_const.U):
590         This variable conditionally defines the HASCONST symbol, which
591         indicates to the C program that this C compiler knows about the
592         const type.
593
594 d_copysign (d_copysign.U):
595         This variable conditionally defines the HAS_COPYSIGN symbol, which
596         indicates to the C program that the copysign() routine is available.
597
598 d_copysignl (d_copysignl.U):
599         This variable conditionally defines the HAS_COPYSIGNL symbol, which
600         indicates to the C program that the copysignl() routine is available.
601         If aintl is also present we can emulate modfl.
602
603 d_cplusplus (d_cplusplus.U):
604         This variable conditionally defines the USE_CPLUSPLUS symbol, which
605         indicates that a C++ compiler was used to compiled Perl and will be
606         used to compile extensions.
607
608 d_crypt (d_crypt.U):
609         This variable conditionally defines the CRYPT symbol, which
610         indicates to the C program that the crypt() routine is available
611         to encrypt passwords and the like.
612
613 d_crypt_r (d_crypt_r.U):
614         This variable conditionally defines the HAS_CRYPT_R symbol,
615         which indicates to the C program that the crypt_r()
616         routine is available.
617
618 d_csh (d_csh.U):
619         This variable conditionally defines the CSH symbol, which
620         indicates to the C program that the C-shell exists.
621
622 d_ctermid (d_ctermid.U):
623         This variable conditionally defines CTERMID if ctermid() is
624         available to generate filename for terminal.
625
626 d_ctermid_r (d_ctermid_r.U):
627         This variable conditionally defines the HAS_CTERMID_R symbol,
628         which indicates to the C program that the ctermid_r()
629         routine is available.
630
631 d_ctime64 (d_timefuncs64.U):
632         This variable conditionally defines the HAS_CTIME64 symbol, which
633         indicates to the C program that the ctime64 () routine is available.
634
635 d_ctime_r (d_ctime_r.U):
636         This variable conditionally defines the HAS_CTIME_R symbol,
637         which indicates to the C program that the ctime_r()
638         routine is available.
639
640 d_cuserid (d_cuserid.U):
641         This variable conditionally defines the HAS_CUSERID symbol, which
642         indicates to the C program that the cuserid() routine is available
643         to get character login names.
644
645 d_dbl_dig (d_dbl_dig.U):
646         This variable conditionally defines d_dbl_dig if this system's
647         header files provide DBL_DIG, which is the number of significant
648         digits in a double precision number.
649
650 d_dbminitproto (d_dbminitproto.U):
651         This variable conditionally defines the HAS_DBMINIT_PROTO symbol,
652         which indicates to the C program that the system provides
653         a prototype for the dbminit() function.  Otherwise, it is
654         up to the program to supply one.
655
656 d_difftime (d_difftime.U):
657         This variable conditionally defines the HAS_DIFFTIME symbol, which
658         indicates to the C program that the difftime() routine is available.
659
660 d_difftime64 (d_timefuncs64.U):
661         This variable conditionally defines the HAS_DIFFTIME64 symbol, which
662         indicates to the C program that the difftime64 () routine is available.
663
664 d_dir_dd_fd (d_dir_dd_fd.U):
665         This variable conditionally defines the HAS_DIR_DD_FD symbol, which
666         indicates that the DIR directory stream type contains a member
667         variable called dd_fd.
668
669 d_dirfd (d_dirfd.U):
670         This variable conditionally defines the HAS_DIRFD constant,
671         which indicates to the C program that dirfd() is available
672         to return the file descriptor of a directory stream.
673
674 d_dirnamlen (i_dirent.U):
675         This variable conditionally defines DIRNAMLEN, which indicates
676         to the C program that the length of directory entry names is
677         provided by a d_namelen field.
678
679 d_dladdr (d_dladdr.U):
680         This variable conditionally defines the HAS_DLADDR symbol, which
681         indicates to the C program that the dladdr() routine is available
682         to get a stack trace.
683
684 d_dlerror (d_dlerror.U):
685         This variable conditionally defines the HAS_DLERROR symbol, which
686         indicates to the C program that the dlerror() routine is available.
687
688 d_dlopen (d_dlopen.U):
689         This variable conditionally defines the HAS_DLOPEN symbol, which
690         indicates to the C program that the dlopen() routine is available.
691
692 d_dlsymun (d_dlsymun.U):
693         This variable conditionally defines DLSYM_NEEDS_UNDERSCORE, which
694         indicates that we need to prepend an underscore to the symbol
695         name before calling dlsym().
696
697 d_dosuid (d_dosuid.U):
698         This variable conditionally defines the symbol DOSUID, which
699         tells the C program that it should insert setuid emulation code
700         on hosts which have setuid #! scripts disabled.
701
702 d_double_has_inf (longdblfio.U):
703         This variable conditionally defines the symbol DOUBLE_HAS_INF
704         which indicates that the double type has an infinity.
705
706 d_double_has_nan (longdblfio.U):
707         This variable conditionally defines the symbol DOUBLE_HAS_INF
708         which indicates that the double type has a not-a-number.
709
710 d_double_has_negative_zero (longdblfio.U):
711         This variable conditionally defines the symbol DOUBLE_HAS_NEGATIVE_ZERO
712         which indicates that the double type has a negative zero.
713
714 d_double_has_subnormals (longdblfio.U):
715         This variable conditionally defines the symbol DOUBLE_HAS_SUBNORMALS
716         which indicates that the double type has subnormals (denormals).
717
718 d_double_style_cray (longdblfio.U):
719         This variable conditionally defines the symbol DOUBLE_STYLE_CRAY
720         which indicates that the double is the 64-bit CRAY mainframe format.
721
722 d_double_style_ibm (longdblfio.U):
723         This variable conditionally defines the symbol DOUBLE_STYLE_IBM,
724         which indicates that the double is the 64-bit IBM mainframe format.
725
726 d_double_style_ieee (longdblfio.U):
727         This variable conditionally defines the symbol DOUBLE_STYLE_IEEE,
728         which indicates that the double is the 64-bit IEEE 754.
729
730 d_double_style_vax (longdblfio.U):
731         This variable conditionally defines the symbol DOUBLE_STYLE_VAX,
732         which indicates that the double is the 64-bit VAX format D or G.
733
734 d_drand48_r (d_drand48_r.U):
735         This variable conditionally defines the HAS_DRAND48_R symbol,
736         which indicates to the C program that the drand48_r()
737         routine is available.
738
739 d_drand48proto (d_drand48proto.U):
740         This variable conditionally defines the HAS_DRAND48_PROTO symbol,
741         which indicates to the C program that the system provides
742         a prototype for the drand48() function.  Otherwise, it is
743         up to the program to supply one.
744
745 d_dup2 (d_dup2.U):
746         This variable conditionally defines HAS_DUP2 if dup2() is
747         available to duplicate file descriptors.
748
749 d_duplocale (d_newlocale.U):
750         This variable conditionally defines the HAS_DUPLOCALE symbol, which
751         indicates to the C program that the duplocale() routine is available
752         to duplicate a locale object.
753
754 d_eaccess (d_eaccess.U):
755         This variable conditionally defines the HAS_EACCESS symbol, which
756         indicates to the C program that the eaccess() routine is available.
757
758 d_endgrent (d_endgrent.U):
759         This variable conditionally defines the HAS_ENDGRENT symbol, which
760         indicates to the C program that the endgrent() routine is available
761         for sequential access of the group database.
762
763 d_endgrent_r (d_endgrent_r.U):
764         This variable conditionally defines the HAS_ENDGRENT_R symbol,
765         which indicates to the C program that the endgrent_r()
766         routine is available.
767
768 d_endhent (d_endhent.U):
769         This variable conditionally defines HAS_ENDHOSTENT if endhostent() is
770         available to close whatever was being used for host queries.
771
772 d_endhostent_r (d_endhostent_r.U):
773         This variable conditionally defines the HAS_ENDHOSTENT_R symbol,
774         which indicates to the C program that the endhostent_r()
775         routine is available.
776
777 d_endnent (d_endnent.U):
778         This variable conditionally defines HAS_ENDNETENT if endnetent() is
779         available to close whatever was being used for network queries.
780
781 d_endnetent_r (d_endnetent_r.U):
782         This variable conditionally defines the HAS_ENDNETENT_R symbol,
783         which indicates to the C program that the endnetent_r()
784         routine is available.
785
786 d_endpent (d_endpent.U):
787         This variable conditionally defines HAS_ENDPROTOENT if endprotoent() is
788         available to close whatever was being used for protocol queries.
789
790 d_endprotoent_r (d_endprotoent_r.U):
791         This variable conditionally defines the HAS_ENDPROTOENT_R symbol,
792         which indicates to the C program that the endprotoent_r()
793         routine is available.
794
795 d_endpwent (d_endpwent.U):
796         This variable conditionally defines the HAS_ENDPWENT symbol, which
797         indicates to the C program that the endpwent() routine is available
798         for sequential access of the passwd database.
799
800 d_endpwent_r (d_endpwent_r.U):
801         This variable conditionally defines the HAS_ENDPWENT_R symbol,
802         which indicates to the C program that the endpwent_r()
803         routine is available.
804
805 d_endsent (d_endsent.U):
806         This variable conditionally defines HAS_ENDSERVENT if endservent() is
807         available to close whatever was being used for service queries.
808
809 d_endservent_r (d_endservent_r.U):
810         This variable conditionally defines the HAS_ENDSERVENT_R symbol,
811         which indicates to the C program that the endservent_r()
812         routine is available.
813
814 d_eofnblk (nblock_io.U):
815         This variable conditionally defines EOF_NONBLOCK if EOF can be seen
816         when reading from a non-blocking I/O source.
817
818 d_erf (d_erf.U):
819         This variable conditionally defines the HAS_ERF symbol, which
820         indicates to the C program that the erf() routine is available.
821
822 d_erfc (d_erfc.U):
823         This variable conditionally defines the HAS_ERFC symbol, which
824         indicates to the C program that the erfc() routine is available.
825
826 d_eunice (Guess.U):
827         This variable conditionally defines the symbols EUNICE and VAX, which
828         alerts the C program that it must deal with idiosyncrasies of VMS.
829
830 d_exp2 (d_exp2.U):
831         This variable conditionally defines the HAS_EXP2 symbol, which
832         indicates to the C program that the exp2() routine is available.
833
834 d_expm1 (d_expm1.U):
835         This variable conditionally defines the HAS_EXPM1 symbol, which
836         indicates to the C program that the expm1() routine is available.
837
838 d_faststdio (d_faststdio.U):
839         This variable conditionally defines the HAS_FAST_STDIO symbol,
840         which indicates to the C program that the "fast stdio" is available
841         to manipulate the stdio buffers directly.
842
843 d_fchdir (d_fchdir.U):
844         This variable conditionally defines the HAS_FCHDIR symbol, which
845         indicates to the C program that the fchdir() routine is available.
846
847 d_fchmod (d_fchmod.U):
848         This variable conditionally defines the HAS_FCHMOD symbol, which
849         indicates to the C program that the fchmod() routine is available
850         to change mode of opened files.
851
852 d_fchmodat (d_fsat.U):
853         This variable conditionally defines the HAS_FCHMODAT symbol, which
854         indicates the POSIX fchmodat() function is available.
855
856 d_fchown (d_fchown.U):
857         This variable conditionally defines the HAS_FCHOWN symbol, which
858         indicates to the C program that the fchown() routine is available
859         to change ownership of opened files.
860
861 d_fcntl (d_fcntl.U):
862         This variable conditionally defines the HAS_FCNTL symbol, and indicates
863         whether the fcntl() function exists
864
865 d_fcntl_can_lock (d_fcntl_can_lock.U):
866         This variable conditionally defines the FCNTL_CAN_LOCK symbol
867         and indicates whether file locking with fcntl() works.
868
869 d_fd_macros (d_fd_set.U):
870         This variable contains the eventual value of the HAS_FD_MACROS symbol,
871         which indicates if your C compiler knows about the macros which
872         manipulate an fd_set.
873
874 d_fd_set (d_fd_set.U):
875         This variable contains the eventual value of the HAS_FD_SET symbol,
876         which indicates if your C compiler knows about the fd_set typedef.
877
878 d_fdclose (d_fdclose.U):
879         This variable conditionally defines the HAS_FDCLOSE symbol, which
880         indicates to the C program that the fdclose() routine is available.
881
882 d_fdim (d_fdim.U):
883         This variable conditionally defines the HAS_FDIM symbol, which
884         indicates to the C program that the fdim() routine is available.
885
886 d_fds_bits (d_fd_set.U):
887         This variable contains the eventual value of the HAS_FDS_BITS symbol,
888         which indicates if your fd_set typedef contains the fds_bits member.
889         If you have an fd_set typedef, but the dweebs who installed it did
890         a half-fast job and neglected to provide the macros to manipulate
891         an fd_set, HAS_FDS_BITS will let us know how to fix the gaffe.
892
893 d_fegetround (d_fegetround.U):
894         This variable conditionally defines HAS_FEGETROUND if fegetround() is
895         available to get the floating point rounding mode.
896
897 d_fgetpos (d_fgetpos.U):
898         This variable conditionally defines HAS_FGETPOS if fgetpos() is
899         available to get the file position indicator.
900
901 d_finite (d_finite.U):
902         This variable conditionally defines the HAS_FINITE symbol, which
903         indicates to the C program that the finite() routine is available.
904
905 d_finitel (d_finitel.U):
906         This variable conditionally defines the HAS_FINITEL symbol, which
907         indicates to the C program that the finitel() routine is available.
908
909 d_flexfnam (d_flexfnam.U):
910         This variable conditionally defines the FLEXFILENAMES symbol, which
911         indicates that the system supports filenames longer than 14 characters.
912
913 d_flock (d_flock.U):
914         This variable conditionally defines HAS_FLOCK if flock() is
915         available to do file locking.
916
917 d_flockproto (d_flockproto.U):
918         This variable conditionally defines the HAS_FLOCK_PROTO symbol,
919         which indicates to the C program that the system provides
920         a prototype for the flock() function.  Otherwise, it is
921         up to the program to supply one.
922
923 d_fma (d_fma.U):
924         This variable conditionally defines the HAS_FMA symbol, which
925         indicates to the C program that the fma() routine is available.
926
927 d_fmax (d_fmax.U):
928         This variable conditionally defines the HAS_FMAX symbol, which
929         indicates to the C program that the fmax() routine is available.
930
931 d_fmin (d_fmin.U):
932         This variable conditionally defines the HAS_FMIN symbol, which
933         indicates to the C program that the fmin() routine is available.
934
935 d_fork (d_fork.U):
936         This variable conditionally defines the HAS_FORK symbol, which
937         indicates to the C program that the fork() routine is available.
938
939 d_fp_class (d_fp_class.U):
940         This variable conditionally defines the HAS_FP_CLASS symbol, which
941         indicates to the C program that the fp_class() routine is available.
942
943 d_fp_classify (d_fpclassify.U):
944         This variable conditionally defines the HAS_FP_CLASSIFY symbol, which
945         indicates to the C program that the fp_classify() routine is available.
946
947 d_fp_classl (d_fp_classl.U):
948         This variable conditionally defines the HAS_FP_CLASSL symbol, which
949         indicates to the C program that the fp_classl() routine is available.
950
951 d_fpathconf (d_pathconf.U):
952         This variable conditionally defines the HAS_FPATHCONF symbol, which
953         indicates to the C program that the pathconf() routine is available
954         to determine file-system related limits and options associated
955         with a given open file descriptor.
956
957 d_fpclass (d_fpclass.U):
958         This variable conditionally defines the HAS_FPCLASS symbol, which
959         indicates to the C program that the fpclass() routine is available.
960
961 d_fpclassify (d_fpclassify.U):
962         This variable conditionally defines the HAS_FPCLASSIFY symbol, which
963         indicates to the C program that the fpclassify() routine is available.
964
965 d_fpclassl (d_fpclassl.U):
966         This variable conditionally defines the HAS_FPCLASSL symbol, which
967         indicates to the C program that the fpclassl() routine is available.
968
969 d_fpgetround (d_fpgetround.U):
970         This variable conditionally defines HAS_FPGETROUND if fpgetround()
971         is available to get the floating point rounding mode.
972
973 d_fpos64_t (d_fpos64_t.U):
974         This symbol will be defined if the C compiler supports fpos64_t.
975
976 d_freelocale (d_newlocale.U):
977         This variable conditionally defines the HAS_FREELOCALE symbol, which
978         indicates to the C program that the freelocale() routine is available
979         to deallocates the resources associated with a locale object.
980
981 d_frexpl (d_frexpl.U):
982         This variable conditionally defines the HAS_FREXPL symbol, which
983         indicates to the C program that the frexpl() routine is available.
984
985 d_fs_data_s (d_fs_data_s.U):
986         This variable conditionally defines the HAS_STRUCT_FS_DATA symbol,
987         which indicates that the struct fs_data is supported.
988
989 d_fseeko (d_fseeko.U):
990         This variable conditionally defines the HAS_FSEEKO symbol, which
991         indicates to the C program that the fseeko() routine is available.
992
993 d_fsetpos (d_fsetpos.U):
994         This variable conditionally defines HAS_FSETPOS if fsetpos() is
995         available to set the file position indicator.
996
997 d_fstatfs (d_fstatfs.U):
998         This variable conditionally defines the HAS_FSTATFS symbol, which
999         indicates to the C program that the fstatfs() routine is available.
1000
1001 d_fstatvfs (d_statvfs.U):
1002         This variable conditionally defines the HAS_FSTATVFS symbol, which
1003         indicates to the C program that the fstatvfs() routine is available.
1004
1005 d_fsync (d_fsync.U):
1006         This variable conditionally defines the HAS_FSYNC symbol, which
1007         indicates to the C program that the fsync() routine is available.
1008
1009 d_ftello (d_ftello.U):
1010         This variable conditionally defines the HAS_FTELLO symbol, which
1011         indicates to the C program that the ftello() routine is available.
1012
1013 d_ftime (d_ftime.U):
1014         This variable conditionally defines the HAS_FTIME symbol, which indicates
1015         that the ftime() routine exists.  The ftime() routine is basically
1016         a sub-second accuracy clock.
1017
1018 d_futimes (d_futimes.U):
1019         This variable conditionally defines the HAS_FUTIMES symbol, which
1020         indicates to the C program that the futimes() routine is available.
1021
1022 d_gai_strerror (d_gai_strerror.U):
1023         This variable conditionally defines the HAS_GAI_STRERROR symbol
1024         if the gai_strerror() routine is available and can be used to
1025         translate error codes returned by getaddrinfo() into human
1026         readable strings.
1027
1028 d_Gconvert (d_gconvert.U):
1029         This variable holds what Gconvert is defined as to convert
1030         floating point numbers into strings.  By default, Configure
1031         sets this macro to use the first of gconvert, gcvt, or sprintf
1032         that pass sprintf-%g-like behavior tests.  If perl is using
1033         long doubles, the macro uses the first of the following
1034         functions that pass Configure's tests: qgcvt, sprintf (if
1035         Configure knows how to make sprintf format long doubles--see
1036         sPRIgldbl), gconvert, gcvt, and sprintf (casting to double).
1037         The gconvert_preference and gconvert_ld_preference variables
1038         can be used to alter Configure's preferences, for doubles and
1039         long doubles, respectively.  If present, they contain a
1040         space-separated list of one or more of the above function
1041         names in the order they should be tried.
1042
1043         d_Gconvert may be set to override Configure with a platform-
1044         specific function.  If this function expects a double, a
1045         different value may need to be set by the uselongdouble.cbu
1046         call-back unit so that long doubles can be formatted without
1047         loss of precision.
1048
1049 d_gdbm_ndbm_h_uses_prototypes (i_ndbm.U):
1050         This variable conditionally defines the NDBM_H_USES_PROTOTYPES symbol,
1051         which indicates that the gdbm-ndbm.h include file uses real ANSI C
1052         prototypes instead of K&R style function declarations. K&R style
1053         declarations are unsupported in C++, so the include file requires
1054         special handling when using a C++ compiler and this variable is
1055         undefined. Consult the different d_*ndbm_h_uses_prototypes variables
1056         to get the same information for alternative ndbm.h include files.
1057
1058 d_gdbmndbm_h_uses_prototypes (i_ndbm.U):
1059         This variable conditionally defines the NDBM_H_USES_PROTOTYPES symbol,
1060         which indicates that the gdbm/ndbm.h include file uses real ANSI C
1061         prototypes instead of K&R style function declarations. K&R style
1062         declarations are unsupported in C++, so the include file requires
1063         special handling when using a C++ compiler and this variable is
1064         undefined. Consult the different d_*ndbm_h_uses_prototypes variables
1065         to get the same information for alternative ndbm.h include files.
1066
1067 d_getaddrinfo (d_getaddrinfo.U):
1068         This variable conditionally defines the HAS_GETADDRINFO symbol,
1069         which indicates to the C program that the getaddrinfo() function
1070         is available.
1071
1072 d_getcwd (d_getcwd.U):
1073         This variable conditionally defines the HAS_GETCWD symbol, which
1074         indicates to the C program that the getcwd() routine is available
1075         to get the current working directory.
1076
1077 d_getespwnam (d_getespwnam.U):
1078         This variable conditionally defines HAS_GETESPWNAM if getespwnam() is
1079         available to retrieve enhanced (shadow) password entries by name.
1080
1081 d_getfsstat (d_getfsstat.U):
1082         This variable conditionally defines the HAS_GETFSSTAT symbol, which
1083         indicates to the C program that the getfsstat() routine is available.
1084
1085 d_getgrent (d_getgrent.U):
1086         This variable conditionally defines the HAS_GETGRENT symbol, which
1087         indicates to the C program that the getgrent() routine is available
1088         for sequential access of the group database.
1089
1090 d_getgrent_r (d_getgrent_r.U):
1091         This variable conditionally defines the HAS_GETGRENT_R symbol,
1092         which indicates to the C program that the getgrent_r()
1093         routine is available.
1094
1095 d_getgrgid_r (d_getgrgid_r.U):
1096         This variable conditionally defines the HAS_GETGRGID_R symbol,
1097         which indicates to the C program that the getgrgid_r()
1098         routine is available.
1099
1100 d_getgrnam_r (d_getgrnam_r.U):
1101         This variable conditionally defines the HAS_GETGRNAM_R symbol,
1102         which indicates to the C program that the getgrnam_r()
1103         routine is available.
1104
1105 d_getgrps (d_getgrps.U):
1106         This variable conditionally defines the HAS_GETGROUPS symbol, which
1107         indicates to the C program that the getgroups() routine is available
1108         to get the list of process groups.
1109
1110 d_gethbyaddr (d_gethbyad.U):
1111         This variable conditionally defines the HAS_GETHOSTBYADDR symbol, which
1112         indicates to the C program that the gethostbyaddr() routine is available
1113         to look up hosts by their IP addresses.
1114
1115 d_gethbyname (d_gethbynm.U):
1116         This variable conditionally defines the HAS_GETHOSTBYNAME symbol, which
1117         indicates to the C program that the gethostbyname() routine is available
1118         to look up host names in some data base or other.
1119
1120 d_gethent (d_gethent.U):
1121         This variable conditionally defines HAS_GETHOSTENT if gethostent() is
1122         available to look up host names in some data base or another.
1123
1124 d_gethname (d_gethname.U):
1125         This variable conditionally defines the HAS_GETHOSTNAME symbol, which
1126         indicates to the C program that the gethostname() routine may be
1127         used to derive the host name.
1128
1129 d_gethostbyaddr_r (d_gethostbyaddr_r.U):
1130         This variable conditionally defines the HAS_GETHOSTBYADDR_R symbol,
1131         which indicates to the C program that the gethostbyaddr_r()
1132         routine is available.
1133
1134 d_gethostbyname_r (d_gethostbyname_r.U):
1135         This variable conditionally defines the HAS_GETHOSTBYNAME_R symbol,
1136         which indicates to the C program that the gethostbyname_r()
1137         routine is available.
1138
1139 d_gethostent_r (d_gethostent_r.U):
1140         This variable conditionally defines the HAS_GETHOSTENT_R symbol,
1141         which indicates to the C program that the gethostent_r()
1142         routine is available.
1143
1144 d_gethostprotos (d_gethostprotos.U):
1145         This variable conditionally defines the HAS_GETHOST_PROTOS symbol,
1146         which indicates to the C program that <netdb.h> supplies
1147         prototypes for the various gethost*() functions.
1148         See also netdbtype.U for probing for various netdb types.
1149
1150 d_getitimer (d_getitimer.U):
1151         This variable conditionally defines the HAS_GETITIMER symbol, which
1152         indicates to the C program that the getitimer() routine is available.
1153
1154 d_getlogin (d_getlogin.U):
1155         This variable conditionally defines the HAS_GETLOGIN symbol, which
1156         indicates to the C program that the getlogin() routine is available
1157         to get the login name.
1158
1159 d_getlogin_r (d_getlogin_r.U):
1160         This variable conditionally defines the HAS_GETLOGIN_R symbol,
1161         which indicates to the C program that the getlogin_r()
1162         routine is available.
1163
1164 d_getmnt (d_getmnt.U):
1165         This variable conditionally defines the HAS_GETMNT symbol, which
1166         indicates to the C program that the getmnt() routine is available
1167         to retrieve one or more mount info blocks by filename.
1168
1169 d_getmntent (d_getmntent.U):
1170         This variable conditionally defines the HAS_GETMNTENT symbol, which
1171         indicates to the C program that the getmntent() routine is available
1172         to iterate through mounted files to get their mount info.
1173
1174 d_getnameinfo (d_getnameinfo.U):
1175         This variable conditionally defines the HAS_GETNAMEINFO symbol,
1176         which indicates to the C program that the getnameinfo() function
1177         is available.
1178
1179 d_getnbyaddr (d_getnbyad.U):
1180         This variable conditionally defines the HAS_GETNETBYADDR symbol, which
1181         indicates to the C program that the getnetbyaddr() routine is available
1182         to look up networks by their IP addresses.
1183
1184 d_getnbyname (d_getnbynm.U):
1185         This variable conditionally defines the HAS_GETNETBYNAME symbol, which
1186         indicates to the C program that the getnetbyname() routine is available
1187         to look up networks by their names.
1188
1189 d_getnent (d_getnent.U):
1190         This variable conditionally defines HAS_GETNETENT if getnetent() is
1191         available to look up network names in some data base or another.
1192
1193 d_getnetbyaddr_r (d_getnetbyaddr_r.U):
1194         This variable conditionally defines the HAS_GETNETBYADDR_R symbol,
1195         which indicates to the C program that the getnetbyaddr_r()
1196         routine is available.
1197
1198 d_getnetbyname_r (d_getnetbyname_r.U):
1199         This variable conditionally defines the HAS_GETNETBYNAME_R symbol,
1200         which indicates to the C program that the getnetbyname_r()
1201         routine is available.
1202
1203 d_getnetent_r (d_getnetent_r.U):
1204         This variable conditionally defines the HAS_GETNETENT_R symbol,
1205         which indicates to the C program that the getnetent_r()
1206         routine is available.
1207
1208 d_getnetprotos (d_getnetprotos.U):
1209         This variable conditionally defines the HAS_GETNET_PROTOS symbol,
1210         which indicates to the C program that <netdb.h> supplies
1211         prototypes for the various getnet*() functions.
1212         See also netdbtype.U for probing for various netdb types.
1213
1214 d_getpagsz (d_getpagsz.U):
1215         This variable conditionally defines HAS_GETPAGESIZE if getpagesize()
1216         is available to get the system page size.
1217
1218 d_getpbyname (d_getprotby.U):
1219         This variable conditionally defines the HAS_GETPROTOBYNAME
1220         symbol, which indicates to the C program that the
1221         getprotobyname() routine is available to look up protocols
1222         by their name.
1223
1224 d_getpbynumber (d_getprotby.U):
1225         This variable conditionally defines the HAS_GETPROTOBYNUMBER
1226         symbol, which indicates to the C program that the
1227         getprotobynumber() routine is available to look up protocols
1228         by their number.
1229
1230 d_getpent (d_getpent.U):
1231         This variable conditionally defines HAS_GETPROTOENT if getprotoent() is
1232         available to look up protocols in some data base or another.
1233
1234 d_getpgid (d_getpgid.U):
1235         This variable conditionally defines the HAS_GETPGID symbol, which
1236         indicates to the C program that the getpgid(pid) function
1237         is available to get the process group id.
1238
1239 d_getpgrp (d_getpgrp.U):
1240         This variable conditionally defines HAS_GETPGRP if getpgrp() is
1241         available to get the current process group.
1242
1243 d_getpgrp2 (d_getpgrp2.U):
1244         This variable conditionally defines the HAS_GETPGRP2 symbol, which
1245         indicates to the C program that the getpgrp2() (as in DG/UX) routine
1246         is available to get the current process group.
1247
1248 d_getppid (d_getppid.U):
1249         This variable conditionally defines the HAS_GETPPID symbol, which
1250         indicates to the C program that the getppid() routine is available
1251         to get the parent process ID.
1252
1253 d_getprior (d_getprior.U):
1254         This variable conditionally defines HAS_GETPRIORITY if getpriority()
1255         is available to get a process's priority.
1256
1257 d_getprotobyname_r (d_getprotobyname_r.U):
1258         This variable conditionally defines the HAS_GETPROTOBYNAME_R symbol,
1259         which indicates to the C program that the getprotobyname_r()
1260         routine is available.
1261
1262 d_getprotobynumber_r (d_getprotobynumber_r.U):
1263         This variable conditionally defines the HAS_GETPROTOBYNUMBER_R symbol,
1264         which indicates to the C program that the getprotobynumber_r()
1265         routine is available.
1266
1267 d_getprotoent_r (d_getprotoent_r.U):
1268         This variable conditionally defines the HAS_GETPROTOENT_R symbol,
1269         which indicates to the C program that the getprotoent_r()
1270         routine is available.
1271
1272 d_getprotoprotos (d_getprotoprotos.U):
1273         This variable conditionally defines the HAS_GETPROTO_PROTOS symbol,
1274         which indicates to the C program that <netdb.h> supplies
1275         prototypes for the various getproto*() functions.
1276         See also netdbtype.U for probing for various netdb types.
1277
1278 d_getprpwnam (d_getprpwnam.U):
1279         This variable conditionally defines HAS_GETPRPWNAM if getprpwnam() is
1280         available to retrieve protected (shadow) password entries by name.
1281
1282 d_getpwent (d_getpwent.U):
1283         This variable conditionally defines the HAS_GETPWENT symbol, which
1284         indicates to the C program that the getpwent() routine is available
1285         for sequential access of the passwd database.
1286
1287 d_getpwent_r (d_getpwent_r.U):
1288         This variable conditionally defines the HAS_GETPWENT_R symbol,
1289         which indicates to the C program that the getpwent_r()
1290         routine is available.
1291
1292 d_getpwnam_r (d_getpwnam_r.U):
1293         This variable conditionally defines the HAS_GETPWNAM_R symbol,
1294         which indicates to the C program that the getpwnam_r()
1295         routine is available.
1296
1297 d_getpwuid_r (d_getpwuid_r.U):
1298         This variable conditionally defines the HAS_GETPWUID_R symbol,
1299         which indicates to the C program that the getpwuid_r()
1300         routine is available.
1301
1302 d_getsbyname (d_getsrvby.U):
1303         This variable conditionally defines the HAS_GETSERVBYNAME
1304         symbol, which indicates to the C program that the
1305         getservbyname() routine is available to look up services
1306         by their name.
1307
1308 d_getsbyport (d_getsrvby.U):
1309         This variable conditionally defines the HAS_GETSERVBYPORT
1310         symbol, which indicates to the C program that the
1311         getservbyport() routine is available to look up services
1312         by their port.
1313
1314 d_getsent (d_getsent.U):
1315         This variable conditionally defines HAS_GETSERVENT if getservent() is
1316         available to look up network services in some data base or another.
1317
1318 d_getservbyname_r (d_getservbyname_r.U):
1319         This variable conditionally defines the HAS_GETSERVBYNAME_R symbol,
1320         which indicates to the C program that the getservbyname_r()
1321         routine is available.
1322
1323 d_getservbyport_r (d_getservbyport_r.U):
1324         This variable conditionally defines the HAS_GETSERVBYPORT_R symbol,
1325         which indicates to the C program that the getservbyport_r()
1326         routine is available.
1327
1328 d_getservent_r (d_getservent_r.U):
1329         This variable conditionally defines the HAS_GETSERVENT_R symbol,
1330         which indicates to the C program that the getservent_r()
1331         routine is available.
1332
1333 d_getservprotos (d_getservprotos.U):
1334         This variable conditionally defines the HAS_GETSERV_PROTOS symbol,
1335         which indicates to the C program that <netdb.h> supplies
1336         prototypes for the various getserv*() functions.
1337         See also netdbtype.U for probing for various netdb types.
1338
1339 d_getspnam (d_getspnam.U):
1340         This variable conditionally defines HAS_GETSPNAM if getspnam() is
1341         available to retrieve SysV shadow password entries by name.
1342
1343 d_getspnam_r (d_getspnam_r.U):
1344         This variable conditionally defines the HAS_GETSPNAM_R symbol,
1345         which indicates to the C program that the getspnam_r()
1346         routine is available.
1347
1348 d_gettimeod (d_ftime.U):
1349         This variable conditionally defines the HAS_GETTIMEOFDAY symbol, which
1350         indicates that the gettimeofday() system call exists (to obtain a
1351         sub-second accuracy clock). You should probably include <sys/resource.h>.
1352
1353 d_gmtime64 (d_timefuncs64.U):
1354         This variable conditionally defines the HAS_GMTIME64 symbol, which
1355         indicates to the C program that the gmtime64 () routine is available.
1356
1357 d_gmtime_r (d_gmtime_r.U):
1358         This variable conditionally defines the HAS_GMTIME_R symbol,
1359         which indicates to the C program that the gmtime_r()
1360         routine is available.
1361
1362 d_gnulibc (d_gnulibc.U):
1363         Defined if we're dealing with the GNU C Library.
1364
1365 d_grpasswd (i_grp.U):
1366         This variable conditionally defines GRPASSWD, which indicates
1367         that struct group in <grp.h> contains gr_passwd.
1368
1369 d_hasmntopt (d_hasmntopt.U):
1370         This variable conditionally defines the HAS_HASMNTOPT symbol, which
1371         indicates to the C program that the hasmntopt() routine is available
1372         to query the mount options of file systems.
1373
1374 d_htonl (d_htonl.U):
1375         This variable conditionally defines HAS_HTONL if htonl() and its
1376         friends are available to do network order byte swapping.
1377
1378 d_hypot (d_hypot.U):
1379         This variable conditionally defines HAS_HYPOT if hypot is available
1380         for numerically stable hypotenuse function.
1381
1382 d_ilogb (d_ilogb.U):
1383         This variable conditionally defines the HAS_ILOGB symbol, which
1384         indicates to the C program that the ilogb() routine is available
1385         for extracting the exponent of double x as a signed integer.
1386
1387 d_ilogbl (d_ilogbl.U):
1388         This variable conditionally defines the HAS_ILOGBL symbol, which
1389         indicates to the C program that the ilogbl() routine is available
1390         for extracting the exponent of long double x as a signed integer.
1391         If scalbnl is also present we can emulate frexpl.
1392
1393 d_inc_version_list (inc_version_list.U):
1394         This variable conditionally defines PERL_INC_VERSION_LIST.
1395         It is set to undef when PERL_INC_VERSION_LIST is empty.
1396
1397 d_index (d_strchr.U):
1398         This variable conditionally defines HAS_INDEX if index() and
1399         rindex() are available for string searching.
1400
1401 d_inetaton (d_inetaton.U):
1402         This variable conditionally defines the HAS_INET_ATON symbol, which
1403         indicates to the C program that the inet_aton() function is available
1404         to parse IP address "dotted-quad" strings.
1405
1406 d_inetntop (d_inetntop.U):
1407         This variable conditionally defines the HAS_INETNTOP symbol,
1408         which indicates to the C program that the inet_ntop() function
1409         is available.
1410
1411 d_inetpton (d_inetpton.U):
1412         This variable conditionally defines the HAS_INETPTON symbol,
1413         which indicates to the C program that the inet_pton() function
1414         is available.
1415
1416 d_int64_t (d_int64_t.U):
1417         This symbol will be defined if the C compiler supports int64_t.
1418
1419 d_ip_mreq (d_socket.U):
1420         This variable conditionally defines the HAS_IP_MREQ symbol, which
1421         indicates the availability of a struct ip_mreq.
1422
1423 d_ip_mreq_source (d_socket.U):
1424         This variable conditionally defines the HAS_IP_MREQ_SOURCE symbol,
1425         which indicates the availability of a struct ip_mreq_source.
1426
1427 d_ipv6_mreq (d_socket.U):
1428         This variable conditionally defines the HAS_IPV6_MREQ symbol, which
1429         indicates the availability of a struct ipv6_mreq.
1430
1431 d_ipv6_mreq_source (d_socket.U):
1432         This variable conditionally defines the HAS_IPV6_MREQ_SOURCE symbol,
1433         which indicates the availability of a struct ipv6_mreq_source.
1434
1435 d_isascii (d_isascii.U):
1436         This variable conditionally defines the HAS_ISASCII constant,
1437         which indicates to the C program that isascii() is available.
1438
1439 d_isblank (d_isblank.U):
1440         This variable conditionally defines the HAS_ISBLANK constant,
1441         which indicates to the C program that isblank() is available.
1442
1443 d_isfinite (d_isfinite.U):
1444         This variable conditionally defines the HAS_ISFINITE symbol, which
1445         indicates to the C program that the isfinite() routine is available.
1446
1447 d_isfinitel (d_isfinitel.U):
1448         This variable conditionally defines the HAS_ISFINITEL symbol, which
1449         indicates to the C program that the isfinitel() routine is available.
1450
1451 d_isinf (d_isinf.U):
1452         This variable conditionally defines the HAS_ISINF symbol, which
1453         indicates to the C program that the isinf() routine is available.
1454
1455 d_isinfl (d_isinfl.U):
1456         This variable conditionally defines the HAS_ISINFL symbol, which
1457         indicates to the C program that the isinfl() routine is available.
1458
1459 d_isless (d_isless.U):
1460         This variable conditionally defines the HAS_ISLESS symbol, which
1461         indicates to the C program that the isless() routine is available.
1462
1463 d_isnan (d_isnan.U):
1464         This variable conditionally defines the HAS_ISNAN symbol, which
1465         indicates to the C program that the isnan() routine is available.
1466
1467 d_isnanl (d_isnanl.U):
1468         This variable conditionally defines the HAS_ISNANL symbol, which
1469         indicates to the C program that the isnanl() routine is available.
1470
1471 d_isnormal (d_isnormal.U):
1472         This variable conditionally defines the HAS_ISNORMAL symbol, which
1473         indicates to the C program that the isnormal() routine is available.
1474
1475 d_j0 (d_j0.U):
1476         This variable conditionally defines the HAS_J0 symbol, which
1477         indicates to the C program that the j0() routine is available.
1478
1479 d_j0l (d_j0.U):
1480         This variable conditionally defines the HAS_J0L symbol, which
1481         indicates to the C program that the j0l() routine is available.
1482
1483 d_killpg (d_killpg.U):
1484         This variable conditionally defines the HAS_KILLPG symbol, which
1485         indicates to the C program that the killpg() routine is available
1486         to kill process groups.
1487
1488 d_lc_monetary_2008 (d_lc_monetary_2008.U):
1489         This variable conditionally defines HAS_LC_MONETARY_2008 if libc
1490         has the international currency locale rules from POSIX
1491         1003.1-2008.
1492
1493 d_lchown (d_lchown.U):
1494         This variable conditionally defines the HAS_LCHOWN symbol, which
1495         indicates to the C program that the lchown() routine is available
1496         to operate on a symbolic link (instead of following the link).
1497
1498 d_ldbl_dig (d_ldbl_dig.U):
1499         This variable conditionally defines d_ldbl_dig if this system's
1500         header files provide LDBL_DIG, which is the number of significant
1501         digits in a long double precision number.
1502
1503 d_ldexpl (d_longdbl.U):
1504         This variable conditionally defines the HAS_LDEXPL symbol, which
1505         indicates to the C program that the ldexpl() routine is available.
1506
1507 d_lgamma (d_lgamma.U):
1508         This variable conditionally defines the HAS_LGAMMA symbol, which
1509         indicates to the C program that the lgamma() routine is available
1510         for the log gamma function.  See also d_tgamma and d_lgamma_r.
1511
1512 d_lgamma_r (d_lgamma_r.U):
1513         This variable conditionally defines the HAS_LGAMMA_R symbol, which
1514         indicates to the C program that the lgamma_r() routine is available
1515         for the log gamma function, without using the global signgam variable.
1516
1517 d_libm_lib_version (d_libm_lib_version.U):
1518         This variable conditionally defines the LIBM_LIB_VERSION symbol,
1519         which indicates to the C program that math.h defines _LIB_VERSION
1520         being available in libm
1521
1522 d_libname_unique (so.U):
1523         This variable is defined if the target system insists on unique
1524         basenames for shared library files. This is currently true on Android,
1525         false everywhere else we know of.
1526         Defaults to 'undef'.
1527
1528 d_link (d_link.U):
1529         This variable conditionally defines HAS_LINK if link() is
1530         available to create hard links.
1531
1532 d_linkat (d_fsat.U):
1533         This variable conditionally defines the HAS_LINKAT symbol, which
1534         indicates the POSIX linkat() function is available.
1535
1536 d_llrint (d_llrint.U):
1537         This variable conditionally defines the HAS_LLRINT symbol, which
1538         indicates to the C program that the llrint() routine is available
1539         to return the long long value closest to a double (according
1540         to the current rounding mode).
1541
1542 d_llrintl (d_llrintl.U):
1543         This variable conditionally defines the HAS_LLRINTL symbol, which
1544         indicates to the C program that the llrintl() routine is available
1545         to return the long long value closest to a long double (according
1546         to the current rounding mode).
1547
1548 d_llround (d_llround.U):
1549         This variable conditionally defines the HAS_LLROUND symbol, which
1550         indicates to the C program that the llround() routine is available
1551         to return the long long value nearest to x.
1552
1553 d_llroundl (d_llroundl.U):
1554         This variable conditionally defines the HAS_LLROUNDL symbol, which
1555         indicates to the C program that the llroundl() routine is available
1556         to return the long long value nearest to x away from zero.
1557
1558 d_localtime64 (d_timefuncs64.U):
1559         This variable conditionally defines the HAS_LOCALTIME64 symbol, which
1560         indicates to the C program that the localtime64 () routine is available.
1561
1562 d_localtime_r (d_localtime_r.U):
1563         This variable conditionally defines the HAS_LOCALTIME_R symbol,
1564         which indicates to the C program that the localtime_r()
1565         routine is available.
1566
1567 d_localtime_r_needs_tzset (d_localtime_r.U):
1568         This variable conditionally defines the LOCALTIME_R_NEEDS_TZSET
1569         symbol, which makes us call tzset before localtime_r()
1570
1571 d_locconv (d_locconv.U):
1572         This variable conditionally defines HAS_LOCALECONV if localeconv() is
1573         available for numeric and monetary formatting conventions.
1574
1575 d_lockf (d_lockf.U):
1576         This variable conditionally defines HAS_LOCKF if lockf() is
1577         available to do file locking.
1578
1579 d_log1p (d_log1p.U):
1580         This variable conditionally defines the HAS_LOG1P symbol, which
1581         indicates to the C program that the logp1() routine is available
1582         to compute log(1 + x) for values of x close to zero.
1583
1584 d_log2 (d_log2.U):
1585         This variable conditionally defines the HAS_LOG2 symbol, which
1586         indicates to the C program that the log2() routine is available
1587         to compute log base two.
1588
1589 d_logb (d_logb.U):
1590         This variable conditionally defines the HAS_LOGB symbol, which
1591         indicates to the C program that the logb() routine is available
1592         to extract the exponent of x.
1593
1594 d_long_double_style_ieee (d_longdbl.U):
1595         This variable conditionally defines LONG_DOUBLE_STYLE_IEEE
1596         if the long double is any of the IEEE 754 style long doubles:
1597         LONG_DOUBLE_STYLE_IEEE_STD, LONG_DOUBLE_STYLE_IEEE_EXTENDED,
1598         LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE.
1599
1600 d_long_double_style_ieee_doubledouble (d_longdbl.U):
1601         This variable conditionally defines LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE
1602         if the long double is the 128-bit IEEE 754 double-double.
1603
1604 d_long_double_style_ieee_extended (d_longdbl.U):
1605         This variable conditionally defines LONG_DOUBLE_STYLE_IEEE_EXTENDED
1606         if the long double is the 80-bit IEEE 754 extended precision.
1607         Note that despite the 'extended' this is less than the 'std',
1608         since thisis an extension of the double precision.
1609
1610 d_long_double_style_ieee_std (d_longdbl.U):
1611         This variable conditionally defines LONG_DOUBLE_STYLE_IEEE_STD
1612         if the long double is the 128-bit IEEE 754.
1613
1614 d_long_double_style_vax (d_longdbl.U):
1615         This variable conditionally defines LONG_DOUBLE_STYLE_VAX
1616         if the long double is the 128-bit VAX format H.
1617
1618 d_longdbl (d_longdbl.U):
1619         This variable conditionally defines HAS_LONG_DOUBLE if
1620         the long double type is supported.
1621
1622 d_longlong (d_longlong.U):
1623         This variable conditionally defines HAS_LONG_LONG if
1624         the long long type is supported.
1625
1626 d_lrint (d_lrint.U):
1627         This variable conditionally defines the HAS_LRINT symbol, which
1628         indicates to the C program that the lrint() routine is available
1629         to return the integral value closest to a double (according
1630         to the current rounding mode).
1631
1632 d_lrintl (d_lrintl.U):
1633         This variable conditionally defines the HAS_LRINTL symbol, which
1634         indicates to the C program that the lrintl() routine is available
1635         to return the integral value closest to a long double (according
1636         to the current rounding mode).
1637
1638 d_lround (d_lround.U):
1639         This variable conditionally defines the HAS_LROUND symbol, which
1640         indicates to the C program that the lround() routine is available
1641         to return the integral value nearest to x.
1642
1643 d_lroundl (d_lroundl.U):
1644         This variable conditionally defines the HAS_LROUNDL symbol, which
1645         indicates to the C program that the lroundl() routine is available
1646         to return the integral value nearest to x away from zero.
1647
1648 d_lseekproto (d_lseekproto.U):
1649         This variable conditionally defines the HAS_LSEEK_PROTO symbol,
1650         which indicates to the C program that the system provides
1651         a prototype for the lseek() function.  Otherwise, it is
1652         up to the program to supply one.
1653
1654 d_lstat (d_lstat.U):
1655         This variable conditionally defines HAS_LSTAT if lstat() is
1656         available to do file stats on symbolic links.
1657
1658 d_madvise (d_madvise.U):
1659         This variable conditionally defines HAS_MADVISE if madvise() is
1660         available to map a file into memory.
1661
1662 d_malloc_good_size (d_malloc_size.U):
1663         This symbol, if defined, indicates that the malloc_good_size
1664         routine is available for use.
1665
1666 d_malloc_size (d_malloc_size.U):
1667         This symbol, if defined, indicates that the malloc_size
1668         routine is available for use.
1669
1670 d_mblen (d_mblen.U):
1671         This variable conditionally defines the HAS_MBLEN symbol, which
1672         indicates to the C program that the mblen() routine is available
1673         to find the number of bytes in a multibye character.
1674
1675 d_mbstowcs (d_mbstowcs.U):
1676         This variable conditionally defines the HAS_MBSTOWCS symbol, which
1677         indicates to the C program that the mbstowcs() routine is available
1678         to convert a multibyte string into a wide character string.
1679
1680 d_mbtowc (d_mbtowc.U):
1681         This variable conditionally defines the HAS_MBTOWC symbol, which
1682         indicates to the C program that the mbtowc() routine is available
1683         to convert multibyte to a wide character.
1684
1685 d_memchr (d_memchr.U):
1686         This variable conditionally defines the HAS_MEMCHR symbol, which
1687         indicates to the C program that the memchr() routine is available
1688         to locate characters within a C string.
1689
1690 d_memcmp (d_memcmp.U):
1691         This variable conditionally defines the HAS_MEMCMP symbol, which
1692         indicates to the C program that the memcmp() routine is available
1693         to compare blocks of memory.
1694
1695 d_memcpy (d_memcpy.U):
1696         This variable conditionally defines the HAS_MEMCPY symbol, which
1697         indicates to the C program that the memcpy() routine is available
1698         to copy blocks of memory.
1699
1700 d_memmem (d_memmem.U):
1701         This variable conditionally defines the HAS_MEMMEM symbol, which
1702         indicates to the C program that the memmem() routine is available
1703         to return a pointer to the start of the first occurance of a
1704         substring in a memory area (or NULL if not found).
1705
1706 d_memmove (d_memmove.U):
1707         This variable conditionally defines the HAS_MEMMOVE symbol, which
1708         indicates to the C program that the memmove() routine is available
1709         to copy potentially overlapping blocks of memory.
1710
1711 d_memset (d_memset.U):
1712         This variable conditionally defines the HAS_MEMSET symbol, which
1713         indicates to the C program that the memset() routine is available
1714         to set blocks of memory.
1715
1716 d_mkdir (d_mkdir.U):
1717         This variable conditionally defines the HAS_MKDIR symbol, which
1718         indicates to the C program that the mkdir() routine is available
1719         to create directories..
1720
1721 d_mkdtemp (d_mkdtemp.U):
1722         This variable conditionally defines the HAS_MKDTEMP symbol, which
1723         indicates to the C program that the mkdtemp() routine is available
1724         to exclusively create a uniquely named temporary directory.
1725
1726 d_mkfifo (d_mkfifo.U):
1727         This variable conditionally defines the HAS_MKFIFO symbol, which
1728         indicates to the C program that the mkfifo() routine is available.
1729
1730 d_mkstemp (d_mkstemp.U):
1731         This variable conditionally defines the HAS_MKSTEMP symbol, which
1732         indicates to the C program that the mkstemp() routine is available
1733         to exclusively create and open a uniquely named temporary file.
1734
1735 d_mkstemps (d_mkstemps.U):
1736         This variable conditionally defines the HAS_MKSTEMPS symbol, which
1737         indicates to the C program that the mkstemps() routine is available
1738         to exclusively create and open a uniquely named (with a suffix)
1739         temporary file.
1740
1741 d_mktime (d_mktime.U):
1742         This variable conditionally defines the HAS_MKTIME symbol, which
1743         indicates to the C program that the mktime() routine is available.
1744
1745 d_mktime64 (d_timefuncs64.U):
1746         This variable conditionally defines the HAS_MKTIME64 symbol, which
1747         indicates to the C program that the mktime64 () routine is available.
1748
1749 d_mmap (d_mmap.U):
1750         This variable conditionally defines HAS_MMAP if mmap() is
1751         available to map a file into memory.
1752
1753 d_modfl (d_modfl.U):
1754         This variable conditionally defines the HAS_MODFL symbol, which
1755         indicates to the C program that the modfl() routine is available.
1756
1757 d_modflproto (d_modfl.U):
1758         This symbol, if defined, indicates that the system provides
1759         a prototype for the modfl() function.  Otherwise, it is up
1760         to the program to supply one.  C99 says it should be
1761         long double modfl(long double, long double *);
1762
1763 d_mprotect (d_mprotect.U):
1764         This variable conditionally defines HAS_MPROTECT if mprotect() is
1765         available to modify the access protection of a memory mapped file.
1766
1767 d_msg (d_msg.U):
1768         This variable conditionally defines the HAS_MSG symbol, which
1769         indicates that the entire msg*(2) library is present.
1770
1771 d_msg_ctrunc (d_socket.U):
1772         This variable conditionally defines the HAS_MSG_CTRUNC symbol,
1773         which indicates that the MSG_CTRUNC is available.  #ifdef is
1774         not enough because it may be an enum, glibc has been known to do this.
1775
1776 d_msg_dontroute (d_socket.U):
1777         This variable conditionally defines the HAS_MSG_DONTROUTE symbol,
1778         which indicates that the MSG_DONTROUTE is available.  #ifdef is
1779         not enough because it may be an enum, glibc has been known to do this.
1780
1781 d_msg_oob (d_socket.U):
1782         This variable conditionally defines the HAS_MSG_OOB symbol,
1783         which indicates that the MSG_OOB is available.  #ifdef is
1784         not enough because it may be an enum, glibc has been known to do this.
1785
1786 d_msg_peek (d_socket.U):
1787         This variable conditionally defines the HAS_MSG_PEEK symbol,
1788         which indicates that the MSG_PEEK is available.  #ifdef is
1789         not enough because it may be an enum, glibc has been known to do this.
1790
1791 d_msg_proxy (d_socket.U):
1792         This variable conditionally defines the HAS_MSG_PROXY symbol,
1793         which indicates that the MSG_PROXY is available.  #ifdef is
1794         not enough because it may be an enum, glibc has been known to do this.
1795
1796 d_msgctl (d_msgctl.U):
1797         This variable conditionally defines the HAS_MSGCTL symbol, which
1798         indicates to the C program that the msgctl() routine is available.
1799
1800 d_msgget (d_msgget.U):
1801         This variable conditionally defines the HAS_MSGGET symbol, which
1802         indicates to the C program that the msgget() routine is available.
1803
1804 d_msghdr_s (d_msghdr_s.U):
1805         This variable conditionally defines the HAS_STRUCT_MSGHDR symbol,
1806         which indicates that the struct msghdr is supported.
1807
1808 d_msgrcv (d_msgrcv.U):
1809         This variable conditionally defines the HAS_MSGRCV symbol, which
1810         indicates to the C program that the msgrcv() routine is available.
1811
1812 d_msgsnd (d_msgsnd.U):
1813         This variable conditionally defines the HAS_MSGSND symbol, which
1814         indicates to the C program that the msgsnd() routine is available.
1815
1816 d_msync (d_msync.U):
1817         This variable conditionally defines HAS_MSYNC if msync() is
1818         available to synchronize a mapped file.
1819
1820 d_munmap (d_munmap.U):
1821         This variable conditionally defines HAS_MUNMAP if munmap() is
1822         available to unmap a region mapped by mmap().
1823
1824 d_mymalloc (mallocsrc.U):
1825         This variable conditionally defines MYMALLOC in case other parts
1826         of the source want to take special action if MYMALLOC is used.
1827         This may include different sorts of profiling or error detection.
1828
1829 d_nan (d_nan.U):
1830         This variable conditionally defines HAS_NAN if nan() is
1831         available to generate NaN.
1832
1833 d_ndbm (i_ndbm.U):
1834         This variable conditionally defines the HAS_NDBM symbol, which
1835         indicates that both the ndbm.h include file and an appropriate ndbm
1836         library exist.  Consult the different i_*ndbm variables
1837         to find out the actual include location.  Sometimes, a system has the
1838         header file but not the library.  This variable will only be set if
1839         the system has both.
1840
1841 d_ndbm_h_uses_prototypes (i_ndbm.U):
1842         This variable conditionally defines the NDBM_H_USES_PROTOTYPES symbol,
1843         which indicates that the ndbm.h include file uses real ANSI C
1844         prototypes instead of K&R style function declarations. K&R style
1845         declarations are unsupported in C++, so the include file requires
1846         special handling when using a C++ compiler and this variable is
1847         undefined. Consult the different d_*ndbm_h_uses_prototypes variables
1848         to get the same information for alternative ndbm.h include files.
1849
1850 d_nearbyint (d_nearbyint.U):
1851         This variable conditionally defines HAS_NEARBYINT if nearbyint()
1852         is available to return the integral value closest to (according to
1853         the current rounding mode) to x.
1854
1855 d_newlocale (d_newlocale.U):
1856         This variable conditionally defines the HAS_NEWLOCALE symbol, which
1857         indicates to the C program that the newlocale() routine is available
1858         to return a new locale object or modify an existing locale object.
1859
1860 d_nextafter (d_nextafter.U):
1861         This variable conditionally defines HAS_NEXTAFTER if nextafter()
1862         is available to return the next machine representable double from
1863         x in direction y.
1864
1865 d_nexttoward (d_nexttoward.U):
1866         This variable conditionally defines HAS_NEXTTOWARD if nexttoward()
1867         is available to return the next machine representable long double from
1868         x in direction y.
1869
1870 d_nice (d_nice.U):
1871         This variable conditionally defines the HAS_NICE symbol, which
1872         indicates to the C program that the nice() routine is available.
1873
1874 d_nl_langinfo (d_nl_langinfo.U):
1875         This variable conditionally defines the HAS_NL_LANGINFO symbol, which
1876         indicates to the C program that the nl_langinfo() routine is available.
1877
1878 d_nv_preserves_uv (perlxv.U):
1879         This variable indicates whether a variable of type nvtype
1880         can preserve all the bits a variable of type uvtype.
1881
1882 d_nv_zero_is_allbits_zero (perlxv.U):
1883         This variable indicates whether a variable of type nvtype
1884         stores 0.0 in memory as all bits zero.
1885
1886 d_off64_t (d_off64_t.U):
1887         This symbol will be defined if the C compiler supports off64_t.
1888
1889 d_old_pthread_create_joinable (d_pthrattrj.U):
1890         This variable conditionally defines pthread_create_joinable.
1891         undef if pthread.h defines PTHREAD_CREATE_JOINABLE.
1892
1893 d_oldpthreads (usethreads.U):
1894         This variable conditionally defines the OLD_PTHREADS_API symbol,
1895         and indicates that Perl should be built to use the old
1896         draft POSIX threads API.  This is only potentially meaningful if
1897         usethreads is set.
1898
1899 d_oldsock (d_socket.U):
1900         This variable conditionally defines the OLDSOCKET symbol, which
1901         indicates that the BSD socket interface is based on 4.1c and not 4.2.
1902
1903 d_open3 (d_open3.U):
1904         This variable conditionally defines the HAS_OPEN3 manifest constant,
1905         which indicates to the C program that the 3 argument version of
1906         the open(2) function is available.
1907
1908 d_openat (d_fsat.U):
1909         This variable conditionally defines the HAS_OPENAT symbol, which
1910         indicates the POSIX openat() function is available.
1911
1912 d_pathconf (d_pathconf.U):
1913         This variable conditionally defines the HAS_PATHCONF symbol, which
1914         indicates to the C program that the pathconf() routine is available
1915         to determine file-system related limits and options associated
1916         with a given filename.
1917
1918 d_pause (d_pause.U):
1919         This variable conditionally defines the HAS_PAUSE symbol, which
1920         indicates to the C program that the pause() routine is available
1921         to suspend a process until a signal is received.
1922
1923 d_perl_otherlibdirs (otherlibdirs.U):
1924         This variable conditionally defines PERL_OTHERLIBDIRS, which
1925         contains a colon-separated set of paths for the perl binary to
1926         include in @INC.  See also otherlibdirs.
1927
1928 d_phostname (d_gethname.U):
1929         This variable conditionally defines the HAS_PHOSTNAME symbol, which
1930         contains the shell command which, when fed to popen(), may be
1931         used to derive the host name.
1932
1933 d_pipe (d_pipe.U):
1934         This variable conditionally defines the HAS_PIPE symbol, which
1935         indicates to the C program that the pipe() routine is available
1936         to create an inter-process channel.
1937
1938 d_poll (d_poll.U):
1939         This variable conditionally defines the HAS_POLL symbol, which
1940         indicates to the C program that the poll() routine is available
1941         to poll active file descriptors.
1942
1943 d_portable (d_portable.U):
1944         This variable conditionally defines the PORTABLE symbol, which
1945         indicates to the C program that it should not assume that it is
1946         running on the machine it was compiled on.
1947
1948 d_prctl (d_prctl.U):
1949         This variable conditionally defines the HAS_PRCTL symbol, which
1950         indicates to the C program that the prctl() routine is available.
1951         Note that there are at least two prctl variants: Linux and Irix.
1952         While they are somewhat similar, they are incompatible.
1953
1954 d_prctl_set_name (d_prctl.U):
1955         This variable conditionally defines the HAS_PRCTL_SET_NAME symbol,
1956         which indicates to the C program that the prctl() routine supports
1957         the PR_SET_NAME option.
1958
1959 d_PRId64 (quadfio.U):
1960         This variable conditionally defines the PERL_PRId64 symbol, which
1961         indicates that stdio has a symbol to print 64-bit decimal numbers.
1962
1963 d_PRIeldbl (longdblfio.U):
1964         This variable conditionally defines the PERL_PRIfldbl symbol, which
1965         indicates that stdio has a symbol to print long doubles.
1966
1967 d_PRIEUldbl (longdblfio.U):
1968         This variable conditionally defines the PERL_PRIfldbl symbol, which
1969         indicates that stdio has a symbol to print long doubles.
1970         The 'U' in the name is to separate this from d_PRIeldbl so that even
1971         case-blind systems can see the difference.
1972
1973 d_PRIfldbl (longdblfio.U):
1974         This variable conditionally defines the PERL_PRIfldbl symbol, which
1975         indicates that stdio has a symbol to print long doubles.
1976
1977 d_PRIFUldbl (longdblfio.U):
1978         This variable conditionally defines the PERL_PRIfldbl symbol, which
1979         indicates that stdio has a symbol to print long doubles.
1980         The 'U' in the name is to separate this from d_PRIfldbl so that even
1981         case-blind systems can see the difference.
1982
1983 d_PRIgldbl (longdblfio.U):
1984         This variable conditionally defines the PERL_PRIfldbl symbol, which
1985         indicates that stdio has a symbol to print long doubles.
1986
1987 d_PRIGUldbl (longdblfio.U):
1988         This variable conditionally defines the PERL_PRIfldbl symbol, which
1989         indicates that stdio has a symbol to print long doubles.
1990         The 'U' in the name is to separate this from d_PRIgldbl so that even
1991         case-blind systems can see the difference.
1992
1993 d_PRIi64 (quadfio.U):
1994         This variable conditionally defines the PERL_PRIi64 symbol, which
1995         indicates that stdio has a symbol to print 64-bit decimal numbers.
1996
1997 d_printf_format_null (d_attribut.U):
1998         This variable conditionally defines PRINTF_FORMAT_NULL_OK, which
1999         indicates the C compiler allows printf-like formats to be null.
2000
2001 d_PRIo64 (quadfio.U):
2002         This variable conditionally defines the PERL_PRIo64 symbol, which
2003         indicates that stdio has a symbol to print 64-bit octal numbers.
2004
2005 d_PRIu64 (quadfio.U):
2006         This variable conditionally defines the PERL_PRIu64 symbol, which
2007         indicates that stdio has a symbol to print 64-bit unsigned decimal
2008         numbers.
2009
2010 d_PRIx64 (quadfio.U):
2011         This variable conditionally defines the PERL_PRIx64 symbol, which
2012         indicates that stdio has a symbol to print 64-bit hexadecimal numbers.
2013
2014 d_PRIXU64 (quadfio.U):
2015         This variable conditionally defines the PERL_PRIXU64 symbol, which
2016         indicates that stdio has a symbol to print 64-bit hExADECimAl numbers.
2017         The 'U' in the name is to separate this from d_PRIx64 so that even
2018         case-blind systems can see the difference.
2019
2020 d_procselfexe (d_procselfexe.U):
2021         Defined if $procselfexe is symlink to the absolute
2022         pathname of the executing program.
2023
2024 d_pseudofork (d_vfork.U):
2025         This variable conditionally defines the HAS_PSEUDOFORK symbol,
2026         which indicates that an emulation of the fork routine is available.
2027
2028 d_pthread_atfork (d_pthread_atfork.U):
2029         This variable conditionally defines the HAS_PTHREAD_ATFORK symbol,
2030         which indicates to the C program that the pthread_atfork()
2031         routine is available.
2032
2033 d_pthread_attr_setscope (d_pthread_attr_ss.U):
2034         This variable conditionally defines HAS_PTHREAD_ATTR_SETSCOPE if
2035         pthread_attr_setscope() is available to set the contention scope
2036         attribute of a thread attribute object.
2037
2038 d_pthread_yield (d_pthread_y.U):
2039         This variable conditionally defines the HAS_PTHREAD_YIELD
2040         symbol if the pthread_yield routine is available to yield
2041         the execution of the current thread.
2042
2043 d_ptrdiff_t (d_ptrdiff_t.U):
2044         This symbol will be defined if the C compiler supports ptrdiff_t.
2045
2046 d_pwage (i_pwd.U):
2047         This variable conditionally defines PWAGE, which indicates
2048         that struct passwd contains pw_age.
2049
2050 d_pwchange (i_pwd.U):
2051         This variable conditionally defines PWCHANGE, which indicates
2052         that struct passwd contains pw_change.
2053
2054 d_pwclass (i_pwd.U):
2055         This variable conditionally defines PWCLASS, which indicates
2056         that struct passwd contains pw_class.
2057
2058 d_pwcomment (i_pwd.U):
2059         This variable conditionally defines PWCOMMENT, which indicates
2060         that struct passwd contains pw_comment.
2061
2062 d_pwexpire (i_pwd.U):
2063         This variable conditionally defines PWEXPIRE, which indicates
2064         that struct passwd contains pw_expire.
2065
2066 d_pwgecos (i_pwd.U):
2067         This variable conditionally defines PWGECOS, which indicates
2068         that struct passwd contains pw_gecos.
2069
2070 d_pwpasswd (i_pwd.U):
2071         This variable conditionally defines PWPASSWD, which indicates
2072         that struct passwd contains pw_passwd.
2073
2074 d_pwquota (i_pwd.U):
2075         This variable conditionally defines PWQUOTA, which indicates
2076         that struct passwd contains pw_quota.
2077
2078 d_qgcvt (d_qgcvt.U):
2079         This variable conditionally defines the HAS_QGCVT symbol, which
2080         indicates to the C program that the qgcvt() routine is available.
2081
2082 d_quad (quadtype.U):
2083         This variable, if defined, tells that there's a 64-bit integer type,
2084         quadtype.
2085
2086 d_querylocale (d_newlocale.U):
2087         This variable conditionally defines the HAS_QUERYLOCALE symbol, which
2088         indicates to the C program that the querylocale() routine is available
2089         to return the name of the locale for a category mask.
2090
2091 d_random_r (d_random_r.U):
2092         This variable conditionally defines the HAS_RANDOM_R symbol,
2093         which indicates to the C program that the random_r()
2094         routine is available.
2095
2096 d_re_comp (d_regcmp.U):
2097         This variable conditionally defines the HAS_RECOMP symbol, which
2098         indicates to the C program that the re_comp() routine is available
2099         for regular patern matching (usally on BSD). If so, it is likely that
2100         re_exec() exists.
2101
2102 d_readdir (d_readdir.U):
2103         This variable conditionally defines HAS_READDIR if readdir() is
2104         available to read directory entries.
2105
2106 d_readdir64_r (d_readdir64_r.U):
2107         This variable conditionally defines the HAS_READDIR64_R symbol,
2108         which indicates to the C program that the readdir64_r()
2109         routine is available.
2110
2111 d_readdir_r (d_readdir_r.U):
2112         This variable conditionally defines the HAS_READDIR_R symbol,
2113         which indicates to the C program that the readdir_r()
2114         routine is available.
2115
2116 d_readlink (d_readlink.U):
2117         This variable conditionally defines the HAS_READLINK symbol, which
2118         indicates to the C program that the readlink() routine is available
2119         to read the value of a symbolic link.
2120
2121 d_readv (d_readv.U):
2122         This variable conditionally defines the HAS_READV symbol, which
2123         indicates to the C program that the readv() routine is available.
2124
2125 d_recvmsg (d_recvmsg.U):
2126         This variable conditionally defines the HAS_RECVMSG symbol, which
2127         indicates to the C program that the recvmsg() routine is available.
2128
2129 d_regcmp (d_regcmp.U):
2130         This variable conditionally defines the HAS_REGCMP symbol, which
2131         indicates to the C program that the regcmp() routine is available
2132         for regular patern matching (usally on System V).
2133
2134 d_regcomp (d_regcmp.U):
2135         This variable conditionally defines the HAS_REGCOMP symbol, which
2136         indicates to the C program that the regcomp() routine is available
2137         for regular patern matching (usally on POSIX.2 conforming systems).
2138
2139 d_remainder (d_remainder.U):
2140         This variable conditionally defines the HAS_REMAINDER symbol, which
2141         indicates to the C program that the remainder() routine is available.
2142
2143 d_remquo (d_remquo.U):
2144         This variable conditionally defines the HAS_REMQUO symbol, which
2145         indicates to the C program that the remquo() routine is available.
2146
2147 d_rename (d_rename.U):
2148         This variable conditionally defines the HAS_RENAME symbol, which
2149         indicates to the C program that the rename() routine is available
2150         to rename files.
2151
2152 d_renameat (d_fsat.U):
2153         This variable conditionally defines the HAS_RENAMEAT symbol, which
2154         indicates the POSIX renameat() function is available.
2155
2156 d_rewinddir (d_readdir.U):
2157         This variable conditionally defines HAS_REWINDDIR if rewinddir() is
2158         available.
2159
2160 d_rint (d_rint.U):
2161         This variable conditionally defines the HAS_RINT symbol, which
2162         indicates to the C program that the rint() routine is available.
2163
2164 d_rmdir (d_rmdir.U):
2165         This variable conditionally defines HAS_RMDIR if rmdir() is
2166         available to remove directories.
2167
2168 d_round (d_round.U):
2169         This variable conditionally defines the HAS_ROUND symbol, which
2170         indicates to the C program that the round() routine is available.
2171
2172 d_safebcpy (d_safebcpy.U):
2173         This variable conditionally defines the HAS_SAFE_BCOPY symbol if
2174         the bcopy() routine can do overlapping copies.  Normally, you
2175         should probably use memmove().
2176
2177 d_safemcpy (d_safemcpy.U):
2178         This variable conditionally defines the HAS_SAFE_MEMCPY symbol if
2179         the memcpy() routine can do overlapping copies.
2180         For overlapping copies, memmove() should be used, if available.
2181
2182 d_sanemcmp (d_sanemcmp.U):
2183         This variable conditionally defines the HAS_SANE_MEMCMP symbol if
2184         the memcpy() routine is available and can be used to compare relative
2185         magnitudes of chars with their high bits set.
2186
2187 d_sbrkproto (d_sbrkproto.U):
2188         This variable conditionally defines the HAS_SBRK_PROTO symbol,
2189         which indicates to the C program that the system provides
2190         a prototype for the sbrk() function.  Otherwise, it is
2191         up to the program to supply one.
2192
2193 d_scalbn (d_scalbn.U):
2194         This variable conditionally defines the HAS_SCALBN symbol, which
2195         indicates to the C program that the scalbn() routine is available.
2196
2197 d_scalbnl (d_scalbnl.U):
2198         This variable conditionally defines the HAS_SCALBNL symbol, which
2199         indicates to the C program that the scalbnl() routine is available.
2200         If ilogbl is also present we can emulate frexpl.
2201
2202 d_sched_yield (d_pthread_y.U):
2203         This variable conditionally defines the HAS_SCHED_YIELD
2204         symbol if the sched_yield routine is available to yield
2205         the execution of the current thread.
2206
2207 d_scm_rights (d_socket.U):
2208         This variable conditionally defines the HAS_SCM_RIGHTS symbol,
2209         which indicates that the SCM_RIGHTS is available.  #ifdef is
2210         not enough because it may be an enum, glibc has been known to do this.
2211
2212 d_SCNfldbl (longdblfio.U):
2213         This variable conditionally defines the PERL_PRIfldbl symbol, which
2214         indicates that stdio has a symbol to scan long doubles.
2215
2216 d_seekdir (d_readdir.U):
2217         This variable conditionally defines HAS_SEEKDIR if seekdir() is
2218         available.
2219
2220 d_select (d_select.U):
2221         This variable conditionally defines HAS_SELECT if select() is
2222         available to select active file descriptors. A <sys/time.h>
2223         inclusion may be necessary for the timeout field.
2224
2225 d_sem (d_sem.U):
2226         This variable conditionally defines the HAS_SEM symbol, which
2227         indicates that the entire sem*(2) library is present.
2228
2229 d_semctl (d_semctl.U):
2230         This variable conditionally defines the HAS_SEMCTL symbol, which
2231         indicates to the C program that the semctl() routine is available.
2232
2233 d_semctl_semid_ds (d_union_semun.U):
2234         This variable conditionally defines USE_SEMCTL_SEMID_DS, which
2235         indicates that struct semid_ds * is to be used for semctl IPC_STAT.
2236
2237 d_semctl_semun (d_union_semun.U):
2238         This variable conditionally defines USE_SEMCTL_SEMUN, which
2239         indicates that union semun is to be used for semctl IPC_STAT.
2240
2241 d_semget (d_semget.U):
2242         This variable conditionally defines the HAS_SEMGET symbol, which
2243         indicates to the C program that the semget() routine is available.
2244
2245 d_semop (d_semop.U):
2246         This variable conditionally defines the HAS_SEMOP symbol, which
2247         indicates to the C program that the semop() routine is available.
2248
2249 d_sendmsg (d_sendmsg.U):
2250         This variable conditionally defines the HAS_SENDMSG symbol, which
2251         indicates to the C program that the sendmsg() routine is available.
2252
2253 d_setegid (d_setegid.U):
2254         This variable conditionally defines the HAS_SETEGID symbol, which
2255         indicates to the C program that the setegid() routine is available
2256         to change the effective gid of the current program.
2257
2258 d_seteuid (d_seteuid.U):
2259         This variable conditionally defines the HAS_SETEUID symbol, which
2260         indicates to the C program that the seteuid() routine is available
2261         to change the effective uid of the current program.
2262
2263 d_setgrent (d_setgrent.U):
2264         This variable conditionally defines the HAS_SETGRENT symbol, which
2265         indicates to the C program that the setgrent() routine is available
2266         for initializing sequential access to the group database.
2267
2268 d_setgrent_r (d_setgrent_r.U):
2269         This variable conditionally defines the HAS_SETGRENT_R symbol,
2270         which indicates to the C program that the setgrent_r()
2271         routine is available.
2272
2273 d_setgrps (d_setgrps.U):
2274         This variable conditionally defines the HAS_SETGROUPS symbol, which
2275         indicates to the C program that the setgroups() routine is available
2276         to set the list of process groups.
2277
2278 d_sethent (d_sethent.U):
2279         This variable conditionally defines HAS_SETHOSTENT if sethostent() is
2280         available.
2281
2282 d_sethostent_r (d_sethostent_r.U):
2283         This variable conditionally defines the HAS_SETHOSTENT_R symbol,
2284         which indicates to the C program that the sethostent_r()
2285         routine is available.
2286
2287 d_setitimer (d_setitimer.U):
2288         This variable conditionally defines the HAS_SETITIMER symbol, which
2289         indicates to the C program that the setitimer() routine is available.
2290
2291 d_setlinebuf (d_setlnbuf.U):
2292         This variable conditionally defines the HAS_SETLINEBUF symbol, which
2293         indicates to the C program that the setlinebuf() routine is available
2294         to change stderr or stdout from block-buffered or unbuffered to a
2295         line-buffered mode.
2296
2297 d_setlocale (d_setlocale.U):
2298         This variable conditionally defines HAS_SETLOCALE if setlocale() is
2299         available to handle locale-specific ctype implementations.
2300
2301 d_setlocale_r (d_setlocale_r.U):
2302         This variable conditionally defines the HAS_SETLOCALE_R symbol,
2303         which indicates to the C program that the setlocale_r()
2304         routine is available.
2305
2306 d_setnent (d_setnent.U):
2307         This variable conditionally defines HAS_SETNETENT if setnetent() is
2308         available.
2309
2310 d_setnetent_r (d_setnetent_r.U):
2311         This variable conditionally defines the HAS_SETNETENT_R symbol,
2312         which indicates to the C program that the setnetent_r()
2313         routine is available.
2314
2315 d_setpent (d_setpent.U):
2316         This variable conditionally defines HAS_SETPROTOENT if setprotoent() is
2317         available.
2318
2319 d_setpgid (d_setpgid.U):
2320         This variable conditionally defines the HAS_SETPGID symbol if the
2321         setpgid(pid, gpid) function is available to set process group ID.
2322
2323 d_setpgrp (d_setpgrp.U):
2324         This variable conditionally defines HAS_SETPGRP if setpgrp() is
2325         available to set the current process group.
2326
2327 d_setpgrp2 (d_setpgrp2.U):
2328         This variable conditionally defines the HAS_SETPGRP2 symbol, which
2329         indicates to the C program that the setpgrp2() (as in DG/UX) routine
2330         is available to set the current process group.
2331
2332 d_setprior (d_setprior.U):
2333         This variable conditionally defines HAS_SETPRIORITY if setpriority()
2334         is available to set a process's priority.
2335
2336 d_setproctitle (d_setproctitle.U):
2337         This variable conditionally defines the HAS_SETPROCTITLE symbol,
2338         which indicates to the C program that the setproctitle() routine
2339         is available.
2340
2341 d_setprotoent_r (d_setprotoent_r.U):
2342         This variable conditionally defines the HAS_SETPROTOENT_R symbol,
2343         which indicates to the C program that the setprotoent_r()
2344         routine is available.
2345
2346 d_setpwent (d_setpwent.U):
2347         This variable conditionally defines the HAS_SETPWENT symbol, which
2348         indicates to the C program that the setpwent() routine is available
2349         for initializing sequential access to the passwd database.
2350
2351 d_setpwent_r (d_setpwent_r.U):
2352         This variable conditionally defines the HAS_SETPWENT_R symbol,
2353         which indicates to the C program that the setpwent_r()
2354         routine is available.
2355
2356 d_setregid (d_setregid.U):
2357         This variable conditionally defines HAS_SETREGID if setregid() is
2358         available to change the real and effective gid of the current
2359         process.
2360
2361 d_setresgid (d_setregid.U):
2362         This variable conditionally defines HAS_SETRESGID if setresgid() is
2363         available to change the real, effective and saved gid of the current
2364         process.
2365
2366 d_setresuid (d_setreuid.U):
2367         This variable conditionally defines HAS_SETREUID if setresuid() is
2368         available to change the real, effective and saved uid of the current
2369         process.
2370
2371 d_setreuid (d_setreuid.U):
2372         This variable conditionally defines HAS_SETREUID if setreuid() is
2373         available to change the real and effective uid of the current
2374         process.
2375
2376 d_setrgid (d_setrgid.U):
2377         This variable conditionally defines the HAS_SETRGID symbol, which
2378         indicates to the C program that the setrgid() routine is available
2379         to change the real gid of the current program.
2380
2381 d_setruid (d_setruid.U):
2382         This variable conditionally defines the HAS_SETRUID symbol, which
2383         indicates to the C program that the setruid() routine is available
2384         to change the real uid of the current program.
2385
2386 d_setsent (d_setsent.U):
2387         This variable conditionally defines HAS_SETSERVENT if setservent() is
2388         available.
2389
2390 d_setservent_r (d_setservent_r.U):
2391         This variable conditionally defines the HAS_SETSERVENT_R symbol,
2392         which indicates to the C program that the setservent_r()
2393         routine is available.
2394
2395 d_setsid (d_setsid.U):
2396         This variable conditionally defines HAS_SETSID if setsid() is
2397         available to set the process group ID.
2398
2399 d_setvbuf (d_setvbuf.U):
2400         This variable conditionally defines the HAS_SETVBUF symbol, which
2401         indicates to the C program that the setvbuf() routine is available
2402         to change buffering on an open stdio stream.
2403
2404 d_shm (d_shm.U):
2405         This variable conditionally defines the HAS_SHM symbol, which
2406         indicates that the entire shm*(2) library is present.
2407
2408 d_shmat (d_shmat.U):
2409         This variable conditionally defines the HAS_SHMAT symbol, which
2410         indicates to the C program that the shmat() routine is available.
2411
2412 d_shmatprototype (d_shmat.U):
2413         This variable conditionally defines the HAS_SHMAT_PROTOTYPE
2414         symbol, which indicates that sys/shm.h has a prototype for
2415         shmat.
2416
2417 d_shmctl (d_shmctl.U):
2418         This variable conditionally defines the HAS_SHMCTL symbol, which
2419         indicates to the C program that the shmctl() routine is available.
2420
2421 d_shmdt (d_shmdt.U):
2422         This variable conditionally defines the HAS_SHMDT symbol, which
2423         indicates to the C program that the shmdt() routine is available.
2424
2425 d_shmget (d_shmget.U):
2426         This variable conditionally defines the HAS_SHMGET symbol, which
2427         indicates to the C program that the shmget() routine is available.
2428
2429 d_sigaction (d_sigaction.U):
2430         This variable conditionally defines the HAS_SIGACTION symbol, which
2431         indicates that the Vr4 sigaction() routine is available.
2432
2433 d_siginfo_si_addr (d_siginfo_si.U):
2434         This variable conditionally defines the HAS_SIGINFO_SI_ADDR symbol,
2435         which indicates that the siginfo_t struct has the si_addr member.
2436
2437 d_siginfo_si_band (d_siginfo_si.U):
2438         This variable conditionally defines the HAS_SIGINFO_SI_BAND symbol,
2439         which indicates that the siginfo_t struct has the si_band member.
2440
2441 d_siginfo_si_errno (d_siginfo_si.U):
2442         This variable conditionally defines the HAS_SIGINFO_SI_ERRNO symbol,
2443         which indicates that the siginfo_t struct has the si_errno member.
2444
2445 d_siginfo_si_fd (d_siginfo_si.U):
2446         This variable conditionally defines the HAS_SIGINFO_SI_FD symbol,
2447         which indicates that the siginfo_t struct has the si_fd member.
2448
2449 d_siginfo_si_pid (d_siginfo_si.U):
2450         This variable conditionally defines the HAS_SIGINFO_SI_PID symbol,
2451         which indicates that the siginfo_t struct has the si_pid member.
2452
2453 d_siginfo_si_status (d_siginfo_si.U):
2454         This variable conditionally defines the HAS_SIGINFO_SI_STATUS symbol,
2455         which indicates that the siginfo_t struct has the si_status member.
2456
2457 d_siginfo_si_uid (d_siginfo_si.U):
2458         This variable conditionally defines the HAS_SIGINFO_SI_UID symbol,
2459         which indicates that the siginfo_t struct has the si_uid member.
2460
2461 d_siginfo_si_value (d_siginfo_si.U):
2462         This variable conditionally defines the HAS_SIGINFO_SI_VALUE symbol,
2463         which indicates that the siginfo_t struct has the si_value member.
2464
2465 d_signbit (d_signbit.U):
2466         This variable conditionally defines the HAS_SIGNBIT symbol, which
2467         indicates to the C program that the signbit() routine is available
2468         and safe to use with perl's intern NV type.
2469
2470 d_sigprocmask (d_sigprocmask.U):
2471         This variable conditionally defines HAS_SIGPROCMASK
2472         if sigprocmask() is available to examine or change the signal mask
2473         of the calling process.
2474
2475 d_sigsetjmp (d_sigsetjmp.U):
2476         This variable conditionally defines the HAS_SIGSETJMP symbol,
2477         which indicates that the sigsetjmp() routine is available to
2478         call setjmp() and optionally save the process's signal mask.
2479
2480 d_sin6_scope_id (d_socket.U):
2481         This variable conditionally defines the HAS_SIN6_SCOPE_ID symbol, which
2482         indicates that a struct sockaddr_in6 structure has the sin6_scope_id
2483         member.
2484
2485 d_sitearch (sitearch.U):
2486         This variable conditionally defines SITEARCH to hold the pathname
2487         of architecture-dependent library files for $package.  If
2488         $sitearch is the same as $archlib, then this is set to undef.
2489
2490 d_snprintf (d_snprintf.U):
2491         This variable conditionally defines the HAS_SNPRINTF symbol, which
2492         indicates to the C program that the snprintf () library function
2493         is available.
2494
2495 d_sockaddr_in6 (d_socket.U):
2496         This variable conditionally defines the HAS_SOCKADDR_IN6 symbol, which
2497         indicates the availability of a struct sockaddr_in6.
2498
2499 d_sockaddr_sa_len (d_socket.U):
2500         This variable conditionally defines the HAS_SOCKADDR_SA_LEN symbol,
2501         which indicates that a struct sockaddr structure has the sa_len
2502         member.
2503
2504 d_sockatmark (d_sockatmark.U):
2505         This variable conditionally defines the HAS_SOCKATMARK symbol, which
2506         indicates to the C program that the sockatmark() routine is available.
2507
2508 d_sockatmarkproto (d_sockatmarkproto.U):
2509         This variable conditionally defines the HAS_SOCKATMARK_PROTO symbol,
2510         which indicates to the C program that the system provides
2511         a prototype for the sockatmark() function.  Otherwise, it is
2512         up to the program to supply one.
2513
2514 d_socket (d_socket.U):
2515         This variable conditionally defines HAS_SOCKET, which indicates
2516         that the BSD socket interface is supported.
2517
2518 d_socklen_t (d_socklen_t.U):
2519         This symbol will be defined if the C compiler supports socklen_t.
2520
2521 d_sockpair (d_socket.U):
2522         This variable conditionally defines the HAS_SOCKETPAIR symbol, which
2523         indicates that the BSD socketpair() is supported.
2524
2525 d_socks5_init (d_socks5_init.U):
2526         This variable conditionally defines the HAS_SOCKS5_INIT symbol, which
2527         indicates to the C program that the socks5_init() routine is available.
2528
2529 d_sprintf_returns_strlen (d_sprintf_len.U):
2530         This variable defines whether sprintf returns the length of the string
2531         (as per the ANSI spec). Some C libraries retain compatibility with
2532         pre-ANSI C and return a pointer to the passed in buffer; for these
2533         this variable will be undef.
2534
2535 d_sqrtl (d_sqrtl.U):
2536         This variable conditionally defines the HAS_SQRTL symbol, which
2537         indicates to the C program that the sqrtl() routine is available.
2538
2539 d_srand48_r (d_srand48_r.U):
2540         This variable conditionally defines the HAS_SRAND48_R symbol,
2541         which indicates to the C program that the srand48_r()
2542         routine is available.
2543
2544 d_srandom_r (d_srandom_r.U):
2545         This variable conditionally defines the HAS_SRANDOM_R symbol,
2546         which indicates to the C program that the srandom_r()
2547         routine is available.
2548
2549 d_sresgproto (d_sresgproto.U):
2550         This variable conditionally defines the HAS_SETRESGID_PROTO symbol,
2551         which indicates to the C program that the system provides
2552         a prototype for the setresgid() function.  Otherwise, it is
2553         up to the program to supply one.
2554
2555 d_sresuproto (d_sresuproto.U):
2556         This variable conditionally defines the HAS_SETRESUID_PROTO symbol,
2557         which indicates to the C program that the system provides
2558         a prototype for the setresuid() function.  Otherwise, it is
2559         up to the program to supply one.
2560
2561 d_stat (d_stat.U):
2562         This variable conditionally defines HAS_STAT if stat() is
2563         available to get file status.
2564
2565 d_statblks (d_statblks.U):
2566         This variable conditionally defines USE_STAT_BLOCKS
2567         if this system has a stat structure declaring
2568         st_blksize and st_blocks.
2569
2570 d_statfs_f_flags (d_statfs_f_flags.U):
2571         This variable conditionally defines the HAS_STRUCT_STATFS_F_FLAGS
2572         symbol, which indicates to struct statfs from has f_flags member.
2573         This kind of struct statfs is coming from sys/mount.h (BSD),
2574         not from sys/statfs.h (SYSV).
2575
2576 d_statfs_s (d_statfs_s.U):
2577         This variable conditionally defines the HAS_STRUCT_STATFS symbol,
2578         which indicates that the struct statfs is supported.
2579
2580 d_static_inline (d_static_inline.U):
2581         This variable conditionally defines the HAS_STATIC_INLINE symbol,
2582         which indicates that the C compiler supports C99-style static
2583         inline.  That is, the function can't be called from another
2584         translation unit.
2585
2586 d_statvfs (d_statvfs.U):
2587         This variable conditionally defines the HAS_STATVFS symbol, which
2588         indicates to the C program that the statvfs() routine is available.
2589
2590 d_stdio_cnt_lval (d_stdstdio.U):
2591         This variable conditionally defines STDIO_CNT_LVALUE if the
2592         FILE_cnt macro can be used as an lvalue.
2593
2594 d_stdio_ptr_lval (d_stdstdio.U):
2595         This variable conditionally defines STDIO_PTR_LVALUE if the
2596         FILE_ptr macro can be used as an lvalue.
2597
2598 d_stdio_ptr_lval_nochange_cnt (d_stdstdio.U):
2599         This symbol is defined if using the FILE_ptr macro as an lvalue
2600         to increase the pointer by n leaves File_cnt(fp) unchanged.
2601
2602 d_stdio_ptr_lval_sets_cnt (d_stdstdio.U):
2603         This symbol is defined if using the FILE_ptr macro as an lvalue
2604         to increase the pointer by n has the side effect of decreasing the
2605         value of File_cnt(fp) by n.
2606
2607 d_stdio_stream_array (stdio_streams.U):
2608         This variable tells whether there is an array holding
2609         the stdio streams.
2610
2611 d_stdiobase (d_stdstdio.U):
2612         This variable conditionally defines USE_STDIO_BASE if this system
2613         has a FILE structure declaring a usable _base field (or equivalent)
2614         in stdio.h.
2615
2616 d_stdstdio (d_stdstdio.U):
2617         This variable conditionally defines USE_STDIO_PTR if this system
2618         has a FILE structure declaring usable _ptr and _cnt fields (or
2619         equivalent) in stdio.h.
2620
2621 d_strchr (d_strchr.U):
2622         This variable conditionally defines HAS_STRCHR if strchr() and
2623         strrchr() are available for string searching.
2624
2625 d_strcoll (d_strcoll.U):
2626         This variable conditionally defines HAS_STRCOLL if strcoll() is
2627         available to compare strings using collating information.
2628
2629 d_strctcpy (d_strctcpy.U):
2630         This variable conditionally defines the USE_STRUCT_COPY symbol, which
2631         indicates to the C program that this C compiler knows how to copy
2632         structures.
2633
2634 d_strerrm (d_strerror.U):
2635         This variable holds what Strerror is defined as to translate an error
2636         code condition into an error message string. It could be 'strerror'
2637         or a more complex macro emulating strerror with sys_errlist[], or the
2638         "unknown" string when both strerror and sys_errlist are missing.
2639
2640 d_strerror (d_strerror.U):
2641         This variable conditionally defines HAS_STRERROR if strerror() is
2642         available to translate error numbers to strings.
2643
2644 d_strerror_l (d_strerror_l.U):
2645         This variable conditionally defines the HAS_STRERROR_L symbol, which
2646         indicates to the C program that the strerror_l() routine is available
2647         to return the error message for a given errno value in a particular
2648         locale (identified by a locale_t object).
2649
2650 d_strerror_r (d_strerror_r.U):
2651         This variable conditionally defines the HAS_STRERROR_R symbol,
2652         which indicates to the C program that the strerror_r()
2653         routine is available.
2654
2655 d_strftime (d_strftime.U):
2656         This variable conditionally defines the HAS_STRFTIME symbol, which
2657         indicates to the C program that the strftime() routine is available.
2658
2659 d_strlcat (d_strlcat.U):
2660         This variable conditionally defines the HAS_STRLCAT symbol, which
2661         indicates to the C program that the strlcat () routine is available.
2662
2663 d_strlcpy (d_strlcpy.U):
2664         This variable conditionally defines the HAS_STRLCPY symbol, which
2665         indicates to the C program that the strlcpy () routine is available.
2666
2667 d_strtod (d_strtod.U):
2668         This variable conditionally defines the HAS_STRTOD symbol, which
2669         indicates to the C program that the strtod() routine is available
2670         to provide better numeric string conversion than atof().
2671
2672 d_strtol (d_strtol.U):
2673         This variable conditionally defines the HAS_STRTOL symbol, which
2674         indicates to the C program that the strtol() routine is available
2675         to provide better numeric string conversion than atoi() and friends.
2676
2677 d_strtold (d_strtold.U):
2678         This variable conditionally defines the HAS_STRTOLD symbol, which
2679         indicates to the C program that the strtold() routine is available.
2680
2681 d_strtoll (d_strtoll.U):
2682         This variable conditionally defines the HAS_STRTOLL symbol, which
2683         indicates to the C program that the strtoll() routine is available.
2684
2685 d_strtoq (d_strtoq.U):
2686         This variable conditionally defines the HAS_STRTOQ symbol, which
2687         indicates to the C program that the strtoq() routine is available.
2688
2689 d_strtoul (d_strtoul.U):
2690         This variable conditionally defines the HAS_STRTOUL symbol, which
2691         indicates to the C program that the strtoul() routine is available
2692         to provide conversion of strings to unsigned long.
2693
2694 d_strtoull (d_strtoull.U):
2695         This variable conditionally defines the HAS_STRTOULL symbol, which
2696         indicates to the C program that the strtoull() routine is available.
2697
2698 d_strtouq (d_strtouq.U):
2699         This variable conditionally defines the HAS_STRTOUQ symbol, which
2700         indicates to the C program that the strtouq() routine is available.
2701
2702 d_strxfrm (d_strxfrm.U):
2703         This variable conditionally defines HAS_STRXFRM if strxfrm() is
2704         available to transform strings.
2705
2706 d_suidsafe (d_dosuid.U):
2707         This variable conditionally defines SETUID_SCRIPTS_ARE_SECURE_NOW
2708         if setuid scripts can be secure.  This test looks in /dev/fd/.
2709
2710 d_symlink (d_symlink.U):
2711         This variable conditionally defines the HAS_SYMLINK symbol, which
2712         indicates to the C program that the symlink() routine is available
2713         to create symbolic links.
2714
2715 d_syscall (d_syscall.U):
2716         This variable conditionally defines HAS_SYSCALL if syscall() is
2717         available call arbitrary system calls.
2718
2719 d_syscallproto (d_syscallproto.U):
2720         This variable conditionally defines the HAS_SYSCALL_PROTO symbol,
2721         which indicates to the C program that the system provides
2722         a prototype for the syscall() function.  Otherwise, it is
2723         up to the program to supply one.
2724
2725 d_sysconf (d_sysconf.U):
2726         This variable conditionally defines the HAS_SYSCONF symbol, which
2727         indicates to the C program that the sysconf() routine is available
2728         to determine system related limits and options.
2729
2730 d_sysernlst (d_strerror.U):
2731         This variable conditionally defines HAS_SYS_ERRNOLIST if sys_errnolist[]
2732         is available to translate error numbers to the symbolic name.
2733
2734 d_syserrlst (d_strerror.U):
2735         This variable conditionally defines HAS_SYS_ERRLIST if sys_errlist[] is
2736         available to translate error numbers to strings.
2737
2738 d_system (d_system.U):
2739         This variable conditionally defines HAS_SYSTEM if system() is
2740         available to issue a shell command.
2741
2742 d_tcgetpgrp (d_tcgtpgrp.U):
2743         This variable conditionally defines the HAS_TCGETPGRP symbol, which
2744         indicates to the C program that the tcgetpgrp() routine is available.
2745         to get foreground process group ID.
2746
2747 d_tcsetpgrp (d_tcstpgrp.U):
2748         This variable conditionally defines the HAS_TCSETPGRP symbol, which
2749         indicates to the C program that the tcsetpgrp() routine is available
2750         to set foreground process group ID.
2751
2752 d_telldir (d_readdir.U):
2753         This variable conditionally defines HAS_TELLDIR if telldir() is
2754         available.
2755
2756 d_telldirproto (d_telldirproto.U):
2757         This variable conditionally defines the HAS_TELLDIR_PROTO symbol,
2758         which indicates to the C program that the system provides
2759         a prototype for the telldir() function.  Otherwise, it is
2760         up to the program to supply one.
2761
2762 d_tgamma (d_tgamma.U):
2763         This variable conditionally defines the HAS_TGAMMA symbol, which
2764         indicates to the C program that the tgamma() routine is available
2765         for the gamma function.  See also d_lgamma.
2766
2767 d_time (d_time.U):
2768         This variable conditionally defines the HAS_TIME symbol, which indicates
2769         that the time() routine exists.  The time() routine is normally
2770         provided on UNIX systems.
2771
2772 d_timegm (d_timegm.U):
2773         This variable conditionally defines the HAS_TIMEGM symbol, which
2774         indicates to the C program that the timegm () routine is available.
2775
2776 d_times (d_times.U):
2777         This variable conditionally defines the HAS_TIMES symbol, which indicates
2778         that the times() routine exists.  The times() routine is normally
2779         provided on UNIX systems. You may have to include <sys/times.h>.
2780
2781 d_tm_tm_gmtoff (i_time.U):
2782         This variable conditionally defines HAS_TM_TM_GMTOFF, which indicates
2783         indicates to the C program that the struct tm has the tm_gmtoff field.
2784
2785 d_tm_tm_zone (i_time.U):
2786         This variable conditionally defines HAS_TM_TM_ZONE, which indicates
2787         indicates to the C program that the struct tm has the tm_zone field.
2788
2789 d_tmpnam_r (d_tmpnam_r.U):
2790         This variable conditionally defines the HAS_TMPNAM_R symbol,
2791         which indicates to the C program that the tmpnam_r()
2792         routine is available.
2793
2794 d_trunc (d_trunc.U):
2795         This variable conditionally defines the HAS_TRUNC symbol, which
2796         indicates to the C program that the trunc() routine is available
2797         to round doubles towards zero.
2798
2799 d_truncate (d_truncate.U):
2800         This variable conditionally defines HAS_TRUNCATE if truncate() is
2801         available to truncate files.
2802
2803 d_truncl (d_truncl.U):
2804         This variable conditionally defines the HAS_TRUNCL symbol, which
2805         indicates to the C program that the truncl() routine is available
2806         to round long doubles towards zero. If copysignl is also present,
2807         we can emulate modfl.
2808
2809 d_ttyname_r (d_ttyname_r.U):
2810         This variable conditionally defines the HAS_TTYNAME_R symbol,
2811         which indicates to the C program that the ttyname_r()
2812         routine is available.
2813
2814 d_tzname (d_tzname.U):
2815         This variable conditionally defines HAS_TZNAME if tzname[] is
2816         available to access timezone names.
2817
2818 d_u32align (d_u32align.U):
2819         This variable tells whether you must access character data
2820         through U32-aligned pointers.
2821
2822 d_ualarm (d_ualarm.U):
2823         This variable conditionally defines the HAS_UALARM symbol, which
2824         indicates to the C program that the ualarm() routine is available.
2825
2826 d_umask (d_umask.U):
2827         This variable conditionally defines the HAS_UMASK symbol, which
2828         indicates to the C program that the umask() routine is available.
2829         to set and get the value of the file creation mask.
2830
2831 d_uname (d_gethname.U):
2832         This variable conditionally defines the HAS_UNAME symbol, which
2833         indicates to the C program that the uname() routine may be
2834         used to derive the host name.
2835
2836 d_union_semun (d_union_semun.U):
2837         This variable conditionally defines HAS_UNION_SEMUN if the
2838         union semun is defined by including <sys/sem.h>.
2839
2840 d_unlinkat (d_fsat.U):
2841         This variable conditionally defines the HAS_UNLINKAT symbol, which
2842         indicates the POSIX unlinkat() function isavailable.
2843
2844 d_unordered (d_unordered.U):
2845         This variable conditionally defines the HAS_UNORDERED symbol, which
2846         indicates to the C program that the unordered() routine is available.
2847
2848 d_unsetenv (d_unsetenv.U):
2849         This variable conditionally defines the HAS_UNSETENV symbol, which
2850         indicates to the C program that the unsetenv () routine is available.
2851
2852 d_uselocale (d_newlocale.U):
2853         This variable conditionally defines the HAS_USELOCALE symbol, which
2854         indicates to the C program that the uselocale() routine is available
2855         to set the current locale for the calling thread.
2856
2857 d_usleep (d_usleep.U):
2858         This variable conditionally defines HAS_USLEEP if usleep() is
2859         available to do high granularity sleeps.
2860
2861 d_usleepproto (d_usleepproto.U):
2862         This variable conditionally defines the HAS_USLEEP_PROTO symbol,
2863         which indicates to the C program that the system provides
2864         a prototype for the usleep() function.  Otherwise, it is
2865         up to the program to supply one.
2866
2867 d_ustat (d_ustat.U):
2868         This variable conditionally defines HAS_USTAT if ustat() is
2869         available to query file system statistics by dev_t.
2870
2871 d_vendorarch (vendorarch.U):
2872         This variable conditionally defined PERL_VENDORARCH.
2873
2874 d_vendorbin (vendorbin.U):
2875         This variable conditionally defines PERL_VENDORBIN.
2876
2877 d_vendorlib (vendorlib.U):
2878         This variable conditionally defines PERL_VENDORLIB.
2879
2880 d_vendorscript (vendorscript.U):
2881         This variable conditionally defines PERL_VENDORSCRIPT.
2882
2883 d_vfork (d_vfork.U):
2884         This variable conditionally defines the HAS_VFORK symbol, which
2885         indicates the vfork() routine is available.
2886
2887 d_void_closedir (d_closedir.U):
2888         This variable conditionally defines VOID_CLOSEDIR if closedir()
2889         does not return a value.
2890
2891 d_voidsig (d_voidsig.U):
2892         This variable conditionally defines VOIDSIG if this system
2893         declares "void (*signal(...))()" in signal.h.  The old way was to
2894         declare it as "int (*signal(...))()".
2895
2896 d_voidtty (i_sysioctl.U):
2897         This variable conditionally defines USE_IOCNOTTY to indicate that the
2898         ioctl() call with TIOCNOTTY should be used to void tty association.
2899         Otherwise (on USG probably), it is enough to close the standard file
2900         descriptors and do a setpgrp().
2901
2902 d_volatile (d_volatile.U):
2903         This variable conditionally defines the HASVOLATILE symbol, which
2904         indicates to the C program that this C compiler knows about the
2905         volatile declaration.
2906
2907 d_vprintf (d_vprintf.U):
2908         This variable conditionally defines the HAS_VPRINTF symbol, which
2909         indicates to the C program that the vprintf() routine is available
2910         to printf with a pointer to an argument list.
2911
2912 d_vsnprintf (d_snprintf.U):
2913         This variable conditionally defines the HAS_VSNPRINTF symbol, which
2914         indicates to the C program that the vsnprintf () library function
2915         is available.
2916
2917 d_wait4 (d_wait4.U):
2918         This variable conditionally defines the HAS_WAIT4 symbol, which
2919         indicates the wait4() routine is available.
2920
2921 d_waitpid (d_waitpid.U):
2922         This variable conditionally defines HAS_WAITPID if waitpid() is
2923         available to wait for child process.
2924
2925 d_wcscmp (d_wcscmp.U):
2926         This variable conditionally defines the HAS_WCSCMP symbol if the
2927         wcscmp() routine is available and can be used to compare wide
2928         character strings.
2929
2930 d_wcstombs (d_wcstombs.U):
2931         This variable conditionally defines the HAS_WCSTOMBS symbol, which
2932         indicates to the C program that the wcstombs() routine is available
2933         to convert wide character strings to multibyte strings.
2934
2935 d_wcsxfrm (d_wcsxfrm.U):
2936         This variable conditionally defines the HAS_WCSXFRM symbol if the
2937         wcsxfrm() routine is available and can be used to compare wide
2938         character strings.
2939
2940 d_wctomb (d_wctomb.U):
2941         This variable conditionally defines the HAS_WCTOMB symbol, which
2942         indicates to the C program that the wctomb() routine is available
2943         to convert a wide character to a multibyte.
2944
2945 d_writev (d_writev.U):
2946         This variable conditionally defines the HAS_WRITEV symbol, which
2947         indicates to the C program that the writev() routine is available.
2948
2949 d_xenix (Guess.U):
2950         This variable conditionally defines the symbol XENIX, which alerts
2951         the C program that it runs under Xenix.
2952
2953 date (Loc.U):
2954         This variable is used internally by Configure to determine the
2955         full pathname (if any) of the date program.  After Configure runs,
2956         the value is reset to a plain "date" and is not useful.
2957
2958 db_hashtype (i_db.U):
2959         This variable contains the type of the hash structure element
2960         in the <db.h> header file.  In older versions of DB, it was
2961         int, while in newer ones it is u_int32_t.
2962
2963 db_prefixtype (i_db.U):
2964         This variable contains the type of the prefix structure element
2965         in the <db.h> header file.  In older versions of DB, it was
2966         int, while in newer ones it is size_t.
2967
2968 db_version_major (i_db.U):
2969         This variable contains the major version number of
2970         Berkeley DB found in the <db.h> header file.
2971
2972 db_version_minor (i_db.U):
2973         This variable contains the minor version number of
2974         Berkeley DB found in the <db.h> header file.
2975         For DB version 1 this is always 0.
2976
2977 db_version_patch (i_db.U):
2978         This variable contains the patch version number of
2979         Berkeley DB found in the <db.h> header file.
2980         For DB version 1 this is always 0.
2981
2982 default_inc_excludes_dot (defaultincdot.U):
2983         When defined, remove the legacy '.' from @INC
2984
2985 direntrytype (i_dirent.U):
2986         This symbol is set to 'struct direct' or 'struct dirent' depending on
2987         whether dirent is available or not. You should use this pseudo type to
2988         portably declare your directory entries.
2989
2990 dlext (dlext.U):
2991         This variable contains the extension that is to be used for the
2992         dynamically loaded modules that perl generates.
2993
2994 dlsrc (dlsrc.U):
2995         This variable contains the name of the dynamic loading file that
2996         will be used with the package.
2997
2998 doubleinfbytes (infnan.U):
2999         This variable contains comma-separated list of hexadecimal bytes
3000         for the double precision infinity.
3001
3002 doublekind (longdblfio.U):
3003         This variable, if defined, encodes the type of a double:
3004         1 = IEEE 754 32-bit little endian,
3005         2 = IEEE 754 32-bit big endian,
3006         3 = IEEE 754 64-bit little endian,
3007         4 = IEEE 754 64-bit big endian,
3008         5 = IEEE 754 128-bit little endian,
3009         6 = IEEE 754 128-bit big endian,
3010         7 = IEEE 754 64-bit mixed endian le-be,
3011         8 = IEEE 754 64-bit mixed endian be-le,
3012         9 = VAX 32bit little endian F float format
3013         10 = VAX 64bit little endian D float format
3014         11 = VAX 64bit little endian G float format
3015         12 = IBM 32bit format
3016         13 = IBM 64bit format
3017         14 = Cray 64bit format
3018         -1 = unknown format.
3019
3020 doublemantbits (mantbits.U):
3021         This symbol, if defined, tells how many mantissa bits
3022         there are in double precision floating point format.
3023         Note that this is usually DBL_MANT_DIG minus one, since
3024         with the standard IEEE 754 formats DBL_MANT_DIG includes
3025         the implicit bit which doesn't really exist.
3026
3027 doublenanbytes (infnan.U):
3028         This variable contains comma-separated list of hexadecimal bytes
3029         for the double precision not-a-number.
3030
3031 doublesize (doublesize.U):
3032         This variable contains the value of the DOUBLESIZE symbol, which
3033         indicates to the C program how many bytes there are in a double.
3034
3035 drand01 (randfunc.U):
3036         Indicates the macro to be used to generate normalized
3037         random numbers.  Uses randfunc, often divided by
3038         (double) (((unsigned long) 1 << randbits)) in order to
3039         normalize the result.
3040         In C programs, the macro 'Drand01' is mapped to drand01.
3041
3042 drand48_r_proto (d_drand48_r.U):
3043         This variable encodes the prototype of drand48_r.
3044         It is zero if d_drand48_r is undef, and one of the
3045         REENTRANT_PROTO_T_ABC macros of reentr.h if d_drand48_r
3046         is defined.
3047
3048 dtrace (usedtrace.U):
3049         This variable holds the location of the dtrace executable.
3050
3051 dtraceobject (dtraceobject.U):
3052         Whether we need to build an object file with the dtrace tool.
3053
3054 dtracexnolibs (dtraceobject.U):
3055         Whether dtrace accepts -xnolibs.  If available we call dtrace -h
3056         and dtrace -G with -xnolibs to allow dtrace to run in a jail on
3057         FreeBSD.
3058
3059 dynamic_ext (Extensions.U):
3060         This variable holds a list of XS extension files we want to
3061         link dynamically into the package.  It is used by Makefile.
3062
3063 eagain (nblock_io.U):
3064         This variable bears the symbolic errno code set by read() when no
3065         data is present on the file and non-blocking I/O was enabled (otherwise,
3066         read() blocks naturally).
3067
3068 ebcdic (ebcdic.U):
3069         This variable conditionally defines EBCDIC if this
3070         system uses EBCDIC encoding.
3071
3072 echo (Loc.U):
3073         This variable is used internally by Configure to determine the
3074         full pathname (if any) of the echo program.  After Configure runs,
3075         the value is reset to a plain "echo" and is not useful.
3076
3077 egrep (Loc.U):
3078         This variable is used internally by Configure to determine the
3079         full pathname (if any) of the egrep program.  After Configure runs,
3080         the value is reset to a plain "egrep" and is not useful.
3081
3082 emacs (Loc.U):
3083         This variable is defined but not used by Configure.
3084         The value is the empty string and is not useful.
3085
3086 endgrent_r_proto (d_endgrent_r.U):
3087         This variable encodes the prototype of endgrent_r.
3088         It is zero if d_endgrent_r is undef, and one of the
3089         REENTRANT_PROTO_T_ABC macros of reentr.h if d_endgrent_r
3090         is defined.
3091
3092 endhostent_r_proto (d_endhostent_r.U):
3093         This variable encodes the prototype of endhostent_r.
3094         It is zero if d_endhostent_r is undef, and one of the
3095         REENTRANT_PROTO_T_ABC macros of reentr.h if d_endhostent_r
3096         is defined.
3097
3098 endnetent_r_proto (d_endnetent_r.U):
3099         This variable encodes the prototype of endnetent_r.
3100         It is zero if d_endnetent_r is undef, and one of the
3101         REENTRANT_PROTO_T_ABC macros of reentr.h if d_endnetent_r
3102         is defined.
3103
3104 endprotoent_r_proto (d_endprotoent_r.U):
3105         This variable encodes the prototype of endprotoent_r.
3106         It is zero if d_endprotoent_r is undef, and one of the
3107         REENTRANT_PROTO_T_ABC macros of reentr.h if d_endprotoent_r
3108         is defined.
3109
3110 endpwent_r_proto (d_endpwent_r.U):
3111         This variable encodes the prototype of endpwent_r.
3112         It is zero if d_endpwent_r is undef, and one of the
3113         REENTRANT_PROTO_T_ABC macros of reentr.h if d_endpwent_r
3114         is defined.
3115
3116 endservent_r_proto (d_endservent_r.U):
3117         This variable encodes the prototype of endservent_r.
3118         It is zero if d_endservent_r is undef, and one of the
3119         REENTRANT_PROTO_T_ABC macros of reentr.h if d_endservent_r
3120         is defined.
3121
3122 eunicefix (Init.U):
3123         When running under Eunice this variable contains a command which will
3124         convert a shell script to the proper form of text file for it to be
3125         executable by the shell.  On other systems it is a no-op.
3126
3127 exe_ext (Unix.U):
3128         This is an old synonym for _exe.
3129
3130 expr (Loc.U):
3131         This variable is used internally by Configure to determine the
3132         full pathname (if any) of the expr program.  After Configure runs,
3133         the value is reset to a plain "expr" and is not useful.
3134
3135 extensions (Extensions.U):
3136         This variable holds a list of all extension files (both XS and
3137         non-xs) installed with the package.  It is propagated to Config.pm
3138         and is typically used to test whether a particular extension
3139         is available.
3140
3141 extern_C (Csym.U):
3142         ANSI C requires 'extern' where C++ requires 'extern "C"'. This
3143         variable can be used in Configure to do the right thing.
3144
3145 extras (Extras.U):
3146         This variable holds a list of extra modules to install.
3147
3148 fflushall (fflushall.U):
3149         This symbol, if defined, tells that to flush
3150         all pending stdio output one must loop through all
3151         the stdio file handles stored in an array and fflush them.
3152         Note that if fflushNULL is defined, fflushall will not
3153         even be probed for and will be left undefined.
3154
3155 fflushNULL (fflushall.U):
3156         This symbol, if defined, tells that fflush(NULL) correctly
3157         flushes all pending stdio output without side effects. In
3158         particular, on some platforms calling fflush(NULL) *still*
3159         corrupts STDIN if it is a pipe.
3160
3161 find (Loc.U):
3162         This variable is defined but not used by Configure.
3163         The value is the empty string and is not useful.
3164
3165 firstmakefile (Unix.U):
3166         This variable defines the first file searched by make.  On unix,
3167         it is makefile (then Makefile).  On case-insensitive systems,
3168         it might be something else.  This is only used to deal with
3169         convoluted make depend tricks.
3170
3171 flex (Loc.U):
3172         This variable is defined but not used by Configure.
3173         The value is the empty string and is not useful.
3174
3175 fpossize (fpossize.U):
3176         This variable contains the size of a fpostype in bytes.
3177
3178 fpostype (fpostype.U):
3179         This variable defines Fpos_t to be something like fpos_t, long,
3180         uint, or whatever type is used to declare file positions in libc.
3181
3182 freetype (mallocsrc.U):
3183         This variable contains the return type of free().  It is usually
3184         void, but occasionally int.
3185
3186 from (Cross.U):
3187         This variable contains the command used by Configure
3188         to copy files from the target host.  Useful and available
3189         only during Perl build.
3190         The string ':' if not cross-compiling.
3191
3192 full_ar (Loc_ar.U):
3193         This variable contains the full pathname to 'ar', whether or
3194         not the user has specified 'portability'.  This is only used
3195         in the Makefile.SH.
3196
3197 full_csh (d_csh.U):
3198         This variable contains the full pathname to 'csh', whether or
3199         not the user has specified 'portability'.  This is only used
3200         in the compiled C program, and we assume that all systems which
3201         can share this executable will have the same full pathname to
3202         'csh.'
3203
3204 full_sed (Loc_sed.U):
3205         This variable contains the full pathname to 'sed', whether or
3206         not the user has specified 'portability'.  This is only used
3207         in the compiled C program, and we assume that all systems which
3208         can share this executable will have the same full pathname to
3209         'sed.'
3210
3211 gccansipedantic (gccvers.U):
3212         If GNU cc (gcc) is used, this variable will enable (if set) the
3213         -ansi and -pedantic ccflags for building core files (through
3214         cflags script). (See Porting/pumpkin.pod for full description).
3215
3216 gccosandvers (gccvers.U):
3217         If GNU cc (gcc) is used, this variable holds the operating system
3218         and version used to compile gcc.  It is set to '' if not gcc,
3219         or if nothing useful can be parsed as the os version.
3220
3221 gccversion (gccvers.U):
3222         If GNU cc (gcc) is used, this variable holds '1' or '2' to
3223         indicate whether the compiler is version 1 or 2.  This is used in
3224         setting some of the default cflags.  It is set to '' if not gcc.
3225
3226 getgrent_r_proto (d_getgrent_r.U):
3227         This variable encodes the prototype of getgrent_r.
3228         It is zero if d_getgrent_r is undef, and one of the
3229         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrent_r
3230         is defined.
3231
3232 getgrgid_r_proto (d_getgrgid_r.U):
3233         This variable encodes the prototype of getgrgid_r.
3234         It is zero if d_getgrgid_r is undef, and one of the
3235         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrgid_r
3236         is defined.
3237
3238 getgrnam_r_proto (d_getgrnam_r.U):
3239         This variable encodes the prototype of getgrnam_r.
3240         It is zero if d_getgrnam_r is undef, and one of the
3241         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrnam_r
3242         is defined.
3243
3244 gethostbyaddr_r_proto (d_gethostbyaddr_r.U):
3245         This variable encodes the prototype of gethostbyaddr_r.
3246         It is zero if d_gethostbyaddr_r is undef, and one of the
3247         REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostbyaddr_r
3248         is defined.
3249
3250 gethostbyname_r_proto (d_gethostbyname_r.U):
3251         This variable encodes the prototype of gethostbyname_r.
3252         It is zero if d_gethostbyname_r is undef, and one of the
3253         REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostbyname_r
3254         is defined.
3255
3256 gethostent_r_proto (d_gethostent_r.U):
3257         This variable encodes the prototype of gethostent_r.
3258         It is zero if d_gethostent_r is undef, and one of the
3259         REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostent_r
3260         is defined.
3261
3262 getlogin_r_proto (d_getlogin_r.U):
3263         This variable encodes the prototype of getlogin_r.
3264         It is zero if d_getlogin_r is undef, and one of the
3265         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getlogin_r
3266         is defined.
3267
3268 getnetbyaddr_r_proto (d_getnetbyaddr_r.U):
3269         This variable encodes the prototype of getnetbyaddr_r.
3270         It is zero if d_getnetbyaddr_r is undef, and one of the
3271         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetbyaddr_r
3272         is defined.
3273
3274 getnetbyname_r_proto (d_getnetbyname_r.U):
3275         This variable encodes the prototype of getnetbyname_r.
3276         It is zero if d_getnetbyname_r is undef, and one of the
3277         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetbyname_r
3278         is defined.
3279
3280 getnetent_r_proto (d_getnetent_r.U):
3281         This variable encodes the prototype of getnetent_r.
3282         It is zero if d_getnetent_r is undef, and one of the
3283         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetent_r
3284         is defined.
3285
3286 getprotobyname_r_proto (d_getprotobyname_r.U):
3287         This variable encodes the prototype of getprotobyname_r.
3288         It is zero if d_getprotobyname_r is undef, and one of the
3289         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotobyname_r
3290         is defined.
3291
3292 getprotobynumber_r_proto (d_getprotobynumber_r.U):
3293         This variable encodes the prototype of getprotobynumber_r.
3294         It is zero if d_getprotobynumber_r is undef, and one of the
3295         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotobynumber_r
3296         is defined.
3297
3298 getprotoent_r_proto (d_getprotoent_r.U):
3299         This variable encodes the prototype of getprotoent_r.
3300         It is zero if d_getprotoent_r is undef, and one of the
3301         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotoent_r
3302         is defined.
3303
3304 getpwent_r_proto (d_getpwent_r.U):
3305         This variable encodes the prototype of getpwent_r.
3306         It is zero if d_getpwent_r is undef, and one of the
3307         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwent_r
3308         is defined.
3309
3310 getpwnam_r_proto (d_getpwnam_r.U):
3311         This variable encodes the prototype of getpwnam_r.
3312         It is zero if d_getpwnam_r is undef, and one of the
3313         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwnam_r
3314         is defined.
3315
3316 getpwuid_r_proto (d_getpwuid_r.U):
3317         This variable encodes the prototype of getpwuid_r.
3318         It is zero if d_getpwuid_r is undef, and one of the
3319         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwuid_r
3320         is defined.
3321
3322 getservbyname_r_proto (d_getservbyname_r.U):
3323         This variable encodes the prototype of getservbyname_r.
3324         It is zero if d_getservbyname_r is undef, and one of the
3325         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservbyname_r
3326         is defined.
3327
3328 getservbyport_r_proto (d_getservbyport_r.U):
3329         This variable encodes the prototype of getservbyport_r.
3330         It is zero if d_getservbyport_r is undef, and one of the
3331         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservbyport_r
3332         is defined.
3333
3334 getservent_r_proto (d_getservent_r.U):
3335         This variable encodes the prototype of getservent_r.
3336         It is zero if d_getservent_r is undef, and one of the
3337         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservent_r
3338         is defined.
3339
3340 getspnam_r_proto (d_getspnam_r.U):
3341         This variable encodes the prototype of getspnam_r.
3342         It is zero if d_getspnam_r is undef, and one of the
3343         REENTRANT_PROTO_T_ABC macros of reentr.h if d_getspnam_r
3344         is defined.
3345
3346 gidformat (gidf.U):
3347         This variable contains the format string used for printing a Gid_t.
3348
3349 gidsign (gidsign.U):
3350         This variable contains the signedness of a gidtype.
3351         1 for unsigned, -1 for signed.
3352
3353 gidsize (gidsize.U):
3354         This variable contains the size of a gidtype in bytes.
3355
3356 gidtype (gidtype.U):
3357         This variable defines Gid_t to be something like gid_t, int,
3358         ushort, or whatever type is used to declare the return type
3359         of getgid().  Typically, it is the type of group ids in the kernel.
3360
3361 glibpth (libpth.U):
3362         This variable holds the general path (space-separated) used to
3363         find libraries.  It may contain directories that do not exist on
3364         this platform, libpth is the cleaned-up version.
3365
3366 gmake (Loc.U):
3367         This variable is used internally by Configure to determine the
3368         full pathname (if any) of the gmake program.  After Configure runs,
3369         the value is reset to a plain "gmake" and is not useful.
3370
3371 gmtime_r_proto (d_gmtime_r.U):
3372         This variable encodes the prototype of gmtime_r.
3373         It is zero if d_gmtime_r is undef, and one of the
3374         REENTRANT_PROTO_T_ABC macros of reentr.h if d_gmtime_r
3375         is defined.
3376
3377 gnulibc_version (d_gnulibc.U):
3378         This variable contains the version number of the GNU C library.
3379         It is usually something like '2.2.5'.  It is a plain '' if this
3380         is not the GNU C library, or if the version is unknown.
3381
3382 grep (Loc.U):
3383         This variable is used internally by Configure to determine the
3384         full pathname (if any) of the grep program.  After Configure runs,
3385         the value is reset to a plain "grep" and is not useful.
3386
3387 groupcat (nis.U):
3388         This variable contains a command that produces the text of the
3389         /etc/group file.  This is normally "cat /etc/group", but can be
3390         "ypcat group" when NIS is used.
3391         On some systems, such as os390, there may be no equivalent
3392         command, in which case this variable is unset.
3393
3394 groupstype (groupstype.U):
3395         This variable defines Groups_t to be something like gid_t, int,
3396         ushort, or whatever type is used for the second argument to
3397         getgroups() and setgroups().  Usually, this is the same as
3398         gidtype (gid_t), but sometimes it isn't.
3399
3400 gzip (Loc.U):
3401         This variable is used internally by Configure to determine the
3402         full pathname (if any) of the gzip program.  After Configure runs,
3403         the value is reset to a plain "gzip" and is not useful.
3404
3405 h_fcntl (h_fcntl.U):
3406         This is variable gets set in various places to tell i_fcntl that
3407         <fcntl.h> should be included.
3408
3409 h_sysfile (h_sysfile.U):
3410         This is variable gets set in various places to tell i_sys_file that
3411         <sys/file.h> should be included.
3412
3413 hint (Oldconfig.U):
3414         Gives the type of hints used for previous answers. May be one of
3415         "default", "recommended" or "previous".
3416
3417 hostcat (nis.U):
3418         This variable contains a command that produces the text of the
3419         /etc/hosts file.  This is normally "cat /etc/hosts", but can be
3420         "ypcat hosts" when NIS is used.
3421         On some systems, such as os390, there may be no equivalent
3422         command, in which case this variable is unset.
3423
3424 hostgenerate (Cross.U):
3425         This variable contains the path to a generate_uudmap binary that
3426         can be run on the host OS when cross-compiling.  Useful and
3427         available only during Perl build.
3428         Empty string '' if not cross-compiling.
3429
3430 hostosname (Cross.U):
3431         This variable contains the original value of '$^O' for hostperl
3432         when cross-compiling.  This is useful to pick the proper tools
3433         when running build code in the host.
3434         Empty string '' if not cross-compiling.
3435
3436 hostperl (Cross.U):
3437         This variable contains the path to a miniperl binary that can be
3438         run on the host OS when cross-compiling.  Useful and available only
3439         during Perl build.
3440         Empty string '' if not cross-compiling.
3441
3442 html1dir (html1dir.U):
3443         This variable contains the name of the directory in which html
3444         source pages are to be put.  This directory is for pages
3445         that describe whole programs, not libraries or modules.  It
3446         is intended to correspond roughly to section 1 of the Unix
3447         manuals.
3448
3449 html1direxp (html1dir.U):
3450         This variable is the same as the html1dir variable, but is filename
3451         expanded at configuration time, for convenient use in makefiles.
3452
3453 html3dir (html3dir.U):
3454         This variable contains the name of the directory in which html
3455         source pages are to be put.  This directory is for pages
3456         that describe libraries or modules.  It is intended to
3457         correspond roughly to section 3 of the Unix manuals.
3458
3459 html3direxp (html3dir.U):
3460         This variable is the same as the html3dir variable, but is filename
3461         expanded at configuration time, for convenient use in makefiles.
3462
3463 i16size (perlxv.U):
3464         This variable is the size of an I16 in bytes.
3465
3466 i16type (perlxv.U):
3467         This variable contains the C type used for Perl's I16.
3468
3469 i32size (perlxv.U):
3470         This variable is the size of an I32 in bytes.
3471
3472 i32type (perlxv.U):
3473         This variable contains the C type used for Perl's I32.
3474
3475 i64size (perlxv.U):
3476         This variable is the size of an I64 in bytes.
3477
3478 i64type (perlxv.U):
3479         This variable contains the C type used for Perl's I64.
3480
3481 i8size (perlxv.U):
3482         This variable is the size of an I8 in bytes.
3483
3484 i8type (perlxv.U):
3485         This variable contains the C type used for Perl's I8.
3486
3487 i_arpainet (i_arpainet.U):
3488         This variable conditionally defines the I_ARPA_INET symbol,
3489         and indicates whether a C program should include <arpa/inet.h>.
3490
3491 i_assert (i_assert.U):
3492         This variable conditionally defines the I_ASSERT symbol, which
3493         indicates to the C program that <assert.h> exists and could be
3494         included.
3495
3496 i_bfd (i_bfd.U):
3497         This variable conditionally defines the I_BFD symbol, and
3498         indicates whether a C program can include <bfd.h>.
3499
3500 i_bsdioctl (i_sysioctl.U):
3501         This variable conditionally defines the I_SYS_BSDIOCTL symbol, which
3502         indicates to the C program that <sys/bsdioctl.h> exists and should
3503         be included.
3504
3505 i_crypt (i_crypt.U):
3506         This variable conditionally defines the I_CRYPT symbol, and indicates
3507         whether a C program should include <crypt.h>.
3508
3509 i_db (i_db.U):
3510         This variable conditionally defines the I_DB symbol, and indicates
3511         whether a C program may include Berkeley's DB include file <db.h>.
3512
3513 i_dbm (i_dbm.U):
3514         This variable conditionally defines the I_DBM symbol, which
3515         indicates to the C program that <dbm.h> exists and should
3516         be included.
3517
3518 i_dirent (i_dirent.U):
3519         This variable conditionally defines I_DIRENT, which indicates
3520         to the C program that it should include <dirent.h>.
3521
3522 i_dlfcn (i_dlfcn.U):
3523         This variable conditionally defines the I_DLFCN symbol, which
3524         indicates to the C program that <dlfcn.h> exists and should
3525         be included.
3526
3527 i_execinfo (i_execinfo.U):
3528         This variable conditionally defines the I_EXECINFO symbol, and indicates
3529         whether a C program may include <execinfo.h>, for backtrace() support.
3530
3531 i_fcntl (i_fcntl.U):
3532         This variable controls the value of I_FCNTL (which tells
3533         the C program to include <fcntl.h>).
3534
3535 i_fenv (i_fenv.U):
3536         This variable conditionally defines the I_FENV symbol, which
3537         indicates to the C program that <fenv.h> exists and should
3538         be included.
3539
3540 i_float (i_float.U):
3541         This variable conditionally defines the I_FLOAT symbol, and indicates
3542         whether a C program may include <float.h> to get symbols like DBL_MAX
3543         or DBL_MIN, i.e. machine dependent floating point values.
3544
3545 i_fp (i_fp.U):
3546         This variable conditionally defines the I_FP symbol, and indicates
3547         whether a C program should include <fp.h>.
3548
3549 i_fp_class (i_fp_class.U):
3550         This variable conditionally defines the I_FP_CLASS symbol, and indicates
3551         whether a C program should include <fp_class.h>.
3552
3553 i_gdbm (i_gdbm.U):
3554         This variable conditionally defines the I_GDBM symbol, which
3555         indicates to the C program that <gdbm.h> exists and should
3556         be included.
3557
3558 i_gdbm_ndbm (i_ndbm.U):
3559         This variable conditionally defines the I_GDBM_NDBM symbol, which
3560         indicates to the C program that <gdbm-ndbm.h> exists and should
3561         be included.  This is the location of the ndbm.h compatibility file
3562         in Debian 4.0.
3563
3564 i_gdbmndbm (i_ndbm.U):
3565         This variable conditionally defines the I_GDBMNDBM symbol, which
3566         indicates to the C program that <gdbm/ndbm.h> exists and should
3567         be included.  This was the location of the ndbm.h compatibility file
3568         in RedHat 7.1.
3569
3570 i_grp (i_grp.U):
3571         This variable conditionally defines the I_GRP symbol, and indicates
3572         whether a C program should include <grp.h>.
3573
3574 i_ieeefp (i_ieeefp.U):
3575         This variable conditionally defines the I_IEEEFP symbol, and indicates
3576         whether a C program should include <ieeefp.h>.
3577
3578 i_inttypes (i_inttypes.U):
3579         This variable conditionally defines the I_INTTYPES symbol,
3580         and indicates whether a C program should include <inttypes.h>.
3581
3582 i_langinfo (i_langinfo.U):
3583         This variable conditionally defines the I_LANGINFO symbol,
3584         and indicates whether a C program should include <langinfo.h>.
3585
3586 i_libutil (i_libutil.U):
3587         This variable conditionally defines the I_LIBUTIL symbol, and indicates
3588         whether a C program should include <libutil.h>.
3589
3590 i_limits (i_limits.U):
3591         This variable conditionally defines the I_LIMITS symbol, and indicates
3592         whether a C program may include <limits.h> to get symbols like WORD_BIT
3593         and friends.
3594
3595 i_locale (i_locale.U):
3596         This variable conditionally defines the I_LOCALE symbol,
3597         and indicates whether a C program should include <locale.h>.
3598
3599 i_machcthr (i_machcthr.U):
3600         This variable conditionally defines the I_MACH_CTHREADS symbol,
3601         and indicates whether a C program should include <mach/cthreads.h>.
3602
3603 i_malloc (i_malloc.U):
3604         This variable conditionally defines the I_MALLOC symbol, and indicates
3605         whether a C program should include <malloc.h>.
3606
3607 i_mallocmalloc (i_mallocmalloc.U):
3608         This variable conditionally defines the I_MALLOCMALLOC symbol,
3609         and indicates whether a C program should include <malloc/malloc.h>.
3610
3611 i_math (i_math.U):
3612         This variable conditionally defines the I_MATH symbol, and indicates
3613         whether a C program may include <math.h>.
3614
3615 i_memory (i_memory.U):
3616         This variable conditionally defines the I_MEMORY symbol, and indicates
3617         whether a C program should include <memory.h>.
3618
3619 i_mntent (i_mntent.U):
3620         This variable conditionally defines the I_MNTENT symbol, and indicates
3621         whether a C program should include <mntent.h>.
3622
3623 i_ndbm (i_ndbm.U):
3624         This variable conditionally defines the I_NDBM symbol, which
3625         indicates to the C program that <ndbm.h> exists and should
3626         be included.
3627
3628 i_netdb (i_netdb.U):
3629         This variable conditionally defines the I_NETDB symbol, and indicates
3630         whether a C program should include <netdb.h>.
3631
3632 i_neterrno (i_neterrno.U):
3633         This variable conditionally defines the I_NET_ERRNO symbol, which
3634         indicates to the C program that <net/errno.h> exists and should
3635         be included.
3636
3637 i_netinettcp (i_netinettcp.U):
3638         This variable conditionally defines the I_NETINET_TCP symbol,
3639         and indicates whether a C program should include <netinet/tcp.h>.
3640
3641 i_niin (i_niin.U):
3642         This variable conditionally defines I_NETINET_IN, which indicates
3643         to the C program that it should include <netinet/in.h>. Otherwise,
3644         you may try <sys/in.h>.
3645
3646 i_poll (i_poll.U):
3647         This variable conditionally defines the I_POLL symbol, and indicates
3648         whether a C program should include <poll.h>.
3649
3650 i_prot (i_prot.U):
3651         This variable conditionally defines the I_PROT symbol, and indicates
3652         whether a C program should include <prot.h>.
3653
3654 i_pthread (i_pthread.U):
3655         This variable conditionally defines the I_PTHREAD symbol,
3656         and indicates whether a C program should include <pthread.h>.
3657
3658 i_pwd (i_pwd.U):
3659         This variable conditionally defines I_PWD, which indicates
3660         to the C program that it should include <pwd.h>.
3661
3662 i_quadmath (i_quadmath.U):
3663         This variable conditionally defines I_QUADMATH, which indicates
3664         to the C program that it should include <quadmath.h>.
3665
3666 i_rpcsvcdbm (i_dbm.U):
3667         This variable conditionally defines the I_RPCSVC_DBM symbol, which
3668         indicates to the C program that <rpcsvc/dbm.h> exists and should
3669         be included.  Some System V systems might need this instead of <dbm.h>.
3670
3671 i_sgtty (i_termio.U):
3672         This variable conditionally defines the I_SGTTY symbol, which
3673         indicates to the C program that it should include <sgtty.h> rather
3674         than <termio.h>.
3675
3676 i_shadow (i_shadow.U):
3677         This variable conditionally defines the I_SHADOW symbol, and indicates
3678         whether a C program should include <shadow.h>.
3679
3680 i_socks (i_socks.U):
3681         This variable conditionally defines the I_SOCKS symbol, and indicates
3682         whether a C program should include <socks.h>.
3683
3684 i_stdarg (i_varhdr.U):
3685         This variable conditionally defines the I_STDARG symbol, which
3686         indicates to the C program that <stdarg.h> exists and should
3687         be included.
3688
3689 i_stdbool (i_stdbool.U):
3690         This variable conditionally defines the I_STDBOOL symbol, which
3691         indicates to the C program that <stdbool.h> exists and should
3692         be included.
3693
3694 i_stddef (i_stddef.U):
3695         This variable conditionally defines the I_STDDEF symbol, which
3696         indicates to the C program that <stddef.h> exists and should
3697         be included.
3698
3699 i_stdint (i_stdint.U):
3700         This variable conditionally defines the I_STDINT symbol, which
3701         indicates to the C program that <stdint.h> exists and should
3702         be included.
3703
3704 i_stdlib (i_stdlib.U):
3705         This variable conditionally defines the I_STDLIB symbol, which
3706         indicates to the C program that <stdlib.h> exists and should
3707         be included.
3708
3709 i_string (i_string.U):
3710         This variable conditionally defines the I_STRING symbol, which
3711         indicates that <string.h> should be included rather than <strings.h>.
3712
3713 i_sunmath (i_sunmath.U):
3714         This variable conditionally defines the I_SUNMATH symbol, and indicates
3715         whether a C program should include <sunmath.h>.
3716
3717 i_sysaccess (i_sysaccess.U):
3718         This variable conditionally defines the I_SYS_ACCESS symbol,
3719         and indicates whether a C program should include <sys/access.h>.
3720
3721 i_sysdir (i_sysdir.U):
3722         This variable conditionally defines the I_SYS_DIR symbol, and indicates
3723         whether a C program should include <sys/dir.h>.
3724
3725 i_sysfile (i_sysfile.U):
3726         This variable conditionally defines the I_SYS_FILE symbol, and indicates
3727         whether a C program should include <sys/file.h> to get R_OK and friends.
3728
3729 i_sysfilio (i_sysioctl.U):
3730         This variable conditionally defines the I_SYS_FILIO symbol, which
3731         indicates to the C program that <sys/filio.h> exists and should
3732         be included in preference to <sys/ioctl.h>.
3733
3734 i_sysin (i_niin.U):
3735         This variable conditionally defines I_SYS_IN, which indicates
3736         to the C program that it should include <sys/in.h> instead of
3737         <netinet/in.h>.
3738
3739 i_sysioctl (i_sysioctl.U):
3740         This variable conditionally defines the I_SYS_IOCTL symbol, which
3741         indicates to the C program that <sys/ioctl.h> exists and should
3742         be included.
3743
3744 i_syslog (i_syslog.U):
3745         This variable conditionally defines the I_SYSLOG symbol,
3746         and indicates whether a C program should include <syslog.h>.
3747
3748 i_sysmman (i_sysmman.U):
3749         This variable conditionally defines the I_SYS_MMAN symbol, and
3750         indicates whether a C program should include <sys/mman.h>.
3751
3752 i_sysmode (i_sysmode.U):
3753         This variable conditionally defines the I_SYSMODE symbol,
3754         and indicates whether a C program should include <sys/mode.h>.
3755
3756 i_sysmount (i_sysmount.U):
3757         This variable conditionally defines the I_SYSMOUNT symbol,
3758         and indicates whether a C program should include <sys/mount.h>.
3759
3760 i_sysndir (i_sysndir.U):
3761         This variable conditionally defines the I_SYS_NDIR symbol, and indicates
3762         whether a C program should include <sys/ndir.h>.
3763
3764 i_sysparam (i_sysparam.U):
3765         This variable conditionally defines the I_SYS_PARAM symbol, and indicates
3766         whether a C program should include <sys/param.h>.
3767
3768 i_syspoll (i_syspoll.U):
3769         This variable conditionally defines the I_SYS_POLL symbol, which
3770         indicates to the C program that it should include <sys/poll.h>.
3771
3772 i_sysresrc (i_sysresrc.U):
3773         This variable conditionally defines the I_SYS_RESOURCE symbol,
3774         and indicates whether a C program should include <sys/resource.h>.
3775
3776 i_syssecrt (i_syssecrt.U):
3777         This variable conditionally defines the I_SYS_SECURITY symbol,
3778         and indicates whether a C program should include <sys/security.h>.
3779
3780 i_sysselct (i_sysselct.U):
3781         This variable conditionally defines I_SYS_SELECT, which indicates
3782         to the C program that it should include <sys/select.h> in order to
3783         get the definition of struct timeval.
3784
3785 i_syssockio (i_sysioctl.U):
3786         This variable conditionally defines I_SYS_SOCKIO to indicate to the
3787         C program that socket ioctl codes may be found in <sys/sockio.h>
3788         instead of <sys/ioctl.h>.
3789
3790 i_sysstat (i_sysstat.U):
3791         This variable conditionally defines the I_SYS_STAT symbol,
3792         and indicates whether a C program should include <sys/stat.h>.
3793
3794 i_sysstatfs (i_sysstatfs.U):
3795         This variable conditionally defines the I_SYSSTATFS symbol,
3796         and indicates whether a C program should include <sys/statfs.h>.
3797
3798 i_sysstatvfs (i_sysstatvfs.U):
3799         This variable conditionally defines the I_SYSSTATVFS symbol,
3800         and indicates whether a C program should include <sys/statvfs.h>.
3801
3802 i_systime (i_time.U):
3803         This variable conditionally defines I_SYS_TIME, which indicates
3804         to the C program that it should include <sys/time.h>.
3805
3806 i_systimek (i_time.U):
3807         This variable conditionally defines I_SYS_TIME_KERNEL, which
3808         indicates to the C program that it should include <sys/time.h>
3809         with KERNEL defined.
3810
3811 i_systimes (i_systimes.U):
3812         This variable conditionally defines the I_SYS_TIMES symbol, and indicates
3813         whether a C program should include <sys/times.h>.
3814
3815 i_systypes (i_systypes.U):
3816         This variable conditionally defines the I_SYS_TYPES symbol,
3817         and indicates whether a C program should include <sys/types.h>.
3818
3819 i_sysuio (i_sysuio.U):
3820         This variable conditionally defines the I_SYSUIO symbol, and indicates
3821         whether a C program should include <sys/uio.h>.
3822
3823 i_sysun (i_sysun.U):
3824         This variable conditionally defines I_SYS_UN, which indicates
3825         to the C program that it should include <sys/un.h> to get UNIX
3826         domain socket definitions.
3827
3828 i_sysutsname (i_sysutsname.U):
3829         This variable conditionally defines the I_SYSUTSNAME symbol,
3830         and indicates whether a C program should include <sys/utsname.h>.
3831
3832 i_sysvfs (i_sysvfs.U):
3833         This variable conditionally defines the I_SYSVFS symbol,
3834         and indicates whether a C program should include <sys/vfs.h>.
3835
3836 i_syswait (i_syswait.U):
3837         This variable conditionally defines I_SYS_WAIT, which indicates
3838         to the C program that it should include <sys/wait.h>.
3839
3840 i_termio (i_termio.U):
3841         This variable conditionally defines the I_TERMIO symbol, which
3842         indicates to the C program that it should include <termio.h> rather
3843         than <sgtty.h>.
3844
3845 i_termios (i_termio.U):
3846         This variable conditionally defines the I_TERMIOS symbol, which
3847         indicates to the C program that the POSIX <termios.h> file is
3848         to be included.
3849
3850 i_time (i_time.U):
3851         This variable conditionally defines I_TIME, which indicates
3852         to the C program that it should include <time.h>.
3853
3854 i_unistd (i_unistd.U):
3855         This variable conditionally defines the I_UNISTD symbol, and indicates
3856         whether a C program should include <unistd.h>.
3857
3858 i_ustat (i_ustat.U):
3859         This variable conditionally defines the I_USTAT symbol, and indicates
3860         whether a C program should include <ustat.h>.
3861
3862 i_utime (i_utime.U):
3863         This variable conditionally defines the I_UTIME symbol, and indicates
3864         whether a C program should include <utime.h>.
3865
3866 i_values (i_values.U):
3867         This variable conditionally defines the I_VALUES symbol, and indicates
3868         whether a C program may include <values.h> to get symbols like MAXLONG
3869         and friends.
3870
3871 i_varargs (i_varhdr.U):
3872         This variable conditionally defines I_VARARGS, which indicates
3873         to the C program that it should include <varargs.h>.
3874
3875 i_varhdr (i_varhdr.U):
3876         Contains the name of the header to be included to get va_dcl definition.
3877         Typically one of varargs.h or stdarg.h.
3878
3879 i_vfork (i_vfork.U):
3880         This variable conditionally defines the I_VFORK symbol, and indicates
3881         whether a C program should include vfork.h.
3882
3883 i_xlocale (d_newlocale.U):
3884         This symbol, if defined, indicates to the C program that it should
3885         include <xlocale.h> to get uselocale() and its friends
3886
3887 ignore_versioned_solibs (libs.U):
3888         This variable should be non-empty if non-versioned shared
3889         libraries (libfoo.so.x.y) are to be ignored (because they
3890         cannot be linked against).
3891
3892 inc_version_list (inc_version_list.U):
3893         This variable specifies the list of subdirectories in over
3894         which perl.c:incpush() and lib/lib.pm will automatically
3895         search when adding directories to @INC.  The elements in
3896         the list are separated by spaces.  This is only useful
3897         if you have a perl library directory tree structured like the
3898         default one.  See INSTALL for how this works.  The versioned
3899         site_perl directory was introduced in 5.005, so that is the
3900         lowest possible value.
3901
3902         This list includes architecture-dependent directories back to
3903         version $api_versionstring (e.g. 5.5.640) and
3904         architecture-independent directories all the way back to
3905         5.005.
3906
3907 inc_version_list_init (inc_version_list.U):
3908         This variable holds the same list as inc_version_list, but
3909         each item is enclosed in double quotes and separated by commas,
3910         suitable for use in the PERL_INC_VERSION_LIST initialization.
3911
3912 incpath (usrinc.U):
3913         This variable must precede the normal include path to get the
3914         right one, as in "$incpath/usr/include" or "$incpath/usr/lib".
3915         Value can be "" or "/bsd43" on mips.
3916
3917 incpth (libpth.U):
3918         This variable must precede the normal include path to get the
3919         right one, as in "$incpath/usr/include" or "$incpath/usr/lib".
3920         Value can be "" or "/bsd43" on mips.
3921
3922 inews (Loc.U):
3923         This variable is defined but not used by Configure.
3924         The value is the empty string and is not useful.
3925
3926 initialinstalllocation (bin.U):
3927         When userelocatableinc is true, this variable holds the location
3928         that make install should copy the perl binary to, with all the
3929         run-time relocatable paths calculated from this at install time.
3930         When used, it is initialized to the original value of binexp, and
3931         then binexp is set to '.../', as the other binaries are found
3932         relative to the perl binary.
3933
3934 installarchlib (archlib.U):
3935         This variable is really the same as archlibexp but may differ on
3936         those systems using AFS. For extra portability, only this variable
3937         should be used in makefiles.
3938
3939 installbin (bin.U):
3940         This variable is the same as binexp unless AFS is running in which case
3941         the user is explicitly prompted for it. This variable should always
3942         be used in your makefiles for maximum portability.
3943
3944 installhtml1dir (html1dir.U):
3945         This variable is really the same as html1direxp, unless you are
3946         using a different installprefix.  For extra portability, you
3947         should only use this variable within your makefiles.
3948
3949 installhtml3dir (html3dir.U):
3950         This variable is really the same as html3direxp, unless you are
3951         using a different installprefix.  For extra portability, you
3952         should only use this variable within your makefiles.
3953
3954 installman1dir (man1dir.U):
3955         This variable is really the same as man1direxp, unless you are using
3956         AFS in which case it points to the read/write location whereas
3957         man1direxp only points to the read-only access location. For extra
3958         portability, you should only use this variable within your makefiles.
3959
3960 installman3dir (man3dir.U):
3961         This variable is really the same as man3direxp, unless you are using
3962         AFS in which case it points to the read/write location whereas
3963         man3direxp only points to the read-only access location. For extra
3964         portability, you should only use this variable within your makefiles.
3965
3966 installprefix (installprefix.U):
3967         This variable holds the name of the directory below which
3968         "make install" will install the package.  For most users, this
3969         is the same as prefix.  However, it is useful for
3970         installing the software into a different (usually temporary)
3971         location after which it can be bundled up and moved somehow
3972         to the final location specified by prefix.
3973
3974 installprefixexp (installprefix.U):
3975         This variable holds the full absolute path of installprefix
3976         with all ~-expansion done.
3977
3978 installprivlib (privlib.U):
3979         This variable is really the same as privlibexp but may differ on
3980         those systems using AFS. For extra portability, only this variable
3981         should be used in makefiles.
3982
3983 installscript (scriptdir.U):
3984         This variable is usually the same as scriptdirexp, unless you are on
3985         a system running AFS, in which case they may differ slightly. You
3986         should always use this variable within your makefiles for portability.
3987
3988 installsitearch (sitearch.U):
3989         This variable is really the same as sitearchexp but may differ on
3990         those systems using AFS. For extra portability, only this variable
3991         should be used in makefiles.
3992
3993 installsitebin (sitebin.U):
3994         This variable is usually the same as sitebinexp, unless you are on
3995         a system running AFS, in which case they may differ slightly. You
3996         should always use this variable within your makefiles for portability.
3997
3998 installsitehtml1dir (sitehtml1dir.U):
3999         This variable is really the same as sitehtml1direxp, unless you are using
4000         AFS in which case it points to the read/write location whereas
4001         html1direxp only points to the read-only access location. For extra
4002         portability, you should only use this variable within your makefiles.
4003
4004 installsitehtml3dir (sitehtml3dir.U):
4005         This variable is really the same as sitehtml3direxp, unless you are using
4006         AFS in which case it points to the read/write location whereas
4007         html3direxp only points to the read-only access location. For extra
4008         portability, you should only use this variable within your makefiles.
4009
4010 installsitelib (sitelib.U):
4011         This variable is really the same as sitelibexp but may differ on
4012         those systems using AFS. For extra portability, only this variable
4013         should be used in makefiles.
4014
4015 installsiteman1dir (siteman1dir.U):
4016         This variable is really the same as siteman1direxp, unless you are using
4017         AFS in which case it points to the read/write location whereas
4018         man1direxp only points to the read-only access location. For extra
4019         portability, you should only use this variable within your makefiles.
4020
4021 installsiteman3dir (siteman3dir.U):
4022         This variable is really the same as siteman3direxp, unless you are using
4023         AFS in which case it points to the read/write location whereas
4024         man3direxp only points to the read-only access location. For extra
4025         portability, you should only use this variable within your makefiles.
4026
4027 installsitescript (sitescript.U):
4028         This variable is usually the same as sitescriptexp, unless you are on
4029         a system running AFS, in which case they may differ slightly. You
4030         should always use this variable within your makefiles for portability.
4031
4032 installstyle (installstyle.U):
4033         This variable describes the "style" of the perl installation.
4034         This is intended to be useful for tools that need to
4035         manipulate entire perl distributions.  Perl itself doesn't use
4036         this to find its libraries -- the library directories are
4037         stored directly in Config.pm.  Currently, there are only two
4038         styles:  "lib" and "lib/perl5".  The default library locations
4039         (e.g. privlib, sitelib) are either $prefix/lib or
4040         $prefix/lib/perl5.  The former is useful if $prefix is a
4041         directory dedicated to perl (e.g. /opt/perl), while the latter
4042         is useful if $prefix is shared by many packages, e.g. if
4043         $prefix=/usr/local.
4044
4045         Unfortunately, while this "style" variable is used to set
4046         defaults for all three directory hierarchies (core, vendor, and
4047         site), there is no guarantee that the same style is actually
4048         appropriate for all those directories.  For example, $prefix
4049         might be /opt/perl, but $siteprefix might be /usr/local.
4050         (Perhaps, in retrospect, the "lib" style should never have been
4051         supported, but it did seem like a nice idea at the time.)
4052
4053         The situation is even less clear for tools such as MakeMaker
4054         that can be used to install additional modules into
4055         non-standard places.  For example, if a user intends to install
4056         a module into a private directory (perhaps by setting PREFIX on
4057         the Makefile.PL command line), then there is no reason to
4058         assume that the Configure-time $installstyle setting will be
4059         relevant for that PREFIX.
4060
4061         This may later be extended to include other information, so
4062         be careful with pattern-matching on the results.
4063
4064         For compatibility with perl5.005 and earlier, the default
4065         setting is based on whether or not $prefix contains the string
4066         "perl".
4067
4068 installusrbinperl (instubperl.U):
4069         This variable tells whether Perl should be installed also as
4070         /usr/bin/perl in addition to
4071         $installbin/perl
4072
4073 installvendorarch (vendorarch.U):
4074         This variable is really the same as vendorarchexp but may differ on
4075         those systems using AFS. For extra portability, only this variable
4076         should be used in makefiles.
4077
4078 installvendorbin (vendorbin.U):
4079         This variable is really the same as vendorbinexp but may differ on
4080         those systems using AFS. For extra portability, only this variable
4081         should be used in makefiles.
4082
4083 installvendorhtml1dir (vendorhtml1dir.U):
4084         This variable is really the same as vendorhtml1direxp but may differ on
4085         those systems using AFS. For extra portability, only this variable
4086         should be used in makefiles.
4087
4088 installvendorhtml3dir (vendorhtml3dir.U):
4089         This variable is really the same as vendorhtml3direxp but may differ on
4090         those systems using AFS. For extra portability, only this variable
4091         should be used in makefiles.
4092
4093 installvendorlib (vendorlib.U):
4094         This variable is really the same as vendorlibexp but may differ on
4095         those systems using AFS. For extra portability, only this variable
4096         should be used in makefiles.
4097
4098 installvendorman1dir (vendorman1dir.U):
4099         This variable is really the same as vendorman1direxp but may differ on
4100         those systems using AFS. For extra portability, only this variable
4101         should be used in makefiles.
4102
4103 installvendorman3dir (vendorman3dir.U):
4104         This variable is really the same as vendorman3direxp but may differ on
4105         those systems using AFS. For extra portability, only this variable
4106         should be used in makefiles.
4107
4108 installvendorscript (vendorscript.U):
4109         This variable is really the same as vendorscriptexp but may differ on
4110         those systems using AFS. For extra portability, only this variable
4111         should be used in makefiles.
4112
4113 intsize (intsize.U):
4114         This variable contains the value of the INTSIZE symbol, which
4115         indicates to the C program how many bytes there are in an int.
4116
4117 issymlink (issymlink.U):
4118         This variable holds the test command to test for a symbolic link
4119         (if they are supported).  Typical values include 'test -h' and
4120         'test -L'.
4121
4122 ivdformat (perlxvf.U):
4123         This variable contains the format string used for printing
4124         a Perl IV as a signed decimal integer.
4125
4126 ivsize (perlxv.U):
4127         This variable is the size of an IV in bytes.
4128
4129 ivtype (perlxv.U):
4130         This variable contains the C type used for Perl's IV.
4131
4132 known_extensions (Extensions.U):
4133         This variable holds a list of all extensions (both XS and non-xs)
4134         included in the package source distribution.  This information is
4135         only really of use during the Perl build, as the list makes no
4136         distinction between extensions which were build and installed, and
4137         those which where not.  See "extensions" for the list of extensions
4138         actually built and available.
4139
4140 ksh (Loc.U):
4141         This variable is defined but not used by Configure.
4142         The value is the empty string and is not useful.
4143
4144 ld (dlsrc.U):
4145         This variable indicates the program to be used to link
4146         libraries for dynamic loading.  On some systems, it is 'ld'.
4147         On ELF systems, it should be $cc.  Mostly, we'll try to respect
4148         the hint file setting.
4149
4150 ld_can_script (dlsrc.U):
4151         This variable shows if the loader accepts scripts in the form of
4152         -Wl,--version-script=ld.script. This is currently only supported
4153         for GNU ld on ELF in dynamic loading builds.
4154
4155 lddlflags (dlsrc.U):
4156         This variable contains any special flags that might need to be
4157         passed to $ld to create a shared library suitable for dynamic
4158         loading.  It is up to the makefile to use it.  For hpux, it
4159         should be '-b'.  For sunos 4.1, it is empty.
4160
4161 ldflags (ccflags.U):
4162         This variable contains any additional C loader flags desired by
4163         the user.  It is up to the Makefile to use this.
4164
4165 ldflags_uselargefiles (uselfs.U):
4166         This variable contains the loader flags needed by large file builds
4167         and added to ldflags by hints files.
4168
4169 ldlibpthname (libperl.U):
4170         This variable holds the name of the shared library
4171         search path, often LD_LIBRARY_PATH.  To get an empty
4172         string, the hints file must set this to 'none'.
4173
4174 less (Loc.U):
4175         This variable is used internally by Configure to determine the
4176         full pathname (if any) of the less program.  After Configure runs,
4177         the value is reset to a plain "less" and is not useful.
4178
4179 lib_ext (Unix.U):
4180         This is an old synonym for _a.
4181
4182 libc (libc.U):
4183         This variable contains the location of the C library.
4184
4185 libperl (libperl.U):
4186         The perl executable is obtained by linking perlmain.c with
4187         libperl, any static extensions (usually just DynaLoader),
4188         and any other libraries needed on this system.  libperl
4189         is usually libperl.a, but can also be libperl.so.xxx if
4190         the user wishes to build a perl executable with a shared
4191         library.
4192
4193 libpth (libpth.U):
4194         This variable holds the general path (space-separated) used to find
4195         libraries. It is intended to be used by other units.
4196
4197 libs (libs.U):
4198         This variable holds the additional libraries we want to use.
4199         It is up to the Makefile to deal with it.  The list can be empty.
4200
4201 libsdirs (libs.U):
4202         This variable holds the directory names aka dirnames of the libraries
4203         we found and accepted, duplicates are removed.
4204
4205 libsfiles (libs.U):
4206         This variable holds the filenames aka basenames of the libraries
4207         we found and accepted.
4208
4209 libsfound (libs.U):
4210         This variable holds the full pathnames of the libraries
4211         we found and accepted.
4212
4213 libspath (libs.U):
4214         This variable holds the directory names probed for libraries.
4215
4216 libswanted (Myinit.U):
4217         This variable holds a list of all the libraries we want to
4218         search.  The order is chosen to pick up the c library
4219         ahead of ucb or bsd libraries for SVR4.
4220
4221 libswanted_uselargefiles (uselfs.U):
4222         This variable contains the libraries needed by large file builds
4223         and added to ldflags by hints files.  It is a space separated list
4224         of the library names without the "lib" prefix or any suffix, just
4225         like libswanted..
4226
4227 line (Loc.U):
4228         This variable is defined but not used by Configure.
4229         The value is the empty string and is not useful.
4230
4231 lint (Loc.U):
4232         This variable is defined but not used by Configure.
4233         The value is the empty string and is not useful.
4234
4235 lkflags (ccflags.U):
4236         This variable contains any additional C partial linker flags desired by
4237         the user.  It is up to the Makefile to use this.
4238
4239 ln (Loc.U):
4240         This variable is used internally by Configure to determine the
4241         full pathname (if any) of the ln program.  After Configure runs,
4242         the value is reset to a plain "ln" and is not useful.
4243
4244 lns (lns.U):
4245         This variable holds the name of the command to make
4246         symbolic links (if they are supported).  It can be used
4247         in the Makefile. It is either 'ln -s' or 'ln'
4248
4249 localtime_r_proto (d_localtime_r.U):
4250         This variable encodes the prototype of localtime_r.
4251         It is zero if d_localtime_r is undef, and one of the
4252         REENTRANT_PROTO_T_ABC macros of reentr.h if d_localtime_r
4253         is defined.
4254
4255 locincpth (ccflags.U):
4256         This variable contains a list of additional directories to be
4257         searched by the compiler.  The appropriate '-I' directives will
4258         be added to ccflags.  This is intended to simplify setting
4259         local directories from the Configure command line.
4260         It's not much, but it parallels the loclibpth stuff in libpth.U.
4261
4262 loclibpth (libpth.U):
4263         This variable holds the paths (space-separated) used to find local
4264         libraries.  It is prepended to libpth, and is intended to be easily
4265         set from the command line.
4266
4267 longdblinfbytes (infnan.U):
4268         This variable contains comma-separated list of hexadecimal bytes
4269         for the long double precision infinity.
4270
4271 longdblkind (d_longdbl.U):
4272         This variable, if defined, encodes the type of a long double:
4273         0 = double,
4274         1 = IEEE 754 128-bit little endian,
4275         2 = IEEE 754 128-bit big endian,
4276         3 = x86 80-bit little endian,
4277         4 = x86 80-bit big endian,
4278         5 = double-double 128-bit little endian,
4279         6 = double-double 128-bit big endian,
4280         7 = 128-bit mixed-endian double-double (64-bit LEs in BE),
4281         8 = 128-bit mixed-endian double-double (64-bit BEs in LE),
4282         9 = 128-bit PDP-style mixed-endian long doubles,
4283         -1 = unknown format.
4284
4285 longdblmantbits (mantbits.U):
4286         This symbol, if defined, tells how many mantissa bits
4287         there are in long double precision floating point format.
4288         Note that this can be LDBL_MANT_DIG minus one,
4289         since LDBL_MANT_DIG can include the IEEE 754 implicit bit.
4290         The common x86-style 80-bit long double does not have
4291         an implicit bit.
4292
4293 longdblnanbytes (infnan.U):
4294         This variable contains comma-separated list of hexadecimal bytes
4295         for the long double precision not-a-number.
4296
4297 longdblsize (d_longdbl.U):
4298         This variable contains the value of the LONG_DOUBLESIZE symbol, which
4299         indicates to the C program how many bytes there are in a long double,
4300         if this system supports long doubles.  Note that this is
4301         sizeof(long double), which may include unused bytes.
4302
4303 longlongsize (d_longlong.U):
4304         This variable contains the value of the LONGLONGSIZE symbol, which
4305         indicates to the C program how many bytes there are in a long long,
4306         if this system supports long long.
4307
4308 longsize (intsize.U):
4309         This variable contains the value of the LONGSIZE symbol, which
4310         indicates to the C program how many bytes there are in a long.
4311
4312 lp (Loc.U):
4313         This variable is defined but not used by Configure.
4314         The value is the empty string and is not useful.
4315
4316 lpr (Loc.U):
4317         This variable is defined but not used by Configure.
4318         The value is the empty string and is not useful.
4319
4320 ls (Loc.U):
4321         This variable is used internally by Configure to determine the
4322         full pathname (if any) of the ls program.  After Configure runs,
4323         the value is reset to a plain "ls" and is not useful.
4324
4325 lseeksize (lseektype.U):
4326         This variable defines lseektype to be something like off_t, long,
4327         or whatever type is used to declare lseek offset's type in the
4328         kernel (which also appears to be lseek's return type).
4329
4330 lseektype (lseektype.U):
4331         This variable defines lseektype to be something like off_t, long,
4332         or whatever type is used to declare lseek offset's type in the
4333         kernel (which also appears to be lseek's return type).
4334
4335 mail (Loc.U):
4336         This variable is defined but not used by Configure.
4337         The value is the empty string and is not useful.
4338
4339 mailx (Loc.U):
4340         This variable is defined but not used by Configure.
4341         The value is the empty string and is not useful.
4342
4343 make (Loc.U):
4344         This variable is used internally by Configure to determine the
4345         full pathname (if any) of the make program.  After Configure runs,
4346         the value is reset to a plain "make" and is not useful.
4347
4348 make_set_make (make.U):
4349         Some versions of 'make' set the variable MAKE.  Others do not.
4350         This variable contains the string to be included in Makefile.SH
4351         so that MAKE is set if needed, and not if not needed.
4352         Possible values are:
4353
4354         make_set_make='#'               # If your make program handles this for you,
4355
4356         make_set_make="MAKE=$make"      # if it doesn't.
4357
4358         This uses a comment character so that we can distinguish a
4359         'set' value (from a previous config.sh or Configure '-D' option)
4360         from an uncomputed value.
4361
4362 mallocobj (mallocsrc.U):
4363         This variable contains the name of the malloc.o that this package
4364         generates, if that malloc.o is preferred over the system malloc.
4365         Otherwise the value is null.  This variable is intended for generating
4366         Makefiles.  See mallocsrc.
4367
4368 mallocsrc (mallocsrc.U):
4369         This variable contains the name of the malloc.c that comes with
4370         the package, if that malloc.c is preferred over the system malloc.
4371         Otherwise the value is null.  This variable is intended for generating
4372         Makefiles.
4373
4374 malloctype (mallocsrc.U):
4375         This variable contains the kind of ptr returned by malloc and realloc.
4376
4377 man1dir (man1dir.U):
4378         This variable contains the name of the directory in which manual
4379         source pages are to be put.  It is the responsibility of the
4380         Makefile.SH to get the value of this into the proper command.
4381         You must be prepared to do the ~name expansion yourself.
4382
4383 man1direxp (man1dir.U):
4384         This variable is the same as the man1dir variable, but is filename
4385         expanded at configuration time, for convenient use in makefiles.
4386
4387 man1ext (man1dir.U):
4388         This variable contains the extension that the manual page should
4389         have: one of 'n', 'l', or '1'.  The Makefile must supply the '.'.
4390         See man1dir.
4391
4392 man3dir (man3dir.U):
4393         This variable contains the name of the directory in which manual
4394         source pages are to be put.  It is the responsibility of the
4395         Makefile.SH to get the value of this into the proper command.
4396         You must be prepared to do the ~name expansion yourself.
4397
4398 man3direxp (man3dir.U):
4399         This variable is the same as the man3dir variable, but is filename
4400         expanded at configuration time, for convenient use in makefiles.
4401
4402 man3ext (man3dir.U):
4403         This variable contains the extension that the manual page should
4404         have: one of 'n', 'l', or '3'.  The Makefile must supply the '.'.
4405         See man3dir.
4406
4407 mips_type (usrinc.U):
4408         This variable holds the environment type for the mips system.
4409         Possible values are "BSD 4.3" and "System V".
4410
4411 mistrustnm (Csym.U):
4412         This variable can be used to establish a fallthrough for the cases
4413         where nm fails to find a symbol.  If usenm is false or usenm is true
4414         and mistrustnm is false, this variable has no effect.  If usenm is true
4415         and mistrustnm is "compile", a test program will be compiled to try to
4416         find any symbol that can't be located via nm lookup.  If mistrustnm is
4417         "run", the test program will be run as well as being compiled.
4418
4419 mkdir (Loc.U):
4420         This variable is used internally by Configure to determine the
4421         full pathname (if any) of the mkdir program.  After Configure runs,
4422         the value is reset to a plain "mkdir" and is not useful.
4423
4424 mmaptype (d_mmap.U):
4425         This symbol contains the type of pointer returned by mmap()
4426         (and simultaneously the type of the first argument).
4427         It can be 'void *' or 'caddr_t'.
4428
4429 modetype (modetype.U):
4430         This variable defines modetype to be something like mode_t,
4431         int, unsigned short, or whatever type is used to declare file
4432         modes for system calls.
4433
4434 more (Loc.U):
4435         This variable is used internally by Configure to determine the
4436         full pathname (if any) of the more program.  After Configure runs,
4437         the value is reset to a plain "more" and is not useful.
4438
4439 multiarch (multiarch.U):
4440         This variable conditionally defines the MULTIARCH symbol
4441         which signifies the presence of multiplatform files.
4442         This is normally set by hints files.
4443
4444 mv (Loc.U):
4445         This variable is defined but not used by Configure.
4446         The value is the empty string and is not useful.
4447
4448 myarchname (archname.U):
4449         This variable holds the architecture name computed by Configure in
4450         a previous run. It is not intended to be perused by any user and
4451         should never be set in a hint file.
4452
4453 mydomain (myhostname.U):
4454         This variable contains the eventual value of the MYDOMAIN symbol,
4455         which is the domain of the host the program is going to run on.
4456         The domain must be appended to myhostname to form a complete host name.
4457         The dot comes with mydomain, and need not be supplied by the program.
4458
4459 myhostname (myhostname.U):
4460         This variable contains the eventual value of the MYHOSTNAME symbol,
4461         which is the name of the host the program is going to run on.
4462         The domain is not kept with hostname, but must be gotten from mydomain.
4463         The dot comes with mydomain, and need not be supplied by the program.
4464
4465 myuname (Oldconfig.U):
4466         The output of 'uname -a' if available, otherwise the hostname.
4467         The whole thing is then lower-cased and slashes and single quotes are
4468         removed.
4469
4470 n (n.U):
4471         This variable contains the '-n' flag if that is what causes the echo
4472         command to suppress newline.  Otherwise it is null.  Correct usage is
4473         $echo $n "prompt for a question: $c".
4474
4475 need_va_copy (need_va_copy.U):
4476         This symbol, if defined, indicates that the system stores
4477         the variable argument list datatype, va_list, in a format
4478         that cannot be copied by simple assignment, so that some
4479         other means must be used when copying is required.
4480         As such systems vary in their provision (or non-provision)
4481         of copying mechanisms, handy.h defines a platform-
4482         independent macro, Perl_va_copy(src, dst), to do the job.
4483
4484 netdb_hlen_type (netdbtype.U):
4485         This variable holds the type used for the 2nd argument to
4486         gethostbyaddr().  Usually, this is int or size_t or unsigned.
4487         This is only useful if you have gethostbyaddr(), naturally.
4488
4489 netdb_host_type (netdbtype.U):
4490         This variable holds the type used for the 1st argument to
4491         gethostbyaddr().  Usually, this is char * or void *,  possibly
4492         with or without a const prefix.
4493         This is only useful if you have gethostbyaddr(), naturally.
4494
4495 netdb_name_type (netdbtype.U):
4496         This variable holds the type used for the argument to
4497         gethostbyname().  Usually, this is char * or const char *.
4498         This is only useful if you have gethostbyname(), naturally.
4499
4500 netdb_net_type (netdbtype.U):
4501         This variable holds the type used for the 1st argument to
4502         getnetbyaddr().  Usually, this is int or long.
4503         This is only useful if you have getnetbyaddr(), naturally.
4504
4505 nm (Loc.U):
4506         This variable is used internally by Configure to determine the
4507         full pathname (if any) of the nm program.  After Configure runs,
4508         the value is reset to a plain "nm" and is not useful.
4509
4510 nm_opt (usenm.U):
4511         This variable holds the options that may be necessary for nm.
4512
4513 nm_so_opt (usenm.U):
4514         This variable holds the options that may be necessary for nm
4515         to work on a shared library but that can not be used on an
4516         archive library.  Currently, this is only used by Linux, where
4517         nm --dynamic is *required* to get symbols from an ELF library which
4518         has been stripped, but nm --dynamic is *fatal* on an archive library.
4519         Maybe Linux should just always set usenm=false.
4520
4521 nonxs_ext (Extensions.U):
4522         This variable holds a list of all non-xs extensions built and
4523         installed by the package.  By default, all non-xs extensions
4524         distributed will be built, with the exception of platform-specific
4525         extensions (currently only one VMS specific extension).
4526
4527 nroff (Loc.U):
4528         This variable is used internally by Configure to determine the
4529         full pathname (if any) of the nroff program.  After Configure runs,
4530         the value is reset to a plain "nroff" and is not useful.
4531
4532 nv_overflows_integers_at (perlxv.U):
4533         This variable gives the largest integer value that NVs can hold
4534         as a constant floating point expression.
4535         If it could not be determined, it holds the value 0.
4536
4537 nv_preserves_uv_bits (perlxv.U):
4538         This variable indicates how many of bits type uvtype
4539         a variable nvtype can preserve.
4540
4541 nveformat (perlxvf.U):
4542         This variable contains the format string used for printing
4543         a Perl NV using %e-ish floating point format.
4544
4545 nvEUformat (perlxvf.U):
4546         This variable contains the format string used for printing
4547         a Perl NV using %E-ish floating point format.
4548
4549 nvfformat (perlxvf.U):
4550         This variable contains the format string used for printing
4551         a Perl NV using %f-ish floating point format.
4552
4553 nvFUformat (perlxvf.U):
4554         This variable contains the format string used for printing
4555         a Perl NV using %F-ish floating point format.
4556
4557 nvgformat (perlxvf.U):
4558         This variable contains the format string used for printing
4559         a Perl NV using %g-ish floating point format.
4560
4561 nvGUformat (perlxvf.U):
4562         This variable contains the format string used for printing
4563         a Perl NV using %G-ish floating point format.
4564
4565 nvmantbits (mantbits.U):
4566         This variable tells how many bits the mantissa of a Perl NV has,
4567         not including the possible implicit bit.
4568
4569 nvsize (perlxv.U):
4570         This variable is the size of a Perl NV in bytes.
4571         Note that some floating point formats have unused bytes.
4572
4573 nvtype (perlxv.U):
4574         This variable contains the C type used for Perl's NV.
4575
4576 o_nonblock (nblock_io.U):
4577         This variable bears the symbol value to be used during open() or fcntl()
4578         to turn on non-blocking I/O for a file descriptor. If you wish to switch
4579         between blocking and non-blocking, you may try ioctl(FIOSNBIO) instead,
4580         but that is only supported by some devices.
4581
4582 obj_ext (Unix.U):
4583         This is an old synonym for _o.
4584
4585 old_pthread_create_joinable (d_pthrattrj.U):
4586         This variable defines the constant to use for creating joinable
4587         (aka undetached) pthreads.  Unused if pthread.h defines
4588         PTHREAD_CREATE_JOINABLE.  If used, possible values are
4589         PTHREAD_CREATE_UNDETACHED and __UNDETACHED.
4590
4591 optimize (ccflags.U):
4592         This variable contains any optimizer/debugger flag that should be used.
4593         It is up to the Makefile to use it.
4594
4595 orderlib (orderlib.U):
4596         This variable is "true" if the components of libraries must be ordered
4597         (with `lorder $* | tsort`) before placing them in an archive.  Set to
4598         "false" if ranlib or ar can generate random libraries.
4599
4600 osname (Oldconfig.U):
4601         This variable contains the operating system name (e.g. sunos,
4602         solaris, hpux, etc.).  It can be useful later on for setting
4603         defaults.  Any spaces are replaced with underscores.  It is set
4604         to a null string if we can't figure it out.
4605
4606 osvers (Oldconfig.U):
4607         This variable contains the operating system version (e.g.
4608         4.1.3, 5.2, etc.).  It is primarily used for helping select
4609         an appropriate hints file, but might be useful elsewhere for
4610         setting defaults.  It is set to '' if we can't figure it out.
4611         We try to be flexible about how much of the version number
4612         to keep, e.g. if 4.1.1, 4.1.2, and 4.1.3 are essentially the
4613         same for this package, hints files might just be os_4.0 or
4614         os_4.1, etc., not keeping separate files for each little release.
4615
4616 otherlibdirs (otherlibdirs.U):
4617         This variable contains a colon-separated set of paths for the perl
4618         binary to search for additional library files or modules.
4619         These directories will be tacked to the end of @INC.
4620         Perl will automatically search below each path for version-
4621         and architecture-specific directories.  See inc_version_list
4622         for more details.
4623         A value of ' ' means 'none' and is used to preserve this value
4624         for the next run through Configure.
4625
4626 package (package.U):
4627         This variable contains the name of the package being constructed.
4628         It is primarily intended for the use of later Configure units.
4629
4630 pager (pager.U):
4631         This variable contains the name of the preferred pager on the system.
4632         Usual values are (the full pathnames of) more, less, pg, or cat.
4633
4634 passcat (nis.U):
4635         This variable contains a command that produces the text of the
4636         /etc/passwd file.  This is normally "cat /etc/passwd", but can be
4637         "ypcat passwd" when NIS is used.
4638         On some systems, such as os390, there may be no equivalent
4639         command, in which case this variable is unset.
4640
4641 patchlevel (patchlevel.U):
4642         The patchlevel level of this package.
4643         The value of patchlevel comes from the patchlevel.h file.
4644         In a version number such as 5.6.1, this is the "6".
4645         In patchlevel.h, this is referred to as "PERL_VERSION".
4646
4647 path_sep (Unix.U):
4648         This is an old synonym for p_ in Head.U, the character
4649         used to separate elements in the command shell search PATH.
4650
4651 perl (Loc.U):
4652         This variable is used internally by Configure to determine the
4653         full pathname (if any) of the perl program.  After Configure runs,
4654         the value is reset to a plain "perl" and is not useful.
4655
4656 perl5 (perl5.U):
4657         This variable contains the full path (if any) to a previously
4658         installed perl5.005 or later suitable for running the script
4659         to determine inc_version_list.
4660
4661 PERL_API_REVISION (patchlevel.h):
4662         This number describes the earliest compatible PERL_REVISION of
4663         Perl ("compatibility" here being defined as sufficient binary/API
4664         compatibility to run XS code built with the older version).
4665         Normally this does not change across maintenance releases.
4666         Please read the comment in patchlevel.h.
4667
4668 PERL_API_SUBVERSION (patchlevel.h):
4669         This number describes the earliest compatible PERL_SUBVERSION of
4670         Perl ("compatibility" here being defined as sufficient binary/API
4671         compatibility to run XS code built with the older version).
4672         Normally this does not change across maintenance releases.
4673         Please read the comment in patchlevel.h.
4674
4675 PERL_API_VERSION (patchlevel.h):
4676         This number describes the earliest compatible PERL_VERSION of
4677         Perl ("compatibility" here being defined as sufficient binary/API
4678         compatibility to run XS code built with the older version).
4679         Normally this does not change across maintenance releases.
4680         Please read the comment in patchlevel.h.
4681
4682 PERL_CONFIG_SH (Oldsyms.U):
4683         This is set to 'true' in config.sh so that a shell script
4684         sourcing config.sh can tell if it has been sourced already.
4685
4686 PERL_PATCHLEVEL (Oldsyms.U):
4687         This symbol reflects the patchlevel, if available. Will usually
4688         come from the .patch file, which is available when the perl
4689         source tree was fetched with rsync.
4690
4691 perl_patchlevel (patchlevel.U):
4692         This is the Perl patch level, a numeric change identifier,
4693         as defined by whichever source code maintenance system
4694         is used to maintain the patches; currently Perforce.
4695         It does not correlate with the Perl version numbers or
4696         the maintenance versus development dichotomy except
4697         by also being increasing.
4698
4699 PERL_REVISION (Oldsyms.U):
4700         In a Perl version number such as 5.6.2, this is the 5.
4701         This value is manually set in patchlevel.h
4702
4703 perl_static_inline (d_static_inline.U):
4704         This variable defines the PERL_STATIC_INLINE symbol to
4705         the best-guess incantation to use for static inline functions.
4706         Possibilities include
4707         static inline       (c99)
4708         static __inline__   (gcc -ansi)
4709         static __inline     (MSVC)
4710         static _inline      (older MSVC)
4711         static              (c89 compilers)
4712
4713 PERL_SUBVERSION (Oldsyms.U):
4714         In a Perl version number such as 5.6.2, this is the 2.
4715         Values greater than 50 represent potentially unstable
4716         development subversions.
4717         This value is manually set in patchlevel.h
4718
4719 PERL_VERSION (Oldsyms.U):
4720         In a Perl version number such as 5.6.2, this is the 6.
4721         This value is manually set in patchlevel.h
4722
4723 perladmin (perladmin.U):
4724         Electronic mail address of the perl5 administrator.
4725
4726 perllibs (End.U):
4727         The list of libraries needed by Perl only (any libraries needed
4728         by extensions only will by dropped, if using dynamic loading).
4729
4730 perlpath (perlpath.U):
4731         This variable contains the eventual value of the PERLPATH symbol,
4732         which contains the name of the perl interpreter to be used in
4733         shell scripts and in the "eval 'exec'" idiom.  This variable is
4734         not necessarily the pathname of the file containing the perl
4735         interpreter; you must append the executable extension (_exe) if
4736         it is not already present.  Note that Perl code that runs during
4737         the Perl build process cannot reference this variable, as Perl
4738         may not have been installed, or even if installed, may be a
4739         different version of Perl.
4740
4741 pg (Loc.U):
4742         This variable is used internally by Configure to determine the
4743         full pathname (if any) of the pg program.  After Configure runs,
4744         the value is reset to a plain "pg" and is not useful.
4745
4746 phostname (myhostname.U):
4747         This variable contains the eventual value of the PHOSTNAME symbol,
4748         which is a command that can be fed to popen() to get the host name.
4749         The program should probably not presume that the domain is or isn't
4750         there already.
4751
4752 pidtype (pidtype.U):
4753         This variable defines PIDTYPE to be something like pid_t, int,
4754         ushort, or whatever type is used to declare process ids in the kernel.
4755
4756 plibpth (libpth.U):
4757         Holds the private path used by Configure to find out the libraries.
4758         Its value is prepend to libpth. This variable takes care of special
4759         machines, like the mips.  Usually, it should be empty.
4760
4761 pmake (Loc.U):
4762         This variable is defined but not used by Configure.
4763         The value is the empty string and is not useful.
4764
4765 pr (Loc.U):
4766         This variable is defined but not used by Configure.
4767         The value is the empty string and is not useful.
4768
4769 prefix (prefix.U):
4770         This variable holds the name of the directory below which the
4771         user will install the package.  Usually, this is /usr/local, and
4772         executables go in /usr/local/bin, library stuff in /usr/local/lib,
4773         man pages in /usr/local/man, etc.  It is only used to set defaults
4774         for things in bin.U, mansrc.U, privlib.U, or scriptdir.U.
4775
4776 prefixexp (prefix.U):
4777         This variable holds the full absolute path of the directory below
4778         which the user will install the package.  Derived from prefix.
4779
4780 privlib (privlib.U):
4781         This variable contains the eventual value of the PRIVLIB symbol,
4782         which is the name of the private library for this package.  It may
4783         have a ~ on the front. It is up to the makefile to eventually create
4784         this directory while performing installation (with ~ substitution).
4785
4786 privlibexp (privlib.U):
4787         This variable is the ~name expanded version of privlib, so that you
4788         may use it directly in Makefiles or shell scripts.
4789
4790 procselfexe (d_procselfexe.U):
4791         If d_procselfexe is defined, $procselfexe is the filename
4792         of the symbolic link pointing to the absolute pathname of
4793         the executing program.
4794
4795 prototype (prototype.U):
4796         This variable holds the eventual value of CAN_PROTOTYPE, which
4797         indicates the C compiler can handle function prototypes.
4798
4799 ptrsize (ptrsize.U):
4800         This variable contains the value of the PTRSIZE symbol, which
4801         indicates to the C program how many bytes there are in a pointer.
4802
4803 quadkind (quadtype.U):
4804         This variable, if defined, encodes the type of a quad:
4805         1 = int, 2 = long, 3 = long long, 4 = int64_t.
4806
4807 quadtype (quadtype.U):
4808         This variable defines Quad_t to be something like long, int,
4809         long long, int64_t, or whatever type is used for 64-bit integers.
4810
4811 randbits (randfunc.U):
4812         Indicates how many bits are produced by the function used to
4813         generate normalized random numbers.
4814
4815 randfunc (randfunc.U):
4816         Indicates the name of the random number function to use.
4817         Values include drand48, random, and rand. In C programs,
4818         the 'Drand01' macro is defined to generate uniformly distributed
4819         random numbers over the range [0., 1.[ (see drand01 and nrand).
4820
4821 random_r_proto (d_random_r.U):
4822         This variable encodes the prototype of random_r.
4823         It is zero if d_random_r is undef, and one of the
4824         REENTRANT_PROTO_T_ABC macros of reentr.h if d_random_r
4825         is defined.
4826
4827 randseedtype (randfunc.U):
4828         Indicates the type of the argument of the seedfunc.
4829
4830 ranlib (orderlib.U):
4831         This variable is set to the pathname of the ranlib program, if it is
4832         needed to generate random libraries.  Set to ":" if ar can generate
4833         random libraries or if random libraries are not supported
4834
4835 rd_nodata (nblock_io.U):
4836         This variable holds the return code from read() when no data is
4837         present. It should be -1, but some systems return 0 when O_NDELAY is
4838         used, which is a shame because you cannot make the difference between
4839         no data and an EOF.. Sigh!
4840
4841 readdir64_r_proto (d_readdir64_r.U):
4842         This variable encodes the prototype of readdir64_r.
4843         It is zero if d_readdir64_r is undef, and one of the
4844         REENTRANT_PROTO_T_ABC macros of reentr.h if d_readdir64_r
4845         is defined.
4846
4847 readdir_r_proto (d_readdir_r.U):
4848         This variable encodes the prototype of readdir_r.
4849         It is zero if d_readdir_r is undef, and one of the
4850         REENTRANT_PROTO_T_ABC macros of reentr.h if d_readdir_r
4851         is defined.
4852
4853 revision (patchlevel.U):
4854         The value of revision comes from the patchlevel.h file.
4855         In a version number such as 5.6.1, this is the "5".
4856         In patchlevel.h, this is referred to as "PERL_REVISION".
4857
4858 rm (Loc.U):
4859         This variable is used internally by Configure to determine the
4860         full pathname (if any) of the rm program.  After Configure runs,
4861         the value is reset to a plain "rm" and is not useful.
4862
4863 rm_try (Unix.U):
4864         This is a cleanup variable for try test programs.
4865         Internal Configure use only.
4866
4867 rmail (Loc.U):
4868         This variable is defined but not used by Configure.
4869         The value is the empty string and is not useful.
4870
4871 run (Cross.U):
4872         This variable contains the command used by Configure
4873         to copy and execute a cross-compiled executable in the
4874         target host.  Useful and available only during Perl build.
4875         Empty string '' if not cross-compiling.
4876
4877 runnm (usenm.U):
4878         This variable contains 'true' or 'false' depending whether the
4879         nm extraction should be performed or not, according to the value
4880         of usenm and the flags on the Configure command line.
4881
4882 sched_yield (d_pthread_y.U):
4883         This variable defines the way to yield the execution
4884         of the current thread.
4885
4886 scriptdir (scriptdir.U):
4887         This variable holds the name of the directory in which the user wants
4888         to put publicly scripts for the package in question.  It is either
4889         the same directory as for binaries, or a special one that can be
4890         mounted across different architectures, like /usr/share. Programs
4891         must be prepared to deal with ~name expansion.
4892
4893 scriptdirexp (scriptdir.U):
4894         This variable is the same as scriptdir, but is filename expanded
4895         at configuration time, for programs not wanting to bother with it.
4896
4897 sed (Loc.U):
4898         This variable is used internally by Configure to determine the
4899         full pathname (if any) of the sed program.  After Configure runs,
4900         the value is reset to a plain "sed" and is not useful.
4901
4902 seedfunc (randfunc.U):
4903         Indicates the random number generating seed function.
4904         Values include srand48, srandom, and srand.
4905
4906 selectminbits (selectminbits.U):
4907         This variable holds the minimum number of bits operated by select.
4908         That is, if you do select(n, ...), how many bits at least will be
4909         cleared in the masks if some activity is detected.  Usually this
4910         is either n or 32*ceil(n/32), especially many little-endians do
4911         the latter.  This is only useful if you have select(), naturally.
4912
4913 selecttype (selecttype.U):
4914         This variable holds the type used for the 2nd, 3rd, and 4th
4915         arguments to select.  Usually, this is 'fd_set *', if HAS_FD_SET
4916         is defined, and 'int *' otherwise.  This is only useful if you
4917         have select(), naturally.
4918
4919 sendmail (Loc.U):
4920         This variable is defined but not used by Configure.
4921         The value is the empty string and is not useful.
4922
4923 setgrent_r_proto (d_setgrent_r.U):
4924         This variable encodes the prototype of setgrent_r.
4925         It is zero if d_setgrent_r is undef, and one of the
4926         REENTRANT_PROTO_T_ABC macros of reentr.h if d_setgrent_r
4927         is defined.
4928
4929 sethostent_r_proto (d_sethostent_r.U):
4930         This variable encodes the prototype of sethostent_r.
4931         It is zero if d_sethostent_r is undef, and one of the
4932         REENTRANT_PROTO_T_ABC macros of reentr.h if d_sethostent_r
4933         is defined.
4934
4935 setlocale_r_proto (d_setlocale_r.U):
4936         This variable encodes the prototype of setlocale_r.
4937         It is zero if d_setlocale_r is undef, and one of the
4938         REENTRANT_PROTO_T_ABC macros of reentr.h if d_setlocale_r
4939         is defined.
4940
4941 setnetent_r_proto (d_setnetent_r.U):
4942         This variable encodes the prototype of setnetent_r.
4943         It is zero if d_setnetent_r is undef, and one of the
4944         REENTRANT_PROTO_T_ABC macros of reentr.h if d_setnetent_r
4945         is defined.
4946
4947 setprotoent_r_proto (d_setprotoent_r.U):
4948         This variable encodes the prototype of setprotoent_r.
4949         It is zero if d_setprotoent_r is undef, and one of the
4950         REENTRANT_PROTO_T_ABC macros of reentr.h if d_setprotoent_r
4951         is defined.
4952
4953 setpwent_r_proto (d_setpwent_r.U):
4954         This variable encodes the prototype of setpwent_r.
4955         It is zero if d_setpwent_r is undef, and one of the
4956         REENTRANT_PROTO_T_ABC macros of reentr.h if d_setpwent_r
4957         is defined.
4958
4959 setservent_r_proto (d_setservent_r.U):
4960         This variable encodes the prototype of setservent_r.
4961         It is zero if d_setservent_r is undef, and one of the
4962         REENTRANT_PROTO_T_ABC macros of reentr.h if d_setservent_r
4963         is defined.
4964
4965 sGMTIME_max (time_size.U):
4966         This variable defines the maximum value of the time_t offset that
4967         the system function gmtime () accepts
4968
4969 sGMTIME_min (time_size.U):
4970         This variable defines the minimum value of the time_t offset that
4971         the system function gmtime () accepts
4972
4973 sh (sh.U):
4974         This variable contains the full pathname of the shell used
4975         on this system to execute Bourne shell scripts.  Usually, this will be
4976         /bin/sh, though it's possible that some systems will have /bin/ksh,
4977         /bin/pdksh, /bin/ash, /bin/bash, or even something such as
4978         D:/bin/sh.exe.
4979         This unit comes before Options.U, so you can't set sh with a '-D'
4980         option, though you can override this (and startsh)
4981         with '-O -Dsh=/bin/whatever -Dstartsh=whatever'
4982
4983 shar (Loc.U):
4984         This variable is defined but not used by Configure.
4985         The value is the empty string and is not useful.
4986
4987 sharpbang (spitshell.U):
4988         This variable contains the string #! if this system supports that
4989         construct.
4990
4991 shmattype (d_shmat.U):
4992         This symbol contains the type of pointer returned by shmat().
4993         It can be 'void *' or 'char *'.
4994
4995 shortsize (intsize.U):
4996         This variable contains the value of the SHORTSIZE symbol which
4997         indicates to the C program how many bytes there are in a short.
4998
4999 shrpenv (libperl.U):
5000         If the user builds a shared libperl.so, then we need to tell the
5001         'perl' executable where it will be able to find the installed libperl.so.
5002         One way to do this on some systems is to set the environment variable
5003         LD_RUN_PATH to the directory that will be the final location of the
5004         shared libperl.so.  The makefile can use this with something like
5005         $shrpenv $(CC) -o perl perlmain.o $libperl $libs
5006         Typical values are
5007         shrpenv="env LD_RUN_PATH=$archlibexp/CORE"
5008         or
5009         shrpenv=''
5010         See the main perl Makefile.SH for actual working usage.
5011         Alternatively, we might be able to use a command line option such
5012         as -R $archlibexp/CORE (Solaris) or -Wl,-rpath
5013         $archlibexp/CORE (Linux).
5014
5015 shsharp (spitshell.U):
5016         This variable tells further Configure units whether your sh can
5017         handle # comments.
5018
5019 sig_count (sig_name.U):
5020         This variable holds a number larger than the largest valid
5021         signal number.  This is usually the same as the NSIG macro.
5022
5023 sig_name (sig_name.U):
5024         This variable holds the signal names, space separated. The leading
5025         SIG in signal name is removed.  A ZERO is prepended to the list.
5026         This is currently not used, sig_name_init is used instead.
5027
5028 sig_name_init (sig_name.U):
5029         This variable holds the signal names, enclosed in double quotes and
5030         separated by commas, suitable for use in the SIG_NAME definition
5031         below.  A "ZERO" is prepended to the list, and the list is
5032         terminated with a plain 0.  The leading SIG in signal names
5033         is removed. See sig_num.
5034
5035 sig_num (sig_name.U):
5036         This variable holds the signal numbers, space separated. A ZERO is
5037         prepended to the list (corresponding to the fake SIGZERO).
5038         Those numbers correspond to  the value of the signal listed
5039         in the same place within the sig_name list.
5040         This is currently not used, sig_num_init is used instead.
5041
5042 sig_num_init (sig_name.U):
5043         This variable holds the signal numbers, enclosed in double quotes and
5044         separated by commas, suitable for use in the SIG_NUM definition
5045         below.  A "ZERO" is prepended to the list, and the list is
5046         terminated with a plain 0.
5047
5048 sig_size (sig_name.U):
5049         This variable contains the number of elements of the sig_name
5050         and sig_num arrays.
5051
5052 signal_t (d_voidsig.U):
5053         This variable holds the type of the signal handler (void or int).
5054
5055 sitearch (sitearch.U):
5056         This variable contains the eventual value of the SITEARCH symbol,
5057         which is the name of the private library for this package.  It may
5058         have a ~ on the front. It is up to the makefile to eventually create
5059         this directory while performing installation (with ~ substitution).
5060         The standard distribution will put nothing in this directory.
5061         After perl has been installed, users may install their own local
5062         architecture-dependent modules in this directory with
5063         MakeMaker Makefile.PL
5064         or equivalent.  See INSTALL for details.
5065
5066 sitearchexp (sitearch.U):
5067         This variable is the ~name expanded version of sitearch, so that you
5068         may use it directly in Makefiles or shell scripts.
5069
5070 sitebin (sitebin.U):
5071         This variable holds the name of the directory in which the user wants
5072         to put add-on publicly executable files for the package in question.  It
5073         is most often a local directory such as /usr/local/bin. Programs using
5074         this variable must be prepared to deal with ~name substitution.
5075         The standard distribution will put nothing in this directory.
5076         After perl has been installed, users may install their own local
5077         executables in this directory with
5078         MakeMaker Makefile.PL
5079         or equivalent.  See INSTALL for details.
5080
5081 sitebinexp (sitebin.U):
5082         This is the same as the sitebin variable, but is filename expanded at
5083         configuration time, for use in your makefiles.
5084
5085 sitehtml1dir (sitehtml1dir.U):
5086         This variable contains the name of the directory in which site-specific
5087         html source pages are to be put.  It is the responsibility of the
5088         Makefile.SH to get the value of this into the proper command.
5089         You must be prepared to do the ~name expansion yourself.
5090         The standard distribution will put nothing in this directory.
5091         After perl has been installed, users may install their own local
5092         html pages in this directory with
5093         MakeMaker Makefile.PL
5094         or equivalent.  See INSTALL for details.
5095
5096 sitehtml1direxp (sitehtml1dir.U):
5097         This variable is the same as the sitehtml1dir variable, but is filename
5098         expanded at configuration time, for convenient use in makefiles.
5099
5100 sitehtml3dir (sitehtml3dir.U):
5101         This variable contains the name of the directory in which site-specific
5102         library html source pages are to be put.  It is the responsibility of the
5103         Makefile.SH to get the value of this into the proper command.
5104         You must be prepared to do the ~name expansion yourself.
5105         The standard distribution will put nothing in this directory.
5106         After perl has been installed, users may install their own local
5107         library html pages in this directory with
5108         MakeMaker Makefile.PL
5109         or equivalent.  See INSTALL for details.
5110
5111 sitehtml3direxp (sitehtml3dir.U):
5112         This variable is the same as the sitehtml3dir variable, but is filename
5113         expanded at configuration time, for convenient use in makefiles.
5114
5115 sitelib (sitelib.U):
5116         This variable contains the eventual value of the SITELIB symbol,
5117         which is the name of the private library for this package.  It may
5118         have a ~ on the front. It is up to the makefile to eventually create
5119         this directory while performing installation (with ~ substitution).
5120         The standard distribution will put nothing in this directory.
5121         After perl has been installed, users may install their own local
5122         architecture-independent modules in this directory with
5123         MakeMaker Makefile.PL
5124         or equivalent.  See INSTALL for details.
5125
5126 sitelib_stem (sitelib.U):
5127         This variable is $sitelibexp with any trailing version-specific component
5128         removed.  The elements in inc_version_list (inc_version_list.U) can
5129         be tacked onto this variable to generate a list of directories to search.
5130
5131 sitelibexp (sitelib.U):
5132         This variable is the ~name expanded version of sitelib, so that you
5133         may use it directly in Makefiles or shell scripts.
5134
5135 siteman1dir (siteman1dir.U):
5136         This variable contains the name of the directory in which site-specific
5137         manual source pages are to be put.  It is the responsibility of the
5138         Makefile.SH to get the value of this into the proper command.
5139         You must be prepared to do the ~name expansion yourself.
5140         The standard distribution will put nothing in this directory.
5141         After perl has been installed, users may install their own local
5142         man1 pages in this directory with
5143         MakeMaker Makefile.PL
5144         or equivalent.  See INSTALL for details.
5145
5146 siteman1direxp (siteman1dir.U):
5147         This variable is the same as the siteman1dir variable, but is filename
5148         expanded at configuration time, for convenient use in makefiles.
5149
5150 siteman3dir (siteman3dir.U):
5151         This variable contains the name of the directory in which site-specific
5152         library man source pages are to be put.  It is the responsibility of the
5153         Makefile.SH to get the value of this into the proper command.
5154         You must be prepared to do the ~name expansion yourself.
5155         The standard distribution will put nothing in this directory.
5156         After perl has been installed, users may install their own local
5157         man3 pages in this directory with
5158         MakeMaker Makefile.PL
5159         or equivalent.  See INSTALL for details.
5160
5161 siteman3direxp (siteman3dir.U):
5162         Thi