1/*
2 * This file was produced by running the config_h.SH script, which
3 * gets its values from undef, which is generally produced by
4 * running Configure.
5 *
6 * Feel free to modify any of this as the need arises.  Note, however,
7 * that running config_h.SH again will wipe out any changes you've made.
8 * For a more permanent change edit undef and rerun config_h.SH.
9 *
10 * $Id: config_H.bc,v 1.10 2006/03/28 19:23:14 millert Exp $
11 */
12
13/*
14 * Package name      : perl5
15 * Source directory  :
16 * Configuration time: Mon Mar 17 20:15:35 2003
17 * Configured by     : gsar
18 * Target system     :
19 */
20
21#ifndef _config_h_
22#define _config_h_
23
24/* LOC_SED:
25 *	This symbol holds the complete pathname to the sed program.
26 */
27#define LOC_SED 	""	/**/
28
29/* HAS_ALARM:
30 *	This symbol, if defined, indicates that the alarm routine is
31 *	available.
32 */
33#define HAS_ALARM		/**/
34
35/* HAS_BCMP:
36 *	This symbol is defined if the bcmp() routine is available to
37 *	compare blocks of memory.
38 */
39/*#define HAS_BCMP	/**/
40
41/* HAS_BCOPY:
42 *	This symbol is defined if the bcopy() routine is available to
43 *	copy blocks of memory.
44 */
45/*#define HAS_BCOPY	/**/
46
47/* HAS_BZERO:
48 *	This symbol is defined if the bzero() routine is available to
49 *	set a memory block to 0.
50 */
51/*#define HAS_BZERO	/**/
52
53/* HAS_CHOWN:
54 *	This symbol, if defined, indicates that the chown routine is
55 *	available.
56 */
57/*#define HAS_CHOWN		/**/
58
59/* HAS_CHROOT:
60 *	This symbol, if defined, indicates that the chroot routine is
61 *	available.
62 */
63/*#define HAS_CHROOT		/**/
64
65/* HAS_CHSIZE:
66 *	This symbol, if defined, indicates that the chsize routine is available
67 *	to truncate files.  You might need a -lx to get this routine.
68 */
69#define	HAS_CHSIZE		/**/
70
71/* HASCONST:
72 *	This symbol, if defined, indicates that this C compiler knows about
73 *	the const type. There is no need to actually test for that symbol
74 *	within your programs. The mere use of the "const" keyword will
75 *	trigger the necessary tests.
76 */
77#define HASCONST	/**/
78#ifndef HASCONST
79#define const
80#endif
81
82/* HAS_CUSERID:
83 *	This symbol, if defined, indicates that the cuserid routine is
84 *	available to get character login names.
85 */
86/*#define HAS_CUSERID		/**/
87
88/* HAS_DBL_DIG:
89 *	This symbol, if defined, indicates that this system's <float.h>
90 *	or <limits.h> defines the symbol DBL_DIG, which is the number
91 *	of significant digits in a double precision number.  If this
92 *	symbol is not defined, a guess of 15 is usually pretty good.
93 */
94#define HAS_DBL_DIG 	/**/
95
96/* HAS_DIFFTIME:
97 *	This symbol, if defined, indicates that the difftime routine is
98 *	available.
99 */
100#define HAS_DIFFTIME		/**/
101
102/* HAS_DLERROR:
103 *	This symbol, if defined, indicates that the dlerror routine is
104 *	available to return a string describing the last error that
105 *	occurred from a call to dlopen(), dlclose() or dlsym().
106 */
107#define HAS_DLERROR	/**/
108
109/* HAS_DUP2:
110 *	This symbol, if defined, indicates that the dup2 routine is
111 *	available to duplicate file descriptors.
112 */
113#define HAS_DUP2	/**/
114
115/* HAS_FCHMOD:
116 *	This symbol, if defined, indicates that the fchmod routine is available
117 *	to change mode of opened files.  If unavailable, use chmod().
118 */
119/*#define HAS_FCHMOD		/**/
120
121/* HAS_FCHOWN:
122 *	This symbol, if defined, indicates that the fchown routine is available
123 *	to change ownership of opened files.  If unavailable, use chown().
124 */
125/*#define HAS_FCHOWN		/**/
126
127/* HAS_FCNTL:
128 *	This symbol, if defined, indicates to the C program that
129 *	the fcntl() function exists.
130 */
131/*#define HAS_FCNTL		/**/
132
133/* HAS_FGETPOS:
134 *	This symbol, if defined, indicates that the fgetpos routine is
135 *	available to get the file position indicator, similar to ftell().
136 */
137#define HAS_FGETPOS	/**/
138
139/* HAS_FLOCK:
140 *	This symbol, if defined, indicates that the flock routine is
141 *	available to do file locking.
142 */
143#define HAS_FLOCK		/**/
144
145/* HAS_FORK:
146 *	This symbol, if defined, indicates that the fork routine is
147 *	available.
148 */
149/*#define HAS_FORK		/**/
150
151/* HAS_FSETPOS:
152 *	This symbol, if defined, indicates that the fsetpos routine is
153 *	available to set the file position indicator, similar to fseek().
154 */
155#define HAS_FSETPOS	/**/
156
157/* HAS_GETTIMEOFDAY:
158 *	This symbol, if defined, indicates that the gettimeofday() system
159 *	call is available for a sub-second accuracy clock. Usually, the file
160 *	<sys/resource.h> needs to be included (see I_SYS_RESOURCE).
161 *	The type "Timeval" should be used to refer to "struct timeval".
162 */
163#define HAS_GETTIMEOFDAY	/**/
164#ifdef HAS_GETTIMEOFDAY
165#define Timeval struct timeval	/* Structure used by gettimeofday() */
166#endif
167
168/* HAS_GETGROUPS:
169 *	This symbol, if defined, indicates that the getgroups() routine is
170 *	available to get the list of process groups.  If unavailable, multiple
171 *	groups are probably not supported.
172 */
173/*#define HAS_GETGROUPS		/**/
174
175/* HAS_GETLOGIN:
176 *	This symbol, if defined, indicates that the getlogin routine is
177 *	available to get the login name.
178 */
179#define HAS_GETLOGIN		/**/
180
181/* HAS_GETPGID:
182 *	This symbol, if defined, indicates to the C program that
183 *	the getpgid(pid) function is available to get the
184 *	process group id.
185 */
186/*#define HAS_GETPGID		/**/
187
188/* HAS_GETPGRP2:
189 *	This symbol, if defined, indicates that the getpgrp2() (as in DG/UX)
190 *	routine is available to get the current process group.
191 */
192/*#define HAS_GETPGRP2		/**/
193
194/* HAS_GETPPID:
195 *	This symbol, if defined, indicates that the getppid routine is
196 *	available to get the parent process ID.
197 */
198/*#define HAS_GETPPID		/**/
199
200/* HAS_GETPRIORITY:
201 *	This symbol, if defined, indicates that the getpriority routine is
202 *	available to get a process's priority.
203 */
204/*#define HAS_GETPRIORITY		/**/
205
206/* HAS_INET_ATON:
207 *	This symbol, if defined, indicates to the C program that the
208 *	inet_aton() function is available to parse IP address "dotted-quad"
209 *	strings.
210 */
211/*#define HAS_INET_ATON		/**/
212
213/* HAS_KILLPG:
214 *	This symbol, if defined, indicates that the killpg routine is available
215 *	to kill process groups.  If unavailable, you probably should use kill
216 *	with a negative process number.
217 */
218/*#define HAS_KILLPG	/**/
219
220/* HAS_LINK:
221 *	This symbol, if defined, indicates that the link routine is
222 *	available to create hard links.
223 */
224#define HAS_LINK	/**/
225
226/* HAS_LOCALECONV:
227 *	This symbol, if defined, indicates that the localeconv routine is
228 *	available for numeric and monetary formatting conventions.
229 */
230#define HAS_LOCALECONV	/**/
231
232/* HAS_LOCKF:
233 *	This symbol, if defined, indicates that the lockf routine is
234 *	available to do file locking.
235 */
236/*#define HAS_LOCKF		/**/
237
238/* HAS_LSTAT:
239 *	This symbol, if defined, indicates that the lstat routine is
240 *	available to do file stats on symbolic links.
241 */
242/*#define HAS_LSTAT		/**/
243
244/* HAS_MBLEN:
245 *	This symbol, if defined, indicates that the mblen routine is available
246 *	to find the number of bytes in a multibye character.
247 */
248#define HAS_MBLEN		/**/
249
250/* HAS_MBSTOWCS:
251 *	This symbol, if defined, indicates that the mbstowcs routine is
252 *	available to covert a multibyte string into a wide character string.
253 */
254#define	HAS_MBSTOWCS		/**/
255
256/* HAS_MBTOWC:
257 *	This symbol, if defined, indicates that the mbtowc routine is available
258 *	to covert a multibyte to a wide character.
259 */
260#define HAS_MBTOWC		/**/
261
262/* HAS_MEMCMP:
263 *	This symbol, if defined, indicates that the memcmp routine is available
264 *	to compare blocks of memory.
265 */
266#define HAS_MEMCMP	/**/
267
268/* HAS_MEMCPY:
269 *	This symbol, if defined, indicates that the memcpy routine is available
270 *	to copy blocks of memory.
271 */
272#define HAS_MEMCPY	/**/
273
274/* HAS_MEMMOVE:
275 *	This symbol, if defined, indicates that the memmove routine is available
276 *	to copy potentially overlapping blocks of memory. This should be used
277 *	only when HAS_SAFE_BCOPY is not defined. If neither is there, roll your
278 *	own version.
279 */
280#define HAS_MEMMOVE	/**/
281
282/* HAS_MEMSET:
283 *	This symbol, if defined, indicates that the memset routine is available
284 *	to set blocks of memory.
285 */
286#define HAS_MEMSET	/**/
287
288/* HAS_MKDIR:
289 *	This symbol, if defined, indicates that the mkdir routine is available
290 *	to create directories.  Otherwise you should fork off a new process to
291 *	exec /bin/mkdir.
292 */
293#define HAS_MKDIR		/**/
294
295/* HAS_MKFIFO:
296 *	This symbol, if defined, indicates that the mkfifo routine is
297 *	available to create FIFOs. Otherwise, mknod should be able to
298 *	do it for you. However, if mkfifo is there, mknod might require
299 *	super-user privileges which mkfifo will not.
300 */
301/*#define HAS_MKFIFO		/**/
302
303/* HAS_MKTIME:
304 *	This symbol, if defined, indicates that the mktime routine is
305 *	available.
306 */
307#define HAS_MKTIME		/**/
308
309/* HAS_MSYNC:
310 *	This symbol, if defined, indicates that the msync system call is
311 *	available to synchronize a mapped file.
312 */
313/*#define HAS_MSYNC		/**/
314
315/* HAS_MUNMAP:
316 *	This symbol, if defined, indicates that the munmap system call is
317 *	available to unmap a region, usually mapped by mmap().
318 */
319/*#define HAS_MUNMAP		/**/
320
321/* HAS_NICE:
322 *	This symbol, if defined, indicates that the nice routine is
323 *	available.
324 */
325/*#define HAS_NICE		/**/
326
327/* HAS_PATHCONF:
328 *	This symbol, if defined, indicates that pathconf() is available
329 *	to determine file-system related limits and options associated
330 *	with a given filename.
331 */
332/* HAS_FPATHCONF:
333 *	This symbol, if defined, indicates that pathconf() is available
334 *	to determine file-system related limits and options associated
335 *	with a given open file descriptor.
336 */
337/*#define HAS_PATHCONF		/**/
338/*#define HAS_FPATHCONF		/**/
339
340/* HAS_PAUSE:
341 *	This symbol, if defined, indicates that the pause routine is
342 *	available to suspend a process until a signal is received.
343 */
344#define HAS_PAUSE		/**/
345
346/* HAS_PIPE:
347 *	This symbol, if defined, indicates that the pipe routine is
348 *	available to create an inter-process channel.
349 */
350#define HAS_PIPE		/**/
351
352/* HAS_POLL:
353 *	This symbol, if defined, indicates that the poll routine is
354 *	available to poll active file descriptors. You may safely
355 *	include <poll.h> when this symbol is defined.
356 */
357/*#define HAS_POLL		/**/
358
359/* HAS_READDIR:
360 *	This symbol, if defined, indicates that the readdir routine is
361 *	available to read directory entries. You may have to include
362 *	<dirent.h>. See I_DIRENT.
363 */
364#define HAS_READDIR		/**/
365
366/* HAS_SEEKDIR:
367 *	This symbol, if defined, indicates that the seekdir routine is
368 *	available. You may have to include <dirent.h>. See I_DIRENT.
369 */
370#define HAS_SEEKDIR		/**/
371
372/* HAS_TELLDIR:
373 *	This symbol, if defined, indicates that the telldir routine is
374 *	available. You may have to include <dirent.h>. See I_DIRENT.
375 */
376#define HAS_TELLDIR		/**/
377
378/* HAS_REWINDDIR:
379 *	This symbol, if defined, indicates that the rewinddir routine is
380 *	available. You may have to include <dirent.h>. See I_DIRENT.
381 */
382#define HAS_REWINDDIR		/**/
383
384/* HAS_READLINK:
385 *	This symbol, if defined, indicates that the readlink routine is
386 *	available to read the value of a symbolic link.
387 */
388/*#define HAS_READLINK		/**/
389
390/* HAS_RENAME:
391 *	This symbol, if defined, indicates that the rename routine is available
392 *	to rename files.  Otherwise you should do the unlink(), link(), unlink()
393 *	trick.
394 */
395#define HAS_RENAME	/**/
396
397/* HAS_RMDIR:
398 *	This symbol, if defined, indicates that the rmdir routine is
399 *	available to remove directories. Otherwise you should fork off a
400 *	new process to exec /bin/rmdir.
401 */
402#define HAS_RMDIR		/**/
403
404/* HAS_SELECT:
405 *	This symbol, if defined, indicates that the select routine is
406 *	available to select active file descriptors. If the timeout field
407 *	is used, <sys/time.h> may need to be included.
408 */
409#define HAS_SELECT	/**/
410
411/* HAS_SETEGID:
412 *	This symbol, if defined, indicates that the setegid routine is available
413 *	to change the effective gid of the current program.
414 */
415/*#define HAS_SETEGID		/**/
416
417/* HAS_SETEUID:
418 *	This symbol, if defined, indicates that the seteuid routine is available
419 *	to change the effective uid of the current program.
420 */
421/*#define HAS_SETEUID		/**/
422
423/* HAS_SETLINEBUF:
424 *	This symbol, if defined, indicates that the setlinebuf routine is
425 *	available to change stderr or stdout from block-buffered or unbuffered
426 *	to a line-buffered mode.
427 */
428/*#define HAS_SETLINEBUF		/**/
429
430/* HAS_SETLOCALE:
431 *	This symbol, if defined, indicates that the setlocale routine is
432 *	available to handle locale-specific ctype implementations.
433 */
434#define HAS_SETLOCALE	/**/
435
436/* HAS_SETPGID:
437 *	This symbol, if defined, indicates that the setpgid(pid, gpid)
438 *	routine is available to set process group ID.
439 */
440/*#define HAS_SETPGID	/**/
441
442/* HAS_SETPGRP2:
443 *	This symbol, if defined, indicates that the setpgrp2() (as in DG/UX)
444 *	routine is available to set the current process group.
445 */
446/*#define HAS_SETPGRP2		/**/
447
448/* HAS_SETPRIORITY:
449 *	This symbol, if defined, indicates that the setpriority routine is
450 *	available to set a process's priority.
451 */
452/*#define HAS_SETPRIORITY		/**/
453
454/* HAS_SETREGID:
455 *	This symbol, if defined, indicates that the setregid routine is
456 *	available to change the real and effective gid of the current
457 *	process.
458 */
459/* HAS_SETRESGID:
460 *	This symbol, if defined, indicates that the setresgid routine is
461 *	available to change the real, effective and saved gid of the current
462 *	process.
463 */
464/*#define HAS_SETREGID		/**/
465/*#define HAS_SETRESGID		/**/
466
467/* HAS_SETREUID:
468 *	This symbol, if defined, indicates that the setreuid routine is
469 *	available to change the real and effective uid of the current
470 *	process.
471 */
472/* HAS_SETRESUID:
473 *	This symbol, if defined, indicates that the setresuid routine is
474 *	available to change the real, effective and saved uid of the current
475 *	process.
476 */
477/*#define HAS_SETREUID		/**/
478/*#define HAS_SETRESUID		/**/
479
480/* HAS_SETRGID:
481 *	This symbol, if defined, indicates that the setrgid routine is available
482 *	to change the real gid of the current program.
483 */
484/*#define HAS_SETRGID		/**/
485
486/* HAS_SETRUID:
487 *	This symbol, if defined, indicates that the setruid routine is available
488 *	to change the real uid of the current program.
489 */
490/*#define HAS_SETRUID		/**/
491
492/* HAS_SETSID:
493 *	This symbol, if defined, indicates that the setsid routine is
494 *	available to set the process group ID.
495 */
496/*#define HAS_SETSID	/**/
497
498/* HAS_STRCHR:
499 *	This symbol is defined to indicate that the strchr()/strrchr()
500 *	functions are available for string searching. If not, try the
501 *	index()/rindex() pair.
502 */
503/* HAS_INDEX:
504 *	This symbol is defined to indicate that the index()/rindex()
505 *	functions are available for string searching.
506 */
507#define HAS_STRCHR	/**/
508/*#define HAS_INDEX	/**/
509
510/* HAS_STRCOLL:
511 *	This symbol, if defined, indicates that the strcoll routine is
512 *	available to compare strings using collating information.
513 */
514#define HAS_STRCOLL	/**/
515
516/* USE_STRUCT_COPY:
517 *	This symbol, if defined, indicates that this C compiler knows how
518 *	to copy structures.  If undefined, you'll need to use a block copy
519 *	routine of some sort instead.
520 */
521#define	USE_STRUCT_COPY	/**/
522
523/* HAS_STRTOD:
524 *	This symbol, if defined, indicates that the strtod routine is
525 *	available to provide better numeric string conversion than atof().
526 */
527#define HAS_STRTOD	/**/
528
529/* HAS_STRTOL:
530 *	This symbol, if defined, indicates that the strtol routine is available
531 *	to provide better numeric string conversion than atoi() and friends.
532 */
533#define HAS_STRTOL	/**/
534
535/* HAS_STRXFRM:
536 *	This symbol, if defined, indicates that the strxfrm() routine is
537 *	available to transform strings.
538 */
539#define HAS_STRXFRM	/**/
540
541/* HAS_SYMLINK:
542 *	This symbol, if defined, indicates that the symlink routine is available
543 *	to create symbolic links.
544 */
545/*#define HAS_SYMLINK	/**/
546
547/* HAS_SYSCALL:
548 *	This symbol, if defined, indicates that the syscall routine is
549 *	available to call arbitrary system calls. If undefined, that's tough.
550 */
551/*#define HAS_SYSCALL	/**/
552
553/* HAS_SYSCONF:
554 *	This symbol, if defined, indicates that sysconf() is available
555 *	to determine system related limits and options.
556 */
557/*#define HAS_SYSCONF	/**/
558
559/* HAS_SYSTEM:
560 *	This symbol, if defined, indicates that the system routine is
561 *	available to issue a shell command.
562 */
563#define HAS_SYSTEM	/**/
564
565/* HAS_TCGETPGRP:
566 *	This symbol, if defined, indicates that the tcgetpgrp routine is
567 *	available to get foreground process group ID.
568 */
569/*#define HAS_TCGETPGRP		/**/
570
571/* HAS_TCSETPGRP:
572 *	This symbol, if defined, indicates that the tcsetpgrp routine is
573 *	available to set foreground process group ID.
574 */
575/*#define HAS_TCSETPGRP		/**/
576
577/* HAS_TRUNCATE:
578 *	This symbol, if defined, indicates that the truncate routine is
579 *	available to truncate files.
580 */
581/*#define HAS_TRUNCATE	/**/
582
583/* HAS_TZNAME:
584 *	This symbol, if defined, indicates that the tzname[] array is
585 *	available to access timezone names.
586 */
587#define HAS_TZNAME		/**/
588
589/* HAS_UMASK:
590 *	This symbol, if defined, indicates that the umask routine is
591 *	available to set and get the value of the file creation mask.
592 */
593#define HAS_UMASK		/**/
594
595/* HAS_USLEEP:
596 *	This symbol, if defined, indicates that the usleep routine is
597 *	available to let the process sleep on a sub-second accuracy.
598 */
599/*#define HAS_USLEEP		/**/
600
601/* HASVOLATILE:
602 *	This symbol, if defined, indicates that this C compiler knows about
603 *	the volatile declaration.
604 */
605#define	HASVOLATILE	/**/
606#ifndef HASVOLATILE
607#define volatile
608#endif
609
610/* HAS_WAIT4:
611 *	This symbol, if defined, indicates that wait4() exists.
612 */
613/*#define HAS_WAIT4	/**/
614
615/* HAS_WAITPID:
616 *	This symbol, if defined, indicates that the waitpid routine is
617 *	available to wait for child process.
618 */
619#define HAS_WAITPID	/**/
620
621/* HAS_WCSTOMBS:
622 *	This symbol, if defined, indicates that the wcstombs routine is
623 *	available to convert wide character strings to multibyte strings.
624 */
625#define HAS_WCSTOMBS	/**/
626
627/* HAS_WCTOMB:
628 *	This symbol, if defined, indicates that the wctomb routine is available
629 *	to covert a wide character to a multibyte.
630 */
631#define HAS_WCTOMB		/**/
632
633/* I_ARPA_INET:
634 *	This symbol, if defined, indicates to the C program that it should
635 *	include <arpa/inet.h> to get inet_addr and friends declarations.
636 */
637#define	I_ARPA_INET		/**/
638
639/* I_DBM:
640 *	This symbol, if defined, indicates that <dbm.h> exists and should
641 *	be included.
642 */
643/* I_RPCSVC_DBM:
644 *	This symbol, if defined, indicates that <rpcsvc/dbm.h> exists and
645 *	should be included.
646 */
647/*#define I_DBM	/**/
648#define I_RPCSVC_DBM	/**/
649
650/* I_DIRENT:
651 *	This symbol, if defined, indicates to the C program that it should
652 *	include <dirent.h>. Using this symbol also triggers the definition
653 *	of the Direntry_t define which ends up being 'struct dirent' or
654 *	'struct direct' depending on the availability of <dirent.h>.
655 */
656/* DIRNAMLEN:
657 *	This symbol, if defined, indicates to the C program that the length
658 *	of directory entry names is provided by a d_namlen field.  Otherwise
659 *	you need to do strlen() on the d_name field.
660 */
661/* Direntry_t:
662 *	This symbol is set to 'struct direct' or 'struct dirent' depending on
663 *	whether dirent is available or not. You should use this pseudo type to
664 *	portably declare your directory entries.
665 */
666#define I_DIRENT		/**/
667#define DIRNAMLEN	/**/
668#define Direntry_t struct direct
669
670/* I_DLFCN:
671 *	This symbol, if defined, indicates that <dlfcn.h> exists and should
672 *	be included.
673 */
674#define I_DLFCN		/**/
675
676/* I_FCNTL:
677 *	This manifest constant tells the C program to include <fcntl.h>.
678 */
679#define I_FCNTL	/**/
680
681/* I_FLOAT:
682 *	This symbol, if defined, indicates to the C program that it should
683 *	include <float.h> to get definition of symbols like DBL_MAX or
684 *	DBL_MIN, i.e. machine dependent floating point values.
685 */
686#define I_FLOAT		/**/
687
688/* I_LIMITS:
689 *	This symbol, if defined, indicates to the C program that it should
690 *	include <limits.h> to get definition of symbols like WORD_BIT or
691 *	LONG_MAX, i.e. machine dependant limitations.
692 */
693#define I_LIMITS		/**/
694
695/* I_LOCALE:
696 *	This symbol, if defined, indicates to the C program that it should
697 *	include <locale.h>.
698 */
699#define	I_LOCALE		/**/
700
701/* I_MATH:
702 *	This symbol, if defined, indicates to the C program that it should
703 *	include <math.h>.
704 */
705#define I_MATH		/**/
706
707/* I_MEMORY:
708 *	This symbol, if defined, indicates to the C program that it should
709 *	include <memory.h>.
710 */
711/*#define I_MEMORY		/**/
712
713/* I_NET_ERRNO:
714 *	This symbol, if defined, indicates that <net/errno.h> exists and
715 *	should be included.
716 */
717/*#define I_NET_ERRNO		/**/
718
719/* I_NETINET_IN:
720 *	This symbol, if defined, indicates to the C program that it should
721 *	include <netinet/in.h>. Otherwise, you may try <sys/in.h>.
722 */
723/*#define I_NETINET_IN	/**/
724
725/* I_SFIO:
726 *	This symbol, if defined, indicates to the C program that it should
727 *	include <sfio.h>.
728 */
729/*#define	I_SFIO		/**/
730
731/* I_STDDEF:
732 *	This symbol, if defined, indicates that <stddef.h> exists and should
733 *	be included.
734 */
735#define I_STDDEF	/**/
736
737/* I_STDLIB:
738 *	This symbol, if defined, indicates that <stdlib.h> exists and should
739 *	be included.
740 */
741#define I_STDLIB		/**/
742
743/* I_STRING:
744 *	This symbol, if defined, indicates to the C program that it should
745 *	include <string.h> (USG systems) instead of <strings.h> (BSD systems).
746 */
747#define I_STRING		/**/
748
749/* I_SYS_DIR:
750 *	This symbol, if defined, indicates to the C program that it should
751 *	include <sys/dir.h>.
752 */
753/*#define I_SYS_DIR		/**/
754
755/* I_SYS_FILE:
756 *	This symbol, if defined, indicates to the C program that it should
757 *	include <sys/file.h> to get definition of R_OK and friends.
758 */
759/*#define I_SYS_FILE		/**/
760
761/* I_SYS_IOCTL:
762 *	This symbol, if defined, indicates that <sys/ioctl.h> exists and should
763 *	be included. Otherwise, include <sgtty.h> or <termio.h>.
764 */
765/* I_SYS_SOCKIO:
766 *	This symbol, if defined, indicates the <sys/sockio.h> should be included
767 *	to get socket ioctl options, like SIOCATMARK.
768 */
769/*#define	I_SYS_IOCTL		/**/
770/*#define I_SYS_SOCKIO	/**/
771
772/* I_SYS_NDIR:
773 *	This symbol, if defined, indicates to the C program that it should
774 *	include <sys/ndir.h>.
775 */
776/*#define I_SYS_NDIR	/**/
777
778/* I_SYS_PARAM:
779 *	This symbol, if defined, indicates to the C program that it should
780 *	include <sys/param.h>.
781 */
782/*#define I_SYS_PARAM		/**/
783
784/* I_SYS_RESOURCE:
785 *	This symbol, if defined, indicates to the C program that it should
786 *	include <sys/resource.h>.
787 */
788/*#define I_SYS_RESOURCE		/**/
789
790/* I_SYS_SELECT:
791 *	This symbol, if defined, indicates to the C program that it should
792 *	include <sys/select.h> in order to get definition of struct timeval.
793 */
794/*#define I_SYS_SELECT	/**/
795
796/* I_SYS_STAT:
797 *	This symbol, if defined, indicates to the C program that it should
798 *	include <sys/stat.h>.
799 */
800#define	I_SYS_STAT		/**/
801
802/* I_SYS_TIMES:
803 *	This symbol, if defined, indicates to the C program that it should
804 *	include <sys/times.h>.
805 */
806/*#define	I_SYS_TIMES		/**/
807
808/* I_SYS_TYPES:
809 *	This symbol, if defined, indicates to the C program that it should
810 *	include <sys/types.h>.
811 */
812#define	I_SYS_TYPES		/**/
813
814/* I_SYS_UN:
815 *	This symbol, if defined, indicates to the C program that it should
816 *	include <sys/un.h> to get UNIX domain socket definitions.
817 */
818/*#define I_SYS_UN		/**/
819
820/* I_SYS_WAIT:
821 *	This symbol, if defined, indicates to the C program that it should
822 *	include <sys/wait.h>.
823 */
824/*#define I_SYS_WAIT	/**/
825
826/* I_TERMIO:
827 *	This symbol, if defined, indicates that the program should include
828 *	<termio.h> rather than <sgtty.h>.  There are also differences in
829 *	the ioctl() calls that depend on the value of this symbol.
830 */
831/* I_TERMIOS:
832 *	This symbol, if defined, indicates that the program should include
833 *	the POSIX termios.h rather than sgtty.h or termio.h.
834 *	There are also differences in the ioctl() calls that depend on the
835 *	value of this symbol.
836 */
837/* I_SGTTY:
838 *	This symbol, if defined, indicates that the program should include
839 *	<sgtty.h> rather than <termio.h>.  There are also differences in
840 *	the ioctl() calls that depend on the value of this symbol.
841 */
842/*#define I_TERMIO		/**/
843/*#define I_TERMIOS		/**/
844/*#define I_SGTTY		/**/
845
846/* I_UNISTD:
847 *	This symbol, if defined, indicates to the C program that it should
848 *	include <unistd.h>.
849 */
850/*#define I_UNISTD		/**/
851
852/* I_UTIME:
853 *	This symbol, if defined, indicates to the C program that it should
854 *	include <utime.h>.
855 */
856#define I_UTIME		/**/
857
858/* I_VALUES:
859 *	This symbol, if defined, indicates to the C program that it should
860 *	include <values.h> to get definition of symbols like MINFLOAT or
861 *	MAXLONG, i.e. machine dependant limitations.  Probably, you
862 *	should use <limits.h> instead, if it is available.
863 */
864/*#define I_VALUES		/**/
865
866/* I_VFORK:
867 *	This symbol, if defined, indicates to the C program that it should
868 *	include vfork.h.
869 */
870/*#define I_VFORK	/**/
871
872/* HAS_ACCESSX:
873 *	This symbol, if defined, indicates that the accessx routine is
874 *	available to do extended access checks.
875 */
876/*#define HAS_ACCESSX		/**/
877
878/* HAS_EACCESS:
879 *	This symbol, if defined, indicates that the eaccess routine is
880 *	available to do extended access checks.
881 */
882/*#define HAS_EACCESS		/**/
883
884/* I_SYS_ACCESS:
885 *     This symbol, if defined, indicates to the C program that it should
886 *     include <sys/access.h>.
887 */
888/*#define   I_SYS_ACCESS                /**/
889
890/* I_SYS_SECURITY:
891 *     This symbol, if defined, indicates to the C program that it should
892 *     include <sys/security.h>.
893 */
894/*#define   I_SYS_SECURITY	/**/
895
896/* OSNAME:
897 *	This symbol contains the name of the operating system, as determined
898 *	by Configure.  You shouldn't rely on it too much; the specific
899 *	feature tests from Configure are generally more reliable.
900 */
901/* OSVERS:
902 *	This symbol contains the version of the operating system, as determined
903 *	by Configure.  You shouldn't rely on it too much; the specific
904 *	feature tests from Configure are generally more reliable.
905 */
906#define OSNAME "MSWin32"		/**/
907#define OSVERS "4.0"		/**/
908
909/* USE_CROSS_COMPILE:
910 *	This symbol, if defined, indicates that Perl is being cross-compiled.
911 */
912/* PERL_TARGETARCH:
913 *	This symbol, if defined, indicates the target architecture
914 *	Perl has been cross-compiled to.  Undefined if not a cross-compile.
915 */
916#ifndef USE_CROSS_COMPILE
917/*#define	USE_CROSS_COMPILE	/**/
918#define	PERL_TARGETARCH	""	/**/
919#endif
920
921/* MULTIARCH:
922 *	This symbol, if defined, signifies that the build
923 *	process will produce some binary files that are going to be
924 *	used in a cross-platform environment.  This is the case for
925 *	example with the NeXT "fat" binaries that contain executables
926 *	for several CPUs.
927 */
928/*#define MULTIARCH		/**/
929
930/* MEM_ALIGNBYTES:
931 *	This symbol contains the number of bytes required to align a
932 *	double, or a long double when applicable. Usual values are 2,
933 *	4 and 8. The default is eight, for safety.
934 */
935#if defined(USE_CROSS_COMPILE) || defined(MULTIARCH)
936#  define MEM_ALIGNBYTES 8
937#else
938#define MEM_ALIGNBYTES 8
939#endif
940
941/* ARCHLIB:
942 *	This variable, if defined, holds the name of the directory in
943 *	which the user wants to put architecture-dependent public
944 *	library files for perl5.  It is most often a local directory
945 *	such as /usr/local/lib.  Programs using this variable must be
946 *	prepared to deal with filename expansion.  If ARCHLIB is the
947 *	same as PRIVLIB, it is not defined, since presumably the
948 *	program already searches PRIVLIB.
949 */
950/* ARCHLIB_EXP:
951 *	This symbol contains the ~name expanded version of ARCHLIB, to be used
952 *	in programs that are not prepared to deal with ~ expansion at run-time.
953 */
954#define ARCHLIB "c:\\perl\\5.8.8\\lib\\MSWin32-x86"		/**/
955/*#define ARCHLIB_EXP ""	/**/
956
957/* ARCHNAME:
958 *	This symbol holds a string representing the architecture name.
959 *	It may be used to construct an architecture-dependant pathname
960 *	where library files may be held under a private library, for
961 *	instance.
962 */
963#define ARCHNAME "MSWin32-x86"		/**/
964
965/* HAS_ATOLF:
966 *	This symbol, if defined, indicates that the atolf routine is
967 *	available to convert strings into long doubles.
968 */
969/*#define HAS_ATOLF		/**/
970
971/* HAS_ATOLL:
972 *	This symbol, if defined, indicates that the atoll routine is
973 *	available to convert strings into long longs.
974 */
975/*#define HAS_ATOLL		/**/
976
977/* BIN:
978 *	This symbol holds the path of the bin directory where the package will
979 *	be installed. Program must be prepared to deal with ~name substitution.
980 */
981/* BIN_EXP:
982 *	This symbol is the filename expanded version of the BIN symbol, for
983 *	programs that do not want to deal with that at run-time.
984 */
985#define BIN "c:\\perl\\5.8.8\\bin\\MSWin32-x86"	/**/
986#define BIN_EXP "c:\\perl\\5.8.8\\bin\\MSWin32-x86"	/**/
987
988/* INTSIZE:
989 *	This symbol contains the value of sizeof(int) so that the C
990 *	preprocessor can make decisions based on it.
991 */
992/* LONGSIZE:
993 *	This symbol contains the value of sizeof(long) so that the C
994 *	preprocessor can make decisions based on it.
995 */
996/* SHORTSIZE:
997 *	This symbol contains the value of sizeof(short) so that the C
998 *	preprocessor can make decisions based on it.
999 */
1000#define INTSIZE 4		/**/
1001#define LONGSIZE 4		/**/
1002#define SHORTSIZE 2		/**/
1003
1004/* BYTEORDER:
1005 *	This symbol holds the hexadecimal constant defined in byteorder,
1006 *	in a UV, i.e. 0x1234 or 0x4321 or 0x12345678, etc...
1007 *	If the compiler supports cross-compiling or multiple-architecture
1008 *	binaries (eg. on NeXT systems), use compiler-defined macros to
1009 *	determine the byte order.
1010 *	On NeXT 3.2 (and greater), you can build "Fat" Multiple Architecture
1011 *	Binaries (MAB) on either big endian or little endian machines.
1012 *	The endian-ness is available at compile-time.  This only matters
1013 *	for perl, where the config.h can be generated and installed on
1014 *	one system, and used by a different architecture to build an
1015 *	extension.  Older versions of NeXT that might not have
1016 *	defined either *_ENDIAN__ were all on Motorola 680x0 series,
1017 *	so the default case (for NeXT) is big endian to catch them.
1018 *	This might matter for NeXT 3.0.
1019 */
1020#if defined(USE_CROSS_COMPILE) || defined(MULTIARCH)
1021#  ifdef __LITTLE_ENDIAN__
1022#    if LONGSIZE == 4
1023#      define BYTEORDER 0x1234
1024#    else
1025#      if LONGSIZE == 8
1026#        define BYTEORDER 0x12345678
1027#      endif
1028#    endif
1029#  else
1030#    ifdef __BIG_ENDIAN__
1031#      if LONGSIZE == 4
1032#        define BYTEORDER 0x4321
1033#      else
1034#        if LONGSIZE == 8
1035#          define BYTEORDER 0x87654321
1036#        endif
1037#      endif
1038#    endif
1039#  endif
1040#  if !defined(BYTEORDER) && (defined(NeXT) || defined(__NeXT__))
1041#    define BYTEORDER 0x4321
1042#  endif
1043#else
1044#define BYTEORDER 0x1234	/* large digits for MSB */
1045#endif /* NeXT */
1046
1047/* CAT2:
1048 *	This macro concatenates 2 tokens together.
1049 */
1050/* STRINGIFY:
1051 *	This macro surrounds its token with double quotes.
1052 */
1053#if 42 == 1
1054#define CAT2(a,b)	a/**/b
1055#define STRINGIFY(a)	"a"
1056		/* If you can get stringification with catify, tell me how! */
1057#endif
1058#if 42 == 42
1059#define PeRl_CaTiFy(a, b)	a ## b
1060#define PeRl_StGiFy(a)	#a
1061/* the additional level of indirection enables these macros to be
1062 * used as arguments to other macros.  See K&R 2nd ed., page 231. */
1063#define CAT2(a,b)	PeRl_CaTiFy(a,b)
1064#define StGiFy(a)	PeRl_StGiFy(a)
1065#define STRINGIFY(a)	PeRl_StGiFy(a)
1066#endif
1067#if 42 != 1 && 42 != 42
1068#   include "Bletch: How does this C preprocessor concatenate tokens?"
1069#endif
1070
1071/* CPPSTDIN:
1072 *	This symbol contains the first part of the string which will invoke
1073 *	the C preprocessor on the standard input and produce to standard
1074 *	output.	 Typical value of "cc -E" or "/lib/cpp", but it can also
1075 *	call a wrapper. See CPPRUN.
1076 */
1077/* CPPMINUS:
1078 *	This symbol contains the second part of the string which will invoke
1079 *	the C preprocessor on the standard input and produce to standard
1080 *	output.  This symbol will have the value "-" if CPPSTDIN needs a minus
1081 *	to specify standard input, otherwise the value is "".
1082 */
1083/* CPPRUN:
1084 *	This symbol contains the string which will invoke a C preprocessor on
1085 *	the standard input and produce to standard output. It needs to end
1086 *	with CPPLAST, after all other preprocessor flags have been specified.
1087 *	The main difference with CPPSTDIN is that this program will never be a
1088 *	pointer to a shell wrapper, i.e. it will be empty if no preprocessor is
1089 *	available directly to the user. Note that it may well be different from
1090 *	the preprocessor used to compile the C program.
1091 */
1092/* CPPLAST:
1093 *	This symbol is intended to be used along with CPPRUN in the same manner
1094 *	symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
1095 */
1096#define CPPSTDIN "cppstdin"
1097#define CPPMINUS ""
1098#define CPPRUN "cpp32 -oCON"
1099#define CPPLAST ""
1100
1101/* HAS__FWALK:
1102 *	This symbol, if defined, indicates that the _fwalk system call is
1103 *	available to apply a function to all the file handles.
1104 */
1105/*#define HAS__FWALK		/**/
1106
1107/* HAS_ACCESS:
1108 *	This manifest constant lets the C program know that the access()
1109 *	system call is available to check for accessibility using real UID/GID.
1110 *	(always present on UNIX.)
1111 */
1112#define HAS_ACCESS		/**/
1113
1114/* HAS_ASCTIME_R:
1115 *	This symbol, if defined, indicates that the asctime_r routine
1116 *	is available to asctime re-entrantly.
1117 */
1118/* ASCTIME_R_PROTO:
1119 *	This symbol encodes the prototype of asctime_r.
1120 *	It is zero if d_asctime_r is undef, and one of the
1121 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_asctime_r
1122 *	is defined.
1123 */
1124/*#define HAS_ASCTIME_R	   /**/
1125#define ASCTIME_R_PROTO 0	   /**/
1126
1127/* CASTI32:
1128 *	This symbol is defined if the C compiler can cast negative
1129 *	or large floating point numbers to 32-bit ints.
1130 */
1131#define	CASTI32		/**/
1132
1133/* CASTNEGFLOAT:
1134 *	This symbol is defined if the C compiler can cast negative
1135 *	numbers to unsigned longs, ints and shorts.
1136 */
1137/* CASTFLAGS:
1138 *	This symbol contains flags that say what difficulties the compiler
1139 *	has casting odd floating values to unsigned long:
1140 *		0 = ok
1141 *		1 = couldn't cast < 0
1142 *		2 = couldn't cast >= 0x80000000
1143 *		4 = couldn't cast in argument expression list
1144 */
1145#define	CASTNEGFLOAT		/**/
1146#define CASTFLAGS 0		/**/
1147
1148/* HAS_CLASS:
1149 *	This symbol, if defined, indicates that the class routine is
1150 *	available to classify doubles.  Available for example in AIX.
1151 *	The returned values are defined in <float.h> and are:
1152 *
1153 *	FP_PLUS_NORM	Positive normalized, nonzero
1154 *	FP_MINUS_NORM	Negative normalized, nonzero
1155 *	FP_PLUS_DENORM	Positive denormalized, nonzero
1156 *	FP_MINUS_DENORM	Negative denormalized, nonzero
1157 *	FP_PLUS_ZERO	+0.0
1158 *	FP_MINUS_ZERO	-0.0
1159 *	FP_PLUS_INF	+INF
1160 *	FP_MINUS_INF	-INF
1161 *	FP_NANS		Signaling Not a Number (NaNS)
1162 *	FP_NANQ		Quiet Not a Number (NaNQ)
1163 */
1164/*#define HAS_CLASS		/**/
1165
1166/* VOID_CLOSEDIR:
1167 *	This symbol, if defined, indicates that the closedir() routine
1168 *	does not return a value.
1169 */
1170/*#define VOID_CLOSEDIR		/**/
1171
1172/* HAS_STRUCT_CMSGHDR:
1173 *	This symbol, if defined, indicates that the struct cmsghdr
1174 *	is supported.
1175 */
1176/*#define HAS_STRUCT_CMSGHDR	/**/
1177
1178/* HAS_CRYPT_R:
1179 *	This symbol, if defined, indicates that the crypt_r routine
1180 *	is available to crypt re-entrantly.
1181 */
1182/* CRYPT_R_PROTO:
1183 *	This symbol encodes the prototype of crypt_r.
1184 *	It is zero if d_crypt_r is undef, and one of the
1185 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_crypt_r
1186 *	is defined.
1187 */
1188/*#define HAS_CRYPT_R	   /**/
1189#define CRYPT_R_PROTO 0	   /**/
1190
1191/* HAS_CSH:
1192 *	This symbol, if defined, indicates that the C-shell exists.
1193 */
1194/* CSH:
1195 *	This symbol, if defined, contains the full pathname of csh.
1196 */
1197/*#define HAS_CSH		/**/
1198#ifdef HAS_CSH
1199#define CSH ""	/**/
1200#endif
1201
1202/* HAS_CTIME_R:
1203 *	This symbol, if defined, indicates that the ctime_r routine
1204 *	is available to ctime re-entrantly.
1205 */
1206/* CTIME_R_PROTO:
1207 *	This symbol encodes the prototype of ctime_r.
1208 *	It is zero if d_ctime_r is undef, and one of the
1209 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_ctime_r
1210 *	is defined.
1211 */
1212/*#define HAS_CTIME_R	   /**/
1213#define CTIME_R_PROTO 0	   /**/
1214
1215/* DLSYM_NEEDS_UNDERSCORE:
1216 *	This symbol, if defined, indicates that we need to prepend an
1217 *	underscore to the symbol name before calling dlsym().  This only
1218 *	makes sense if you *have* dlsym, which we will presume is the
1219 *	case if you're using dl_dlopen.xs.
1220 */
1221/*#define 	DLSYM_NEEDS_UNDERSCORE 	/**/
1222
1223/* HAS_DRAND48_R:
1224 *	This symbol, if defined, indicates that the drand48_r routine
1225 *	is available to drand48 re-entrantly.
1226 */
1227/* DRAND48_R_PROTO:
1228 *	This symbol encodes the prototype of drand48_r.
1229 *	It is zero if d_drand48_r is undef, and one of the
1230 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_drand48_r
1231 *	is defined.
1232 */
1233/*#define HAS_DRAND48_R	   /**/
1234#define DRAND48_R_PROTO 0	   /**/
1235
1236/* HAS_DRAND48_PROTO:
1237 *	This symbol, if defined, indicates that the system provides
1238 *	a prototype for the drand48() function.  Otherwise, it is up
1239 *	to the program to supply one.  A good guess is
1240 *		extern double drand48(void);
1241 */
1242/*#define	HAS_DRAND48_PROTO	/**/
1243
1244/* HAS_ENDGRENT:
1245 *	This symbol, if defined, indicates that the getgrent routine is
1246 *	available for finalizing sequential access of the group database.
1247 */
1248/*#define HAS_ENDGRENT		/**/
1249
1250/* HAS_ENDGRENT_R:
1251 *	This symbol, if defined, indicates that the endgrent_r routine
1252 *	is available to endgrent re-entrantly.
1253 */
1254/* ENDGRENT_R_PROTO:
1255 *	This symbol encodes the prototype of endgrent_r.
1256 *	It is zero if d_endgrent_r is undef, and one of the
1257 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_endgrent_r
1258 *	is defined.
1259 */
1260/*#define HAS_ENDGRENT_R	   /**/
1261#define ENDGRENT_R_PROTO 0	   /**/
1262
1263/* HAS_ENDHOSTENT:
1264 *	This symbol, if defined, indicates that the endhostent() routine is
1265 *	available to close whatever was being used for host queries.
1266 */
1267/*#define HAS_ENDHOSTENT		/**/
1268
1269/* HAS_ENDNETENT:
1270 *	This symbol, if defined, indicates that the endnetent() routine is
1271 *	available to close whatever was being used for network queries.
1272 */
1273/*#define HAS_ENDNETENT		/**/
1274
1275/* HAS_ENDPROTOENT:
1276 *	This symbol, if defined, indicates that the endprotoent() routine is
1277 *	available to close whatever was being used for protocol queries.
1278 */
1279/*#define HAS_ENDPROTOENT		/**/
1280
1281/* HAS_ENDPWENT:
1282 *	This symbol, if defined, indicates that the getgrent routine is
1283 *	available for finalizing sequential access of the passwd database.
1284 */
1285/*#define HAS_ENDPWENT		/**/
1286
1287/* HAS_ENDPWENT_R:
1288 *	This symbol, if defined, indicates that the endpwent_r routine
1289 *	is available to endpwent re-entrantly.
1290 */
1291/* ENDPWENT_R_PROTO:
1292 *	This symbol encodes the prototype of endpwent_r.
1293 *	It is zero if d_endpwent_r is undef, and one of the
1294 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_endpwent_r
1295 *	is defined.
1296 */
1297/*#define HAS_ENDPWENT_R	   /**/
1298#define ENDPWENT_R_PROTO 0	   /**/
1299
1300/* HAS_ENDSERVENT:
1301 *	This symbol, if defined, indicates that the endservent() routine is
1302 *	available to close whatever was being used for service queries.
1303 */
1304/*#define HAS_ENDSERVENT		/**/
1305
1306/* HAS_FCHDIR:
1307 *	This symbol, if defined, indicates that the fchdir routine is
1308 *	available to change directory using a file descriptor.
1309 */
1310/*#define HAS_FCHDIR		/**/
1311
1312/* FCNTL_CAN_LOCK:
1313 *	This symbol, if defined, indicates that fcntl() can be used
1314 *	for file locking.  Normally on Unix systems this is defined.
1315 *	It may be undefined on VMS.
1316 */
1317/*#define FCNTL_CAN_LOCK		/**/
1318
1319/* HAS_FD_SET:
1320 *	This symbol, when defined, indicates presence of the fd_set typedef
1321 *	in <sys/types.h>
1322 */
1323#define HAS_FD_SET	/**/
1324
1325/* HAS_FINITE:
1326 *	This symbol, if defined, indicates that the finite routine is
1327 *	available to check whether a double is finite (non-infinity non-NaN).
1328 */
1329/*#define HAS_FINITE		/**/
1330
1331/* HAS_FINITEL:
1332 *	This symbol, if defined, indicates that the finitel routine is
1333 *	available to check whether a long double is finite
1334 *	(non-infinity non-NaN).
1335 */
1336/*#define HAS_FINITEL		/**/
1337
1338/* FLEXFILENAMES:
1339 *	This symbol, if defined, indicates that the system supports filenames
1340 *	longer than 14 characters.
1341 */
1342#define	FLEXFILENAMES		/**/
1343
1344/* HAS_FP_CLASS:
1345 *	This symbol, if defined, indicates that the fp_class routine is
1346 *	available to classify doubles.  Available for example in Digital UNIX.
1347 *	The returned values are defined in <math.h> and are:
1348 *
1349 *	FP_SNAN           Signaling NaN (Not-a-Number)
1350 *	FP_QNAN           Quiet NaN (Not-a-Number)
1351 *	FP_POS_INF        +infinity
1352 *	FP_NEG_INF        -infinity
1353 *	FP_POS_NORM       Positive normalized
1354 *	FP_NEG_NORM       Negative normalized
1355 *	FP_POS_DENORM     Positive denormalized
1356 *	FP_NEG_DENORM     Negative denormalized
1357 *	FP_POS_ZERO       +0.0 (positive zero)
1358 *	FP_NEG_ZERO       -0.0 (negative zero)
1359 */
1360/*#define HAS_FP_CLASS		/**/
1361
1362/* HAS_FPCLASS:
1363 *	This symbol, if defined, indicates that the fpclass routine is
1364 *	available to classify doubles.  Available for example in Solaris/SVR4.
1365 *	The returned values are defined in <ieeefp.h> and are:
1366 *
1367 *	FP_SNAN		signaling NaN
1368 *	FP_QNAN		quiet NaN
1369 *	FP_NINF		negative infinity
1370 *	FP_PINF		positive infinity
1371 *	FP_NDENORM	negative denormalized non-zero
1372 *	FP_PDENORM	positive denormalized non-zero
1373 *	FP_NZERO	negative zero
1374 *	FP_PZERO	positive zero
1375 *	FP_NNORM	negative normalized non-zero
1376 *	FP_PNORM	positive normalized non-zero
1377 */
1378/*#define HAS_FPCLASS		/**/
1379
1380/* HAS_FPCLASSIFY:
1381 *	This symbol, if defined, indicates that the fpclassify routine is
1382 *	available to classify doubles.  Available for example in HP-UX.
1383 *	The returned values are defined in <math.h> and are
1384 *
1385 *           FP_NORMAL     Normalized
1386 *           FP_ZERO       Zero
1387 *           FP_INFINITE   Infinity
1388 *           FP_SUBNORMAL  Denormalized
1389 *           FP_NAN        NaN
1390 *
1391 */
1392/*#define HAS_FPCLASSIFY		/**/
1393
1394/* HAS_FPOS64_T:
1395 *	This symbol will be defined if the C compiler supports fpos64_t.
1396 */
1397/*#define	HAS_FPOS64_T    	/**/
1398
1399/* HAS_FREXPL:
1400 *	This symbol, if defined, indicates that the frexpl routine is
1401 *	available to break a long double floating-point number into
1402 *	a normalized fraction and an integral power of 2.
1403 */
1404/*#define HAS_FREXPL		/**/
1405
1406/* HAS_STRUCT_FS_DATA:
1407 *	This symbol, if defined, indicates that the struct fs_data
1408 *	to do statfs() is supported.
1409 */
1410/*#define HAS_STRUCT_FS_DATA	/**/
1411
1412/* HAS_FSEEKO:
1413 *	This symbol, if defined, indicates that the fseeko routine is
1414 *	available to fseek beyond 32 bits (useful for ILP32 hosts).
1415 */
1416/*#define HAS_FSEEKO		/**/
1417
1418/* HAS_FSTATFS:
1419 *	This symbol, if defined, indicates that the fstatfs routine is
1420 *	available to stat filesystems by file descriptors.
1421 */
1422/*#define HAS_FSTATFS		/**/
1423
1424/* HAS_FSYNC:
1425 *	This symbol, if defined, indicates that the fsync routine is
1426 *	available to write a file's modified data and attributes to
1427 *	permanent storage.
1428 */
1429/*#define HAS_FSYNC		/**/
1430
1431/* HAS_FTELLO:
1432 *	This symbol, if defined, indicates that the ftello routine is
1433 *	available to ftell beyond 32 bits (useful for ILP32 hosts).
1434 */
1435/*#define HAS_FTELLO		/**/
1436
1437/* HAS_FUTIMES:
1438 *	This symbol, if defined, indicates that the futimes routine is
1439 *	available to change file descriptor time stamps with struct timevals.
1440 */
1441/*#define HAS_FUTIMES		/**/
1442
1443/* Gconvert:
1444 *	This preprocessor macro is defined to convert a floating point
1445 *	number to a string without a trailing decimal point.  This
1446 *	emulates the behavior of sprintf("%g"), but is sometimes much more
1447 *	efficient.  If gconvert() is not available, but gcvt() drops the
1448 *	trailing decimal point, then gcvt() is used.  If all else fails,
1449 *	a macro using sprintf("%g") is used. Arguments for the Gconvert
1450 *	macro are: value, number of digits, whether trailing zeros should
1451 *	be retained, and the output buffer.
1452 *	The usual values are:
1453 *		d_Gconvert='gconvert((x),(n),(t),(b))'
1454 *		d_Gconvert='gcvt((x),(n),(b))'
1455 *		d_Gconvert='sprintf((b),"%.*g",(n),(x))'
1456 *	The last two assume trailing zeros should not be kept.
1457 */
1458#define Gconvert(x,n,t,b) gcvt((x),(n),(b))
1459
1460/* HAS_GETCWD:
1461 *	This symbol, if defined, indicates that the getcwd routine is
1462 *	available to get the current working directory.
1463 */
1464#define HAS_GETCWD		/**/
1465
1466/* HAS_GETESPWNAM:
1467 *	This symbol, if defined, indicates that the getespwnam system call is
1468 *	available to retrieve enchanced (shadow) password entries by name.
1469 */
1470/*#define HAS_GETESPWNAM		/**/
1471
1472/* HAS_GETFSSTAT:
1473 *	This symbol, if defined, indicates that the getfsstat routine is
1474 *	available to stat filesystems in bulk.
1475 */
1476/*#define HAS_GETFSSTAT		/**/
1477
1478/* HAS_GETGRENT:
1479 *	This symbol, if defined, indicates that the getgrent routine is
1480 *	available for sequential access of the group database.
1481 */
1482/*#define HAS_GETGRENT		/**/
1483
1484/* HAS_GETGRENT_R:
1485 *	This symbol, if defined, indicates that the getgrent_r routine
1486 *	is available to getgrent re-entrantly.
1487 */
1488/* GETGRENT_R_PROTO:
1489 *	This symbol encodes the prototype of getgrent_r.
1490 *	It is zero if d_getgrent_r is undef, and one of the
1491 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrent_r
1492 *	is defined.
1493 */
1494/*#define HAS_GETGRENT_R	   /**/
1495#define GETGRENT_R_PROTO 0	   /**/
1496
1497/* HAS_GETGRGID_R:
1498 *	This symbol, if defined, indicates that the getgrgid_r routine
1499 *	is available to getgrgid re-entrantly.
1500 */
1501/* GETGRGID_R_PROTO:
1502 *	This symbol encodes the prototype of getgrgid_r.
1503 *	It is zero if d_getgrgid_r is undef, and one of the
1504 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrgid_r
1505 *	is defined.
1506 */
1507/*#define HAS_GETGRGID_R	   /**/
1508#define GETGRGID_R_PROTO 0	   /**/
1509
1510/* HAS_GETGRNAM_R:
1511 *	This symbol, if defined, indicates that the getgrnam_r routine
1512 *	is available to getgrnam re-entrantly.
1513 */
1514/* GETGRNAM_R_PROTO:
1515 *	This symbol encodes the prototype of getgrnam_r.
1516 *	It is zero if d_getgrnam_r is undef, and one of the
1517 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrnam_r
1518 *	is defined.
1519 */
1520/*#define HAS_GETGRNAM_R	   /**/
1521#define GETGRNAM_R_PROTO 0	   /**/
1522
1523/* HAS_GETHOSTBYADDR:
1524 *	This symbol, if defined, indicates that the gethostbyaddr() routine is
1525 *	available to look up hosts by their IP addresses.
1526 */
1527#define HAS_GETHOSTBYADDR		/**/
1528
1529/* HAS_GETHOSTBYNAME:
1530 *	This symbol, if defined, indicates that the gethostbyname() routine is
1531 *	available to look up host names in some data base or other.
1532 */
1533#define HAS_GETHOSTBYNAME		/**/
1534
1535/* HAS_GETHOSTENT:
1536 *	This symbol, if defined, indicates that the gethostent() routine is
1537 *	available to look up host names in some data base or another.
1538 */
1539/*#define HAS_GETHOSTENT		/**/
1540
1541/* HAS_GETHOSTNAME:
1542 *	This symbol, if defined, indicates that the C program may use the
1543 *	gethostname() routine to derive the host name.  See also HAS_UNAME
1544 *	and PHOSTNAME.
1545 */
1546/* HAS_UNAME:
1547 *	This symbol, if defined, indicates that the C program may use the
1548 *	uname() routine to derive the host name.  See also HAS_GETHOSTNAME
1549 *	and PHOSTNAME.
1550 */
1551/* PHOSTNAME:
1552 *	This symbol, if defined, indicates the command to feed to the
1553 *	popen() routine to derive the host name.  See also HAS_GETHOSTNAME
1554 *	and HAS_UNAME.	Note that the command uses a fully qualified path,
1555 *	so that it is safe even if used by a process with super-user
1556 *	privileges.
1557 */
1558/* HAS_PHOSTNAME:
1559 *	This symbol, if defined, indicates that the C program may use the
1560 *	contents of PHOSTNAME as a command to feed to the popen() routine
1561 *	to derive the host name.
1562 */
1563#define HAS_GETHOSTNAME	/**/
1564#define HAS_UNAME		/**/
1565/*#define HAS_PHOSTNAME	/**/
1566#ifdef HAS_PHOSTNAME
1567#define PHOSTNAME ""	/* How to get the host name */
1568#endif
1569
1570/* HAS_GETHOST_PROTOS:
1571 *	This symbol, if defined, indicates that <netdb.h> includes
1572 *	prototypes for gethostent(), gethostbyname(), and
1573 *	gethostbyaddr().  Otherwise, it is up to the program to guess
1574 *	them.  See netdbtype.U for probing for various Netdb_xxx_t types.
1575 */
1576#define	HAS_GETHOST_PROTOS	/**/
1577
1578/* HAS_GETITIMER:
1579 *	This symbol, if defined, indicates that the getitimer routine is
1580 *	available to return interval timers.
1581 */
1582/*#define HAS_GETITIMER		/**/
1583
1584/* HAS_GETLOGIN_R:
1585 *	This symbol, if defined, indicates that the getlogin_r routine
1586 *	is available to getlogin re-entrantly.
1587 */
1588/* GETLOGIN_R_PROTO:
1589 *	This symbol encodes the prototype of getlogin_r.
1590 *	It is zero if d_getlogin_r is undef, and one of the
1591 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getlogin_r
1592 *	is defined.
1593 */
1594/*#define HAS_GETLOGIN_R	   /**/
1595#define GETLOGIN_R_PROTO 0	   /**/
1596
1597/* HAS_GETMNT:
1598 *	This symbol, if defined, indicates that the getmnt routine is
1599 *	available to get filesystem mount info by filename.
1600 */
1601/*#define HAS_GETMNT		/**/
1602
1603/* HAS_GETMNTENT:
1604 *	This symbol, if defined, indicates that the getmntent routine is
1605 *	available to iterate through mounted file systems to get their info.
1606 */
1607/*#define HAS_GETMNTENT		/**/
1608
1609/* HAS_GETNETBYADDR:
1610 *	This symbol, if defined, indicates that the getnetbyaddr() routine is
1611 *	available to look up networks by their IP addresses.
1612 */
1613/*#define HAS_GETNETBYADDR		/**/
1614
1615/* HAS_GETNETBYNAME:
1616 *	This symbol, if defined, indicates that the getnetbyname() routine is
1617 *	available to look up networks by their names.
1618 */
1619/*#define HAS_GETNETBYNAME		/**/
1620
1621/* HAS_GETNETENT:
1622 *	This symbol, if defined, indicates that the getnetent() routine is
1623 *	available to look up network names in some data base or another.
1624 */
1625/*#define HAS_GETNETENT		/**/
1626
1627/* HAS_GETNET_PROTOS:
1628 *	This symbol, if defined, indicates that <netdb.h> includes
1629 *	prototypes for getnetent(), getnetbyname(), and
1630 *	getnetbyaddr().  Otherwise, it is up to the program to guess
1631 *	them.  See netdbtype.U for probing for various Netdb_xxx_t types.
1632 */
1633/*#define	HAS_GETNET_PROTOS	/**/
1634
1635/* HAS_GETPAGESIZE:
1636 *	This symbol, if defined, indicates that the getpagesize system call
1637 *	is available to get system page size, which is the granularity of
1638 *	many memory management calls.
1639 */
1640/*#define HAS_GETPAGESIZE		/**/
1641
1642/* HAS_GETPROTOENT:
1643 *	This symbol, if defined, indicates that the getprotoent() routine is
1644 *	available to look up protocols in some data base or another.
1645 */
1646/*#define HAS_GETPROTOENT		/**/
1647
1648/* HAS_GETPGRP:
1649 *	This symbol, if defined, indicates that the getpgrp routine is
1650 *	available to get the current process group.
1651 */
1652/* USE_BSD_GETPGRP:
1653 *	This symbol, if defined, indicates that getpgrp needs one
1654 *	arguments whereas USG one needs none.
1655 */
1656/*#define HAS_GETPGRP		/**/
1657/*#define USE_BSD_GETPGRP	/**/
1658
1659/* HAS_GETPROTOBYNAME:
1660 *	This symbol, if defined, indicates that the getprotobyname()
1661 *	routine is available to look up protocols by their name.
1662 */
1663/* HAS_GETPROTOBYNUMBER:
1664 *	This symbol, if defined, indicates that the getprotobynumber()
1665 *	routine is available to look up protocols by their number.
1666 */
1667#define HAS_GETPROTOBYNAME		/**/
1668#define HAS_GETPROTOBYNUMBER		/**/
1669
1670/* HAS_GETPROTO_PROTOS:
1671 *	This symbol, if defined, indicates that <netdb.h> includes
1672 *	prototypes for getprotoent(), getprotobyname(), and
1673 *	getprotobyaddr().  Otherwise, it is up to the program to guess
1674 *	them.  See netdbtype.U for probing for various Netdb_xxx_t types.
1675 */
1676#define	HAS_GETPROTO_PROTOS	/**/
1677
1678/* HAS_GETPRPWNAM:
1679 *	This symbol, if defined, indicates that the getprpwnam system call is
1680 *	available to retrieve protected (shadow) password entries by name.
1681 */
1682/*#define HAS_GETPRPWNAM		/**/
1683
1684/* HAS_GETPWENT:
1685 *	This symbol, if defined, indicates that the getpwent routine is
1686 *	available for sequential access of the passwd database.
1687 *	If this is not available, the older getpw() function may be available.
1688 */
1689/*#define HAS_GETPWENT		/**/
1690
1691/* HAS_GETPWENT_R:
1692 *	This symbol, if defined, indicates that the getpwent_r routine
1693 *	is available to getpwent re-entrantly.
1694 */
1695/* GETPWENT_R_PROTO:
1696 *	This symbol encodes the prototype of getpwent_r.
1697 *	It is zero if d_getpwent_r is undef, and one of the
1698 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwent_r
1699 *	is defined.
1700 */
1701/*#define HAS_GETPWENT_R	   /**/
1702#define GETPWENT_R_PROTO 0	   /**/
1703
1704/* HAS_GETPWNAM_R:
1705 *	This symbol, if defined, indicates that the getpwnam_r routine
1706 *	is available to getpwnam re-entrantly.
1707 */
1708/* GETPWNAM_R_PROTO:
1709 *	This symbol encodes the prototype of getpwnam_r.
1710 *	It is zero if d_getpwnam_r is undef, and one of the
1711 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwnam_r
1712 *	is defined.
1713 */
1714/*#define HAS_GETPWNAM_R	   /**/
1715#define GETPWNAM_R_PROTO 0	   /**/
1716
1717/* HAS_GETPWUID_R:
1718 *	This symbol, if defined, indicates that the getpwuid_r routine
1719 *	is available to getpwuid re-entrantly.
1720 */
1721/* GETPWUID_R_PROTO:
1722 *	This symbol encodes the prototype of getpwuid_r.
1723 *	It is zero if d_getpwuid_r is undef, and one of the
1724 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwuid_r
1725 *	is defined.
1726 */
1727/*#define HAS_GETPWUID_R	   /**/
1728#define GETPWUID_R_PROTO 0	   /**/
1729
1730/* HAS_GETSERVENT:
1731 *	This symbol, if defined, indicates that the getservent() routine is
1732 *	available to look up network services in some data base or another.
1733 */
1734/*#define HAS_GETSERVENT		/**/
1735
1736/* HAS_GETSERV_PROTOS:
1737 *	This symbol, if defined, indicates that <netdb.h> includes
1738 *	prototypes for getservent(), getservbyname(), and
1739 *	getservbyaddr().  Otherwise, it is up to the program to guess
1740 *	them.  See netdbtype.U for probing for various Netdb_xxx_t types.
1741 */
1742#define	HAS_GETSERV_PROTOS	/**/
1743
1744/* HAS_GETSPNAM:
1745 *	This symbol, if defined, indicates that the getspnam system call is
1746 *	available to retrieve SysV shadow password entries by name.
1747 */
1748/*#define HAS_GETSPNAM		/**/
1749
1750/* HAS_GETSPNAM_R:
1751 *	This symbol, if defined, indicates that the getspnam_r routine
1752 *	is available to getspnam re-entrantly.
1753 */
1754/* GETSPNAM_R_PROTO:
1755 *	This symbol encodes the prototype of getspnam_r.
1756 *	It is zero if d_getspnam_r is undef, and one of the
1757 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getspnam_r
1758 *	is defined.
1759 */
1760/*#define HAS_GETSPNAM_R	   /**/
1761#define GETSPNAM_R_PROTO 0	   /**/
1762
1763/* HAS_GETSERVBYNAME:
1764 *	This symbol, if defined, indicates that the getservbyname()
1765 *	routine is available to look up services by their name.
1766 */
1767/* HAS_GETSERVBYPORT:
1768 *	This symbol, if defined, indicates that the getservbyport()
1769 *	routine is available to look up services by their port.
1770 */
1771#define HAS_GETSERVBYNAME		/**/
1772#define HAS_GETSERVBYPORT		/**/
1773
1774/* HAS_GMTIME_R:
1775 *	This symbol, if defined, indicates that the gmtime_r routine
1776 *	is available to gmtime re-entrantly.
1777 */
1778/* GMTIME_R_PROTO:
1779 *	This symbol encodes the prototype of gmtime_r.
1780 *	It is zero if d_gmtime_r is undef, and one of the
1781 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_gmtime_r
1782 *	is defined.
1783 */
1784/*#define HAS_GMTIME_R	   /**/
1785#define GMTIME_R_PROTO 0	   /**/
1786
1787/* HAS_GNULIBC:
1788 *	This symbol, if defined, indicates to the C program that
1789 *	the GNU C library is being used.  A better check is to use
1790 *	the __GLIBC__ and __GLIBC_MINOR__ symbols supplied with glibc.
1791 */
1792/*#define HAS_GNULIBC  	/**/
1793#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE)
1794#   define _GNU_SOURCE
1795#endif
1796/* HAS_HASMNTOPT:
1797 *	This symbol, if defined, indicates that the hasmntopt routine is
1798 *	available to query the mount options of file systems.
1799 */
1800/*#define HAS_HASMNTOPT		/**/
1801
1802/* HAS_HTONL:
1803 *	This symbol, if defined, indicates that the htonl() routine (and
1804 *	friends htons() ntohl() ntohs()) are available to do network
1805 *	order byte swapping.
1806 */
1807/* HAS_HTONS:
1808 *	This symbol, if defined, indicates that the htons() routine (and
1809 *	friends htonl() ntohl() ntohs()) are available to do network
1810 *	order byte swapping.
1811 */
1812/* HAS_NTOHL:
1813 *	This symbol, if defined, indicates that the ntohl() routine (and
1814 *	friends htonl() htons() ntohs()) are available to do network
1815 *	order byte swapping.
1816 */
1817/* HAS_NTOHS:
1818 *	This symbol, if defined, indicates that the ntohs() routine (and
1819 *	friends htonl() htons() ntohl()) are available to do network
1820 *	order byte swapping.
1821 */
1822#define HAS_HTONL		/**/
1823#define HAS_HTONS		/**/
1824#define HAS_NTOHL		/**/
1825#define HAS_NTOHS		/**/
1826
1827/* HAS_INT64_T:
1828 *     This symbol will defined if the C compiler supports int64_t.
1829 *     Usually the <inttypes.h> needs to be included, but sometimes
1830 *	<sys/types.h> is enough.
1831 */
1832/*#define     HAS_INT64_T               /**/
1833
1834/* HAS_ISASCII:
1835 *	This manifest constant lets the C program know that isascii
1836 *	is available.
1837 */
1838#define HAS_ISASCII		/**/
1839
1840/* HAS_ISFINITE:
1841 *	This symbol, if defined, indicates that the isfinite routine is
1842 *	available to check whether a double is finite (non-infinity non-NaN).
1843 */
1844/*#define HAS_ISFINITE		/**/
1845
1846/* HAS_ISINF:
1847 *	This symbol, if defined, indicates that the isinf routine is
1848 *	available to check whether a double is an infinity.
1849 */
1850/*#define HAS_ISINF		/**/
1851
1852/* HAS_ISNAN:
1853 *	This symbol, if defined, indicates that the isnan routine is
1854 *	available to check whether a double is a NaN.
1855 */
1856#define HAS_ISNAN		/**/
1857
1858/* HAS_ISNANL:
1859 *	This symbol, if defined, indicates that the isnanl routine is
1860 *	available to check whether a long double is a NaN.
1861 */
1862/*#define HAS_ISNANL		/**/
1863
1864/* HAS_LCHOWN:
1865 *	This symbol, if defined, indicates that the lchown routine is
1866 *	available to operate on a symbolic link (instead of following the
1867 *	link).
1868 */
1869/*#define HAS_LCHOWN		/**/
1870
1871/* HAS_LDBL_DIG:
1872 *	This symbol, if defined, indicates that this system's <float.h>
1873 *	or <limits.h> defines the symbol LDBL_DIG, which is the number
1874 *	of significant digits in a long double precision number. Unlike
1875 *	for DBL_DIG, there's no good guess for LDBL_DIG if it is undefined.
1876 */
1877#define HAS_LDBL_DIG 	/**/
1878
1879/* HAS_LOCALTIME_R:
1880 *	This symbol, if defined, indicates that the localtime_r routine
1881 *	is available to localtime re-entrantly.
1882 */
1883/* LOCALTIME_R_PROTO:
1884 *	This symbol encodes the prototype of localtime_r.
1885 *	It is zero if d_localtime_r is undef, and one of the
1886 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_localtime_r
1887 *	is defined.
1888 */
1889/*#define HAS_LOCALTIME_R	   /**/
1890#define LOCALTIME_R_PROTO 0	   /**/
1891
1892/* HAS_LONG_DOUBLE:
1893 *	This symbol will be defined if the C compiler supports long
1894 *	doubles.
1895 */
1896/* LONG_DOUBLESIZE:
1897 *	This symbol contains the size of a long double, so that the
1898 *	C preprocessor can make decisions based on it.  It is only
1899 *	defined if the system supports long doubles.
1900 */
1901#define HAS_LONG_DOUBLE		/**/
1902#ifdef HAS_LONG_DOUBLE
1903#define LONG_DOUBLESIZE 10		/**/
1904#endif
1905
1906/* HAS_LONG_LONG:
1907 *	This symbol will be defined if the C compiler supports long long.
1908 */
1909/* LONGLONGSIZE:
1910 *	This symbol contains the size of a long long, so that the
1911 *	C preprocessor can make decisions based on it.  It is only
1912 *	defined if the system supports long long.
1913 */
1914/*#define HAS_LONG_LONG		/**/
1915#ifdef HAS_LONG_LONG
1916#define LONGLONGSIZE 8		/**/
1917#endif
1918
1919/* HAS_LSEEK_PROTO:
1920 *	This symbol, if defined, indicates that the system provides
1921 *	a prototype for the lseek() function.  Otherwise, it is up
1922 *	to the program to supply one.  A good guess is
1923 *		extern off_t lseek(int, off_t, int);
1924 */
1925#define	HAS_LSEEK_PROTO	/**/
1926
1927/* HAS_MADVISE:
1928 *	This symbol, if defined, indicates that the madvise system call is
1929 *	available to map a file into memory.
1930 */
1931/*#define HAS_MADVISE		/**/
1932
1933/* HAS_MALLOC_SIZE:
1934 *	This symbol, if defined, indicates that the malloc_size
1935 *	routine is available for use.
1936 */
1937/*#define HAS_MALLOC_SIZE		/**/
1938
1939/* HAS_MALLOC_GOOD_SIZE:
1940 *	This symbol, if defined, indicates that the malloc_good_size
1941 *	routine is available for use.
1942 */
1943/*#define HAS_MALLOC_GOOD_SIZE	/**/
1944
1945/* HAS_MEMCHR:
1946 *	This symbol, if defined, indicates that the memchr routine is available
1947 *	to locate characters within a C string.
1948 */
1949#define HAS_MEMCHR	/**/
1950
1951/* HAS_MKDTEMP:
1952 *	This symbol, if defined, indicates that the mkdtemp routine is
1953 *	available to exclusively create a uniquely named temporary directory.
1954 */
1955/*#define HAS_MKDTEMP		/**/
1956
1957/* HAS_MKSTEMP:
1958 *	This symbol, if defined, indicates that the mkstemp routine is
1959 *	available to exclusively create and open a uniquely named
1960 *	temporary file.
1961 */
1962/*#define HAS_MKSTEMP		/**/
1963
1964/* HAS_MKSTEMPS:
1965 *	This symbol, if defined, indicates that the mkstemps routine is
1966 *	available to excluslvely create and open a uniquely named
1967 *	(with a suffix) temporary file.
1968 */
1969/*#define HAS_MKSTEMPS		/**/
1970
1971/* HAS_MMAP:
1972 *	This symbol, if defined, indicates that the mmap system call is
1973 *	available to map a file into memory.
1974 */
1975/* Mmap_t:
1976 *	This symbol holds the return type of the mmap() system call
1977 *	(and simultaneously the type of the first argument).
1978 *	Usually set to 'void *' or 'cadd_t'.
1979 */
1980/*#define HAS_MMAP		/**/
1981#define Mmap_t void *	/**/
1982
1983/* HAS_MODFL:
1984 *	This symbol, if defined, indicates that the modfl routine is
1985 *	available to split a long double x into a fractional part f and
1986 *	an integer part i such that |f| < 1.0 and (f + i) = x.
1987 */
1988/* HAS_MODFL_PROTO:
1989 *	This symbol, if defined, indicates that the system provides
1990 *	a prototype for the modfl() function.  Otherwise, it is up
1991 *	to the program to supply one.
1992 */
1993/* HAS_MODFL_POW32_BUG:
1994 *	This symbol, if defined, indicates that the modfl routine is
1995 *	broken for long doubles >= pow(2, 32).
1996 *	For example from 4294967303.150000 one would get 4294967302.000000
1997 *	and 1.150000.  The bug has been seen in certain versions of glibc,
1998 *	release 2.2.2 is known to be okay.
1999 */
2000/*#define HAS_MODFL		/**/
2001/*#define HAS_MODFL_PROTO		/**/
2002/*#define HAS_MODFL_POW32_BUG		/**/
2003
2004/* HAS_MPROTECT:
2005 *	This symbol, if defined, indicates that the mprotect system call is
2006 *	available to modify the access protection of a memory mapped file.
2007 */
2008/*#define HAS_MPROTECT		/**/
2009
2010/* HAS_MSG:
2011 *	This symbol, if defined, indicates that the entire msg*(2) library is
2012 *	supported (IPC mechanism based on message queues).
2013 */
2014/*#define HAS_MSG		/**/
2015
2016/* HAS_STRUCT_MSGHDR:
2017 *	This symbol, if defined, indicates that the struct msghdr
2018 *	is supported.
2019 */
2020/*#define HAS_STRUCT_MSGHDR	/**/
2021
2022/* HAS_OFF64_T:
2023 *	This symbol will be defined if the C compiler supports off64_t.
2024 */
2025/*#define	HAS_OFF64_T    		/**/
2026
2027/* HAS_OPEN3:
2028 *	This manifest constant lets the C program know that the three
2029 *	argument form of open(2) is available.
2030 */
2031/*#define HAS_OPEN3		/**/
2032
2033/* OLD_PTHREAD_CREATE_JOINABLE:
2034 *	This symbol, if defined, indicates how to create pthread
2035 *	in joinable (aka undetached) state.  NOTE: not defined
2036 *	if pthread.h already has defined PTHREAD_CREATE_JOINABLE
2037 *	(the new version of the constant).
2038 *	If defined, known values are PTHREAD_CREATE_UNDETACHED
2039 *	and __UNDETACHED.
2040 */
2041/*#define OLD_PTHREAD_CREATE_JOINABLE  /**/
2042
2043/* HAS_PTHREAD_YIELD:
2044 *	This symbol, if defined, indicates that the pthread_yield
2045 *	routine is available to yield the execution of the current
2046 *	thread.	 sched_yield is preferable to pthread_yield.
2047 */
2048/* SCHED_YIELD:
2049 *	This symbol defines the way to yield the execution of
2050 *	the current thread.  Known ways are sched_yield,
2051 *	pthread_yield, and pthread_yield with NULL.
2052 */
2053/* HAS_SCHED_YIELD:
2054 *	This symbol, if defined, indicates that the sched_yield
2055 *	routine is available to yield the execution of the current
2056 *	thread.	 sched_yield is preferable to pthread_yield.
2057 */
2058/*#define HAS_PTHREAD_YIELD	/**/
2059#define SCHED_YIELD		/**/
2060/*#define HAS_SCHED_YIELD	/**/
2061
2062/* HAS_RANDOM_R:
2063 *	This symbol, if defined, indicates that the random_r routine
2064 *	is available to random re-entrantly.
2065 */
2066/* RANDOM_R_PROTO:
2067 *	This symbol encodes the prototype of random_r.
2068 *	It is zero if d_random_r is undef, and one of the
2069 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_random_r
2070 *	is defined.
2071 */
2072/*#define HAS_RANDOM_R	   /**/
2073#define RANDOM_R_PROTO 0	   /**/
2074
2075/* HAS_READDIR_R:
2076 *	This symbol, if defined, indicates that the readdir_r routine
2077 *	is available to readdir re-entrantly.
2078 */
2079/* READDIR_R_PROTO:
2080 *	This symbol encodes the prototype of readdir_r.
2081 *	It is zero if d_readdir_r is undef, and one of the
2082 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_readdir_r
2083 *	is defined.
2084 */
2085/*#define HAS_READDIR_R	   /**/
2086#define READDIR_R_PROTO 0	   /**/
2087
2088/* HAS_READV:
2089 *	This symbol, if defined, indicates that the readv routine is
2090 *	available to do gather reads.  You will also need <sys/uio.h>
2091 *	and there I_SYSUIO.
2092 */
2093/*#define HAS_READV		/**/
2094
2095/* HAS_RECVMSG:
2096 *	This symbol, if defined, indicates that the recvmsg routine is
2097 *	available to send structured socket messages.
2098 */
2099/*#define HAS_RECVMSG		/**/
2100
2101/* HAS_SAFE_BCOPY:
2102 *	This symbol, if defined, indicates that the bcopy routine is available
2103 *	to copy potentially overlapping memory blocks. Normally, you should
2104 *	probably use memmove() or memcpy(). If neither is defined, roll your
2105 *	own version.
2106 */
2107/*#define HAS_SAFE_BCOPY	/**/
2108
2109/* HAS_SAFE_MEMCPY:
2110 *	This symbol, if defined, indicates that the memcpy routine is available
2111 *	to copy potentially overlapping memory blocks.  If you need to
2112 *	copy overlapping memory blocks, you should check HAS_MEMMOVE and
2113 *	use memmove() instead, if available.
2114 */
2115/*#define HAS_SAFE_MEMCPY	/**/
2116
2117/* HAS_SANE_MEMCMP:
2118 *	This symbol, if defined, indicates that the memcmp routine is available
2119 *	and can be used to compare relative magnitudes of chars with their high
2120 *	bits set.  If it is not defined, roll your own version.
2121 */
2122#define HAS_SANE_MEMCMP	/**/
2123
2124/* HAS_SBRK_PROTO:
2125 *	This symbol, if defined, indicates that the system provides
2126 *	a prototype for the sbrk() function.  Otherwise, it is up
2127 *	to the program to supply one.  Good guesses are
2128 *		extern void* sbrk(int);
2129 *		extern void* sbrk(size_t);
2130 */
2131/*#define	HAS_SBRK_PROTO	/**/
2132
2133/* HAS_SEM:
2134 *	This symbol, if defined, indicates that the entire sem*(2) library is
2135 *	supported.
2136 */
2137/*#define HAS_SEM		/**/
2138
2139/* HAS_SENDMSG:
2140 *	This symbol, if defined, indicates that the sendmsg routine is
2141 *	available to send structured socket messages.
2142 */
2143/*#define HAS_SENDMSG		/**/
2144
2145/* HAS_SETGRENT:
2146 *	This symbol, if defined, indicates that the setgrent routine is
2147 *	available for initializing sequential access of the group database.
2148 */
2149/*#define HAS_SETGRENT		/**/
2150
2151/* HAS_SETGRENT_R:
2152 *	This symbol, if defined, indicates that the setgrent_r routine
2153 *	is available to setgrent re-entrantly.
2154 */
2155/* SETGRENT_R_PROTO:
2156 *	This symbol encodes the prototype of setgrent_r.
2157 *	It is zero if d_setgrent_r is undef, and one of the
2158 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_setgrent_r
2159 *	is defined.
2160 */
2161/*#define HAS_SETGRENT_R	   /**/
2162#define SETGRENT_R_PROTO 0	   /**/
2163
2164/* HAS_SETGROUPS:
2165 *	This symbol, if defined, indicates that the setgroups() routine is
2166 *	available to set the list of process groups.  If unavailable, multiple
2167 *	groups are probably not supported.
2168 */
2169/*#define HAS_SETGROUPS		/**/
2170
2171/* HAS_SETHOSTENT:
2172 *	This symbol, if defined, indicates that the sethostent() routine is
2173 *	available.
2174 */
2175/*#define HAS_SETHOSTENT		/**/
2176
2177/* HAS_SETITIMER:
2178 *	This symbol, if defined, indicates that the setitimer routine is
2179 *	available to set interval timers.
2180 */
2181/*#define HAS_SETITIMER		/**/
2182
2183/* HAS_SETNETENT:
2184 *	This symbol, if defined, indicates that the setnetent() routine is
2185 *	available.
2186 */
2187/*#define HAS_SETNETENT		/**/
2188
2189/* HAS_SETPROTOENT:
2190 *	This symbol, if defined, indicates that the setprotoent() routine is
2191 *	available.
2192 */
2193/*#define HAS_SETPROTOENT		/**/
2194
2195/* HAS_SETPGRP:
2196 *	This symbol, if defined, indicates that the setpgrp routine is
2197 *	available to set the current process group.
2198 */
2199/* USE_BSD_SETPGRP:
2200 *	This symbol, if defined, indicates that setpgrp needs two
2201 *	arguments whereas USG one needs none.  See also HAS_SETPGID
2202 *	for a POSIX interface.
2203 */
2204/*#define HAS_SETPGRP		/**/
2205/*#define USE_BSD_SETPGRP	/**/
2206
2207/* HAS_SETPROCTITLE:
2208 *	This symbol, if defined, indicates that the setproctitle routine is
2209 *	available to set process title.
2210 */
2211/*#define HAS_SETPROCTITLE		/**/
2212
2213/* HAS_SETPWENT:
2214 *	This symbol, if defined, indicates that the setpwent routine is
2215 *	available for initializing sequential access of the passwd database.
2216 */
2217/*#define HAS_SETPWENT		/**/
2218
2219/* HAS_SETPWENT_R:
2220 *	This symbol, if defined, indicates that the setpwent_r routine
2221 *	is available to setpwent re-entrantly.
2222 */
2223/* SETPWENT_R_PROTO:
2224 *	This symbol encodes the prototype of setpwent_r.
2225 *	It is zero if d_setpwent_r is undef, and one of the
2226 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_setpwent_r
2227 *	is defined.
2228 */
2229/*#define HAS_SETPWENT_R	   /**/
2230#define SETPWENT_R_PROTO 0	   /**/
2231
2232/* HAS_SETSERVENT:
2233 *	This symbol, if defined, indicates that the setservent() routine is
2234 *	available.
2235 */
2236/*#define HAS_SETSERVENT		/**/
2237
2238/* HAS_SETVBUF:
2239 *	This symbol, if defined, indicates that the setvbuf routine is
2240 *	available to change buffering on an open stdio stream.
2241 *	to a line-buffered mode.
2242 */
2243#define HAS_SETVBUF		/**/
2244
2245/* USE_SFIO:
2246 *	This symbol, if defined, indicates that sfio should
2247 *	be used.
2248 */
2249/*#define	USE_SFIO		/**/
2250
2251/* HAS_SHM:
2252 *	This symbol, if defined, indicates that the entire shm*(2) library is
2253 *	supported.
2254 */
2255/*#define HAS_SHM		/**/
2256
2257/* HAS_SIGACTION:
2258 *	This symbol, if defined, indicates that Vr4's sigaction() routine
2259 *	is available.
2260 */
2261/*#define HAS_SIGACTION	/**/
2262
2263/* HAS_SIGSETJMP:
2264 *	This variable indicates to the C program that the sigsetjmp()
2265 *	routine is available to save the calling process's registers
2266 *	and stack environment for later use by siglongjmp(), and
2267 *	to optionally save the process's signal mask.  See
2268 *	Sigjmp_buf, Sigsetjmp, and Siglongjmp.
2269 */
2270/* Sigjmp_buf:
2271 *	This is the buffer type to be used with Sigsetjmp and Siglongjmp.
2272 */
2273/* Sigsetjmp:
2274 *	This macro is used in the same way as sigsetjmp(), but will invoke
2275 *	traditional setjmp() if sigsetjmp isn't available.
2276 *	See HAS_SIGSETJMP.
2277 */
2278/* Siglongjmp:
2279 *	This macro is used in the same way as siglongjmp(), but will invoke
2280 *	traditional longjmp() if siglongjmp isn't available.
2281 *	See HAS_SIGSETJMP.
2282 */
2283/*#define HAS_SIGSETJMP	/**/
2284#ifdef HAS_SIGSETJMP
2285#define Sigjmp_buf sigjmp_buf
2286#define Sigsetjmp(buf,save_mask) sigsetjmp((buf),(save_mask))
2287#define Siglongjmp(buf,retval) siglongjmp((buf),(retval))
2288#else
2289#define Sigjmp_buf jmp_buf
2290#define Sigsetjmp(buf,save_mask) setjmp((buf))
2291#define Siglongjmp(buf,retval) longjmp((buf),(retval))
2292#endif
2293
2294/* USE_SITECUSTOMIZE:
2295 *	This symbol, if defined, indicates that sitecustomize should
2296 *	be used.
2297 */
2298/*#define	USE_SITECUSTOMIZE		/**/
2299
2300/* HAS_SOCKET:
2301 *	This symbol, if defined, indicates that the BSD socket interface is
2302 *	supported.
2303 */
2304/* HAS_SOCKETPAIR:
2305 *	This symbol, if defined, indicates that the BSD socketpair() call is
2306 *	supported.
2307 */
2308/* HAS_MSG_CTRUNC:
2309 *	This symbol, if defined, indicates that the MSG_CTRUNC is supported.
2310 *	Checking just with #ifdef might not be enough because this symbol
2311 *	has been known to be an enum.
2312 */
2313/* HAS_MSG_DONTROUTE:
2314 *	This symbol, if defined, indicates that the MSG_DONTROUTE is supported.
2315 *	Checking just with #ifdef might not be enough because this symbol
2316 *	has been known to be an enum.
2317 */
2318/* HAS_MSG_OOB:
2319 *	This symbol, if defined, indicates that the MSG_OOB is supported.
2320 *	Checking just with #ifdef might not be enough because this symbol
2321 *	has been known to be an enum.
2322 */
2323/* HAS_MSG_PEEK:
2324 *	This symbol, if defined, indicates that the MSG_PEEK is supported.
2325 *	Checking just with #ifdef might not be enough because this symbol
2326 *	has been known to be an enum.
2327 */
2328/* HAS_MSG_PROXY:
2329 *	This symbol, if defined, indicates that the MSG_PROXY is supported.
2330 *	Checking just with #ifdef might not be enough because this symbol
2331 *	has been known to be an enum.
2332 */
2333/* HAS_SCM_RIGHTS:
2334 *	This symbol, if defined, indicates that the SCM_RIGHTS is supported.
2335 *	Checking just with #ifdef might not be enough because this symbol
2336 *	has been known to be an enum.
2337 */
2338#define	HAS_SOCKET		/**/
2339/*#define	HAS_SOCKETPAIR	/**/
2340/*#define	HAS_MSG_CTRUNC	/**/
2341/*#define	HAS_MSG_DONTROUTE	/**/
2342/*#define	HAS_MSG_OOB	/**/
2343/*#define	HAS_MSG_PEEK	/**/
2344/*#define	HAS_MSG_PROXY	/**/
2345/*#define	HAS_SCM_RIGHTS	/**/
2346
2347/* HAS_SOCKS5_INIT:
2348 *	This symbol, if defined, indicates that the socks5_init routine is
2349 *	available to initialize SOCKS 5.
2350 */
2351/*#define HAS_SOCKS5_INIT		/**/
2352
2353/* HAS_SQRTL:
2354 *	This symbol, if defined, indicates that the sqrtl routine is
2355 *	available to do long double square roots.
2356 */
2357/*#define HAS_SQRTL		/**/
2358
2359/* HAS_SRAND48_R:
2360 *	This symbol, if defined, indicates that the srand48_r routine
2361 *	is available to srand48 re-entrantly.
2362 */
2363/* SRAND48_R_PROTO:
2364 *	This symbol encodes the prototype of srand48_r.
2365 *	It is zero if d_srand48_r is undef, and one of the
2366 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_srand48_r
2367 *	is defined.
2368 */
2369/*#define HAS_SRAND48_R	   /**/
2370#define SRAND48_R_PROTO 0	   /**/
2371
2372/* HAS_SRANDOM_R:
2373 *	This symbol, if defined, indicates that the srandom_r routine
2374 *	is available to srandom re-entrantly.
2375 */
2376/* SRANDOM_R_PROTO:
2377 *	This symbol encodes the prototype of srandom_r.
2378 *	It is zero if d_srandom_r is undef, and one of the
2379 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_srandom_r
2380 *	is defined.
2381 */
2382/*#define HAS_SRANDOM_R	   /**/
2383#define SRANDOM_R_PROTO 0	   /**/
2384
2385/* USE_STAT_BLOCKS:
2386 *	This symbol is defined if this system has a stat structure declaring
2387 *	st_blksize and st_blocks.
2388 */
2389#ifndef USE_STAT_BLOCKS
2390/*#define USE_STAT_BLOCKS 	/**/
2391#endif
2392
2393/* HAS_STRUCT_STATFS_F_FLAGS:
2394 *	This symbol, if defined, indicates that the struct statfs
2395 *	does have the f_flags member containing the mount flags of
2396 *	the filesystem containing the file.
2397 *	This kind of struct statfs is coming from <sys/mount.h> (BSD 4.3),
2398 *	not from <sys/statfs.h> (SYSV).  Older BSDs (like Ultrix) do not
2399 *	have statfs() and struct statfs, they have ustat() and getmnt()
2400 *	with struct ustat and struct fs_data.
2401 */
2402/*#define HAS_STRUCT_STATFS_F_FLAGS		/**/
2403
2404/* HAS_STRUCT_STATFS:
2405 *	This symbol, if defined, indicates that the struct statfs
2406 *	to do statfs() is supported.
2407 */
2408/*#define HAS_STRUCT_STATFS	/**/
2409
2410/* HAS_FSTATVFS:
2411 *	This symbol, if defined, indicates that the fstatvfs routine is
2412 *	available to stat filesystems by file descriptors.
2413 */
2414/*#define HAS_FSTATVFS		/**/
2415
2416/* USE_STDIO_PTR:
2417 *	This symbol is defined if the _ptr and _cnt fields (or similar)
2418 *	of the stdio FILE structure can be used to access the stdio buffer
2419 *	for a file handle.  If this is defined, then the FILE_ptr(fp)
2420 *	and FILE_cnt(fp) macros will also be defined and should be used
2421 *	to access these fields.
2422 */
2423/* FILE_ptr:
2424 *	This macro is used to access the _ptr field (or equivalent) of the
2425 *	FILE structure pointed to by its argument. This macro will always be
2426 *	defined if USE_STDIO_PTR is defined.
2427 */
2428/* STDIO_PTR_LVALUE:
2429 *	This symbol is defined if the FILE_ptr macro can be used as an
2430 *	lvalue.
2431 */
2432/* FILE_cnt:
2433 *	This macro is used to access the _cnt field (or equivalent) of the
2434 *	FILE structure pointed to by its argument. This macro will always be
2435 *	defined if USE_STDIO_PTR is defined.
2436 */
2437/* STDIO_CNT_LVALUE:
2438 *	This symbol is defined if the FILE_cnt macro can be used as an
2439 *	lvalue.
2440 */
2441/* STDIO_PTR_LVAL_SETS_CNT:
2442 *	This symbol is defined if using the FILE_ptr macro as an lvalue
2443 *	to increase the pointer by n has the side effect of decreasing the
2444 *	value of File_cnt(fp) by n.
2445 */
2446/* STDIO_PTR_LVAL_NOCHANGE_CNT:
2447 *	This symbol is defined if using the FILE_ptr macro as an lvalue
2448 *	to increase the pointer by n leaves File_cnt(fp) unchanged.
2449 */
2450#define USE_STDIO_PTR 	/**/
2451#ifdef USE_STDIO_PTR
2452#define FILE_ptr(fp)	((fp)->curp)
2453#define STDIO_PTR_LVALUE 		/**/
2454#define FILE_cnt(fp)	((fp)->level)
2455#define STDIO_CNT_LVALUE 		/**/
2456/*#define STDIO_PTR_LVAL_SETS_CNT	/**/
2457#define STDIO_PTR_LVAL_NOCHANGE_CNT	/**/
2458#endif
2459
2460/* USE_STDIO_BASE:
2461 *	This symbol is defined if the _base field (or similar) of the
2462 *	stdio FILE structure can be used to access the stdio buffer for
2463 *	a file handle.  If this is defined, then the FILE_base(fp) macro
2464 *	will also be defined and should be used to access this field.
2465 *	Also, the FILE_bufsiz(fp) macro will be defined and should be used
2466 *	to determine the number of bytes in the buffer.  USE_STDIO_BASE
2467 *	will never be defined unless USE_STDIO_PTR is.
2468 */
2469/* FILE_base:
2470 *	This macro is used to access the _base field (or equivalent) of the
2471 *	FILE structure pointed to by its argument. This macro will always be
2472 *	defined if USE_STDIO_BASE is defined.
2473 */
2474/* FILE_bufsiz:
2475 *	This macro is used to determine the number of bytes in the I/O
2476 *	buffer pointed to by _base field (or equivalent) of the FILE
2477 *	structure pointed to its argument. This macro will always be defined
2478 *	if USE_STDIO_BASE is defined.
2479 */
2480#define USE_STDIO_BASE 	/**/
2481#ifdef USE_STDIO_BASE
2482#define FILE_base(fp)	((fp)->buffer)
2483#define FILE_bufsiz(fp)	((fp)->level + (fp)->curp - (fp)->buffer)
2484#endif
2485
2486/* HAS_STRERROR:
2487 *	This symbol, if defined, indicates that the strerror routine is
2488 *	available to translate error numbers to strings. See the writeup
2489 *	of Strerror() in this file before you try to define your own.
2490 */
2491/* HAS_SYS_ERRLIST:
2492 *	This symbol, if defined, indicates that the sys_errlist array is
2493 *	available to translate error numbers to strings. The extern int
2494 *	sys_nerr gives the size of that table.
2495 */
2496/* Strerror:
2497 *	This preprocessor symbol is defined as a macro if strerror() is
2498 *	not available to translate error numbers to strings but sys_errlist[]
2499 *	array is there.
2500 */
2501#define HAS_STRERROR		/**/
2502#define HAS_SYS_ERRLIST	/**/
2503#define Strerror(e) strerror(e)
2504
2505/* HAS_STRERROR_R:
2506 *	This symbol, if defined, indicates that the strerror_r routine
2507 *	is available to strerror re-entrantly.
2508 */
2509/* STRERROR_R_PROTO:
2510 *	This symbol encodes the prototype of strerror_r.
2511 *	It is zero if d_strerror_r is undef, and one of the
2512 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_strerror_r
2513 *	is defined.
2514 */
2515/*#define HAS_STRERROR_R	   /**/
2516#define STRERROR_R_PROTO 0	   /**/
2517
2518/* HAS_STRTOLD:
2519 *	This symbol, if defined, indicates that the strtold routine is
2520 *	available to convert strings to long doubles.
2521 */
2522/*#define HAS_STRTOLD		/**/
2523
2524/* HAS_STRTOLL:
2525 *	This symbol, if defined, indicates that the strtoll routine is
2526 *	available to convert strings to long longs.
2527 */
2528/*#define HAS_STRTOLL		/**/
2529
2530/* HAS_STRTOQ:
2531 *	This symbol, if defined, indicates that the strtoq routine is
2532 *	available to convert strings to long longs (quads).
2533 */
2534/*#define HAS_STRTOQ		/**/
2535
2536/* HAS_STRTOUL:
2537 *	This symbol, if defined, indicates that the strtoul routine is
2538 *	available to provide conversion of strings to unsigned long.
2539 */
2540#define HAS_STRTOUL	/**/
2541
2542/* HAS_STRTOULL:
2543 *	This symbol, if defined, indicates that the strtoull routine is
2544 *	available to convert strings to unsigned long longs.
2545 */
2546/*#define HAS_STRTOULL		/**/
2547
2548/* HAS_STRTOUQ:
2549 *	This symbol, if defined, indicates that the strtouq routine is
2550 *	available to convert strings to unsigned long longs (quads).
2551 */
2552/*#define HAS_STRTOUQ		/**/
2553
2554/* HAS_TELLDIR_PROTO:
2555 *	This symbol, if defined, indicates that the system provides
2556 *	a prototype for the telldir() function.  Otherwise, it is up
2557 *	to the program to supply one.  A good guess is
2558 *		extern long telldir(DIR*);
2559 */
2560#define	HAS_TELLDIR_PROTO	/**/
2561
2562/* HAS_TIME:
2563 *	This symbol, if defined, indicates that the time() routine exists.
2564 */
2565/* Time_t:
2566 *	This symbol holds the type returned by time(). It can be long,
2567 *	or time_t on BSD sites (in which case <sys/types.h> should be
2568 *	included).
2569 */
2570#define HAS_TIME		/**/
2571#define Time_t time_t		/* Time type */
2572
2573/* HAS_TIMES:
2574 *	This symbol, if defined, indicates that the times() routine exists.
2575 *	Note that this became obsolete on some systems (SUNOS), which now
2576 * use getrusage(). It may be necessary to include <sys/times.h>.
2577 */
2578#define HAS_TIMES		/**/
2579
2580/* HAS_TMPNAM_R:
2581 *	This symbol, if defined, indicates that the tmpnam_r routine
2582 *	is available to tmpnam re-entrantly.
2583 */
2584/* TMPNAM_R_PROTO:
2585 *	This symbol encodes the prototype of tmpnam_r.
2586 *	It is zero if d_tmpnam_r is undef, and one of the
2587 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_tmpnam_r
2588 *	is defined.
2589 */
2590/*#define HAS_TMPNAM_R	   /**/
2591#define TMPNAM_R_PROTO 0	   /**/
2592
2593/* HAS_UALARM:
2594 *	This symbol, if defined, indicates that the ualarm routine is
2595 *	available to do alarms with microsecond granularity.
2596 */
2597/*#define HAS_UALARM		/**/
2598
2599/* HAS_UNION_SEMUN:
2600 *	This symbol, if defined, indicates that the union semun is
2601 *	defined by including <sys/sem.h>.  If not, the user code
2602 *	probably needs to define it as:
2603 *	union semun {
2604 *	    int val;
2605 *	    struct semid_ds *buf;
2606 *	    unsigned short *array;
2607 *	}
2608 */
2609/* USE_SEMCTL_SEMUN:
2610 *	This symbol, if defined, indicates that union semun is
2611 *	used for semctl IPC_STAT.
2612 */
2613/* USE_SEMCTL_SEMID_DS:
2614 *	This symbol, if defined, indicates that struct semid_ds * is
2615 *	used for semctl IPC_STAT.
2616 */
2617#define HAS_UNION_SEMUN	/**/
2618/*#define USE_SEMCTL_SEMUN	/**/
2619/*#define USE_SEMCTL_SEMID_DS	/**/
2620
2621/* HAS_UNORDERED:
2622 *	This symbol, if defined, indicates that the unordered routine is
2623 *	available to check whether two doubles are unordered
2624 *	(effectively: whether either of them is NaN)
2625 */
2626/*#define HAS_UNORDERED		/**/
2627
2628/* HAS_UNSETENV:
2629 *	This symbol, if defined, indicates that the unsetenv () routine is
2630 *	available for use.
2631 */
2632/*#define HAS_UNSETENV		/**/
2633
2634/* HAS_USTAT:
2635 *	This symbol, if defined, indicates that the ustat system call is
2636 *	available to query file system statistics by dev_t.
2637 */
2638/*#define HAS_USTAT		/**/
2639
2640/* HAS_VFORK:
2641 *	This symbol, if defined, indicates that vfork() exists.
2642 */
2643/*#define HAS_VFORK	/**/
2644
2645/* Signal_t:
2646 *	This symbol's value is either "void" or "int", corresponding to the
2647 *	appropriate return type of a signal handler.  Thus, you can declare
2648 *	a signal handler using "Signal_t (*handler)()", and define the
2649 *	handler using "Signal_t handler(sig)".
2650 */
2651#define Signal_t void	/* Signal handler's return type */
2652
2653/* HAS_VPRINTF:
2654 *	This symbol, if defined, indicates that the vprintf routine is available
2655 *	to printf with a pointer to an argument list.  If unavailable, you
2656 *	may need to write your own, probably in terms of _doprnt().
2657 */
2658/* USE_CHAR_VSPRINTF:
2659 *	This symbol is defined if this system has vsprintf() returning type
2660 *	(char*).  The trend seems to be to declare it as "int vsprintf()".  It
2661 *	is up to the package author to declare vsprintf correctly based on the
2662 *	symbol.
2663 */
2664#define HAS_VPRINTF	/**/
2665/*#define USE_CHAR_VSPRINTF 	/**/
2666
2667/* HAS_WRITEV:
2668 *	This symbol, if defined, indicates that the writev routine is
2669 *	available to do scatter writes.
2670 */
2671/*#define HAS_WRITEV		/**/
2672
2673/* USE_DYNAMIC_LOADING:
2674 *	This symbol, if defined, indicates that dynamic loading of
2675 *	some sort is available.
2676 */
2677#define USE_DYNAMIC_LOADING		/**/
2678
2679/* DOUBLESIZE:
2680 *	This symbol contains the size of a double, so that the C preprocessor
2681 *	can make decisions based on it.
2682 */
2683#define DOUBLESIZE 8		/**/
2684
2685/* EBCDIC:
2686 *     This symbol, if defined, indicates that this system uses
2687 *	EBCDIC encoding.
2688 */
2689/*#define	EBCDIC 		/**/
2690
2691/* FFLUSH_NULL:
2692 *	This symbol, if defined, tells that fflush(NULL) does flush
2693 *	all pending stdio output.
2694 */
2695/* FFLUSH_ALL:
2696 *	This symbol, if defined, tells that to flush
2697 *	all pending stdio output one must loop through all
2698 *	the stdio file handles stored in an array and fflush them.
2699 *	Note that if fflushNULL is defined, fflushall will not
2700 *	even be probed for and will be left undefined.
2701 */
2702#define	FFLUSH_NULL 		/**/
2703/*#define	FFLUSH_ALL 		/**/
2704
2705/* Fpos_t:
2706 *	This symbol holds the type used to declare file positions in libc.
2707 *	It can be fpos_t, long, uint, etc... It may be necessary to include
2708 *	<sys/types.h> to get any typedef'ed information.
2709 */
2710#define Fpos_t fpos_t		/* File position type */
2711
2712/* Gid_t_f:
2713 *	This symbol defines the format string used for printing a Gid_t.
2714 */
2715#define	Gid_t_f		"d"		/**/
2716
2717/* Gid_t_sign:
2718 *	This symbol holds the signedess of a Gid_t.
2719 *	1 for unsigned, -1 for signed.
2720 */
2721#define Gid_t_sign	-1		/* GID sign */
2722
2723/* Gid_t_size:
2724 *	This symbol holds the size of a Gid_t in bytes.
2725 */
2726#define Gid_t_size 4		/* GID size */
2727
2728/* Gid_t:
2729 *	This symbol holds the return type of getgid() and the type of
2730 *	argument to setrgid() and related functions.  Typically,
2731 *	it is the type of group ids in the kernel. It can be int, ushort,
2732 *	gid_t, etc... It may be necessary to include <sys/types.h> to get
2733 *	any typedef'ed information.
2734 */
2735#define Gid_t gid_t		/* Type for getgid(), etc... */
2736
2737/* Groups_t:
2738 *	This symbol holds the type used for the second argument to
2739 *	getgroups() and setgroups().  Usually, this is the same as
2740 *	gidtype (gid_t) , but sometimes it isn't.
2741 *	It can be int, ushort, gid_t, etc...
2742 *	It may be necessary to include <sys/types.h> to get any
2743 *	typedef'ed information.  This is only required if you have
2744 *	getgroups() or setgroups()..
2745 */
2746#if defined(HAS_GETGROUPS) || defined(HAS_SETGROUPS)
2747#define Groups_t gid_t	/* Type for 2nd arg to [sg]etgroups() */
2748#endif
2749
2750/* DB_Prefix_t:
2751 *	This symbol contains the type of the prefix structure element
2752 *	in the <db.h> header file.  In older versions of DB, it was
2753 *	int, while in newer ones it is u_int32_t.
2754 */
2755/* DB_Hash_t:
2756 *	This symbol contains the type of the prefix structure element
2757 *	in the <db.h> header file.  In older versions of DB, it was
2758 *	int, while in newer ones it is size_t.
2759 */
2760/* DB_VERSION_MAJOR_CFG:
2761 *	This symbol, if defined, defines the major version number of
2762 *	Berkeley DB found in the <db.h> header when Perl was configured.
2763 */
2764/* DB_VERSION_MINOR_CFG:
2765 *	This symbol, if defined, defines the minor version number of
2766 *	Berkeley DB found in the <db.h> header when Perl was configured.
2767 *	For DB version 1 this is always 0.
2768 */
2769/* DB_VERSION_PATCH_CFG:
2770 *	This symbol, if defined, defines the patch version number of
2771 *	Berkeley DB found in the <db.h> header when Perl was configured.
2772 *	For DB version 1 this is always 0.
2773 */
2774#define DB_Hash_t	int		/**/
2775#define DB_Prefix_t	int  	/**/
2776#define DB_VERSION_MAJOR_CFG	0  	/**/
2777#define DB_VERSION_MINOR_CFG	0  	/**/
2778#define DB_VERSION_PATCH_CFG	0  	/**/
2779
2780/* I_FP_CLASS:
2781 *	This symbol, if defined, indicates that <fp_class.h> exists and
2782 *	should be included.
2783 */
2784/*#define	I_FP_CLASS		/**/
2785
2786/* I_GRP:
2787 *	This symbol, if defined, indicates to the C program that it should
2788 *	include <grp.h>.
2789 */
2790/* GRPASSWD:
2791 *	This symbol, if defined, indicates to the C program that struct group
2792 *	in <grp.h> contains gr_passwd.
2793 */
2794/*#define I_GRP		/**/
2795/*#define GRPASSWD	/**/
2796
2797/* I_IEEEFP:
2798 *	This symbol, if defined, indicates that <ieeefp.h> exists and
2799 *	should be included.
2800 */
2801/*#define	I_IEEEFP		/**/
2802
2803/* I_INTTYPES:
2804 *     This symbol, if defined, indicates to the C program that it should
2805 *     include <inttypes.h>.
2806 */
2807/*#define   I_INTTYPES                /**/
2808
2809/* I_LIBUTIL:
2810 *	This symbol, if defined, indicates that <libutil.h> exists and
2811 *	should be included.
2812 */
2813/*#define	I_LIBUTIL		/**/
2814
2815/* I_MACH_CTHREADS:
2816 *     This symbol, if defined, indicates to the C program that it should
2817 *     include <mach/cthreads.h>.
2818 */
2819/*#define   I_MACH_CTHREADS	/**/
2820
2821/* I_MNTENT:
2822 *	This symbol, if defined, indicates that <mntent.h> exists and
2823 *	should be included.
2824 */
2825/*#define	I_MNTENT		/**/
2826
2827/* I_NETDB:
2828 *	This symbol, if defined, indicates that <netdb.h> exists and
2829 *	should be included.
2830 */
2831/*#define I_NETDB		/**/
2832
2833/* I_NETINET_TCP:
2834 *     This symbol, if defined, indicates to the C program that it should
2835 *     include <netinet/tcp.h>.
2836 */
2837/*#define   I_NETINET_TCP                /**/
2838
2839/* I_POLL:
2840 *	This symbol, if defined, indicates that <poll.h> exists and
2841 *	should be included.
2842 */
2843/*#define	I_POLL		/**/
2844
2845/* I_PROT:
2846 *	This symbol, if defined, indicates that <prot.h> exists and
2847 *	should be included.
2848 */
2849/*#define	I_PROT		/**/
2850
2851/* I_PTHREAD:
2852 *     This symbol, if defined, indicates to the C program that it should
2853 *     include <pthread.h>.
2854 */
2855/*#define   I_PTHREAD	/**/
2856
2857/* I_PWD:
2858 *	This symbol, if defined, indicates to the C program that it should
2859 *	include <pwd.h>.
2860 */
2861/* PWQUOTA:
2862 *	This symbol, if defined, indicates to the C program that struct passwd
2863 *	contains pw_quota.
2864 */
2865/* PWAGE:
2866 *	This symbol, if defined, indicates to the C program that struct passwd
2867 *	contains pw_age.
2868 */
2869/* PWCHANGE:
2870 *	This symbol, if defined, indicates to the C program that struct passwd
2871 *	contains pw_change.
2872 */
2873/* PWCLASS:
2874 *	This symbol, if defined, indicates to the C program that struct passwd
2875 *	contains pw_class.
2876 */
2877/* PWEXPIRE:
2878 *	This symbol, if defined, indicates to the C program that struct passwd
2879 *	contains pw_expire.
2880 */
2881/* PWCOMMENT:
2882 *	This symbol, if defined, indicates to the C program that struct passwd
2883 *	contains pw_comment.
2884 */
2885/* PWGECOS:
2886 *	This symbol, if defined, indicates to the C program that struct passwd
2887 *	contains pw_gecos.
2888 */
2889/* PWPASSWD:
2890 *	This symbol, if defined, indicates to the C program that struct passwd
2891 *	contains pw_passwd.
2892 */
2893/*#define I_PWD		/**/
2894/*#define PWQUOTA	/**/
2895/*#define PWAGE	/**/
2896/*#define PWCHANGE	/**/
2897/*#define PWCLASS	/**/
2898/*#define PWEXPIRE	/**/
2899/*#define PWCOMMENT	/**/
2900/*#define PWGECOS	/**/
2901/*#define PWPASSWD	/**/
2902
2903/* I_SHADOW:
2904 *	This symbol, if defined, indicates that <shadow.h> exists and
2905 *	should be included.
2906 */
2907/*#define	I_SHADOW		/**/
2908
2909/* I_SOCKS:
2910 *	This symbol, if defined, indicates that <socks.h> exists and
2911 *	should be included.
2912 */
2913/*#define	I_SOCKS		/**/
2914
2915/* I_SUNMATH:
2916 *	This symbol, if defined, indicates that <sunmath.h> exists and
2917 *	should be included.
2918 */
2919/*#define	I_SUNMATH		/**/
2920
2921/* I_SYSLOG:
2922 *	This symbol, if defined, indicates that <syslog.h> exists and
2923 *	should be included.
2924 */
2925/*#define	I_SYSLOG		/**/
2926
2927/* I_SYSMODE:
2928 *	This symbol, if defined, indicates that <sys/mode.h> exists and
2929 *	should be included.
2930 */
2931/*#define	I_SYSMODE		/**/
2932
2933/* I_SYS_MOUNT:
2934 *	This symbol, if defined, indicates that <sys/mount.h> exists and
2935 *	should be included.
2936 */
2937/*#define	I_SYS_MOUNT		/**/
2938
2939/* I_SYS_STATFS:
2940 *	This symbol, if defined, indicates that <sys/statfs.h> exists.
2941 */
2942/*#define	I_SYS_STATFS		/**/
2943
2944/* I_SYS_STATVFS:
2945 *	This symbol, if defined, indicates that <sys/statvfs.h> exists and
2946 *	should be included.
2947 */
2948/*#define	I_SYS_STATVFS		/**/
2949
2950/* I_SYSUIO:
2951 *	This symbol, if defined, indicates that <sys/uio.h> exists and
2952 *	should be included.
2953 */
2954/*#define	I_SYSUIO		/**/
2955
2956/* I_SYSUTSNAME:
2957 *	This symbol, if defined, indicates that <sys/utsname.h> exists and
2958 *	should be included.
2959 */
2960/*#define	I_SYSUTSNAME		/**/
2961
2962/* I_SYS_VFS:
2963 *	This symbol, if defined, indicates that <sys/vfs.h> exists and
2964 *	should be included.
2965 */
2966/*#define	I_SYS_VFS		/**/
2967
2968/* I_TIME:
2969 *	This symbol, if defined, indicates to the C program that it should
2970 *	include <time.h>.
2971 */
2972/* I_SYS_TIME:
2973 *	This symbol, if defined, indicates to the C program that it should
2974 *	include <sys/time.h>.
2975 */
2976/* I_SYS_TIME_KERNEL:
2977 *	This symbol, if defined, indicates to the C program that it should
2978 *	include <sys/time.h> with KERNEL defined.
2979 */
2980/* HAS_TM_TM_ZONE:
2981 *	This symbol, if defined, indicates to the C program that
2982 *	the struct tm has a tm_zone field.
2983 */
2984/* HAS_TM_TM_GMTOFF:
2985 *	This symbol, if defined, indicates to the C program that
2986 *	the struct tm has a tm_gmtoff field.
2987 */
2988#define I_TIME		/**/
2989/*#define I_SYS_TIME		/**/
2990/*#define I_SYS_TIME_KERNEL		/**/
2991/*#define HAS_TM_TM_ZONE		/**/
2992/*#define HAS_TM_TM_GMTOFF		/**/
2993
2994/* I_USTAT:
2995 *	This symbol, if defined, indicates that <ustat.h> exists and
2996 *	should be included.
2997 */
2998/*#define	I_USTAT		/**/
2999
3000/* PERL_INC_VERSION_LIST:
3001 *	This variable specifies the list of subdirectories in over
3002 *	which perl.c:incpush() and lib/lib.pm will automatically
3003 *	search when adding directories to @INC, in a format suitable
3004 *	for a C initialization string.  See the inc_version_list entry
3005 *	in Porting/Glossary for more details.
3006 */
3007#define PERL_INC_VERSION_LIST 0		/**/
3008
3009/* INSTALL_USR_BIN_PERL:
3010 *	This symbol, if defined, indicates that Perl is to be installed
3011 * 	also as /usr/bin/perl.
3012 */
3013/*#define INSTALL_USR_BIN_PERL	/**/
3014
3015/* PERL_PRIfldbl:
3016 *	This symbol, if defined, contains the string used by stdio to
3017 *	format long doubles (format 'f') for output.
3018 */
3019/* PERL_PRIgldbl:
3020 *	This symbol, if defined, contains the string used by stdio to
3021 *	format long doubles (format 'g') for output.
3022 */
3023/* PERL_PRIeldbl:
3024 *	This symbol, if defined, contains the string used by stdio to
3025 *	format long doubles (format 'e') for output.
3026 */
3027/* PERL_SCNfldbl:
3028 *	This symbol, if defined, contains the string used by stdio to
3029 *	format long doubles (format 'f') for input.
3030 */
3031/*#define PERL_PRIfldbl	"Lf"	/**/
3032/*#define PERL_PRIgldbl	"Lg"	/**/
3033/*#define PERL_PRIeldbl	"Le"	/**/
3034/*#define PERL_SCNfldbl	"Lf"	/**/
3035
3036/* Off_t:
3037 *	This symbol holds the type used to declare offsets in the kernel.
3038 *	It can be int, long, off_t, etc... It may be necessary to include
3039 *	<sys/types.h> to get any typedef'ed information.
3040 */
3041/* LSEEKSIZE:
3042 *	This symbol holds the number of bytes used by the Off_t.
3043 */
3044/* Off_t_size:
3045 *	This symbol holds the number of bytes used by the Off_t.
3046 */
3047#define Off_t __int64		/* <offset> type */
3048#define LSEEKSIZE 8		/* <offset> size */
3049#define Off_t_size 8	/* <offset> size */
3050
3051/* Free_t:
3052 *	This variable contains the return type of free().  It is usually
3053 * void, but occasionally int.
3054 */
3055/* Malloc_t:
3056 *	This symbol is the type of pointer returned by malloc and realloc.
3057 */
3058#define Malloc_t void *			/**/
3059#define Free_t void			/**/
3060
3061/* PERL_MALLOC_WRAP:
3062 *	This symbol, if defined, indicates that we'd like malloc wrap checks.
3063 */
3064#define PERL_MALLOC_WRAP		/**/
3065
3066/* MYMALLOC:
3067 *	This symbol, if defined, indicates that we're using our own malloc.
3068 */
3069/*#define MYMALLOC			/**/
3070
3071/* Mode_t:
3072 *	This symbol holds the type used to declare file modes
3073 *	for systems calls.  It is usually mode_t, but may be
3074 *	int or unsigned short.  It may be necessary to include <sys/types.h>
3075 *	to get any typedef'ed information.
3076 */
3077#define Mode_t mode_t	 /* file mode parameter for system calls */
3078
3079/* VAL_O_NONBLOCK:
3080 *	This symbol is to be used during open() or fcntl(F_SETFL) to turn on
3081 *	non-blocking I/O for the file descriptor. Note that there is no way
3082 *	back, i.e. you cannot turn it blocking again this way. If you wish to
3083 *	alternatively switch between blocking and non-blocking, use the
3084 *	ioctl(FIOSNBIO) call instead, but that is not supported by all devices.
3085 */
3086/* VAL_EAGAIN:
3087 *	This symbol holds the errno error code set by read() when no data was
3088 *	present on the non-blocking file descriptor.
3089 */
3090/* RD_NODATA:
3091 *	This symbol holds the return code from read() when no data is present
3092 *	on the non-blocking file descriptor. Be careful! If EOF_NONBLOCK is
3093 *	not defined, then you can't distinguish between no data and EOF by
3094 *	issuing a read(). You'll have to find another way to tell for sure!
3095 */
3096/* EOF_NONBLOCK:
3097 *	This symbol, if defined, indicates to the C program that a read() on
3098 *	a non-blocking file descriptor will return 0 on EOF, and not the value
3099 *	held in RD_NODATA (-1 usually, in that case!).
3100 */
3101#define VAL_O_NONBLOCK O_NONBLOCK
3102#define VAL_EAGAIN EAGAIN
3103#define RD_NODATA -1
3104#define EOF_NONBLOCK
3105
3106/* NEED_VA_COPY:
3107 *	This symbol, if defined, indicates that the system stores
3108 *	the variable argument list datatype, va_list, in a format
3109 *	that cannot be copied by simple assignment, so that some
3110 *	other means must be used when copying is required.
3111 *	As such systems vary in their provision (or non-provision)
3112 *	of copying mechanisms, handy.h defines a platform-
3113 *	independent macro, Perl_va_copy(src, dst), to do the job.
3114 */
3115/*#define	NEED_VA_COPY		/**/
3116
3117/* Netdb_host_t:
3118 *	This symbol holds the type used for the 1st argument
3119 *	to gethostbyaddr().
3120 */
3121/* Netdb_hlen_t:
3122 *	This symbol holds the type used for the 2nd argument
3123 *	to gethostbyaddr().
3124 */
3125/* Netdb_name_t:
3126 *	This symbol holds the type used for the argument to
3127 *	gethostbyname().
3128 */
3129/* Netdb_net_t:
3130 *	This symbol holds the type used for the 1st argument to
3131 *	getnetbyaddr().
3132 */
3133#define Netdb_host_t		char * /**/
3134#define Netdb_hlen_t		int /**/
3135#define Netdb_name_t		char * /**/
3136#define Netdb_net_t		long /**/
3137
3138/* PERL_OTHERLIBDIRS:
3139 *	This variable contains a colon-separated set of paths for the perl
3140 *	binary to search for additional library files or modules.
3141 *	These directories will be tacked to the end of @INC.
3142 *	Perl will automatically search below each path for version-
3143 *	and architecture-specific directories.  See PERL_INC_VERSION_LIST
3144 *	for more details.
3145 */
3146/*#define PERL_OTHERLIBDIRS ""		/**/
3147
3148/* HAS_QUAD:
3149 *	This symbol, if defined, tells that there's a 64-bit integer type,
3150 *	Quad_t, and its unsigned counterpar, Uquad_t. QUADKIND will be one
3151 *	of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, or QUAD_IS_INT64_T.
3152 */
3153/*#define HAS_QUAD	/**/
3154#ifdef HAS_QUAD
3155#   define Quad_t __int64	/**/
3156#   define Uquad_t unsigned __int64	/**/
3157#   define QUADKIND 5	/**/
3158#   define QUAD_IS_INT	1
3159#   define QUAD_IS_LONG	2
3160#   define QUAD_IS_LONG_LONG	3
3161#   define QUAD_IS_INT64_T	4
3162#endif
3163
3164/* IVTYPE:
3165 *	This symbol defines the C type used for Perl's IV.
3166 */
3167/* UVTYPE:
3168 *	This symbol defines the C type used for Perl's UV.
3169 */
3170/* I8TYPE:
3171 *	This symbol defines the C type used for Perl's I8.
3172 */
3173/* U8TYPE:
3174 *	This symbol defines the C type used for Perl's U8.
3175 */
3176/* I16TYPE:
3177 *	This symbol defines the C type used for Perl's I16.
3178 */
3179/* U16TYPE:
3180 *	This symbol defines the C type used for Perl's U16.
3181 */
3182/* I32TYPE:
3183 *	This symbol defines the C type used for Perl's I32.
3184 */
3185/* U32TYPE:
3186 *	This symbol defines the C type used for Perl's U32.
3187 */
3188/* I64TYPE:
3189 *	This symbol defines the C type used for Perl's I64.
3190 */
3191/* U64TYPE:
3192 *	This symbol defines the C type used for Perl's U64.
3193 */
3194/* NVTYPE:
3195 *	This symbol defines the C type used for Perl's NV.
3196 */
3197/* IVSIZE:
3198 *	This symbol contains the sizeof(IV).
3199 */
3200/* UVSIZE:
3201 *	This symbol contains the sizeof(UV).
3202 */
3203/* I8SIZE:
3204 *	This symbol contains the sizeof(I8).
3205 */
3206/* U8SIZE:
3207 *	This symbol contains the sizeof(U8).
3208 */
3209/* I16SIZE:
3210 *	This symbol contains the sizeof(I16).
3211 */
3212/* U16SIZE:
3213 *	This symbol contains the sizeof(U16).
3214 */
3215/* I32SIZE:
3216 *	This symbol contains the sizeof(I32).
3217 */
3218/* U32SIZE:
3219 *	This symbol contains the sizeof(U32).
3220 */
3221/* I64SIZE:
3222 *	This symbol contains the sizeof(I64).
3223 */
3224/* U64SIZE:
3225 *	This symbol contains the sizeof(U64).
3226 */
3227/* NVSIZE:
3228 *	This symbol contains the sizeof(NV).
3229 */
3230/* NV_PRESERVES_UV:
3231 *	This symbol, if defined, indicates that a variable of type NVTYPE
3232 *	can preserve all the bits of a variable of type UVTYPE.
3233 */
3234/* NV_PRESERVES_UV_BITS:
3235 *	This symbol contains the number of bits a variable of type NVTYPE
3236 *	can preserve of a variable of type UVTYPE.
3237 */
3238/* NV_ZERO_IS_ALLBITS_ZERO
3239 *	This symbol, if defined, indicates that a variable of type NVTYPE
3240 *	stores 0.0 in memory as all bits zero.
3241 */
3242#define	IVTYPE		long		/**/
3243#define	UVTYPE		unsigned long		/**/
3244#define	I8TYPE		char		/**/
3245#define	U8TYPE		unsigned char		/**/
3246#define	I16TYPE		short	/**/
3247#define	U16TYPE		unsigned short	/**/
3248#define	I32TYPE		long	/**/
3249#define	U32TYPE		unsigned long	/**/
3250#ifdef HAS_QUAD
3251#define	I64TYPE		__int64	/**/
3252#define	U64TYPE		unsigned __int64	/**/
3253#endif
3254#define	NVTYPE		double		/**/
3255#define	IVSIZE		4		/**/
3256#define	UVSIZE		4		/**/
3257#define	I8SIZE		1		/**/
3258#define	U8SIZE		1		/**/
3259#define	I16SIZE		2	/**/
3260#define	U16SIZE		2	/**/
3261#define	I32SIZE		4	/**/
3262#define	U32SIZE		4	/**/
3263#ifdef HAS_QUAD
3264#define	I64SIZE		8	/**/
3265#define	U64SIZE		8	/**/
3266#endif
3267#define	NVSIZE		8		/**/
3268#define	NV_PRESERVES_UV
3269#define	NV_PRESERVES_UV_BITS	32
3270#define NV_ZERO_IS_ALLBITS_ZERO
3271#if 4 == 8
3272#   ifdef BYTEORDER
3273#       if BYTEORDER == 0x1234
3274#           undef BYTEORDER
3275#           define BYTEORDER 0x12345678
3276#       else
3277#           if BYTEORDER == 0x4321
3278#               undef BYTEORDER
3279#               define BYTEORDER 0x87654321
3280#           endif
3281#       endif
3282#   endif
3283#endif
3284
3285/* IVdf:
3286 *	This symbol defines the format string used for printing a Perl IV
3287 *	as a signed decimal integer.
3288 */
3289/* UVuf:
3290 *	This symbol defines the format string used for printing a Perl UV
3291 *	as an unsigned decimal integer.
3292 */
3293/* UVof:
3294 *	This symbol defines the format string used for printing a Perl UV
3295 *	as an unsigned octal integer.
3296 */
3297/* UVxf:
3298 *	This symbol defines the format string used for printing a Perl UV
3299 *	as an unsigned hexadecimal integer in lowercase abcdef.
3300 */
3301/* UVXf:
3302 *	This symbol defines the format string used for printing a Perl UV
3303 *	as an unsigned hexadecimal integer in uppercase ABCDEF.
3304 */
3305/* NVef:
3306 *	This symbol defines the format string used for printing a Perl NV
3307 *	using %e-ish floating point format.
3308 */
3309/* NVff:
3310 *	This symbol defines the format string used for printing a Perl NV
3311 *	using %f-ish floating point format.
3312 */
3313/* NVgf:
3314 *	This symbol defines the format string used for printing a Perl NV
3315 *	using %g-ish floating point format.
3316 */
3317#define	IVdf		"ld"		/**/
3318#define	UVuf		"lu"		/**/
3319#define	UVof		"lo"		/**/
3320#define	UVxf		"lx"		/**/
3321#define	UVXf		"lX"		/**/
3322#define	NVef		"e"		/**/
3323#define	NVff		"f"		/**/
3324#define	NVgf		"g"		/**/
3325
3326/* Pid_t:
3327 *	This symbol holds the type used to declare process ids in the kernel.
3328 *	It can be int, uint, pid_t, etc... It may be necessary to include
3329 *	<sys/types.h> to get any typedef'ed information.
3330 */
3331#define Pid_t int		/* PID type */
3332
3333/* PRIVLIB:
3334 *	This symbol contains the name of the private library for this package.
3335 *	The library is private in the sense that it needn't be in anyone's
3336 *	execution path, but it should be accessible by the world.  The program
3337 *	should be prepared to do ~ expansion.
3338 */
3339/* PRIVLIB_EXP:
3340 *	This symbol contains the ~name expanded version of PRIVLIB, to be used
3341 *	in programs that are not prepared to deal with ~ expansion at run-time.
3342 */
3343#define PRIVLIB "c:\\perl\\5.8.8\\lib"		/**/
3344#define PRIVLIB_EXP (win32_get_privlib("5.8.8"))	/**/
3345
3346/* PTRSIZE:
3347 *	This symbol contains the size of a pointer, so that the C preprocessor
3348 *	can make decisions based on it.  It will be sizeof(void *) if
3349 *	the compiler supports (void *); otherwise it will be
3350 *	sizeof(char *).
3351 */
3352#define PTRSIZE 4		/**/
3353
3354/* Drand01:
3355 *	This macro is to be used to generate uniformly distributed
3356 *	random numbers over the range [0., 1.[.  You may have to supply
3357 *	an 'extern double drand48();' in your program since SunOS 4.1.3
3358 *	doesn't provide you with anything relevant in its headers.
3359 *	See HAS_DRAND48_PROTO.
3360 */
3361/* Rand_seed_t:
3362 *	This symbol defines the type of the argument of the
3363 *	random seed function.
3364 */
3365/* seedDrand01:
3366 *	This symbol defines the macro to be used in seeding the
3367 *	random number generator (see Drand01).
3368 */
3369/* RANDBITS:
3370 *	This symbol indicates how many bits are produced by the
3371 *	function used to generate normalized random numbers.
3372 *	Values include 15, 16, 31, and 48.
3373 */
3374#define Drand01()		(rand()/(double)((unsigned)1<<RANDBITS))		/**/
3375#define Rand_seed_t		unsigned		/**/
3376#define seedDrand01(x)	srand((Rand_seed_t)x)	/**/
3377#define RANDBITS		15		/**/
3378
3379/* SELECT_MIN_BITS:
3380 *	This symbol holds the minimum number of bits operated by select.
3381 *	That is, if you do select(n, ...), how many bits at least will be
3382 *	cleared in the masks if some activity is detected.  Usually this
3383 *	is either n or 32*ceil(n/32), especially many little-endians do
3384 *	the latter.  This is only useful if you have select(), naturally.
3385 */
3386#define SELECT_MIN_BITS 	32	/**/
3387
3388/* Select_fd_set_t:
3389 *	This symbol holds the type used for the 2nd, 3rd, and 4th
3390 *	arguments to select.  Usually, this is 'fd_set *', if HAS_FD_SET
3391 *	is defined, and 'int *' otherwise.  This is only useful if you
3392 *	have select(), of course.
3393 */
3394#define Select_fd_set_t 	Perl_fd_set *	/**/
3395
3396/* SIG_NAME:
3397 *	This symbol contains a list of signal names in order of
3398 *	signal number. This is intended
3399 *	to be used as a static array initialization, like this:
3400 *		char *sig_name[] = { SIG_NAME };
3401 *	The signals in the list are separated with commas, and each signal
3402 *	is surrounded by double quotes. There is no leading SIG in the signal
3403 *	name, i.e. SIGQUIT is known as "QUIT".
3404 *	Gaps in the signal numbers (up to NSIG) are filled in with NUMnn,
3405 *	etc., where nn is the actual signal number (e.g. NUM37).
3406 *	The signal number for sig_name[i] is stored in sig_num[i].
3407 *	The last element is 0 to terminate the list with a NULL.  This
3408 *	corresponds to the 0 at the end of the sig_name_init list.
3409 *	Note that this variable is initialized from the sig_name_init,
3410 *	not from sig_name (which is unused).
3411 */
3412/* SIG_NUM:
3413 *	This symbol contains a list of signal numbers, in the same order as the
3414 *	SIG_NAME list. It is suitable for static array initialization, as in:
3415 *		int sig_num[] = { SIG_NUM };
3416 *	The signals in the list are separated with commas, and the indices
3417 *	within that list and the SIG_NAME list match, so it's easy to compute
3418 *	the signal name from a number or vice versa at the price of a small
3419 *	dynamic linear lookup.
3420 *	Duplicates are allowed, but are moved to the end of the list.
3421 *	The signal number corresponding to sig_name[i] is sig_number[i].
3422 *	if (i < NSIG) then sig_number[i] == i.
3423 *	The last element is 0, corresponding to the 0 at the end of
3424 *	the sig_name_init list.
3425 *	Note that this variable is initialized from the sig_num_init,
3426 *	not from sig_num (which is unused).
3427 */
3428/* SIG_SIZE:
3429 *	This variable contains the number of elements of the SIG_NAME
3430 *	and SIG_NUM arrays, excluding the final NULL entry.
3431 */
3432#define SIG_NAME "ZERO", "HUP", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "USR1", "USR2", "CHLD", "NUM19", "USR3", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0		/**/
3433#define SIG_NUM  0, 1, 2, 21, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 18, 0		/**/
3434#define SIG_SIZE 27			/**/
3435
3436/* SITEARCH:
3437 *	This symbol contains the name of the private library for this package.
3438 *	The library is private in the sense that it needn't be in anyone's
3439 *	execution path, but it should be accessible by the world.  The program
3440 *	should be prepared to do ~ expansion.
3441 *	The standard distribution will put nothing in this directory.
3442 *	After perl has been installed, users may install their own local
3443 *	architecture-dependent modules in this directory with
3444 *		MakeMaker Makefile.PL
3445 *	or equivalent.  See INSTALL for details.
3446 */
3447/* SITEARCH_EXP:
3448 *	This symbol contains the ~name expanded version of SITEARCH, to be used
3449 *	in programs that are not prepared to deal with ~ expansion at run-time.
3450 */
3451#define SITEARCH "c:\\perl\\site\\5.8.8\\lib\\MSWin32-x86"		/**/
3452/*#define SITEARCH_EXP ""	/**/
3453
3454/* SITELIB:
3455 *	This symbol contains the name of the private library for this package.
3456 *	The library is private in the sense that it needn't be in anyone's
3457 *	execution path, but it should be accessible by the world.  The program
3458 *	should be prepared to do ~ expansion.
3459 *	The standard distribution will put nothing in this directory.
3460 *	After perl has been installed, users may install their own local
3461 *	architecture-independent modules in this directory with
3462 *		MakeMaker Makefile.PL
3463 *	or equivalent.  See INSTALL for details.
3464 */
3465/* SITELIB_EXP:
3466 *	This symbol contains the ~name expanded version of SITELIB, to be used
3467 *	in programs that are not prepared to deal with ~ expansion at run-time.
3468 */
3469/* SITELIB_STEM:
3470 *	This define is SITELIB_EXP with any trailing version-specific component
3471 *	removed.  The elements in inc_version_list (inc_version_list.U) can
3472 *	be tacked onto this variable to generate a list of directories to search.
3473 */
3474#define SITELIB "c:\\perl\\site\\5.8.8\\lib"		/**/
3475#define SITELIB_EXP (win32_get_sitelib("5.8.8"))	/**/
3476#define SITELIB_STEM ""		/**/
3477
3478/* Size_t_size:
3479 *	This symbol holds the size of a Size_t in bytes.
3480 */
3481#define Size_t_size 4		/**/
3482
3483/* Size_t:
3484 *	This symbol holds the type used to declare length parameters
3485 *	for string functions.  It is usually size_t, but may be
3486 *	unsigned long, int, etc.  It may be necessary to include
3487 *	<sys/types.h> to get any typedef'ed information.
3488 */
3489#define Size_t size_t	 /* length paramater for string functions */
3490
3491/* Sock_size_t:
3492 *	This symbol holds the type used for the size argument of
3493 *	various socket calls (just the base type, not the pointer-to).
3494 */
3495#define Sock_size_t		int /**/
3496
3497/* SSize_t:
3498 *	This symbol holds the type used by functions that return
3499 *	a count of bytes or an error condition.  It must be a signed type.
3500 *	It is usually ssize_t, but may be long or int, etc.
3501 *	It may be necessary to include <sys/types.h> or <unistd.h>
3502 *	to get any typedef'ed information.
3503 *	We will pick a type such that sizeof(SSize_t) == sizeof(Size_t).
3504 */
3505#define SSize_t int	 /* signed count of bytes */
3506
3507/* STARTPERL:
3508 *	This variable contains the string to put in front of a perl
3509 *	script to make sure (one hopes) that it runs with perl and not
3510 *	some shell.
3511 */
3512#define STARTPERL "#!perl"		/**/
3513
3514/* STDCHAR:
3515 *	This symbol is defined to be the type of char used in stdio.h.
3516 *	It has the values "unsigned char" or "char".
3517 */
3518#define STDCHAR unsigned char	/**/
3519
3520/* HAS_STDIO_STREAM_ARRAY:
3521 *	This symbol, if defined, tells that there is an array
3522 *	holding the stdio streams.
3523 */
3524/* STDIO_STREAM_ARRAY:
3525 *	This symbol tells the name of the array holding the stdio streams.
3526 *	Usual values include _iob, __iob, and __sF.
3527 */
3528/*#define	HAS_STDIO_STREAM_ARRAY	/**/
3529#define STDIO_STREAM_ARRAY
3530
3531/* Uid_t_f:
3532 *	This symbol defines the format string used for printing a Uid_t.
3533 */
3534#define	Uid_t_f		"d"		/**/
3535
3536/* Uid_t_sign:
3537 *	This symbol holds the signedess of a Uid_t.
3538 *	1 for unsigned, -1 for signed.
3539 */
3540#define Uid_t_sign	-1		/* UID sign */
3541
3542/* Uid_t_size:
3543 *	This symbol holds the size of a Uid_t in bytes.
3544 */
3545#define Uid_t_size 4		/* UID size */
3546
3547/* Uid_t:
3548 *	This symbol holds the type used to declare user ids in the kernel.
3549 *	It can be int, ushort, uid_t, etc... It may be necessary to include
3550 *	<sys/types.h> to get any typedef'ed information.
3551 */
3552#define Uid_t uid_t		/* UID type */
3553
3554/* USE_64_BIT_INT:
3555 *	This symbol, if defined, indicates that 64-bit integers should
3556 *	be used when available.  If not defined, the native integers
3557 *	will be employed (be they 32 or 64 bits).  The minimal possible
3558 *	64-bitness is used, just enough to get 64-bit integers into Perl.
3559 *	This may mean using for example "long longs", while your memory
3560 *	may still be limited to 2 gigabytes.
3561 */
3562/* USE_64_BIT_ALL:
3563 *	This symbol, if defined, indicates that 64-bit integers should
3564 *	be used when available.  If not defined, the native integers
3565 *	will be used (be they 32 or 64 bits).  The maximal possible
3566 *	64-bitness is employed: LP64 or ILP64, meaning that you will
3567 *	be able to use more than 2 gigabytes of memory.  This mode is
3568 *	even more binary incompatible than USE_64_BIT_INT. You may not
3569 *	be able to run the resulting executable in a 32-bit CPU at all or
3570 *	you may need at least to reboot your OS to 64-bit mode.
3571 */
3572#ifndef USE_64_BIT_INT
3573/*#define	USE_64_BIT_INT		/**/
3574#endif
3575
3576#ifndef USE_64_BIT_ALL
3577/*#define	USE_64_BIT_ALL		/**/
3578#endif
3579
3580/* USE_LARGE_FILES:
3581 *	This symbol, if defined, indicates that large file support
3582 *	should be used when available.
3583 */
3584#ifndef USE_LARGE_FILES
3585/*#define	USE_LARGE_FILES		/**/
3586#endif
3587
3588/* USE_LONG_DOUBLE:
3589 *	This symbol, if defined, indicates that long doubles should
3590 *	be used when available.
3591 */
3592#ifndef USE_LONG_DOUBLE
3593/*#define	USE_LONG_DOUBLE		/**/
3594#endif
3595
3596/* USE_MORE_BITS:
3597 *	This symbol, if defined, indicates that 64-bit interfaces and
3598 *	long doubles should be used when available.
3599 */
3600#ifndef USE_MORE_BITS
3601/*#define	USE_MORE_BITS		/**/
3602#endif
3603
3604/* MULTIPLICITY:
3605 *	This symbol, if defined, indicates that Perl should
3606 *	be built to use multiplicity.
3607 */
3608#ifndef MULTIPLICITY
3609/*#define	MULTIPLICITY		/**/
3610#endif
3611
3612/* USE_PERLIO:
3613 *	This symbol, if defined, indicates that the PerlIO abstraction should
3614 *	be used throughout.  If not defined, stdio should be
3615 *	used in a fully backward compatible manner.
3616 */
3617#ifndef USE_PERLIO
3618/*#define	USE_PERLIO		/**/
3619#endif
3620
3621/* USE_SOCKS:
3622 *	This symbol, if defined, indicates that Perl should
3623 *	be built to use socks.
3624 */
3625#ifndef USE_SOCKS
3626/*#define	USE_SOCKS		/**/
3627#endif
3628
3629/* USE_ITHREADS:
3630 *	This symbol, if defined, indicates that Perl should be built to
3631 *	use the interpreter-based threading implementation.
3632 */
3633/* USE_5005THREADS:
3634 *	This symbol, if defined, indicates that Perl should be built to
3635 *	use the 5.005-based threading implementation.
3636 */
3637/* OLD_PTHREADS_API:
3638 *	This symbol, if defined, indicates that Perl should
3639 *	be built to use the old draft POSIX threads API.
3640 */
3641/* USE_REENTRANT_API:
3642 *	This symbol, if defined, indicates that Perl should
3643 *	try to use the various _r versions of library functions.
3644 *	This is extremely experimental.
3645 */
3646/*#define	USE_5005THREADS		/**/
3647/*#define	USE_ITHREADS		/**/
3648#if defined(USE_5005THREADS) && !defined(USE_ITHREADS)
3649#define		USE_THREADS		/* until src is revised*/
3650#endif
3651/*#define	OLD_PTHREADS_API		/**/
3652/*#define	USE_REENTRANT_API	/**/
3653
3654/* PERL_VENDORARCH:
3655 *	If defined, this symbol contains the name of a private library.
3656 *	The library is private in the sense that it needn't be in anyone's
3657 *	execution path, but it should be accessible by the world.
3658 *	It may have a ~ on the front.
3659 *	The standard distribution will put nothing in this directory.
3660 *	Vendors who distribute perl may wish to place their own
3661 *	architecture-dependent modules and extensions in this directory with
3662 *		MakeMaker Makefile.PL INSTALLDIRS=vendor
3663 *	or equivalent.  See INSTALL for details.
3664 */
3665/* PERL_VENDORARCH_EXP:
3666 *	This symbol contains the ~name expanded version of PERL_VENDORARCH, to be used
3667 *	in programs that are not prepared to deal with ~ expansion at run-time.
3668 */
3669/*#define PERL_VENDORARCH ""		/**/
3670/*#define PERL_VENDORARCH_EXP ""		/**/
3671
3672/* PERL_VENDORLIB_EXP:
3673 *	This symbol contains the ~name expanded version of VENDORLIB, to be used
3674 *	in programs that are not prepared to deal with ~ expansion at run-time.
3675 */
3676/* PERL_VENDORLIB_STEM:
3677 *	This define is PERL_VENDORLIB_EXP with any trailing version-specific component
3678 *	removed.  The elements in inc_version_list (inc_version_list.U) can
3679 *	be tacked onto this variable to generate a list of directories to search.
3680 */
3681/*#define PERL_VENDORLIB_EXP ""		/**/
3682/*#define PERL_VENDORLIB_STEM ""		/**/
3683
3684/* VOIDFLAGS:
3685 *	This symbol indicates how much support of the void type is given by this
3686 *	compiler.  What various bits mean:
3687 *
3688 *	    1 = supports declaration of void
3689 *	    2 = supports arrays of pointers to functions returning void
3690 *	    4 = supports comparisons between pointers to void functions and
3691 *		    addresses of void functions
3692 *	    8 = suports declaration of generic void pointers
3693 *
3694 *	The package designer should define VOIDUSED to indicate the requirements
3695 *	of the package.  This can be done either by #defining VOIDUSED before
3696 *	including config.h, or by defining defvoidused in Myinit.U.  If the
3697 *	latter approach is taken, only those flags will be tested.  If the
3698 *	level of void support necessary is not present, defines void to int.
3699 */
3700#ifndef VOIDUSED
3701#define VOIDUSED 15
3702#endif
3703#define VOIDFLAGS 15
3704#if (VOIDFLAGS & VOIDUSED) != VOIDUSED
3705#define void int		/* is void to be avoided? */
3706#define M_VOID			/* Xenix strikes again */
3707#endif
3708
3709/* HASATTRIBUTE_FORMAT:
3710 *	Can we handle GCC attribute for checking printf-style formats
3711 */
3712/* HASATTRIBUTE_MALLOC:
3713 *	Can we handle GCC attribute for malloc-style functions.
3714 */
3715/* HASATTRIBUTE_NONNULL:
3716 *	Can we handle GCC attribute for nonnull function parms.
3717 */
3718/* HASATTRIBUTE_NORETURN:
3719 *	Can we handle GCC attribute for functions that do not return
3720 */
3721/* HASATTRIBUTE_PURE:
3722 *	Can we handle GCC attribute for pure functions
3723 */
3724/* HASATTRIBUTE_UNUSED:
3725 *	Can we handle GCC attribute for unused variables and arguments
3726 */
3727/* HASATTRIBUTE_WARN_UNUSED_RESULT:
3728 *	Can we handle GCC attribute for warning on unused results
3729 */
3730/*#define HASATTRIBUTE_FORMAT	/**/
3731/*#define HASATTRIBUTE_MALLOC	/**/
3732/*#define HASATTRIBUTE_NONNULL	/**/
3733/*#define HASATTRIBUTE_NORETURN	/**/
3734/*#define HASATTRIBUTE_PURE	/**/
3735/*#define HASATTRIBUTE_UNUSED	/**/
3736/*#define HASATTRIBUTE_WARN_UNUSED_RESULT	/**/
3737
3738/* HAS_CRYPT:
3739 *	This symbol, if defined, indicates that the crypt routine is available
3740 *	to encrypt passwords and the like.
3741 */
3742/*#define HAS_CRYPT		/**/
3743
3744/* SETUID_SCRIPTS_ARE_SECURE_NOW:
3745 *	This symbol, if defined, indicates that the bug that prevents
3746 *	setuid scripts from being secure is not present in this kernel.
3747 */
3748/* DOSUID:
3749 *	This symbol, if defined, indicates that the C program should
3750 *	check the script that it is executing for setuid/setgid bits, and
3751 *	attempt to emulate setuid/setgid on systems that have disabled
3752 *	setuid #! scripts because the kernel can't do it securely.
3753 *	It is up to the package designer to make sure that this emulation
3754 *	is done securely.  Among other things, it should do an fstat on
3755 *	the script it just opened to make sure it really is a setuid/setgid
3756 *	script, it should make sure the arguments passed correspond exactly
3757 *	to the argument on the #! line, and it should not trust any
3758 *	subprocesses to which it must pass the filename rather than the
3759 *	file descriptor of the script to be executed.
3760 */
3761/*#define SETUID_SCRIPTS_ARE_SECURE_NOW	/**/
3762/*#define DOSUID		/**/
3763
3764/* Shmat_t:
3765 *	This symbol holds the return type of the shmat() system call.
3766 *	Usually set to 'void *' or 'char *'.
3767 */
3768/* HAS_SHMAT_PROTOTYPE:
3769 *	This symbol, if defined, indicates that the sys/shm.h includes
3770 *	a prototype for shmat().  Otherwise, it is up to the program to
3771 *	guess one.  Shmat_t shmat(int, Shmat_t, int) is a good guess,
3772 *	but not always right so it should be emitted by the program only
3773 *	when HAS_SHMAT_PROTOTYPE is not defined to avoid conflicting defs.
3774 */
3775#define Shmat_t void *	/**/
3776/*#define HAS_SHMAT_PROTOTYPE	/**/
3777
3778/* I_NDBM:
3779 *	This symbol, if defined, indicates that <ndbm.h> exists and should
3780 *	be included.
3781 */
3782/*#define I_NDBM	/**/
3783
3784/* I_STDARG:
3785 *	This symbol, if defined, indicates that <stdarg.h> exists and should
3786 *	be included.
3787 */
3788/* I_VARARGS:
3789 *	This symbol, if defined, indicates to the C program that it should
3790 *	include <varargs.h>.
3791 */
3792#define I_STDARG		/**/
3793/*#define I_VARARGS	/**/
3794
3795/* CAN_PROTOTYPE:
3796 *	If defined, this macro indicates that the C compiler can handle
3797 *	function prototypes.
3798 */
3799/* _:
3800 *	This macro is used to declare function parameters for folks who want
3801 *	to make declarations with prototypes using a different style than
3802 *	the above macros.  Use double parentheses.  For example:
3803 *
3804 *		int main _((int argc, char *argv[]));
3805 */
3806#define	CAN_PROTOTYPE	/**/
3807#ifdef CAN_PROTOTYPE
3808#define	_(args) args
3809#else
3810#define	_(args) ()
3811#endif
3812
3813/* SH_PATH:
3814 *	This symbol contains the full pathname to the shell used on this
3815 *	on this system to execute Bourne shell scripts.  Usually, this will be
3816 *	/bin/sh, though it's possible that some systems will have /bin/ksh,
3817 *	/bin/pdksh, /bin/ash, /bin/bash, or even something such as
3818 *	D:/bin/sh.exe.
3819 */
3820#define SH_PATH "cmd /x /c"  /**/
3821
3822/* HAS_AINTL:
3823 *	This symbol, if defined, indicates that the aintl routine is
3824 *	available.  If copysignl is also present we can emulate modfl.
3825 */
3826/*#define HAS_AINTL		/ **/
3827
3828/* HAS_CLEARENV:
3829 *	This symbol, if defined, indicates that the clearenv () routine is
3830 *	available for use.
3831 */
3832/*#define HAS_CLEARENV		/**/
3833
3834/* HAS_COPYSIGNL:
3835 *	This symbol, if defined, indicates that the copysignl routine is
3836 *	available.  If aintl is also present we can emulate modfl.
3837 */
3838/*#define HAS_COPYSIGNL		/**/
3839
3840/* HAS_DBMINIT_PROTO:
3841 *	This symbol, if defined, indicates that the system provides
3842 *	a prototype for the dbminit() function.  Otherwise, it is up
3843 *	to the program to supply one.  A good guess is
3844 *		extern int dbminit(char *);
3845 */
3846/*#define	HAS_DBMINIT_PROTO	/**/
3847
3848/* HAS_DIRFD:
3849 *	This manifest constant lets the C program know that dirfd
3850 *	is available.
3851 */
3852/*#define HAS_DIRFD		/**/
3853
3854/* HAS_FAST_STDIO:
3855 *	This symbol, if defined, indicates that the "fast stdio"
3856 *	is available to manipulate the stdio buffers directly.
3857 */
3858#define HAS_FAST_STDIO		/**/
3859
3860/* HAS_FLOCK_PROTO:
3861 *	This symbol, if defined, indicates that the system provides
3862 *	a prototype for the flock() function.  Otherwise, it is up
3863 *	to the program to supply one.  A good guess is
3864 *		extern int flock(int, int);
3865 */
3866#define	HAS_FLOCK_PROTO	/**/
3867
3868/* HAS_FPCLASSL:
3869 *	This symbol, if defined, indicates that the fpclassl routine is
3870 *	available to classify long doubles.  Available for example in IRIX.
3871 *	The returned values are defined in <ieeefp.h> and are:
3872 *
3873 *	FP_SNAN		signaling NaN
3874 *	FP_QNAN		quiet NaN
3875 *	FP_NINF		negative infinity
3876 *	FP_PINF		positive infinity
3877 *	FP_NDENORM	negative denormalized non-zero
3878 *	FP_PDENORM	positive denormalized non-zero
3879 *	FP_NZERO	negative zero
3880 *	FP_PZERO	positive zero
3881 *	FP_NNORM	negative normalized non-zero
3882 *	FP_PNORM	positive normalized non-zero
3883 */
3884/*#define HAS_FPCLASSL		/**/
3885
3886/* HAS_ILOGBL:
3887 *	This symbol, if defined, indicates that the ilogbl routine is
3888 *	available.  If scalbnl is also present we can emulate frexpl.
3889 */
3890/*#define HAS_ILOGBL		/**/
3891
3892/* LIBM_LIB_VERSION:
3893 *	This symbol, if defined, indicates that libm exports _LIB_VERSION
3894 *	and that math.h defines the enum to manipulate it.
3895 */
3896/*#define LIBM_LIB_VERSION         /**/
3897
3898/* HAS_NL_LANGINFO:
3899 *	This symbol, if defined, indicates that the nl_langinfo routine is
3900 *	available to return local data.  You will also need <langinfo.h>
3901 *	and therefore I_LANGINFO.
3902 */
3903/*#define HAS_NL_LANGINFO		/**/
3904
3905/* HAS_PROCSELFEXE:
3906 *	This symbol is defined if PROCSELFEXE_PATH is a symlink
3907 *	to the absolute pathname of the executing program.
3908 */
3909/* PROCSELFEXE_PATH:
3910 *	If HAS_PROCSELFEXE is defined this symbol is the filename
3911 *	of the symbolic link pointing to the absolute pathname of
3912 *	the executing program.
3913 */
3914/*#define HAS_PROCSELFEXE	/**/
3915#if defined(HAS_PROCSELFEXE) && !defined(PROCSELFEXE_PATH)
3916#define PROCSELFEXE_PATH		/**/
3917#endif
3918
3919/* HAS_PTHREAD_ATTR_SETSCOPE:
3920 *	This symbol, if defined, indicates that the pthread_attr_setscope
3921 *	system call is available to set the contention scope attribute of
3922 *	a thread attribute object.
3923 */
3924/*#define HAS_PTHREAD_ATTR_SETSCOPE		/ **/
3925
3926/* HAS_SCALBNL:
3927 *	This symbol, if defined, indicates that the scalbnl routine is
3928 *	available.  If ilogbl is also present we can emulate frexpl.
3929 */
3930/*#define HAS_SCALBNL		/**/
3931
3932/* HAS_SIGPROCMASK:
3933 *	This symbol, if defined, indicates that the sigprocmask
3934 *	system call is available to examine or change the signal mask
3935 *	of the calling process.
3936 */
3937/*#define HAS_SIGPROCMASK		/**/
3938
3939/* HAS_SOCKATMARK:
3940 *	This symbol, if defined, indicates that the sockatmark routine is
3941 *	available to test whether a socket is at the out-of-band mark.
3942 */
3943/*#define HAS_SOCKATMARK		/**/
3944
3945/* HAS_SOCKATMARK_PROTO:
3946 *	This symbol, if defined, indicates that the system provides
3947 *	a prototype for the sockatmark() function.  Otherwise, it is up
3948 *	to the program to supply one.  A good guess is
3949 *		extern int sockatmark(int);
3950 */
3951/*#define	HAS_SOCKATMARK_PROTO	/**/
3952
3953/* SPRINTF_RETURNS_STRLEN:
3954 *	This variable defines whether sprintf returns the length of the string
3955 *	(as per the ANSI spec). Some C libraries retain compatibility with
3956 *	pre-ANSI C and return a pointer to the passed in buffer; for these
3957 *	this variable will be undef.
3958 */
3959#define SPRINTF_RETURNS_STRLEN       /**/
3960
3961/* HAS_SETRESGID_PROTO:
3962 *	This symbol, if defined, indicates that the system provides
3963 *	a prototype for the setresgid() function.  Otherwise, it is up
3964 *	to the program to supply one.  Good guesses are
3965 *		extern int setresgid(uid_t ruid, uid_t euid, uid_t suid);
3966 */
3967/*#define	HAS_SETRESGID_PROTO	/**/
3968
3969/* HAS_SETRESUID_PROTO:
3970 *	This symbol, if defined, indicates that the system provides
3971 *	a prototype for the setresuid() function.  Otherwise, it is up
3972 *	to the program to supply one.  Good guesses are
3973 *		extern int setresuid(uid_t ruid, uid_t euid, uid_t suid);
3974 */
3975/*#define	HAS_SETRESUID_PROTO	/**/
3976
3977/* HAS_STRFTIME:
3978 *	This symbol, if defined, indicates that the strftime routine is
3979 *	available to do time formatting.
3980 */
3981#define HAS_STRFTIME		/**/
3982
3983/* HAS_STRLCAT:
3984 *	This symbol, if defined, indicates that the strlcat () routine is
3985 *	available to do string concatenation.
3986 */
3987/*#define HAS_STRLCAT			/**/
3988
3989/* HAS_STRLCPY:
3990 *	This symbol, if defined, indicates that the strlcpy () routine is
3991 *	available to do string copying.
3992 */
3993/*#define HAS_STRLCPY			/**/
3994
3995/* HAS_SYSCALL_PROTO:
3996 *	This symbol, if defined, indicates that the system provides
3997 *	a prototype for the syscall() function.  Otherwise, it is up
3998 *	to the program to supply one.  Good guesses are
3999 *		extern int syscall(int,  ...);
4000 *		extern int syscall(long, ...);
4001 */
4002/*#define	HAS_SYSCALL_PROTO	/**/
4003
4004/* U32_ALIGNMENT_REQUIRED:
4005 *	This symbol, if defined, indicates that you must access
4006 *	character data through U32-aligned pointers.
4007 */
4008#ifndef U32_ALIGNMENT_REQUIRED
4009#define U32_ALIGNMENT_REQUIRED	/**/
4010#endif
4011
4012/* HAS_USLEEP_PROTO:
4013 *	This symbol, if defined, indicates that the system provides
4014 *	a prototype for the usleep() function.  Otherwise, it is up
4015 *	to the program to supply one.  A good guess is
4016 *		extern int usleep(useconds_t);
4017 */
4018/*#define	HAS_USLEEP_PROTO	/**/
4019
4020/* I_CRYPT:
4021 *	This symbol, if defined, indicates that <crypt.h> exists and
4022 *	should be included.
4023 */
4024/*#define	I_CRYPT		/**/
4025
4026/* I_FP:
4027 *	This symbol, if defined, indicates that <fp.h> exists and
4028 *	should be included.
4029 */
4030/*#define	I_FP		/**/
4031
4032/* I_LANGINFO:
4033 *	This symbol, if defined, indicates that <langinfo.h> exists and
4034 *	should be included.
4035 */
4036/*#define	I_LANGINFO		/**/
4037
4038/* USE_FAST_STDIO:
4039 *	This symbol, if defined, indicates that Perl should
4040 *	be built to use 'fast stdio'.
4041 *	Defaults to define in Perls 5.8 and earlier, to undef later.
4042 */
4043#ifndef USE_FAST_STDIO
4044#define	USE_FAST_STDIO		/**/
4045#endif
4046
4047/* PERL_RELOCATABLE_INC:
4048 *	This symbol, if defined, indicates that we'd like to relocate entries
4049 *	in @INC at run time based on the location of the perl binary.
4050 */
4051/*#define PERL_RELOCATABLE_INC "" 		/**/
4052
4053/* HAS_CTERMID_R:
4054 *	This symbol, if defined, indicates that the ctermid_r routine
4055 *	is available to ctermid re-entrantly.
4056 */
4057/* CTERMID_R_PROTO:
4058 *	This symbol encodes the prototype of ctermid_r.
4059 *	It is zero if d_ctermid_r is undef, and one of the
4060 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_ctermid_r
4061 *	is defined.
4062 */
4063/*#define HAS_CTERMID_R	   /**/
4064#define CTERMID_R_PROTO 0	   /**/
4065
4066/* HAS_ENDHOSTENT_R:
4067 *	This symbol, if defined, indicates that the endhostent_r routine
4068 *	is available to endhostent re-entrantly.
4069 */
4070/* ENDHOSTENT_R_PROTO:
4071 *	This symbol encodes the prototype of endhostent_r.
4072 *	It is zero if d_endhostent_r is undef, and one of the
4073 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_endhostent_r
4074 *	is defined.
4075 */
4076/*#define HAS_ENDHOSTENT_R	   /**/
4077#define ENDHOSTENT_R_PROTO 0	   /**/
4078
4079/* HAS_ENDNETENT_R:
4080 *	This symbol, if defined, indicates that the endnetent_r routine
4081 *	is available to endnetent re-entrantly.
4082 */
4083/* ENDNETENT_R_PROTO:
4084 *	This symbol encodes the prototype of endnetent_r.
4085 *	It is zero if d_endnetent_r is undef, and one of the
4086 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_endnetent_r
4087 *	is defined.
4088 */
4089/*#define HAS_ENDNETENT_R	   /**/
4090#define ENDNETENT_R_PROTO 0	   /**/
4091
4092/* HAS_ENDPROTOENT_R:
4093 *	This symbol, if defined, indicates that the endprotoent_r routine
4094 *	is available to endprotoent re-entrantly.
4095 */
4096/* ENDPROTOENT_R_PROTO:
4097 *	This symbol encodes the prototype of endprotoent_r.
4098 *	It is zero if d_endprotoent_r is undef, and one of the
4099 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_endprotoent_r
4100 *	is defined.
4101 */
4102/*#define HAS_ENDPROTOENT_R	   /**/
4103#define ENDPROTOENT_R_PROTO 0	   /**/
4104
4105/* HAS_ENDSERVENT_R:
4106 *	This symbol, if defined, indicates that the endservent_r routine
4107 *	is available to endservent re-entrantly.
4108 */
4109/* ENDSERVENT_R_PROTO:
4110 *	This symbol encodes the prototype of endservent_r.
4111 *	It is zero if d_endservent_r is undef, and one of the
4112 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_endservent_r
4113 *	is defined.
4114 */
4115/*#define HAS_ENDSERVENT_R	   /**/
4116#define ENDSERVENT_R_PROTO 0	   /**/
4117
4118/* HAS_GETHOSTBYADDR_R:
4119 *	This symbol, if defined, indicates that the gethostbyaddr_r routine
4120 *	is available to gethostbyaddr re-entrantly.
4121 */
4122/* GETHOSTBYADDR_R_PROTO:
4123 *	This symbol encodes the prototype of gethostbyaddr_r.
4124 *	It is zero if d_gethostbyaddr_r is undef, and one of the
4125 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostbyaddr_r
4126 *	is defined.
4127 */
4128/*#define HAS_GETHOSTBYADDR_R	   /**/
4129#define GETHOSTBYADDR_R_PROTO 0	   /**/
4130
4131/* HAS_GETHOSTBYNAME_R:
4132 *	This symbol, if defined, indicates that the gethostbyname_r routine
4133 *	is available to gethostbyname re-entrantly.
4134 */
4135/* GETHOSTBYNAME_R_PROTO:
4136 *	This symbol encodes the prototype of gethostbyname_r.
4137 *	It is zero if d_gethostbyname_r is undef, and one of the
4138 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostbyname_r
4139 *	is defined.
4140 */
4141/*#define HAS_GETHOSTBYNAME_R	   /**/
4142#define GETHOSTBYNAME_R_PROTO 0	   /**/
4143
4144/* HAS_GETHOSTENT_R:
4145 *	This symbol, if defined, indicates that the gethostent_r routine
4146 *	is available to gethostent re-entrantly.
4147 */
4148/* GETHOSTENT_R_PROTO:
4149 *	This symbol encodes the prototype of gethostent_r.
4150 *	It is zero if d_gethostent_r is undef, and one of the
4151 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostent_r
4152 *	is defined.
4153 */
4154/*#define HAS_GETHOSTENT_R	   /**/
4155#define GETHOSTENT_R_PROTO 0	   /**/
4156
4157/* HAS_GETNETBYADDR_R:
4158 *	This symbol, if defined, indicates that the getnetbyaddr_r routine
4159 *	is available to getnetbyaddr re-entrantly.
4160 */
4161/* GETNETBYADDR_R_PROTO:
4162 *	This symbol encodes the prototype of getnetbyaddr_r.
4163 *	It is zero if d_getnetbyaddr_r is undef, and one of the
4164 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetbyaddr_r
4165 *	is defined.
4166 */
4167/*#define HAS_GETNETBYADDR_R	   /**/
4168#define GETNETBYADDR_R_PROTO 0	   /**/
4169
4170/* HAS_GETNETBYNAME_R:
4171 *	This symbol, if defined, indicates that the getnetbyname_r routine
4172 *	is available to getnetbyname re-entrantly.
4173 */
4174/* GETNETBYNAME_R_PROTO:
4175 *	This symbol encodes the prototype of getnetbyname_r.
4176 *	It is zero if d_getnetbyname_r is undef, and one of the
4177 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetbyname_r
4178 *	is defined.
4179 */
4180/*#define HAS_GETNETBYNAME_R	   /**/
4181#define GETNETBYNAME_R_PROTO 0	   /**/
4182
4183/* HAS_GETNETENT_R:
4184 *	This symbol, if defined, indicates that the getnetent_r routine
4185 *	is available to getnetent re-entrantly.
4186 */
4187/* GETNETENT_R_PROTO:
4188 *	This symbol encodes the prototype of getnetent_r.
4189 *	It is zero if d_getnetent_r is undef, and one of the
4190 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetent_r
4191 *	is defined.
4192 */
4193/*#define HAS_GETNETENT_R	   /**/
4194#define GETNETENT_R_PROTO 0	   /**/
4195
4196/* HAS_GETPROTOBYNAME_R:
4197 *	This symbol, if defined, indicates that the getprotobyname_r routine
4198 *	is available to getprotobyname re-entrantly.
4199 */
4200/* GETPROTOBYNAME_R_PROTO:
4201 *	This symbol encodes the prototype of getprotobyname_r.
4202 *	It is zero if d_getprotobyname_r is undef, and one of the
4203 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotobyname_r
4204 *	is defined.
4205 */
4206/*#define HAS_GETPROTOBYNAME_R	   /**/
4207#define GETPROTOBYNAME_R_PROTO 0	   /**/
4208
4209/* HAS_GETPROTOBYNUMBER_R:
4210 *	This symbol, if defined, indicates that the getprotobynumber_r routine
4211 *	is available to getprotobynumber re-entrantly.
4212 */
4213/* GETPROTOBYNUMBER_R_PROTO:
4214 *	This symbol encodes the prototype of getprotobynumber_r.
4215 *	It is zero if d_getprotobynumber_r is undef, and one of the
4216 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotobynumber_r
4217 *	is defined.
4218 */
4219/*#define HAS_GETPROTOBYNUMBER_R	   /**/
4220#define GETPROTOBYNUMBER_R_PROTO 0	   /**/
4221
4222/* HAS_GETPROTOENT_R:
4223 *	This symbol, if defined, indicates that the getprotoent_r routine
4224 *	is available to getprotoent re-entrantly.
4225 */
4226/* GETPROTOENT_R_PROTO:
4227 *	This symbol encodes the prototype of getprotoent_r.
4228 *	It is zero if d_getprotoent_r is undef, and one of the
4229 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotoent_r
4230 *	is defined.
4231 */
4232/*#define HAS_GETPROTOENT_R	   /**/
4233#define GETPROTOENT_R_PROTO 0	   /**/
4234
4235/* HAS_GETSERVBYNAME_R:
4236 *	This symbol, if defined, indicates that the getservbyname_r routine
4237 *	is available to getservbyname re-entrantly.
4238 */
4239/* GETSERVBYNAME_R_PROTO:
4240 *	This symbol encodes the prototype of getservbyname_r.
4241 *	It is zero if d_getservbyname_r is undef, and one of the
4242 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservbyname_r
4243 *	is defined.
4244 */
4245/*#define HAS_GETSERVBYNAME_R	   /**/
4246#define GETSERVBYNAME_R_PROTO 0	   /**/
4247
4248/* HAS_GETSERVBYPORT_R:
4249 *	This symbol, if defined, indicates that the getservbyport_r routine
4250 *	is available to getservbyport re-entrantly.
4251 */
4252/* GETSERVBYPORT_R_PROTO:
4253 *	This symbol encodes the prototype of getservbyport_r.
4254 *	It is zero if d_getservbyport_r is undef, and one of the
4255 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservbyport_r
4256 *	is defined.
4257 */
4258/*#define HAS_GETSERVBYPORT_R	   /**/
4259#define GETSERVBYPORT_R_PROTO 0	   /**/
4260
4261/* HAS_GETSERVENT_R:
4262 *	This symbol, if defined, indicates that the getservent_r routine
4263 *	is available to getservent re-entrantly.
4264 */
4265/* GETSERVENT_R_PROTO:
4266 *	This symbol encodes the prototype of getservent_r.
4267 *	It is zero if d_getservent_r is undef, and one of the
4268 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservent_r
4269 *	is defined.
4270 */
4271/*#define HAS_GETSERVENT_R	   /**/
4272#define GETSERVENT_R_PROTO 0	   /**/
4273
4274/* HAS_PTHREAD_ATFORK:
4275 *	This symbol, if defined, indicates that the pthread_atfork routine
4276 *	is available to setup fork handlers.
4277 */
4278/*#define HAS_PTHREAD_ATFORK		/**/
4279
4280/* HAS_READDIR64_R:
4281 *	This symbol, if defined, indicates that the readdir64_r routine
4282 *	is available to readdir64 re-entrantly.
4283 */
4284/* READDIR64_R_PROTO:
4285 *	This symbol encodes the prototype of readdir64_r.
4286 *	It is zero if d_readdir64_r is undef, and one of the
4287 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_readdir64_r
4288 *	is defined.
4289 */
4290/*#define HAS_READDIR64_R	   /**/
4291#define READDIR64_R_PROTO 0	   /**/
4292
4293/* HAS_SETHOSTENT_R:
4294 *	This symbol, if defined, indicates that the sethostent_r routine
4295 *	is available to sethostent re-entrantly.
4296 */
4297/* SETHOSTENT_R_PROTO:
4298 *	This symbol encodes the prototype of sethostent_r.
4299 *	It is zero if d_sethostent_r is undef, and one of the
4300 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_sethostent_r
4301 *	is defined.
4302 */
4303/*#define HAS_SETHOSTENT_R	   /**/
4304#define SETHOSTENT_R_PROTO 0	   /**/
4305
4306/* HAS_SETLOCALE_R:
4307 *	This symbol, if defined, indicates that the setlocale_r routine
4308 *	is available to setlocale re-entrantly.
4309 */
4310/* SETLOCALE_R_PROTO:
4311 *	This symbol encodes the prototype of setlocale_r.
4312 *	It is zero if d_setlocale_r is undef, and one of the
4313 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_setlocale_r
4314 *	is defined.
4315 */
4316/*#define HAS_SETLOCALE_R	   /**/
4317#define SETLOCALE_R_PROTO 0	   /**/
4318
4319/* HAS_SETNETENT_R:
4320 *	This symbol, if defined, indicates that the setnetent_r routine
4321 *	is available to setnetent re-entrantly.
4322 */
4323/* SETNETENT_R_PROTO:
4324 *	This symbol encodes the prototype of setnetent_r.
4325 *	It is zero if d_setnetent_r is undef, and one of the
4326 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_setnetent_r
4327 *	is defined.
4328 */
4329/*#define HAS_SETNETENT_R	   /**/
4330#define SETNETENT_R_PROTO 0	   /**/
4331
4332/* HAS_SETPROTOENT_R:
4333 *	This symbol, if defined, indicates that the setprotoent_r routine
4334 *	is available to setprotoent re-entrantly.
4335 */
4336/* SETPROTOENT_R_PROTO:
4337 *	This symbol encodes the prototype of setprotoent_r.
4338 *	It is zero if d_setprotoent_r is undef, and one of the
4339 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_setprotoent_r
4340 *	is defined.
4341 */
4342/*#define HAS_SETPROTOENT_R	   /**/
4343#define SETPROTOENT_R_PROTO 0	   /**/
4344
4345/* HAS_SETSERVENT_R:
4346 *	This symbol, if defined, indicates that the setservent_r routine
4347 *	is available to setservent re-entrantly.
4348 */
4349/* SETSERVENT_R_PROTO:
4350 *	This symbol encodes the prototype of setservent_r.
4351 *	It is zero if d_setservent_r is undef, and one of the
4352 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_setservent_r
4353 *	is defined.
4354 */
4355/*#define HAS_SETSERVENT_R	   /**/
4356#define SETSERVENT_R_PROTO 0	   /**/
4357
4358/* HAS_TTYNAME_R:
4359 *	This symbol, if defined, indicates that the ttyname_r routine
4360 *	is available to ttyname re-entrantly.
4361 */
4362/* TTYNAME_R_PROTO:
4363 *	This symbol encodes the prototype of ttyname_r.
4364 *	It is zero if d_ttyname_r is undef, and one of the
4365 *	REENTRANT_PROTO_T_ABC macros of reentr.h if d_ttyname_r
4366 *	is defined.
4367 */
4368/*#define HAS_TTYNAME_R	   /**/
4369#define TTYNAME_R_PROTO 0	   /**/
4370
4371#endif
4372