X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=uconfig.h;h=dfea3c1c48c843f154436b7c893a2a6de872c4d6;hb=5e2fdd206cb74b2c46df0f9af010e310d95829a8;hp=9a213509bfd7fa563293f8b98723b3f93966fbb4;hpb=7ea3cd407b6ec2a3e424bdfbc486b6e01d6d28bd;p=p5sagit%2Fp5-mst-13.2.git diff --git a/uconfig.h b/uconfig.h index 9a21350..dfea3c1 100644 --- a/uconfig.h +++ b/uconfig.h @@ -121,26 +121,6 @@ */ /*#define HAS_DLERROR / **/ -/* SETUID_SCRIPTS_ARE_SECURE_NOW: - * This symbol, if defined, indicates that the bug that prevents - * setuid scripts from being secure is not present in this kernel. - */ -/* DOSUID: - * This symbol, if defined, indicates that the C program should - * check the script that it is executing for setuid/setgid bits, and - * attempt to emulate setuid/setgid on systems that have disabled - * setuid #! scripts because the kernel can't do it securely. - * It is up to the package designer to make sure that this emulation - * is done securely. Among other things, it should do an fstat on - * the script it just opened to make sure it really is a setuid/setgid - * script, it should make sure the arguments passed correspond exactly - * to the argument on the #! line, and it should not trust any - * subprocesses to which it must pass the filename rather than the - * file descriptor of the script to be executed. - */ -/*#define SETUID_SCRIPTS_ARE_SECURE_NOW / **/ -/*#define DOSUID / **/ - /* HAS_DUP2: * This symbol, if defined, indicates that the dup2 routine is * available to duplicate file descriptors. @@ -641,6 +621,12 @@ */ /*#define HAS_UMASK / **/ +/* HAS_USLEEP: + * This symbol, if defined, indicates that the usleep routine is + * available to let the process sleep on a sub-second accuracy. + */ +/*#define HAS_USLEEP / **/ + /* HASVOLATILE: * This symbol, if defined, indicates that this C compiler knows about * the volatile declaration. @@ -811,7 +797,12 @@ * This symbol, if defined, indicates that exists and should * be included. Otherwise, include or . */ +/* I_SYS_SOCKIO: + * This symbol, if defined, indicates the should be included + * to get socket ioctl options, like SIOCATMARK. + */ /*#define I_SYS_IOCTL / **/ +/*#define I_SYS_SOCKIO / **/ /* I_SYS_NDIR: * This symbol, if defined, indicates to the C program that it should @@ -907,17 +898,6 @@ */ /*#define I_VALUES / **/ -/* I_STDARG: - * This symbol, if defined, indicates that exists and should - * be included. - */ -/* I_VARARGS: - * This symbol, if defined, indicates to the C program that it should - * include . - */ -#define I_STDARG /**/ -/*#define I_VARARGS / **/ - /* I_VFORK: * This symbol, if defined, indicates to the C program that it should * include vfork.h. @@ -951,12 +931,6 @@ */ #define SH_PATH "" /**/ -/* CROSSCOMPILE: - * This symbol, if defined, signifies that we our - * build process is a cross-compilation. - */ -/*#define CROSSCOMPILE / **/ - /* INTSIZE: * This symbol contains the value of sizeof(int) so that the C * preprocessor can make decisions based on it. @@ -969,9 +943,9 @@ * This symbol contains the value of sizeof(short) so that the C * preprocessor can make decisions based on it. */ -#define INTSIZE 1 /**/ -#define LONGSIZE 1 /**/ -#define SHORTSIZE 1 /**/ +#define INTSIZE 4 /**/ +#define LONGSIZE 4 /**/ +#define SHORTSIZE 2 /**/ /* MULTIARCH: * This symbol, if defined, signifies that the build @@ -1027,14 +1001,20 @@ * by Configure. You shouldn't rely on it too much; the specific * feature tests from Configure are generally more reliable. */ +/* OSVERS: + * This symbol contains the version 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 "unknown" /**/ +#define OSVERS "" /**/ /* MEM_ALIGNBYTES: * This symbol contains the number of bytes required to align a * double, or a long double when applicable. Usual values are 2, * 4 and 8. The default is eight, for safety. */ -#if defined(CROSSCOMPILE) || defined(MULTIARCH) +#if defined(USE_CROSS_COMPILE) || defined(MULTIARCH) # define MEM_ALIGNBYTES 8 #else #define MEM_ALIGNBYTES 4 @@ -1111,7 +1091,7 @@ * so the default case (for NeXT) is big endian to catch them. * This might matter for NeXT 3.0. */ -#if defined(CROSSCOMPILE) || defined(MULTIARCH) +#if defined(USE_CROSS_COMPILE) || defined(MULTIARCH) # ifdef __LITTLE_ENDIAN__ # if LONGSIZE == 4 # define BYTEORDER 0x1234 @@ -1135,7 +1115,7 @@ # define BYTEORDER 0x4321 # endif #else -#define BYTEORDER 0x12 /* large digits for MSB */ +#define BYTEORDER 0x1234 /* large digits for MSB */ #endif /* NeXT */ /* CAT2: @@ -1232,6 +1212,12 @@ */ /*#define VOID_CLOSEDIR / **/ +/* HAS_STRUCT_CMSGHDR: + * This symbol, if defined, indicates that the struct cmsghdr + * is supported. + */ +/*#define HAS_STRUCT_CMSGHDR / **/ + /* HAS_CSH: * This symbol, if defined, indicates that the C-shell exists. */ @@ -1295,6 +1281,12 @@ */ /*#define HAS_ENDSERVENT / **/ +/* HAS_FCHDIR: + * This symbol, if defined, indicates that the fchdir routine is + * available to change directory using a file descriptor. + */ +/*#define HAS_FCHDIR / **/ + /* FCNTL_CAN_LOCK: * This symbol, if defined, indicates that fcntl() can be used * for file locking. Normally on Unix systems this is defined. @@ -1453,6 +1445,12 @@ */ /*#define HAS_GETHOST_PROTOS / **/ +/* HAS_GETITIMER: + * This symbol, if defined, indicates that the getitimer routine is + * available to return interval timers. + */ +/*#define HAS_GETITIMER / **/ + /* HAS_GETMNT: * This symbol, if defined, indicates that the getmnt routine is * available to get filesystem mount info by filename. @@ -1674,7 +1672,7 @@ */ /*#define HAS_LONG_DOUBLE / **/ #ifdef HAS_LONG_DOUBLE -#define LONG_DOUBLESIZE 1 /**/ +#define LONG_DOUBLESIZE 8 /**/ #endif /* HAS_LONG_LONG: @@ -1687,7 +1685,7 @@ */ /*#define HAS_LONG_LONG / **/ #ifdef HAS_LONG_LONG -#define LONGLONGSIZE 1 /**/ +#define LONGLONGSIZE 8 /**/ #endif /* HAS_LSEEK_PROTO: @@ -1747,7 +1745,15 @@ * available to split a long double x into a fractional part f and * an integer part i such that |f| < 1.0 and (f + i) = x. */ +/* HAS_MODFL_POW32_BUG: + * This symbol, if defined, indicates that the modfl routine is + * broken for long doubles >= pow(2, 32). + * For example from 4294967303.150000 one would get 4294967302.000000 + * and 1.150000. The bug has been seen in certain versions of glibc, + * release 2.2.2 is known to be okay. + */ /*#define HAS_MODFL / **/ +/*#define HAS_MODFL_POW32_BUG / **/ /* HAS_MPROTECT: * This symbol, if defined, indicates that the mprotect system call is @@ -1761,6 +1767,12 @@ */ /*#define HAS_MSG / **/ +/* HAS_STRUCT_MSGHDR: + * This symbol, if defined, indicates that the struct msghdr + * is supported. + */ +/*#define HAS_STRUCT_MSGHDR / **/ + /* HAS_OFF64_T: * This symbol will be defined if the C compiler supports off64_t. */ @@ -1801,9 +1813,22 @@ #define SCHED_YIELD sched_yield() /**/ /*#define HAS_SCHED_YIELD / **/ +/* 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. + */ +/*#define HAS_READV / **/ + +/* HAS_RECVMSG: + * This symbol, if defined, indicates that the recvmsg routine is + * available to send structured socket messages. + */ +/*#define HAS_RECVMSG / **/ + /* HAS_SAFE_BCOPY: * This symbol, if defined, indicates that the bcopy routine is available - * to copy potentially overlapping memory blocks. Otherwise you should + * to copy potentially overlapping memory blocks. Normally, you should * probably use memmove() or memcpy(). If neither is defined, roll your * own version. */ @@ -1811,9 +1836,9 @@ /* HAS_SAFE_MEMCPY: * This symbol, if defined, indicates that the memcpy routine is available - * to copy potentially overlapping memory blocks. Otherwise you should - * probably use memmove() or memcpy(). If neither is defined, roll your - * own version. + * to copy potentially overlapping memory blocks. If you need to + * copy overlapping memory blocks, you should check HAS_MEMMOVE and + * use memmove() instead, if available. */ /*#define HAS_SAFE_MEMCPY / **/ @@ -1839,6 +1864,12 @@ */ /*#define HAS_SEM / **/ +/* HAS_SENDMSG: + * This symbol, if defined, indicates that the sendmsg routine is + * available to send structured socket messages. + */ +/*#define HAS_SENDMSG / **/ + /* HAS_SETGRENT: * This symbol, if defined, indicates that the setgrent routine is * available for initializing sequential access of the group database. @@ -1858,6 +1889,12 @@ */ /*#define HAS_SETHOSTENT / **/ +/* HAS_SETITIMER: + * This symbol, if defined, indicates that the setitimer routine is + * available to set interval timers. + */ +/*#define HAS_SETITIMER / **/ + /* HAS_SETNETENT: * This symbol, if defined, indicates that the setnetent() routine is * available. @@ -2193,6 +2230,12 @@ */ /*#define HAS_TIMES / **/ +/* HAS_UALARM: + * This symbol, if defined, indicates that the ualarm routine is + * available to do alarms with microsecond granularity. + */ +/*#define HAS_UALARM / **/ + /* HAS_UNION_SEMUN: * This symbol, if defined, indicates that the union semun is * defined by including . If not, the user code @@ -2248,6 +2291,12 @@ #define HAS_VPRINTF /**/ /*#define USE_CHAR_VSPRINTF / **/ +/* HAS_WRITEV: + * This symbol, if defined, indicates that the writev routine is + * available to do scatter writes. + */ +/*#define HAS_WRITEV / **/ + /* USE_DYNAMIC_LOADING: * This symbol, if defined, indicates that dynamic loading of * some sort is available. @@ -2258,7 +2307,7 @@ * This symbol contains the size of a double, so that the C preprocessor * can make decisions based on it. */ -#define DOUBLESIZE 1 /**/ +#define DOUBLESIZE 8 /**/ /* EBCDIC: * This symbol, if defined, indicates that this system uses @@ -2335,8 +2384,25 @@ * in the header file. In older versions of DB, it was * int, while in newer ones it is size_t. */ +/* DB_VERSION_MAJOR_CFG: + * This symbol, if defined, defines the major version number of + * Berkeley DB found in the header when Perl was configured. + */ +/* DB_VERSION_MINOR_CFG: + * This symbol, if defined, defines the minor version number of + * Berkeley DB found in the header when Perl was configured. + * For DB version 1 this is always 0. + */ +/* DB_VERSION_PATCH_CFG: + * This symbol, if defined, defines the patch version number of + * Berkeley DB found in the header when Perl was configured. + * For DB version 1 this is always 0. + */ #define DB_Hash_t u_int32_t /**/ #define DB_Prefix_t size_t /**/ +#define DB_VERSION_MAJOR_CFG /**/ +#define DB_VERSION_MINOR_CFG /**/ +#define DB_VERSION_PATCH_CFG /**/ /* I_GRP: * This symbol, if defined, indicates to the C program that it should @@ -2596,8 +2662,8 @@ * This symbol holds the number of bytes used by the Off_t. */ #define Off_t int /* type */ -#define LSEEKSIZE 1 /* size */ -#define Off_t_size 1 /* size */ +#define LSEEKSIZE 4 /* size */ +#define Off_t_size 4 /* size */ /* Free_t: * This variable contains the return type of free(). It is usually @@ -2810,6 +2876,10 @@ * This symbol defines the format string used for printing a Perl UV * as an unsigned hexadecimal integer in lowercase abcdef. */ +/* UVXf: + * This symbol defines the format string used for printing a Perl UV + * as an unsigned hexadecimal integer in uppercase ABCDEF. + */ /* NVef: * This symbol defines the format string used for printing a Perl NV * using %e-ish floating point format. @@ -2826,6 +2896,7 @@ #define UVuf "lu" /**/ #define UVof "lo" /**/ #define UVxf "lx" /**/ +#define UVXf "lX" /**/ #define NVef "e" /**/ #define NVff "f" /**/ #define NVgf "g" /**/ @@ -2856,7 +2927,7 @@ * the compiler supports (void *); otherwise it will be * sizeof(char *). */ -#define PTRSIZE 1 /**/ +#define PTRSIZE 4 /**/ /* Drand01: * This macro is to be used to generate uniformly distributed @@ -2928,8 +2999,13 @@ * The last element is 0, corresponding to the 0 at the end of * the sig_name list. */ +/* SIG_SIZE: + * This variable contains the number of elements of the sig_name + * and sig_num arrays, excluding the final NULL entry. + */ #define SIG_NAME 0 /**/ #define SIG_NUM 0 /**/ +#define SIG_SIZE 1 /**/ /* SITEARCH: * This symbol contains the name of the private library for this package. @@ -2976,7 +3052,7 @@ /* Size_t_size: * This symbol holds the size of a Size_t in bytes. */ -#define Size_t_size 1 /* */ +#define Size_t_size 4 /* */ /* Size_t: * This symbol holds the type used to declare length parameters @@ -3136,12 +3212,18 @@ * This symbol, if defined, indicates that Perl should * be built to use the old draft POSIX threads API. */ +/* USE_REENTRANT_API: + * This symbol, if defined, indicates that Perl should + * try to use the various _r versions of library functions. + * This is extremely experimental. + */ /*#define USE_5005THREADS / **/ /*#define USE_ITHREADS / **/ #if defined(USE_5005THREADS) && !defined(USE_ITHREADS) #define USE_THREADS /* until src is revised*/ #endif /*#define OLD_PTHREADS_API / **/ +/*#define USE_REENTRANT_API / **/ /* PERL_VENDORARCH: * If defined, this symbol contains the name of a private library. @@ -3233,4 +3315,142 @@ #define PERL_XS_APIVERSION "5.005" #define PERL_PM_APIVERSION "5.005" +/* SETUID_SCRIPTS_ARE_SECURE_NOW: + * This symbol, if defined, indicates that the bug that prevents + * setuid scripts from being secure is not present in this kernel. + */ +/* DOSUID: + * This symbol, if defined, indicates that the C program should + * check the script that it is executing for setuid/setgid bits, and + * attempt to emulate setuid/setgid on systems that have disabled + * setuid #! scripts because the kernel can't do it securely. + * It is up to the package designer to make sure that this emulation + * is done securely. Among other things, it should do an fstat on + * the script it just opened to make sure it really is a setuid/setgid + * script, it should make sure the arguments passed correspond exactly + * to the argument on the #! line, and it should not trust any + * subprocesses to which it must pass the filename rather than the + * file descriptor of the script to be executed. + */ +/*#define SETUID_SCRIPTS_ARE_SECURE_NOW / **/ +/*#define DOSUID / **/ + +/* I_STDARG: + * This symbol, if defined, indicates that exists and should + * be included. + */ +/* I_VARARGS: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +#define I_STDARG /**/ +/*#define I_VARARGS / **/ + +/* USE_CROSS_COMPILE: + * This symbol, if defined, indicates that Perl is being cross-compiled. + */ +/* PERL_TARGETARCH: + * This symbol, if defined, indicates the target architecture + * Perl has been cross-compiled to. Undefined if not a cross-compile. + */ +#ifndef USE_CROSS_COMPILE +/*#define USE_CROSS_COMPILE / **/ +#define PERL_TARGETARCH "" /**/ +#endif + +/* HAS_DBMINIT_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the dbminit() function. Otherwise, it is up + * to the program to supply one. A good guess is + * extern int dbminit(char *); + */ +/*#define HAS_DBMINIT_PROTO / **/ + +/* HAS_FLOCK_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the flock() function. Otherwise, it is up + * to the program to supply one. A good guess is + * extern int flock(int, int); + */ +/*#define HAS_FLOCK_PROTO / **/ + +/* HAS_NL_LANGINFO: + * This symbol, if defined, indicates that the nl_langinfo routine is + * available to return local data. You will also need + * and therefore I_LANGINFO. + */ +/*#define HAS_NL_LANGINFO / **/ + +/* HAS_SIGPROCMASK: + * This symbol, if defined, indicates that the sigprocmask + * system call is available to examine or change the signal mask + * of the calling process. + */ +/*#define HAS_SIGPROCMASK / **/ + +/* HAS_SOCKATMARK: + * This symbol, if defined, indicates that the sockatmark routine is + * available to test whether a socket is at the out-of-band mark. + */ +/*#define HAS_SOCKATMARK / **/ + +/* HAS_SOCKATMARK_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the sockatmark() function. Otherwise, it is up + * to the program to supply one. A good guess is + * extern int sockatmark _((int)); + */ +/*#define HAS_SOCKATMARK_PROTO / **/ + +/* HAS_SETRESGID_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the setresgid() function. Otherwise, it is up + * to the program to supply one. Good guesses are + * extern int setresgid(uid_t ruid, uid_t euid, uid_t suid); + */ +/*#define HAS_SETRESGID_PROTO / **/ + +/* HAS_SETRESUID_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the setresuid() function. Otherwise, it is up + * to the program to supply one. Good guesses are + * extern int setresuid(uid_t ruid, uid_t euid, uid_t suid); + */ +/*#define HAS_SETRESUID_PROTO / **/ + +/* HAS_STRFTIME: + * This symbol, if defined, indicates that the strftime routine is + * available to do time formatting. + */ +/*#define HAS_STRFTIME / **/ + +/* HAS_SYSCALL_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the syscall() function. Otherwise, it is up + * to the program to supply one. Good guesses are + * extern int syscall(int, ...); + * extern int syscall(long, ...); + */ +/*#define HAS_SYSCALL_PROTO / **/ + +/* U32_ALIGNMENT_REQUIRED: + * This symbol, if defined, indicates that you must access + * character data through U32-aligned pointers. + */ +#define U32_ALIGNMENT_REQUIRED /**/ + +/* HAS_USLEEP_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the usleep() function. Otherwise, it is up + * to the program to supply one. A good guess is + * extern int usleep(useconds_t); + */ +/*#define HAS_USLEEP_PROTO / **/ + +/* I_LANGINFO: + * This symbol, if defined, indicates that exists and + * should be included. + */ +/*#define I_LANGINFO / **/ + #endif