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