"Fossies" - the Fresh Open Source Software Archive

Member "perl-5.30.3/NetWare/config_H.wc" (14 May 2020, 101154 Bytes) of package /linux/misc/perl-5.30.3.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "config_H.wc": 5.30.2_vs_5.30.3.

    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.U,v 3.0.1.5 1997/02/28 14:57:43 ram Exp $
   11  */
   12 
   13 /*
   14  * Package name      : perl5
   15  * Source directory  : 
   16  * Configuration time: Thu Jun 21 17:44:02 2001
   17  * Configured by     : Administrator
   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_AINTL:
   30  *  This symbol, if defined, indicates that the aintl routine is
   31  *  available.  If copysignl is also present we can emulate modfl.
   32  */
   33 /*#define HAS_AINTL     / **/
   34 
   35 /* HAS_ALARM:
   36  *  This symbol, if defined, indicates that the alarm routine is
   37  *  available.
   38  */
   39 /*#define HAS_ALARM     /**/
   40 
   41 /* HASATTRIBUTE:
   42  *  This symbol indicates the C compiler can check for function attributes,
   43  *  such as printf formats. This is normally only supported by GNU cc.
   44  */
   45 /*#define HASATTRIBUTE  /**/
   46 #ifndef HASATTRIBUTE
   47 #ifdef __attribute__
   48 #undef __attribute__
   49 #endif
   50 #define __attribute__(_arg_)
   51 #endif
   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 /* HAS_CRYPT:
   72  *  This symbol, if defined, indicates that the crypt routine is available
   73  *  to encrypt passwords and the like.
   74  */
   75 /*#define HAS_CRYPT     /**/
   76 
   77 /* HAS_CUSERID:
   78  *  This symbol, if defined, indicates that the cuserid routine is
   79  *  available to get character login names.
   80  */
   81 /*#define HAS_CUSERID       /**/
   82 
   83 /* HAS_DIFFTIME:
   84  *  This symbol, if defined, indicates that the difftime routine is
   85  *  available.
   86  */
   87 #define HAS_DIFFTIME        /**/
   88 
   89 /* HAS_DLERROR:
   90  *  This symbol, if defined, indicates that the dlerror routine is
   91  *  available to return a string describing the last error that
   92  *  occurred from a call to dlopen(), dlclose() or dlsym().
   93  */
   94 #define HAS_DLERROR /**/
   95 
   96 /* HAS_DUP2:
   97  *  This symbol, if defined, indicates that the dup2 routine is
   98  *  available to duplicate file descriptors.
   99  */
  100 #define HAS_DUP2    /**/
  101 
  102 /* HAS_FAST_STDIO:
  103  *  This symbol, if defined, indicates that the "fast stdio"
  104  *  is available to manipulate the stdio buffers directly.
  105  */
  106 /*#define HAS_FAST_STDIO        /**/
  107 
  108 /* HAS_FCHDIR:
  109  *  This symbol, if defined, indicates that the fchdir routine is
  110  *  available to change directory using a file descriptor.
  111  */
  112 /*#define HAS_FCHDIR        /**/
  113 
  114 /* HAS_FCHMOD:
  115  *  This symbol, if defined, indicates that the fchmod routine is available
  116  *  to change mode of opened files.  If unavailable, use chmod().
  117  */
  118 /*#define HAS_FCHMOD        /**/
  119 
  120 /* HAS_FCHOWN:
  121  *  This symbol, if defined, indicates that the fchown routine is available
  122  *  to change ownership of opened files.  If unavailable, use chown().
  123  */
  124 /*#define HAS_FCHOWN        /**/
  125 
  126 /* HAS_FCNTL:
  127  *  This symbol, if defined, indicates to the C program that
  128  *  the fcntl() function exists.
  129  */
  130 /*#define HAS_FCNTL     /**/
  131 
  132 /* HAS_FGETPOS:
  133  *  This symbol, if defined, indicates that the fgetpos routine is
  134  *  available to get the file position indicator, similar to ftell().
  135  */
  136 #define HAS_FGETPOS /**/
  137 
  138 /* HAS_FLOCK:
  139  *  This symbol, if defined, indicates that the flock routine is
  140  *  available to do file locking.
  141  */
  142 #define HAS_FLOCK       /**/
  143 
  144 /* HAS_FORK:
  145  *  This symbol, if defined, indicates that the fork routine is
  146  *  available.
  147  */
  148 /*#define HAS_FORK      /**/
  149 
  150 /* HAS_FSETPOS:
  151  *  This symbol, if defined, indicates that the fsetpos routine is
  152  *  available to set the file position indicator, similar to fseek().
  153  */
  154 #define HAS_FSETPOS /**/
  155 
  156 /* HAS_GETTIMEOFDAY:
  157  *  This symbol, if defined, indicates that the gettimeofday() system
  158  *  call is available for a sub-second accuracy clock. Usually, the file
  159  *  <sys/resource.h> needs to be included (see I_SYS_RESOURCE).
  160  *  The type "Timeval" should be used to refer to "struct timeval".
  161  */
  162 /*#define HAS_GETTIMEOFDAY  /**/
  163 #ifdef HAS_GETTIMEOFDAY
  164 #define Timeval struct timeval  /* Structure used by gettimeofday() */
  165 #endif
  166 
  167 /* HAS_GETGROUPS:
  168  *  This symbol, if defined, indicates that the getgroups() routine is
  169  *  available to get the list of process groups.  If unavailable, multiple
  170  *  groups are probably not supported.
  171  */
  172 /*#define HAS_GETGROUPS     /**/
  173 
  174 /* HAS_GETLOGIN:
  175  *  This symbol, if defined, indicates that the getlogin routine is
  176  *  available to get the login name.
  177  */
  178 #define HAS_GETLOGIN        /**/
  179 
  180 /* HAS_GETPGID:
  181  *  This symbol, if defined, indicates to the C program that 
  182  *  the getpgid(pid) function is available to get the
  183  *  process group id.
  184  */
  185 /*#define HAS_GETPGID       /**/
  186 
  187 /* HAS_GETPGRP2:
  188  *  This symbol, if defined, indicates that the getpgrp2() (as in DG/UX)
  189  *  routine is available to get the current process group.
  190  */
  191 /*#define HAS_GETPGRP2      /**/
  192 
  193 /* HAS_GETPPID:
  194  *  This symbol, if defined, indicates that the getppid routine is
  195  *  available to get the parent process ID.
  196  */
  197 /*#define HAS_GETPPID       /**/
  198 
  199 /* HAS_GETPRIORITY:
  200  *  This symbol, if defined, indicates that the getpriority routine is
  201  *  available to get a process's priority.
  202  */
  203 /*#define HAS_GETPRIORITY       /**/
  204 
  205 /* HAS_INET_ATON:
  206  *  This symbol, if defined, indicates to the C program that the
  207  *  inet_aton() function is available to parse IP address "dotted-quad"
  208  *  strings.
  209  */
  210 /*#define HAS_INET_ATON     /**/
  211 
  212 /* HAS_KILLPG:
  213  *  This symbol, if defined, indicates that the killpg routine is available
  214  *  to kill process groups.  If unavailable, you probably should use kill
  215  *  with a negative process number.
  216  */
  217 /*#define HAS_KILLPG    /**/
  218 
  219 /* HAS_LINK:
  220  *  This symbol, if defined, indicates that the link routine is
  221  *  available to create hard links.
  222  */
  223 #define HAS_LINK    /**/
  224 
  225 /* HAS_LOCALECONV:
  226  *  This symbol, if defined, indicates that the localeconv routine is
  227  *  available for numeric and monetary formatting conventions.
  228  */
  229 #define HAS_LOCALECONV  /**/
  230 
  231 /* HAS_LOCKF:
  232  *  This symbol, if defined, indicates that the lockf routine is
  233  *  available to do file locking.
  234  */
  235 /*#define HAS_LOCKF     /**/
  236 
  237 /* HAS_LSTAT:
  238  *  This symbol, if defined, indicates that the lstat routine is
  239  *  available to do file stats on symbolic links.
  240  */
  241 /*#define HAS_LSTAT     /**/
  242 
  243 /* HAS_MBLEN:
  244  *  This symbol, if defined, indicates that the mblen routine is available
  245  *  to find the number of bytes in a multibye character.
  246  */
  247 #define HAS_MBLEN       /**/
  248 
  249 /* HAS_MBSTOWCS:
  250  *  This symbol, if defined, indicates that the mbstowcs routine is
  251  *  available to covert a multibyte string into a wide character string.
  252  */
  253 #define HAS_MBSTOWCS        /**/
  254 
  255 /* HAS_MBTOWC:
  256  *  This symbol, if defined, indicates that the mbtowc routine is available
  257  *  to covert a multibyte to a wide character.
  258  */
  259 #define HAS_MBTOWC      /**/
  260 
  261 /* HAS_MKDIR:
  262  *  This symbol, if defined, indicates that the mkdir routine is available
  263  *  to create directories.  Otherwise you should fork off a new process to
  264  *  exec /bin/mkdir.
  265  */
  266 #define HAS_MKDIR       /**/
  267 
  268 /* HAS_MKFIFO:
  269  *  This symbol, if defined, indicates that the mkfifo routine is
  270  *  available to create FIFOs. Otherwise, mknod should be able to
  271  *  do it for you. However, if mkfifo is there, mknod might require
  272  *  super-user privileges which mkfifo will not.
  273  */
  274 /*#define HAS_MKFIFO        /**/
  275 
  276 /* HAS_MKTIME:
  277  *  This symbol, if defined, indicates that the mktime routine is
  278  *  available.
  279  */
  280 #define HAS_MKTIME      /**/
  281 
  282 /* HAS_MSYNC:
  283  *  This symbol, if defined, indicates that the msync system call is
  284  *  available to synchronize a mapped file.
  285  */
  286 /*#define HAS_MSYNC     /**/
  287 
  288 /* HAS_MUNMAP:
  289  *  This symbol, if defined, indicates that the munmap system call is
  290  *  available to unmap a region, usually mapped by mmap().
  291  */
  292 /*#define HAS_MUNMAP        /**/
  293 
  294 /* HAS_NICE:
  295  *  This symbol, if defined, indicates that the nice routine is
  296  *  available.
  297  */
  298 /*#define HAS_NICE      /**/
  299 
  300 /* HAS_PATHCONF:
  301  *  This symbol, if defined, indicates that pathconf() is available
  302  *  to determine file-system related limits and options associated
  303  *  with a given filename.
  304  */
  305 /* HAS_FPATHCONF:
  306  *  This symbol, if defined, indicates that pathconf() is available
  307  *  to determine file-system related limits and options associated
  308  *  with a given open file descriptor.
  309  */
  310 /*#define HAS_PATHCONF      /**/
  311 /*#define HAS_FPATHCONF     /**/
  312 
  313 /* HAS_PAUSE:
  314  *  This symbol, if defined, indicates that the pause routine is
  315  *  available to suspend a process until a signal is received.
  316  */
  317 /*#define HAS_PAUSE     /**/
  318 
  319 /* HAS_PIPE:
  320  *  This symbol, if defined, indicates that the pipe routine is
  321  *  available to create an inter-process channel.
  322  */
  323 #define HAS_PIPE        /**/
  324 
  325 /* HAS_POLL:
  326  *  This symbol, if defined, indicates that the poll routine is
  327  *  available to poll active file descriptors. You may safely
  328  *  include <poll.h> when this symbol is defined.
  329  */
  330 /*#define HAS_POLL      /**/
  331 
  332 /* HAS_READDIR:
  333  *  This symbol, if defined, indicates that the readdir routine is
  334  *  available to read directory entries. You may have to include
  335  *  <dirent.h>. See I_DIRENT.
  336  */
  337 #define HAS_READDIR     /**/
  338 
  339 /* HAS_SEEKDIR:
  340  *  This symbol, if defined, indicates that the seekdir routine is
  341  *  available. You may have to include <dirent.h>. See I_DIRENT.
  342  */
  343 #define HAS_SEEKDIR     /**/
  344 
  345 /* HAS_TELLDIR:
  346  *  This symbol, if defined, indicates that the telldir routine is
  347  *  available. You may have to include <dirent.h>. See I_DIRENT.
  348  */
  349 #define HAS_TELLDIR     /**/
  350 
  351 /* HAS_REWINDDIR:
  352  *  This symbol, if defined, indicates that the rewinddir routine is
  353  *  available. You may have to include <dirent.h>. See I_DIRENT.
  354  */
  355 #define HAS_REWINDDIR       /**/
  356 
  357 /* HAS_READLINK:
  358  *  This symbol, if defined, indicates that the readlink routine is
  359  *  available to read the value of a symbolic link.
  360  */
  361 /*#define HAS_READLINK      /**/
  362 
  363 /* HAS_RENAME:
  364  *  This symbol, if defined, indicates that the rename routine is available
  365  *  to rename files.  Otherwise you should do the unlink(), link(), unlink()
  366  *  trick.
  367  */
  368 #define HAS_RENAME  /**/
  369 
  370 /* HAS_RMDIR:
  371  *  This symbol, if defined, indicates that the rmdir routine is
  372  *  available to remove directories. Otherwise you should fork off a
  373  *  new process to exec /bin/rmdir.
  374  */
  375 #define HAS_RMDIR       /**/
  376 
  377 /* HAS_SELECT:
  378  *  This symbol, if defined, indicates that the select routine is
  379  *  available to select active file descriptors. If the timeout field
  380  *  is used, <sys/time.h> may need to be included.
  381  */
  382 #define HAS_SELECT  /**/
  383 
  384 /* HAS_SETEGID:
  385  *  This symbol, if defined, indicates that the setegid routine is available
  386  *  to change the effective gid of the current program.
  387  */
  388 /*#define HAS_SETEGID       /**/
  389 
  390 /* HAS_SETEUID:
  391  *  This symbol, if defined, indicates that the seteuid routine is available
  392  *  to change the effective uid of the current program.
  393  */
  394 /*#define HAS_SETEUID       /**/
  395 
  396 /* HAS_SETLINEBUF:
  397  *  This symbol, if defined, indicates that the setlinebuf routine is
  398  *  available to change stderr or stdout from block-buffered or unbuffered
  399  *  to a line-buffered mode.
  400  */
  401 /*#define HAS_SETLINEBUF        /**/
  402 
  403 /* HAS_SETLOCALE:
  404  *  This symbol, if defined, indicates that the setlocale routine is
  405  *  available to handle locale-specific ctype implementations.
  406  */
  407 #define HAS_SETLOCALE   /**/
  408 
  409 /* HAS_SETPGID:
  410  *  This symbol, if defined, indicates that the setpgid(pid, gpid)
  411  *  routine is available to set process group ID.
  412  */
  413 /*#define HAS_SETPGID   /**/
  414 
  415 /* HAS_SETPGRP2:
  416  *  This symbol, if defined, indicates that the setpgrp2() (as in DG/UX)
  417  *  routine is available to set the current process group.
  418  */
  419 /*#define HAS_SETPGRP2      /**/
  420 
  421 /* HAS_SETPRIORITY:
  422  *  This symbol, if defined, indicates that the setpriority routine is
  423  *  available to set a process's priority.
  424  */
  425 /*#define HAS_SETPRIORITY       /**/
  426 
  427 /* HAS_SETREGID:
  428  *  This symbol, if defined, indicates that the setregid routine is
  429  *  available to change the real and effective gid of the current
  430  *  process.
  431  */
  432 /* HAS_SETRESGID:
  433  *  This symbol, if defined, indicates that the setresgid routine is
  434  *  available to change the real, effective and saved gid of the current
  435  *  process.
  436  */
  437 /*#define HAS_SETREGID      /**/
  438 /*#define HAS_SETRESGID     /**/
  439 
  440 /* HAS_SETREUID:
  441  *  This symbol, if defined, indicates that the setreuid routine is
  442  *  available to change the real and effective uid of the current
  443  *  process.
  444  */
  445 /* HAS_SETRESUID:
  446  *  This symbol, if defined, indicates that the setresuid routine is
  447  *  available to change the real, effective and saved uid of the current
  448  *  process.
  449  */
  450 /*#define HAS_SETREUID      /**/
  451 /*#define HAS_SETRESUID     /**/
  452 
  453 /* HAS_SETRGID:
  454  *  This symbol, if defined, indicates that the setrgid routine is available
  455  *  to change the real gid of the current program.
  456  */
  457 /*#define HAS_SETRGID       /**/
  458 
  459 /* HAS_SETRUID:
  460  *  This symbol, if defined, indicates that the setruid routine is available
  461  *  to change the real uid of the current program.
  462  */
  463 /*#define HAS_SETRUID       /**/
  464 
  465 /* HAS_SETSID:
  466  *  This symbol, if defined, indicates that the setsid routine is
  467  *  available to set the process group ID.
  468  */
  469 /*#define HAS_SETSID    /**/
  470 
  471 /* Shmat_t:
  472  *  This symbol holds the return type of the shmat() system call.
  473  *  Usually set to 'void *' or 'char *'.
  474  */
  475 /* HAS_SHMAT_PROTOTYPE:
  476  *  This symbol, if defined, indicates that the sys/shm.h includes
  477  *  a prototype for shmat().  Otherwise, it is up to the program to
  478  *  guess one.  Shmat_t shmat(int, Shmat_t, int) is a good guess,
  479  *  but not always right so it should be emitted by the program only
  480  *  when HAS_SHMAT_PROTOTYPE is not defined to avoid conflicting defs.
  481  */
  482 #define Shmat_t void *  /**/
  483 /*#define HAS_SHMAT_PROTOTYPE   /**/
  484 
  485 /* HAS_STRCOLL:
  486  *  This symbol, if defined, indicates that the strcoll routine is
  487  *  available to compare strings using collating information.
  488  */
  489 #define HAS_STRCOLL /**/
  490 
  491 /* HAS_STRTOD:
  492  *  This symbol, if defined, indicates that the strtod routine is
  493  *  available to provide better numeric string conversion than atof().
  494  */
  495 #define HAS_STRTOD  /**/
  496 
  497 /* HAS_STRTOL:
  498  *  This symbol, if defined, indicates that the strtol routine is available
  499  *  to provide better numeric string conversion than atoi() and friends.
  500  */
  501 #define HAS_STRTOL  /**/
  502 
  503 /* HAS_STRXFRM:
  504  *  This symbol, if defined, indicates that the strxfrm() routine is
  505  *  available to transform strings.
  506  */
  507 #define HAS_STRXFRM /**/
  508 
  509 /* HAS_SYMLINK:
  510  *  This symbol, if defined, indicates that the symlink routine is available
  511  *  to create symbolic links.
  512  */
  513 /*#define HAS_SYMLINK   /**/
  514 
  515 /* HAS_SYSCALL:
  516  *  This symbol, if defined, indicates that the syscall routine is
  517  *  available to call arbitrary system calls. If undefined, that's tough.
  518  */
  519 /*#define HAS_SYSCALL   /**/
  520 
  521 /* HAS_SYSCONF:
  522  *  This symbol, if defined, indicates that sysconf() is available
  523  *  to determine system related limits and options.
  524  */
  525 /*#define HAS_SYSCONF   /**/
  526 
  527 /* HAS_SYSTEM:
  528  *  This symbol, if defined, indicates that the system routine is
  529  *  available to issue a shell command.
  530  */
  531 #define HAS_SYSTEM  /**/
  532 
  533 /* HAS_TCGETPGRP:
  534  *  This symbol, if defined, indicates that the tcgetpgrp routine is
  535  *  available to get foreground process group ID.
  536  */
  537 /*#define HAS_TCGETPGRP     /**/
  538 
  539 /* HAS_TCSETPGRP:
  540  *  This symbol, if defined, indicates that the tcsetpgrp routine is
  541  *  available to set foreground process group ID.
  542  */
  543 /*#define HAS_TCSETPGRP     /**/
  544 
  545 /* HAS_TRUNCATE:
  546  *  This symbol, if defined, indicates that the truncate routine is
  547  *  available to truncate files.
  548  */
  549 /*#define HAS_TRUNCATE  /**/
  550 
  551 /* HAS_TZNAME:
  552  *  This symbol, if defined, indicates that the tzname[] array is
  553  *  available to access timezone names.
  554  */
  555 #define HAS_TZNAME      /**/
  556 
  557 /* HAS_UMASK:
  558  *  This symbol, if defined, indicates that the umask routine is
  559  *  available to set and get the value of the file creation mask.
  560  */
  561 #define HAS_UMASK       /**/
  562 
  563 /* HAS_USLEEP:
  564  *  This symbol, if defined, indicates that the usleep routine is
  565  *  available to let the process sleep on a sub-second accuracy.
  566  */
  567 /*#define HAS_USLEEP        /**/
  568 
  569 /* HAS_WAIT4:
  570  *  This symbol, if defined, indicates that wait4() exists.
  571  */
  572 /*#define HAS_WAIT4 /**/
  573 
  574 /* HAS_WAITPID:
  575  *  This symbol, if defined, indicates that the waitpid routine is
  576  *  available to wait for child process.
  577  */
  578 #define HAS_WAITPID /**/
  579 
  580 /* HAS_WCSTOMBS:
  581  *  This symbol, if defined, indicates that the wcstombs routine is
  582  *  available to convert wide character strings to multibyte strings.
  583  */
  584 #define HAS_WCSTOMBS    /**/
  585 
  586 /* HAS_WCTOMB:
  587  *  This symbol, if defined, indicates that the wctomb routine is available
  588  *  to covert a wide character to a multibyte.
  589  */
  590 #define HAS_WCTOMB      /**/
  591 
  592 /* I_ARPA_INET:
  593  *  This symbol, if defined, indicates to the C program that it should
  594  *  include <arpa/inet.h> to get inet_addr and friends declarations.
  595  */
  596 #define I_ARPA_INET     /**/
  597 
  598 /* I_DBM:
  599  *  This symbol, if defined, indicates that <dbm.h> exists and should
  600  *  be included.
  601  */
  602 /* I_RPCSVC_DBM:
  603  *  This symbol, if defined, indicates that <rpcsvc/dbm.h> exists and
  604  *  should be included.
  605  */
  606 /*#define I_DBM /**/
  607 #define I_RPCSVC_DBM    /**/
  608 
  609 /* I_DIRENT:
  610  *  This symbol, if defined, indicates to the C program that it should
  611  *  include <dirent.h>. Using this symbol also triggers the definition
  612  *  of the Direntry_t define which ends up being 'struct dirent' or
  613  *  'struct direct' depending on the availability of <dirent.h>.
  614  */
  615 /* DIRNAMLEN:
  616  *  This symbol, if defined, indicates to the C program that the length
  617  *  of directory entry names is provided by a d_namlen field.  Otherwise
  618  *  you need to do strlen() on the d_name field.
  619  */
  620 /* Direntry_t:
  621  *  This symbol is set to 'struct direct' or 'struct dirent' depending on
  622  *  whether dirent is available or not. You should use this pseudo type to
  623  *  portably declare your directory entries.
  624  */
  625 #define I_DIRENT        /**/
  626 /*#define DIRNAMLEN /**/
  627 #define Direntry_t DIR
  628 
  629 /* I_DLFCN:
  630  *  This symbol, if defined, indicates that <dlfcn.h> exists and should
  631  *  be included.
  632  */
  633 #define I_DLFCN     /**/
  634 
  635 /* I_FCNTL:
  636  *  This manifest constant tells the C program to include <fcntl.h>.
  637  */
  638 #define I_FCNTL /**/
  639 
  640 /* I_LOCALE:
  641  *  This symbol, if defined, indicates to the C program that it should
  642  *  include <locale.h>.
  643  */
  644 #define I_LOCALE        /**/
  645 
  646 /* I_NDBM:
  647  *  This symbol, if defined, indicates that <ndbm.h> exists and should
  648  *  be included.
  649  */
  650 /*#define I_NDBM    /**/
  651 
  652 /* I_NET_ERRNO:
  653  *  This symbol, if defined, indicates that <net/errno.h> exists and 
  654  *  should be included.
  655  */
  656 /*#define I_NET_ERRNO       /**/
  657 
  658 /* I_NETINET_IN:
  659  *  This symbol, if defined, indicates to the C program that it should
  660  *  include <netinet/in.h>. Otherwise, you may try <sys/in.h>.
  661  */
  662 #define I_NETINET_IN    /**/
  663 
  664 /* I_SYS_DIR:
  665  *  This symbol, if defined, indicates to the C program that it should
  666  *  include <sys/dir.h>.
  667  */
  668 /*#define I_SYS_DIR     /**/
  669 
  670 /* I_SYS_FILE:
  671  *  This symbol, if defined, indicates to the C program that it should
  672  *  include <sys/file.h> to get definition of R_OK and friends.
  673  */
  674 /*#define I_SYS_FILE        /**/
  675 
  676 /* I_SYS_IOCTL:
  677  *  This symbol, if defined, indicates that <sys/ioctl.h> exists and should
  678  *  be included. Otherwise, include <sgtty.h> or <termio.h>.
  679  */
  680 /* I_SYS_SOCKIO:
  681  *  This symbol, if defined, indicates the <sys/sockio.h> should be included
  682  *  to get socket ioctl options, like SIOCATMARK.
  683  */
  684 #define I_SYS_IOCTL     /**/
  685 #define I_SYS_SOCKIO    /**/
  686 
  687 /* I_SYS_NDIR:
  688  *  This symbol, if defined, indicates to the C program that it should
  689  *  include <sys/ndir.h>.
  690  */
  691 /*#define I_SYS_NDIR    /**/
  692 
  693 /* I_SYS_PARAM:
  694  *  This symbol, if defined, indicates to the C program that it should
  695  *  include <sys/param.h>.
  696  */
  697 /*#define I_SYS_PARAM       /**/
  698 
  699 /* I_SYS_RESOURCE:
  700  *  This symbol, if defined, indicates to the C program that it should
  701  *  include <sys/resource.h>.
  702  */
  703 /*#define I_SYS_RESOURCE        /**/
  704 
  705 /* I_SYS_SELECT:
  706  *  This symbol, if defined, indicates to the C program that it should
  707  *  include <sys/select.h> in order to get definition of struct timeval.
  708  */
  709 /*#define I_SYS_SELECT  /**/
  710 
  711 /* I_SYS_STAT:
  712  *  This symbol, if defined, indicates to the C program that it should
  713  *  include <sys/stat.h>.
  714  */
  715 #define I_SYS_STAT      /**/
  716 
  717 /* I_SYS_TIMES:
  718  *  This symbol, if defined, indicates to the C program that it should
  719  *  include <sys/times.h>.
  720  */
  721 /*#define   I_SYS_TIMES     /**/
  722 
  723 /* I_SYS_TYPES:
  724  *  This symbol, if defined, indicates to the C program that it should
  725  *  include <sys/types.h>.
  726  */
  727 #define I_SYS_TYPES     /**/
  728 
  729 /* I_SYS_UN:
  730  *  This symbol, if defined, indicates to the C program that it should
  731  *  include <sys/un.h> to get UNIX domain socket definitions.
  732  */
  733 /*#define I_SYS_UN      /**/
  734 
  735 /* I_SYS_WAIT:
  736  *  This symbol, if defined, indicates to the C program that it should
  737  *  include <sys/wait.h>.
  738  */
  739 /*#define I_SYS_WAIT    /**/
  740 
  741 /* I_TERMIO:
  742  *  This symbol, if defined, indicates that the program should include
  743  *  <termio.h> rather than <sgtty.h>.  There are also differences in
  744  *  the ioctl() calls that depend on the value of this symbol.
  745  */
  746 /* I_TERMIOS:
  747  *  This symbol, if defined, indicates that the program should include
  748  *  the POSIX termios.h rather than sgtty.h or termio.h.
  749  *  There are also differences in the ioctl() calls that depend on the
  750  *  value of this symbol.
  751  */
  752 /* I_SGTTY:
  753  *  This symbol, if defined, indicates that the program should include
  754  *  <sgtty.h> rather than <termio.h>.  There are also differences in
  755  *  the ioctl() calls that depend on the value of this symbol.
  756  */
  757 /*#define I_TERMIO      /**/
  758 /*#define I_TERMIOS     /**/
  759 /*#define I_SGTTY       /**/
  760 
  761 /* I_UNISTD:
  762  *  This symbol, if defined, indicates to the C program that it should
  763  *  include <unistd.h>.
  764  */
  765 /*#define I_UNISTD      /**/
  766 
  767 /* I_UTIME:
  768  *  This symbol, if defined, indicates to the C program that it should
  769  *  include <utime.h>.
  770  */
  771 #define I_UTIME     /**/
  772 
  773 /* I_VFORK:
  774  *  This symbol, if defined, indicates to the C program that it should
  775  *  include vfork.h.
  776  */
  777 /*#define I_VFORK   /**/
  778 
  779 /* SH_PATH:
  780  *  This symbol contains the full pathname to the shell used on this
  781  *  on this system to execute Bourne shell scripts.  Usually, this will be
  782  *  /bin/sh, though it's possible that some systems will have /bin/ksh,
  783  *  /bin/pdksh, /bin/ash, /bin/bash, or even something such as
  784  *  D:/bin/sh.exe.
  785  */
  786 #define SH_PATH "cmd /x /c"  /**/
  787 
  788 /* INTSIZE:
  789  *  This symbol contains the value of sizeof(int) so that the C
  790  *  preprocessor can make decisions based on it.
  791  */
  792 /* LONGSIZE:
  793  *  This symbol contains the value of sizeof(long) so that the C
  794  *  preprocessor can make decisions based on it.
  795  */
  796 /* SHORTSIZE:
  797  *  This symbol contains the value of sizeof(short) so that the C
  798  *  preprocessor can make decisions based on it.
  799  */
  800 #define INTSIZE 4       /**/
  801 #define LONGSIZE 4      /**/
  802 #define SHORTSIZE 2     /**/
  803 
  804 /* MULTIARCH:
  805  *  This symbol, if defined, signifies that the build
  806  *  process will produce some binary files that are going to be
  807  *  used in a cross-platform environment.  This is the case for
  808  *  example with the NeXT "fat" binaries that contain executables
  809  *  for several CPUs.
  810  */
  811 /*#define MULTIARCH     /**/
  812 
  813 /* HAS_QUAD:
  814  *  This symbol, if defined, tells that there's a 64-bit integer type,
  815  *  Quad_t, and its unsigned counterpart, Uquad_t. QUADKIND will be one
  816  *  of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, or QUAD_IS_INT64_T.
  817  */
  818 /*#define HAS_QUAD  /**/
  819 #ifdef HAS_QUAD
  820 #   define Quad_t __int64   /**/
  821 #   define Uquad_t unsigned __int64 /**/
  822 #   define QUADKIND 5   /**/
  823 #   define QUAD_IS_INT  1
  824 #   define QUAD_IS_LONG 2
  825 #   define QUAD_IS_LONG_LONG    3
  826 #   define QUAD_IS_INT64_T  4
  827 #endif
  828 
  829 /* HAS_ACCESSX:
  830  *  This symbol, if defined, indicates that the accessx routine is
  831  *  available to do extended access checks.
  832  */
  833 /*#define HAS_ACCESSX       /**/
  834 
  835 /* HAS_EACCESS:
  836  *  This symbol, if defined, indicates that the eaccess routine is
  837  *  available to do extended access checks.
  838  */
  839 /*#define HAS_EACCESS       /**/
  840 
  841 /* I_SYS_ACCESS:
  842  *     This symbol, if defined, indicates to the C program that it should
  843  *     include <sys/access.h>.
  844  */
  845 /*#define   I_SYS_ACCESS                /**/
  846 
  847 /* I_SYS_SECURITY:
  848  *     This symbol, if defined, indicates to the C program that it should
  849  *     include <sys/security.h>.
  850  */
  851 /*#define   I_SYS_SECURITY  /**/
  852 
  853 /* OSNAME:
  854  *  This symbol contains the name of the operating system, as determined
  855  *  by Configure.  You shouldn't rely on it too much; the specific
  856  *  feature tests from Configure are generally more reliable.
  857  */
  858 /* OSVERS:
  859  *  This symbol contains the version of the operating system, as determined
  860  *  by Configure.  You shouldn't rely on it too much; the specific
  861  *  feature tests from Configure are generally more reliable.
  862  */
  863 #define OSNAME "NetWare"        /**/
  864 #define OSVERS "5.x"        /**/
  865 
  866 /* MEM_ALIGNBYTES:
  867  *  This symbol contains the number of bytes required to align a
  868  *  double, or a long double when applicable. Usual values are 2,
  869  *  4 and 8. The default is eight, for safety.
  870  */
  871 #if defined(MULTIARCH)
  872 #  define MEM_ALIGNBYTES 8
  873 #else
  874 #define MEM_ALIGNBYTES 8
  875 #endif
  876 
  877 /* ARCHLIB:
  878  *  This variable, if defined, holds the name of the directory in
  879  *  which the user wants to put architecture-dependent public
  880  *  library files for perl5.  It is most often a local directory
  881  *  such as /usr/local/lib.  Programs using this variable must be
  882  *  prepared to deal with filename expansion.  If ARCHLIB is the
  883  *  same as PRIVLIB, it is not defined, since presumably the
  884  *  program already searches PRIVLIB.
  885  */
  886 /* ARCHLIB_EXP:
  887  *  This symbol contains the ~name expanded version of ARCHLIB, to be used
  888  *  in programs that are not prepared to deal with ~ expansion at run-time.
  889  */
  890 #define ARCHLIB "c:\\perl\\5.30.3\\lib\\NetWare-x86-multi-thread"       /**/
  891 /*#define ARCHLIB_EXP ""    /**/
  892 
  893 /* ARCHNAME:
  894  *  This symbol holds a string representing the architecture name.
  895  *  It may be used to construct an architecture-dependant pathname
  896  *  where library files may be held under a private library, for
  897  *  instance.
  898  */
  899 #define ARCHNAME "NetWare-x86-multi-thread"     /**/
  900 
  901 /* HAS_ATOLF:
  902  *  This symbol, if defined, indicates that the atolf routine is
  903  *  available to convert strings into long doubles.
  904  */
  905 /*#define HAS_ATOLF     /**/
  906 
  907 /* HAS_ATOLL:
  908  *  This symbol, if defined, indicates that the atoll routine is
  909  *  available to convert strings into long longs.
  910  */
  911 /*#define HAS_ATOLL     /**/
  912 
  913 /* BIN:
  914  *  This symbol holds the path of the bin directory where the package will
  915  *  be installed. Program must be prepared to deal with ~name substitution.
  916  */
  917 /* BIN_EXP:
  918  *  This symbol is the filename expanded version of the BIN symbol, for
  919  *  programs that do not want to deal with that at run-time.
  920  */
  921 #define BIN "c:\\perl\\5.30.3\\bin\\NetWare-x86-multi-thread"   /**/
  922 #define BIN_EXP "c:\\perl\\5.30.3\\bin\\NetWare-x86-multi-thread"   /**/
  923 
  924 /* BYTEORDER:
  925  *  This symbol holds the hexadecimal constant defined in byteorder,
  926  *  i.e. 0x1234 or 0x4321, etc...
  927  *  If the compiler supports cross-compiling or multiple-architecture
  928  *  binaries (eg. on NeXT systems), use compiler-defined macros to
  929  *  determine the byte order.
  930  *  On NeXT 3.2 (and greater), you can build "Fat" Multiple Architecture
  931  *  Binaries (MAB) on either big endian or little endian machines.
  932  *  The endian-ness is available at compile-time.  This only matters
  933  *  for perl, where the config.h can be generated and installed on 
  934  *  one system, and used by a different architecture to build an
  935  *  extension.  Older versions of NeXT that might not have
  936  *  defined either *_ENDIAN__ were all on Motorola 680x0 series,
  937  *  so the default case (for NeXT) is big endian to catch them. 
  938  *  This might matter for NeXT 3.0.
  939  */
  940 #if defined(MULTIARCH)
  941 #  ifdef __LITTLE_ENDIAN__
  942 #    if LONGSIZE == 4
  943 #      define BYTEORDER 0x1234
  944 #    else
  945 #      if LONGSIZE == 8
  946 #        define BYTEORDER 0x12345678
  947 #      endif
  948 #    endif
  949 #  else
  950 #    ifdef __BIG_ENDIAN__
  951 #      if LONGSIZE == 4
  952 #        define BYTEORDER 0x4321
  953 #      else
  954 #        if LONGSIZE == 8
  955 #          define BYTEORDER 0x87654321
  956 #        endif
  957 #      endif
  958 #    endif
  959 #  endif
  960 #  if !defined(BYTEORDER) && (defined(NeXT) || defined(__NeXT__))
  961 #    define BYTEORDER 0x4321
  962 #  endif
  963 #else
  964 #define BYTEORDER 0x1234    /* large digits for MSB */
  965 #endif /* NeXT */
  966 
  967 /* CAT2:
  968  *  This macro catenates 2 tokens together.
  969  */
  970 /* STRINGIFY:
  971  *  This macro surrounds its token with double quotes.
  972  */
  973 #if 42 == 1
  974 #define CAT2(a,b)   a/**/b
  975 #define STRINGIFY(a)    "a"
  976         /* If you can get stringification with catify, tell me how! */
  977 #endif
  978 #if 42 == 42
  979 #define PeRl_CaTiFy(a, b)   a ## b  
  980 #define PeRl_StGiFy(a)  #a
  981 /* the additional level of indirection enables these macros to be
  982  * used as arguments to other macros.  See K&R 2nd ed., page 231. */
  983 #define CAT2(a,b)   PeRl_CaTiFy(a,b)
  984 #define StGiFy(a)   PeRl_StGiFy(a)
  985 #define STRINGIFY(a)    PeRl_StGiFy(a)
  986 #endif
  987 #if 42 != 1 && 42 != 42
  988 #   include "Bletch: How does this C preprocessor concatenate tokens?"
  989 #endif
  990 
  991 /* CPPSTDIN:
  992  *  This symbol contains the first part of the string which will invoke
  993  *  the C preprocessor on the standard input and produce to standard
  994  *  output.  Typical value of "cc -E" or "/lib/cpp", but it can also
  995  *  call a wrapper. See CPPRUN.
  996  */
  997 /* CPPMINUS:
  998  *  This symbol contains the second part of the string which will invoke
  999  *  the C preprocessor on the standard input and produce to standard
 1000  *  output.  This symbol will have the value "-" if CPPSTDIN needs a minus
 1001  *  to specify standard input, otherwise the value is "".
 1002  */
 1003 /* CPPRUN:
 1004  *  This symbol contains the string which will invoke a C preprocessor on
 1005  *  the standard input and produce to standard output. It needs to end
 1006  *  with CPPLAST, after all other preprocessor flags have been specified.
 1007  *  The main difference with CPPSTDIN is that this program will never be a
 1008  *  pointer to a shell wrapper, i.e. it will be empty if no preprocessor is
 1009  *  available directly to the user. Note that it may well be different from
 1010  *  the preprocessor used to compile the C program.
 1011  */
 1012 /* CPPLAST:
 1013  *  This symbol is intended to be used along with CPPRUN in the same manner
 1014  *  symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
 1015  */
 1016 #define CPPSTDIN "cl -nologo -E"
 1017 #define CPPMINUS ""
 1018 #define CPPRUN "cl -nologo -E"
 1019 #define CPPLAST ""
 1020 
 1021 /* HAS__FWALK:
 1022  *  This symbol, if defined, indicates that the _fwalk system call is
 1023  *  available to apply a function to all the file handles.
 1024  */
 1025 /*#define HAS__FWALK        /**/
 1026 
 1027 /* HAS_ACCESS:
 1028  *  This manifest constant lets the C program know that the access()
 1029  *  system call is available to check for accessibility using real UID/GID.
 1030  *  (always present on UNIX.)
 1031  */
 1032 #define HAS_ACCESS      /**/
 1033 
 1034 /* CASTI32:
 1035  *  This symbol is defined if the C compiler can cast negative
 1036  *  or large floating point numbers to 32-bit ints.
 1037  */
 1038 /*#define   CASTI32     /**/
 1039 
 1040 /* CASTNEGFLOAT:
 1041  *  This symbol is defined if the C compiler can cast negative
 1042  *  numbers to unsigned longs, ints and shorts.
 1043  */
 1044 /* CASTFLAGS:
 1045  *  This symbol contains flags that say what difficulties the compiler
 1046  *  has casting odd floating values to unsigned long:
 1047  *      0 = ok
 1048  *      1 = couldn't cast < 0
 1049  *      2 = couldn't cast >= 0x80000000
 1050  *      4 = couldn't cast in argument expression list
 1051  */
 1052 #define CASTNEGFLOAT        /**/
 1053 #define CASTFLAGS 0     /**/
 1054 
 1055 /* VOID_CLOSEDIR:
 1056  *  This symbol, if defined, indicates that the closedir() routine
 1057  *  does not return a value.
 1058  */
 1059 /*#define VOID_CLOSEDIR     /**/
 1060 
 1061 /* HAS_STRUCT_CMSGHDR:
 1062  *  This symbol, if defined, indicates that the struct cmsghdr
 1063  *  is supported.
 1064  */
 1065 /*#define HAS_STRUCT_CMSGHDR    /**/
 1066 
 1067 /* HAS_CSH:
 1068  *  This symbol, if defined, indicates that the C-shell exists.
 1069  */
 1070 /* CSH:
 1071  *  This symbol, if defined, contains the full pathname of csh.
 1072  */
 1073 /*#define HAS_CSH       /**/
 1074 #ifdef HAS_CSH
 1075 #define CSH ""  /**/
 1076 #endif
 1077 
 1078 /* DLSYM_NEEDS_UNDERSCORE:
 1079  *  This symbol, if defined, indicates that we need to prepend an
 1080  *  underscore to the symbol name before calling dlsym().  This only
 1081  *  makes sense if you *have* dlsym, which we will presume is the
 1082  *  case if you're using dl_dlopen.xs.
 1083  */
 1084 /*#define   DLSYM_NEEDS_UNDERSCORE  /**/
 1085 
 1086 /* HAS_DRAND48_PROTO:
 1087  *  This symbol, if defined, indicates that the system provides
 1088  *  a prototype for the drand48() function.  Otherwise, it is up
 1089  *  to the program to supply one.  A good guess is
 1090  *      extern double drand48(void);
 1091  */
 1092 /*#define   HAS_DRAND48_PROTO   /**/
 1093 
 1094 /* HAS_ENDGRENT:
 1095  *  This symbol, if defined, indicates that the getgrent routine is
 1096  *  available for finalizing sequential access of the group database.
 1097  */
 1098 /*#define HAS_ENDGRENT      /**/
 1099 
 1100 /* HAS_ENDHOSTENT:
 1101  *  This symbol, if defined, indicates that the endhostent() routine is
 1102  *  available to close whatever was being used for host queries.
 1103  */
 1104 /*#define HAS_ENDHOSTENT        /**/
 1105 
 1106 /* HAS_ENDNETENT:
 1107  *  This symbol, if defined, indicates that the endnetent() routine is
 1108  *  available to close whatever was being used for network queries.
 1109  */
 1110 /*#define HAS_ENDNETENT     /**/
 1111 
 1112 /* HAS_ENDPROTOENT:
 1113  *  This symbol, if defined, indicates that the endprotoent() routine is
 1114  *  available to close whatever was being used for protocol queries.
 1115  */
 1116 /*#define HAS_ENDPROTOENT       /**/
 1117 
 1118 /* HAS_ENDPWENT:
 1119  *  This symbol, if defined, indicates that the getgrent routine is
 1120  *  available for finalizing sequential access of the passwd database.
 1121  */
 1122 /*#define HAS_ENDPWENT      /**/
 1123 
 1124 /* HAS_ENDSERVENT:
 1125  *  This symbol, if defined, indicates that the endservent() routine is
 1126  *  available to close whatever was being used for service queries.
 1127  */
 1128 /*#define HAS_ENDSERVENT        /**/
 1129 
 1130 /* FCNTL_CAN_LOCK:
 1131  *  This symbol, if defined, indicates that fcntl() can be used
 1132  *  for file locking.  Normally on Unix systems this is defined.
 1133  *  It may be undefined on VMS.
 1134  */
 1135 /*#define FCNTL_CAN_LOCK        /**/
 1136 
 1137 /* HAS_FD_SET:
 1138  *  This symbol, when defined, indicates presence of the fd_set typedef
 1139  *  in <sys/types.h>
 1140  */
 1141 #define HAS_FD_SET  /**/
 1142 
 1143 /* FLEXFILENAMES:
 1144  *  This symbol, if defined, indicates that the system supports filenames
 1145  *  longer than 14 characters.
 1146  */
 1147 #define FLEXFILENAMES       /**/
 1148 
 1149 /* HAS_FPOS64_T:
 1150  *  This symbol will be defined if the C compiler supports fpos64_t.
 1151  */
 1152 /*#define   HAS_FPOS64_T        /**/
 1153 
 1154 /* HAS_FREXPL:
 1155  *  This symbol, if defined, indicates that the frexpl routine is
 1156  *  available to break a long double floating-point number into
 1157  *  a normalized fraction and an integral power of 2.
 1158  */
 1159 /*#define HAS_FREXPL        /**/
 1160 
 1161 /* HAS_STRUCT_FS_DATA:
 1162  *  This symbol, if defined, indicates that the struct fs_data
 1163  *  to do statfs() is supported.
 1164  */
 1165 /*#define HAS_STRUCT_FS_DATA    /**/
 1166 
 1167 /* HAS_FSEEKO:
 1168  *  This symbol, if defined, indicates that the fseeko routine is
 1169  *  available to fseek beyond 32 bits (useful for ILP32 hosts).
 1170  */
 1171 /*#define HAS_FSEEKO        /**/
 1172 
 1173 /* HAS_FSTATFS:
 1174  *  This symbol, if defined, indicates that the fstatfs routine is
 1175  *  available to stat filesystems by file descriptors.
 1176  */
 1177 /*#define HAS_FSTATFS       /**/
 1178 
 1179 /* HAS_FSYNC:
 1180  *  This symbol, if defined, indicates that the fsync routine is
 1181  *  available to write a file's modified data and attributes to
 1182  *  permanent storage.
 1183  */
 1184 /*#define HAS_FSYNC     /**/
 1185 
 1186 /* HAS_FTELLO:
 1187  *  This symbol, if defined, indicates that the ftello routine is
 1188  *  available to ftell beyond 32 bits (useful for ILP32 hosts).
 1189  */
 1190 /*#define HAS_FTELLO        /**/
 1191 
 1192 /* Gconvert:
 1193  *  This preprocessor macro is defined to convert a floating point
 1194  *  number to a string without a trailing decimal point.  This
 1195  *  emulates the behavior of sprintf("%g"), but is sometimes much more
 1196  *  efficient.  If gconvert() is not available, but gcvt() drops the
 1197  *  trailing decimal point, then gcvt() is used.  If all else fails,
 1198  *  a macro using sprintf("%g") is used. Arguments for the Gconvert
 1199  *  macro are: value, number of digits, whether trailing zeros should
 1200  *  be retained, and the output buffer.
 1201  *  Possible values are:
 1202  *      d_Gconvert='gconvert((x),(n),(t),(b))'
 1203  *      d_Gconvert='gcvt((x),(n),(b))'
 1204  *      d_Gconvert='sprintf((b),"%.*g",(n),(x))'
 1205  *  The last two assume trailing zeros should not be kept.
 1206  */
 1207 #define Gconvert(x,n,t,b) sprintf((b),"%.*g",(n),(x))
 1208 
 1209 /* HAS_GETCWD:
 1210  *  This symbol, if defined, indicates that the getcwd routine is
 1211  *  available to get the current working directory.
 1212  */
 1213 #define HAS_GETCWD      /**/
 1214 
 1215 /* HAS_GETESPWNAM:
 1216  *  This symbol, if defined, indicates that the getespwnam system call is
 1217  *  available to retrieve enhanced (shadow) password entries by name.
 1218  */
 1219 /*#define HAS_GETESPWNAM        /**/
 1220 
 1221 /* HAS_GETFSSTAT:
 1222  *  This symbol, if defined, indicates that the getfsstat routine is
 1223  *  available to stat filesystems in bulk.
 1224  */
 1225 /*#define HAS_GETFSSTAT     /**/
 1226 
 1227 /* HAS_GETGRENT:
 1228  *  This symbol, if defined, indicates that the getgrent routine is
 1229  *  available for sequential access of the group database.
 1230  */
 1231 /*#define HAS_GETGRENT      /**/
 1232 
 1233 /* HAS_GETHOSTBYADDR:
 1234  *  This symbol, if defined, indicates that the gethostbyaddr() routine is
 1235  *  available to look up hosts by their IP addresses.
 1236  */
 1237 #define HAS_GETHOSTBYADDR       /**/
 1238 
 1239 /* HAS_GETHOSTBYNAME:
 1240  *  This symbol, if defined, indicates that the gethostbyname() routine is
 1241  *  available to look up host names in some data base or other.
 1242  */
 1243 #define HAS_GETHOSTBYNAME       /**/
 1244 
 1245 /* HAS_GETHOSTENT:
 1246  *  This symbol, if defined, indicates that the gethostent() routine is
 1247  *  available to look up host names in some data base or another.
 1248  */
 1249 /*#define HAS_GETHOSTENT        /**/
 1250 
 1251 /* HAS_GETHOSTNAME:
 1252  *  This symbol, if defined, indicates that the C program may use the
 1253  *  gethostname() routine to derive the host name.  See also HAS_UNAME
 1254  *  and PHOSTNAME.
 1255  */
 1256 /* HAS_UNAME:
 1257  *  This symbol, if defined, indicates that the C program may use the
 1258  *  uname() routine to derive the host name.  See also HAS_GETHOSTNAME
 1259  *  and PHOSTNAME.
 1260  */
 1261 /* PHOSTNAME:
 1262  *  This symbol, if defined, indicates the command to feed to the
 1263  *  popen() routine to derive the host name.  See also HAS_GETHOSTNAME
 1264  *  and HAS_UNAME.  Note that the command uses a fully qualified path,
 1265  *  so that it is safe even if used by a process with super-user
 1266  *  privileges.
 1267  */
 1268 /* HAS_PHOSTNAME:
 1269  *  This symbol, if defined, indicates that the C program may use the
 1270  *  contents of PHOSTNAME as a command to feed to the popen() routine
 1271  *  to derive the host name.
 1272  */
 1273 #define HAS_GETHOSTNAME /**/
 1274 #define HAS_UNAME       /**/
 1275 /*#define HAS_PHOSTNAME /**/
 1276 #ifdef HAS_PHOSTNAME
 1277 #define PHOSTNAME ""    /* How to get the host name */
 1278 #endif
 1279 
 1280 /* HAS_GETHOST_PROTOS:
 1281  *  This symbol, if defined, indicates that <netdb.h> includes
 1282  *  prototypes for gethostent(), gethostbyname(), and
 1283  *  gethostbyaddr().  Otherwise, it is up to the program to guess
 1284  *  them.  See netdbtype.U for probing for various Netdb_xxx_t types.
 1285  */
 1286 #define HAS_GETHOST_PROTOS  /**/
 1287 
 1288 /* HAS_GETITIMER:
 1289  *  This symbol, if defined, indicates that the getitimer routine is
 1290  *  available to return interval timers.
 1291  */
 1292 /*#define HAS_GETITIMER     /**/
 1293 
 1294 /* HAS_GETMNT:
 1295  *  This symbol, if defined, indicates that the getmnt routine is
 1296  *  available to get filesystem mount info by filename.
 1297  */
 1298 /*#define HAS_GETMNT        /**/
 1299 
 1300 /* HAS_GETMNTENT:
 1301  *  This symbol, if defined, indicates that the getmntent routine is
 1302  *  available to iterate through mounted file systems to get their info.
 1303  */
 1304 /*#define HAS_GETMNTENT     /**/
 1305 
 1306 /* HAS_GETNETBYADDR:
 1307  *  This symbol, if defined, indicates that the getnetbyaddr() routine is
 1308  *  available to look up networks by their IP addresses.
 1309  */
 1310 /*#define HAS_GETNETBYADDR      /**/
 1311 
 1312 /* HAS_GETNETBYNAME:
 1313  *  This symbol, if defined, indicates that the getnetbyname() routine is
 1314  *  available to look up networks by their names.
 1315  */
 1316 /*#define HAS_GETNETBYNAME      /**/
 1317 
 1318 /* HAS_GETNETENT:
 1319  *  This symbol, if defined, indicates that the getnetent() routine is
 1320  *  available to look up network names in some data base or another.
 1321  */
 1322 /*#define HAS_GETNETENT     /**/
 1323 
 1324 /* HAS_GETNET_PROTOS:
 1325  *  This symbol, if defined, indicates that <netdb.h> includes
 1326  *  prototypes for getnetent(), getnetbyname(), and
 1327  *  getnetbyaddr().  Otherwise, it is up to the program to guess
 1328  *  them.  See netdbtype.U for probing for various Netdb_xxx_t types.
 1329  */
 1330 #define HAS_GETNET_PROTOS   /**/
 1331 
 1332 /* HAS_GETPAGESIZE:
 1333  *  This symbol, if defined, indicates that the getpagesize system call
 1334  *  is available to get system page size, which is the granularity of
 1335  *  many memory management calls.
 1336  */
 1337 /*#define HAS_GETPAGESIZE       /**/
 1338 
 1339 /* HAS_GETPROTOENT:
 1340  *  This symbol, if defined, indicates that the getprotoent() routine is
 1341  *  available to look up protocols in some data base or another.
 1342  */
 1343 /*#define HAS_GETPROTOENT       /**/
 1344 
 1345 /* HAS_GETPGRP:
 1346  *  This symbol, if defined, indicates that the getpgrp routine is
 1347  *  available to get the current process group.
 1348  */
 1349 /* USE_BSD_GETPGRP:
 1350  *  This symbol, if defined, indicates that getpgrp needs one
 1351  *  arguments whereas USG one needs none.
 1352  */
 1353 /*#define HAS_GETPGRP       /**/
 1354 /*#define USE_BSD_GETPGRP   /**/
 1355 
 1356 /* HAS_GETPROTOBYNAME:
 1357  *  This symbol, if defined, indicates that the getprotobyname()
 1358  *  routine is available to look up protocols by their name.
 1359  */
 1360 /* HAS_GETPROTOBYNUMBER:
 1361  *  This symbol, if defined, indicates that the getprotobynumber()
 1362  *  routine is available to look up protocols by their number.
 1363  */
 1364 #define HAS_GETPROTOBYNAME      /**/
 1365 #define HAS_GETPROTOBYNUMBER        /**/
 1366 
 1367 /* HAS_GETPROTO_PROTOS:
 1368  *  This symbol, if defined, indicates that <netdb.h> includes
 1369  *  prototypes for getprotoent(), getprotobyname(), and
 1370  *  getprotobyaddr().  Otherwise, it is up to the program to guess
 1371  *  them.  See netdbtype.U for probing for various Netdb_xxx_t types.
 1372  */
 1373 #define HAS_GETPROTO_PROTOS /**/
 1374 
 1375 /* HAS_GETPRPWNAM:
 1376  *  This symbol, if defined, indicates that the getprpwnam system call is
 1377  *  available to retrieve protected (shadow) password entries by name.
 1378  */
 1379 /*#define HAS_GETPRPWNAM        /**/
 1380 
 1381 /* HAS_GETPWENT:
 1382  *  This symbol, if defined, indicates that the getpwent routine is
 1383  *  available for sequential access of the passwd database.
 1384  *  If this is not available, the older getpw() function may be available.
 1385  */
 1386 /*#define HAS_GETPWENT      /**/
 1387 
 1388 /* HAS_GETSERVENT:
 1389  *  This symbol, if defined, indicates that the getservent() routine is
 1390  *  available to look up network services in some data base or another.
 1391  */
 1392 /*#define HAS_GETSERVENT        /**/
 1393 
 1394 /* HAS_GETSERV_PROTOS:
 1395  *  This symbol, if defined, indicates that <netdb.h> includes
 1396  *  prototypes for getservent(), getservbyname(), and
 1397  *  getservbyaddr().  Otherwise, it is up to the program to guess
 1398  *  them.  See netdbtype.U for probing for various Netdb_xxx_t types.
 1399  */
 1400 #define HAS_GETSERV_PROTOS  /**/
 1401 
 1402 /* HAS_GETSPNAM:
 1403  *  This symbol, if defined, indicates that the getspnam system call is
 1404  *  available to retrieve SysV shadow password entries by name.
 1405  */
 1406 /*#define HAS_GETSPNAM      /**/
 1407 
 1408 /* HAS_GETSERVBYNAME:
 1409  *  This symbol, if defined, indicates that the getservbyname()
 1410  *  routine is available to look up services by their name.
 1411  */
 1412 /* HAS_GETSERVBYPORT:
 1413  *  This symbol, if defined, indicates that the getservbyport()
 1414  *  routine is available to look up services by their port.
 1415  */
 1416 #define HAS_GETSERVBYNAME       /**/
 1417 #define HAS_GETSERVBYPORT       /**/
 1418 
 1419 /* HAS_GNULIBC:
 1420  *  This symbol, if defined, indicates to the C program that 
 1421  *  the GNU C library is being used.  A better check is to use
 1422  *  the __GLIBC__ and __GLIBC_MINOR__ symbols supplied with glibc.
 1423  */
 1424 /*#define HAS_GNULIBC   /**/
 1425 #if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE)
 1426 #   define _GNU_SOURCE
 1427 #endif
 1428 /* HAS_HASMNTOPT:
 1429  *  This symbol, if defined, indicates that the hasmntopt routine is
 1430  *  available to query the mount options of file systems.
 1431  */
 1432 /*#define HAS_HASMNTOPT     /**/
 1433 
 1434 /* HAS_HTONL:
 1435  *  This symbol, if defined, indicates that the htonl() routine (and
 1436  *  friends htons() ntohl() ntohs()) are available to do network
 1437  *  order byte swapping.
 1438  */
 1439 /* HAS_HTONS:
 1440  *  This symbol, if defined, indicates that the htons() routine (and
 1441  *  friends htonl() ntohl() ntohs()) are available to do network
 1442  *  order byte swapping.
 1443  */
 1444 /* HAS_NTOHL:
 1445  *  This symbol, if defined, indicates that the ntohl() routine (and
 1446  *  friends htonl() htons() ntohs()) are available to do network
 1447  *  order byte swapping.
 1448  */
 1449 /* HAS_NTOHS:
 1450  *  This symbol, if defined, indicates that the ntohs() routine (and
 1451  *  friends htonl() htons() ntohl()) are available to do network
 1452  *  order byte swapping.
 1453  */
 1454 #define HAS_HTONL       /**/
 1455 #define HAS_HTONS       /**/
 1456 #define HAS_NTOHL       /**/
 1457 #define HAS_NTOHS       /**/
 1458 
 1459 /* HAS_ILOGBL:
 1460  *  This symbol, if defined, indicates that the ilogbl routine is
 1461  *  available.  If scalbnl is also present we can emulate frexpl.
 1462  */
 1463 /*#define HAS_ILOGBL        /**/
 1464 
 1465 /* HAS_INT64_T:
 1466  *     This symbol will defined if the C compiler supports int64_t.
 1467  *     Usually the <inttypes.h> needs to be included, but sometimes
 1468  *  <sys/types.h> is enough.
 1469  */
 1470 /*#define     HAS_INT64_T               /**/
 1471 
 1472 /* HAS_ISASCII:
 1473  *  This manifest constant lets the C program know that isascii 
 1474  *  is available.
 1475  */
 1476 #define HAS_ISASCII     /**/
 1477 
 1478 /* HAS_ISNAN:
 1479  *  This symbol, if defined, indicates that the isnan routine is
 1480  *  available to check whether a double is a NaN.
 1481  */
 1482 /*#define HAS_ISNAN     /**/
 1483 
 1484 /* HAS_ISNANL:
 1485  *  This symbol, if defined, indicates that the isnanl routine is
 1486  *  available to check whether a long double is a NaN.
 1487  */
 1488 /*#define HAS_ISNANL        /**/
 1489 
 1490 /* HAS_LCHOWN:
 1491  *  This symbol, if defined, indicates that the lchown routine is
 1492  *  available to operate on a symbolic link (instead of following the
 1493  *  link).
 1494  */
 1495 /*#define HAS_LCHOWN        /**/
 1496 
 1497 /* HAS_LDBL_DIG:
 1498  *  This symbol, if defined, indicates that this system's <float.h>
 1499  *  or <limits.h> defines the symbol LDBL_DIG, which is the number
 1500  *  of significant digits in a long double precision number. Unlike
 1501  *  for DBL_DIG, there's no good guess for LDBL_DIG if it is undefined.
 1502  */
 1503 #define HAS_LDBL_DIG    /**/
 1504 
 1505 /* HAS_LONG_DOUBLE:
 1506  *  This symbol will be defined if the C compiler supports long
 1507  *  doubles.
 1508  */
 1509 /* LONG_DOUBLESIZE:
 1510  *  This symbol contains the size of a long double, so that the 
 1511  *  C preprocessor can make decisions based on it.  It is only
 1512  *  defined if the system supports long doubles.
 1513  */
 1514 #define HAS_LONG_DOUBLE     /**/
 1515 #ifdef HAS_LONG_DOUBLE
 1516 #define LONG_DOUBLESIZE 10      /**/
 1517 #endif
 1518 
 1519 /* HAS_LONG_LONG:
 1520  *  This symbol will be defined if the C compiler supports long long.
 1521  */
 1522 /* LONGLONGSIZE:
 1523  *  This symbol contains the size of a long long, so that the 
 1524  *  C preprocessor can make decisions based on it.  It is only
 1525  *  defined if the system supports long long.
 1526  */
 1527 /*#define HAS_LONG_LONG     /**/
 1528 #ifdef HAS_LONG_LONG
 1529 #define LONGLONGSIZE 8      /**/
 1530 #endif
 1531 
 1532 /* HAS_LSEEK_PROTO:
 1533  *  This symbol, if defined, indicates that the system provides
 1534  *  a prototype for the lseek() function.  Otherwise, it is up
 1535  *  to the program to supply one.  A good guess is
 1536  *      extern off_t lseek(int, off_t, int);
 1537  */
 1538 #define HAS_LSEEK_PROTO /**/
 1539 
 1540 /* HAS_MADVISE:
 1541  *  This symbol, if defined, indicates that the madvise system call is
 1542  *  available to map a file into memory.
 1543  */
 1544 /*#define HAS_MADVISE       /**/
 1545 
 1546 /* HAS_MKDTEMP:
 1547  *  This symbol, if defined, indicates that the mkdtemp routine is
 1548  *  available to exclusively create a uniquely named temporary directory.
 1549  */
 1550 /*#define HAS_MKDTEMP       /**/
 1551 
 1552 /* HAS_MKSTEMP:
 1553  *  This symbol, if defined, indicates that the mkstemp routine is
 1554  *  available to exclusively create and open a uniquely named
 1555  *  temporary file.
 1556  */
 1557 /*#define HAS_MKSTEMP       /**/
 1558 
 1559 /* HAS_MKSTEMPS:
 1560  *  This symbol, if defined, indicates that the mkstemps routine is
 1561  *  available to exclusively create and open a uniquely named
 1562  *  (with a suffix) temporary file.
 1563  */
 1564 /*#define HAS_MKSTEMPS      /**/
 1565 
 1566 /* HAS_MMAP:
 1567  *  This symbol, if defined, indicates that the mmap system call is
 1568  *  available to map a file into memory.
 1569  */
 1570 /* Mmap_t:
 1571  *  This symbol holds the return type of the mmap() system call
 1572  *  (and simultaneously the type of the first argument).
 1573  *  Usually set to 'void *' or 'cadd_t'.
 1574  */
 1575 /*#define HAS_MMAP      /**/
 1576 #define Mmap_t void *   /**/
 1577 
 1578 /* HAS_MODFL:
 1579  *  This symbol, if defined, indicates that the modfl routine is
 1580  *  available to split a long double x into a fractional part f and
 1581  *  an integer part i such that |f| < 1.0 and (f + i) = x.
 1582  */
 1583 /*#define HAS_MODFL     /**/
 1584 
 1585 /* HAS_MPROTECT:
 1586  *  This symbol, if defined, indicates that the mprotect system call is
 1587  *  available to modify the access protection of a memory mapped file.
 1588  */
 1589 /*#define HAS_MPROTECT      /**/
 1590 
 1591 /* HAS_MSG:
 1592  *  This symbol, if defined, indicates that the entire msg*(2) library is
 1593  *  supported (IPC mechanism based on message queues).
 1594  */
 1595 /*#define HAS_MSG       /**/
 1596 
 1597 /* HAS_STRUCT_MSGHDR:
 1598  *  This symbol, if defined, indicates that the struct msghdr
 1599  *  is supported.
 1600  */
 1601 /*#define HAS_STRUCT_MSGHDR /**/
 1602 
 1603 /* HAS_OFF64_T:
 1604  *  This symbol will be defined if the C compiler supports off64_t.
 1605  */
 1606 /*#define   HAS_OFF64_T         /**/
 1607 
 1608 /* HAS_OPEN3:
 1609  *  This manifest constant lets the C program know that the three
 1610  *  argument form of open(2) is available.
 1611  */
 1612 /*#define HAS_OPEN3     /**/
 1613 
 1614 /* OLD_PTHREAD_CREATE_JOINABLE:
 1615  *  This symbol, if defined, indicates how to create pthread
 1616  *  in joinable (aka undetached) state.  NOTE: not defined
 1617  *  if pthread.h already has defined PTHREAD_CREATE_JOINABLE
 1618  *  (the new version of the constant).
 1619  *  If defined, known values are PTHREAD_CREATE_UNDETACHED
 1620  *  and __UNDETACHED.
 1621  */
 1622 /*#define OLD_PTHREAD_CREATE_JOINABLE  /**/
 1623 
 1624 /* HAS_PTHREAD_YIELD:
 1625  *  This symbol, if defined, indicates that the pthread_yield 
 1626  *  routine is available to yield the execution of the current
 1627  *  thread.  sched_yield is preferable to pthread_yield.
 1628  */
 1629 /* SCHED_YIELD:
 1630  *  This symbol defines the way to yield the execution of
 1631  *  the current thread.  Known ways are sched_yield,
 1632  *  pthread_yield, and pthread_yield with NULL.
 1633  */
 1634 /* HAS_SCHED_YIELD:
 1635  *  This symbol, if defined, indicates that the sched_yield
 1636  *  routine is available to yield the execution of the current
 1637  *  thread.  sched_yield is preferable to pthread_yield.
 1638  */
 1639 /*#define HAS_PTHREAD_YIELD /**/
 1640 #define SCHED_YIELD     /**/
 1641 /*#define HAS_SCHED_YIELD   /**/
 1642 
 1643 /* HAS_PTHREAD_ATTR_SETSCOPE:
 1644  *  This symbol, if defined, indicates that the pthread_attr_setscope
 1645  *  system call is available to set the contention scope attribute of
 1646  *  a thread attribute object.
 1647  */
 1648 /*#define HAS_PTHREAD_ATTR_SETSCOPE     / **/
 1649 
 1650 /* HAS_READV:
 1651  *  This symbol, if defined, indicates that the readv routine is
 1652  *  available to do gather reads.  You will also need <sys/uio.h>
 1653  *  and there I_SYSUIO.
 1654  */
 1655 /*#define HAS_READV     /**/
 1656 
 1657 /* HAS_RECVMSG:
 1658  *  This symbol, if defined, indicates that the recvmsg routine is
 1659  *  available to send structured socket messages.
 1660  */
 1661 /*#define HAS_RECVMSG       /**/
 1662 
 1663 /* HAS_SBRK_PROTO:
 1664  *  This symbol, if defined, indicates that the system provides
 1665  *  a prototype for the sbrk() function.  Otherwise, it is up
 1666  *  to the program to supply one.  Good guesses are
 1667  *      extern void* sbrk(int);
 1668  *      extern void* sbrk(size_t);
 1669  */
 1670 /*#define   HAS_SBRK_PROTO  /**/
 1671 
 1672 /* HAS_SEM:
 1673  *  This symbol, if defined, indicates that the entire sem*(2) library is
 1674  *  supported.
 1675  */
 1676 /*#define HAS_SEM       /**/
 1677 
 1678 /* HAS_SCALBNL:
 1679  *  This symbol, if defined, indicates that the scalbnl routine is
 1680  *  available.  If ilogbl is also present we can emulate frexpl.
 1681  */
 1682 /*#define HAS_SCALBNL       /**/
 1683 
 1684 /* HAS_SENDMSG:
 1685  *  This symbol, if defined, indicates that the sendmsg routine is
 1686  *  available to send structured socket messages.
 1687  */
 1688 /*#define HAS_SENDMSG       /**/
 1689 
 1690 /* HAS_SETGRENT:
 1691  *  This symbol, if defined, indicates that the setgrent routine is
 1692  *  available for initializing sequential access of the group database.
 1693  */
 1694 /*#define HAS_SETGRENT      /**/
 1695 
 1696 /* HAS_SETGROUPS:
 1697  *  This symbol, if defined, indicates that the setgroups() routine is
 1698  *  available to set the list of process groups.  If unavailable, multiple
 1699  *  groups are probably not supported.
 1700  */
 1701 /*#define HAS_SETGROUPS     /**/
 1702 
 1703 /* HAS_SETHOSTENT:
 1704  *  This symbol, if defined, indicates that the sethostent() routine is
 1705  *  available.
 1706  */
 1707 /*#define HAS_SETHOSTENT        /**/
 1708 
 1709 /* HAS_SETITIMER:
 1710  *  This symbol, if defined, indicates that the setitimer routine is
 1711  *  available to set interval timers.
 1712  */
 1713 /*#define HAS_SETITIMER     /**/
 1714 
 1715 /* HAS_SETNETENT:
 1716  *  This symbol, if defined, indicates that the setnetent() routine is
 1717  *  available.
 1718  */
 1719 /*#define HAS_SETNETENT     /**/
 1720 
 1721 /* HAS_SETPROTOENT:
 1722  *  This symbol, if defined, indicates that the setprotoent() routine is
 1723  *  available.
 1724  */
 1725 /*#define HAS_SETPROTOENT       /**/
 1726 
 1727 /* HAS_SETPGRP:
 1728  *  This symbol, if defined, indicates that the setpgrp routine is
 1729  *  available to set the current process group.
 1730  */
 1731 /* USE_BSD_SETPGRP:
 1732  *  This symbol, if defined, indicates that setpgrp needs two
 1733  *  arguments whereas USG one needs none.  See also HAS_SETPGID
 1734  *  for a POSIX interface.
 1735  */
 1736 /*#define HAS_SETPGRP       /**/
 1737 /*#define USE_BSD_SETPGRP   /**/
 1738 
 1739 /* HAS_SETPROCTITLE:
 1740  *  This symbol, if defined, indicates that the setproctitle routine is
 1741  *  available to set process title.
 1742  */
 1743 /*#define HAS_SETPROCTITLE      /**/
 1744 
 1745 /* HAS_SETPWENT:
 1746  *  This symbol, if defined, indicates that the setpwent routine is
 1747  *  available for initializing sequential access of the passwd database.
 1748  */
 1749 /*#define HAS_SETPWENT      /**/
 1750 
 1751 /* HAS_SETSERVENT:
 1752  *  This symbol, if defined, indicates that the setservent() routine is
 1753  *  available.
 1754  */
 1755 /*#define HAS_SETSERVENT        /**/
 1756 
 1757 /* HAS_SETVBUF:
 1758  *  This symbol, if defined, indicates that the setvbuf routine is
 1759  *  available to change buffering on an open stdio stream.
 1760  *  to a line-buffered mode.
 1761  */
 1762 #define HAS_SETVBUF     /**/
 1763 
 1764 /* HAS_SHM:
 1765  *  This symbol, if defined, indicates that the entire shm*(2) library is
 1766  *  supported.
 1767  */
 1768 /*#define HAS_SHM       /**/
 1769 
 1770 /* HAS_SIGACTION:
 1771  *  This symbol, if defined, indicates that Vr4's sigaction() routine
 1772  *  is available.
 1773  */
 1774 /*#define HAS_SIGACTION /**/
 1775 
 1776 /* HAS_SIGSETJMP:
 1777  *  This variable indicates to the C program that the sigsetjmp()
 1778  *  routine is available to save the calling process's registers
 1779  *  and stack environment for later use by siglongjmp(), and
 1780  *  to optionally save the process's signal mask.  See
 1781  *  Sigjmp_buf, Sigsetjmp, and Siglongjmp.
 1782  */
 1783 /* Sigjmp_buf:
 1784  *  This is the buffer type to be used with Sigsetjmp and Siglongjmp.
 1785  */
 1786 /* Sigsetjmp:
 1787  *  This macro is used in the same way as sigsetjmp(), but will invoke
 1788  *  traditional setjmp() if sigsetjmp isn't available.
 1789  *  See HAS_SIGSETJMP.
 1790  */
 1791 /* Siglongjmp:
 1792  *  This macro is used in the same way as siglongjmp(), but will invoke
 1793  *  traditional longjmp() if siglongjmp isn't available.
 1794  *  See HAS_SIGSETJMP.
 1795  */
 1796 /*#define HAS_SIGSETJMP /**/
 1797 #ifdef HAS_SIGSETJMP
 1798 #define Sigjmp_buf sigjmp_buf
 1799 #define Sigsetjmp(buf,save_mask) sigsetjmp((buf),(save_mask))
 1800 #define Siglongjmp(buf,retval) siglongjmp((buf),(retval))
 1801 #else
 1802 #define Sigjmp_buf jmp_buf
 1803 #define Sigsetjmp(buf,save_mask) setjmp((buf))
 1804 #define Siglongjmp(buf,retval) longjmp((buf),(retval))
 1805 #endif
 1806 
 1807 /* HAS_STATIC_INLINE:
 1808  *  This symbol, if defined, indicates that the C compiler supports
 1809  *  C99-style static inline.  That is, the function can't be called
 1810  *  from another translation unit.
 1811  */
 1812 /* PERL_STATIC_INLINE:
 1813  *  This symbol gives the best-guess incantation to use for static
 1814  *  inline functions.  If HAS_STATIC_INLINE is defined, this will
 1815  *  give C99-style inline.  If HAS_STATIC_INLINE is not defined,
 1816  *  this will give a plain 'static'.  It will always be defined
 1817  *  to something that gives static linkage.
 1818  *  Possibilities include
 1819  *      static inline       (c99)
 1820  *      static __inline__   (gcc -ansi)
 1821  *      static __inline     (MSVC)
 1822  *      static _inline      (older MSVC)
 1823  *      static              (c89 compilers)
 1824  */
 1825 /*#define HAS_STATIC_INLINE             / **/
 1826 #define PERL_STATIC_INLINE static               /**/
 1827 
 1828 /* HAS_SOCKET:
 1829  *  This symbol, if defined, indicates that the BSD socket interface is
 1830  *  supported.
 1831  */
 1832 /* HAS_SOCKETPAIR:
 1833  *  This symbol, if defined, indicates that the BSD socketpair() call is
 1834  *  supported.
 1835  */
 1836 #define HAS_SOCKET      /**/
 1837 /*#define   HAS_SOCKETPAIR  /**/
 1838 
 1839 /* HAS_SOCKS5_INIT:
 1840  *  This symbol, if defined, indicates that the socks5_init routine is
 1841  *  available to initialize SOCKS 5.
 1842  */
 1843 /*#define HAS_SOCKS5_INIT       /**/
 1844 
 1845 /* HAS_SQRTL:
 1846  *  This symbol, if defined, indicates that the sqrtl routine is
 1847  *  available to do long double square roots.
 1848  */
 1849 /*#define HAS_SQRTL     /**/
 1850 
 1851 /* USE_STAT_BLOCKS:
 1852  *  This symbol is defined if this system has a stat structure declaring
 1853  *  st_blksize and st_blocks.
 1854  */
 1855 #ifndef USE_STAT_BLOCKS
 1856 /*#define USE_STAT_BLOCKS   /**/
 1857 #endif
 1858 
 1859 /* HAS_STRUCT_STATFS_F_FLAGS:
 1860  *  This symbol, if defined, indicates that the struct statfs
 1861  *  does have the f_flags member containing the mount flags of
 1862  *  the filesystem containing the file.
 1863  *  This kind of struct statfs is coming from <sys/mount.h> (BSD 4.3),
 1864  *  not from <sys/statfs.h> (SYSV).  Older BSDs (like Ultrix) do not
 1865  *  have statfs() and struct statfs, they have ustat() and getmnt()
 1866  *  with struct ustat and struct fs_data.
 1867  */
 1868 /*#define HAS_STRUCT_STATFS_F_FLAGS     /**/
 1869 
 1870 /* HAS_STRUCT_STATFS:
 1871  *  This symbol, if defined, indicates that the struct statfs
 1872  *  to do statfs() is supported.
 1873  */
 1874 /*#define HAS_STRUCT_STATFS /**/
 1875 
 1876 /* HAS_FSTATVFS:
 1877  *  This symbol, if defined, indicates that the fstatvfs routine is
 1878  *  available to stat filesystems by file descriptors.
 1879  */
 1880 /*#define HAS_FSTATVFS      /**/
 1881 
 1882 /* USE_STDIO_PTR:
 1883  *  This symbol is defined if the _ptr and _cnt fields (or similar)
 1884  *  of the stdio FILE structure can be used to access the stdio buffer
 1885  *  for a file handle.  If this is defined, then the FILE_ptr(fp)
 1886  *  and FILE_cnt(fp) macros will also be defined and should be used
 1887  *  to access these fields.
 1888  */
 1889 /* FILE_ptr:
 1890  *  This macro is used to access the _ptr field (or equivalent) of the
 1891  *  FILE structure pointed to by its argument. This macro will always be
 1892  *  defined if USE_STDIO_PTR is defined.
 1893  */
 1894 /* STDIO_PTR_LVALUE:
 1895  *  This symbol is defined if the FILE_ptr macro can be used as an
 1896  *  lvalue.
 1897  */
 1898 /* FILE_cnt:
 1899  *  This macro is used to access the _cnt field (or equivalent) of the
 1900  *  FILE structure pointed to by its argument. This macro will always be
 1901  *  defined if USE_STDIO_PTR is defined.
 1902  */
 1903 /* STDIO_CNT_LVALUE:
 1904  *  This symbol is defined if the FILE_cnt macro can be used as an
 1905  *  lvalue.
 1906  */
 1907 /* STDIO_PTR_LVAL_SETS_CNT:
 1908  *  This symbol is defined if using the FILE_ptr macro as an lvalue
 1909  *  to increase the pointer by n has the side effect of decreasing the
 1910  *  value of File_cnt(fp) by n.
 1911  */
 1912 /* STDIO_PTR_LVAL_NOCHANGE_CNT:
 1913  *  This symbol is defined if using the FILE_ptr macro as an lvalue
 1914  *  to increase the pointer by n leaves File_cnt(fp) unchanged.
 1915  */
 1916 /*#define USE_STDIO_PTR     /**/
 1917 #ifdef USE_STDIO_PTR
 1918 #define FILE_ptr(fp)    ((fp)->_ptr)
 1919 /*#define STDIO_PTR_LVALUE      /**/
 1920 #define FILE_cnt(fp)    ((fp)->_cnt)
 1921 /*#define STDIO_CNT_LVALUE      /**/
 1922 /*#define STDIO_PTR_LVAL_SETS_CNT   /**/
 1923 /*#define STDIO_PTR_LVAL_NOCHANGE_CNT   /**/
 1924 #endif
 1925 
 1926 /* USE_STDIO_BASE:
 1927  *  This symbol is defined if the _base field (or similar) of the
 1928  *  stdio FILE structure can be used to access the stdio buffer for
 1929  *  a file handle.  If this is defined, then the FILE_base(fp) macro
 1930  *  will also be defined and should be used to access this field.
 1931  *  Also, the FILE_bufsiz(fp) macro will be defined and should be used
 1932  *  to determine the number of bytes in the buffer.  USE_STDIO_BASE
 1933  *  will never be defined unless USE_STDIO_PTR is.
 1934  */
 1935 /* FILE_base:
 1936  *  This macro is used to access the _base field (or equivalent) of the
 1937  *  FILE structure pointed to by its argument. This macro will always be
 1938  *  defined if USE_STDIO_BASE is defined.
 1939  */
 1940 /* FILE_bufsiz:
 1941  *  This macro is used to determine the number of bytes in the I/O
 1942  *  buffer pointed to by _base field (or equivalent) of the FILE
 1943  *  structure pointed to its argument. This macro will always be defined
 1944  *  if USE_STDIO_BASE is defined.
 1945  */
 1946 /*#define USE_STDIO_BASE    /**/
 1947 #ifdef USE_STDIO_BASE
 1948 #define FILE_base(fp)   ((fp)->_base)
 1949 #define FILE_bufsiz(fp) ((fp)->_cnt + (fp)->_ptr - (fp)->_base)
 1950 #endif
 1951 
 1952 /* HAS_SYS_ERRLIST:
 1953  *  This symbol, if defined, indicates that the sys_errlist array is
 1954  *  available to translate error numbers to strings. The extern int
 1955  *  sys_nerr gives the size of that table.
 1956  */
 1957 #define HAS_SYS_ERRLIST /**/
 1958 
 1959 /* HAS_STRTOLD:
 1960  *  This symbol, if defined, indicates that the strtold routine is
 1961  *  available to convert strings to long doubles.
 1962  */
 1963 /*#define HAS_STRTOLD       /**/
 1964 
 1965 /* HAS_STRTOLL:
 1966  *  This symbol, if defined, indicates that the strtoll routine is
 1967  *  available to convert strings to long longs.
 1968  */
 1969 /*#define HAS_STRTOLL       /**/
 1970 
 1971 /* HAS_STRTOQ:
 1972  *  This symbol, if defined, indicates that the strtoq routine is
 1973  *  available to convert strings to long longs (quads).
 1974  */
 1975 /*#define HAS_STRTOQ        /**/
 1976 
 1977 /* HAS_STRTOUL:
 1978  *  This symbol, if defined, indicates that the strtoul routine is
 1979  *  available to provide conversion of strings to unsigned long.
 1980  */
 1981 #define HAS_STRTOUL /**/
 1982 
 1983 /* HAS_STRTOULL:
 1984  *  This symbol, if defined, indicates that the strtoull routine is
 1985  *  available to convert strings to unsigned long longs.
 1986  */
 1987 /*#define HAS_STRTOULL      /**/
 1988 
 1989 /* HAS_STRTOUQ:
 1990  *  This symbol, if defined, indicates that the strtouq routine is
 1991  *  available to convert strings to unsigned long longs (quads).
 1992  */
 1993 /*#define HAS_STRTOUQ       /**/
 1994 
 1995 /* HAS_TELLDIR_PROTO:
 1996  *  This symbol, if defined, indicates that the system provides
 1997  *  a prototype for the telldir() function.  Otherwise, it is up
 1998  *  to the program to supply one.  A good guess is
 1999  *      extern long telldir(DIR*);
 2000  */
 2001 #define HAS_TELLDIR_PROTO   /**/
 2002 
 2003 /* Time_t:
 2004  *  This symbol holds the type returned by time(). It can be long,
 2005  *  or time_t on BSD sites (in which case <sys/types.h> should be
 2006  *  included).
 2007  */
 2008 #define Time_t time_t       /* Time type */
 2009 
 2010 /* HAS_TIMES:
 2011  *  This symbol, if defined, indicates that the times() routine exists.
 2012  *  Note that this became obsolete on some systems (SUNOS), which now
 2013  * use getrusage(). It may be necessary to include <sys/times.h>.
 2014  */
 2015 /*#define HAS_TIMES     /**/
 2016 
 2017 /* HAS_UALARM:
 2018  *  This symbol, if defined, indicates that the ualarm routine is
 2019  *  available to do alarms with microsecond granularity.
 2020  */
 2021 /*#define HAS_UALARM        /**/
 2022 
 2023 /* HAS_UNION_SEMUN:
 2024  *  This symbol, if defined, indicates that the union semun is
 2025  *  defined by including <sys/sem.h>.  If not, the user code
 2026  *  probably needs to define it as:
 2027  *  union semun {
 2028  *      int val;
 2029  *      struct semid_ds *buf;
 2030  *      unsigned short *array;
 2031  *  }
 2032  */
 2033 /* USE_SEMCTL_SEMUN:
 2034  *  This symbol, if defined, indicates that union semun is
 2035  *  used for semctl IPC_STAT.
 2036  */
 2037 /* USE_SEMCTL_SEMID_DS:
 2038  *  This symbol, if defined, indicates that struct semid_ds * is
 2039  *  used for semctl IPC_STAT.
 2040  */
 2041 #define HAS_UNION_SEMUN /**/
 2042 /*#define USE_SEMCTL_SEMUN  /**/
 2043 /*#define USE_SEMCTL_SEMID_DS   /**/
 2044 
 2045 /* HAS_USTAT:
 2046  *  This symbol, if defined, indicates that the ustat system call is
 2047  *  available to query file system statistics by dev_t.
 2048  */
 2049 /*#define HAS_USTAT     /**/
 2050 
 2051 /* HAS_VFORK:
 2052  *  This symbol, if defined, indicates that vfork() exists.
 2053  */
 2054 /*#define HAS_VFORK /**/
 2055 
 2056 /* Signal_t:
 2057  *  This symbol's value is either "void" or "int", corresponding to the
 2058  *  appropriate return type of a signal handler.  Thus, you can declare
 2059  *  a signal handler using "Signal_t (*handler)()", and define the
 2060  *  handler using "Signal_t handler(sig)".
 2061  */
 2062 #define Signal_t void   /* Signal handler's return type */
 2063 
 2064 /* HAS_WRITEV:
 2065  *  This symbol, if defined, indicates that the writev routine is
 2066  *  available to do scatter writes.
 2067  */
 2068 /*#define HAS_WRITEV        /**/
 2069 
 2070 /* USE_DYNAMIC_LOADING:
 2071  *  This symbol, if defined, indicates that dynamic loading of
 2072  *  some sort is available.
 2073  */
 2074 #define USE_DYNAMIC_LOADING     /**/
 2075 
 2076 /* DOUBLESIZE:
 2077  *  This symbol contains the size of a double, so that the C preprocessor
 2078  *  can make decisions based on it.
 2079  */
 2080 #define DOUBLESIZE 8        /**/
 2081 
 2082 /* DOUBLE_STYLE_IEEE
 2083  *  This symbol, if defined, indicates that the double is
 2084  *  the 64-bit IEEE 754.
 2085  */
 2086 /* DOUBLE_HAS_INF
 2087  *  This symbol, if defined, indicates that the double has
 2088  *  the infinity.
 2089  */
 2090 /* DOUBLE_HAS_NAN
 2091  *  This symbol, if defined, indicates that the double has
 2092  *  the not-a-number.
 2093  */
 2094 /* DOUBLE_HAS_NEGATIVE_ZERO
 2095  *  This symbol, if defined, indicates that the double has
 2096  *  the negative_zero.
 2097  */
 2098 /* DOUBLE_HAS_SUBNORMALS
 2099  *  This symbol, if defined, indicates that the double has
 2100  *  the subnormals (denormals).
 2101  */
 2102 #define DOUBLE_STYLE_IEEE
 2103 #define DOUBLE_HAS_INF
 2104 #define DOUBLE_HAS_INF
 2105 #define DOUBLE_HAS_NEGATIVE_ZERO
 2106 #define DOUBLE_HAS_SUBNORMALS
 2107 
 2108 /* DOUBLEINFBYTES:
 2109  *  This symbol, if defined, is a comma-separated list of
 2110  *  hexadecimal bytes for the double precision infinity.
 2111  */
 2112 /* DOUBLENANBYTES:
 2113  *  This symbol, if defined, is a comma-separated list of
 2114  *  hexadecimal bytes (0xHH) for the double precision not-a-number.
 2115  */
 2116 /* LONGDBLINFBYTES:
 2117  *  This symbol, if defined, is a comma-separated list of
 2118  *  hexadecimal bytes for the long double precision infinity.
 2119  */
 2120 /* LONGDBLNANBYTES:
 2121  *  This symbol, if defined, is a comma-separated list of
 2122  *  hexadecimal bytes (0xHH) for the long double precision not-a-number.
 2123  */
 2124 #define DOUBLEINFBYTES 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x7f       /**/
 2125 #define DOUBLENANBYTES 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x7f       /**/
 2126 #define LONGDBLINFBYTES 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f      /**/
 2127 #define LONGDBLNANBYTES 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0x7f      /**/
 2128 
 2129 /* DOUBLEMANTBITS:
 2130  *  This symbol, if defined, tells how many mantissa bits
 2131  *  there are in double precision floating point format.
 2132  *      Note that this is usually DBL_MANT_DIG minus one, since
 2133  *      with the standard IEEE 754 formats DBL_MANT_DIG includes
 2134  *  the implicit bit, which doesn't really exist.
 2135  */
 2136 #define DOUBLEMANTBITS 52
 2137 
 2138 /* LONGDBLMANTBITS:
 2139  *  This symbol, if defined, tells how many mantissa bits
 2140  *  there are in long double precision floating point format.
 2141  *      Note that this can be LDBL_MANT_DIG minus one,
 2142  *      since LDBL_MANT_DIG can include the IEEE 754 implicit bit.
 2143  *      The common x86-style 80-bit long double does not have
 2144  *  an implicit bit.
 2145  */
 2146 #define LONGDBLMANTBITS 52
 2147 
 2148 /* LONG_DOUBLE_STYLE_IEEE
 2149  *  This symbol, if defined, indicates that the long double
 2150  *  is any of the IEEE 754 style long doubles:
 2151  *  LONG_DOUBLE_STYLE_IEEE_STD, LONG_DOUBLE_STYLE_IEEE_EXTENDED,
 2152  *  LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE.
 2153  */
 2154 /* LONG_DOUBLE_STYLE_IEEE_EXTENDED
 2155  *  This symbol, if defined, indicates that the long double is
 2156  *  the 80-bit IEEE 754. Note that despite the 'extended' this
 2157  *  is less than the 'std', since this is an extension of
 2158  *  the double precision.
 2159  */
 2160 #define LONG_DOUBLE_STYLE_IEEE
 2161 #define LONG_DOUBLE_STYLE_IEEE_EXTENDED
 2162 
 2163 /* EBCDIC:
 2164  *     This symbol, if defined, indicates that this system uses
 2165  *  EBCDIC encoding.
 2166  */
 2167 /*#define   EBCDIC      /**/
 2168 
 2169 /* FFLUSH_NULL:
 2170  *  This symbol, if defined, tells that fflush(NULL) does flush
 2171  *  all pending stdio output.
 2172  */
 2173 /* FFLUSH_ALL:
 2174  *  This symbol, if defined, tells that to flush
 2175  *  all pending stdio output one must loop through all
 2176  *  the stdio file handles stored in an array and fflush them.
 2177  *  Note that if fflushNULL is defined, fflushall will not
 2178  *  even be probed for and will be left undefined.
 2179  */
 2180 #define FFLUSH_NULL         /**/
 2181 /*#define   FFLUSH_ALL      /**/
 2182 
 2183 /* Fpos_t:
 2184  *  This symbol holds the type used to declare file positions in libc.
 2185  *  It can be fpos_t, long, uint, etc... It may be necessary to include
 2186  *  <sys/types.h> to get any typedef'ed information.
 2187  */
 2188 #define Fpos_t fpos_t       /* File position type */
 2189 
 2190 /* Gid_t_f:
 2191  *  This symbol defines the format string used for printing a Gid_t.
 2192  */
 2193 #define Gid_t_f     "ld"        /**/
 2194 
 2195 /* Gid_t_sign:
 2196  *  This symbol holds the signedess of a Gid_t.
 2197  *  1 for unsigned, -1 for signed.
 2198  */
 2199 #define Gid_t_sign  -1      /* GID sign */
 2200 
 2201 /* Gid_t_size:
 2202  *  This symbol holds the size of a Gid_t in bytes.
 2203  */
 2204 #define Gid_t_size 4        /* GID size */
 2205 
 2206 /* Gid_t:
 2207  *  This symbol holds the return type of getgid() and the type of
 2208  *  argument to setrgid() and related functions.  Typically,
 2209  *  it is the type of group ids in the kernel. It can be int, ushort,
 2210  *  gid_t, etc... It may be necessary to include <sys/types.h> to get
 2211  *  any typedef'ed information.
 2212  */
 2213 #define Gid_t gid_t     /* Type for getgid(), etc... */
 2214 
 2215 /* Groups_t:
 2216  *  This symbol holds the type used for the second argument to
 2217  *  getgroups() and setgroups().  Usually, this is the same as
 2218  *  gidtype (gid_t) , but sometimes it isn't.
 2219  *  It can be int, ushort, gid_t, etc... 
 2220  *  It may be necessary to include <sys/types.h> to get any 
 2221  *  typedef'ed information.  This is only required if you have
 2222  *  getgroups() or setgroups()..
 2223  */
 2224 #if defined(HAS_GETGROUPS) || defined(HAS_SETGROUPS)
 2225 #define Groups_t gid_t  /* Type for 2nd arg to [sg]etgroups() */
 2226 #endif
 2227 
 2228 /* DB_Prefix_t:
 2229  *  This symbol contains the type of the prefix structure element
 2230  *  in the <db.h> header file.  In older versions of DB, it was
 2231  *  int, while in newer ones it is u_int32_t.
 2232  */
 2233 /* DB_Hash_t:
 2234  *  This symbol contains the type of the prefix structure element
 2235  *  in the <db.h> header file.  In older versions of DB, it was
 2236  *  int, while in newer ones it is size_t.
 2237  */
 2238 /* DB_VERSION_MAJOR_CFG:
 2239  *  This symbol, if defined, defines the major version number of
 2240  *  Berkeley DB found in the <db.h> header when Perl was configured.
 2241  */
 2242 /* DB_VERSION_MINOR_CFG:
 2243  *  This symbol, if defined, defines the minor version number of
 2244  *  Berkeley DB found in the <db.h> header when Perl was configured.
 2245  *  For DB version 1 this is always 0.
 2246  */
 2247 /* DB_VERSION_PATCH_CFG:
 2248  *  This symbol, if defined, defines the patch version number of
 2249  *  Berkeley DB found in the <db.h> header when Perl was configured.
 2250  *  For DB version 1 this is always 0.
 2251  */
 2252 #define DB_Hash_t   int     /**/
 2253 #define DB_Prefix_t int     /**/
 2254 #define DB_VERSION_MAJOR_CFG    undef   /**/
 2255 #define DB_VERSION_MINOR_CFG    undef   /**/
 2256 #define DB_VERSION_PATCH_CFG    undef   /**/
 2257 
 2258 /* I_GRP:
 2259  *  This symbol, if defined, indicates to the C program that it should
 2260  *  include <grp.h>.
 2261  */
 2262 /* GRPASSWD:
 2263  *  This symbol, if defined, indicates to the C program that struct group
 2264  *  in <grp.h> contains gr_passwd.
 2265  */
 2266 /*#define I_GRP     /**/
 2267 /*#define GRPASSWD  /**/
 2268 
 2269 /* I_IEEEFP:
 2270  *  This symbol, if defined, indicates that <ieeefp.h> exists and
 2271  *  should be included.
 2272  */
 2273 /*#define   I_IEEEFP        /**/
 2274 
 2275 /* I_INTTYPES:
 2276  *     This symbol, if defined, indicates to the C program that it should
 2277  *     include <inttypes.h>.
 2278  */
 2279 /*#define   I_INTTYPES                /**/
 2280 
 2281 /* I_LIBUTIL:
 2282  *  This symbol, if defined, indicates that <libutil.h> exists and
 2283  *  should be included.
 2284  */
 2285 /*#define   I_LIBUTIL       /**/
 2286 
 2287 /* I_MACH_CTHREADS:
 2288  *     This symbol, if defined, indicates to the C program that it should
 2289  *     include <mach/cthreads.h>.
 2290  */
 2291 /*#define   I_MACH_CTHREADS /**/
 2292 
 2293 /* I_MNTENT:
 2294  *  This symbol, if defined, indicates that <mntent.h> exists and
 2295  *  should be included.
 2296  */
 2297 /*#define   I_MNTENT        /**/
 2298 
 2299 /* I_NETDB:
 2300  *  This symbol, if defined, indicates that <netdb.h> exists and
 2301  *  should be included.
 2302  */
 2303 #define I_NETDB     /**/
 2304 
 2305 /* I_NETINET_TCP:
 2306  *     This symbol, if defined, indicates to the C program that it should
 2307  *     include <netinet/tcp.h>.
 2308  */
 2309 /*#define   I_NETINET_TCP                /**/
 2310 
 2311 /* I_POLL:
 2312  *  This symbol, if defined, indicates that <poll.h> exists and
 2313  *  should be included.
 2314  */
 2315 /*#define   I_POLL      /**/
 2316 
 2317 /* I_PROT:
 2318  *  This symbol, if defined, indicates that <prot.h> exists and
 2319  *  should be included.
 2320  */
 2321 /*#define   I_PROT      /**/
 2322 
 2323 /* I_PTHREAD:
 2324  *     This symbol, if defined, indicates to the C program that it should
 2325  *     include <pthread.h>.
 2326  */
 2327 /*#define   I_PTHREAD   /**/
 2328 
 2329 /* I_PWD:
 2330  *  This symbol, if defined, indicates to the C program that it should
 2331  *  include <pwd.h>.
 2332  */
 2333 /* PWQUOTA:
 2334  *  This symbol, if defined, indicates to the C program that struct passwd
 2335  *  contains pw_quota.
 2336  */
 2337 /* PWAGE:
 2338  *  This symbol, if defined, indicates to the C program that struct passwd
 2339  *  contains pw_age.
 2340  */
 2341 /* PWCHANGE:
 2342  *  This symbol, if defined, indicates to the C program that struct passwd
 2343  *  contains pw_change.
 2344  */
 2345 /* PWCLASS:
 2346  *  This symbol, if defined, indicates to the C program that struct passwd
 2347  *  contains pw_class.
 2348  */
 2349 /* PWEXPIRE:
 2350  *  This symbol, if defined, indicates to the C program that struct passwd
 2351  *  contains pw_expire.
 2352  */
 2353 /* PWCOMMENT:
 2354  *  This symbol, if defined, indicates to the C program that struct passwd
 2355  *  contains pw_comment.
 2356  */
 2357 /* PWGECOS:
 2358  *  This symbol, if defined, indicates to the C program that struct passwd
 2359  *  contains pw_gecos.
 2360  */
 2361 /* PWPASSWD:
 2362  *  This symbol, if defined, indicates to the C program that struct passwd
 2363  *  contains pw_passwd.
 2364  */
 2365 /*#define I_PWD     /**/
 2366 /*#define PWQUOTA   /**/
 2367 /*#define PWAGE /**/
 2368 /*#define PWCHANGE  /**/
 2369 /*#define PWCLASS   /**/
 2370 /*#define PWEXPIRE  /**/
 2371 /*#define PWCOMMENT /**/
 2372 /*#define PWGECOS   /**/
 2373 /*#define PWPASSWD  /**/
 2374 
 2375 /* I_SHADOW:
 2376  *  This symbol, if defined, indicates that <shadow.h> exists and
 2377  *  should be included.
 2378  */
 2379 /*#define   I_SHADOW        /**/
 2380 
 2381 /* I_SOCKS:
 2382  *  This symbol, if defined, indicates that <socks.h> exists and
 2383  *  should be included.
 2384  */
 2385 /*#define   I_SOCKS     /**/
 2386 
 2387 /* I_SUNMATH:
 2388  *  This symbol, if defined, indicates that <sunmath.h> exists and
 2389  *  should be included.
 2390  */
 2391 /*#define   I_SUNMATH       /**/
 2392 
 2393 /* I_SYSLOG:
 2394  *  This symbol, if defined, indicates that <syslog.h> exists and
 2395  *  should be included.
 2396  */
 2397 /*#define   I_SYSLOG        /**/
 2398 
 2399 /* I_SYSMODE:
 2400  *  This symbol, if defined, indicates that <sys/mode.h> exists and
 2401  *  should be included.
 2402  */
 2403 /*#define   I_SYSMODE       /**/
 2404 
 2405 /* I_SYS_MOUNT:
 2406  *  This symbol, if defined, indicates that <sys/mount.h> exists and
 2407  *  should be included.
 2408  */
 2409 /*#define   I_SYS_MOUNT     /**/
 2410 
 2411 /* I_SYS_STATFS:
 2412  *  This symbol, if defined, indicates that <sys/statfs.h> exists.
 2413  */
 2414 /*#define   I_SYS_STATFS        /**/
 2415 
 2416 /* I_SYS_STATVFS:
 2417  *  This symbol, if defined, indicates that <sys/statvfs.h> exists and
 2418  *  should be included.
 2419  */
 2420 /*#define   I_SYS_STATVFS       /**/
 2421 
 2422 /* I_SYSUIO:
 2423  *  This symbol, if defined, indicates that <sys/uio.h> exists and
 2424  *  should be included.
 2425  */
 2426 /*#define   I_SYSUIO        /**/
 2427 
 2428 /* I_SYSUTSNAME:
 2429  *  This symbol, if defined, indicates that <sys/utsname.h> exists and
 2430  *  should be included.
 2431  */
 2432 #define I_SYSUTSNAME        /**/
 2433 
 2434 /* I_SYS_VFS:
 2435  *  This symbol, if defined, indicates that <sys/vfs.h> exists and
 2436  *  should be included.
 2437  */
 2438 /*#define   I_SYS_VFS       /**/
 2439 
 2440 /* I_TIME:
 2441  *  This symbol, if defined, indicates to the C program that it should
 2442  *  include <time.h>.
 2443  */
 2444 /* I_SYS_TIME:
 2445  *  This symbol, if defined, indicates to the C program that it should
 2446  *  include <sys/time.h>.
 2447  */
 2448 /* I_SYS_TIME_KERNEL:
 2449  *  This symbol, if defined, indicates to the C program that it should
 2450  *  include <sys/time.h> with KERNEL defined.
 2451  */
 2452 #define I_TIME      /**/
 2453 /*#define I_SYS_TIME        /**/
 2454 /*#define I_SYS_TIME_KERNEL     /**/
 2455 
 2456 /* I_USTAT:
 2457  *  This symbol, if defined, indicates that <ustat.h> exists and
 2458  *  should be included.
 2459  */
 2460 /*#define   I_USTAT     /**/
 2461 
 2462 /* PERL_INC_VERSION_LIST:
 2463  *  This variable specifies the list of subdirectories in over
 2464  *  which perl.c:incpush() and lib/lib.pm will automatically
 2465  *  search when adding directories to @INC, in a format suitable
 2466  *  for a C initialization string.  See the inc_version_list entry
 2467  *  in Porting/Glossary for more details.
 2468  */
 2469 #define PERL_INC_VERSION_LIST 0     /**/
 2470 
 2471 /* INSTALL_USR_BIN_PERL:
 2472  *  This symbol, if defined, indicates that Perl is to be installed
 2473  *  also as /usr/bin/perl.
 2474  */
 2475 /*#define INSTALL_USR_BIN_PERL  /**/
 2476 
 2477 /* PERL_PRIfldbl:
 2478  *  This symbol, if defined, contains the string used by stdio to
 2479  *  format long doubles (format 'f') for output.
 2480  */
 2481 /* PERL_PRIgldbl:
 2482  *  This symbol, if defined, contains the string used by stdio to
 2483  *  format long doubles (format 'g') for output.
 2484  */
 2485 /* PERL_PRIeldbl:
 2486  *  This symbol, if defined, contains the string used by stdio to
 2487  *  format long doubles (format 'e') for output.
 2488  */
 2489 /* PERL_SCNfldbl:
 2490  *  This symbol, if defined, contains the string used by stdio to
 2491  *  format long doubles (format 'f') for input.
 2492  */
 2493 /*#define PERL_PRIfldbl "f" /**/
 2494 /*#define PERL_PRIgldbl "g" /**/
 2495 /*#define PERL_PRIeldbl "e" /**/
 2496 /*#define PERL_SCNfldbl undef   /**/
 2497 
 2498 #$d_PRIfldbl PERL_PRIfldbl  $sPRIfldbl  /**/
 2499 #$d_PRIgldbl PERL_PRIgldbl  $sPRIgldbl  /**/
 2500 #$d_PRIeldbl PERL_PRIeldbl  $sPRIeldbl  /**/
 2501 
 2502 /*#$d_SCNfldbl PERL_SCNfldbl    $sSCNfldbl  /**/
 2503 
 2504 /* Off_t:
 2505  *  This symbol holds the type used to declare offsets in the kernel.
 2506  *  It can be int, long, off_t, etc... It may be necessary to include
 2507  *  <sys/types.h> to get any typedef'ed information.
 2508  */
 2509 /* LSEEKSIZE:
 2510  *  This symbol holds the number of bytes used by the Off_t.
 2511  */
 2512 /* Off_t_size:
 2513  *  This symbol holds the number of bytes used by the Off_t.
 2514  */
 2515 #define Off_t off_t     /* <offset> type */
 2516 #define LSEEKSIZE 4     /* <offset> size */
 2517 #define Off_t_size 4    /* <offset> size */
 2518 
 2519 /* Free_t:
 2520  *  This variable contains the return type of free().  It is usually
 2521  * void, but occasionally int.
 2522  */
 2523 /* Malloc_t:
 2524  *  This symbol is the type of pointer returned by malloc and realloc.
 2525  */
 2526 #define Malloc_t void *         /**/
 2527 #define Free_t void         /**/
 2528 
 2529 /* MYMALLOC:
 2530  *  This symbol, if defined, indicates that we're using our own malloc.
 2531  */
 2532 /*#define MYMALLOC          /**/
 2533 
 2534 /* Mode_t:
 2535  *  This symbol holds the type used to declare file modes 
 2536  *  for systems calls.  It is usually mode_t, but may be
 2537  *  int or unsigned short.  It may be necessary to include <sys/types.h>
 2538  *  to get any typedef'ed information.
 2539  */
 2540 #define Mode_t mode_t    /* file mode parameter for system calls */
 2541 
 2542 /* VAL_O_NONBLOCK:
 2543  *  This symbol is to be used during open() or fcntl(F_SETFL) to turn on
 2544  *  non-blocking I/O for the file descriptor. Note that there is no way
 2545  *  back, i.e. you cannot turn it blocking again this way. If you wish to
 2546  *  alternatively switch between blocking and non-blocking, use the
 2547  *  ioctl(FIOSNBIO) call instead, but that is not supported by all devices.
 2548  */
 2549 /* VAL_EAGAIN:
 2550  *  This symbol holds the errno error code set by read() when no data was
 2551  *  present on the non-blocking file descriptor.
 2552  */
 2553 /* RD_NODATA:
 2554  *  This symbol holds the return code from read() when no data is present
 2555  *  on the non-blocking file descriptor. Be careful! If EOF_NONBLOCK is
 2556  *  not defined, then you can't distinguish between no data and EOF by
 2557  *  issuing a read(). You'll have to find another way to tell for sure!
 2558  */
 2559 /* EOF_NONBLOCK:
 2560  *  This symbol, if defined, indicates to the C program that a read() on
 2561  *  a non-blocking file descriptor will return 0 on EOF, and not the value
 2562  *  held in RD_NODATA (-1 usually, in that case!).
 2563  */
 2564 #define VAL_O_NONBLOCK O_NONBLOCK
 2565 #define VAL_EAGAIN EAGAIN
 2566 #define RD_NODATA -1
 2567 #define EOF_NONBLOCK
 2568 
 2569 /* NEED_VA_COPY:
 2570  *  This symbol, if defined, indicates that the system stores
 2571  *  the variable argument list datatype, va_list, in a format
 2572  *  that cannot be copied by simple assignment, so that some
 2573  *  other means must be used when copying is required.
 2574  *  As such systems vary in their provision (or non-provision)
 2575  *  of copying mechanisms, handy.h defines a platform-
 2576  *  independent macro, Perl_va_copy(src, dst), to do the job.
 2577  */
 2578 /*#define   NEED_VA_COPY        /**/
 2579 
 2580 /* Netdb_host_t:
 2581  *  This symbol holds the type used for the 1st argument
 2582  *  to gethostbyaddr().
 2583  */
 2584 /* Netdb_hlen_t:
 2585  *  This symbol holds the type used for the 2nd argument
 2586  *  to gethostbyaddr().
 2587  */
 2588 /* Netdb_name_t:
 2589  *  This symbol holds the type used for the argument to
 2590  *  gethostbyname().
 2591  */
 2592 /* Netdb_net_t:
 2593  *  This symbol holds the type used for the 1st argument to
 2594  *  getnetbyaddr().
 2595  */
 2596 #define Netdb_host_t        char * /**/
 2597 #define Netdb_hlen_t        int /**/
 2598 #define Netdb_name_t        char * /**/
 2599 #define Netdb_net_t     long /**/
 2600 
 2601 /* PERL_OTHERLIBDIRS:
 2602  *  This variable contains a colon-separated set of paths for the perl
 2603  *  binary to search for additional library files or modules.
 2604  *  These directories will be tacked to the end of @INC.
 2605  *  Perl will automatically search below each path for version-
 2606  *  and architecture-specific directories.  See PERL_INC_VERSION_LIST
 2607  *  for more details.
 2608  */
 2609 /*#define PERL_OTHERLIBDIRS "undef"     /**/
 2610 
 2611 /* IVTYPE:
 2612  *  This symbol defines the C type used for Perl's IV.
 2613  */
 2614 /* UVTYPE:
 2615  *  This symbol defines the C type used for Perl's UV.
 2616  */
 2617 /* I8TYPE:
 2618  *  This symbol defines the C type used for Perl's I8.
 2619  */
 2620 /* U8TYPE:
 2621  *  This symbol defines the C type used for Perl's U8.
 2622  */
 2623 /* I16TYPE:
 2624  *  This symbol defines the C type used for Perl's I16.
 2625  */
 2626 /* U16TYPE:
 2627  *  This symbol defines the C type used for Perl's U16.
 2628  */
 2629 /* I32TYPE:
 2630  *  This symbol defines the C type used for Perl's I32.
 2631  */
 2632 /* U32TYPE:
 2633  *  This symbol defines the C type used for Perl's U32.
 2634  */
 2635 /* I64TYPE:
 2636  *  This symbol defines the C type used for Perl's I64.
 2637  */
 2638 /* U64TYPE:
 2639  *  This symbol defines the C type used for Perl's U64.
 2640  */
 2641 /* NVTYPE:
 2642  *  This symbol defines the C type used for Perl's NV.
 2643  */
 2644 /* IVSIZE:
 2645  *  This symbol contains the sizeof(IV).
 2646  */
 2647 /* UVSIZE:
 2648  *  This symbol contains the sizeof(UV).
 2649  */
 2650 /* I8SIZE:
 2651  *  This symbol contains the sizeof(I8).
 2652  */
 2653 /* U8SIZE:
 2654  *  This symbol contains the sizeof(U8).
 2655  */
 2656 /* I16SIZE:
 2657  *  This symbol contains the sizeof(I16).
 2658  */
 2659 /* U16SIZE:
 2660  *  This symbol contains the sizeof(U16).
 2661  */
 2662 /* I32SIZE:
 2663  *  This symbol contains the sizeof(I32).
 2664  */
 2665 /* U32SIZE:
 2666  *  This symbol contains the sizeof(U32).
 2667  */
 2668 /* I64SIZE:
 2669  *  This symbol contains the sizeof(I64).
 2670  */
 2671 /* U64SIZE:
 2672  *  This symbol contains the sizeof(U64).
 2673  */
 2674 /* NVSIZE:
 2675  *  This symbol contains the sizeof(NV).
 2676  */
 2677 /* NV_PRESERVES_UV:
 2678  *  This symbol, if defined, indicates that a variable of type NVTYPE
 2679  *  can preserve all the bits of a variable of type UVTYPE.
 2680  */
 2681 /* NV_PRESERVES_UV_BITS:
 2682  *  This symbol contains the number of bits a variable of type NVTYPE
 2683  *  can preserve of a variable of type UVTYPE.
 2684  */
 2685 /* NV_ZERO_IS_ALLBITS_ZERO:
 2686  *  This symbol, if defined, indicates that a variable of type NVTYPE
 2687  *  stores 0.0 in memory as all bits zero.
 2688  */
 2689 #define IVTYPE      long        /**/
 2690 #define UVTYPE      unsigned long       /**/
 2691 #define I8TYPE      char        /**/
 2692 #define U8TYPE      unsigned char       /**/
 2693 #define I16TYPE     short   /**/
 2694 #define U16TYPE     unsigned short  /**/
 2695 #define I32TYPE     long    /**/
 2696 #define U32TYPE     unsigned long   /**/
 2697 #ifdef HAS_QUAD
 2698 #define I64TYPE     __int64 /**/
 2699 #define U64TYPE     unsigned __int64    /**/
 2700 #endif
 2701 #define NVTYPE      double      /**/
 2702 #define IVSIZE      4       /**/
 2703 #define UVSIZE      4       /**/
 2704 #define I8SIZE      1       /**/
 2705 #define U8SIZE      1       /**/
 2706 #define I16SIZE     2   /**/
 2707 #define U16SIZE     2   /**/
 2708 #define I32SIZE     4   /**/
 2709 #define U32SIZE     4   /**/
 2710 #ifdef HAS_QUAD
 2711 #define I64SIZE     8   /**/
 2712 #define U64SIZE     8   /**/
 2713 #endif
 2714 #define NVSIZE      8       /**/
 2715 #define NV_PRESERVES_UV
 2716 #define NV_PRESERVES_UV_BITS    undef
 2717 #undef  NV_ZERO_IS_ALLBITS_ZERO
 2718 
 2719 /* IVdf:
 2720  *  This symbol defines the format string used for printing a Perl IV
 2721  *  as a signed decimal integer.
 2722  */
 2723 /* UVuf:
 2724  *  This symbol defines the format string used for printing a Perl UV
 2725  *  as an unsigned decimal integer.
 2726  */
 2727 /* UVof:
 2728  *  This symbol defines the format string used for printing a Perl UV
 2729  *  as an unsigned octal integer.
 2730  */
 2731 /* UVxf:
 2732  *  This symbol defines the format string used for printing a Perl UV
 2733  *  as an unsigned hexadecimal integer in lowercase abcdef.
 2734  */
 2735 /* UVXf:
 2736  *  This symbol defines the format string used for printing a Perl UV
 2737  *  as an unsigned hexadecimal integer in uppercase ABCDEF.
 2738  */
 2739 /* NVef:
 2740  *  This symbol defines the format string used for printing a Perl NV
 2741  *  using %e-ish floating point format.
 2742  */
 2743 /* NVff:
 2744  *  This symbol defines the format string used for printing a Perl NV
 2745  *  using %f-ish floating point format.
 2746  */
 2747 /* NVgf:
 2748  *  This symbol defines the format string used for printing a Perl NV
 2749  *  using %g-ish floating point format.
 2750  */
 2751 #define IVdf        "ld"        /**/
 2752 #define UVuf        "lu"        /**/
 2753 #define UVof        "lo"        /**/
 2754 #define UVxf        "lx"        /**/
 2755 #define UVXf        "lX"        /**/
 2756 #define NVef        "e"     /**/
 2757 #define NVff        "f"     /**/
 2758 #define NVgf        "g"     /**/
 2759 
 2760 /* Pid_t:
 2761  *  This symbol holds the type used to declare process ids in the kernel.
 2762  *  It can be int, uint, pid_t, etc... It may be necessary to include
 2763  *  <sys/types.h> to get any typedef'ed information.
 2764  */
 2765 #define Pid_t int       /* PID type */
 2766 
 2767 /* PRIVLIB:
 2768  *  This symbol contains the name of the private library for this package.
 2769  *  The library is private in the sense that it needn't be in anyone's
 2770  *  execution path, but it should be accessible by the world.  The program
 2771  *  should be prepared to do ~ expansion.
 2772  */
 2773 /* PRIVLIB_EXP:
 2774  *  This symbol contains the ~name expanded version of PRIVLIB, to be used
 2775  *  in programs that are not prepared to deal with ~ expansion at run-time.
 2776  */
 2777 #define PRIVLIB "sys:\\perl\\lib"       /**/
 2778 #define PRIVLIB_EXP (fnNwGetEnvironmentStr("PRIVLIB", PRIVLIB)) /**/
 2779 
 2780 /* PTRSIZE:
 2781  *  This symbol contains the size of a pointer, so that the C preprocessor
 2782  *  can make decisions based on it.  It will be sizeof(void *) if
 2783  *  the compiler supports (void *); otherwise it will be
 2784  *  sizeof(char *).
 2785  */
 2786 #define PTRSIZE 4       /**/
 2787 
 2788 /* Drand01:
 2789  *  This macro is to be used to generate uniformly distributed
 2790  *  random numbers over the range [0., 1.[.  You may have to supply
 2791  *  an 'extern double drand48();' in your program since SunOS 4.1.3
 2792  *  doesn't provide you with anything relevant in its headers.
 2793  *  See HAS_DRAND48_PROTO.
 2794  */
 2795 /* Rand_seed_t:
 2796  *  This symbol defines the type of the argument of the
 2797  *  random seed function.
 2798  */
 2799 /* seedDrand01:
 2800  *  This symbol defines the macro to be used in seeding the
 2801  *  random number generator (see Drand01).
 2802  */
 2803 /* RANDBITS:
 2804  *  This symbol indicates how many bits are produced by the
 2805  *  function used to generate normalized random numbers.
 2806  *  Values include 15, 16, 31, and 48.
 2807  */
 2808 #define Drand01()       (rand()/(double)((unsigned)1<<RANDBITS))        /**/
 2809 #define Rand_seed_t     unsigned        /**/
 2810 #define seedDrand01(x)  srand((Rand_seed_t)x)   /**/
 2811 #define RANDBITS        15      /**/
 2812 
 2813 /* SELECT_MIN_BITS:
 2814  *  This symbol holds the minimum number of bits operated by select.
 2815  *  That is, if you do select(n, ...), how many bits at least will be
 2816  *  cleared in the masks if some activity is detected.  Usually this
 2817  *  is either n or 32*ceil(n/32), especially many little-endians do
 2818  *  the latter.  This is only useful if you have select(), naturally.
 2819  */
 2820 #define SELECT_MIN_BITS     32  /**/
 2821 
 2822 /* Select_fd_set_t:
 2823  *  This symbol holds the type used for the 2nd, 3rd, and 4th
 2824  *  arguments to select.  Usually, this is 'fd_set *', if HAS_FD_SET
 2825  *  is defined, and 'int *' otherwise.  This is only useful if you 
 2826  *  have select(), of course.
 2827  */
 2828 #define Select_fd_set_t     fd_set *    /**/
 2829 
 2830 /* SIG_NAME:
 2831  *  This symbol contains a list of signal names in order of
 2832  *  signal number. This is intended
 2833  *  to be used as a static array initialization, like this:
 2834  *      char *sig_name[] = { SIG_NAME };
 2835  *  The signals in the list are separated with commas, and each signal
 2836  *  is surrounded by double quotes. There is no leading SIG in the signal
 2837  *  name, i.e. SIGQUIT is known as "QUIT".
 2838  *  Gaps in the signal numbers (up to NSIG) are filled in with NUMnn,
 2839  *  etc., where nn is the actual signal number (e.g. NUM37).
 2840  *  The signal number for sig_name[i] is stored in sig_num[i].
 2841  *  The last element is 0 to terminate the list with a NULL.  This
 2842  *  corresponds to the 0 at the end of the sig_num list.
 2843  */
 2844 /* SIG_NUM:
 2845  *  This symbol contains a list of signal numbers, in the same order as the
 2846  *  SIG_NAME list. It is suitable for static array initialization, as in:
 2847  *      int sig_num[] = { SIG_NUM };
 2848  *  The signals in the list are separated with commas, and the indices
 2849  *  within that list and the SIG_NAME list match, so it's easy to compute
 2850  *  the signal name from a number or vice versa at the price of a small
 2851  *  dynamic linear lookup. 
 2852  *  Duplicates are allowed, but are moved to the end of the list.
 2853  *  The signal number corresponding to sig_name[i] is sig_number[i].
 2854  *  if (i < NSIG) then sig_number[i] == i.  
 2855  *  The last element is 0, corresponding to the 0 at the end of
 2856  *  the sig_name list.
 2857  */
 2858 /* SIG_SIZE:
 2859  *  This variable contains the number of elements of the SIG_NAME
 2860  *  and SIG_NUM arrays, excluding the final NULL entry.
 2861  */
 2862 #define SIG_NAME "ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "NUM16", "NUM17", "NUM18", "NUM19", "CHLD", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0      /**/
 2863 #define SIG_NUM  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0        /**/
 2864 #define SIG_SIZE 27         /**/
 2865 
 2866 /* SITEARCH:
 2867  *  This symbol contains the name of the private library for this package.
 2868  *  The library is private in the sense that it needn't be in anyone's
 2869  *  execution path, but it should be accessible by the world.  The program
 2870  *  should be prepared to do ~ expansion.
 2871  *  The standard distribution will put nothing in this directory.
 2872  *  After perl has been installed, users may install their own local
 2873  *  architecture-dependent modules in this directory with
 2874  *      MakeMaker Makefile.PL
 2875  *  or equivalent.  See INSTALL for details.
 2876  */
 2877 /* SITEARCH_EXP:
 2878  *  This symbol contains the ~name expanded version of SITEARCH, to be used
 2879  *  in programs that are not prepared to deal with ~ expansion at run-time.
 2880  */
 2881 #define SITEARCH "c:\\perl\\site\\5.30.3\\lib\\NetWare-x86-multi-thread"        /**/
 2882 /*#define SITEARCH_EXP ""   /**/
 2883 
 2884 /* SITELIB:
 2885  *  This symbol contains the name of the private library for this package.
 2886  *  The library is private in the sense that it needn't be in anyone's
 2887  *  execution path, but it should be accessible by the world.  The program
 2888  *  should be prepared to do ~ expansion.
 2889  *  The standard distribution will put nothing in this directory.
 2890  *  After perl has been installed, users may install their own local
 2891  *  architecture-independent modules in this directory with
 2892  *      MakeMaker Makefile.PL
 2893  *  or equivalent.  See INSTALL for details.
 2894  */
 2895 /* SITELIB_EXP:
 2896  *  This symbol contains the ~name expanded version of SITELIB, to be used
 2897  *  in programs that are not prepared to deal with ~ expansion at run-time.
 2898  */
 2899 /* SITELIB_STEM:
 2900  *  This define is SITELIB_EXP with any trailing version-specific component
 2901  *  removed.  The elements in inc_version_list (inc_version_list.U) can
 2902  *  be tacked onto this variable to generate a list of directories to search.
 2903  */
 2904 #define SITELIB "c:\\perl\\site\\5.30.3\\lib"       /**/
 2905 /*#define SITELIB_EXP ""    /**/
 2906 #define SITELIB_STEM ""     /**/
 2907 
 2908 /* Size_t_size:
 2909  *  This symbol holds the size of a Size_t in bytes.
 2910  */
 2911 #define Size_t_size 4       /**/
 2912 
 2913 /* Size_t:
 2914  *  This symbol holds the type used to declare length parameters
 2915  *  for string functions.  It is usually size_t, but may be
 2916  *  unsigned long, int, etc.  It may be necessary to include
 2917  *  <sys/types.h> to get any typedef'ed information.
 2918  */
 2919 #define Size_t size_t    /* length parameter for string functions */
 2920 
 2921 /* Sock_size_t:
 2922  *  This symbol holds the type used for the size argument of
 2923  *  various socket calls (just the base type, not the pointer-to).
 2924  */
 2925 #define Sock_size_t     int /**/
 2926 
 2927 /* SSize_t:
 2928  *  This symbol holds the type used by functions that return
 2929  *  a count of bytes or an error condition.  It must be a signed type.
 2930  *  It is usually ssize_t, but may be long or int, etc.
 2931  *  It may be necessary to include <sys/types.h> or <unistd.h>
 2932  *  to get any typedef'ed information.
 2933  *  We will pick a type such that sizeof(SSize_t) == sizeof(Size_t).
 2934  */
 2935 #define SSize_t int  /* signed count of bytes */
 2936 
 2937 /* STARTPERL:
 2938  *  This variable contains the string to put in front of a perl
 2939  *  script to make sure (one hopes) that it runs with perl and not
 2940  *  some shell.
 2941  */
 2942 #define STARTPERL "#!perl"      /**/
 2943 
 2944 /* STDCHAR:
 2945  *  This symbol is defined to be the type of char used in stdio.h.
 2946  *  It has the values "unsigned char" or "char".
 2947  */
 2948 #define STDCHAR char    /**/
 2949 
 2950 /* HAS_STDIO_STREAM_ARRAY:
 2951  *  This symbol, if defined, tells that there is an array
 2952  *  holding the stdio streams.
 2953  */
 2954 /* STDIO_STREAM_ARRAY:
 2955  *  This symbol tells the name of the array holding the stdio streams.
 2956  *  Usual values include _iob, __iob, and __sF.
 2957  */
 2958 /*#define   HAS_STDIO_STREAM_ARRAY  /**/
 2959 #define STDIO_STREAM_ARRAY  
 2960 
 2961 /* Uid_t_f:
 2962  *  This symbol defines the format string used for printing a Uid_t.
 2963  */
 2964 #define Uid_t_f     "ld"        /**/
 2965 
 2966 /* Uid_t_sign:
 2967  *  This symbol holds the signedess of a Uid_t.
 2968  *  1 for unsigned, -1 for signed.
 2969  */
 2970 #define Uid_t_sign  -1      /* UID sign */
 2971 
 2972 /* Uid_t_size:
 2973  *  This symbol holds the size of a Uid_t in bytes.
 2974  */
 2975 #define Uid_t_size 4        /* UID size */
 2976 
 2977 /* Uid_t:
 2978  *  This symbol holds the type used to declare user ids in the kernel.
 2979  *  It can be int, ushort, uid_t, etc... It may be necessary to include
 2980  *  <sys/types.h> to get any typedef'ed information.
 2981  */
 2982 #define Uid_t uid_t     /* UID type */
 2983 
 2984 /* USE_64_BIT_INT:
 2985  *  This symbol, if defined, indicates that 64-bit integers should
 2986  *  be used when available.  If not defined, the native integers
 2987  *  will be employed (be they 32 or 64 bits).  The minimal possible
 2988  *  64-bitness is used, just enough to get 64-bit integers into Perl.
 2989  *  This may mean using for example "long longs", while your memory
 2990  *  may still be limited to 2 gigabytes.
 2991  */
 2992 /* USE_64_BIT_ALL:
 2993  *  This symbol, if defined, indicates that 64-bit integers should
 2994  *  be used when available.  If not defined, the native integers
 2995  *  will be used (be they 32 or 64 bits).  The maximal possible
 2996  *  64-bitness is employed: LP64 or ILP64, meaning that you will
 2997  *  be able to use more than 2 gigabytes of memory.  This mode is
 2998  *  even more binary incompatible than USE_64_BIT_INT. You may not
 2999  *  be able to run the resulting executable in a 32-bit CPU at all or
 3000  *  you may need at least to reboot your OS to 64-bit mode.
 3001  */
 3002 #ifndef USE_64_BIT_INT
 3003 /*#define   USE_64_BIT_INT      /**/
 3004 #endif
 3005 
 3006 #ifndef USE_64_BIT_ALL
 3007 /*#define   USE_64_BIT_ALL      /**/
 3008 #endif
 3009 
 3010 /* USE_FAST_STDIO:
 3011  *  This symbol, if defined, indicates that Perl should
 3012  *  be built to use 'fast stdio'.
 3013  *  Defaults to define in Perls 5.8 and earlier, to undef later.
 3014  */
 3015 #ifndef USE_FAST_STDIO
 3016 /*#define   USE_FAST_STDIO      / **/
 3017 #endif
 3018 
 3019 /* USE_LARGE_FILES:
 3020  *  This symbol, if defined, indicates that large file support
 3021  *  should be used when available.
 3022  */
 3023 #ifndef USE_LARGE_FILES
 3024 /*#define   USE_LARGE_FILES     /**/
 3025 #endif
 3026 
 3027 /* USE_LONG_DOUBLE:
 3028  *  This symbol, if defined, indicates that long doubles should
 3029  *  be used when available.
 3030  */
 3031 #ifndef USE_LONG_DOUBLE
 3032 /*#define   USE_LONG_DOUBLE     /**/
 3033 #endif
 3034 
 3035 /* USE_MORE_BITS:
 3036  *  This symbol, if defined, indicates that 64-bit interfaces and
 3037  *  long doubles should be used when available.
 3038  */
 3039 #ifndef USE_MORE_BITS
 3040 /*#define   USE_MORE_BITS       /**/
 3041 #endif
 3042 
 3043 /* MULTIPLICITY:
 3044  *  This symbol, if defined, indicates that Perl should
 3045  *  be built to use multiplicity.
 3046  */
 3047 #ifndef MULTIPLICITY
 3048 #define MULTIPLICITY        /**/
 3049 #endif
 3050 
 3051 /* USE_PERLIO:
 3052  *  This symbol, if defined, indicates that the PerlIO abstraction should
 3053  *  be used throughout.  If not defined, stdio should be
 3054  *  used in a fully backward compatible manner.
 3055  */
 3056 #ifndef USE_PERLIO
 3057 /*#define   USE_PERLIO      /**/
 3058 #endif
 3059 
 3060 /* USE_SOCKS:
 3061  *  This symbol, if defined, indicates that Perl should
 3062  *  be built to use socks.
 3063  */
 3064 #ifndef USE_SOCKS
 3065 /*#define   USE_SOCKS       /**/
 3066 #endif
 3067 
 3068 /* USE_ITHREADS:
 3069  *  This symbol, if defined, indicates that Perl should be built to
 3070  *  use the interpreter-based threading implementation.
 3071  */
 3072 /* OLD_PTHREADS_API:
 3073  *  This symbol, if defined, indicates that Perl should
 3074  *  be built to use the old draft POSIX threads API.
 3075  */
 3076 /* USE_REENTRANT_API:
 3077  *  This symbol, if defined, indicates that Perl should
 3078  *  try to use the various _r versions of library functions.
 3079  *  This is extremely experimental.
 3080  */
 3081 #define USE_ITHREADS        /**/
 3082 /*#define   OLD_PTHREADS_API        /**/
 3083 /*#define   USE_REENTRANT_API   /**/
 3084 
 3085 /* PERL_VENDORARCH:
 3086  *  If defined, this symbol contains the name of a private library.
 3087  *  The library is private in the sense that it needn't be in anyone's
 3088  *  execution path, but it should be accessible by the world.
 3089  *  It may have a ~ on the front. 
 3090  *  The standard distribution will put nothing in this directory.
 3091  *  Vendors who distribute perl may wish to place their own
 3092  *  architecture-dependent modules and extensions in this directory with
 3093  *      MakeMaker Makefile.PL INSTALLDIRS=vendor 
 3094  *  or equivalent.  See INSTALL for details.
 3095  */
 3096 /* PERL_VENDORARCH_EXP:
 3097  *  This symbol contains the ~name expanded version of PERL_VENDORARCH, to be used
 3098  *  in programs that are not prepared to deal with ~ expansion at run-time.
 3099  */
 3100 /*#define PERL_VENDORARCH ""        /**/
 3101 /*#define PERL_VENDORARCH_EXP ""        /**/
 3102 
 3103 /* PERL_VENDORLIB_EXP:
 3104  *  This symbol contains the ~name expanded version of VENDORLIB, to be used
 3105  *  in programs that are not prepared to deal with ~ expansion at run-time.
 3106  */
 3107 /* PERL_VENDORLIB_STEM:
 3108  *  This define is PERL_VENDORLIB_EXP with any trailing version-specific component
 3109  *  removed.  The elements in inc_version_list (inc_version_list.U) can
 3110  *  be tacked onto this variable to generate a list of directories to search.
 3111  */
 3112 /*#define PERL_VENDORLIB_EXP ""     /**/
 3113 /*#define PERL_VENDORLIB_STEM ""        /**/
 3114 
 3115 /* SETUID_SCRIPTS_ARE_SECURE_NOW:
 3116  *  This symbol, if defined, indicates that the bug that prevents
 3117  *  setuid scripts from being secure is not present in this kernel.
 3118  */
 3119 /* DOSUID:
 3120  *  This symbol, if defined, indicates that the C program should
 3121  *  check the script that it is executing for setuid/setgid bits, and
 3122  *  attempt to emulate setuid/setgid on systems that have disabled
 3123  *  setuid #! scripts because the kernel can't do it securely.
 3124  *  It is up to the package designer to make sure that this emulation
 3125  *  is done securely.  Among other things, it should do an fstat on
 3126  *  the script it just opened to make sure it really is a setuid/setgid
 3127  *  script, it should make sure the arguments passed correspond exactly
 3128  *  to the argument on the #! line, and it should not trust any
 3129  *  subprocesses to which it must pass the filename rather than the
 3130  *  file descriptor of the script to be executed.
 3131  */
 3132 /*#define SETUID_SCRIPTS_ARE_SECURE_NOW /**/
 3133 /*#define DOSUID        /**/
 3134 
 3135 /* USE_CROSS_COMPILE:
 3136  *  This symbol, if defined, indicates that Perl is being cross-compiled.
 3137  */
 3138 /* PERL_TARGETARCH:
 3139  *  This symbol, if defined, indicates the target architecture
 3140  *  Perl has been cross-compiled to.  Undefined if not a cross-compile.
 3141  */
 3142 #ifndef USE_CROSS_COMPILE
 3143 /*#define   USE_CROSS_COMPILE   /**/
 3144 #define PERL_TARGETARCH "undef" /**/
 3145 #endif
 3146 
 3147 /* HAS_COPYSIGNL:
 3148  *  This symbol, if defined, indicates that the copysignl routine is
 3149  *  available.  If aintl is also present we can emulate modfl.
 3150  */
 3151 /*#define HAS_COPYSIGNL     /**/
 3152 
 3153 /* HAS_DBMINIT_PROTO:
 3154  *  This symbol, if defined, indicates that the system provides
 3155  *  a prototype for the dbminit() function.  Otherwise, it is up
 3156  *  to the program to supply one.  A good guess is
 3157  *      extern int dbminit(char *);
 3158  */
 3159 /*#define   HAS_DBMINIT_PROTO   /**/
 3160 
 3161 /* HAS_FLOCK_PROTO:
 3162  *  This symbol, if defined, indicates that the system provides
 3163  *  a prototype for the flock() function.  Otherwise, it is up
 3164  *  to the program to supply one.  A good guess is
 3165  *      extern int flock(int, int);
 3166  */
 3167 /*#define   HAS_FLOCK_PROTO /**/
 3168 
 3169 /* HAS_REALPATH:
 3170  *  This symbol, if defined, indicates that the realpath routine is
 3171  *  available to do resolve paths.
 3172  */
 3173 /*#define HAS_REALPATH      /**/
 3174 
 3175 /* HAS_SIGPROCMASK:
 3176  *  This symbol, if defined, indicates that the sigprocmask
 3177  *  system call is available to examine or change the signal mask
 3178  *  of the calling process.
 3179  */
 3180 /*#define HAS_SIGPROCMASK       /**/
 3181 
 3182 /* HAS_SOCKATMARK:
 3183  *  This symbol, if defined, indicates that the sockatmark routine is
 3184  *  available to test whether a socket is at the out-of-band mark.
 3185  */
 3186 /*#define HAS_SOCKATMARK        /**/
 3187 
 3188 /* HAS_SOCKATMARK_PROTO:
 3189  *  This symbol, if defined, indicates that the system provides
 3190  *  a prototype for the sockatmark() function.  Otherwise, it is up
 3191  *  to the program to supply one.  A good guess is
 3192  *      extern int sockatmark(int);
 3193  */
 3194 /*#define   HAS_SOCKATMARK_PROTO    /**/
 3195 
 3196 /* HAS_SETRESGID_PROTO:
 3197  *  This symbol, if defined, indicates that the system provides
 3198  *  a prototype for the setresgid() function.  Otherwise, it is up
 3199  *  to the program to supply one.  Good guesses are
 3200  *      extern int setresgid(uid_t ruid, uid_t euid, uid_t suid);
 3201  */
 3202 /*#define   HAS_SETRESGID_PROTO /**/
 3203 
 3204 /* HAS_SETRESUID_PROTO:
 3205  *  This symbol, if defined, indicates that the system provides
 3206  *  a prototype for the setresuid() function.  Otherwise, it is up
 3207  *  to the program to supply one.  Good guesses are
 3208  *      extern int setresuid(uid_t ruid, uid_t euid, uid_t suid);
 3209  */
 3210 /*#define   HAS_SETRESUID_PROTO /**/
 3211 
 3212 /* HAS_STRFTIME:
 3213  *  This symbol, if defined, indicates that the strftime routine is
 3214  *  available to do time formatting.
 3215  */
 3216 #define HAS_STRFTIME        /**/
 3217 
 3218 /* HAS_STRLCAT
 3219  *      This symbol, if defined, indicates that the strlcat routine is
 3220  *      available to do string concatenation.
 3221  */
 3222 /*#define HAS_STRLCAT           /**/
 3223 
 3224 /* HAS_STRLCPY:
 3225  *      This symbol, if defined, indicates that the strlcpy routine is
 3226  *      available to do string copying.
 3227  */
 3228 /*#define HAS_STRLCPY           /**/
 3229 
 3230 /* HAS_SYSCALL_PROTO:
 3231  *  This symbol, if defined, indicates that the system provides
 3232  *  a prototype for the syscall() function.  Otherwise, it is up
 3233  *  to the program to supply one.  Good guesses are
 3234  *      extern int syscall(int,  ...);
 3235  *      extern int syscall(long, ...);
 3236  */
 3237 /*#define   HAS_SYSCALL_PROTO   /**/
 3238 
 3239 /* U32_ALIGNMENT_REQUIRED:
 3240  *  This symbol, if defined, indicates that you must access
 3241  *  character data through U32-aligned pointers.
 3242  */
 3243 /*#define U32_ALIGNMENT_REQUIRED    /**/
 3244 
 3245 /* HAS_USLEEP_PROTO:
 3246  *  This symbol, if defined, indicates that the system provides
 3247  *  a prototype for the usleep() function.  Otherwise, it is up
 3248  *  to the program to supply one.  A good guess is
 3249  *      extern int usleep(useconds_t);
 3250  */
 3251 /*#define   HAS_USLEEP_PROTO    /**/
 3252 
 3253 /* HAS_PTHREAD_ATFORK:
 3254  *  This symbol, if defined, indicates that the pthread_atfork routine
 3255  *  is available to setup fork handlers.
 3256  */
 3257 /*#define HAS_PTHREAD_ATFORK        /**/
 3258 
 3259 #endif