This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl 5.0 alpha 5
[perl5.git] / config.h
1 #ifndef config_h
2 #define config_h
3 /* config.h
4  * This file was produced by running the config.h.SH script, which
5  * gets its values from config.sh, which is generally produced by
6  * running Configure.
7  *
8  * Feel free to modify any of this as the need arises.  Note, however,
9  * that running config.h.SH again will wipe out any changes you've made.
10  * For a more permanent change edit config.sh and rerun config.h.SH.
11  */
12  /*SUPPRESS 460*/
13
14
15 /* EUNICE
16  *      This symbol, if defined, indicates that the program is being compiled
17  *      under the EUNICE package under VMS.  The program will need to handle
18  *      things like files that don't go away the first time you unlink them,
19  *      due to version numbering.  It will also need to compensate for lack
20  *      of a respectable link() command.
21  */
22 /* VMS
23  *      This symbol, if defined, indicates that the program is running under
24  *      VMS.  It is currently only set in conjunction with the EUNICE symbol.
25  */
26 /*#undef        EUNICE          /**/
27 /*#undef        VMS             /**/
28
29 /* LOC_SED
30  *     This symbol holds the complete pathname to the sed program.
31  */
32 #define LOC_SED "/bin/sed"             /**/
33
34 /* ALIGNBYTES
35  *      This symbol contains the number of bytes required to align a double.
36  *      Usual values are 2, 4, and 8.
37  */
38 #define ALIGNBYTES 8            /**/
39
40 /* BIN
41  *      This symbol holds the name of the directory in which the user wants
42  *      to keep publicly executable images for the package in question.  It
43  *      is most often a local directory such as /usr/local/bin.
44  */
45 #define BIN "/usr/local/bin"             /**/
46
47 /* BYTEORDER
48  *      This symbol contains an encoding of the order of bytes in a long.
49  *      Usual values (in hex) are 0x1234, 0x4321, 0x2143, 0x3412...
50  */
51 #define BYTEORDER 0x4321                /**/
52
53 /* CPPSTDIN
54  *      This symbol contains the first part of the string which will invoke
55  *      the C preprocessor on the standard input and produce to standard
56  *      output.  Typical value of "cc -E" or "/lib/cpp".
57  */
58 /* CPPMINUS
59  *      This symbol contains the second part of the string which will invoke
60  *      the C preprocessor on the standard input and produce to standard
61  *      output.  This symbol will have the value "-" if CPPSTDIN needs a minus
62  *      to specify standard input, otherwise the value is "".
63  */
64 #define CPPSTDIN "/usr/lib/cpp"
65 #define CPPMINUS ""
66
67 /* HAS_BCMP
68  *      This symbol, if defined, indicates that the bcmp routine is available
69  *      to compare blocks of memory.  If undefined, use memcmp.  If that's
70  *      not available, roll your own.
71  */
72 #define HAS_BCMP                /**/
73
74 /* HAS_BCOPY
75  *      This symbol, if defined, indicates that the bcopy routine is available
76  *      to copy blocks of memory.  Otherwise you should probably use memcpy().
77  *      If neither is defined, roll your own.
78  */
79 /* SAFE_BCOPY
80  *      This symbol, if defined, indicates that the bcopy routine is available
81  *      to copy potentially overlapping copy blocks of bcopy.  Otherwise you
82  *      should probably use memmove() or memcpy().  If neither is defined,
83  *      roll your own.
84  */
85 #define HAS_BCOPY               /**/
86 #define SAFE_BCOPY              /**/
87
88 /* HAS_BZERO
89  *      This symbol, if defined, indicates that the bzero routine is available
90  *      to zero blocks of memory.  Otherwise you should probably use memset()
91  *      or roll your own.
92  */
93 #define HAS_BZERO               /**/
94
95 /* CASTNEGFLOAT
96  *      This symbol, if defined, indicates that this C compiler knows how to
97  *      cast negative or large floating point numbers to unsigned longs, ints
98  *      and shorts.
99  */
100 /* CASTFLAGS
101  *      This symbol contains flags that say what difficulties the compiler
102  *      has casting odd floating values to unsigned long:
103  *              1 = couldn't cast < 0
104  *              2 = couldn't cast >= 0x80000000
105  */
106 #define CASTNEGFLOAT    /**/
107 #define CASTFLAGS 0     /**/
108
109 /* CASTI32
110  *      This symbol, if defined, indicates that this C compiler knows how to
111  *      cast negative or large floating point numbers to 32-bit ints.
112  */
113 #define CASTI32         /**/
114
115 /* CHARSPRINTF
116  *      This symbol is defined if this system declares "char *sprintf()" in
117  *      stdio.h.  The trend seems to be to declare it as "int sprintf()".  It
118  *      is up to the package author to declare sprintf correctly based on the
119  *      symbol.
120  */
121 #define CHARSPRINTF     /**/
122
123 /* HAS_CHSIZE
124  *      This symbol, if defined, indicates that the chsize routine is available
125  *      to truncate files.  You might need a -lx to get this routine.
126  */
127 /*#undef        HAS_CHSIZE              /**/
128
129 /* HAS_CRYPT
130  *      This symbol, if defined, indicates that the crypt routine is available
131  *      to encrypt passwords and the like.
132  */
133 #define HAS_CRYPT               /**/
134
135 /* CSH
136  *      This symbol, if defined, indicates that the C-shell exists.
137  *      If defined, contains the full pathname of csh.
138  */
139 #define CSH "/bin/csh"          /**/
140
141 /* DOSUID
142  *      This symbol, if defined, indicates that the C program should
143  *      check the script that it is executing for setuid/setgid bits, and
144  *      attempt to emulate setuid/setgid on systems that have disabled
145  *      setuid #! scripts because the kernel can't do it securely.
146  *      It is up to the package designer to make sure that this emulation
147  *      is done securely.  Among other things, it should do an fstat on
148  *      the script it just opened to make sure it really is a setuid/setgid
149  *      script, it should make sure the arguments passed correspond exactly
150  *      to the argument on the #! line, and it should not trust any
151  *      subprocesses to which it must pass the filename rather than the
152  *      file descriptor of the script to be executed.
153  */
154 /*#undef DOSUID         /**/
155
156 /* HAS_DUP2
157  *      This symbol, if defined, indicates that the dup2 routine is available
158  *      to dup file descriptors.  Otherwise you should use dup().
159  */
160 #define HAS_DUP2                /**/
161
162 /* HAS_FCHMOD
163  *      This symbol, if defined, indicates that the fchmod routine is available
164  *      to change mode of opened files.  If unavailable, use chmod().
165  */
166 #define HAS_FCHMOD              /**/
167
168 /* HAS_FCHOWN
169  *      This symbol, if defined, indicates that the fchown routine is available
170  *      to change ownership of opened files.  If unavailable, use chown().
171  */
172 #define HAS_FCHOWN              /**/
173
174 /* HAS_FCNTL
175  *      This symbol, if defined, indicates to the C program that
176  *      the fcntl() function exists.
177  */
178 #define HAS_FCNTL               /**/
179
180 /* FLEXFILENAMES
181  *      This symbol, if defined, indicates that the system supports filenames
182  *      longer than 14 characters.
183  */
184 #define FLEXFILENAMES           /**/
185
186 /* HAS_FLOCK
187  *      This symbol, if defined, indicates that the flock() routine is
188  *      available to do file locking.
189  */
190 #define HAS_FLOCK               /**/
191
192 /* HAS_GETGROUPS
193  *      This symbol, if defined, indicates that the getgroups() routine is
194  *      available to get the list of process groups.  If unavailable, multiple
195  *      groups are probably not supported.
196  */
197 #define HAS_GETGROUPS           /**/
198
199 /* HAS_GETHOSTENT
200  *      This symbol, if defined, indicates that the gethostent() routine is
201  *      available to lookup host names in some data base or other.
202  */
203 /*#undef        HAS_GETHOSTENT          /**/
204
205 /* HAS_GETPGRP
206  *      This symbol, if defined, indicates that the getpgrp() routine is
207  *      available to get the current process group.
208  */
209 #define HAS_GETPGRP             /**/
210
211 /* HAS_GETPGRP2
212  *      This symbol, if defined, indicates that the getpgrp2() (as in DG/UX)
213  *      routine is available to get the current process group.
214  */
215 /*#undef        HAS_GETPGRP2            /**/
216
217 /* HAS_GETPRIORITY
218  *      This symbol, if defined, indicates that the getpriority() routine is
219  *      available to get a process's priority.
220  */
221 #define HAS_GETPRIORITY         /**/
222
223 /* HAS_HTONS
224  *      This symbol, if defined, indicates that the htons routine (and friends)
225  *      are available to do network order byte swapping.
226  */
227 /* HAS_HTONL
228  *      This symbol, if defined, indicates that the htonl routine (and friends)
229  *      are available to do network order byte swapping.
230  */
231 /* HAS_NTOHS
232  *      This symbol, if defined, indicates that the ntohs routine (and friends)
233  *      are available to do network order byte swapping.
234  */
235 /* HAS_NTOHL
236  *      This symbol, if defined, indicates that the ntohl routine (and friends)
237  *      are available to do network order byte swapping.
238  */
239 #define HAS_HTONS       /**/
240 #define HAS_HTONL       /**/
241 #define HAS_NTOHS       /**/
242 #define HAS_NTOHL       /**/
243
244 /* index
245  *      This preprocessor symbol is defined, along with rindex, if the system
246  *      uses the strchr and strrchr routines instead.
247  */
248 /* rindex
249  *      This preprocessor symbol is defined, along with index, if the system
250  *      uses the strchr and strrchr routines instead.
251  */
252 /*#undef        index strchr    /* cultural */
253 /*#undef        rindex strrchr  /*  differences? */
254
255 /* HAS_ISASCII
256  *      This symbol, if defined, indicates that the isascii routine is available
257  *      to test characters for asciiness.
258  */
259 #define HAS_ISASCII             /**/
260
261 /* HAS_KILLPG
262  *      This symbol, if defined, indicates that the killpg routine is available
263  *      to kill process groups.  If unavailable, you probably should use kill
264  *      with a negative process number.
265  */
266 #define HAS_KILLPG              /**/
267
268 /* HAS_LSTAT
269  *      This symbol, if defined, indicates that the lstat() routine is
270  *      available to stat symbolic links.
271  */
272 #define HAS_LSTAT               /**/
273
274 /* HAS_MEMCMP
275  *      This symbol, if defined, indicates that the memcmp routine is available
276  *      to compare blocks of memory.  If undefined, roll your own.
277  */
278 #define HAS_MEMCMP              /**/
279
280 /* HAS_MEMCPY
281  *      This symbol, if defined, indicates that the memcpy routine is available
282  *      to copy blocks of memory.  Otherwise you should probably use bcopy().
283  *      If neither is defined, roll your own.
284  */
285 /* SAFE_MEMCPY
286  *      This symbol, if defined, indicates that the memcpy routine is available
287  *      to copy potentially overlapping copy blocks of memory.  Otherwise you
288  *      should probably use memmove() or bcopy().  If neither is defined,
289  *      roll your own.
290  */
291 #define HAS_MEMCPY              /**/
292 /*#undef        SAFE_MEMCPY             /**/
293
294 /* HAS_MEMMOVE
295  *      This symbol, if defined, indicates that the memmove routine is available
296  *      to move potentially overlapping blocks of memory.  Otherwise you
297  *      should use bcopy() or roll your own.
298  */
299 /*#undef        HAS_MEMMOVE             /**/
300
301 /* HAS_MEMSET
302  *      This symbol, if defined, indicates that the memset routine is available
303  *      to set a block of memory to a character.  If undefined, roll your own.
304  */
305 #define HAS_MEMSET              /**/
306
307 /* HAS_MKDIR
308  *      This symbol, if defined, indicates that the mkdir routine is available
309  *      to create directories.  Otherwise you should fork off a new process to
310  *      exec /bin/mkdir.
311  */
312 #define HAS_MKDIR               /**/
313
314 /* HAS_MSG
315  *      This symbol, if defined, indicates that the entire msg*(2) library is
316  *      supported.
317  */
318 #define HAS_MSG         /**/
319
320 /* HAS_MSGCTL
321  *      This symbol, if defined, indicates that the msgctl() routine is
322  *      available to control message passing.
323  */
324 #define HAS_MSGCTL              /**/
325
326 /* HAS_MSGGET
327  *      This symbol, if defined, indicates that the msgget() routine is
328  *      available to get messages.
329  */
330 #define HAS_MSGGET              /**/
331
332 /* HAS_MSGRCV
333  *      This symbol, if defined, indicates that the msgrcv() routine is
334  *      available to receive messages.
335  */
336 #define HAS_MSGRCV              /**/
337
338 /* HAS_MSGSND
339  *      This symbol, if defined, indicates that the msgsnd() routine is
340  *      available to send messages.
341  */
342 #define HAS_MSGSND              /**/
343
344 /* HAS_NDBM
345  *      This symbol, if defined, indicates that ndbm.h exists and should
346  *      be included.
347  */
348 #define HAS_NDBM                /**/
349
350 /* HAS_ODBM
351  *      This symbol, if defined, indicates that dbm.h exists and should
352  *      be included.
353  */
354 #define HAS_ODBM                /**/
355
356 /* HAS_OPEN3
357  *      This manifest constant lets the C program know that the three
358  *      argument form of open(2) is available.
359  */
360 #define HAS_OPEN3               /**/
361
362 /* HAS_READDIR
363  *      This symbol, if defined, indicates that the readdir routine is available
364  *      from the C library to read directories.
365  */
366 #define HAS_READDIR             /**/
367
368 /* HAS_RENAME
369  *      This symbol, if defined, indicates that the rename routine is available
370  *      to rename files.  Otherwise you should do the unlink(), link(), unlink()
371  *      trick.
372  */
373 #define HAS_RENAME              /**/
374
375 /* HAS_REWINDDIR
376  *      This symbol, if defined, indicates that the rewindir routine is
377  *      available to rewind directories.
378  */
379 /*#undef        HAS_REWINDDIR           /**/
380
381 /* HAS_RMDIR
382  *      This symbol, if defined, indicates that the rmdir routine is available
383  *      to remove directories.  Otherwise you should fork off a new process to
384  *      exec /bin/rmdir.
385  */
386 #define HAS_RMDIR               /**/
387
388 /* HAS_SEEKDIR
389  *      This symbol, if defined, indicates that the seekdir routine is
390  *      available to seek into directories.
391  */
392 #define HAS_SEEKDIR             /**/
393
394 /* HAS_SELECT
395  *      This symbol, if defined, indicates that the select() subroutine
396  *      exists.
397  */
398 #define HAS_SELECT      /**/
399
400 /* HAS_SEM
401  *      This symbol, if defined, indicates that the entire sem*(2) library is
402  *      supported.
403  */
404 #define HAS_SEM         /**/
405
406 /* HAS_SEMCTL
407  *      This symbol, if defined, indicates that the semctl() routine is
408  *      available to control semaphores.
409  */
410 #define HAS_SEMCTL              /**/
411
412 /* HAS_SEMGET
413  *      This symbol, if defined, indicates that the semget() routine is
414  *      available to get semaphores ids.
415  */
416 #define HAS_SEMGET              /**/
417
418 /* HAS_SEMOP
419  *      This symbol, if defined, indicates that the semop() routine is
420  *      available to perform semaphore operations.
421  */
422 #define HAS_SEMOP               /**/
423
424 /* HAS_SETEGID
425  *      This symbol, if defined, indicates that the setegid routine is available
426  *      to change the effective gid of the current program.
427  */
428 #define HAS_SETEGID             /**/
429
430 /* HAS_SETEUID
431  *      This symbol, if defined, indicates that the seteuid routine is available
432  *      to change the effective uid of the current program.
433  */
434 #define HAS_SETEUID             /**/
435
436 /* HAS_SETPGRP
437  *      This symbol, if defined, indicates that the setpgrp() routine is
438  *      available to set the current process group.
439  */
440 #define HAS_SETPGRP             /**/
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 /*#undef        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 program.
457  */
458 /* HAS_SETRESGID
459  *      This symbol, if defined, indicates that the setresgid routine is
460  *      available to change the real, effective and saved gid of the current
461  *      program.
462  */
463 #define HAS_SETREGID            /**/
464 /*#undef        HAS_SETRESGID           /**/
465
466 /* HAS_SETREUID
467  *      This symbol, if defined, indicates that the setreuid routine is
468  *      available to change the real and effective uid of the current program.
469  */
470 /* HAS_SETRESUID
471  *      This symbol, if defined, indicates that the setresuid routine is
472  *      available to change the real, effective and saved uid of the current
473  *      program.
474  */
475 #define HAS_SETREUID            /**/
476 /*#undef        HAS_SETRESUID           /**/
477
478 /* HAS_SETRGID
479  *      This symbol, if defined, indicates that the setrgid routine is available
480  *      to change the real gid of the current program.
481  */
482 #define HAS_SETRGID             /**/
483
484 /* HAS_SETRUID
485  *      This symbol, if defined, indicates that the setruid routine is available
486  *      to change the real uid of the current program.
487  */
488 #define HAS_SETRUID             /**/
489
490 /* HAS_SHM
491  *      This symbol, if defined, indicates that the entire shm*(2) library is
492  *      supported.
493  */
494 #define HAS_SHM         /**/
495
496 /* HAS_SHMAT
497  *      This symbol, if defined, indicates that the shmat() routine is
498  *      available to attach a shared memory segment.
499  */
500 /* VOID_SHMAT
501  *      This symbol, if defined, indicates that the shmat() routine
502  *      returns a pointer of type void*.
503  */
504 #define HAS_SHMAT               /**/
505
506 /*#undef        VOIDSHMAT               /**/
507
508 /* HAS_SHMCTL
509  *      This symbol, if defined, indicates that the shmctl() routine is
510  *      available to control a shared memory segment.
511  */
512 #define HAS_SHMCTL              /**/
513
514 /* HAS_SHMDT
515  *      This symbol, if defined, indicates that the shmdt() routine is
516  *      available to detach a shared memory segment.
517  */
518 #define HAS_SHMDT               /**/
519
520 /* HAS_SHMGET
521  *      This symbol, if defined, indicates that the shmget() routine is
522  *      available to get a shared memory segment id.
523  */
524 #define HAS_SHMGET              /**/
525
526 /* HAS_SOCKET
527  *      This symbol, if defined, indicates that the BSD socket interface is
528  *      supported.
529  */
530 /* HAS_SOCKETPAIR
531  *      This symbol, if defined, indicates that the BSD socketpair call is
532  *      supported.
533  */
534 /* OLDSOCKET
535  *      This symbol, if defined, indicates that the 4.1c BSD socket interface
536  *      is supported instead of the 4.2/4.3 BSD socket interface.
537  */
538 #define HAS_SOCKET              /**/
539
540 #define HAS_SOCKETPAIR  /**/
541
542 /*#undef        OLDSOCKET       /**/
543
544 /* STATBLOCKS
545  *      This symbol is defined if this system has a stat structure declaring
546  *      st_blksize and st_blocks.
547  */
548 #define STATBLOCKS      /**/
549
550 /* STDSTDIO
551  *      This symbol is defined if this system has a FILE structure declaring
552  *      _ptr and _cnt in stdio.h.
553  */
554 #define STDSTDIO        /**/
555
556 /* STRUCTCOPY
557  *      This symbol, if defined, indicates that this C compiler knows how
558  *      to copy structures.  If undefined, you'll need to use a block copy
559  *      routine of some sort instead.
560  */
561 #define STRUCTCOPY      /**/
562
563 /* HAS_STRERROR
564  *      This symbol, if defined, indicates that the strerror() routine is
565  *      available to translate error numbers to strings.
566  */
567 /*#undef        HAS_STRERROR            /**/
568
569 /* HAS_SYMLINK
570  *      This symbol, if defined, indicates that the symlink routine is available
571  *      to create symbolic links.
572  */
573 #define HAS_SYMLINK             /**/
574
575 /* HAS_SYSCALL
576  *      This symbol, if defined, indicates that the syscall routine is available
577  *      to call arbitrary system calls.  If undefined, that's tough.
578  */
579 #define HAS_SYSCALL             /**/
580
581 /* HAS_TELLDIR
582  *      This symbol, if defined, indicates that the telldir routine is
583  *      available to tell your location in directories.
584  */
585 #define HAS_TELLDIR             /**/
586
587 /* HAS_TRUNCATE
588  *      This symbol, if defined, indicates that the truncate routine is
589  *      available to truncate files.
590  */
591 #define HAS_TRUNCATE            /**/
592
593 /* HAS_VFORK
594  *      This symbol, if defined, indicates that vfork() exists.
595  */
596 #define HAS_VFORK       /**/
597
598 /* VOIDSIG
599  *      This symbol is defined if this system declares "void (*signal())()" in
600  *      signal.h.  The old way was to declare it as "int (*signal())()".  It
601  *      is up to the package author to declare things correctly based on the
602  *      symbol.
603  */
604 /* TO_SIGNAL
605  *      This symbol's value is either "void" or "int", corresponding to the
606  *      appropriate return "type" of a signal handler.  Thus, one can declare
607  *      a signal handler using "TO_SIGNAL (*handler())()", and define the
608  *      handler using "TO_SIGNAL handler(sig)".
609  */
610 #define VOIDSIG         /**/
611 #define TO_SIGNAL       int     /**/
612
613 /* HASVOLATILE
614  *      This symbol, if defined, indicates that this C compiler knows about
615  *      the volatile declaration.
616  */
617 /*#undef        HASVOLATILE     /**/
618
619 /* HAS_VPRINTF
620  *      This symbol, if defined, indicates that the vprintf routine is available
621  *      to printf with a pointer to an argument list.  If unavailable, you
622  *      may need to write your own, probably in terms of _doprnt().
623  */
624 /* CHARVSPRINTF
625  *      This symbol is defined if this system has vsprintf() returning type
626  *      (char*).  The trend seems to be to declare it as "int vsprintf()".  It
627  *      is up to the package author to declare vsprintf correctly based on the
628  *      symbol.
629  */
630 #define HAS_VPRINTF     /**/
631 #define CHARVSPRINTF    /**/
632
633 /* HAS_WAIT4
634  *      This symbol, if defined, indicates that wait4() exists.
635  */
636 #define HAS_WAIT4       /**/
637
638 /* HAS_WAITPID
639  *      This symbol, if defined, indicates that waitpid() exists.
640  */
641 #define HAS_WAITPID     /**/
642
643 /* GIDTYPE
644  *      This symbol has a value like gid_t, int, ushort, or whatever type is
645  *      used to declare group ids in the kernel.
646  */
647 #define GIDTYPE gid_t           /**/
648
649 /* GROUPSTYPE
650  *      This symbol has a value like gid_t, int, ushort, or whatever type is
651  *      used in the return value of getgroups().
652  */
653 #define GROUPSTYPE int          /**/
654
655 /* I_FCNTL
656  *      This manifest constant tells the C program to include <fcntl.h>.
657  */
658 /*#undef        I_FCNTL /**/
659
660 /* I_GDBM
661  *      This symbol, if defined, indicates that gdbm.h exists and should
662  *      be included.
663  */
664 /*#undef        I_GDBM          /**/
665
666 /* I_GRP
667  *      This symbol, if defined, indicates to the C program that it should
668  *      include grp.h.
669  */
670 #define I_GRP           /**/
671
672 /* I_NETINET_IN
673  *      This symbol, if defined, indicates to the C program that it should
674  *      include netinet/in.h.
675  */
676 /* I_SYS_IN
677  *      This symbol, if defined, indicates to the C program that it should
678  *      include sys/in.h.
679  */
680 #define I_NETINET_IN            /**/
681 /*#undef        I_SYS_IN                /**/
682
683 /* I_PWD
684  *      This symbol, if defined, indicates to the C program that it should
685  *      include pwd.h.
686  */
687 /* PWQUOTA
688  *      This symbol, if defined, indicates to the C program that struct passwd
689  *      contains pw_quota.
690  */
691 /* PWAGE
692  *      This symbol, if defined, indicates to the C program that struct passwd
693  *      contains pw_age.
694  */
695 /* PWCHANGE
696  *      This symbol, if defined, indicates to the C program that struct passwd
697  *      contains pw_change.
698  */
699 /* PWCLASS
700  *      This symbol, if defined, indicates to the C program that struct passwd
701  *      contains pw_class.
702  */
703 /* PWEXPIRE
704  *      This symbol, if defined, indicates to the C program that struct passwd
705  *      contains pw_expire.
706  */
707 /* PWCOMMENT
708  *      This symbol, if defined, indicates to the C program that struct passwd
709  *      contains pw_comment.
710  */
711 #define I_PWD           /**/
712 /*#undef        PWQUOTA         /**/
713 #define PWAGE           /**/
714 /*#undef        PWCHANGE        /**/
715 /*#undef        PWCLASS         /**/
716 /*#undef        PWEXPIRE        /**/
717 #define PWCOMMENT       /**/
718
719 /* I_SYS_FILE
720  *      This manifest constant tells the C program to include <sys/file.h>.
721  */
722 #define I_SYS_FILE      /**/
723
724 /* I_SYSIOCTL
725  *      This symbol, if defined, indicates that sys/ioctl.h exists and should
726  *      be included.
727  */
728 #define I_SYSIOCTL              /**/
729
730 /* I_TIME
731  *      This symbol is defined if the program should include <time.h>.
732  */
733 /* I_SYS_TIME
734  *      This symbol is defined if the program should include <sys/time.h>.
735  */
736 /* SYSTIMEKERNEL
737  *      This symbol is defined if the program should include <sys/time.h>
738  *      with KERNEL defined.
739  */
740 /* I_SYS_SELECT
741  *      This symbol is defined if the program should include <sys/select.h>.
742  */
743 /*#undef        I_TIME          /**/
744 #define I_SYS_TIME      /**/
745 /*#undef        SYSTIMEKERNEL   /**/
746 /*#undef        I_SYS_SELECT    /**/
747
748 /* I_UTIME
749  *      This symbol, if defined, indicates to the C program that it should
750  *      include utime.h.
751  */
752 #define I_UTIME         /**/
753
754 /* I_VARARGS
755  *      This symbol, if defined, indicates to the C program that it should
756  *      include varargs.h.
757  */
758 #define I_VARARGS               /**/
759
760 /* I_VFORK
761  *      This symbol, if defined, indicates to the C program that it should
762  *      include vfork.h.
763  */
764 #define I_VFORK         /**/
765
766 /* INTSIZE
767  *      This symbol contains the size of an int, so that the C preprocessor
768  *      can make decisions based on it.
769  */
770 #define INTSIZE 4               /**/
771
772 /* I_DIRENT
773  *      This symbol, if defined, indicates that the program should use the
774  *      P1003-style directory routines, and include <dirent.h>.
775  */
776 /* I_SYS_DIR
777  *      This symbol, if defined, indicates that the program should use the
778  *      directory functions by including <sys/dir.h>.
779  */
780 /* I_NDIR
781  *      This symbol, if defined, indicates that the program should include the
782  *      system's version of ndir.h, rather than the one with this package.
783  */
784 /* I_SYS_NDIR
785  *      This symbol, if defined, indicates that the program should include the
786  *      system's version of sys/ndir.h, rather than the one with this package.
787  */
788 /* I_MY_DIR
789  *      This symbol, if defined, indicates that the program should compile
790  *      the ndir.c code provided with the package.
791  */
792 /* DIRNAMLEN
793  *      This symbol, if defined, indicates to the C program that the length
794  *      of directory entry names is provided by a d_namlen field.  Otherwise
795  *      you need to do strlen() on the d_name field.
796  */
797 #define I_DIRENT        /**/
798 /*#undef        I_SYS_DIR       /**/
799 /*#undef        I_NDIR          /**/
800 /*#undef        I_SYS_NDIR      /**/
801 /*#undef        I_MY_DIR        /**/
802 /*#undef        DIRNAMLEN       /**/
803
804 /* MYMALLOC
805  *      This symbol, if defined, indicates that we're using our own malloc.
806  */
807 /* MALLOCPTRTYPE
808  *      This symbol defines the kind of ptr returned by malloc and realloc.
809  */
810 #define MYMALLOC                        /**/
811
812 #define MALLOCPTRTYPE char         /**/
813
814
815 /* RANDBITS
816  *      This symbol contains the number of bits of random number the rand()
817  *      function produces.  Usual values are 15, 16, and 31.
818  */
819 #define RANDBITS 31             /**/
820
821 /* SCRIPTDIR
822  *      This symbol holds the name of the directory in which the user wants
823  *      to keep publicly executable scripts for the package in question.  It
824  *      is often a directory that is mounted across diverse architectures.
825  */
826 #define SCRIPTDIR "/usr/local/bin"             /**/
827
828 /* SIG_NAME
829  *      This symbol contains an list of signal names in order.
830  */
831 #define SIG_NAME "ZERO","HUP","INT","QUIT","ILL","TRAP","ABRT","EMT","FPE","KILL","BUS","SEGV","SYS","PIPE","ALRM","TERM","URG","STOP","TSTP","CONT","CLD","TTIN","TTOU","IO","XCPU","XFSZ","VTALRM","PROF","WINCH","LOST","USR1","USR2"                /**/
832
833 /* STDCHAR
834  *      This symbol is defined to be the type of char used in stdio.h.
835  *      It has the values "unsigned char" or "char".
836  */
837 #define STDCHAR unsigned char   /**/
838
839 /* UIDTYPE
840  *      This symbol has a value like uid_t, int, ushort, or whatever type is
841  *      used to declare user ids in the kernel.
842  */
843 #define UIDTYPE uid_t           /**/
844
845 /* VOIDHAVE
846  *      This symbol indicates how much support of the void type is given by this
847  *      compiler.  What various bits mean:
848  *
849  *          1 = supports declaration of void
850  *          2 = supports arrays of pointers to functions returning void
851  *          4 = supports comparisons between pointers to void functions and
852  *                  addresses of void functions
853  *
854  *      The package designer should define VOIDWANT to indicate the requirements
855  *      of the package.  This can be done either by #defining VOIDWANT before
856  *      including config.h, or by defining voidwant in Myinit.U.  If the level
857  *      of void support necessary is not present, config.h defines void to "int",
858  *      VOID to the empty string, and VOIDP to "char *".
859  */
860 /* void
861  *      This symbol is used for void casts.  On implementations which support
862  *      void appropriately, its value is "void".  Otherwise, its value maps
863  *      to "int".
864  */
865 /* VOID
866  *      This symbol's value is "void" if the implementation supports void
867  *      appropriately.  Otherwise, its value is the empty string.  The primary
868  *      use of this symbol is in specifying void parameter lists for function
869  *      prototypes.
870  */
871 /* VOIDP
872  *      This symbol is used for casting generic pointers.  On implementations
873  *      which support void appropriately, its value is "void *".  Otherwise,
874  *      its value is "char *".
875  */
876 #ifndef VOIDWANT
877 #define VOIDWANT 7
878 #endif
879 #define VOIDHAVE 7
880 #if (VOIDHAVE & VOIDWANT) != VOIDWANT
881 #define void int                /* is void to be avoided? */
882 #define VOID
883 #define VOIDP (char *)
884 #define M_VOID          /* Xenix strikes again */
885 #else
886 #define VOID void
887 #define VOIDP (void *)
888 #endif
889
890 /* PRIVLIB
891  *      This symbol contains the name of the private library for this package.
892  *      The library is private in the sense that it needn't be in anyone's
893  *      execution path, but it should be accessible by the world.  The program
894  *      should be prepared to do ~ expansion.
895  */
896 #define PRIVLIB "/usr/local/lib/perl"           /**/
897
898 #endif