X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/0e3c5d8bc74003db0d21a865654ade5ad797f838..e45189ae472830e78ec678c4bd0c35cbe52b10f8:/win32/config_H.vc diff --git a/win32/config_H.vc b/win32/config_H.vc index ac7d22d..7a76f1d 100644 --- a/win32/config_H.vc +++ b/win32/config_H.vc @@ -1,19 +1,15 @@ -/* - * This file was produced by running the config_h.SH script, which +/* This file was produced by running the config_h.SH script, which * gets its values from undef, which is generally produced by * running Configure. * * Feel free to modify any of this as the need arises. Note, however, * that running config_h.SH again will wipe out any changes you've made. * For a more permanent change edit undef and rerun config_h.SH. - * - * $Id: Config_h.U 1 2006-08-24 12:32:52Z rmanfredi $ */ -/* - * Package name : perl5 +/* Package name : perl5 * Source directory : - * Configuration time: Wed Jul 9 13:18:23 2008 + * Configuration time: Wed Sep 17 13:53:56 2014 * Configured by : shay * Target system : */ @@ -36,31 +32,31 @@ * This symbol is defined if the bcmp() routine is available to * compare blocks of memory. */ -/*#define HAS_BCMP /**/ +/*#define HAS_BCMP / **/ /* HAS_BCOPY: * This symbol is defined if the bcopy() routine is available to * copy blocks of memory. */ -/*#define HAS_BCOPY /**/ +/*#define HAS_BCOPY / **/ /* HAS_BZERO: * This symbol is defined if the bzero() routine is available to * set a memory block to 0. */ -/*#define HAS_BZERO /**/ +/*#define HAS_BZERO / **/ /* HAS_CHOWN: * This symbol, if defined, indicates that the chown routine is * available. */ -/*#define HAS_CHOWN /**/ +/*#define HAS_CHOWN / **/ /* HAS_CHROOT: * This symbol, if defined, indicates that the chroot routine is * available. */ -/*#define HAS_CHROOT /**/ +/*#define HAS_CHROOT / **/ /* HAS_CHSIZE: * This symbol, if defined, indicates that the chsize routine is available @@ -72,19 +68,19 @@ * This symbol, if defined, indicates that the crypt routine is available * to encrypt passwords and the like. */ -/*#define HAS_CRYPT /**/ +#define HAS_CRYPT /**/ /* HAS_CTERMID: * This symbol, if defined, indicates that the ctermid routine is * available to generate filename for terminal. */ -/*#define HAS_CTERMID /**/ +/*#define HAS_CTERMID / **/ /* HAS_CUSERID: * This symbol, if defined, indicates that the cuserid routine is * available to get character login names. */ -/*#define HAS_CUSERID /**/ +/*#define HAS_CUSERID / **/ /* HAS_DBL_DIG: * This symbol, if defined, indicates that this system's @@ -107,26 +103,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. @@ -137,19 +113,19 @@ * This symbol, if defined, indicates that the fchmod routine is available * to change mode of opened files. If unavailable, use chmod(). */ -/*#define HAS_FCHMOD /**/ +/*#define HAS_FCHMOD / **/ /* HAS_FCHOWN: * This symbol, if defined, indicates that the fchown routine is available * to change ownership of opened files. If unavailable, use chown(). */ -/*#define HAS_FCHOWN /**/ +/*#define HAS_FCHOWN / **/ /* HAS_FCNTL: * This symbol, if defined, indicates to the C program that * the fcntl() function exists. */ -/*#define HAS_FCNTL /**/ +/*#define HAS_FCNTL / **/ /* HAS_FGETPOS: * This symbol, if defined, indicates that the fgetpos routine is @@ -167,7 +143,7 @@ * This symbol, if defined, indicates that the fork routine is * available. */ -/*#define HAS_FORK /**/ +/*#define HAS_FORK / **/ /* HAS_FSETPOS: * This symbol, if defined, indicates that the fsetpos routine is @@ -191,7 +167,7 @@ * available to get the list of process groups. If unavailable, multiple * groups are probably not supported. */ -/*#define HAS_GETGROUPS /**/ +/*#define HAS_GETGROUPS / **/ /* HAS_GETLOGIN: * This symbol, if defined, indicates that the getlogin routine is @@ -204,32 +180,32 @@ * the getpgid(pid) function is available to get the * process group id. */ -/*#define HAS_GETPGID /**/ +/*#define HAS_GETPGID / **/ /* HAS_GETPGRP2: * This symbol, if defined, indicates that the getpgrp2() (as in DG/UX) * routine is available to get the current process group. */ -/*#define HAS_GETPGRP2 /**/ +/*#define HAS_GETPGRP2 / **/ /* HAS_GETPPID: * This symbol, if defined, indicates that the getppid routine is * available to get the parent process ID. */ -/*#define HAS_GETPPID /**/ +/*#define HAS_GETPPID / **/ /* HAS_GETPRIORITY: * This symbol, if defined, indicates that the getpriority routine is * available to get a process's priority. */ -/*#define HAS_GETPRIORITY /**/ +/*#define HAS_GETPRIORITY / **/ /* 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" * strings. */ -/*#define HAS_INET_ATON /**/ +/*#define HAS_INET_ATON / **/ /* HAS_KILLPG: * This symbol, if defined, indicates that the killpg routine is available @@ -254,13 +230,13 @@ * This symbol, if defined, indicates that the lockf routine is * available to do file locking. */ -/*#define HAS_LOCKF /**/ +/*#define HAS_LOCKF / **/ /* HAS_LSTAT: * This symbol, if defined, indicates that the lstat routine is * available to do file stats on symbolic links. */ -/*#define HAS_LSTAT /**/ +/*#define HAS_LSTAT / **/ /* HAS_MBLEN: * This symbol, if defined, indicates that the mblen routine is available @@ -270,13 +246,13 @@ /* HAS_MBSTOWCS: * This symbol, if defined, indicates that the mbstowcs routine is - * available to covert a multibyte string into a wide character string. + * available to convert a multibyte string into a wide character string. */ #define HAS_MBSTOWCS /**/ /* HAS_MBTOWC: * This symbol, if defined, indicates that the mbtowc routine is available - * to covert a multibyte to a wide character. + * to convert a multibyte to a wide character. */ #define HAS_MBTOWC /**/ @@ -319,7 +295,7 @@ * do it for you. However, if mkfifo is there, mknod might require * super-user privileges which mkfifo will not. */ -/*#define HAS_MKFIFO /**/ +/*#define HAS_MKFIFO / **/ /* HAS_MKTIME: * This symbol, if defined, indicates that the mktime routine is @@ -331,19 +307,19 @@ * This symbol, if defined, indicates that the msync system call is * available to synchronize a mapped file. */ -/*#define HAS_MSYNC /**/ +/*#define HAS_MSYNC / **/ /* HAS_MUNMAP: * This symbol, if defined, indicates that the munmap system call is * available to unmap a region, usually mapped by mmap(). */ -/*#define HAS_MUNMAP /**/ +/*#define HAS_MUNMAP / **/ /* HAS_NICE: * This symbol, if defined, indicates that the nice routine is * available. */ -/*#define HAS_NICE /**/ +/*#define HAS_NICE / **/ /* HAS_PATHCONF: * This symbol, if defined, indicates that pathconf() is available @@ -355,8 +331,8 @@ * to determine file-system related limits and options associated * with a given open file descriptor. */ -/*#define HAS_PATHCONF /**/ -/*#define HAS_FPATHCONF /**/ +/*#define HAS_PATHCONF / **/ +/*#define HAS_FPATHCONF / **/ /* HAS_PAUSE: * This symbol, if defined, indicates that the pause routine is @@ -375,7 +351,7 @@ * available to poll active file descriptors. Please check I_POLL and * I_SYS_POLL to know which header should be included as well. */ -/*#define HAS_POLL /**/ +/*#define HAS_POLL / **/ /* HAS_READDIR: * This symbol, if defined, indicates that the readdir routine is @@ -406,7 +382,7 @@ * This symbol, if defined, indicates that the readlink routine is * available to read the value of a symbolic link. */ -/*#define HAS_READLINK /**/ +/*#define HAS_READLINK / **/ /* HAS_RENAME: * This symbol, if defined, indicates that the rename routine is available @@ -433,27 +409,27 @@ * This symbol, if defined, indicates that the setegid routine is available * to change the effective gid of the current program. */ -/*#define HAS_SETEGID /**/ +/*#define HAS_SETEGID / **/ /* HAS_SETEUID: * This symbol, if defined, indicates that the seteuid routine is available * to change the effective uid of the current program. */ -/*#define HAS_SETEUID /**/ +/*#define HAS_SETEUID / **/ /* HAS_SETGROUPS: * This symbol, if defined, indicates that the setgroups() routine is * available to set the list of process groups. If unavailable, multiple * groups are probably not supported. */ -/*#define HAS_SETGROUPS /**/ +/*#define HAS_SETGROUPS / **/ /* HAS_SETLINEBUF: * This symbol, if defined, indicates that the setlinebuf routine is * available to change stderr or stdout from block-buffered or unbuffered * to a line-buffered mode. */ -/*#define HAS_SETLINEBUF /**/ +/*#define HAS_SETLINEBUF / **/ /* HAS_SETLOCALE: * This symbol, if defined, indicates that the setlocale routine is @@ -465,19 +441,19 @@ * This symbol, if defined, indicates that the setpgid(pid, gpid) * routine is available to set process group ID. */ -/*#define HAS_SETPGID /**/ +/*#define HAS_SETPGID / **/ /* HAS_SETPGRP2: * This symbol, if defined, indicates that the setpgrp2() (as in DG/UX) * routine is available to set the current process group. */ -/*#define HAS_SETPGRP2 /**/ +/*#define HAS_SETPGRP2 / **/ /* HAS_SETPRIORITY: * This symbol, if defined, indicates that the setpriority routine is * available to set a process's priority. */ -/*#define HAS_SETPRIORITY /**/ +/*#define HAS_SETPRIORITY / **/ /* HAS_SETREGID: * This symbol, if defined, indicates that the setregid routine is @@ -489,8 +465,8 @@ * available to change the real, effective and saved gid of the current * process. */ -/*#define HAS_SETREGID /**/ -/*#define HAS_SETRESGID /**/ +/*#define HAS_SETREGID / **/ +/*#define HAS_SETRESGID / **/ /* HAS_SETREUID: * This symbol, if defined, indicates that the setreuid routine is @@ -502,26 +478,26 @@ * available to change the real, effective and saved uid of the current * process. */ -/*#define HAS_SETREUID /**/ -/*#define HAS_SETRESUID /**/ +/*#define HAS_SETREUID / **/ +/*#define HAS_SETRESUID / **/ /* HAS_SETRGID: * This symbol, if defined, indicates that the setrgid routine is available * to change the real gid of the current program. */ -/*#define HAS_SETRGID /**/ +/*#define HAS_SETRGID / **/ /* HAS_SETRUID: * This symbol, if defined, indicates that the setruid routine is available * to change the real uid of the current program. */ -/*#define HAS_SETRUID /**/ +/*#define HAS_SETRUID / **/ /* HAS_SETSID: * This symbol, if defined, indicates that the setsid routine is * available to set the process group ID. */ -/*#define HAS_SETSID /**/ +/*#define HAS_SETSID / **/ /* HAS_STRCHR: * This symbol is defined to indicate that the strchr()/strrchr() @@ -533,7 +509,7 @@ * functions are available for string searching. */ #define HAS_STRCHR /**/ -/*#define HAS_INDEX /**/ +/*#define HAS_INDEX / **/ /* HAS_STRCOLL: * This symbol, if defined, indicates that the strcoll routine is @@ -563,19 +539,19 @@ * This symbol, if defined, indicates that the symlink routine is available * to create symbolic links. */ -/*#define HAS_SYMLINK /**/ +/*#define HAS_SYMLINK / **/ /* HAS_SYSCALL: * This symbol, if defined, indicates that the syscall routine is * available to call arbitrary system calls. If undefined, that's tough. */ -/*#define HAS_SYSCALL /**/ +/*#define HAS_SYSCALL / **/ /* HAS_SYSCONF: * This symbol, if defined, indicates that sysconf() is available * to determine system related limits and options. */ -/*#define HAS_SYSCONF /**/ +/*#define HAS_SYSCONF / **/ /* HAS_SYSTEM: * This symbol, if defined, indicates that the system routine is @@ -587,19 +563,19 @@ * This symbol, if defined, indicates that the tcgetpgrp routine is * available to get foreground process group ID. */ -/*#define HAS_TCGETPGRP /**/ +/*#define HAS_TCGETPGRP / **/ /* HAS_TCSETPGRP: * This symbol, if defined, indicates that the tcsetpgrp routine is * available to set foreground process group ID. */ -/*#define HAS_TCSETPGRP /**/ +/*#define HAS_TCSETPGRP / **/ /* HAS_TRUNCATE: * This symbol, if defined, indicates that the truncate routine is * available to truncate files. */ -/*#define HAS_TRUNCATE /**/ +/*#define HAS_TRUNCATE / **/ /* HAS_TZNAME: * This symbol, if defined, indicates that the tzname[] array is @@ -617,12 +593,12 @@ * This symbol, if defined, indicates that the usleep routine is * available to let the process sleep on a sub-second accuracy. */ -/*#define HAS_USLEEP /**/ +/*#define HAS_USLEEP / **/ /* HAS_WAIT4: * This symbol, if defined, indicates that wait4() exists. */ -/*#define HAS_WAIT4 /**/ +/*#define HAS_WAIT4 / **/ /* HAS_WAITPID: * This symbol, if defined, indicates that the waitpid routine is @@ -638,7 +614,7 @@ /* HAS_WCTOMB: * This symbol, if defined, indicates that the wctomb routine is available - * to covert a wide character to a multibyte. + * to convert a wide character to a multibyte. */ #define HAS_WCTOMB /**/ @@ -669,8 +645,8 @@ * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_DBM /**/ -#define I_RPCSVC_DBM /**/ +/*#define I_DBM / **/ +/*#define I_RPCSVC_DBM / **/ /* I_DLFCN: * This symbol, if defined, indicates that exists and should @@ -694,7 +670,7 @@ * This symbol, if defined, indicates that exists and should * be included. */ -/*#define I_GDBM /**/ +/*#define I_GDBM / **/ /* I_LIMITS: * This symbol, if defined, indicates to the C program that it should @@ -719,19 +695,13 @@ * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_MEMORY /**/ +/*#define I_MEMORY / **/ /* I_NETINET_IN: * This symbol, if defined, indicates to the C program that it should * include . Otherwise, you may try . */ -/*#define I_NETINET_IN /**/ - -/* I_SFIO: - * This symbol, if defined, indicates to the C program that it should - * include . - */ -/*#define I_SFIO /**/ +/*#define I_NETINET_IN / **/ /* I_STDDEF: * This symbol, if defined, indicates that exists and should @@ -755,13 +725,13 @@ * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_SYS_DIR /**/ +/*#define I_SYS_DIR / **/ /* I_SYS_FILE: * This symbol, if defined, indicates to the C program that it should * include to get definition of R_OK and friends. */ -/*#define I_SYS_FILE /**/ +/*#define I_SYS_FILE / **/ /* I_SYS_IOCTL: * This symbol, if defined, indicates that exists and should @@ -771,39 +741,39 @@ * This symbol, if defined, indicates the should be included * to get socket ioctl options, like SIOCATMARK. */ -/*#define I_SYS_IOCTL /**/ -/*#define I_SYS_SOCKIO /**/ +/*#define I_SYS_IOCTL / **/ +/*#define I_SYS_SOCKIO / **/ /* I_SYS_NDIR: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_SYS_NDIR /**/ +/*#define I_SYS_NDIR / **/ /* I_SYS_PARAM: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_SYS_PARAM /**/ +/*#define I_SYS_PARAM / **/ /* I_SYS_POLL: * This symbol, if defined, indicates that the program may include * . When I_POLL is also defined, it's probably safest * to only include . */ -/*#define I_SYS_POLL /**/ +/*#define I_SYS_POLL / **/ /* I_SYS_RESOURCE: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_SYS_RESOURCE /**/ +/*#define I_SYS_RESOURCE / **/ /* I_SYS_SELECT: * This symbol, if defined, indicates to the C program that it should * include in order to get definition of struct timeval. */ -/*#define I_SYS_SELECT /**/ +/*#define I_SYS_SELECT / **/ /* I_SYS_STAT: * This symbol, if defined, indicates to the C program that it should @@ -815,7 +785,7 @@ * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_SYS_TIMES /**/ +/*#define I_SYS_TIMES / **/ /* I_SYS_TYPES: * This symbol, if defined, indicates to the C program that it should @@ -827,39 +797,19 @@ * This symbol, if defined, indicates to the C program that it should * include to get UNIX domain socket definitions. */ -/*#define I_SYS_UN /**/ +/*#define I_SYS_UN / **/ /* I_SYS_WAIT: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_SYS_WAIT /**/ - -/* I_TERMIO: - * This symbol, if defined, indicates that the program should include - * rather than . There are also differences in - * the ioctl() calls that depend on the value of this symbol. - */ -/* I_TERMIOS: - * This symbol, if defined, indicates that the program should include - * the POSIX termios.h rather than sgtty.h or termio.h. - * There are also differences in the ioctl() calls that depend on the - * value of this symbol. - */ -/* I_SGTTY: - * This symbol, if defined, indicates that the program should include - * rather than . There are also differences in - * the ioctl() calls that depend on the value of this symbol. - */ -/*#define I_TERMIO /**/ -/*#define I_TERMIOS /**/ -/*#define I_SGTTY /**/ +/*#define I_SYS_WAIT / **/ /* I_UNISTD: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_UNISTD /**/ +/*#define I_UNISTD / **/ /* I_UTIME: * This symbol, if defined, indicates to the C program that it should @@ -873,60 +823,34 @@ * MAXLONG, i.e. machine dependant limitations. Probably, you * should use instead, if it is available. */ -/*#define I_VALUES /**/ +/*#define I_VALUES / **/ /* I_VFORK: * This symbol, if defined, indicates to the C program that it should * include vfork.h. */ -/*#define I_VFORK /**/ - -/* 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 4 /**/ -#define LONGSIZE 4 /**/ -#define SHORTSIZE 2 /**/ +/*#define I_VFORK / **/ -/* 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. +/* CAN_VAPROTO: + * This variable is defined on systems supporting prototype declaration + * of functions with a variable number of arguments. */ -/*#define MULTIARCH /**/ - -/* HAS_QUAD: - * This symbol, if defined, tells that there's a 64-bit integer type, - * Quad_t, and its unsigned counterpar, Uquad_t. QUADKIND will be one - * of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, or QUAD_IS_INT64_T. +/* _V: + * This macro is used to declare function parameters in prototypes for + * functions with a variable number of parameters. Use double parentheses. + * For example: + * + * int printf _V((char *fmt, ...)); + * + * Remember to use the plain simple _() macro when declaring a function + * with no variable number of arguments, since it might be possible to + * have a non-effect _V() macro and still get prototypes via _(). */ -#define HAS_QUAD /**/ -#ifdef HAS_QUAD -# ifndef __GNUC__ -# define Quad_t __int64 /**/ -# define Uquad_t unsigned __int64 /**/ -# define QUADKIND 5 /**/ -# else -# define Quad_t long long /**/ -# define Uquad_t unsigned long long /**/ -# define QUADKIND 3 /**/ -# endif -# define QUAD_IS_INT 1 -# define QUAD_IS_LONG 2 -# define QUAD_IS_LONG_LONG 3 -# define QUAD_IS_INT64_T 4 -# define QUAD_IS___INT64 5 +/*#define CAN_VAPROTO / **/ +#ifdef CAN_VAPROTO +#define _V(args) args +#else +#define _V(args) () #endif /* OSNAME: @@ -940,7 +864,24 @@ * feature tests from Configure are generally more reliable. */ #define OSNAME "MSWin32" /**/ -#define OSVERS "5.1" /**/ +#define OSVERS "6.1" /**/ + +/* 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. + */ +/*#define MULTIARCH / **/ + +/* 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. For cross-compiling + * or multiarch support, Configure will set a minimum of 8. + */ +#define MEM_ALIGNBYTES 8 /* ARCHLIB: * This variable, if defined, holds the name of the directory in @@ -956,7 +897,7 @@ * in programs that are not prepared to deal with ~ expansion at run-time. */ #define ARCHLIB "c:\\perl\\lib" /**/ -/*#define ARCHLIB_EXP "" /**/ +/*#define ARCHLIB_EXP "" / **/ /* ARCHNAME: * This symbol holds a string representing the architecture name. @@ -982,6 +923,59 @@ #define BIN_EXP "c:\\perl\\bin" /**/ #define PERL_RELOCATABLE_INC "undef" /**/ +/* 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 4 /**/ +#define LONGSIZE 4 /**/ +#define SHORTSIZE 2 /**/ + +/* BYTEORDER: + * This symbol holds the hexadecimal constant defined in byteorder, + * in a UV, i.e. 0x1234 or 0x4321 or 0x12345678, etc... + * If the compiler supports cross-compiling or multiple-architecture + * binaries, use compiler-defined macros to + * determine the byte order. + */ +#if 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 +#else +#define BYTEORDER 0x1234 /* large digits for MSB */ +#endif + +/* CHARBITS: + * This symbol contains the size of a char, so that the C preprocessor + * can make decisions based on it. + */ +#define CHARBITS 8 /**/ + /* CAT2: * This macro concatenates 2 tokens together. */ @@ -1028,15 +1022,9 @@ * This symbol is intended to be used along with CPPRUN in the same manner * symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "". */ -#ifndef __GNUC__ -# define CPPSTDIN "cppstdin" -# define CPPMINUS "" -# define CPPRUN "cl -nologo -E" -#else -# define CPPSTDIN "gcc -E" -# define CPPMINUS "-" -# define CPPRUN "gcc -E" -#endif +#define CPPSTDIN "cppstdin" +#define CPPMINUS "" +#define CPPRUN "cl -nologo -E" #define CPPLAST "" /* HAS_ACCESS: @@ -1050,7 +1038,7 @@ * This symbol, if defined, indicates that the accessx routine is * available to do extended access checks. */ -/*#define HAS_ACCESSX /**/ +/*#define HAS_ACCESSX / **/ /* HAS_ASCTIME_R: * This symbol, if defined, indicates that the asctime_r routine @@ -1062,7 +1050,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_asctime_r * is defined. */ -/*#define HAS_ASCTIME_R /**/ +/*#define HAS_ASCTIME_R / **/ #define ASCTIME_R_PROTO 0 /**/ /* HASATTRIBUTE_FORMAT: @@ -1086,17 +1074,55 @@ /* HASATTRIBUTE_UNUSED: * Can we handle GCC attribute for unused variables and arguments */ +/* HASATTRIBUTE_DEPRECATED: + * Can we handle GCC attribute for marking deprecated APIs + */ /* HASATTRIBUTE_WARN_UNUSED_RESULT: * Can we handle GCC attribute for warning on unused results */ -/*#define HASATTRIBUTE_FORMAT /**/ -/*#define PRINTF_FORMAT_NULL_OK /**/ -/*#define HASATTRIBUTE_NORETURN /**/ -/*#define HASATTRIBUTE_MALLOC /**/ -/*#define HASATTRIBUTE_NONNULL /**/ -/*#define HASATTRIBUTE_PURE /**/ -/*#define HASATTRIBUTE_UNUSED /**/ -/*#define HASATTRIBUTE_WARN_UNUSED_RESULT /**/ +/*#define HASATTRIBUTE_DEPRECATED / **/ +/*#define HASATTRIBUTE_FORMAT / **/ +/*#define PRINTF_FORMAT_NULL_OK / **/ +/*#define HASATTRIBUTE_NORETURN / **/ +/*#define HASATTRIBUTE_MALLOC / **/ +/*#define HASATTRIBUTE_NONNULL / **/ +/*#define HASATTRIBUTE_PURE / **/ +/*#define HASATTRIBUTE_UNUSED / **/ +/*#define HASATTRIBUTE_WARN_UNUSED_RESULT / **/ + +/* HAS_BACKTRACE: + * This symbol, if defined, indicates that the backtrace() routine is + * available to get a stack trace. The header must be + * included to use this routine. + */ +/*#define HAS_BACKTRACE / **/ + +/* CASTI32: + * This symbol is defined if the C compiler can cast negative + * or large floating point numbers to 32-bit ints. + */ +/*#define CASTI32 / **/ + +/* CASTNEGFLOAT: + * This symbol is defined if the C compiler can cast negative + * numbers to unsigned longs, ints and shorts. + */ +/* CASTFLAGS: + * This symbol contains flags that say what difficulties the compiler + * has casting odd floating values to unsigned long: + * 0 = ok + * 1 = couldn't cast < 0 + * 2 = couldn't cast >= 0x80000000 + * 4 = couldn't cast in argument expression list + */ +#define CASTNEGFLOAT /**/ +#define CASTFLAGS 0 /**/ + +/* VOID_CLOSEDIR: + * This symbol, if defined, indicates that the closedir() routine + * does not return a value. + */ +/*#define VOID_CLOSEDIR / **/ /* HASCONST: * This symbol, if defined, indicates that this C compiler knows about @@ -1119,7 +1145,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_crypt_r * is defined. */ -/*#define HAS_CRYPT_R /**/ +/*#define HAS_CRYPT_R / **/ #define CRYPT_R_PROTO 0 /**/ /* HAS_CSH: @@ -1128,7 +1154,7 @@ /* CSH: * This symbol, if defined, contains the full pathname of csh. */ -/*#define HAS_CSH /**/ +/*#define HAS_CSH / **/ #ifdef HAS_CSH #define CSH "" /**/ #endif @@ -1143,7 +1169,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_ctermid_r * is defined. */ -/*#define HAS_CTERMID_R /**/ +/*#define HAS_CTERMID_R / **/ #define CTERMID_R_PROTO 0 /**/ /* HAS_CTIME_R: @@ -1156,9 +1182,36 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_ctime_r * is defined. */ -/*#define HAS_CTIME_R /**/ +/*#define HAS_CTIME_R / **/ #define CTIME_R_PROTO 0 /**/ +/* HAS_DLADDR: + * This symbol, if defined, indicates that the dladdr() routine is + * available to query dynamic linker information for an address. + * The header must be included to use this routine. + */ +/*#define HAS_DLADDR / **/ + +/* 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_DRAND48_R: * This symbol, if defined, indicates that the drand48_r routine * is available to drand48 re-entrantly. @@ -1169,7 +1222,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_drand48_r * is defined. */ -/*#define HAS_DRAND48_R /**/ +/*#define HAS_DRAND48_R / **/ #define DRAND48_R_PROTO 0 /**/ /* HAS_DRAND48_PROTO: @@ -1178,19 +1231,19 @@ * to the program to supply one. A good guess is * extern double drand48(void); */ -/*#define HAS_DRAND48_PROTO /**/ +/*#define HAS_DRAND48_PROTO / **/ /* HAS_EACCESS: * This symbol, if defined, indicates that the eaccess routine is * available to do extended access checks. */ -/*#define HAS_EACCESS /**/ +/*#define HAS_EACCESS / **/ /* HAS_ENDGRENT: * This symbol, if defined, indicates that the getgrent routine is * available for finalizing sequential access of the group database. */ -/*#define HAS_ENDGRENT /**/ +/*#define HAS_ENDGRENT / **/ /* HAS_ENDGRENT_R: * This symbol, if defined, indicates that the endgrent_r routine @@ -1202,14 +1255,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_endgrent_r * is defined. */ -/*#define HAS_ENDGRENT_R /**/ +/*#define HAS_ENDGRENT_R / **/ #define ENDGRENT_R_PROTO 0 /**/ /* HAS_ENDHOSTENT: * This symbol, if defined, indicates that the endhostent() routine is * available to close whatever was being used for host queries. */ -/*#define HAS_ENDHOSTENT /**/ +/*#define HAS_ENDHOSTENT / **/ /* HAS_ENDHOSTENT_R: * This symbol, if defined, indicates that the endhostent_r routine @@ -1221,14 +1274,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_endhostent_r * is defined. */ -/*#define HAS_ENDHOSTENT_R /**/ +/*#define HAS_ENDHOSTENT_R / **/ #define ENDHOSTENT_R_PROTO 0 /**/ /* HAS_ENDNETENT: * This symbol, if defined, indicates that the endnetent() routine is * available to close whatever was being used for network queries. */ -/*#define HAS_ENDNETENT /**/ +/*#define HAS_ENDNETENT / **/ /* HAS_ENDNETENT_R: * This symbol, if defined, indicates that the endnetent_r routine @@ -1240,14 +1293,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_endnetent_r * is defined. */ -/*#define HAS_ENDNETENT_R /**/ +/*#define HAS_ENDNETENT_R / **/ #define ENDNETENT_R_PROTO 0 /**/ /* HAS_ENDPROTOENT: * This symbol, if defined, indicates that the endprotoent() routine is * available to close whatever was being used for protocol queries. */ -/*#define HAS_ENDPROTOENT /**/ +/*#define HAS_ENDPROTOENT / **/ /* HAS_ENDPROTOENT_R: * This symbol, if defined, indicates that the endprotoent_r routine @@ -1259,14 +1312,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_endprotoent_r * is defined. */ -/*#define HAS_ENDPROTOENT_R /**/ +/*#define HAS_ENDPROTOENT_R / **/ #define ENDPROTOENT_R_PROTO 0 /**/ /* HAS_ENDPWENT: * This symbol, if defined, indicates that the getgrent routine is * available for finalizing sequential access of the passwd database. */ -/*#define HAS_ENDPWENT /**/ +/*#define HAS_ENDPWENT / **/ /* HAS_ENDPWENT_R: * This symbol, if defined, indicates that the endpwent_r routine @@ -1278,14 +1331,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_endpwent_r * is defined. */ -/*#define HAS_ENDPWENT_R /**/ +/*#define HAS_ENDPWENT_R / **/ #define ENDPWENT_R_PROTO 0 /**/ /* HAS_ENDSERVENT: * This symbol, if defined, indicates that the endservent() routine is * available to close whatever was being used for service queries. */ -/*#define HAS_ENDSERVENT /**/ +/*#define HAS_ENDSERVENT / **/ /* HAS_ENDSERVENT_R: * This symbol, if defined, indicates that the endservent_r routine @@ -1297,20 +1350,43 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_endservent_r * is defined. */ -/*#define HAS_ENDSERVENT_R /**/ +/*#define HAS_ENDSERVENT_R / **/ #define ENDSERVENT_R_PROTO 0 /**/ +/* HAS_FD_SET: + * This symbol, when defined, indicates presence of the fd_set typedef + * in + */ +#define HAS_FD_SET /**/ + /* FLEXFILENAMES: * This symbol, if defined, indicates that the system supports filenames * longer than 14 characters. */ #define FLEXFILENAMES /**/ +/* Gconvert: + * This preprocessor macro is defined to convert a floating point + * number to a string without a trailing decimal point. This + * emulates the behavior of sprintf("%g"), but is sometimes much more + * efficient. If gconvert() is not available, but gcvt() drops the + * trailing decimal point, then gcvt() is used. If all else fails, + * a macro using sprintf("%g") is used. Arguments for the Gconvert + * macro are: value, number of digits, whether trailing zeros should + * be retained, and the output buffer. + * The usual values are: + * d_Gconvert='gconvert((x),(n),(t),(b))' + * d_Gconvert='gcvt((x),(n),(b))' + * d_Gconvert='sprintf((b),"%.*g",(n),(x))' + * The last two assume trailing zeros should not be kept. + */ +#define Gconvert(x,n,t,b) sprintf((b),"%.*g",(n),(x)) + /* HAS_GETGRENT: * This symbol, if defined, indicates that the getgrent routine is * available for sequential access of the group database. */ -/*#define HAS_GETGRENT /**/ +/*#define HAS_GETGRENT / **/ /* HAS_GETGRENT_R: * This symbol, if defined, indicates that the getgrent_r routine @@ -1322,7 +1398,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrent_r * is defined. */ -/*#define HAS_GETGRENT_R /**/ +/*#define HAS_GETGRENT_R / **/ #define GETGRENT_R_PROTO 0 /**/ /* HAS_GETGRGID_R: @@ -1335,7 +1411,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrgid_r * is defined. */ -/*#define HAS_GETGRGID_R /**/ +/*#define HAS_GETGRGID_R / **/ #define GETGRGID_R_PROTO 0 /**/ /* HAS_GETGRNAM_R: @@ -1348,7 +1424,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getgrnam_r * is defined. */ -/*#define HAS_GETGRNAM_R /**/ +/*#define HAS_GETGRNAM_R / **/ #define GETGRNAM_R_PROTO 0 /**/ /* HAS_GETHOSTBYADDR: @@ -1367,7 +1443,7 @@ * This symbol, if defined, indicates that the gethostent() routine is * available to look up host names in some data base or another. */ -/*#define HAS_GETHOSTENT /**/ +/*#define HAS_GETHOSTENT / **/ /* HAS_GETHOSTNAME: * This symbol, if defined, indicates that the C program may use the @@ -1393,7 +1469,7 @@ */ #define HAS_GETHOSTNAME /**/ #define HAS_UNAME /**/ -/*#define HAS_PHOSTNAME /**/ +/*#define HAS_PHOSTNAME / **/ #ifdef HAS_PHOSTNAME #define PHOSTNAME "" /* How to get the host name */ #endif @@ -1408,7 +1484,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostbyaddr_r * is defined. */ -/*#define HAS_GETHOSTBYADDR_R /**/ +/*#define HAS_GETHOSTBYADDR_R / **/ #define GETHOSTBYADDR_R_PROTO 0 /**/ /* HAS_GETHOSTBYNAME_R: @@ -1421,7 +1497,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostbyname_r * is defined. */ -/*#define HAS_GETHOSTBYNAME_R /**/ +/*#define HAS_GETHOSTBYNAME_R / **/ #define GETHOSTBYNAME_R_PROTO 0 /**/ /* HAS_GETHOSTENT_R: @@ -1434,7 +1510,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_gethostent_r * is defined. */ -/*#define HAS_GETHOSTENT_R /**/ +/*#define HAS_GETHOSTENT_R / **/ #define GETHOSTENT_R_PROTO 0 /**/ /* HAS_GETHOST_PROTOS: @@ -1455,26 +1531,26 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getlogin_r * is defined. */ -/*#define HAS_GETLOGIN_R /**/ +/*#define HAS_GETLOGIN_R / **/ #define GETLOGIN_R_PROTO 0 /**/ /* HAS_GETNETBYADDR: * This symbol, if defined, indicates that the getnetbyaddr() routine is * available to look up networks by their IP addresses. */ -/*#define HAS_GETNETBYADDR /**/ +/*#define HAS_GETNETBYADDR / **/ /* HAS_GETNETBYNAME: * This symbol, if defined, indicates that the getnetbyname() routine is * available to look up networks by their names. */ -/*#define HAS_GETNETBYNAME /**/ +/*#define HAS_GETNETBYNAME / **/ /* HAS_GETNETENT: * This symbol, if defined, indicates that the getnetent() routine is * available to look up network names in some data base or another. */ -/*#define HAS_GETNETENT /**/ +/*#define HAS_GETNETENT / **/ /* HAS_GETNETBYADDR_R: * This symbol, if defined, indicates that the getnetbyaddr_r routine @@ -1486,7 +1562,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetbyaddr_r * is defined. */ -/*#define HAS_GETNETBYADDR_R /**/ +/*#define HAS_GETNETBYADDR_R / **/ #define GETNETBYADDR_R_PROTO 0 /**/ /* HAS_GETNETBYNAME_R: @@ -1499,7 +1575,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetbyname_r * is defined. */ -/*#define HAS_GETNETBYNAME_R /**/ +/*#define HAS_GETNETBYNAME_R / **/ #define GETNETBYNAME_R_PROTO 0 /**/ /* HAS_GETNETENT_R: @@ -1512,7 +1588,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getnetent_r * is defined. */ -/*#define HAS_GETNETENT_R /**/ +/*#define HAS_GETNETENT_R / **/ #define GETNETENT_R_PROTO 0 /**/ /* HAS_GETNET_PROTOS: @@ -1521,13 +1597,20 @@ * getnetbyaddr(). Otherwise, it is up to the program to guess * them. See netdbtype.U for probing for various Netdb_xxx_t types. */ -/*#define HAS_GETNET_PROTOS /**/ +/*#define HAS_GETNET_PROTOS / **/ + +/* HAS_GETPAGESIZE: + * This symbol, if defined, indicates that the getpagesize system call + * is available to get system page size, which is the granularity of + * many memory management calls. + */ +/*#define HAS_GETPAGESIZE / **/ /* HAS_GETPROTOENT: * This symbol, if defined, indicates that the getprotoent() routine is * available to look up protocols in some data base or another. */ -/*#define HAS_GETPROTOENT /**/ +/*#define HAS_GETPROTOENT / **/ /* HAS_GETPGRP: * This symbol, if defined, indicates that the getpgrp routine is @@ -1537,8 +1620,8 @@ * This symbol, if defined, indicates that getpgrp needs one * arguments whereas USG one needs none. */ -/*#define HAS_GETPGRP /**/ -/*#define USE_BSD_GETPGRP /**/ +/*#define HAS_GETPGRP / **/ +/*#define USE_BSD_GETPGRP / **/ /* HAS_GETPROTOBYNAME: * This symbol, if defined, indicates that the getprotobyname() @@ -1561,7 +1644,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotobyname_r * is defined. */ -/*#define HAS_GETPROTOBYNAME_R /**/ +/*#define HAS_GETPROTOBYNAME_R / **/ #define GETPROTOBYNAME_R_PROTO 0 /**/ /* HAS_GETPROTOBYNUMBER_R: @@ -1574,7 +1657,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotobynumber_r * is defined. */ -/*#define HAS_GETPROTOBYNUMBER_R /**/ +/*#define HAS_GETPROTOBYNUMBER_R / **/ #define GETPROTOBYNUMBER_R_PROTO 0 /**/ /* HAS_GETPROTOENT_R: @@ -1587,7 +1670,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getprotoent_r * is defined. */ -/*#define HAS_GETPROTOENT_R /**/ +/*#define HAS_GETPROTOENT_R / **/ #define GETPROTOENT_R_PROTO 0 /**/ /* HAS_GETPROTO_PROTOS: @@ -1603,7 +1686,7 @@ * available for sequential access of the passwd database. * If this is not available, the older getpw() function may be available. */ -/*#define HAS_GETPWENT /**/ +/*#define HAS_GETPWENT / **/ /* HAS_GETPWENT_R: * This symbol, if defined, indicates that the getpwent_r routine @@ -1615,7 +1698,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwent_r * is defined. */ -/*#define HAS_GETPWENT_R /**/ +/*#define HAS_GETPWENT_R / **/ #define GETPWENT_R_PROTO 0 /**/ /* HAS_GETPWNAM_R: @@ -1628,7 +1711,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwnam_r * is defined. */ -/*#define HAS_GETPWNAM_R /**/ +/*#define HAS_GETPWNAM_R / **/ #define GETPWNAM_R_PROTO 0 /**/ /* HAS_GETPWUID_R: @@ -1641,14 +1724,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getpwuid_r * is defined. */ -/*#define HAS_GETPWUID_R /**/ +/*#define HAS_GETPWUID_R / **/ #define GETPWUID_R_PROTO 0 /**/ /* HAS_GETSERVENT: * This symbol, if defined, indicates that the getservent() routine is * available to look up network services in some data base or another. */ -/*#define HAS_GETSERVENT /**/ +/*#define HAS_GETSERVENT / **/ /* HAS_GETSERVBYNAME_R: * This symbol, if defined, indicates that the getservbyname_r routine @@ -1660,7 +1743,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservbyname_r * is defined. */ -/*#define HAS_GETSERVBYNAME_R /**/ +/*#define HAS_GETSERVBYNAME_R / **/ #define GETSERVBYNAME_R_PROTO 0 /**/ /* HAS_GETSERVBYPORT_R: @@ -1673,7 +1756,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservbyport_r * is defined. */ -/*#define HAS_GETSERVBYPORT_R /**/ +/*#define HAS_GETSERVBYPORT_R / **/ #define GETSERVBYPORT_R_PROTO 0 /**/ /* HAS_GETSERVENT_R: @@ -1686,7 +1769,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getservent_r * is defined. */ -/*#define HAS_GETSERVENT_R /**/ +/*#define HAS_GETSERVENT_R / **/ #define GETSERVENT_R_PROTO 0 /**/ /* HAS_GETSERV_PROTOS: @@ -1707,7 +1790,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_getspnam_r * is defined. */ -/*#define HAS_GETSPNAM_R /**/ +/*#define HAS_GETSPNAM_R / **/ #define GETSPNAM_R_PROTO 0 /**/ /* HAS_GETSERVBYNAME: @@ -1731,9 +1814,19 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_gmtime_r * is defined. */ -/*#define HAS_GMTIME_R /**/ +/*#define HAS_GMTIME_R / **/ #define GMTIME_R_PROTO 0 /**/ +/* HAS_GNULIBC: + * This symbol, if defined, indicates to the C program that + * the GNU C library is being used. A better check is to use + * the __GLIBC__ and __GLIBC_MINOR__ symbols supplied with glibc. + */ +/*#define HAS_GNULIBC / **/ +#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE) +# define _GNU_SOURCE +#endif + /* HAS_HTONL: * This symbol, if defined, indicates that the htonl() routine (and * friends htons() ntohl() ntohs()) are available to do network @@ -1759,6 +1852,19 @@ #define HAS_NTOHL /**/ #define HAS_NTOHS /**/ +/* HAS_ISASCII: + * This manifest constant lets the C program know that isascii + * is available. + */ +#define HAS_ISASCII /**/ + +/* HAS_LCHOWN: + * This symbol, if defined, indicates that the lchown routine is + * available to operate on a symbolic link (instead of following the + * link). + */ +/*#define HAS_LCHOWN / **/ + /* HAS_LOCALTIME_R: * This symbol, if defined, indicates that the localtime_r routine * is available to localtime re-entrantly. @@ -1769,7 +1875,7 @@ * changes using \undef{TZ} without explicitly calling tzset * impossible. This symbol makes us call tzset before localtime_r */ -/*#define LOCALTIME_R_NEEDS_TZSET /**/ +/*#define LOCALTIME_R_NEEDS_TZSET / **/ #ifdef LOCALTIME_R_NEEDS_TZSET #define L_R_TZSET tzset(), #else @@ -1782,7 +1888,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_localtime_r * is defined. */ -/*#define HAS_LOCALTIME_R /**/ +/*#define HAS_LOCALTIME_R / **/ #define LOCALTIME_R_PROTO 0 /**/ /* HAS_LONG_DOUBLE: @@ -1794,13 +1900,36 @@ * C preprocessor can make decisions based on it. It is only * defined if the system supports long doubles. */ +/* HAS_LDEXPL: + * This symbol, if defined, indicates that the ldexpl routine is + * available to shift a long double floating-point number + * by an integral power of 2. + */ +/* LONG_DOUBLEKIND: + * LONG_DOUBLEKIND will be one of + * LONG_DOUBLE_IS_DOUBLE + * LONG_DOUBLE_IS_IEEE_754_128_BIT_LITTLE_ENDIAN + * LONG_DOUBLE_IS_IEEE_754_128_BIT_BIG_ENDIAN + * LONG_DOUBLE_IS_X86_80_BIT_LITTLE_ENDIAN + * LONG_DOUBLE_IS_X86_80_BIT_BIG_ENDIAN + * LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LITTLE_ENDIAN + * LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BIG_ENDIAN + * LONG_DOUBLE_IS_UNKNOWN_FORMAT + * It is only defined if the system supports long doubles. + */ +/*#define HAS_LDEXPL / **/ #define HAS_LONG_DOUBLE /**/ #ifdef HAS_LONG_DOUBLE -# ifndef __GNUC__ -# define LONG_DOUBLESIZE 10 /**/ -# else -# define LONG_DOUBLESIZE 12 /**/ -# endif +#define LONG_DOUBLESIZE 8 /**/ +#define LONG_DOUBLEKIND 0 /**/ +#define LONG_DOUBLE_IS_DOUBLE 0 +#define LONG_DOUBLE_IS_IEEE_754_128_BIT_LITTLE_ENDIAN 1 +#define LONG_DOUBLE_IS_IEEE_754_128_BIT_BIG_ENDIAN 2 +#define LONG_DOUBLE_IS_X86_80_BIT_LITTLE_ENDIAN 3 +#define LONG_DOUBLE_IS_X86_80_BIT_BIG_ENDIAN 4 +#define LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LITTLE_ENDIAN 5 +#define LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BIG_ENDIAN 6 +#define LONG_DOUBLE_IS_UNKNOWN_FORMAT -1 #endif /* HAS_LONG_LONG: @@ -1811,7 +1940,7 @@ * C preprocessor can make decisions based on it. It is only * defined if the system supports long long. */ -/*#define HAS_LONG_LONG /**/ +/*#define HAS_LONG_LONG / **/ #ifdef HAS_LONG_LONG #define LONGLONGSIZE 8 /**/ #endif @@ -1835,7 +1964,7 @@ * available to exclusively create and open a uniquely named * temporary file. */ -/*#define HAS_MKSTEMP /**/ +/*#define HAS_MKSTEMP / **/ /* HAS_MMAP: * This symbol, if defined, indicates that the mmap system call is @@ -1846,14 +1975,20 @@ * (and simultaneously the type of the first argument). * Usually set to 'void *' or 'caddr_t'. */ -/*#define HAS_MMAP /**/ +/*#define HAS_MMAP / **/ #define Mmap_t void * /**/ /* HAS_MSG: * This symbol, if defined, indicates that the entire msg*(2) library is * supported (IPC mechanism based on message queues). */ -/*#define HAS_MSG /**/ +/*#define HAS_MSG / **/ + +/* HAS_OPEN3: + * This manifest constant lets the C program know that the three + * argument form of open(2) is available. + */ +/*#define HAS_OPEN3 / **/ /* OLD_PTHREAD_CREATE_JOINABLE: * This symbol, if defined, indicates how to create pthread @@ -1863,13 +1998,13 @@ * If defined, known values are PTHREAD_CREATE_UNDETACHED * and __UNDETACHED. */ -/*#define OLD_PTHREAD_CREATE_JOINABLE /**/ +/*#define OLD_PTHREAD_CREATE_JOINABLE / **/ /* HAS_PTHREAD_ATFORK: * This symbol, if defined, indicates that the pthread_atfork routine * is available to setup fork handlers. */ -/*#define HAS_PTHREAD_ATFORK /**/ +/*#define HAS_PTHREAD_ATFORK / **/ /* HAS_PTHREAD_YIELD: * This symbol, if defined, indicates that the pthread_yield @@ -1886,9 +2021,9 @@ * routine is available to yield the execution of the current * thread. sched_yield is preferable to pthread_yield. */ -/*#define HAS_PTHREAD_YIELD /**/ +/*#define HAS_PTHREAD_YIELD / **/ #define SCHED_YIELD /**/ -/*#define HAS_SCHED_YIELD /**/ +/*#define HAS_SCHED_YIELD / **/ /* HAS_RANDOM_R: * This symbol, if defined, indicates that the random_r routine @@ -1900,7 +2035,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_random_r * is defined. */ -/*#define HAS_RANDOM_R /**/ +/*#define HAS_RANDOM_R / **/ #define RANDOM_R_PROTO 0 /**/ /* HAS_READDIR64_R: @@ -1913,7 +2048,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_readdir64_r * is defined. */ -/*#define HAS_READDIR64_R /**/ +/*#define HAS_READDIR64_R / **/ #define READDIR64_R_PROTO 0 /**/ /* HAS_READDIR_R: @@ -1926,22 +2061,45 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_readdir_r * is defined. */ -/*#define HAS_READDIR_R /**/ +/*#define HAS_READDIR_R / **/ #define READDIR_R_PROTO 0 /**/ -/* HAS_SEM: - * This symbol, if defined, indicates that the entire sem*(2) library is - * supported. - */ -/*#define HAS_SEM /**/ - -/* HAS_SETGRENT: - * This symbol, if defined, indicates that the setgrent routine is - * available for initializing sequential access of the group database. +/* HAS_SAFE_BCOPY: + * This symbol, if defined, indicates that the bcopy routine is available + * to copy potentially overlapping memory blocks. Normally, you should + * probably use memmove() or memcpy(). If neither is defined, roll your + * own version. */ -/*#define HAS_SETGRENT /**/ +/*#define HAS_SAFE_BCOPY / **/ -/* HAS_SETGRENT_R: +/* HAS_SAFE_MEMCPY: + * This symbol, if defined, indicates that the memcpy routine is available + * 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 / **/ + +/* HAS_SANE_MEMCMP: + * This symbol, if defined, indicates that the memcmp routine is available + * and can be used to compare relative magnitudes of chars with their high + * bits set. If it is not defined, roll your own version. + */ +#define HAS_SANE_MEMCMP /**/ + +/* HAS_SEM: + * This symbol, if defined, indicates that the entire sem*(2) library is + * supported. + */ +/*#define HAS_SEM / **/ + +/* HAS_SETGRENT: + * This symbol, if defined, indicates that the setgrent routine is + * available for initializing sequential access of the group database. + */ +/*#define HAS_SETGRENT / **/ + +/* HAS_SETGRENT_R: * This symbol, if defined, indicates that the setgrent_r routine * is available to setgrent re-entrantly. */ @@ -1951,14 +2109,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_setgrent_r * is defined. */ -/*#define HAS_SETGRENT_R /**/ +/*#define HAS_SETGRENT_R / **/ #define SETGRENT_R_PROTO 0 /**/ /* HAS_SETHOSTENT: * This symbol, if defined, indicates that the sethostent() routine is * available. */ -/*#define HAS_SETHOSTENT /**/ +/*#define HAS_SETHOSTENT / **/ /* HAS_SETHOSTENT_R: * This symbol, if defined, indicates that the sethostent_r routine @@ -1970,7 +2128,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_sethostent_r * is defined. */ -/*#define HAS_SETHOSTENT_R /**/ +/*#define HAS_SETHOSTENT_R / **/ #define SETHOSTENT_R_PROTO 0 /**/ /* HAS_SETLOCALE_R: @@ -1983,14 +2141,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_setlocale_r * is defined. */ -/*#define HAS_SETLOCALE_R /**/ +/*#define HAS_SETLOCALE_R / **/ #define SETLOCALE_R_PROTO 0 /**/ /* HAS_SETNETENT: * This symbol, if defined, indicates that the setnetent() routine is * available. */ -/*#define HAS_SETNETENT /**/ +/*#define HAS_SETNETENT / **/ /* HAS_SETNETENT_R: * This symbol, if defined, indicates that the setnetent_r routine @@ -2002,14 +2160,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_setnetent_r * is defined. */ -/*#define HAS_SETNETENT_R /**/ +/*#define HAS_SETNETENT_R / **/ #define SETNETENT_R_PROTO 0 /**/ /* HAS_SETPROTOENT: * This symbol, if defined, indicates that the setprotoent() routine is * available. */ -/*#define HAS_SETPROTOENT /**/ +/*#define HAS_SETPROTOENT / **/ /* HAS_SETPGRP: * This symbol, if defined, indicates that the setpgrp routine is @@ -2020,8 +2178,8 @@ * arguments whereas USG one needs none. See also HAS_SETPGID * for a POSIX interface. */ -/*#define HAS_SETPGRP /**/ -/*#define USE_BSD_SETPGRP /**/ +/*#define HAS_SETPGRP / **/ +/*#define USE_BSD_SETPGRP / **/ /* HAS_SETPROTOENT_R: * This symbol, if defined, indicates that the setprotoent_r routine @@ -2033,14 +2191,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_setprotoent_r * is defined. */ -/*#define HAS_SETPROTOENT_R /**/ +/*#define HAS_SETPROTOENT_R / **/ #define SETPROTOENT_R_PROTO 0 /**/ /* HAS_SETPWENT: * This symbol, if defined, indicates that the setpwent routine is * available for initializing sequential access of the passwd database. */ -/*#define HAS_SETPWENT /**/ +/*#define HAS_SETPWENT / **/ /* HAS_SETPWENT_R: * This symbol, if defined, indicates that the setpwent_r routine @@ -2052,14 +2210,14 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_setpwent_r * is defined. */ -/*#define HAS_SETPWENT_R /**/ +/*#define HAS_SETPWENT_R / **/ #define SETPWENT_R_PROTO 0 /**/ /* HAS_SETSERVENT: * This symbol, if defined, indicates that the setservent() routine is * available. */ -/*#define HAS_SETSERVENT /**/ +/*#define HAS_SETSERVENT / **/ /* HAS_SETSERVENT_R: * This symbol, if defined, indicates that the setservent_r routine @@ -2071,7 +2229,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_setservent_r * is defined. */ -/*#define HAS_SETSERVENT_R /**/ +/*#define HAS_SETSERVENT_R / **/ #define SETSERVENT_R_PROTO 0 /**/ /* HAS_SETVBUF: @@ -2085,7 +2243,7 @@ * This symbol, if defined, indicates that the entire shm*(2) library is * supported. */ -/*#define HAS_SHM /**/ +/*#define HAS_SHM / **/ /* Shmat_t: * This symbol holds the return type of the shmat() system call. @@ -2099,7 +2257,44 @@ * when HAS_SHMAT_PROTOTYPE is not defined to avoid conflicting defs. */ #define Shmat_t void * /**/ -/*#define HAS_SHMAT_PROTOTYPE /**/ +/*#define HAS_SHMAT_PROTOTYPE / **/ + +/* HAS_SIGACTION: + * This symbol, if defined, indicates that Vr4's sigaction() routine + * is available. + */ +/*#define 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. + */ +/* Sigsetjmp: + * This macro is used in the same way as sigsetjmp(), but will invoke + * traditional setjmp() if sigsetjmp isn't available. + * See HAS_SIGSETJMP. + */ +/* Siglongjmp: + * This macro is used in the same way as siglongjmp(), but will invoke + * traditional longjmp() if siglongjmp isn't available. + * See HAS_SIGSETJMP. + */ +/*#define HAS_SIGSETJMP / **/ +#ifdef HAS_SIGSETJMP +#define Sigjmp_buf sigjmp_buf +#define Sigsetjmp(buf,save_mask) sigsetjmp((buf),(save_mask)) +#define Siglongjmp(buf,retval) siglongjmp((buf),(retval)) +#else +#define Sigjmp_buf jmp_buf +#define Sigsetjmp(buf,save_mask) setjmp((buf)) +#define Siglongjmp(buf,retval) longjmp((buf),(retval)) +#endif /* HAS_SOCKET: * This symbol, if defined, indicates that the BSD socket interface is @@ -2109,44 +2304,44 @@ * This symbol, if defined, indicates that the BSD socketpair() call is * supported. */ -/* 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_SOCKADDR_SA_LEN: + * This symbol, if defined, indicates that the struct sockaddr + * structure has a member called sa_len, indicating the length of + * the structure. */ -/* 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_SOCKADDR_IN6: + * This symbol, if defined, indicates the availability of + * struct sockaddr_in6; */ -/* 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_SIN6_SCOPE_ID: + * This symbol, if defined, indicates that the struct sockaddr_in6 + * structure has a member called sin6_scope_id. */ -/* 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_IP_MREQ: + * This symbol, if defined, indicates the availability of + * struct ip_mreq; */ -/* 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_IP_MREQ_SOURCE: + * This symbol, if defined, indicates the availability of + * struct ip_mreq_source; */ -/* 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_IPV6_MREQ: + * This symbol, if defined, indicates the availability of + * struct ipv6_mreq; + */ +/* HAS_IPV6_MREQ_SOURCE: + * This symbol, if defined, indicates the availability of + * struct ipv6_mreq_source; */ #define HAS_SOCKET /**/ -/*#define HAS_SOCKETPAIR /**/ -/*#define HAS_MSG_CTRUNC /**/ -/*#define HAS_MSG_DONTROUTE /**/ -/*#define HAS_MSG_OOB /**/ -/*#define HAS_MSG_PEEK /**/ -/*#define HAS_MSG_PROXY /**/ -/*#define HAS_SCM_RIGHTS /**/ +/*#define HAS_SOCKETPAIR / **/ +/*#define HAS_SOCKADDR_SA_LEN / **/ +/*#define HAS_SOCKADDR_IN6 / **/ +#define HAS_SIN6_SCOPE_ID /**/ +/*#define HAS_IP_MREQ / **/ +/*#define HAS_IP_MREQ_SOURCE / **/ +/*#define HAS_IPV6_MREQ / **/ +/*#define HAS_IPV6_MREQ_SOURCE / **/ /* HAS_SRAND48_R: * This symbol, if defined, indicates that the srand48_r routine @@ -2158,7 +2353,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_srand48_r * is defined. */ -/*#define HAS_SRAND48_R /**/ +/*#define HAS_SRAND48_R / **/ #define SRAND48_R_PROTO 0 /**/ /* HAS_SRANDOM_R: @@ -2171,7 +2366,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_srandom_r * is defined. */ -/*#define HAS_SRANDOM_R /**/ +/*#define HAS_SRANDOM_R / **/ #define SRANDOM_R_PROTO 0 /**/ /* USE_STAT_BLOCKS: @@ -2179,7 +2374,98 @@ * st_blksize and st_blocks. */ #ifndef USE_STAT_BLOCKS -/*#define USE_STAT_BLOCKS /**/ +/*#define USE_STAT_BLOCKS / **/ +#endif + +/* HAS_STATIC_INLINE: + * This symbol, if defined, indicates that the C compiler supports + * C99-style static inline. That is, the function can't be called + * from another translation unit. + */ +/* PERL_STATIC_INLINE: + * This symbol gives the best-guess incantation to use for static + * inline functions. If HAS_STATIC_INLINE is defined, this will + * give C99-style inline. If HAS_STATIC_INLINE is not defined, + * this will give a plain 'static'. It will always be defined + * to something that gives static linkage. + * Possibilities include + * static inline (c99) + * static __inline__ (gcc -ansi) + * static __inline (MSVC) + * static _inline (older MSVC) + * static (c89 compilers) + */ +#define HAS_STATIC_INLINE /**/ +#define PERL_STATIC_INLINE static __inline /**/ + +/* USE_STDIO_PTR: + * This symbol is defined if the _ptr and _cnt fields (or similar) + * of the stdio FILE structure can be used to access the stdio buffer + * for a file handle. If this is defined, then the FILE_ptr(fp) + * and FILE_cnt(fp) macros will also be defined and should be used + * to access these fields. + */ +/* FILE_ptr: + * This macro is used to access the _ptr field (or equivalent) of the + * FILE structure pointed to by its argument. This macro will always be + * defined if USE_STDIO_PTR is defined. + */ +/* STDIO_PTR_LVALUE: + * This symbol is defined if the FILE_ptr macro can be used as an + * lvalue. + */ +/* FILE_cnt: + * This macro is used to access the _cnt field (or equivalent) of the + * FILE structure pointed to by its argument. This macro will always be + * defined if USE_STDIO_PTR is defined. + */ +/* STDIO_CNT_LVALUE: + * This symbol is defined if the FILE_cnt macro can be used as an + * lvalue. + */ +/* STDIO_PTR_LVAL_SETS_CNT: + * This symbol is defined if using the FILE_ptr macro as an lvalue + * to increase the pointer by n has the side effect of decreasing the + * value of File_cnt(fp) by n. + */ +/* STDIO_PTR_LVAL_NOCHANGE_CNT: + * This symbol is defined if using the FILE_ptr macro as an lvalue + * to increase the pointer by n leaves File_cnt(fp) unchanged. + */ +#define USE_STDIO_PTR /**/ +#ifdef USE_STDIO_PTR +#define FILE_ptr(fp) ((fp)->_ptr) +#define STDIO_PTR_LVALUE /**/ +#define FILE_cnt(fp) ((fp)->_cnt) +#define STDIO_CNT_LVALUE /**/ +/*#define STDIO_PTR_LVAL_SETS_CNT / **/ +#define STDIO_PTR_LVAL_NOCHANGE_CNT /**/ +#endif + +/* USE_STDIO_BASE: + * This symbol is defined if the _base field (or similar) of the + * stdio FILE structure can be used to access the stdio buffer for + * a file handle. If this is defined, then the FILE_base(fp) macro + * will also be defined and should be used to access this field. + * Also, the FILE_bufsiz(fp) macro will be defined and should be used + * to determine the number of bytes in the buffer. USE_STDIO_BASE + * will never be defined unless USE_STDIO_PTR is. + */ +/* FILE_base: + * This macro is used to access the _base field (or equivalent) of the + * FILE structure pointed to by its argument. This macro will always be + * defined if USE_STDIO_BASE is defined. + */ +/* FILE_bufsiz: + * This macro is used to determine the number of bytes in the I/O + * buffer pointed to by _base field (or equivalent) of the FILE + * structure pointed to its argument. This macro will always be defined + * if USE_STDIO_BASE is defined. + */ +#define USE_STDIO_BASE /**/ +#ifdef USE_STDIO_BASE +#define FILE_base(fp) ((fp)->_base) +#define FILE_bufsiz(fp) ((fp)->_cnt + (fp)->_ptr - (fp)->_base) #endif /* USE_STRUCT_COPY: @@ -2218,7 +2504,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_strerror_r * is defined. */ -/*#define HAS_STRERROR_R /**/ +/*#define HAS_STRERROR_R / **/ #define STRERROR_R_PROTO 0 /**/ /* HAS_STRTOUL: @@ -2255,7 +2541,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_tmpnam_r * is defined. */ -/*#define HAS_TMPNAM_R /**/ +/*#define HAS_TMPNAM_R / **/ #define TMPNAM_R_PROTO 0 /**/ /* HAS_TTYNAME_R: @@ -2268,7 +2554,7 @@ * REENTRANT_PROTO_T_ABC macros of reentr.h if d_ttyname_r * is defined. */ -/*#define HAS_TTYNAME_R /**/ +/*#define HAS_TTYNAME_R / **/ #define TTYNAME_R_PROTO 0 /**/ /* HAS_UNION_SEMUN: @@ -2290,19 +2576,19 @@ * used for semctl IPC_STAT. */ #define HAS_UNION_SEMUN /**/ -/*#define USE_SEMCTL_SEMUN /**/ -/*#define USE_SEMCTL_SEMID_DS /**/ +/*#define USE_SEMCTL_SEMUN / **/ +/*#define USE_SEMCTL_SEMID_DS / **/ /* HAS_VFORK: * This symbol, if defined, indicates that vfork() exists. */ -/*#define HAS_VFORK /**/ +/*#define HAS_VFORK / **/ /* HAS_PSEUDOFORK: * This symbol, if defined, indicates that an emulation of the * fork routine is available. */ -/*#define HAS_PSEUDOFORK /**/ +/*#define HAS_PSEUDOFORK / **/ /* Signal_t: * This symbol's value is either "void" or "int", corresponding to the @@ -2321,6 +2607,72 @@ #define volatile #endif +/* HAS_VPRINTF: + * This symbol, if defined, indicates that the vprintf routine is available + * to printf with a pointer to an argument list. If unavailable, you + * may need to write your own, probably in terms of _doprnt(). + */ +/* USE_CHAR_VSPRINTF: + * This symbol is defined if this system has vsprintf() returning type + * (char*). The trend seems to be to declare it as "int vsprintf()". It + * is up to the package author to declare vsprintf correctly based on the + * symbol. + */ +#define HAS_VPRINTF /**/ +/*#define USE_CHAR_VSPRINTF / **/ + +/* DOUBLESIZE: + * This symbol contains the size of a double, so that the C preprocessor + * can make decisions based on it. + */ +#define DOUBLESIZE 8 /**/ + +/* DOUBLEINFBYTES: + * This symbol, if defined, is a comma-separated list of + * hexadecimal bytes for the double precision infinity. + */ +/* DOUBLENANBYTES: + * This symbol, if defined, is a comma-separated list of + * hexadecimal bytes (0xHH) for the double precision not-a-number. + */ +/* LONGDBLINFBYTES: + * This symbol, if defined, is a comma-separated list of + * hexadecimal bytes for the long double precision infinity. + */ +/* LONGDBLNANBYTES: + * This symbol, if defined, is a comma-separated list of + * hexadecimal bytes (0xHH) for the long double precision not-a-number. + */ +#define DOUBLEINFBYTES 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x7f /**/ +#define DOUBLENANBYTES 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x7f /**/ +#define LONGDBLINFBYTES 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x7f /**/ +#define LONGDBLNANBYTES 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x7f /**/ + +/* DOUBLEMANTBITS: + * This symbol, if defined, tells how many mantissa bits + * there are in double precision floating point format. + * Note that this is usually DBL_MANT_DIG minus one, since + * with the standard IEEE 754 formats DBL_MANT_DIG includes + * the implicit bit, which doesn't really exist. + */ +#define DOUBLEMANTBITS 52 + +/* LONGDBLMANTBITS: + * This symbol, if defined, tells how many mantissa bits + * there are in long double precision floating point format. + * Note that this can be LDBL_MANT_DIG minus one, + * since LDBL_MANT_DIG can include the IEEE 754 implicit bit. + * The common x86-style 80-bit long double does not have + * an implicit bit. + */ +#define LONGDBLMANTBITS 52 + +/* EBCDIC: + * This symbol, if defined, indicates that this system uses + * EBCDIC encoding. + */ +/*#define EBCDIC / **/ + /* Fpos_t: * This symbol holds the type used to declare file positions in libc. * It can be fpos_t, long, uint, etc... It may be necessary to include @@ -2334,7 +2686,7 @@ #define Gid_t_f "ld" /**/ /* Gid_t_sign: - * This symbol holds the signedess of a Gid_t. + * This symbol holds the signedness of a Gid_t. * 1 for unsigned, -1 for signed. */ #define Gid_t_sign -1 /* GID sign */ @@ -2373,6 +2725,12 @@ #define DIRNAMLEN /**/ #define Direntry_t struct direct +/* I_EXECINFO: + * This symbol, if defined, indicates to the C program that it should + * include for backtrace() support. + */ +/*#define I_EXECINFO / **/ + /* I_GRP: * This symbol, if defined, indicates to the C program that it should * include . @@ -2381,14 +2739,14 @@ * This symbol, if defined, indicates to the C program that struct group * in contains gr_passwd. */ -/*#define I_GRP /**/ -/*#define GRPASSWD /**/ +/*#define I_GRP / **/ +/*#define GRPASSWD / **/ /* I_MACH_CTHREADS: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_MACH_CTHREADS /**/ +/*#define I_MACH_CTHREADS / **/ /* I_NDBM: * This symbol, if defined, indicates that exists and should @@ -2404,27 +2762,48 @@ * be included. This is the location of the ndbm.h compatibility file * in Debian 4.0. */ -/*#define I_NDBM /**/ -/*#define I_GDBMNDBM /**/ -/*#define I_GDBM_NDBM /**/ +/* NDBM_H_USES_PROTOTYPES: + * This symbol, if defined, indicates that uses real ANSI C + * prototypes instead of K&R style function declarations without any + * parameter information. While ANSI C prototypes are supported in C++, + * K&R style function declarations will yield errors. + */ +/* GDBMNDBM_H_USES_PROTOTYPES: + * This symbol, if defined, indicates that uses real ANSI C + * prototypes instead of K&R style function declarations without any + * parameter information. While ANSI C prototypes are supported in C++, + * K&R style function declarations will yield errors. + */ +/* GDBM_NDBM_H_USES_PROTOTYPES: + * This symbol, if defined, indicates that uses real ANSI C + * prototypes instead of K&R style function declarations without any + * parameter information. While ANSI C prototypes are supported in C++, + * K&R style function declarations will yield errors. + */ +/*#define I_NDBM / **/ +/*#define I_GDBMNDBM / **/ +/*#define I_GDBM_NDBM / **/ +/*#define NDBM_H_USES_PROTOTYPES / **/ +/*#define GDBMNDBM_H_USES_PROTOTYPES / **/ +/*#define GDBM_NDBM_H_USES_PROTOTYPES / **/ /* I_NETDB: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_NETDB /**/ +/*#define I_NETDB / **/ /* I_NET_ERRNO: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_NET_ERRNO /**/ +/*#define I_NET_ERRNO / **/ /* I_PTHREAD: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_PTHREAD /**/ +/*#define I_PTHREAD / **/ /* I_PWD: * This symbol, if defined, indicates to the C program that it should @@ -2462,33 +2841,79 @@ * This symbol, if defined, indicates to the C program that struct passwd * contains pw_passwd. */ -/*#define I_PWD /**/ -/*#define PWQUOTA /**/ -/*#define PWAGE /**/ -/*#define PWCHANGE /**/ -/*#define PWCLASS /**/ -/*#define PWEXPIRE /**/ -/*#define PWCOMMENT /**/ -/*#define PWGECOS /**/ -/*#define PWPASSWD /**/ +/*#define I_PWD / **/ +/*#define PWQUOTA / **/ +/*#define PWAGE / **/ +/*#define PWCHANGE / **/ +/*#define PWCLASS / **/ +/*#define PWEXPIRE / **/ +/*#define PWCOMMENT / **/ +/*#define PWGECOS / **/ +/*#define PWPASSWD / **/ /* I_SYS_ACCESS: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_SYS_ACCESS /**/ +/*#define I_SYS_ACCESS / **/ /* I_SYS_SECURITY: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_SYS_SECURITY /**/ +/*#define I_SYS_SECURITY / **/ /* I_SYSUIO: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_SYSUIO /**/ +/*#define I_SYSUIO / **/ + +/* I_TERMIO: + * This symbol, if defined, indicates that the program should include + * rather than . There are also differences in + * the ioctl() calls that depend on the value of this symbol. + */ +/* I_TERMIOS: + * This symbol, if defined, indicates that the program should include + * the POSIX termios.h rather than sgtty.h or termio.h. + * There are also differences in the ioctl() calls that depend on the + * value of this symbol. + */ +/* I_SGTTY: + * This symbol, if defined, indicates that the program should include + * rather than . There are also differences in + * the ioctl() calls that depend on the value of this symbol. + */ +/*#define I_TERMIO / **/ +/*#define I_TERMIOS / **/ +/*#define I_SGTTY / **/ + +/* I_TIME: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +/* I_SYS_TIME: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +/* I_SYS_TIME_KERNEL: + * This symbol, if defined, indicates to the C program that it should + * include with KERNEL defined. + */ +/* HAS_TM_TM_ZONE: + * This symbol, if defined, indicates to the C program that + * the struct tm has a tm_zone field. + */ +/* HAS_TM_TM_GMTOFF: + * This symbol, if defined, indicates to the C program that + * the struct tm has a tm_gmtoff field. + */ +#define I_TIME /**/ +/*#define I_SYS_TIME / **/ +/*#define I_SYS_TIME_KERNEL / **/ +/*#define HAS_TM_TM_ZONE / **/ +/*#define HAS_TM_TM_GMTOFF / **/ /* I_STDARG: * This symbol, if defined, indicates that exists and should @@ -2499,7 +2924,7 @@ * include . */ #define I_STDARG /**/ -/*#define I_VARARGS /**/ +/*#define I_VARARGS / **/ /* PERL_INC_VERSION_LIST: * This variable specifies the list of subdirectories in over @@ -2508,13 +2933,13 @@ * for a C initialization string. See the inc_version_list entry * in Porting/Glossary for more details. */ -/*#define PERL_INC_VERSION_LIST 0 /**/ +/*#define PERL_INC_VERSION_LIST 0 / **/ /* INSTALL_USR_BIN_PERL: * This symbol, if defined, indicates that Perl is to be installed * also as /usr/bin/perl. */ -/*#define INSTALL_USR_BIN_PERL /**/ +/*#define INSTALL_USR_BIN_PERL / **/ /* Off_t: * This symbol holds the type used to declare offsets in the kernel. @@ -2549,7 +2974,7 @@ /* MYMALLOC: * This symbol, if defined, indicates that we're using our own malloc. */ -/*#define MYMALLOC /**/ +/*#define MYMALLOC / **/ /* Mode_t: * This symbol holds the type used to declare file modes @@ -2559,6 +2984,33 @@ */ #define Mode_t mode_t /* file mode parameter for system calls */ +/* 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 + * back, i.e. you cannot turn it blocking again this way. If you wish to + * alternatively switch between blocking and non-blocking, use the + * ioctl(FIOSNBIO) call instead, but that is not supported by all devices. + */ +/* VAL_EAGAIN: + * This symbol holds the errno error code set by read() when no data was + * present on the non-blocking file descriptor. + */ +/* RD_NODATA: + * This symbol holds the return code from read() when no data is present + * on the non-blocking file descriptor. Be careful! If EOF_NONBLOCK is + * not defined, then you can't distinguish between no data and EOF by + * issuing a read(). You'll have to find another way to tell for sure! + */ +/* EOF_NONBLOCK: + * This symbol, if defined, indicates to the C program that a read() on + * a non-blocking file descriptor will return 0 on EOF, and not the value + * held in RD_NODATA (-1 usually, in that case!). + */ +#define VAL_O_NONBLOCK O_NONBLOCK +#define VAL_EAGAIN EAGAIN +#define RD_NODATA -1 +#define EOF_NONBLOCK + /* Netdb_host_t: * This symbol holds the type used for the 1st argument * to gethostbyaddr(). @@ -2588,7 +3040,7 @@ * and architecture-specific directories. See PERL_INC_VERSION_LIST * for more details. */ -/*#define PERL_OTHERLIBDIRS "" /**/ +/*#define PERL_OTHERLIBDIRS "" / **/ /* Pid_t: * This symbol holds the type used to declare process ids in the kernel. @@ -2608,7 +3060,7 @@ * in programs that are not prepared to deal with ~ expansion at run-time. */ #define PRIVLIB "c:\\perl\\lib" /**/ -#define PRIVLIB_EXP (win32_get_privlib("5.11.0")) /**/ +#define PRIVLIB_EXP (PerlEnv_lib_path(PERL_VERSION_STRING, NULL)) /**/ /* CAN_PROTOTYPE: * If defined, this macro indicates that the C compiler can handle @@ -2628,25 +3080,76 @@ #define _(args) () #endif -/* Select_fd_set_t: - * This symbol holds the type used for the 2nd, 3rd, and 4th - * arguments to select. Usually, this is 'fd_set *', if HAS_FD_SET - * is defined, and 'int *' otherwise. This is only useful if you - * have select(), of course. +/* PTRSIZE: + * This symbol contains the size of a pointer, so that the C preprocessor + * can make decisions based on it. It will be sizeof(void *) if + * the compiler supports (void *); otherwise it will be + * sizeof(char *). */ -#define Select_fd_set_t Perl_fd_set * /**/ +#define PTRSIZE 4 /**/ -/* SH_PATH: - * This symbol contains the full pathname to the shell used on this - * on this system to execute Bourne shell scripts. Usually, this will be - * /bin/sh, though it's possible that some systems will have /bin/ksh, - * /bin/pdksh, /bin/ash, /bin/bash, or even something such as - * D:/bin/sh.exe. +/* HAS_QUAD: + * This symbol, if defined, tells that there's a 64-bit integer type, + * Quad_t, and its unsigned counterpart, Uquad_t. QUADKIND will be one + * of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, QUAD_IS_INT64_T, + * or QUAD_IS___INT64. */ -#define SH_PATH "cmd /x /c" /**/ - -/* SIG_NAME: - * This symbol contains a list of signal names in order of +#define HAS_QUAD /**/ +#ifdef HAS_QUAD +# define Quad_t __int64 /**/ +# define Uquad_t unsigned __int64 /**/ +# define QUADKIND 5 /**/ +# define QUAD_IS_INT 1 +# define QUAD_IS_LONG 2 +# define QUAD_IS_LONG_LONG 3 +# define QUAD_IS_INT64_T 4 +# define QUAD_IS___INT64 5 +#endif + +/* 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 its 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 indicates how many bits are produced by the + * function used to generate normalized random numbers. + * Values include 15, 16, 31, and 48. + */ +#define Drand01() Perl_drand48() /**/ +#define Rand_seed_t U32 /**/ +#define seedDrand01(x) Perl_drand48_init((Rand_seed_t)x) /**/ +#define RANDBITS 48 /**/ + +/* Select_fd_set_t: + * This symbol holds the type used for the 2nd, 3rd, and 4th + * arguments to select. Usually, this is 'fd_set *', if HAS_FD_SET + * is defined, and 'int *' otherwise. This is only useful if you + * have select(), of course. + */ +#define Select_fd_set_t Perl_fd_set * /**/ + +/* SH_PATH: + * This symbol contains the full pathname to the shell used on this + * on this system to execute Bourne shell scripts. Usually, this will be + * /bin/sh, though it's possible that some systems will have /bin/ksh, + * /bin/pdksh, /bin/ash, /bin/bash, or even something such as + * D:/bin/sh.exe. + */ +#define SH_PATH "cmd /x /c" /**/ + +/* SIG_NAME: + * This symbol contains a list of signal names in order of * signal number. This is intended * to be used as a static array initialization, like this: * char *sig_name[] = { SIG_NAME }; @@ -2701,7 +3204,7 @@ * in programs that are not prepared to deal with ~ expansion at run-time. */ #define SITEARCH "c:\\perl\\site\\lib" /**/ -/*#define SITEARCH_EXP "" /**/ +/*#define SITEARCH_EXP "" / **/ /* SITELIB: * This symbol contains the name of the private library for this package. @@ -2715,530 +3218,36 @@ * or equivalent. See INSTALL for details. */ /* 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. - */ -/* SITELIB_STEM: - * This define is SITELIB_EXP with any trailing version-specific component - * removed. The elements in inc_version_list (inc_version_list.U) can - * be tacked onto this variable to generate a list of directories to search. - */ -#define SITELIB "c:\\perl\\site\\lib" /**/ -#define SITELIB_EXP (win32_get_sitelib("5.11.0")) /**/ -#define SITELIB_STEM "" /**/ - -/* Size_t_size: - * This symbol holds the size of a Size_t in bytes. - */ -#define Size_t_size 4 /**/ - -/* Size_t: - * This symbol holds the type used to declare length parameters - * for string functions. It is usually size_t, but may be - * unsigned long, int, etc. It may be necessary to include - * to get any typedef'ed information. - */ -#define Size_t size_t /* length paramater for string functions */ - -/* Sock_size_t: - * This symbol holds the type used for the size argument of - * various socket calls (just the base type, not the pointer-to). - */ -#define Sock_size_t int /**/ - -/* Uid_t_f: - * This symbol defines the format string used for printing a Uid_t. - */ -#define Uid_t_f "ld" /**/ - -/* Uid_t_sign: - * This symbol holds the signedess of a Uid_t. - * 1 for unsigned, -1 for signed. - */ -#define Uid_t_sign -1 /* UID sign */ - -/* Uid_t_size: - * This symbol holds the size of a Uid_t in bytes. - */ -#define Uid_t_size 4 /* UID size */ - -/* Uid_t: - * This symbol holds the type used to declare user ids in the kernel. - * It can be int, ushort, uid_t, etc... It may be necessary to include - * to get any typedef'ed information. - */ -#define Uid_t uid_t /* UID type */ - -/* USE_ITHREADS: - * This symbol, if defined, indicates that Perl should be built to - * use the interpreter-based threading implementation. - */ -/* USE_5005THREADS: - * This symbol, if defined, indicates that Perl should be built to - * use the 5.005-based threading implementation. - * Only valid up to 5.8.x. - */ -/* OLD_PTHREADS_API: - * 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. - * 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. - * It may have a ~ on the front. - * The standard distribution will put nothing in this directory. - * Vendors who distribute perl may wish to place their own - * architecture-dependent modules and extensions in this directory with - * MakeMaker Makefile.PL INSTALLDIRS=vendor - * or equivalent. See INSTALL for details. - */ -/* PERL_VENDORARCH_EXP: - * This symbol contains the ~name expanded version of PERL_VENDORARCH, to be used - * in programs that are not prepared to deal with ~ expansion at run-time. - */ -/*#define PERL_VENDORARCH "" /**/ -/*#define PERL_VENDORARCH_EXP "" /**/ - -/* 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. - */ -/* PERL_VENDORLIB_STEM: - * This define is PERL_VENDORLIB_EXP with any trailing version-specific component - * removed. The elements in inc_version_list (inc_version_list.U) can - * be tacked onto this variable to generate a list of directories to search. - */ -/*#define PERL_VENDORLIB_EXP "" /**/ -/*#define PERL_VENDORLIB_STEM "" /**/ - -/* 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. - */ -#ifndef VOIDUSED -#define VOIDUSED 15 -#endif -#define VOIDFLAGS 15 -#if (VOIDFLAGS & VOIDUSED) != VOIDUSED -#define void int /* is void to be avoided? */ -#define M_VOID /* Xenix strikes again */ -#endif - -/* 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 - -/* 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(USE_CROSS_COMPILE) || defined(MULTIARCH) -# define MEM_ALIGNBYTES 8 -#else -#define MEM_ALIGNBYTES 8 -#endif - -/* BYTEORDER: - * This symbol holds the hexadecimal constant defined in byteorder, - * in a UV, i.e. 0x1234 or 0x4321 or 0x12345678, 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 - * for perl, where the config.h can be generated and installed on - * one system, and used by a different architecture to build an - * extension. Older versions of NeXT that might not have - * defined either *_ENDIAN__ were all on Motorola 680x0 series, - * so the default case (for NeXT) is big endian to catch them. - * This might matter for NeXT 3.0. - */ -#if defined(USE_CROSS_COMPILE) || 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 0x1234 /* large digits for MSB */ -#endif /* NeXT */ - -/* CASTI32: - * This symbol is defined if the C compiler can cast negative - * or large floating point numbers to 32-bit ints. - */ -#ifdef __GNUC__ -# define CASTI32 /**/ -#endif - -/* CASTNEGFLOAT: - * This symbol is defined if the C compiler can cast negative - * numbers to unsigned longs, ints and shorts. - */ -/* CASTFLAGS: - * This symbol contains flags that say what difficulties the compiler - * has casting odd floating values to unsigned long: - * 0 = ok - * 1 = couldn't cast < 0 - * 2 = couldn't cast >= 0x80000000 - * 4 = couldn't cast in argument expression list - */ -#define CASTNEGFLOAT /**/ -#define CASTFLAGS 0 /**/ - -/* VOID_CLOSEDIR: - * This symbol, if defined, indicates that the closedir() routine - * does not return a value. - */ -/*#define VOID_CLOSEDIR /**/ - -/* HAS_FD_SET: - * This symbol, when defined, indicates presence of the fd_set typedef - * in - */ -#define HAS_FD_SET /**/ - -/* Gconvert: - * This preprocessor macro is defined to convert a floating point - * number to a string without a trailing decimal point. This - * emulates the behavior of sprintf("%g"), but is sometimes much more - * efficient. If gconvert() is not available, but gcvt() drops the - * trailing decimal point, then gcvt() is used. If all else fails, - * a macro using sprintf("%g") is used. Arguments for the Gconvert - * macro are: value, number of digits, whether trailing zeros should - * be retained, and the output buffer. - * The usual values are: - * d_Gconvert='gconvert((x),(n),(t),(b))' - * d_Gconvert='gcvt((x),(n),(b))' - * d_Gconvert='sprintf((b),"%.*g",(n),(x))' - * The last two assume trailing zeros should not be kept. - */ -#define Gconvert(x,n,t,b) sprintf((b),"%.*g",(n),(x)) - -/* HAS_GETPAGESIZE: - * This symbol, if defined, indicates that the getpagesize system call - * is available to get system page size, which is the granularity of - * many memory management calls. - */ -/*#define HAS_GETPAGESIZE /**/ - -/* HAS_GNULIBC: - * This symbol, if defined, indicates to the C program that - * the GNU C library is being used. A better check is to use - * the __GLIBC__ and __GLIBC_MINOR__ symbols supplied with glibc. - */ -/*#define HAS_GNULIBC /**/ -#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE) -# define _GNU_SOURCE -#endif - -/* HAS_ISASCII: - * This manifest constant lets the C program know that isascii - * is available. - */ -#define HAS_ISASCII /**/ - -/* HAS_LCHOWN: - * This symbol, if defined, indicates that the lchown routine is - * available to operate on a symbolic link (instead of following the - * link). - */ -/*#define HAS_LCHOWN /**/ - -/* HAS_OPEN3: - * This manifest constant lets the C program know that the three - * argument form of open(2) is available. - */ -/*#define HAS_OPEN3 /**/ - -/* HAS_SAFE_BCOPY: - * This symbol, if defined, indicates that the bcopy routine is available - * to copy potentially overlapping memory blocks. Normally, you should - * probably use memmove() or memcpy(). If neither is defined, roll your - * own version. - */ -/*#define HAS_SAFE_BCOPY /**/ - -/* HAS_SAFE_MEMCPY: - * This symbol, if defined, indicates that the memcpy routine is available - * 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 /**/ - -/* HAS_SANE_MEMCMP: - * This symbol, if defined, indicates that the memcmp routine is available - * and can be used to compare relative magnitudes of chars with their high - * bits set. If it is not defined, roll your own version. - */ -#define HAS_SANE_MEMCMP /**/ - -/* HAS_SIGACTION: - * This symbol, if defined, indicates that Vr4's sigaction() routine - * is available. - */ -/*#define 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. - */ -/* Sigsetjmp: - * This macro is used in the same way as sigsetjmp(), but will invoke - * traditional setjmp() if sigsetjmp isn't available. - * See HAS_SIGSETJMP. - */ -/* Siglongjmp: - * This macro is used in the same way as siglongjmp(), but will invoke - * traditional longjmp() if siglongjmp isn't available. - * See HAS_SIGSETJMP. - */ -/*#define HAS_SIGSETJMP /**/ -#ifdef HAS_SIGSETJMP -#define Sigjmp_buf sigjmp_buf -#define Sigsetjmp(buf,save_mask) sigsetjmp((buf),(save_mask)) -#define Siglongjmp(buf,retval) siglongjmp((buf),(retval)) -#else -#define Sigjmp_buf jmp_buf -#define Sigsetjmp(buf,save_mask) setjmp((buf)) -#define Siglongjmp(buf,retval) longjmp((buf),(retval)) -#endif - -/* USE_STDIO_PTR: - * This symbol is defined if the _ptr and _cnt fields (or similar) - * of the stdio FILE structure can be used to access the stdio buffer - * for a file handle. If this is defined, then the FILE_ptr(fp) - * and FILE_cnt(fp) macros will also be defined and should be used - * to access these fields. - */ -/* FILE_ptr: - * This macro is used to access the _ptr field (or equivalent) of the - * FILE structure pointed to by its argument. This macro will always be - * defined if USE_STDIO_PTR is defined. - */ -/* STDIO_PTR_LVALUE: - * This symbol is defined if the FILE_ptr macro can be used as an - * lvalue. - */ -/* FILE_cnt: - * This macro is used to access the _cnt field (or equivalent) of the - * FILE structure pointed to by its argument. This macro will always be - * defined if USE_STDIO_PTR is defined. - */ -/* STDIO_CNT_LVALUE: - * This symbol is defined if the FILE_cnt macro can be used as an - * lvalue. - */ -/* STDIO_PTR_LVAL_SETS_CNT: - * This symbol is defined if using the FILE_ptr macro as an lvalue - * to increase the pointer by n has the side effect of decreasing the - * value of File_cnt(fp) by n. - */ -/* STDIO_PTR_LVAL_NOCHANGE_CNT: - * This symbol is defined if using the FILE_ptr macro as an lvalue - * to increase the pointer by n leaves File_cnt(fp) unchanged. - */ -#define USE_STDIO_PTR /**/ -#ifdef USE_STDIO_PTR -#define FILE_ptr(fp) ((fp)->_ptr) -#define STDIO_PTR_LVALUE /**/ -#define FILE_cnt(fp) ((fp)->_cnt) -#define STDIO_CNT_LVALUE /**/ -/*#define STDIO_PTR_LVAL_SETS_CNT /**/ -#define STDIO_PTR_LVAL_NOCHANGE_CNT /**/ -#endif - -/* USE_STDIO_BASE: - * This symbol is defined if the _base field (or similar) of the - * stdio FILE structure can be used to access the stdio buffer for - * a file handle. If this is defined, then the FILE_base(fp) macro - * will also be defined and should be used to access this field. - * Also, the FILE_bufsiz(fp) macro will be defined and should be used - * to determine the number of bytes in the buffer. USE_STDIO_BASE - * will never be defined unless USE_STDIO_PTR is. - */ -/* FILE_base: - * This macro is used to access the _base field (or equivalent) of the - * FILE structure pointed to by its argument. This macro will always be - * defined if USE_STDIO_BASE is defined. - */ -/* FILE_bufsiz: - * This macro is used to determine the number of bytes in the I/O - * buffer pointed to by _base field (or equivalent) of the FILE - * structure pointed to its argument. This macro will always be defined - * if USE_STDIO_BASE is defined. - */ -#define USE_STDIO_BASE /**/ -#ifdef USE_STDIO_BASE -#define FILE_base(fp) ((fp)->_base) -#define FILE_bufsiz(fp) ((fp)->_cnt + (fp)->_ptr - (fp)->_base) -#endif - -/* HAS_VPRINTF: - * This symbol, if defined, indicates that the vprintf routine is available - * to printf with a pointer to an argument list. If unavailable, you - * may need to write your own, probably in terms of _doprnt(). - */ -/* USE_CHAR_VSPRINTF: - * This symbol is defined if this system has vsprintf() returning type - * (char*). The trend seems to be to declare it as "int vsprintf()". It - * is up to the package author to declare vsprintf correctly based on the - * symbol. - */ -#define HAS_VPRINTF /**/ -/*#define USE_CHAR_VSPRINTF /**/ - -/* DOUBLESIZE: - * This symbol contains the size of a double, so that the C preprocessor - * can make decisions based on it. - */ -#define DOUBLESIZE 8 /**/ - -/* I_TIME: - * This symbol, if defined, indicates to the C program that it should - * include . - */ -/* I_SYS_TIME: - * This symbol, if defined, indicates to the C program that it should - * include . - */ -/* I_SYS_TIME_KERNEL: - * This symbol, if defined, indicates to the C program that it should - * include with KERNEL defined. - */ -/* HAS_TM_TM_ZONE: - * This symbol, if defined, indicates to the C program that - * the struct tm has a tm_zone field. - */ -/* HAS_TM_TM_GMTOFF: - * This symbol, if defined, indicates to the C program that - * the struct tm has a tm_gmtoff field. - */ -#define I_TIME /**/ -/*#define I_SYS_TIME /**/ -/*#define I_SYS_TIME_KERNEL /**/ -/*#define HAS_TM_TM_ZONE /**/ -/*#define HAS_TM_TM_GMTOFF /**/ - -/* 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 - * back, i.e. you cannot turn it blocking again this way. If you wish to - * alternatively switch between blocking and non-blocking, use the - * ioctl(FIOSNBIO) call instead, but that is not supported by all devices. - */ -/* VAL_EAGAIN: - * This symbol holds the errno error code set by read() when no data was - * present on the non-blocking file descriptor. - */ -/* RD_NODATA: - * This symbol holds the return code from read() when no data is present - * on the non-blocking file descriptor. Be careful! If EOF_NONBLOCK is - * not defined, then you can't distinguish between no data and EOF by - * issuing a read(). You'll have to find another way to tell for sure! - */ -/* EOF_NONBLOCK: - * This symbol, if defined, indicates to the C program that a read() on - * a non-blocking file descriptor will return 0 on EOF, and not the value - * held in RD_NODATA (-1 usually, in that case!). + * 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 VAL_O_NONBLOCK O_NONBLOCK -#define VAL_EAGAIN EAGAIN -#define RD_NODATA -1 -#define EOF_NONBLOCK - -/* PTRSIZE: - * This symbol contains the size of a pointer, so that the C preprocessor - * can make decisions based on it. It will be sizeof(void *) if - * the compiler supports (void *); otherwise it will be - * sizeof(char *). +/* SITELIB_STEM: + * This define is SITELIB_EXP with any trailing version-specific component + * removed. The elements in inc_version_list (inc_version_list.U) can + * be tacked onto this variable to generate a list of directories to search. */ -#define PTRSIZE 4 /**/ +#define SITELIB "c:\\perl\\site\\lib" /**/ +#define SITELIB_EXP (PerlEnv_sitelib_path(PERL_VERSION_STRING, NULL)) /**/ +#define SITELIB_STEM "" /**/ -/* 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 its headers. - * See HAS_DRAND48_PROTO. - */ -/* Rand_seed_t: - * This symbol defines the type of the argument of the - * random seed function. +/* Size_t_size: + * This symbol holds the size of a Size_t in bytes. */ -/* seedDrand01: - * This symbol defines the macro to be used in seeding the - * random number generator (see Drand01). +#define Size_t_size 4 /**/ + +/* Size_t: + * This symbol holds the type used to declare length parameters + * for string functions. It is usually size_t, but may be + * unsigned long, int, etc. It may be necessary to include + * to get any typedef'ed information. */ -/* RANDBITS: - * 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 Size_t size_t /* length parameter for string functions */ + +/* Sock_size_t: + * This symbol holds the type used for the size argument of + * various socket calls (just the base type, not the pointer-to). */ -#define Drand01() (rand()/(double)((unsigned)1< to get any typedef'ed information. + */ +#define Uid_t uid_t /* UID type */ + +/* USE_ITHREADS: + * This symbol, if defined, indicates that Perl should be built to + * use the interpreter-based threading implementation. + */ +/* USE_5005THREADS: + * This symbol, if defined, indicates that Perl should be built to + * use the 5.005-based threading implementation. + * Only valid up to 5.8.x. + */ +/* OLD_PTHREADS_API: + * 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. + * 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. + * It may have a ~ on the front. + * The standard distribution will put nothing in this directory. + * Vendors who distribute perl may wish to place their own + * architecture-dependent modules and extensions in this directory with + * MakeMaker Makefile.PL INSTALLDIRS=vendor + * or equivalent. See INSTALL for details. + */ +/* PERL_VENDORARCH_EXP: + * This symbol contains the ~name expanded version of PERL_VENDORARCH, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +/*#define PERL_VENDORARCH "" / **/ +/*#define PERL_VENDORARCH_EXP "" / **/ + +/* 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. + */ +/* PERL_VENDORLIB_STEM: + * This define is PERL_VENDORLIB_EXP with any trailing version-specific component + * removed. The elements in inc_version_list (inc_version_list.U) can + * be tacked onto this variable to generate a list of directories to search. + */ +/*#define PERL_VENDORLIB_EXP "" / **/ +/*#define PERL_VENDORLIB_STEM "" / **/ + +/* 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 + +/* PERL_USE_DEVEL: + * This symbol, if defined, indicates that Perl was configured with + * -Dusedevel, to enable development features. This should not be + * done for production builds. + */ +/*#define PERL_USE_DEVEL / **/ + /* HAS_ATOLF: * This symbol, if defined, indicates that the atolf routine is * available to convert strings into long doubles. */ -/*#define HAS_ATOLF /**/ +/*#define HAS_ATOLF / **/ /* HAS_ATOLL: * This symbol, if defined, indicates that the atoll routine is * available to convert strings into long longs. */ -/*#define HAS_ATOLL /**/ +/*#define HAS_ATOLL / **/ /* HAS__FWALK: * This symbol, if defined, indicates that the _fwalk system call is * available to apply a function to all the file handles. */ -/*#define HAS__FWALK /**/ +/*#define HAS__FWALK / **/ + +/* HAS_ACOSH: + * This symbol, if defined, indicates that the acosh routine is + * available to do the inverse hyperbolic cosine function. + */ +/*#define HAS_ACOSH / **/ /* HAS_AINTL: * This symbol, if defined, indicates that the aintl routine is * available. If copysignl is also present we can emulate modfl. */ -/*#define HAS_AINTL /**/ +/*#define HAS_AINTL / **/ /* HAS_BUILTIN_CHOOSE_EXPR: * Can we handle GCC builtin for compile-time ternary-like expressions @@ -3293,13 +3400,13 @@ * Can we handle GCC builtin for telling that certain values are more * likely */ -/*#define HAS_BUILTIN_EXPECT /**/ -/*#define HAS_BUILTIN_CHOOSE_EXPR /**/ +/*#define HAS_BUILTIN_EXPECT / **/ +/*#define HAS_BUILTIN_CHOOSE_EXPR / **/ /* HAS_C99_VARIADIC_MACROS: * If defined, the compiler supports C99 variadic macros. */ -/*#define HAS_C99_VARIADIC_MACROS /**/ +/*#define HAS_C99_VARIADIC_MACROS / **/ /* HAS_CLASS: * This symbol, if defined, indicates that the class routine is @@ -3317,31 +3424,31 @@ * FP_NANS Signaling Not a Number (NaNS) * FP_NANQ Quiet Not a Number (NaNQ) */ -/*#define HAS_CLASS /**/ +/*#define HAS_CLASS / **/ /* HAS_CLEARENV: * This symbol, if defined, indicates that the clearenv () routine is * available for use. */ -/*#define HAS_CLEARENV /**/ +/*#define HAS_CLEARENV / **/ /* HAS_STRUCT_CMSGHDR: * This symbol, if defined, indicates that the struct cmsghdr * is supported. */ -/*#define HAS_STRUCT_CMSGHDR /**/ +/*#define HAS_STRUCT_CMSGHDR / **/ /* HAS_COPYSIGNL: * This symbol, if defined, indicates that the copysignl routine is * available. If aintl is also present we can emulate modfl. */ -/*#define HAS_COPYSIGNL /**/ +/*#define HAS_COPYSIGNL / **/ /* USE_CPLUSPLUS: * This symbol, if defined, indicates that a C++ compiler was * used to compiled Perl and will be used to compile extensions. */ -/*#define USE_CPLUSPLUS /**/ +/*#define USE_CPLUSPLUS / **/ /* HAS_DBMINIT_PROTO: * This symbol, if defined, indicates that the system provides @@ -3349,19 +3456,19 @@ * to the program to supply one. A good guess is * extern int dbminit(char *); */ -/*#define HAS_DBMINIT_PROTO /**/ +/*#define HAS_DBMINIT_PROTO / **/ /* HAS_DIR_DD_FD: * This symbol, if defined, indicates that the the DIR* dirstream * structure contains a member variable named dd_fd. */ -/*#define HAS_DIR_DD_FD /**/ +/*#define HAS_DIR_DD_FD / **/ /* HAS_DIRFD: * This manifest constant lets the C program know that dirfd * is available. */ -/*#define HAS_DIRFD /**/ +/*#define HAS_DIRFD / **/ /* DLSYM_NEEDS_UNDERSCORE: * This symbol, if defined, indicates that we need to prepend an @@ -3369,7 +3476,7 @@ * makes sense if you *have* dlsym, which we will presume is the * case if you're using dl_dlopen.xs. */ -/*#define DLSYM_NEEDS_UNDERSCORE /**/ +/*#define DLSYM_NEEDS_UNDERSCORE / **/ /* HAS_FAST_STDIO: * This symbol, if defined, indicates that the "fast stdio" @@ -3381,27 +3488,34 @@ * This symbol, if defined, indicates that the fchdir routine is * available to change directory using a file descriptor. */ -/*#define HAS_FCHDIR /**/ +/*#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. * It may be undefined on VMS. */ -/*#define FCNTL_CAN_LOCK /**/ +/*#define FCNTL_CAN_LOCK / **/ + +/* HAS_FEGETROUND: + * This symbol, if defined, indicates that the fegetround routine is + * available to return the macro corresponding to the current rounding + * mode. + */ +/*#define HAS_FEGETROUND / **/ /* HAS_FINITE: * This symbol, if defined, indicates that the finite routine is * available to check whether a double is finite (non-infinity non-NaN). */ -/*#define HAS_FINITE /**/ +/*#define HAS_FINITE / **/ /* HAS_FINITEL: * This symbol, if defined, indicates that the finitel routine is * available to check whether a long double is finite * (non-infinity non-NaN). */ -/*#define HAS_FINITEL /**/ +/*#define HAS_FINITEL / **/ /* HAS_FLOCK_PROTO: * This symbol, if defined, indicates that the system provides @@ -3427,7 +3541,14 @@ * FP_POS_ZERO +0.0 (positive zero) * FP_NEG_ZERO -0.0 (negative zero) */ -/*#define HAS_FP_CLASS /**/ +/*#define HAS_FP_CLASS / **/ + +/* HAS_FP_CLASSL: + * This symbol, if defined, indicates that the fp_classl routine is + * available to classify long doubles. Available for example in + * Digital UNIX. See for possible values HAS_FP_CLASS. + */ +/*#define HAS_FP_CLASSL / **/ /* HAS_FPCLASS: * This symbol, if defined, indicates that the fpclass routine is @@ -3445,7 +3566,7 @@ * FP_NNORM negative normalized non-zero * FP_PNORM positive normalized non-zero */ -/*#define HAS_FPCLASS /**/ +/*#define HAS_FPCLASS / **/ /* HAS_FPCLASSIFY: * This symbol, if defined, indicates that the fpclassify routine is @@ -3459,7 +3580,19 @@ * FP_NAN NaN * */ -/*#define HAS_FPCLASSIFY /**/ +/* HAS_FP_CLASSIFY: + * This symbol, if defined, indicates that the fp_classify routine is + * available to classify doubles. The values are defined in + * + * FP_NORMAL Normalized + * FP_ZERO Zero + * FP_INFINITE Infinity + * FP_SUBNORMAL Denormalized + * FP_NAN NaN + * + */ +/*#define HAS_FPCLASSIFY / **/ +/*#define HAS_FP_CLASSIFY / **/ /* HAS_FPCLASSL: * This symbol, if defined, indicates that the fpclassl routine is @@ -3477,56 +3610,56 @@ * FP_NNORM negative normalized non-zero * FP_PNORM positive normalized non-zero */ -/*#define HAS_FPCLASSL /**/ +/*#define HAS_FPCLASSL / **/ + +/* HAS_FPGETROUND: + * This symbol, if defined, indicates that the fpgetround routine is + * available to get the floating point rounding mode. + */ +/*#define HAS_FPGETROUND / **/ /* HAS_FPOS64_T: * This symbol will be defined if the C compiler supports fpos64_t. */ -/*#define HAS_FPOS64_T /**/ +/*#define HAS_FPOS64_T / **/ /* HAS_FREXPL: * This symbol, if defined, indicates that the frexpl routine is * available to break a long double floating-point number into * a normalized fraction and an integral power of 2. */ -/*#define HAS_FREXPL /**/ - -/* HAS_STRUCT_FS_DATA: - * This symbol, if defined, indicates that the struct fs_data - * to do statfs() is supported. - */ -/*#define HAS_STRUCT_FS_DATA /**/ +/*#define HAS_FREXPL / **/ /* HAS_FSEEKO: * This symbol, if defined, indicates that the fseeko routine is * available to fseek beyond 32 bits (useful for ILP32 hosts). */ -/*#define HAS_FSEEKO /**/ - -/* HAS_FSTATFS: - * This symbol, if defined, indicates that the fstatfs routine is - * available to stat filesystems by file descriptors. - */ -/*#define HAS_FSTATFS /**/ +/*#define HAS_FSEEKO / **/ /* HAS_FSYNC: * This symbol, if defined, indicates that the fsync routine is * available to write a file's modified data and attributes to * permanent storage. */ -/*#define HAS_FSYNC /**/ +/*#define HAS_FSYNC / **/ /* HAS_FTELLO: * This symbol, if defined, indicates that the ftello routine is * available to ftell beyond 32 bits (useful for ILP32 hosts). */ -/*#define HAS_FTELLO /**/ +/*#define HAS_FTELLO / **/ /* HAS_FUTIMES: * This symbol, if defined, indicates that the futimes routine is * available to change file descriptor time stamps with struct timevals. */ -/*#define HAS_FUTIMES /**/ +/*#define HAS_FUTIMES / **/ + +/* HAS_GETADDRINFO: + * This symbol, if defined, indicates that the getaddrinfo() function + * is available for use. + */ +/*#define HAS_GETADDRINFO / **/ /* HAS_GETCWD: * This symbol, if defined, indicates that the getcwd routine is @@ -3536,76 +3669,89 @@ /* HAS_GETESPWNAM: * This symbol, if defined, indicates that the getespwnam system call is - * available to retrieve enchanced (shadow) password entries by name. - */ -/*#define HAS_GETESPWNAM /**/ - -/* HAS_GETFSSTAT: - * This symbol, if defined, indicates that the getfsstat routine is - * available to stat filesystems in bulk. + * available to retrieve enhanced (shadow) password entries by name. */ -/*#define HAS_GETFSSTAT /**/ +/*#define HAS_GETESPWNAM / **/ /* 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. - */ -/*#define HAS_GETMNT /**/ +/*#define HAS_GETITIMER / **/ -/* HAS_GETMNTENT: - * This symbol, if defined, indicates that the getmntent routine is - * available to iterate through mounted file systems to get their info. +/* HAS_GETNAMEINFO: + * This symbol, if defined, indicates that the getnameinfo() function + * is available for use. */ -/*#define HAS_GETMNTENT /**/ +/*#define HAS_GETNAMEINFO / **/ /* HAS_GETPRPWNAM: * This symbol, if defined, indicates that the getprpwnam system call is * available to retrieve protected (shadow) password entries by name. */ -/*#define HAS_GETPRPWNAM /**/ +/*#define HAS_GETPRPWNAM / **/ /* HAS_GETSPNAM: * This symbol, if defined, indicates that the getspnam system call is * available to retrieve SysV shadow password entries by name. */ -/*#define HAS_GETSPNAM /**/ - -/* HAS_HASMNTOPT: - * This symbol, if defined, indicates that the hasmntopt routine is - * available to query the mount options of file systems. - */ -/*#define HAS_HASMNTOPT /**/ +/*#define HAS_GETSPNAM / **/ /* HAS_ILOGBL: * This symbol, if defined, indicates that the ilogbl routine is * available. If scalbnl is also present we can emulate frexpl. */ -/*#define HAS_ILOGBL /**/ +/*#define HAS_ILOGBL / **/ + +/* HAS_INETNTOP: + * This symbol, if defined, indicates that the inet_ntop() function + * is available to parse IPv4 and IPv6 strings. + */ +/*#define HAS_INETNTOP / **/ + +/* HAS_INETPTON: + * This symbol, if defined, indicates that the inet_pton() function + * is available to parse IPv4 and IPv6 strings. + */ +/*#define HAS_INETPTON / **/ /* HAS_INT64_T: * This symbol will defined if the C compiler supports int64_t. * Usually the needs to be included, but sometimes * is enough. */ -/*#define HAS_INT64_T /**/ +/*#define HAS_INT64_T / **/ + +/* HAS_ISBLANK: + * This manifest constant lets the C program know that isblank + * is available. + */ +/*#define HAS_ISBLANK / **/ /* HAS_ISFINITE: * This symbol, if defined, indicates that the isfinite routine is * available to check whether a double is finite (non-infinity non-NaN). */ -/*#define HAS_ISFINITE /**/ +/*#define HAS_ISFINITE / **/ + +/* HAS_ISFINITEL: + * This symbol, if defined, indicates that the isfinitel routine is + * available to check whether a long double is finite. + * (non-infinity non-NaN). + */ +/*#define HAS_ISFINITEL / **/ /* HAS_ISINF: * This symbol, if defined, indicates that the isinf routine is * available to check whether a double is an infinity. */ -/*#define HAS_ISINF /**/ +/*#define HAS_ISINF / **/ + +/* HAS_ISINFL: + * This symbol, if defined, indicates that the isinfl routine is + * available to check whether a long double is an infinity. + */ +/*#define HAS_ISINFL / **/ /* HAS_ISNAN: * This symbol, if defined, indicates that the isnan routine is @@ -3617,7 +3763,20 @@ * This symbol, if defined, indicates that the isnanl routine is * available to check whether a long double is a NaN. */ -/*#define HAS_ISNANL /**/ +/*#define HAS_ISNANL / **/ + +/* HAS_J0: + * This symbol, if defined, indicates to the C program that the + * j0() function is available for Bessel functions of the first + * kind of the order zero, for doubles. + */ +/* HAS_J0L: + * This symbol, if defined, indicates to the C program that the + * j0l() function is available for Bessel functions of the first + * kind of the order zero, for long doubles. + */ +/*#define HAS_J0 / **/ +/*#define HAS_J0L / **/ /* HAS_LDBL_DIG: * This symbol, if defined, indicates that this system's @@ -3631,38 +3790,38 @@ * This symbol, if defined, indicates that libm exports _LIB_VERSION * and that math.h defines the enum to manipulate it. */ -/*#define LIBM_LIB_VERSION /**/ +/*#define LIBM_LIB_VERSION / **/ /* HAS_MADVISE: * This symbol, if defined, indicates that the madvise system call is * available to map a file into memory. */ -/*#define HAS_MADVISE /**/ +/*#define HAS_MADVISE / **/ /* HAS_MALLOC_SIZE: * This symbol, if defined, indicates that the malloc_size * routine is available for use. */ -/*#define HAS_MALLOC_SIZE /**/ +/*#define HAS_MALLOC_SIZE / **/ /* HAS_MALLOC_GOOD_SIZE: * This symbol, if defined, indicates that the malloc_good_size * routine is available for use. */ -/*#define HAS_MALLOC_GOOD_SIZE /**/ +/*#define HAS_MALLOC_GOOD_SIZE / **/ /* HAS_MKDTEMP: * This symbol, if defined, indicates that the mkdtemp routine is * available to exclusively create a uniquely named temporary directory. */ -/*#define HAS_MKDTEMP /**/ +/*#define HAS_MKDTEMP / **/ /* HAS_MKSTEMPS: * This symbol, if defined, indicates that the mkstemps routine is - * available to excluslvely create and open a uniquely named + * available to exclusively create and open a uniquely named * (with a suffix) temporary file. */ -/*#define HAS_MKSTEMPS /**/ +/*#define HAS_MKSTEMPS / **/ /* HAS_MODFL: * This symbol, if defined, indicates that the modfl routine is @@ -3674,40 +3833,43 @@ * a prototype for the modfl() function. Otherwise, it is up * to the program to supply one. */ -/* 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_PROTO /**/ -/*#define HAS_MODFL_POW32_BUG /**/ +/*#define HAS_MODFL / **/ +/*#define HAS_MODFL_PROTO / **/ /* HAS_MPROTECT: * This symbol, if defined, indicates that the mprotect system call is * available to modify the access protection of a memory mapped file. */ -/*#define HAS_MPROTECT /**/ +/*#define HAS_MPROTECT / **/ /* HAS_STRUCT_MSGHDR: * This symbol, if defined, indicates that the struct msghdr * is supported. */ -/*#define HAS_STRUCT_MSGHDR /**/ +/*#define HAS_STRUCT_MSGHDR / **/ /* 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 /**/ +/*#define HAS_NL_LANGINFO / **/ /* HAS_OFF64_T: * This symbol will be defined if the C compiler supports off64_t. */ -/*#define HAS_OFF64_T /**/ +/*#define HAS_OFF64_T / **/ + +/* HAS_PRCTL: + * This symbol, if defined, indicates that the prctl routine is + * available to set process title. + */ +/* HAS_PRCTL_SET_NAME: + * This symbol, if defined, indicates that the prctl routine is + * available to set process title and supports PR_SET_NAME. + */ +/*#define HAS_PRCTL / **/ +/*#define HAS_PRCTL_SET_NAME / **/ /* HAS_PROCSELFEXE: * This symbol is defined if PROCSELFEXE_PATH is a symlink @@ -3718,7 +3880,7 @@ * of the symbolic link pointing to the absolute pathname of * the executing program. */ -/*#define HAS_PROCSELFEXE /**/ +/*#define HAS_PROCSELFEXE / **/ #if defined(HAS_PROCSELFEXE) && !defined(PROCSELFEXE_PATH) #define PROCSELFEXE_PATH /**/ #endif @@ -3728,20 +3890,25 @@ * system call is available to set the contention scope attribute of * a thread attribute object. */ -/*#define HAS_PTHREAD_ATTR_SETSCOPE /**/ +/*#define HAS_PTHREAD_ATTR_SETSCOPE / **/ + +/* HAS_PTRDIFF_T: + * This symbol will be defined if the C compiler supports ptrdiff_t. + */ +#define HAS_PTRDIFF_T /**/ /* 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 /**/ +/*#define HAS_READV / **/ /* HAS_RECVMSG: * This symbol, if defined, indicates that the recvmsg routine is * available to send structured socket messages. */ -/*#define HAS_RECVMSG /**/ +/*#define HAS_RECVMSG / **/ /* HAS_SBRK_PROTO: * This symbol, if defined, indicates that the system provides @@ -3750,37 +3917,31 @@ * extern void* sbrk(int); * extern void* sbrk(size_t); */ -/*#define HAS_SBRK_PROTO /**/ +/*#define HAS_SBRK_PROTO / **/ /* HAS_SCALBNL: * This symbol, if defined, indicates that the scalbnl routine is * available. If ilogbl is also present we can emulate frexpl. */ -/*#define HAS_SCALBNL /**/ +/*#define HAS_SCALBNL / **/ /* HAS_SENDMSG: * This symbol, if defined, indicates that the sendmsg routine is * available to send structured socket messages. */ -/*#define HAS_SENDMSG /**/ +/*#define HAS_SENDMSG / **/ /* HAS_SETITIMER: * This symbol, if defined, indicates that the setitimer routine is * available to set interval timers. */ -/*#define HAS_SETITIMER /**/ +/*#define HAS_SETITIMER / **/ /* HAS_SETPROCTITLE: * This symbol, if defined, indicates that the setproctitle routine is * available to set process title. */ -/*#define HAS_SETPROCTITLE /**/ - -/* USE_SFIO: - * This symbol, if defined, indicates that sfio should - * be used. - */ -/*#define USE_SFIO /**/ +/*#define HAS_SETPROCTITLE / **/ /* HAS_SIGNBIT: * This symbol, if defined, indicates that the signbit routine is @@ -3790,21 +3951,21 @@ * in perl. Users should call Perl_signbit(), which will be #defined to * the system's signbit() function or macro if this symbol is defined. */ -/*#define HAS_SIGNBIT /**/ +/*#define HAS_SIGNBIT / **/ /* 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 /**/ +/*#define HAS_SIGPROCMASK / **/ /* USE_SITECUSTOMIZE: * This symbol, if defined, indicates that sitecustomize should * be used. */ #ifndef USE_SITECUSTOMIZE -/*#define USE_SITECUSTOMIZE /**/ +/*#define USE_SITECUSTOMIZE / **/ #endif /* HAS_SNPRINTF: @@ -3822,7 +3983,7 @@ * 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 /**/ +/*#define HAS_SOCKATMARK / **/ /* HAS_SOCKATMARK_PROTO: * This symbol, if defined, indicates that the system provides @@ -3830,13 +3991,13 @@ * to the program to supply one. A good guess is * extern int sockatmark(int); */ -/*#define HAS_SOCKATMARK_PROTO /**/ +/*#define HAS_SOCKATMARK_PROTO / **/ /* HAS_SOCKS5_INIT: * This symbol, if defined, indicates that the socks5_init routine is * available to initialize SOCKS 5. */ -/*#define HAS_SOCKS5_INIT /**/ +/*#define HAS_SOCKS5_INIT / **/ /* SPRINTF_RETURNS_STRLEN: * This variable defines whether sprintf returns the length of the string @@ -3850,7 +4011,7 @@ * This symbol, if defined, indicates that the sqrtl routine is * available to do long double square roots. */ -/*#define HAS_SQRTL /**/ +/*#define HAS_SQRTL / **/ /* HAS_SETRESGID_PROTO: * This symbol, if defined, indicates that the system provides @@ -3858,7 +4019,7 @@ * 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 /**/ +/*#define HAS_SETRESGID_PROTO / **/ /* HAS_SETRESUID_PROTO: * This symbol, if defined, indicates that the system provides @@ -3866,30 +4027,7 @@ * 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_STRUCT_STATFS_F_FLAGS: - * This symbol, if defined, indicates that the struct statfs - * does have the f_flags member containing the mount flags of - * the filesystem containing the file. - * This kind of struct statfs is coming from (BSD 4.3), - * not from (SYSV). Older BSDs (like Ultrix) do not - * have statfs() and struct statfs, they have ustat() and getmnt() - * with struct ustat and struct fs_data. - */ -/*#define HAS_STRUCT_STATFS_F_FLAGS /**/ - -/* HAS_STRUCT_STATFS: - * This symbol, if defined, indicates that the struct statfs - * to do statfs() is supported. - */ -/*#define HAS_STRUCT_STATFS /**/ - -/* HAS_FSTATVFS: - * This symbol, if defined, indicates that the fstatvfs routine is - * available to stat filesystems by file descriptors. - */ -/*#define HAS_FSTATVFS /**/ +/*#define HAS_SETRESUID_PROTO / **/ /* HAS_STRFTIME: * This symbol, if defined, indicates that the strftime routine is @@ -3901,43 +4039,43 @@ * This symbol, if defined, indicates that the strlcat () routine is * available to do string concatenation. */ -/*#define HAS_STRLCAT /**/ +/*#define HAS_STRLCAT / **/ /* HAS_STRLCPY: * This symbol, if defined, indicates that the strlcpy () routine is * available to do string copying. */ -/*#define HAS_STRLCPY /**/ +/*#define HAS_STRLCPY / **/ /* HAS_STRTOLD: * This symbol, if defined, indicates that the strtold routine is * available to convert strings to long doubles. */ -/*#define HAS_STRTOLD /**/ +/*#define HAS_STRTOLD / **/ /* HAS_STRTOLL: * This symbol, if defined, indicates that the strtoll routine is * available to convert strings to long longs. */ -/*#define HAS_STRTOLL /**/ +/*#define HAS_STRTOLL / **/ /* HAS_STRTOQ: * This symbol, if defined, indicates that the strtoq routine is * available to convert strings to long longs (quads). */ -/*#define HAS_STRTOQ /**/ +/*#define HAS_STRTOQ / **/ /* HAS_STRTOULL: * This symbol, if defined, indicates that the strtoull routine is * available to convert strings to unsigned long longs. */ -/*#define HAS_STRTOULL /**/ +/*#define HAS_STRTOULL / **/ /* HAS_STRTOUQ: * This symbol, if defined, indicates that the strtouq routine is * available to convert strings to unsigned long longs (quads). */ -/*#define HAS_STRTOUQ /**/ +/*#define HAS_STRTOUQ / **/ /* HAS_SYSCALL_PROTO: * This symbol, if defined, indicates that the system provides @@ -3946,7 +4084,7 @@ * extern int syscall(int, ...); * extern int syscall(long, ...); */ -/*#define HAS_SYSCALL_PROTO /**/ +/*#define HAS_SYSCALL_PROTO / **/ /* HAS_TELLDIR_PROTO: * This symbol, if defined, indicates that the system provides @@ -3956,11 +4094,48 @@ */ #define HAS_TELLDIR_PROTO /**/ +/* HAS_CTIME64: + * This symbol, if defined, indicates that the ctime64 () routine is + * available to do the 64bit variant of ctime () + */ +/* HAS_LOCALTIME64: + * This symbol, if defined, indicates that the localtime64 () routine is + * available to do the 64bit variant of localtime () + */ +/* HAS_GMTIME64: + * This symbol, if defined, indicates that the gmtime64 () routine is + * available to do the 64bit variant of gmtime () + */ +/* HAS_MKTIME64: + * This symbol, if defined, indicates that the mktime64 () routine is + * available to do the 64bit variant of mktime () + */ +/* HAS_DIFFTIME64: + * This symbol, if defined, indicates that the difftime64 () routine is + * available to do the 64bit variant of difftime () + */ +/* HAS_ASCTIME64: + * This symbol, if defined, indicates that the asctime64 () routine is + * available to do the 64bit variant of asctime () + */ +/*#define HAS_CTIME64 / **/ +/*#define HAS_LOCALTIME64 / **/ +/*#define HAS_GMTIME64 / **/ +/*#define HAS_MKTIME64 / **/ +/*#define HAS_DIFFTIME64 / **/ +/*#define HAS_ASCTIME64 / **/ + /* HAS_TIMEGM: * This symbol, if defined, indicates that the timegm routine is * available to do the opposite of gmtime () */ -/*#define HAS_TIMEGM /**/ +/*#define HAS_TIMEGM / **/ + +/* HAS_TRUNCL: + * This symbol, if defined, indicates that the truncl routine is + * available. If copysignl is also present we can emulate modfl. + */ +/*#define HAS_TRUNCL / **/ /* U32_ALIGNMENT_REQUIRED: * This symbol, if defined, indicates that you must access @@ -3974,20 +4149,20 @@ * This symbol, if defined, indicates that the ualarm routine is * available to do alarms with microsecond granularity. */ -/*#define HAS_UALARM /**/ +/*#define HAS_UALARM / **/ /* HAS_UNORDERED: * This symbol, if defined, indicates that the unordered routine is * available to check whether two doubles are unordered * (effectively: whether either of them is NaN) */ -/*#define HAS_UNORDERED /**/ +/*#define HAS_UNORDERED / **/ /* HAS_UNSETENV: * This symbol, if defined, indicates that the unsetenv () routine is * available for use. */ -/*#define HAS_UNSETENV /**/ +/*#define HAS_UNSETENV / **/ /* HAS_USLEEP_PROTO: * This symbol, if defined, indicates that the system provides @@ -3995,19 +4170,25 @@ * to the program to supply one. A good guess is * extern int usleep(useconds_t); */ -/*#define HAS_USLEEP_PROTO /**/ +/*#define HAS_USLEEP_PROTO / **/ + +/* HAS_WCSCMP: + * This symbol, if defined, indicates that the wcscmp routine is + * available to compare two wide character strings. + */ +#define HAS_WCSCMP /**/ -/* HAS_USTAT: - * This symbol, if defined, indicates that the ustat system call is - * available to query file system statistics by dev_t. +/* HAS_WCSXFRM: + * This symbol, if defined, indicates that the wcsxfrm routine is + * available to tranform a wide character string for wcscmp(). */ -/*#define HAS_USTAT /**/ +#define HAS_WCSXFRM /**/ /* HAS_WRITEV: * This symbol, if defined, indicates that the writev routine is * available to do scatter writes. */ -/*#define HAS_WRITEV /**/ +/*#define HAS_WRITEV / **/ /* USE_DYNAMIC_LOADING: * This symbol, if defined, indicates that dynamic loading of @@ -4016,8 +4197,10 @@ #define USE_DYNAMIC_LOADING /**/ /* FFLUSH_NULL: - * This symbol, if defined, tells that fflush(NULL) does flush - * all pending stdio output. + * This symbol, if defined, tells that fflush(NULL) correctly + * flushes all pending stdio output without side effects. In + * particular, on some platforms calling fflush(NULL) *still* + * corrupts STDIN if it is a pipe. */ /* FFLUSH_ALL: * This symbol, if defined, tells that to flush @@ -4027,7 +4210,7 @@ * even be probed for and will be left undefined. */ #define FFLUSH_NULL /**/ -/*#define FFLUSH_ALL /**/ +/*#define FFLUSH_ALL / **/ /* I_ASSERT: * This symbol, if defined, indicates that exists and @@ -4035,11 +4218,17 @@ */ #define I_ASSERT /**/ +/* I_BFD: + * This symbol, if defined, indicates that exists and + * can be included. + */ +/*#define I_BFD / **/ + /* I_CRYPT: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_CRYPT /**/ +/*#define I_CRYPT / **/ /* DB_Prefix_t: * This symbol contains the type of the prefix structure element @@ -4071,136 +4260,119 @@ #define DB_VERSION_MINOR_CFG 0 /**/ #define DB_VERSION_PATCH_CFG 0 /**/ +/* I_FENV: + * This symbol, if defined, indicates to the C program that it should + * include to get the floating point environment definitions. + */ +/*#define I_FENV / **/ + /* I_FP: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_FP /**/ +/*#define I_FP / **/ /* I_FP_CLASS: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_FP_CLASS /**/ +/*#define I_FP_CLASS / **/ /* I_IEEEFP: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_IEEEFP /**/ +/*#define I_IEEEFP / **/ /* I_INTTYPES: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_INTTYPES /**/ +/*#define I_INTTYPES / **/ /* I_LANGINFO: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_LANGINFO /**/ +/*#define I_LANGINFO / **/ /* I_LIBUTIL: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_LIBUTIL /**/ +/*#define I_LIBUTIL / **/ /* I_MALLOCMALLOC: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_MALLOCMALLOC /**/ - -/* I_MNTENT: - * This symbol, if defined, indicates that exists and - * should be included. - */ -/*#define I_MNTENT /**/ +/*#define I_MALLOCMALLOC / **/ /* I_NETINET_TCP: * This symbol, if defined, indicates to the C program that it should * include . */ -/*#define I_NETINET_TCP /**/ +/*#define I_NETINET_TCP / **/ /* I_POLL: * This symbol, if defined, indicates that exists and * should be included. (see also HAS_POLL) */ -/*#define I_POLL /**/ +/*#define I_POLL / **/ /* I_PROT: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_PROT /**/ +/*#define I_PROT / **/ /* I_SHADOW: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_SHADOW /**/ +/*#define I_SHADOW / **/ /* I_SOCKS: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_SOCKS /**/ +/*#define I_SOCKS / **/ + +/* I_STDBOOL: + * This symbol, if defined, indicates that exists and + * can be included. + */ +/*#define I_STDBOOL / **/ + +/* I_STDINT: + * This symbol, if defined, indicates that exists and + * should be included. + */ +/*#define I_STDINT / **/ /* I_SUNMATH: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_SUNMATH /**/ +/*#define I_SUNMATH / **/ /* I_SYSLOG: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_SYSLOG /**/ +/*#define I_SYSLOG / **/ /* I_SYSMODE: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_SYSMODE /**/ - -/* I_SYS_MOUNT: - * This symbol, if defined, indicates that exists and - * should be included. - */ -/*#define I_SYS_MOUNT /**/ - -/* I_SYS_STATFS: - * This symbol, if defined, indicates that exists. - */ -/*#define I_SYS_STATFS /**/ - -/* I_SYS_STATVFS: - * This symbol, if defined, indicates that exists and - * should be included. - */ -/*#define I_SYS_STATVFS /**/ +/*#define I_SYSMODE / **/ /* I_SYSUTSNAME: * This symbol, if defined, indicates that exists and * should be included. */ -/*#define I_SYSUTSNAME /**/ - -/* I_SYS_VFS: - * This symbol, if defined, indicates that exists and - * should be included. - */ -/*#define I_SYS_VFS /**/ - -/* I_USTAT: - * This symbol, if defined, indicates that exists and - * should be included. - */ -/*#define I_USTAT /**/ +/*#define I_SYSUTSNAME / **/ /* PERL_PRIfldbl: * This symbol, if defined, contains the string used by stdio to @@ -4218,16 +4390,10 @@ * This symbol, if defined, contains the string used by stdio to * format long doubles (format 'f') for input. */ -/*#define PERL_PRIfldbl "f" /**/ -/*#define PERL_PRIgldbl "g" /**/ -/*#define PERL_PRIeldbl "e" /**/ -/*#define PERL_SCNfldbl "f" /**/ - -/* PERL_MAD: - * This symbol, if defined, indicates that the Misc Attribution - * Declaration code should be conditionally compiled. - */ -/*#define PERL_MAD /**/ +/*#define PERL_PRIfldbl "f" / **/ +/*#define PERL_PRIgldbl "g" / **/ +/*#define PERL_PRIeldbl "e" / **/ +/*#define PERL_SCNfldbl "f" / **/ /* NEED_VA_COPY: * This symbol, if defined, indicates that the system stores @@ -4238,7 +4404,7 @@ * of copying mechanisms, handy.h defines a platform- * independent macro, Perl_va_copy(src, dst), to do the job. */ -/*#define NEED_VA_COPY /**/ +/*#define NEED_VA_COPY / **/ /* IVTYPE: * This symbol defines the C type used for Perl's IV. @@ -4317,7 +4483,7 @@ /* NV_OVERFLOWS_INTEGERS_AT: * This symbol gives the largest integer value that NVs can hold. This * value + 1.0 cannot be stored accurately. It is expressed as constant - * floating point expression to reduce the chance of decimale/binary + * floating point expression to reduce the chance of decimal/binary * conversion issues. If it can not be determined, the value 0 is given. */ /* NV_ZERO_IS_ALLBITS_ZERO: @@ -4333,13 +4499,8 @@ #define I32TYPE long /**/ #define U32TYPE unsigned long /**/ #ifdef HAS_QUAD -# ifndef __GNUC__ -# define I64TYPE __int64 /**/ -# define U64TYPE unsigned __int64 /**/ -# else -# define I64TYPE long long /**/ -# define U64TYPE unsigned long long /**/ -# endif +#define I64TYPE __int64 /**/ +#define U64TYPE unsigned __int64 /**/ #endif #define NVTYPE double /**/ #define IVSIZE 4 /**/ @@ -4423,6 +4584,16 @@ */ #define SELECT_MIN_BITS 32 /**/ +/* ST_INO_SIZE: + * This variable contains the size of struct stat's st_ino in bytes. + */ +/* ST_INO_SIGN: + * This symbol holds the signedness of struct stat's st_ino. + * 1 for unsigned, -1 for signed. + */ +#define ST_INO_SIGN 1 /* st_ino sign */ +#define ST_INO_SIZE 4 /* st_ino size */ + /* 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 @@ -4438,7 +4609,7 @@ * This symbol tells the name of the array holding the stdio streams. * Usual values include _iob, __iob, and __sF. */ -/*#define HAS_STDIO_STREAM_ARRAY /**/ +/*#define HAS_STDIO_STREAM_ARRAY / **/ #ifdef HAS_STDIO_STREAM_ARRAY #define STDIO_STREAM_ARRAY #endif @@ -4451,8 +4622,18 @@ * This symbol contains the minimum value for the time_t offset that * the system function gmtime () accepts, and defaults to 0 */ -#define GMTIME_MAX 2147483647 /**/ -#define GMTIME_MIN 0 /**/ +/* LOCALTIME_MAX: + * This symbol contains the maximum value for the time_t offset that + * the system function localtime () accepts, and defaults to 0 + */ +/* LOCALTIME_MIN: + * This symbol contains the minimum value for the time_t offset that + * the system function localtime () accepts, and defaults to 0 + */ +#define GMTIME_MAX 2147483647 /**/ +#define GMTIME_MIN 0 /**/ +#define LOCALTIME_MAX 2147483647 /**/ +#define LOCALTIME_MIN 0 /**/ /* USE_64_BIT_INT: * This symbol, if defined, indicates that 64-bit integers should @@ -4473,17 +4654,23 @@ * you may need at least to reboot your OS to 64-bit mode. */ #ifndef USE_64_BIT_INT -/*#define USE_64_BIT_INT /**/ +/*#define USE_64_BIT_INT / **/ #endif #ifndef USE_64_BIT_ALL -/*#define USE_64_BIT_ALL /**/ +/*#define USE_64_BIT_ALL / **/ #endif +/* USE_CBACKTRACE: + * This symbol, if defined, indicates that Perl should + * be built with support for backtrace. + */ +/*#define USE_CBACKTRACE / **/ + /* USE_DTRACE: * This symbol, if defined, indicates that Perl should * be built with support for DTrace. */ -/*#define USE_DTRACE /**/ +/*#define USE_DTRACE / **/ /* USE_FAST_STDIO: * This symbol, if defined, indicates that Perl should @@ -4491,15 +4678,22 @@ * Defaults to define in Perls 5.8 and earlier, to undef later. */ #ifndef USE_FAST_STDIO -/*#define USE_FAST_STDIO /**/ +/*#define USE_FAST_STDIO / **/ #endif +/* USE_KERN_PROC_PATHNAME: + * This symbol, if defined, indicates that we can use sysctl with + * KERN_PROC_PATHNAME to get a full path for the executable, and hence + * convert $^X to an absolute path. + */ +/*#define USE_KERN_PROC_PATHNAME / **/ + /* USE_LARGE_FILES: * This symbol, if defined, indicates that large file support * should be used when available. */ #ifndef USE_LARGE_FILES -/*#define USE_LARGE_FILES /**/ +/*#define USE_LARGE_FILES / **/ #endif /* USE_LONG_DOUBLE: @@ -4507,7 +4701,7 @@ * be used when available. */ #ifndef USE_LONG_DOUBLE -/*#define USE_LONG_DOUBLE /**/ +/*#define USE_LONG_DOUBLE / **/ #endif /* USE_MORE_BITS: @@ -4515,7 +4709,7 @@ * long doubles should be used when available. */ #ifndef USE_MORE_BITS -/*#define USE_MORE_BITS /**/ +/*#define USE_MORE_BITS / **/ #endif /* MULTIPLICITY: @@ -4523,16 +4717,23 @@ * be built to use multiplicity. */ #ifndef MULTIPLICITY -/*#define MULTIPLICITY /**/ +/*#define MULTIPLICITY / **/ #endif +/* USE_NSGETEXECUTABLEPATH: + * This symbol, if defined, indicates that we can use _NSGetExecutablePath + * and realpath to get a full path for the executable, and hence convert + * $^X to an absolute path. + */ +/*#define USE_NSGETEXECUTABLEPATH / **/ + /* USE_PERLIO: * This symbol, if defined, indicates that the PerlIO abstraction should * be used throughout. If not defined, stdio should be * used in a fully backward compatible manner. */ #ifndef USE_PERLIO -/*#define USE_PERLIO /**/ +#define USE_PERLIO /**/ #endif /* USE_SOCKS: @@ -4540,7 +4741,7 @@ * be built to use socks. */ #ifndef USE_SOCKS -/*#define USE_SOCKS /**/ +/*#define USE_SOCKS / **/ #endif #endif