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