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