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