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