X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=config_h.SH;h=50195607824673d8fce0deb81bce83bdbc0530a0;hb=d6a287148f674729887096e6af50b42b464c3451;hp=78486bacaeec769f8e289722954a3dc0f1b331eb;hpb=dd64f1c34f78dffc99057d229091d8331d2ddf2d;p=p5sagit%2Fp5-mst-13.2.git diff --git a/config_h.SH b/config_h.SH index 78486ba..5019560 100644 --- a/config_h.SH +++ b/config_h.SH @@ -44,32 +44,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #define LOC_SED "$full_sed" /**/ -/* BIN: - * This symbol holds the path of the bin directory where the package will - * be installed. Program must be prepared to deal with ~name substitution. - */ -/* BIN_EXP: - * This symbol is the filename expanded version of the BIN symbol, for - * programs that do not want to deal with that at run-time. - */ -#define BIN "$bin" /**/ -#define BIN_EXP "$binexp" /**/ - -/* CPPSTDIN: - * This symbol contains the first part of the string which will invoke - * the C preprocessor on the standard input and produce to standard - * output. Typical value of "cc -E" or "/lib/cpp", but it can also - * call a wrapper. See CPPRUN. - */ -/* CPPMINUS: - * This symbol contains the second part of the string which will invoke - * the C preprocessor on the standard input and produce to standard - * output. This symbol will have the value "-" if CPPSTDIN needs a minus - * to specify standard input, otherwise the value is "". - */ -#define CPPSTDIN "$cppstdin" -#define CPPMINUS "$cppminus" - /* HAS_ALARM: * This symbol, if defined, indicates that the alarm routine is * available. @@ -257,13 +231,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_getgrps HAS_GETGROUPS /**/ -/* HAS_UNAME: - * This symbol, if defined, indicates that the C program may use the - * uname() routine to derive the host name. See also HAS_GETHOSTNAME - * and PHOSTNAME. - */ -#$d_uname HAS_UNAME /**/ - /* HAS_GETLOGIN: * This symbol, if defined, indicates that the getlogin routine is * available to get the login name. @@ -306,31 +273,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_getprior HAS_GETPRIORITY /**/ -/* HAS_HTONL: - * This symbol, if defined, indicates that the htonl() routine (and - * friends htons() ntohl() ntohs()) are available to do network - * order byte swapping. - */ -/* HAS_HTONS: - * This symbol, if defined, indicates that the htons() routine (and - * friends htonl() ntohl() ntohs()) are available to do network - * order byte swapping. - */ -/* HAS_NTOHL: - * This symbol, if defined, indicates that the ntohl() routine (and - * friends htonl() htons() ntohs()) are available to do network - * order byte swapping. - */ -/* HAS_NTOHS: - * This symbol, if defined, indicates that the ntohs() routine (and - * friends htonl() htons() ntohl()) are available to do network - * order byte swapping. - */ -#$d_htonl HAS_HTONL /**/ -#$d_htonl HAS_HTONS /**/ -#$d_htonl HAS_NTOHL /**/ -#$d_htonl HAS_NTOHS /**/ - /* HAS_INET_ATON: * This symbol, if defined, indicates to the C program that the * inet_aton() function is available to parse IP address "dotted-quad" @@ -434,11 +376,17 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_mktime HAS_MKTIME /**/ -/* HAS_MSG: - * This symbol, if defined, indicates that the entire msg*(2) library is - * supported (IPC mechanism based on message queues). +/* HAS_MSYNC: + * This symbol, if defined, indicates that the msync system call is + * available to synchronize a mapped file. */ -#$d_msg HAS_MSG /**/ +#$d_msync HAS_MSYNC /**/ + +/* HAS_MUNMAP: + * This symbol, if defined, indicates that the munmap system call is + * available to unmap a region, usually mapped by mmap(). + */ +#$d_munmap HAS_MUNMAP /**/ /* HAS_NICE: * This symbol, if defined, indicates that the nice routine is @@ -530,12 +478,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_select HAS_SELECT /**/ -/* HAS_SEM: - * This symbol, if defined, indicates that the entire sem*(2) library is - * supported. - */ -#$d_sem HAS_SEM /**/ - /* HAS_SETEGID: * This symbol, if defined, indicates that the setegid routine is available * to change the effective gid of the current program. @@ -635,12 +577,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_setsid HAS_SETSID /**/ -/* HAS_SHM: - * This symbol, if defined, indicates that the entire shm*(2) library is - * supported. - */ -#$d_shm HAS_SHM /**/ - /* Shmat_t: * This symbol holds the return type of the shmat() system call. * Usually set to 'void *' or 'char *'. @@ -655,12 +591,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #define Shmat_t $shmattype /**/ #$d_shmatprototype HAS_SHMAT_PROTOTYPE /**/ -/* USE_STAT_BLOCKS: - * This symbol is defined if this system has a stat structure declaring - * st_blksize and st_blocks. - */ -#$d_statblks USE_STAT_BLOCKS /**/ - /* HAS_STRCHR: * This symbol is defined to indicate that the strchr()/strrchr() * functions are available for string searching. If not, try the @@ -686,25 +616,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_strctcpy USE_STRUCT_COPY /**/ -/* HAS_STRERROR: - * This symbol, if defined, indicates that the strerror routine is - * available to translate error numbers to strings. See the writeup - * of Strerror() in this file before you try to define your own. - */ -/* HAS_SYS_ERRLIST: - * This symbol, if defined, indicates that the sys_errlist array is - * available to translate error numbers to strings. The extern int - * sys_nerr gives the size of that table. - */ -/* Strerror: - * This preprocessor symbol is defined as a macro if strerror() is - * not available to translate error numbers to strings but sys_errlist[] - * array is there. - */ -#$d_strerror HAS_STRERROR /**/ -#$d_syserrlst HAS_SYS_ERRLIST /**/ -#define Strerror(e) $d_strerrm - /* HAS_STRTOD: * This symbol, if defined, indicates that the strtod routine is * available to provide better numeric string conversion than atof(). @@ -783,11 +694,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_umask HAS_UMASK /**/ -/* HAS_VFORK: - * This symbol, if defined, indicates that vfork() exists. - */ -#$d_vfork HAS_VFORK /**/ - /* HASVOLATILE: * This symbol, if defined, indicates that this C compiler knows about * the volatile declaration. @@ -820,6 +726,12 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_wctomb HAS_WCTOMB /**/ +/* I_ARPA_INET: + * This symbol, if defined, indicates to the C program that it should + * include to get inet_addr and friends declarations. + */ +#$i_arpainet I_ARPA_INET /**/ + /* I_DBM: * This symbol, if defined, indicates that exists and should * be included. @@ -869,12 +781,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$i_float I_FLOAT /**/ -/* I_GRP: - * This symbol, if defined, indicates to the C program that it should - * include . - */ -#$i_grp I_GRP /**/ - /* I_LIMITS: * This symbol, if defined, indicates to the C program that it should * include to get definition of symbols like WORD_BIT or @@ -996,6 +902,12 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$i_systimes I_SYS_TIMES /**/ +/* I_SYS_TYPES: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +#$i_systypes I_SYS_TYPES /**/ + /* I_SYS_UN: * This symbol, if defined, indicates to the C program that it should * include to get UNIX domain socket definitions. @@ -1065,21 +977,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$i_vfork I_VFORK /**/ -/* Free_t: - * This variable contains the return type of free(). It is usually - * void, but occasionally int. - */ -/* Malloc_t: - * This symbol is the type of pointer returned by malloc and realloc. - */ -#define Malloc_t $malloctype /**/ -#define Free_t $freetype /**/ - -/* MYMALLOC: - * This symbol, if defined, indicates that we're using our own malloc. - */ -#$d_mymalloc MYMALLOC /**/ - /* CAN_PROTOTYPE: * If defined, this macro indicates that the C compiler can handle * function prototypes. @@ -1113,45 +1010,78 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #define STDCHAR $stdchar /**/ -/* VOIDFLAGS: - * This symbol indicates how much support of the void type is given by this - * compiler. What various bits mean: - * - * 1 = supports declaration of void - * 2 = supports arrays of pointers to functions returning void - * 4 = supports comparisons between pointers to void functions and - * addresses of void functions - * 8 = suports declaration of generic void pointers - * - * The package designer should define VOIDUSED to indicate the requirements - * of the package. This can be done either by #defining VOIDUSED before - * including config.h, or by defining defvoidused in Myinit.U. If the - * latter approach is taken, only those flags will be tested. If the - * level of void support necessary is not present, defines void to int. +/* HAS_ACCESSX: + * This symbol, if defined, indicates that the accessx routine is + * available to do extended access checks. */ -#ifndef VOIDUSED -#define VOIDUSED $defvoidused -#endif -#define VOIDFLAGS $voidflags -#if (VOIDFLAGS & VOIDUSED) != VOIDUSED -#define void int /* is void to be avoided? */ -#define M_VOID /* Xenix strikes again */ -#endif +#$d_accessx HAS_ACCESSX /**/ + +/* HAS_EACCESS: + * This symbol, if defined, indicates that the eaccess routine is + * available to do extended access checks. + */ +#$d_eaccess HAS_EACCESS /**/ + +/* I_SYS_ACCESS: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +#$i_sysaccess I_SYS_ACCESS /**/ + +/* I_SYS_SECURITY: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +#$i_syssecrt I_SYS_SECURITY /**/ + +/* CROSSCOMPILE: + * This symbol, if defined, signifies that we our + * build process is a cross-compilation. + */ +#$crosscompile CROSSCOMPILE /**/ + +/* INTSIZE: + * This symbol contains the value of sizeof(int) so that the C + * preprocessor can make decisions based on it. + */ +/* LONGSIZE: + * This symbol contains the value of sizeof(long) so that the C + * preprocessor can make decisions based on it. + */ +/* SHORTSIZE: + * This symbol contains the value of sizeof(short) so that the C + * preprocessor can make decisions based on it. + */ +#define INTSIZE $intsize /**/ +#define LONGSIZE $longsize /**/ +#define SHORTSIZE $shortsize /**/ + +/* MULTIARCH: + * This symbol, if defined, signifies that the build + * process will produce some binary files that are going to be + * used in a cross-platform environment. This is the case for + * example with the NeXT "fat" binaries that contain executables + * for several CPUs. + */ +#$multiarch MULTIARCH /**/ /* MEM_ALIGNBYTES: - * This symbol contains the number of bytes required to align a - * double. Usual values are 2, 4 and 8. - * On NeXT starting with 3.2, you can build "Fat" Multiple Architecture - * Binaries (MAB) for targets with varying alignment. This only matters - * for perl, where the config.h can be generated and installed on one - * system, and used by a different architecture to build an extension. - * The default is eight, for safety. + * This symbol contains the number of bytes required to align a + * double. Usual values are 2, 4 and 8. The default is eight, + * for safety. */ -#define MEM_ALIGNBYTES $alignbytes /**/ +#if defined(CROSSCOMPILE) || defined(MULTIARCH) +# define MEM_ALIGNBYTES 8 +#else +#define MEM_ALIGNBYTES $alignbytes +#endif /* BYTEORDER: * This symbol holds the hexadecimal constant defined in byteorder, * i.e. 0x1234 or 0x4321, etc... + * If the compiler supports cross-compiling or multiple-architecture + * binaries (eg. on NeXT systems), use compiler-defined macros to + * determine the byte order. * On NeXT 3.2 (and greater), you can build "Fat" Multiple Architecture * Binaries (MAB) on either big endian or little endian machines. * The endian-ness is available at compile-time. This only matters @@ -1162,14 +1092,31 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- * so the default case (for NeXT) is big endian to catch them. * This might matter for NeXT 3.0. */ -#ifndef NeXT +#if defined(CROSSCOMPILE) || defined(MULTIARCH) +# ifdef __LITTLE_ENDIAN__ +# if LONGSIZE == 4 +# define BYTEORDER 0x1234 +# else +# if LONGSIZE == 8 +# define BYTEORDER 0x12345678 +# endif +# endif +# else +# ifdef __BIG_ENDIAN__ +# if LONGSIZE == 4 +# define BYTEORDER 0x4321 +# else +# if LONGSIZE == 8 +# define BYTEORDER 0x87654321 +# endif +# endif +# endif +# endif +# if !defined(BYTEORDER) && (defined(NeXT) || defined(__NeXT__)) +# define BYTEORDER 0x4321 +# endif +#else #define BYTEORDER 0x$byteorder /* large digits for MSB */ -#else /* NeXT */ -#ifdef __LITTLE_ENDIAN__ -#define BYTEORDER 0x1234 -#else /* __BIG_ENDIAN__ */ -#define BYTEORDER 0x4321 -#endif /* ENDIAN CHECK */ #endif /* NeXT */ /* CASTI32: @@ -1199,6 +1146,12 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_void_closedir VOID_CLOSEDIR /**/ +/* HAS_FD_SET: + * This symbol, when defined, indicates presence of the fd_set typedef + * in + */ +#$d_fd_set HAS_FD_SET /**/ + /* Gconvert: * This preprocessor macro is defined to convert a floating point * number to a string without a trailing decimal point. This @@ -1269,6 +1222,13 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_sigaction HAS_SIGACTION /**/ +/* HAS_SIGSETJMP: + * This variable indicates to the C program that the sigsetjmp() + * routine is available to save the calling process's registers + * and stack environment for later use by siglongjmp(), and + * to optionally save the process's signal mask. See + * Sigjmp_buf, Sigsetjmp, and Siglongjmp. + */ /* Sigjmp_buf: * This is the buffer type to be used with Sigsetjmp and Siglongjmp. */ @@ -1388,22 +1348,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #$i_systime I_SYS_TIME /**/ #$i_systimek I_SYS_TIME_KERNEL /**/ -/* INTSIZE: - * This symbol contains the value of sizeof(int) so that the C - * preprocessor can make decisions based on it. - */ -/* LONGSIZE: - * This symbol contains the value of sizeof(long) so that the C - * preprocessor can make decisions based on it. - */ -/* SHORTSIZE: - * This symbol contains the value of sizeof(short) so that the C - * preprocessor can make decisions based on it. - */ -#define INTSIZE $intsize /**/ -#define LONGSIZE $longsize /**/ -#define SHORTSIZE $shortsize /**/ - /* VAL_O_NONBLOCK: * This symbol is to be used during open() or fcntl(F_SETFL) to turn on * non-blocking I/O for the file descriptor. Note that there is no way @@ -1439,11 +1383,30 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #define PTRSIZE $ptrsize /**/ +/* Drand01: + * This macro is to be used to generate uniformly distributed + * random numbers over the range [0., 1.[. You may have to supply + * an 'extern double drand48();' in your program since SunOS 4.1.3 + * doesn't provide you with anything relevant in it's headers. + * See HAS_DRAND48_PROTO. + */ +/* Rand_seed_t: + * This symbol defines the type of the argument of the + * random seed function. + */ +/* seedDrand01: + * This symbol defines the macro to be used in seeding the + * random number generator (see Drand01). + */ /* RANDBITS: - * This symbol contains the number of bits of random number the rand() - * function produces. Usual values are 15, 16, and 31. + * This symbol indicates how many bits are produced by the + * function used to generate normalized random numbers. + * Values include 15, 16, 31, and 48. */ -#define RANDBITS $randbits /**/ +#define Drand01() $drand01 /**/ +#define Rand_seed_t $randseedtype /**/ +#define seedDrand01(x) $seedfunc((Rand_seed_t)x) /**/ +#define RANDBITS $randbits /**/ /* SSize_t: * This symbol holds the type used by functions that return @@ -1455,12 +1418,11 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #define SSize_t $ssizetype /* signed count of bytes */ -/* OSNAME: - * This symbol contains the name of the operating system, as determined - * by Configure. You shouldn't rely on it too much; the specific - * feature tests from Configure are generally more reliable. +/* EBCDIC: + * This symbol, if defined, indicates that this system uses + * EBCDIC encoding. */ -#define OSNAME "$osname" /**/ +#$ebcdic EBCDIC /**/ /* ARCHLIB: * This variable, if defined, holds the name of the directory in @@ -1478,40 +1440,156 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #$d_archlib ARCHLIB "$archlib" /**/ #$d_archlib ARCHLIB_EXP "$archlibexp" /**/ -/* CAT2: - * This macro catenates 2 tokens together. +/* BIN: + * This symbol holds the path of the bin directory where the package will + * be installed. Program must be prepared to deal with ~name substitution. */ -/* STRINGIFY: - * This macro surrounds its token with double quotes. +/* BIN_EXP: + * This symbol is the filename expanded version of the BIN symbol, for + * programs that do not want to deal with that at run-time. */ -#if $cpp_stuff == 1 -#define CAT2(a,b)a/**/b -#define STRINGIFY(a)"a" - /* If you can get stringification with catify, tell me how! */ -#endif -#if $cpp_stuff == 42 -#define CAT2(a,b)a ## b -#define StGiFy(a)# a -#define STRINGIFY(a)StGiFy(a) -#endif -#if $cpp_stuff != 1 && $cpp_stuff != 42 -#include "Bletch: How does this C preprocessor catenate tokens?" -#endif +#define BIN "$bin" /**/ +#define BIN_EXP "$binexp" /**/ -/* CSH: - * This symbol, if defined, contains the full pathname of csh. +/* INSTALL_USR_BIN_PERL: + * This symbol, if defined, indicates that Perl is to be installed + * also as /usr/bin/perl. */ -#$d_csh HAS_CSH /**/ -#ifdef HAS_CSH -#define CSH "$full_csh" /**/ -#endif +#$installusrbinperl INSTALL_USR_BIN_PERL /**/ -/* HAS_ENDHOSTENT: - * This symbol, if defined, indicates that the endhostent() routine is - * available to close whatever was being used for host queries. +/* PRIVLIB: + * This symbol contains the name of the private library for this package. + * The library is private in the sense that it needn't be in anyone's + * execution path, but it should be accessible by the world. The program + * should be prepared to do ~ expansion. */ -#$d_endhent HAS_ENDHOSTENT /**/ - +/* PRIVLIB_EXP: + * This symbol contains the ~name expanded version of PRIVLIB, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +#define PRIVLIB "$privlib" /**/ +#define PRIVLIB_EXP "$privlibexp" /**/ + +/* SITEARCH: + * This symbol contains the name of the private library for this package. + * The library is private in the sense that it needn't be in anyone's + * execution path, but it should be accessible by the world. The program + * should be prepared to do ~ expansion. + * The standard distribution will put nothing in this directory. + * Individual sites may place their own extensions and modules in + * this directory. + */ +/* SITEARCH_EXP: + * This symbol contains the ~name expanded version of SITEARCH, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +#define SITEARCH "$sitearch" /**/ +#define SITEARCH_EXP "$sitearchexp" /**/ + +/* SITELIB: + * This symbol contains the name of the private library for this package. + * The library is private in the sense that it needn't be in anyone's + * execution path, but it should be accessible by the world. The program + * should be prepared to do ~ expansion. + * The standard distribution will put nothing in this directory. + * Individual sites may place their own extensions and modules in + * this directory. + */ +/* SITELIB_EXP: + * This symbol contains the ~name expanded version of SITELIB, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +#define SITELIB "$sitelib" /**/ +#define SITELIB_EXP "$sitelibexp" /**/ + +/* PERL_VENDORLIB_EXP: + * This symbol contains the ~name expanded version of VENDORLIB, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +#$d_vendorlib PERL_VENDORLIB_EXP "$vendorlibexp" /**/ + +/* OSNAME: + * This symbol contains the name of the operating system, as determined + * by Configure. You shouldn't rely on it too much; the specific + * feature tests from Configure are generally more reliable. + */ +#define OSNAME "$osname" /**/ + +/* CAT2: + * This macro catenates 2 tokens together. + */ +/* STRINGIFY: + * This macro surrounds its token with double quotes. + */ +#if $cpp_stuff == 1 +#define CAT2(a,b)a/**/b +#define STRINGIFY(a)"a" + /* If you can get stringification with catify, tell me how! */ +#endif +#if $cpp_stuff == 42 +#define CAT2(a,b)a ## b +#define StGiFy(a)# a +#define STRINGIFY(a)StGiFy(a) +#endif +#if $cpp_stuff != 1 && $cpp_stuff != 42 +#include "Bletch: How does this C preprocessor catenate tokens?" +#endif + +/* CPPSTDIN: + * This symbol contains the first part of the string which will invoke + * the C preprocessor on the standard input and produce to standard + * output. Typical value of "cc -E" or "/lib/cpp", but it can also + * call a wrapper. See CPPRUN. + */ +/* CPPMINUS: + * This symbol contains the second part of the string which will invoke + * the C preprocessor on the standard input and produce to standard + * output. This symbol will have the value "-" if CPPSTDIN needs a minus + * to specify standard input, otherwise the value is "". + */ +/* CPPRUN: + * This symbol contains the string which will invoke a C preprocessor on + * the standard input and produce to standard output. It needs to end + * with CPPLAST, after all other preprocessor flags have been specified. + * The main difference with CPPSTDIN is that this program will never be a + * pointer to a shell wrapper, i.e. it will be empty if no preprocessor is + * available directly to the user. Note that it may well be different from + * the preprocessor used to compile the C program. + */ +#define CPPSTDIN "$cppstdin" +#define CPPMINUS "$cppminus" +#define CPPRUN "$cpprun" + +/* HAS_ACCESS: + * This manifest constant lets the C program know that the access() + * system call is available to check for accessibility using real UID/GID. + * (always present on UNIX.) + */ +#$d_access HAS_ACCESS /**/ + +/* HAS_CSH: + * This symbol, if defined, indicates that the C-shell exists. + */ +/* CSH: + * This symbol, if defined, contains the full pathname of csh. + */ +#$d_csh HAS_CSH /**/ +#ifdef HAS_CSH +#define CSH "$full_csh" /**/ +#endif + +/* HAS_ENDGRENT: + * This symbol, if defined, indicates that the getgrent routine is + * available for finalizing sequential access of the group database. + */ +#$d_endgrent HAS_ENDGRENT /**/ + +/* HAS_ENDHOSTENT: + * This symbol, if defined, indicates that the endhostent() routine is + * available to close whatever was being used for host queries. + */ +#$d_endhent HAS_ENDHOSTENT /**/ + /* HAS_ENDNETENT: * This symbol, if defined, indicates that the endnetent() routine is * available to close whatever was being used for network queries. @@ -1524,12 +1602,24 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_endpent HAS_ENDPROTOENT /**/ +/* HAS_ENDPWENT: + * This symbol, if defined, indicates that the getgrent routine is + * available for finalizing sequential access of the passwd database. + */ +#$d_endpwent HAS_ENDPWENT /**/ + /* HAS_ENDSERVENT: * This symbol, if defined, indicates that the endservent() routine is * available to close whatever was being used for service queries. */ #$d_endsent HAS_ENDSERVENT /**/ +/* HAS_GETGRENT: + * This symbol, if defined, indicates that the getgrent routine is + * available for sequential access of the group database. + */ +#$d_getgrent HAS_GETGRENT /**/ + /* HAS_GETHOSTBYADDR: * This symbol, if defined, indicates that the gethostbyaddr() routine is * available to look up hosts by their IP addresses. @@ -1548,6 +1638,30 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_gethent HAS_GETHOSTENT /**/ +/* HAS_GETHOSTNAME: + * This symbol, if defined, indicates that the C program may use the + * gethostname() routine to derive the host name. See also HAS_UNAME + * and PHOSTNAME. + */ +/* HAS_UNAME: + * This symbol, if defined, indicates that the C program may use the + * uname() routine to derive the host name. See also HAS_GETHOSTNAME + * and PHOSTNAME. + */ +/* PHOSTNAME: + * This symbol, if defined, indicates the command to feed to the + * popen() routine to derive the host name. See also HAS_GETHOSTNAME + * and HAS_UNAME. Note that the command uses a fully qualified path, + * so that it is safe even if used by a process with super-user + * privileges. + */ +#$d_gethname HAS_GETHOSTNAME /**/ +#$d_uname HAS_UNAME /**/ +#$d_phostname HAS_PHOSTNAME +#ifdef HAS_PHOSTNAME +#define PHOSTNAME "$aphostname" /* How to get the host name */ +#endif + /* HAS_GETNETBYADDR: * This symbol, if defined, indicates that the getnetbyaddr() routine is * available to look up networks by their IP addresses. @@ -1583,6 +1697,13 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #$d_getpbyname HAS_GETPROTOBYNAME /**/ #$d_getpbynumber HAS_GETPROTOBYNUMBER /**/ +/* HAS_GETPWENT: + * This symbol, if defined, indicates that the getpwent routine is + * available for sequential access of the passwd database. + * If this is not available, the older getpw() function may be available. + */ +#$d_getpwent HAS_GETPWENT /**/ + /* HAS_GETSERVENT: * This symbol, if defined, indicates that the getservent() routine is * available to look up network services in some data base or another. @@ -1600,6 +1721,31 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #$d_getsbyname HAS_GETSERVBYNAME /**/ #$d_getsbyport HAS_GETSERVBYPORT /**/ +/* HAS_HTONL: + * This symbol, if defined, indicates that the htonl() routine (and + * friends htons() ntohl() ntohs()) are available to do network + * order byte swapping. + */ +/* HAS_HTONS: + * This symbol, if defined, indicates that the htons() routine (and + * friends htonl() ntohl() ntohs()) are available to do network + * order byte swapping. + */ +/* HAS_NTOHL: + * This symbol, if defined, indicates that the ntohl() routine (and + * friends htonl() htons() ntohs()) are available to do network + * order byte swapping. + */ +/* HAS_NTOHS: + * This symbol, if defined, indicates that the ntohs() routine (and + * friends htonl() htons() ntohl()) are available to do network + * order byte swapping. + */ +#$d_htonl HAS_HTONL /**/ +#$d_htonl HAS_HTONS /**/ +#$d_htonl HAS_NTOHL /**/ +#$d_htonl HAS_NTOHS /**/ + /* HAS_LONG_DOUBLE: * This symbol will be defined if the C compiler supports long * doubles. @@ -1615,8 +1761,7 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #endif /* HAS_LONG_LONG: - * This symbol will be defined if the C compiler supports - * long long. + * This symbol will be defined if the C compiler supports long long. */ /* LONGLONGSIZE: * This symbol contains the size of a long long, so that the @@ -1628,11 +1773,41 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #define LONGLONGSIZE $longlongsize /**/ #endif -/* HAS_MKSTEMP: - * This symbol, if defined, indicates that the mkstemp routine is - * available to create and open a unique temporary file. +/* HAS_MEMCHR: + * This symbol, if defined, indicates that the memchr routine is available + * to locate characters within a C string. + */ +#$d_memchr HAS_MEMCHR /**/ + +/* HAS_MMAP: + * This symbol, if defined, indicates that the mmap system call is + * available to map a file into memory. + */ +/* Mmap_t: + * This symbol holds the return type of the mmap() system call + * (and simultaneously the type of the first argument). + * Usually set to 'void *' or 'cadd_t'. + */ +#$d_mmap HAS_MMAP /**/ +#define Mmap_t $mmaptype /**/ + +/* HAS_MSG: + * This symbol, if defined, indicates that the entire msg*(2) library is + * supported (IPC mechanism based on message queues). + */ +#$d_msg HAS_MSG /**/ + +/* HAS_SEM: + * This symbol, if defined, indicates that the entire sem*(2) library is + * supported. + */ +#$d_sem HAS_SEM /**/ + +/* HAS_SETGRENT: + * This symbol, if defined, indicates that the setgrent routine is + * available for initializing sequential access of the group database. */ -#$d_mkstemp HAS_MKSTEMP /**/ +#$d_setgrent HAS_SETGRENT /**/ /* HAS_SETGROUPS: * This symbol, if defined, indicates that the setgroups() routine is @@ -1659,6 +1834,12 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_setpent HAS_SETPROTOENT /**/ +/* HAS_SETPWENT: + * This symbol, if defined, indicates that the setpwent routine is + * available for initializing sequential access of the passwd database. + */ +#$d_setpwent HAS_SETPWENT /**/ + /* HAS_SETSERVENT: * This symbol, if defined, indicates that the setservent() routine is * available. @@ -1672,6 +1853,12 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_setvbuf HAS_SETVBUF /**/ +/* HAS_SHM: + * This symbol, if defined, indicates that the entire shm*(2) library is + * supported. + */ +#$d_shm HAS_SHM /**/ + /* HAS_SOCKET: * This symbol, if defined, indicates that the BSD socket interface is * supported. @@ -1680,8 +1867,120 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- * This symbol, if defined, indicates that the BSD socketpair() call is * supported. */ -#$d_socket HAS_SOCKET /**/ -#$d_sockpair HAS_SOCKETPAIR /**/ +/* HAS_MSG_CTRUNC: + * This symbol, if defined, indicates that the MSG_CTRUNC is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_MSG_DONTROUTE: + * This symbol, if defined, indicates that the MSG_DONTROUTE is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_MSG_OOB: + * This symbol, if defined, indicates that the MSG_OOB is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_MSG_PEEK: + * This symbol, if defined, indicates that the MSG_PEEK is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_MSG_PROXY: + * This symbol, if defined, indicates that the MSG_PROXY is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_SCM_RIGHTS: + * This symbol, if defined, indicates that the SCM_RIGHTS is supported. + * Checking just with #ifdef might not be enough because this symbol + * has been known to be an enum. + */ +/* HAS_SENDMSG: + * This symbol, if defined, indicates that the sendmsg is supported + * to send messages between sockets. You will also need struct + * iovec from , HAS_STRUCT_IOVEC and I_SYSUIO. + */ +/* HAS_RECVMSG: + * This symbol, if defined, indicates that the recvmsg is supported + * to send messages between sockets. You will also need struct + * iovec from , HAS_STRUCT_IOVEC and I_SYSUIO. + */ +/* HAS_STRUCT_MSGHDR: + * This symbol, if defined, indicates that the struct msghdr + * (BSD 4.3 or 4.4) is supported. You will also need struct + * iovec from , HAS_STRUCT_IOVEC and I_SYSUIO. + */ +/* HAS_STRUCT_CMSGHDR: + * This symbol, if defined, indicates that the struct cmsghdr + * (BSD 4.4) is supported. You will also need struct + * iovec from , HAS_STRUCT_IOVEC and I_SYSUIO. + */ +#$d_socket HAS_SOCKET /**/ +#$d_sockpair HAS_SOCKETPAIR /**/ +#$d_msg_ctrunc HAS_MSG_CTRUNC /**/ +#$d_msg_dontroute HAS_MSG_DONTROUTE /**/ +#$d_msg_oob HAS_MSG_OOB /**/ +#$d_msg_peek HAS_MSG_PEEK /**/ +#$d_msg_proxy HAS_MSG_PROXY /**/ +#$d_scm_rights HAS_SCM_RIGHTS /**/ +#$d_sendmsg HAS_SENDMSG /**/ +#$d_recvmsg HAS_RECVMSG /**/ +#$d_msghdr_s HAS_STRUCT_MSGHDR /**/ +#$d_cmsghdr_s HAS_STRUCT_CMSGHDR /**/ + +/* USE_STAT_BLOCKS: + * This symbol is defined if this system has a stat structure declaring + * st_blksize and st_blocks. + */ +#$d_statblks USE_STAT_BLOCKS /**/ + +/* HAS_STRERROR: + * This symbol, if defined, indicates that the strerror routine is + * available to translate error numbers to strings. See the writeup + * of Strerror() in this file before you try to define your own. + */ +/* HAS_SYS_ERRLIST: + * This symbol, if defined, indicates that the sys_errlist array is + * available to translate error numbers to strings. The extern int + * sys_nerr gives the size of that table. + */ +/* Strerror: + * This preprocessor symbol is defined as a macro if strerror() is + * not available to translate error numbers to strings but sys_errlist[] + * array is there. + */ +#$d_strerror HAS_STRERROR /**/ +#$d_syserrlst HAS_SYS_ERRLIST /**/ +#define Strerror(e) $d_strerrm + +/* HAS_UNION_SEMUN: + * This symbol, if defined, indicates that the union semun is + * defined by including . If not, the user code + * probably needs to define it as: + * union semun { + * int val; + * struct semid_ds *buf; + * unsigned short *array; + * } + */ +/* USE_SEMCTL_SEMUN: + * This symbol, if defined, indicates that union semun is + * used for semctl IPC_STAT. + */ +/* USE_SEMCTL_SEMID_DS: + * This symbol, if defined, indicates that struct semid_ds * is + * used for semctl IPC_STAT. + */ +#$d_union_semun HAS_UNION_SEMUN /**/ +#$d_semctl_semun USE_SEMCTL_SEMUN /**/ +#$d_semctl_semid_ds USE_SEMCTL_SEMID_DS /**/ + +/* HAS_VFORK: + * This symbol, if defined, indicates that vfork() exists. + */ +#$d_vfork HAS_VFORK /**/ /* Signal_t: * This symbol's value is either "void" or "int", corresponding to the @@ -1704,6 +2003,17 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #define Groups_t $groupstype /* Type for 2nd arg to [sg]etgroups() */ #endif +/* I_GRP: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +/* GRPASSWD: + * This symbol, if defined, indicates to the C program that struct group + * in contains gr_passwd. + */ +#$i_grp I_GRP /**/ +#$d_grpasswd GRPASSWD /**/ + /* I_NETDB: * This symbol, if defined, indicates that exists and * should be included. @@ -1742,6 +2052,10 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- * This symbol, if defined, indicates to the C program that struct passwd * contains pw_gecos. */ +/* PWPASSWD: + * This symbol, if defined, indicates to the C program that struct passwd + * contains pw_passwd. + */ #$i_pwd I_PWD /**/ #$d_pwquota PWQUOTA /**/ #$d_pwage PWAGE /**/ @@ -1750,25 +2064,28 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #$d_pwexpire PWEXPIRE /**/ #$d_pwcomment PWCOMMENT /**/ #$d_pwgecos PWGECOS /**/ +#$d_pwpasswd PWPASSWD /**/ -/* I_SYS_TYPES: - * This symbol, if defined, indicates to the C program that it should - * include . +/* I_SYSUIO: + * This symbol, if defined, indicates that exists and + * should be included. */ -#$i_systypes I_SYS_TYPES /**/ +#$i_sysuio I_SYSUIO /**/ -/* PRIVLIB: - * This symbol contains the name of the private library for this package. - * The library is private in the sense that it needn't be in anyone's - * execution path, but it should be accessible by the world. The program - * should be prepared to do ~ expansion. +/* Free_t: + * This variable contains the return type of free(). It is usually + * void, but occasionally int. */ -/* PRIVLIB_EXP: - * This symbol contains the ~name expanded version of PRIVLIB, to be used - * in programs that are not prepared to deal with ~ expansion at run-time. +/* Malloc_t: + * This symbol is the type of pointer returned by malloc and realloc. */ -#define PRIVLIB "$privlib" /**/ -#define PRIVLIB_EXP "$privlibexp" /**/ +#define Malloc_t $malloctype /**/ +#define Free_t $freetype /**/ + +/* MYMALLOC: + * This symbol, if defined, indicates that we're using our own malloc. + */ +#$d_mymalloc MYMALLOC /**/ /* SIG_NAME: * This symbol contains a list of signal names in order of @@ -1799,39 +2116,40 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- * the sig_name list. */ #define SIG_NAME $sig_name_init /**/ -#define SIG_NUM $sig_num /**/ +#define SIG_NUM $sig_num_init /**/ -/* SITEARCH: - * This symbol contains the name of the private library for this package. - * The library is private in the sense that it needn't be in anyone's - * execution path, but it should be accessible by the world. The program - * should be prepared to do ~ expansion. - * The standard distribution will put nothing in this directory. - * Individual sites may place their own extensions and modules in - * this directory. - */ -/* SITEARCH_EXP: - * This symbol contains the ~name expanded version of SITEARCH, to be used - * in programs that are not prepared to deal with ~ expansion at run-time. +/* VOIDFLAGS: + * This symbol indicates how much support of the void type is given by this + * compiler. What various bits mean: + * + * 1 = supports declaration of void + * 2 = supports arrays of pointers to functions returning void + * 4 = supports comparisons between pointers to void functions and + * addresses of void functions + * 8 = suports declaration of generic void pointers + * + * The package designer should define VOIDUSED to indicate the requirements + * of the package. This can be done either by #defining VOIDUSED before + * including config.h, or by defining defvoidused in Myinit.U. If the + * latter approach is taken, only those flags will be tested. If the + * level of void support necessary is not present, defines void to int. */ -#define SITEARCH "$sitearch" /**/ -#define SITEARCH_EXP "$sitearchexp" /**/ +#ifndef VOIDUSED +#define VOIDUSED $defvoidused +#endif +#define VOIDFLAGS $voidflags +#if (VOIDFLAGS & VOIDUSED) != VOIDUSED +#define void int /* is void to be avoided? */ +#define M_VOID /* Xenix strikes again */ +#endif -/* SITELIB: - * This symbol contains the name of the private library for this package. - * The library is private in the sense that it needn't be in anyone's - * execution path, but it should be accessible by the world. The program - * should be prepared to do ~ expansion. - * The standard distribution will put nothing in this directory. - * Individual sites may place their own extensions and modules in - * this directory. - */ -/* SITELIB_EXP: - * This symbol contains the ~name expanded version of SITELIB, to be used - * in programs that are not prepared to deal with ~ expansion at run-time. +/* PERL_BINCOMPAT_5005: + * This symbol, if defined, indicates that Perl 5.006 should be + * binary-compatible with Perl 5.005. This is impossible for builds + * that use features like threads and multiplicity it is always $undef + * for those versions. */ -#define SITELIB "$sitelib" /**/ -#define SITELIB_EXP "$sitelibexp" /**/ +#$d_bincompat5005 PERL_BINCOMPAT_5005 /**/ /* DLSYM_NEEDS_UNDERSCORE: * This symbol, if defined, indicates that we need to prepend an @@ -1841,18 +2159,169 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$d_dlsymun DLSYM_NEEDS_UNDERSCORE /**/ +/* HAS_ENDSPENT: + * This symbol, if defined, indicates that the endspent system call is + * available to finalize the scan of SysV shadow password entries. + */ +#$d_endspent HAS_ENDSPENT /**/ + +/* HAS_FSEEKO: + * This symbol, if defined, indicates that the fseeko routine is + * available to fseek beyond 32 bits (useful for ILP32 hosts). + */ +#$d_fseeko HAS_FSEEKO /**/ + +/* HAS_FTELLO: + * This symbol, if defined, indicates that the ftello routine is + * available to ftell beyond 32 bits (useful for ILP32 hosts). + */ +#$d_ftello HAS_FTELLO /**/ + +/* HAS_GETMNTENT: + * This symbol, if defined, indicates that the getmntent routine is + * available to iterate through mounted file systems. + */ +#$d_getmntent HAS_GETMNTENT /**/ + +/* HAS_GETSPENT: + * This symbol, if defined, indicates that the getspent system call is + * available to retrieve SysV shadow password entries sequentially. + */ +#$d_getspent HAS_GETSPENT /**/ + +/* HAS_GETSPNAM: + * This symbol, if defined, indicates that the getspnam system call is + * available to retrieve SysV shadow password entries by name. + */ +#$d_getspnam HAS_GETSPNAM /**/ + +/* HAS_HASMNTOPT: + * This symbol, if defined, indicates that the hasmntopt routine is + * available to query the mount options of file systems. + */ +#$d_hasmntopt HAS_HASMNTOPT /**/ + +/* HAS_MADVISE: + * This symbol, if defined, indicates that the madvise system call is + * available to map a file into memory. + */ +#$d_madvise HAS_MADVISE /**/ + +/* HAS_MPROTECT: + * This symbol, if defined, indicates that the mprotect system call is + * available to modify the access protection of a memory mapped file. + */ +#$d_mprotect HAS_MPROTECT /**/ + +/* HAS_READV: + * This symbol, if defined, indicates that the readv routine is + * available to do gather reads. You will also need + * and there I_SYSUIO. + */ +#$d_readv HAS_READV /**/ + +/* HAS_SETSPENT: + * This symbol, if defined, indicates that the setspent system call is + * available to initialize the scan of SysV shadow password entries. + */ +#$d_setspent HAS_SETSPENT /**/ + /* USE_SFIO: * This symbol, if defined, indicates that sfio should * be used. */ #$d_sfio USE_SFIO /**/ +/* HAS_FSTATFS: + * This symbol, if defined, indicates that the fstatfs routine is + * available to stat filesystems of file descriptors. + */ +/* HAS_STRUCT_STATFS_FLAGS: + * This symbol, if defined, indicates that the struct statfs + * does have the f_flags member containing the mount flags of + * the filesystem holding the file. + * This kind of struct statfs is coming from sys/mount.h (BSD), + * not from sys/statfs.h (SYSV). + */ +#$d_fstatfs HAS_FSTATFS /**/ +#$d_statfsflags HAS_STRUCT_STATFS_FLAGS /**/ + +/* HAS_FSTATVFS: + * This symbol, if defined, indicates that the fstatvfs routine is + * available to stat filesystems of file descriptors. + */ +#$d_fstatvfs HAS_FSTATVFS /**/ + +/* HAS_TELLDIR_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the telldir() function. Otherwise, it is up + * to the program to supply one. A good guess is + * extern long telldir _((DIR*)); + */ +#$d_telldirproto HAS_TELLDIR_PROTO /**/ + +/* HAS_WRITEV: + * This symbol, if defined, indicates that the writev routine is + * available to do scatter writes. + */ +#$d_writev HAS_WRITEV /**/ + +/* HAS_DBMINIT64: + * This symbol, if defined, indicates that the dbminit64 routine is + * available to open dbm files larger than 2 gigabytes. + */ +/* HAS_DBMCLOSE64: + * This symbol, if defined, indicates that the dbmclose64 routine is + * available to close dbm files larger than 2 gigabytes. + */ +/* HAS_FETCH64: + * This symbol, if defined, indicates that the fetch64 routine is + * available to fetch from dbm files larger than 2 gigabytes. + */ +/* HAS_STORE64: + * This symbol, if defined, indicates that the store64 routine is + * available to store to dbm files larger than 2 gigabytes. + */ +/* HAS_DELETE64: + * This symbol, if defined, indicates that the delete64 routine is + * available to delete from dbm files larger than 2 gigabytes. + */ +/* HAS_FIRSTKEY64: + * This symbol, if defined, indicates that the firstkey64 routine is + * available to firstkey in dbm files larger than 2 gigabytes. + */ +/* HAS_NEXTKEY64: + * This symbol, if defined, indicates that the nextkey64 routine is + * available to nextkey in dbm files larger than 2 gigabytes. + */ +#$d_dbminit64 HAS_DBMINIT64 /**/ +#$d_dbmclose64 HAS_DBMCLOSE64 /**/ +#$d_fetch64 HAS_FETCH64 /**/ +#$d_store64 HAS_STORE64 /**/ +#$d_delete64 HAS_DELETE64 /**/ +#$d_firstkey64 HAS_FIRSTKEY64 /**/ +#$d_nextkey64 HAS_NEXTKEY64 /**/ + /* USE_DYNAMIC_LOADING: * This symbol, if defined, indicates that dynamic loading of * some sort is available. */ #$usedl USE_DYNAMIC_LOADING /**/ +/* FFLUSH_NULL: + * This symbol, if defined, tells that fflush(NULL) does flush + * all pending stdio output. + */ +/* FFLUSH_ALL: + * This symbol, if defined, tells that to flush + * all pending stdio output one must loop through all + * the stdio file handles stored in an array and fflush them. + * Note that if fflushNULL is defined, fflushall will not + * even be probed for and will be left undefined. + */ +#$fflushNULL FFLUSH_NULL /**/ +#$fflushall FFLUSH_ALL /**/ + /* DB_Prefix_t: * This symbol contains the type of the prefix structure element * in the header file. In older versions of DB, it was @@ -1866,6 +2335,139 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #define DB_Hash_t $db_hashtype /**/ #define DB_Prefix_t $db_prefixtype /**/ +/* I_INTTYPES: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +/* HAS_INT64_T: + * This symbol will defined if the C compiler supports int64_t. + * Usually the needs to be included, but sometimes + * is enough. + */ +#$i_inttypes I_INTTYPES /**/ +#$d_int64t HAS_INT64_T /**/ + +/* I_MNTENT: + * This symbol, if defined, indicates that exists and + * should be included. + */ +#$i_mntent I_MNTENT /**/ + +/* I_NETINET_TCP: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +#$i_netinettcp I_NETINET_TCP /**/ + +/* I_POLL: + * This symbol, if defined, indicates that exists and + * should be included. + */ +#$i_poll I_POLL /**/ + +/* I_SHADOW: + * This symbol, if defined, indicates that exists and + * should be included. + */ +#$i_shadow I_SHADOW /**/ + +/* I_SOCKS: + * This symbol, if defined, indicates that exists and + * should be included. + */ +#$i_socks I_SOCKS /**/ + +/* I_SYS_MMAN: + * This symbol, if defined, indicates that exists and + * should be included. + */ +#$i_sysmman I_SYS_MMAN /**/ + +/* I_SYS_MOUNT: + * This symbol, if defined, indicates that exists and + * should be included. + */ +#$i_sysmount I_SYS_MOUNT /**/ + +/* I_SYS_STATVFS: + * This symbol, if defined, indicates that exists and + * should be included. + */ +#$i_sysstatvfs I_SYS_STATVFS /**/ + +/* HAS_FSTAT64: + * This symbol, if defined, indicates that the fstat64 routine is + * available to stat files (fds) larger than 2 gigabytes. + */ +/* HAS_FTRUNCATE64: + * This symbol, if defined, indicates that the ftruncate64 routine is + * available to tell files larger than 2 gigabytes. + */ +/* HAS_LSEEK64: + * This symbol, if defined, indicates that the lseek64 routine is + * available to seek files larger than 2 gigabytes. + */ +/* HAS_LSTAT64: + * This symbol, if defined, indicates that the lstat64 routine is + * available to stat files (symlinks) larger than 2 gigabytes. + */ +/* HAS_OPEN64: + * This symbol, if defined, indicates that the open64 routine is + * available to open files larger than 2 gigabytes. + */ +/* HAS_OPENDIR64: + * This symbol, if defined, indicates that the opendir64 routine is + * available to opendir files larger than 2 gigabytes. + */ +/* HAS_READDIR64: + * This symbol, if defined, indicates that the readdir64 routine is + * available to readdir files larger than 2 gigabytes. + */ +/* HAS_SEEKDIR64: + * This symbol, if defined, indicates that the seekdir64 routine is + * available to seekdir files larger than 2 gigabytes. + */ +/* HAS_STAT64: + * This symbol, if defined, indicates that the stat64 routine is + * available to stat files larger than 2 gigabytes. + */ +/* HAS_TELLDIR64: + * This symbol, if defined, indicates that the telldir64 routine is + * available to telldir files larger than 2 gigabytes. + */ +/* HAS_TRUNCATE64: + * This symbol, if defined, indicates that the truncate64 routine is + * available to truncate files larger than 2 gigabytes. + */ +/* HAS_OFF64_T: + * This symbol will be defined if the C compiler supports off64_t. + */ +/* HAS_STRUCT_DIRENT64: + * This symbol will be defined if the C compiler supports struct dirent64. + */ +#$d_fstat64 HAS_FSTAT64 /**/ +#$d_ftruncate64 HAS_FTRUNCATE64 /**/ +#$d_lseek64 HAS_LSEEK64 /**/ +#$d_lstat64 HAS_LSTAT64 /**/ +#$d_open64 HAS_OPEN64 /**/ +#$d_opendir64 HAS_OPENDIR64 /**/ +#$d_readdir64 HAS_READDIR64 /**/ +#$d_seekdir64 HAS_SEEKDIR64 /**/ +#$d_stat64 HAS_STAT64 /**/ +#$d_telldir64 HAS_TELLDIR64 /**/ +#$d_truncate64 HAS_TRUNCATE64 /**/ +#$d_off64_t HAS_OFF64_T /**/ +#$d_dirent64_s HAS_STRUCT_DIRENT64 /**/ + +/* SELECT_MIN_BITS: + * This symbol holds the minimum number of bits operated by select. + * That is, if you do select(n, ...), how many bits at least will be + * cleared in the masks if some activity is detected. Usually this + * is either n or 32*ceil(n/32), especially many little-endians do + * the latter. This is only useful if you have select(), naturally. + */ +#define SELECT_MIN_BITS $selectminbits /**/ + /* STARTPERL: * This variable contains the string to put in front of a perl * script to make sure (one hopes) that it runs with perl and not @@ -1873,6 +2475,76 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #define STARTPERL "$startperl" /**/ +/* HAS_FGETPOS64: + * This symbol, if defined, indicates that the fgetpos64 routine is + * available to getpos files larger than 2 gigabytes. + */ +/* HAS_FOPEN64: + * This symbol, if defined, indicates that the fopen64 routine is + * available to open files larger than 2 gigabytes. + */ +/* HAS_FREOPEN64: + * This symbol, if defined, indicates that the freopen64 routine is + * available to reopen files larger than 2 gigabytes. + */ +/* HAS_FSEEK64: + * This symbol, if defined, indicates that the fseek64 routine is + * available to seek files larger than 2 gigabytes. + */ +/* HAS_FSEEKO64: + * This symbol, if defined, indicates that the fseeko64 routine is + * available to seek files larger than 2 gigabytes. + */ +/* HAS_FSETPOS64: + * This symbol, if defined, indicates that the fsetpos64 routine is + * available to setpos files larger than 2 gigabytes. + */ +/* HAS_FTELL64: + * This symbol, if defined, indicates that the ftell64 routine is + * available to tell files larger than 2 gigabytes. + */ +/* HAS_FTELLO64: + * This symbol, if defined, indicates that the ftello64 routine is + * available to tell files larger than 2 gigabytes. + */ +/* HAS_TMPFILE64: + * This symbol, if defined, indicates that the tmpfile64 routine is + * available to tmpfile files larger than 2 gigabytes. + */ +#$d_fgetpos64 HAS_FGETPOS64 /**/ +#$d_fopen64 HAS_FOPEN64 /**/ +#$d_freopen64 HAS_FREOPEN64 /**/ +#$d_fseek64 HAS_FSEEK64 /**/ +#$d_fseeko64 HAS_FSEEKO64 /**/ +#$d_fsetpos64 HAS_FSETPOS64 /**/ +#$d_ftell64 HAS_FTELL64 /**/ +#$d_ftello64 HAS_FTELLO64 /**/ +#$d_tmpfile64 HAS_TMPFILE64 /**/ + +/* HAS_STDIO_STREAM_ARRAY: + * This symbol, if defined, tells that there is an array + * holding the stdio streams. + */ +/* STDIO_STREAM_ARRAY: + * This symbol tells the name of the array holding the stdio streams. + * Usual values include _iob, __iob, and __sF. + */ +#$d_stdio_stream_array HAS_STDIO_STREAM_ARRAY /**/ +#define STDIO_STREAM_ARRAY $stdio_stream_array + +/* USE_64_BITS: + * This symbol, if defined, indicates that 64-bit interfaces should + * be used when available. If not defined, the native default interfaces + * will be used (be they 32 or 64 bits). + */ +#$use64bits USE_64_BITS /**/ + +/* MULTIPLICITY: + * This symbol, if defined, indicates that Perl should + * be built to use multiplicity. + */ +#$usemultiplicity MULTIPLICITY /**/ + /* USE_PERLIO: * This symbol, if defined, indicates that the PerlIO abstraction should * be used throughout. If not defined, stdio should be @@ -1880,6 +2552,20 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$useperlio USE_PERLIO /**/ +/* USE_SOCKS: + * This symbol, if defined, indicates that Perl should + * be built to use socks. + */ +#$usesocks USE_SOCKS /**/ + +/* HAS_DRAND48_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the drand48() function. Otherwise, it is up + * to the program to supply one. A good guess is + * extern double drand48 _((void)); + */ +#$d_drand48proto HAS_DRAND48_PROTO /**/ + /* HAS_GETHOST_PROTOS: * This symbol, if defined, indicates that includes * prototypes for gethostent(), gethostbyname(), and @@ -1949,24 +2635,40 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #define ARCHNAME "$archname" /**/ +/* OLD_PTHREAD_CREATE_JOINABLE: + * This symbol, if defined, indicates how to create pthread + * in joinable (aka undetached) state. NOTE: not defined + * if pthread.h already has defined PTHREAD_CREATE_JOINABLE + * (the new version of the constant). + * If defined, known values are PTHREAD_CREATE_UNDETACHED + * and __UNDETACHED. + */ +#$d_old_pthread_create_joinable OLD_PTHREAD_CREATE_JOINABLE $old_pthread_create_joinable /**/ + /* HAS_PTHREAD_YIELD: * This symbol, if defined, indicates that the pthread_yield * routine is available to yield the execution of the current - * thread. + * thread. sched_yield is preferable to pthread_yield. + */ +/* SCHED_YIELD: + * This symbol defines the way to yield the execution of + * the current thread. Known ways are sched_yield, + * pthread_yield, and pthread_yield with NULL. */ /* HAS_SCHED_YIELD: * This symbol, if defined, indicates that the sched_yield * routine is available to yield the execution of the current - * thread. + * thread. sched_yield is preferable to pthread_yield. */ #$d_pthread_yield HAS_PTHREAD_YIELD /**/ +#define SCHED_YIELD $sched_yield /**/ #$d_sched_yield HAS_SCHED_YIELD /**/ -/* PTHREADS_CREATED_JOINABLE: - * This symbol, if defined, indicates that pthreads are created - * in the joinable (aka undetached) state. +/* I_MACH_CTHREADS: + * This symbol, if defined, indicates to the C program that it should + * include . */ -#$d_pthreads_created_joinable PTHREADS_CREATED_JOINABLE /**/ +#$i_machcthr I_MACH_CTHREADS /**/ /* USE_THREADS: * This symbol, if defined, indicates that Perl should @@ -2014,7 +2716,11 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- * It can be int, long, off_t, etc... It may be necessary to include * to get any typedef'ed information. */ +/* LSEEKSIZE: + * This symbol holds the number of bytes used by the Off_t. + */ #define Off_t $lseektype /* type */ +#define LSEEKSIZE $lseeksize /* size */ /* Mode_t: * This symbol holds the type used to declare file modes