1: make config.h.SH 2case $CONFIG in 3'') 4 if test ! -f config.sh; then 5 ln ../config.sh . || \ 6 ln ../../config.sh . || \ 7 ln ../../../config.sh . || \ 8 (echo "Can't find config.sh."; exit 1) 9 echo "Using config.sh from above..." 10 fi 2>/dev/null 11 . ./config.sh 12 ;; 13esac 14echo "Extracting config.h (with variable substitutions)" 15sed <<!GROK!THIS! >config.h -e 's!^#undef!/\*#undef!' 16#ifndef config_h 17#define config_h 18/* config.h 19 * This file was produced by running the config.h.SH script, which 20 * gets its values from config.sh, which is generally produced by 21 * running Configure. 22 * 23 * Feel free to modify any of this as the need arises. Note, however, 24 * that running config.h.SH again will wipe out any changes you've made. 25 * For a more permanent change edit config.sh and rerun config.h.SH. 26 */ 27 /*SUPPRESS 460*/ 28 29 30/* EUNICE 31 * This symbol, if defined, indicates that the program is being compiled 32 * under the EUNICE package under VMS. The program will need to handle 33 * things like files that don't go away the first time you unlink them, 34 * due to version numbering. It will also need to compensate for lack 35 * of a respectable link() command. 36 */ 37/* VMS 38 * This symbol, if defined, indicates that the program is running under 39 * VMS. It is currently only set in conjunction with the EUNICE symbol. 40 */ 41#$d_eunice EUNICE /**/ 42#$d_eunice VMS /**/ 43 44/* LOC_SED 45 * This symbol holds the complete pathname to the sed program. 46 */ 47#define LOC_SED "$sed" /**/ 48 49/* BIN 50 * This symbol holds the name of the directory in which the user wants 51 * to keep publicly executable images for the package in question. It 52 * is most often a local directory such as /usr/local/bin. 53 */ 54#define BIN "$bin" /**/ 55 56/* BYTEORDER 57 * This symbol contains an encoding of the order of bytes in a long. 58 * Usual values (in hex) are 0x1234, 0x4321, 0x2143, 0x3412... 59 */ 60#define BYTEORDER 0x$byteorder /**/ 61 62/* CPPSTDIN 63 * This symbol contains the first part of the string which will invoke 64 * the C preprocessor on the standard input and produce to standard 65 * output. Typical value of "cc -E" or "/lib/cpp". 66 */ 67/* CPPMINUS 68 * This symbol contains the second part of the string which will invoke 69 * the C preprocessor on the standard input and produce to standard 70 * output. This symbol will have the value "-" if CPPSTDIN needs a minus 71 * to specify standard input, otherwise the value is "". 72 */ 73#define CPPSTDIN "$cppstdin" 74#define CPPMINUS "$cppminus" 75 76/* HAS_BCMP 77 * This symbol, if defined, indicates that the bcmp routine is available 78 * to compare blocks of memory. If undefined, use memcmp. If that's 79 * not available, roll your own. 80 */ 81#$d_bcmp HAS_BCMP /**/ 82 83/* HAS_BCOPY 84 * This symbol, if defined, indicates that the bcopy routine is available 85 * to copy blocks of memory. Otherwise you should probably use memcpy(). 86 * If neither is defined, roll your own. 87 */ 88/* SAFE_BCOPY 89 * This symbol, if defined, indicates that the bcopy routine is available 90 * to copy potentially overlapping copy blocks of bcopy. Otherwise you 91 * should probably use memmove() or memcpy(). If neither is defined, 92 * roll your own. 93 */ 94#$d_bcopy HAS_BCOPY /**/ 95#$d_safebcpy SAFE_BCOPY /**/ 96 97/* HAS_BZERO 98 * This symbol, if defined, indicates that the bzero routine is available 99 * to zero blocks of memory. Otherwise you should probably use memset() 100 * or roll your own. 101 */ 102#$d_bzero HAS_BZERO /**/ 103 104/* CASTNEGFLOAT 105 * This symbol, if defined, indicates that this C compiler knows how to 106 * cast negative or large floating point numbers to unsigned longs, ints 107 * and shorts. 108 */ 109/* CASTFLAGS 110 * This symbol contains flags that say what difficulties the compiler 111 * has casting odd floating values to unsigned long: 112 * 1 = couldn't cast < 0 113 * 2 = couldn't cast >= 0x80000000 114 */ 115#$d_castneg CASTNEGFLOAT /**/ 116#define CASTFLAGS $castflags /**/ 117 118/* CHARSPRINTF 119 * This symbol is defined if this system declares "char *sprintf()" in 120 * stdio.h. The trend seems to be to declare it as "int sprintf()". It 121 * is up to the package author to declare sprintf correctly based on the 122 * symbol. 123 */ 124#$d_charsprf CHARSPRINTF /**/ 125 126/* HAS_CHSIZE 127 * This symbol, if defined, indicates that the chsize routine is available 128 * to truncate files. You might need a -lx to get this routine. 129 */ 130#$d_chsize HAS_CHSIZE /**/ 131 132/* HAS_CRYPT 133 * This symbol, if defined, indicates that the crypt routine is available 134 * to encrypt passwords and the like. 135 */ 136#$d_crypt HAS_CRYPT /**/ 137 138/* CSH 139 * This symbol, if defined, indicates that the C-shell exists. 140 * If defined, contains the full pathname of csh. 141 */ 142#$d_csh CSH "$csh" /**/ 143 144/* DOSUID 145 * This symbol, if defined, indicates that the C program should 146 * check the script that it is executing for setuid/setgid bits, and 147 * attempt to emulate setuid/setgid on systems that have disabled 148 * setuid #! scripts because the kernel can't do it securely. 149 * It is up to the package designer to make sure that this emulation 150 * is done securely. Among other things, it should do an fstat on 151 * the script it just opened to make sure it really is a setuid/setgid 152 * script, it should make sure the arguments passed correspond exactly 153 * to the argument on the #! line, and it should not trust any 154 * subprocesses to which it must pass the filename rather than the 155 * file descriptor of the script to be executed. 156 */ 157#$d_dosuid DOSUID /**/ 158 159/* HAS_DUP2 160 * This symbol, if defined, indicates that the dup2 routine is available 161 * to dup file descriptors. Otherwise you should use dup(). 162 */ 163#$d_dup2 HAS_DUP2 /**/ 164 165/* HAS_FCHMOD 166 * This symbol, if defined, indicates that the fchmod routine is available 167 * to change mode of opened files. If unavailable, use chmod(). 168 */ 169#$d_fchmod HAS_FCHMOD /**/ 170 171/* HAS_FCHOWN 172 * This symbol, if defined, indicates that the fchown routine is available 173 * to change ownership of opened files. If unavailable, use chown(). 174 */ 175#$d_fchown HAS_FCHOWN /**/ 176 177/* HAS_FCNTL 178 * This symbol, if defined, indicates to the C program that 179 * the fcntl() function exists. 180 */ 181#$d_fcntl HAS_FCNTL /**/ 182 183/* FLEXFILENAMES 184 * This symbol, if defined, indicates that the system supports filenames 185 * longer than 14 characters. 186 */ 187#$d_flexfnam FLEXFILENAMES /**/ 188 189/* HAS_FLOCK 190 * This symbol, if defined, indicates that the flock() routine is 191 * available to do file locking. 192 */ 193#$d_flock HAS_FLOCK /**/ 194 195/* HAS_GETGROUPS 196 * This symbol, if defined, indicates that the getgroups() routine is 197 * available to get the list of process groups. If unavailable, multiple 198 * groups are probably not supported. 199 */ 200#$d_getgrps HAS_GETGROUPS /**/ 201 202/* HAS_GETHOSTENT 203 * This symbol, if defined, indicates that the gethostent() routine is 204 * available to lookup host names in some data base or other. 205 */ 206#$d_gethent HAS_GETHOSTENT /**/ 207 208/* HAS_GETPGRP 209 * This symbol, if defined, indicates that the getpgrp() routine is 210 * available to get the current process group. 211 */ 212#$d_getpgrp HAS_GETPGRP /**/ 213 214/* HAS_GETPGRP2 215 * This symbol, if defined, indicates that the getpgrp2() (as in DG/UX) 216 * routine is available to get the current process group. 217 */ 218#$d_getpgrp2 HAS_GETPGRP2 /**/ 219 220/* HAS_GETPRIORITY 221 * This symbol, if defined, indicates that the getpriority() routine is 222 * available to get a process's priority. 223 */ 224#$d_getprior HAS_GETPRIORITY /**/ 225 226/* HAS_HTONS 227 * This symbol, if defined, indicates that the htons routine (and friends) 228 * are available to do network order byte swapping. 229 */ 230/* HAS_HTONL 231 * This symbol, if defined, indicates that the htonl routine (and friends) 232 * are available to do network order byte swapping. 233 */ 234/* HAS_NTOHS 235 * This symbol, if defined, indicates that the ntohs routine (and friends) 236 * are available to do network order byte swapping. 237 */ 238/* HAS_NTOHL 239 * This symbol, if defined, indicates that the ntohl routine (and friends) 240 * are available to do network order byte swapping. 241 */ 242#$d_htonl HAS_HTONS /**/ 243#$d_htonl HAS_HTONL /**/ 244#$d_htonl HAS_NTOHS /**/ 245#$d_htonl HAS_NTOHL /**/ 246 247/* index 248 * This preprocessor symbol is defined, along with rindex, if the system 249 * uses the strchr and strrchr routines instead. 250 */ 251/* rindex 252 * This preprocessor symbol is defined, along with index, if the system 253 * uses the strchr and strrchr routines instead. 254 */ 255#$d_index index strchr /* cultural */ 256#$d_index rindex strrchr /* differences? */ 257 258/* HAS_ISASCII 259 * This symbol, if defined, indicates that the isascii routine is available 260 * to test characters for asciiness. 261 */ 262#$d_isascii HAS_ISASCII /**/ 263 264/* HAS_KILLPG 265 * This symbol, if defined, indicates that the killpg routine is available 266 * to kill process groups. If unavailable, you probably should use kill 267 * with a negative process number. 268 */ 269#$d_killpg HAS_KILLPG /**/ 270 271/* HAS_LSTAT 272 * This symbol, if defined, indicates that the lstat() routine is 273 * available to stat symbolic links. 274 */ 275#$d_lstat HAS_LSTAT /**/ 276 277/* HAS_MEMCMP 278 * This symbol, if defined, indicates that the memcmp routine is available 279 * to compare blocks of memory. If undefined, roll your own. 280 */ 281#$d_memcmp HAS_MEMCMP /**/ 282 283/* HAS_MEMCPY 284 * This symbol, if defined, indicates that the memcpy routine is available 285 * to copy blocks of memory. Otherwise you should probably use bcopy(). 286 * If neither is defined, roll your own. 287 */ 288/* SAFE_MEMCPY 289 * This symbol, if defined, indicates that the memcpy routine is available 290 * to copy potentially overlapping copy blocks of memory. Otherwise you 291 * should probably use memmove() or bcopy(). If neither is defined, 292 * roll your own. 293 */ 294#$d_memcpy HAS_MEMCPY /**/ 295#$d_safemcpy SAFE_MEMCPY /**/ 296 297/* HAS_MEMMOVE 298 * This symbol, if defined, indicates that the memmove routine is available 299 * to move potentially overlapping blocks of memory. Otherwise you 300 * should use bcopy() or roll your own. 301 */ 302#$d_memmove HAS_MEMMOVE /**/ 303 304/* HAS_MEMSET 305 * This symbol, if defined, indicates that the memset routine is available 306 * to set a block of memory to a character. If undefined, roll your own. 307 */ 308#$d_memset HAS_MEMSET /**/ 309 310/* HAS_MKDIR 311 * This symbol, if defined, indicates that the mkdir routine is available 312 * to create directories. Otherwise you should fork off a new process to 313 * exec /bin/mkdir. 314 */ 315#$d_mkdir HAS_MKDIR /**/ 316 317/* HAS_MSG 318 * This symbol, if defined, indicates that the entire msg*(2) library is 319 * supported. 320 */ 321#$d_msg HAS_MSG /**/ 322 323/* HAS_MSGCTL 324 * This symbol, if defined, indicates that the msgctl() routine is 325 * available to control message passing. 326 */ 327#$d_msgctl HAS_MSGCTL /**/ 328 329/* HAS_MSGGET 330 * This symbol, if defined, indicates that the msgget() routine is 331 * available to get messages. 332 */ 333#$d_msgget HAS_MSGGET /**/ 334 335/* HAS_MSGRCV 336 * This symbol, if defined, indicates that the msgrcv() routine is 337 * available to receive messages. 338 */ 339#$d_msgrcv HAS_MSGRCV /**/ 340 341/* HAS_MSGSND 342 * This symbol, if defined, indicates that the msgsnd() routine is 343 * available to send messages. 344 */ 345#$d_msgsnd HAS_MSGSND /**/ 346 347/* HAS_NDBM 348 * This symbol, if defined, indicates that ndbm.h exists and should 349 * be included. 350 */ 351#$d_ndbm HAS_NDBM /**/ 352 353/* HAS_ODBM 354 * This symbol, if defined, indicates that dbm.h exists and should 355 * be included. 356 */ 357#$d_odbm HAS_ODBM /**/ 358 359/* HAS_OPEN3 360 * This manifest constant lets the C program know that the three 361 * argument form of open(2) is available. 362 */ 363#$d_open3 HAS_OPEN3 /**/ 364 365/* HAS_READDIR 366 * This symbol, if defined, indicates that the readdir routine is available 367 * from the C library to read directories. 368 */ 369#$d_readdir HAS_READDIR /**/ 370 371/* HAS_RENAME 372 * This symbol, if defined, indicates that the rename routine is available 373 * to rename files. Otherwise you should do the unlink(), link(), unlink() 374 * trick. 375 */ 376#$d_rename HAS_RENAME /**/ 377 378/* HAS_REWINDDIR 379 * This symbol, if defined, indicates that the rewindir routine is 380 * available to rewind directories. 381 */ 382#$d_rewindir HAS_REWINDDIR /**/ 383 384/* HAS_RMDIR 385 * This symbol, if defined, indicates that the rmdir routine is available 386 * to remove directories. Otherwise you should fork off a new process to 387 * exec /bin/rmdir. 388 */ 389#$d_rmdir HAS_RMDIR /**/ 390 391/* HAS_SEEKDIR 392 * This symbol, if defined, indicates that the seekdir routine is 393 * available to seek into directories. 394 */ 395#$d_seekdir HAS_SEEKDIR /**/ 396 397/* HAS_SELECT 398 * This symbol, if defined, indicates that the select() subroutine 399 * exists. 400 */ 401#$d_select HAS_SELECT /**/ 402 403/* HAS_SEM 404 * This symbol, if defined, indicates that the entire sem*(2) library is 405 * supported. 406 */ 407#$d_sem HAS_SEM /**/ 408 409/* HAS_SEMCTL 410 * This symbol, if defined, indicates that the semctl() routine is 411 * available to control semaphores. 412 */ 413#$d_semctl HAS_SEMCTL /**/ 414 415/* HAS_SEMGET 416 * This symbol, if defined, indicates that the semget() routine is 417 * available to get semaphores ids. 418 */ 419#$d_semget HAS_SEMGET /**/ 420 421/* HAS_SEMOP 422 * This symbol, if defined, indicates that the semop() routine is 423 * available to perform semaphore operations. 424 */ 425#$d_semop HAS_SEMOP /**/ 426 427/* HAS_SETEGID 428 * This symbol, if defined, indicates that the setegid routine is available 429 * to change the effective gid of the current program. 430 */ 431#$d_setegid HAS_SETEGID /**/ 432 433/* HAS_SETEUID 434 * This symbol, if defined, indicates that the seteuid routine is available 435 * to change the effective uid of the current program. 436 */ 437#$d_seteuid HAS_SETEUID /**/ 438 439/* HAS_SETPGRP 440 * This symbol, if defined, indicates that the setpgrp() routine is 441 * available to set the current process group. 442 */ 443#$d_setpgrp HAS_SETPGRP /**/ 444 445/* HAS_SETPGRP2 446 * This symbol, if defined, indicates that the setpgrp2() (as in DG/UX) 447 * routine is available to set the current process group. 448 */ 449#$d_setpgrp2 HAS_SETPGRP2 /**/ 450 451/* HAS_SETPRIORITY 452 * This symbol, if defined, indicates that the setpriority() routine is 453 * available to set a process's priority. 454 */ 455#$d_setprior HAS_SETPRIORITY /**/ 456 457/* HAS_SETREGID 458 * This symbol, if defined, indicates that the setregid routine is 459 * available to change the real and effective gid of the current program. 460 */ 461/* HAS_SETRESGID 462 * This symbol, if defined, indicates that the setresgid routine is 463 * available to change the real, effective and saved gid of the current 464 * program. 465 */ 466#$d_setregid HAS_SETREGID /**/ 467#$d_setresgid HAS_SETRESGID /**/ 468 469/* HAS_SETREUID 470 * This symbol, if defined, indicates that the setreuid routine is 471 * available to change the real and effective uid of the current program. 472 */ 473/* HAS_SETRESUID 474 * This symbol, if defined, indicates that the setresuid routine is 475 * available to change the real, effective and saved uid of the current 476 * program. 477 */ 478#$d_setreuid HAS_SETREUID /**/ 479#$d_setresuid HAS_SETRESUID /**/ 480 481/* HAS_SETRGID 482 * This symbol, if defined, indicates that the setrgid routine is available 483 * to change the real gid of the current program. 484 */ 485#$d_setrgid HAS_SETRGID /**/ 486 487/* HAS_SETRUID 488 * This symbol, if defined, indicates that the setruid routine is available 489 * to change the real uid of the current program. 490 */ 491#$d_setruid HAS_SETRUID /**/ 492 493/* HAS_SHM 494 * This symbol, if defined, indicates that the entire shm*(2) library is 495 * supported. 496 */ 497#$d_shm HAS_SHM /**/ 498 499/* HAS_SHMAT 500 * This symbol, if defined, indicates that the shmat() routine is 501 * available to attach a shared memory segment. 502 */ 503/* VOID_SHMAT 504 * This symbol, if defined, indicates that the shmat() routine 505 * returns a pointer of type void*. 506 */ 507#$d_shmat HAS_SHMAT /**/ 508 509#$d_voidshmat VOIDSHMAT /**/ 510 511/* HAS_SHMCTL 512 * This symbol, if defined, indicates that the shmctl() routine is 513 * available to control a shared memory segment. 514 */ 515#$d_shmctl HAS_SHMCTL /**/ 516 517/* HAS_SHMDT 518 * This symbol, if defined, indicates that the shmdt() routine is 519 * available to detach a shared memory segment. 520 */ 521#$d_shmdt HAS_SHMDT /**/ 522 523/* HAS_SHMGET 524 * This symbol, if defined, indicates that the shmget() routine is 525 * available to get a shared memory segment id. 526 */ 527#$d_shmget HAS_SHMGET /**/ 528 529/* HAS_SOCKET 530 * This symbol, if defined, indicates that the BSD socket interface is 531 * supported. 532 */ 533/* HAS_SOCKETPAIR 534 * This symbol, if defined, indicates that the BSD socketpair call is 535 * supported. 536 */ 537/* OLDSOCKET 538 * This symbol, if defined, indicates that the 4.1c BSD socket interface 539 * is supported instead of the 4.2/4.3 BSD socket interface. 540 */ 541#$d_socket HAS_SOCKET /**/ 542 543#$d_sockpair HAS_SOCKETPAIR /**/ 544 545#$d_oldsock OLDSOCKET /**/ 546 547/* STATBLOCKS 548 * This symbol is defined if this system has a stat structure declaring 549 * st_blksize and st_blocks. 550 */ 551#$d_statblks STATBLOCKS /**/ 552 553/* STDSTDIO 554 * This symbol is defined if this system has a FILE structure declaring 555 * _ptr and _cnt in stdio.h. 556 */ 557#$d_stdstdio STDSTDIO /**/ 558 559/* STRUCTCOPY 560 * This symbol, if defined, indicates that this C compiler knows how 561 * to copy structures. If undefined, you'll need to use a block copy 562 * routine of some sort instead. 563 */ 564#$d_strctcpy STRUCTCOPY /**/ 565 566/* HAS_STRERROR 567 * This symbol, if defined, indicates that the strerror() routine is 568 * available to translate error numbers to strings. 569 */ 570#$d_strerror HAS_STRERROR /**/ 571 572/* HAS_SYMLINK 573 * This symbol, if defined, indicates that the symlink routine is available 574 * to create symbolic links. 575 */ 576#$d_symlink HAS_SYMLINK /**/ 577 578/* HAS_SYSCALL 579 * This symbol, if defined, indicates that the syscall routine is available 580 * to call arbitrary system calls. If undefined, that's tough. 581 */ 582#$d_syscall HAS_SYSCALL /**/ 583 584/* HAS_TELLDIR 585 * This symbol, if defined, indicates that the telldir routine is 586 * available to tell your location in directories. 587 */ 588#$d_telldir HAS_TELLDIR /**/ 589 590/* HAS_TRUNCATE 591 * This symbol, if defined, indicates that the truncate routine is 592 * available to truncate files. 593 */ 594#$d_truncate HAS_TRUNCATE /**/ 595 596/* HAS_VFORK 597 * This symbol, if defined, indicates that vfork() exists. 598 */ 599#$d_vfork HAS_VFORK /**/ 600 601/* VOIDSIG 602 * This symbol is defined if this system declares "void (*signal())()" in 603 * signal.h. The old way was to declare it as "int (*signal())()". It 604 * is up to the package author to declare things correctly based on the 605 * symbol. 606 */ 607/* TO_SIGNAL 608 * This symbol's value is either "void" or "int", corresponding to the 609 * appropriate return "type" of a signal handler. Thus, one can declare 610 * a signal handler using "TO_SIGNAL (*handler())()", and define the 611 * handler using "TO_SIGNAL handler(sig)". 612 */ 613#$d_voidsig VOIDSIG /**/ 614#$define TO_SIGNAL $d_tosignal /**/ 615 616/* HASVOLATILE 617 * This symbol, if defined, indicates that this C compiler knows about 618 * the volatile declaration. 619 */ 620#$d_volatile HASVOLATILE /**/ 621 622/* HAS_VPRINTF 623 * This symbol, if defined, indicates that the vprintf routine is available 624 * to printf with a pointer to an argument list. If unavailable, you 625 * may need to write your own, probably in terms of _doprnt(). 626 */ 627/* CHARVSPRINTF 628 * This symbol is defined if this system has vsprintf() returning type 629 * (char*). The trend seems to be to declare it as "int vsprintf()". It 630 * is up to the package author to declare vsprintf correctly based on the 631 * symbol. 632 */ 633#$d_vprintf HAS_VPRINTF /**/ 634#$d_charvspr CHARVSPRINTF /**/ 635 636/* HAS_WAIT4 637 * This symbol, if defined, indicates that wait4() exists. 638 */ 639#$d_wait4 HAS_WAIT4 /**/ 640 641/* HAS_WAITPID 642 * This symbol, if defined, indicates that waitpid() exists. 643 */ 644#$d_waitpid HAS_WAITPID /**/ 645 646/* GIDTYPE 647 * This symbol has a value like gid_t, int, ushort, or whatever type is 648 * used to declare group ids in the kernel. 649 */ 650#define GIDTYPE $gidtype /**/ 651 652/* GROUPSTYPE 653 * This symbol has a value like gid_t, int, ushort, or whatever type is 654 * used in the return value of getgroups(). 655 */ 656#define GROUPSTYPE $groupstype /**/ 657 658/* I_FCNTL 659 * This manifest constant tells the C program to include <fcntl.h>. 660 */ 661#$i_fcntl I_FCNTL /**/ 662 663/* I_GDBM 664 * This symbol, if defined, indicates that gdbm.h exists and should 665 * be included. 666 */ 667#$i_gdbm I_GDBM /**/ 668 669/* I_GRP 670 * This symbol, if defined, indicates to the C program that it should 671 * include grp.h. 672 */ 673#$i_grp I_GRP /**/ 674 675/* I_NETINET_IN 676 * This symbol, if defined, indicates to the C program that it should 677 * include netinet/in.h. 678 */ 679/* I_SYS_IN 680 * This symbol, if defined, indicates to the C program that it should 681 * include sys/in.h. 682 */ 683#$i_niin I_NETINET_IN /**/ 684#$i_sysin I_SYS_IN /**/ 685 686/* I_PWD 687 * This symbol, if defined, indicates to the C program that it should 688 * include pwd.h. 689 */ 690/* PWQUOTA 691 * This symbol, if defined, indicates to the C program that struct passwd 692 * contains pw_quota. 693 */ 694/* PWAGE 695 * This symbol, if defined, indicates to the C program that struct passwd 696 * contains pw_age. 697 */ 698/* PWCHANGE 699 * This symbol, if defined, indicates to the C program that struct passwd 700 * contains pw_change. 701 */ 702/* PWCLASS 703 * This symbol, if defined, indicates to the C program that struct passwd 704 * contains pw_class. 705 */ 706/* PWEXPIRE 707 * This symbol, if defined, indicates to the C program that struct passwd 708 * contains pw_expire. 709 */ 710/* PWCOMMENT 711 * This symbol, if defined, indicates to the C program that struct passwd 712 * contains pw_comment. 713 */ 714#$i_pwd I_PWD /**/ 715#$d_pwquota PWQUOTA /**/ 716#$d_pwage PWAGE /**/ 717#$d_pwchange PWCHANGE /**/ 718#$d_pwclass PWCLASS /**/ 719#$d_pwexpire PWEXPIRE /**/ 720#$d_pwcomment PWCOMMENT /**/ 721 722/* I_SYS_FILE 723 * This manifest constant tells the C program to include <sys/file.h>. 724 */ 725#$i_sys_file I_SYS_FILE /**/ 726 727/* I_SYSIOCTL 728 * This symbol, if defined, indicates that sys/ioctl.h exists and should 729 * be included. 730 */ 731#$i_sysioctl I_SYSIOCTL /**/ 732 733/* I_TIME 734 * This symbol is defined if the program should include <time.h>. 735 */ 736/* I_SYS_TIME 737 * This symbol is defined if the program should include <sys/time.h>. 738 */ 739/* SYSTIMEKERNEL 740 * This symbol is defined if the program should include <sys/time.h> 741 * with KERNEL defined. 742 */ 743/* I_SYS_SELECT 744 * This symbol is defined if the program should include <sys/select.h>. 745 */ 746#$i_time I_TIME /**/ 747#$i_sys_time I_SYS_TIME /**/ 748#$d_systimekernel SYSTIMEKERNEL /**/ 749#$i_sys_select I_SYS_SELECT /**/ 750 751/* I_UTIME 752 * This symbol, if defined, indicates to the C program that it should 753 * include utime.h. 754 */ 755#$i_utime I_UTIME /**/ 756 757/* I_VARARGS 758 * This symbol, if defined, indicates to the C program that it should 759 * include varargs.h. 760 */ 761#$i_varargs I_VARARGS /**/ 762 763/* I_VFORK 764 * This symbol, if defined, indicates to the C program that it should 765 * include vfork.h. 766 */ 767#$i_vfork I_VFORK /**/ 768 769/* INTSIZE 770 * This symbol contains the size of an int, so that the C preprocessor 771 * can make decisions based on it. 772 */ 773#define INTSIZE $intsize /**/ 774 775/* I_DIRENT 776 * This symbol, if defined, indicates that the program should use the 777 * P1003-style directory routines, and include <dirent.h>. 778 */ 779/* I_SYS_DIR 780 * This symbol, if defined, indicates that the program should use the 781 * directory functions by including <sys/dir.h>. 782 */ 783/* I_NDIR 784 * This symbol, if defined, indicates that the program should include the 785 * system's version of ndir.h, rather than the one with this package. 786 */ 787/* I_SYS_NDIR 788 * This symbol, if defined, indicates that the program should include the 789 * system's version of sys/ndir.h, rather than the one with this package. 790 */ 791/* I_MY_DIR 792 * This symbol, if defined, indicates that the program should compile 793 * the ndir.c code provided with the package. 794 */ 795/* DIRNAMLEN 796 * This symbol, if defined, indicates to the C program that the length 797 * of directory entry names is provided by a d_namlen field. Otherwise 798 * you need to do strlen() on the d_name field. 799 */ 800#$i_dirent I_DIRENT /**/ 801#$i_sys_dir I_SYS_DIR /**/ 802#$i_ndir I_NDIR /**/ 803#$i_sys_ndir I_SYS_NDIR /**/ 804#$i_my_dir I_MY_DIR /**/ 805#$d_dirnamlen DIRNAMLEN /**/ 806 807/* MYMALLOC 808 * This symbol, if defined, indicates that we're using our own malloc. 809 */ 810/* MALLOCPTRTYPE 811 * This symbol defines the kind of ptr returned by malloc and realloc. 812 */ 813#$d_mymalloc MYMALLOC /**/ 814 815#define MALLOCPTRTYPE $mallocptrtype /**/ 816 817 818/* RANDBITS 819 * This symbol contains the number of bits of random number the rand() 820 * function produces. Usual values are 15, 16, and 31. 821 */ 822#define RANDBITS $randbits /**/ 823 824/* SCRIPTDIR 825 * This symbol holds the name of the directory in which the user wants 826 * to keep publicly executable scripts for the package in question. It 827 * is often a directory that is mounted across diverse architectures. 828 */ 829#define SCRIPTDIR "$scriptdir" /**/ 830 831/* SIG_NAME 832 * This symbol contains an list of signal names in order. 833 */ 834#define SIG_NAME "`echo $sig_name | sed 's/ /","/g'`" /**/ 835 836/* STDCHAR 837 * This symbol is defined to be the type of char used in stdio.h. 838 * It has the values "unsigned char" or "char". 839 */ 840#define STDCHAR $stdchar /**/ 841 842/* UIDTYPE 843 * This symbol has a value like uid_t, int, ushort, or whatever type is 844 * used to declare user ids in the kernel. 845 */ 846#define UIDTYPE $uidtype /**/ 847 848/* VOIDHAVE 849 * This symbol indicates how much support of the void type is given by this 850 * compiler. What various bits mean: 851 * 852 * 1 = supports declaration of void 853 * 2 = supports arrays of pointers to functions returning void 854 * 4 = supports comparisons between pointers to void functions and 855 * addresses of void functions 856 * 857 * The package designer should define VOIDWANT to indicate the requirements 858 * of the package. This can be done either by #defining VOIDWANT before 859 * including config.h, or by defining voidwant in Myinit.U. If the level 860 * of void support necessary is not present, config.h defines void to "int", 861 * VOID to the empty string, and VOIDP to "char *". 862 */ 863/* void 864 * This symbol is used for void casts. On implementations which support 865 * void appropriately, its value is "void". Otherwise, its value maps 866 * to "int". 867 */ 868/* VOID 869 * This symbol's value is "void" if the implementation supports void 870 * appropriately. Otherwise, its value is the empty string. The primary 871 * use of this symbol is in specifying void parameter lists for function 872 * prototypes. 873 */ 874/* VOIDP 875 * This symbol is used for casting generic pointers. On implementations 876 * which support void appropriately, its value is "void *". Otherwise, 877 * its value is "char *". 878 */ 879#ifndef VOIDWANT 880#define VOIDWANT $voidwant 881#endif 882#define VOIDHAVE $voidhave 883#if (VOIDHAVE & VOIDWANT) != VOIDWANT 884#define void int /* is void to be avoided? */ 885#define VOID 886#define VOIDP (char *) 887#define M_VOID /* Xenix strikes again */ 888#else 889#define VOID void 890#define VOIDP (void *) 891#endif 892 893/* PRIVLIB 894 * This symbol contains the name of the private library for this package. 895 * The library is private in the sense that it needn't be in anyone's 896 * execution path, but it should be accessible by the world. The program 897 * should be prepared to do ~ expansion. 898 */ 899#define PRIVLIB "$privlib" /**/ 900 901#endif 902!GROK!THIS! 903