*/
#$d_mktime HAS_MKTIME /**/
-/* HAS_MSYNC:
- * This symbol, if defined, indicates that the msync system call is
- * available to synchronize a mapped file.
- */
-#$d_msync HAS_MSYNC /**/
-
-/* HAS_MUNMAP:
- * This symbol, if defined, indicates that the munmap system call is
- * available to unmap a region, usually mapped by mmap().
- */
-#$d_munmap HAS_MUNMAP /**/
-
/* HAS_NICE:
* This symbol, if defined, indicates that the nice routine is
* available.
*/
#define STDCHAR $stdchar /**/
+/* HAS_QUAD:
+ * This symbol, if defined, tells that there's a 64-bit integer type,
+ * Quad_t.
+ */
+/* Quad_t:
+ * This symbol holds the type used for 64-bit integers.
+ * It can be int, long, long long, int64_t etc...
+ */
+/* QUADCASE:
+ * This symbol, if defined, encodes the type of a quad:
+ * 1 = int, 2 = long, 3 = long long, 4 = int64_t.
+ */
+/* Uquad_t:
+ * This symbol holds the type used for unsigned 64-bit integers.
+ * It can be unsigned int, unsigned long, unsigned long long,
+ * uint64_t etc...
+ */
+#$d_quad HAS_QUAD /**/
+#$d_quad Quad_t $quadtype /**/
+#$d_quad Uquad_t $uquadtype /**/
+#$d_quad QUADCASE $quadcase /**/
+
/* HAS_ACCESSX:
* This symbol, if defined, indicates that the accessx routine is
* available to do extended access checks.
* execution path, but it should be accessible by the world. The program
* should be prepared to do ~ expansion.
* The standard distribution will put nothing in this directory.
- * Individual sites may place their own extensions and modules in
- * this directory.
+ * After perl has been installed, users may install their own local
+ * architecture-dependent modules in this directory with
+ * MakeMaker Makefile.PL
+ * or equivalent. See INSTALL for details.
*/
/* SITEARCH_EXP:
* This symbol contains the ~name expanded version of SITEARCH, to be used
* execution path, but it should be accessible by the world. The program
* should be prepared to do ~ expansion.
* The standard distribution will put nothing in this directory.
- * Individual sites may place their own extensions and modules in
- * this directory.
+ * After perl has been installed, users may install their own local
+ * architecture-independent modules in this directory with
+ * MakeMaker Makefile.PL
+ * or equivalent. See INSTALL for details.
*/
/* SITELIB_EXP:
* This symbol contains the ~name expanded version of SITELIB, to be used
* available directly to the user. Note that it may well be different from
* the preprocessor used to compile the C program.
*/
+/* CPPLAST:
+ * This symbol is intended to be used along with CPPRUN in the same manner
+ * symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
+ */
#define CPPSTDIN "$cppstdin"
#define CPPMINUS "$cppminus"
#define CPPRUN "$cpprun"
+#define CPPLAST "$cpplast"
/* HAS_ACCESS:
* This manifest constant lets the C program know that the access()
* so that it is safe even if used by a process with super-user
* privileges.
*/
+/* HAS_PHOSTNAME:
+ * This symbol, if defined, indicates that the C program may use the
+ * contents of PHOSTNAME as a command to feed to the popen() routine
+ * to derive the host name.
+ */
#$d_gethname HAS_GETHOSTNAME /**/
#$d_uname HAS_UNAME /**/
#$d_phostname HAS_PHOSTNAME
*/
#$d_memchr HAS_MEMCHR /**/
-/* HAS_MMAP:
- * This symbol, if defined, indicates that the mmap system call is
- * available to map a file into memory.
- */
-/* Mmap_t:
- * This symbol holds the return type of the mmap() system call
- * (and simultaneously the type of the first argument).
- * Usually set to 'void *' or 'cadd_t'.
- */
-#$d_mmap HAS_MMAP /**/
-#define Mmap_t $mmaptype /**/
-
/* HAS_MSG:
* This symbol, if defined, indicates that the entire msg*(2) library is
* supported (IPC mechanism based on message queues).
* Checking just with #ifdef might not be enough because this symbol
* has been known to be an enum.
*/
-/* HAS_SENDMSG:
- * This symbol, if defined, indicates that the sendmsg is supported
- * to send messages between sockets. You will also need struct
- * iovec from <sys/uio.h>, HAS_STRUCT_IOVEC and I_SYSUIO.
- */
-/* HAS_RECVMSG:
- * This symbol, if defined, indicates that the recvmsg is supported
- * to send messages between sockets. You will also need struct
- * iovec from <sys/uio.h>, HAS_STRUCT_IOVEC and I_SYSUIO.
- */
-/* HAS_STRUCT_MSGHDR:
- * This symbol, if defined, indicates that the struct msghdr
- * (BSD 4.3 or 4.4) is supported. You will also need struct
- * iovec from <sys/uio.h>, HAS_STRUCT_IOVEC and I_SYSUIO.
- */
-/* HAS_STRUCT_CMSGHDR:
- * This symbol, if defined, indicates that the struct cmsghdr
- * (BSD 4.4) is supported. You will also need struct
- * iovec from <sys/uio.h>, HAS_STRUCT_IOVEC and I_SYSUIO.
- */
#$d_socket HAS_SOCKET /**/
#$d_sockpair HAS_SOCKETPAIR /**/
#$d_msg_ctrunc HAS_MSG_CTRUNC /**/
#$d_msg_peek HAS_MSG_PEEK /**/
#$d_msg_proxy HAS_MSG_PROXY /**/
#$d_scm_rights HAS_SCM_RIGHTS /**/
-#$d_sendmsg HAS_SENDMSG /**/
-#$d_recvmsg HAS_RECVMSG /**/
-#$d_msghdr_s HAS_STRUCT_MSGHDR /**/
-#$d_cmsghdr_s HAS_STRUCT_CMSGHDR /**/
/* USE_STAT_BLOCKS:
* This symbol is defined if this system has a stat structure declaring
* st_blksize and st_blocks.
*/
+#ifndef USE_STAT_BLOCKS
#$d_statblks USE_STAT_BLOCKS /**/
+#endif
/* HAS_STRERROR:
* This symbol, if defined, indicates that the strerror routine is
#define M_VOID /* Xenix strikes again */
#endif
+/* HAS_ATOLF:
+ * This symbol, if defined, indicates that the atolf routine is
+ * available to convert strings into long doubles.
+ */
+#$d_atolf HAS_ATOLF /**/
+
+/* HAS_ATOLL:
+ * This symbol, if defined, indicates that the atoll routine is
+ * available to convert strings into long longs.
+ */
+#$d_atoll HAS_ATOLL /**/
+
+/* PERL_BINCOMPAT_5005:
+ * This symbol, if defined, indicates that Perl 5.006 should be
+ * binary-compatible with Perl 5.005. This is impossible for builds
+ * that use features like threads and multiplicity it is always $undef
+ * for those versions.
+ */
+#$d_bincompat5005 PERL_BINCOMPAT_5005 /**/
+
/* DLSYM_NEEDS_UNDERSCORE:
* This symbol, if defined, indicates that we need to prepend an
* underscore to the symbol name before calling dlsym(). This only
*/
#$d_endspent HAS_ENDSPENT /**/
+/* HAS_STRUCT_FS_DATA:
+ * This symbol, if defined, indicates that the struct fs_data
+ * to do statfs() is supported.
+ */
+#$d_fs_data_s HAS_STRUCT_FS_DATA /**/
+
/* HAS_FSEEKO:
* This symbol, if defined, indicates that the fseeko routine is
* available to fseek beyond 32 bits (useful for ILP32 hosts).
*/
#$d_fseeko HAS_FSEEKO /**/
+/* HAS_FSTATFS:
+ * This symbol, if defined, indicates that the fstatfs routine is
+ * available to stat filesystems by file descriptors.
+ */
+#$d_fstatfs HAS_FSTATFS /**/
/* HAS_FTELLO:
* This symbol, if defined, indicates that the ftello routine is
* available to ftell beyond 32 bits (useful for ILP32 hosts).
*/
#$d_ftello HAS_FTELLO /**/
+/* HAS_GETMNT:
+ * This symbol, if defined, indicates that the getmnt routine is
+ * available to get filesystem mount info by filename.
+ */
+#$d_getmnt HAS_GETMNT /**/
+
/* HAS_GETMNTENT:
* This symbol, if defined, indicates that the getmntent routine is
- * available to iterate through mounted file systems.
+ * available to iterate through mounted file systems to get their info.
*/
#$d_getmntent HAS_GETMNTENT /**/
*/
#$d_hasmntopt HAS_HASMNTOPT /**/
-/* HAS_MADVISE:
- * This symbol, if defined, indicates that the madvise system call is
- * available to map a file into memory.
- */
-#$d_madvise HAS_MADVISE /**/
-
-/* HAS_MPROTECT:
- * This symbol, if defined, indicates that the mprotect system call is
- * available to modify the access protection of a memory mapped file.
- */
-#$d_mprotect HAS_MPROTECT /**/
-
-/* HAS_READV:
- * This symbol, if defined, indicates that the readv routine is
- * available to do gather reads. You will also need <sys/uio.h>
- * and there I_SYSUIO.
+/* HAS_LDBL_DIG:
+ * This symbol, if defined, indicates that this system's <float.h>
+ * or <limits.h> defines the symbol LDBL_DIG, which is the number
+ * of significant digits in a long double precision number. Unlike
+ * for DBL_DIG, there's no good guess for LDBL_DIG if it is undefined.
*/
-#$d_readv HAS_READV /**/
+#$d_ldbl_dig HAS_LDBL_DIG /* */
/* HAS_SETSPENT:
* This symbol, if defined, indicates that the setspent system call is
*/
#$d_sfio USE_SFIO /**/
-/* HAS_FSTATFS:
- * This symbol, if defined, indicates that the fstatfs routine is
- * available to stat filesystems of file descriptors.
+/* HAS_SQRTL:
+ * This symbol, if defined, indicates that the sqrtl routine is
+ * available to do long double square roots.
*/
-/* HAS_STRUCT_STATFS_FLAGS:
+#$d_sqrtl HAS_SQRTL /**/
+
+/* 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 holding the file.
- * This kind of struct statfs is coming from sys/mount.h (BSD),
- * not from sys/statfs.h (SYSV).
+ * the filesystem containing the file.
+ * This kind of struct statfs is coming from <sys/mount.h> (BSD 4.3),
+ * not from <sys/statfs.h> (SYSV). Older BSDs (like Ultrix) do not
+ * have statfs() and struct statfs, they have ustat() and getmnt()
+ * with struct ustat and struct fs_data.
*/
-#$d_fstatfs HAS_FSTATFS /**/
-#$d_statfsflags HAS_STRUCT_STATFS_FLAGS /**/
+#$d_statfs_f_flags HAS_STRUCT_STATFS_F_FLAGS /**/
+
+/* HAS_STRUCT_STATFS:
+ * This symbol, if defined, indicates that the struct statfs
+ * to do statfs() is supported.
+ */
+#$d_statfs_s HAS_STRUCT_STATFS /**/
/* HAS_FSTATVFS:
* This symbol, if defined, indicates that the fstatvfs routine is
- * available to stat filesystems of file descriptors.
+ * available to stat filesystems by file descriptors.
*/
#$d_fstatvfs HAS_FSTATVFS /**/
*/
#$d_telldirproto HAS_TELLDIR_PROTO /**/
-/* HAS_WRITEV:
- * This symbol, if defined, indicates that the writev routine is
- * available to do scatter writes.
- */
-#$d_writev HAS_WRITEV /**/
-
-/* HAS_DBMINIT64:
- * This symbol, if defined, indicates that the dbminit64 routine is
- * available to open dbm files larger than 2 gigabytes.
+/* HAS_USTAT:
+ * This symbol, if defined, indicates that the ustat system call is
+ * available to query file system statistics by dev_t.
*/
-/* HAS_DBMCLOSE64:
- * This symbol, if defined, indicates that the dbmclose64 routine is
- * available to close dbm files larger than 2 gigabytes.
- */
-/* HAS_FETCH64:
- * This symbol, if defined, indicates that the fetch64 routine is
- * available to fetch from dbm files larger than 2 gigabytes.
- */
-/* HAS_STORE64:
- * This symbol, if defined, indicates that the store64 routine is
- * available to store to dbm files larger than 2 gigabytes.
- */
-/* HAS_DELETE64:
- * This symbol, if defined, indicates that the delete64 routine is
- * available to delete from dbm files larger than 2 gigabytes.
- */
-/* HAS_FIRSTKEY64:
- * This symbol, if defined, indicates that the firstkey64 routine is
- * available to firstkey in dbm files larger than 2 gigabytes.
- */
-/* HAS_NEXTKEY64:
- * This symbol, if defined, indicates that the nextkey64 routine is
- * available to nextkey in dbm files larger than 2 gigabytes.
- */
-#$d_dbminit64 HAS_DBMINIT64 /**/
-#$d_dbmclose64 HAS_DBMCLOSE64 /**/
-#$d_fetch64 HAS_FETCH64 /**/
-#$d_store64 HAS_STORE64 /**/
-#$d_delete64 HAS_DELETE64 /**/
-#$d_firstkey64 HAS_FIRSTKEY64 /**/
-#$d_nextkey64 HAS_NEXTKEY64 /**/
+#$d_ustat HAS_USTAT /**/
/* USE_DYNAMIC_LOADING:
* This symbol, if defined, indicates that dynamic loading of
*/
#$i_socks I_SOCKS /**/
-/* I_SYS_MMAN:
- * This symbol, if defined, indicates that <sys/mman.h> exists and
- * should be included.
- */
-#$i_sysmman I_SYS_MMAN /**/
-
/* I_SYS_MOUNT:
* This symbol, if defined, indicates that <sys/mount.h> exists and
* should be included.
*/
#$i_sysmount I_SYS_MOUNT /**/
+/* I_SYS_STATFS:
+ * This symbol, if defined, indicates that <sys/statfs.h> exists.
+ */
+#$i_sysstatfs I_SYS_STATFS /**/
+
/* I_SYS_STATVFS:
* This symbol, if defined, indicates that <sys/statvfs.h> exists and
* should be included.
*/
#$i_sysstatvfs I_SYS_STATVFS /**/
-/* HAS_FSTAT64:
- * This symbol, if defined, indicates that the fstat64 routine is
- * available to stat files (fds) larger than 2 gigabytes.
+/* I_SYS_VFS:
+ * This symbol, if defined, indicates that <sys/vfs.h> exists and
+ * should be included.
+ */
+#$i_sysvfs I_SYS_VFS /**/
+
+/* I_USTAT:
+ * This symbol, if defined, indicates that <ustat.h> exists and
+ * should be included.
+ */
+#$i_ustat I_USTAT /**/
+
+/* HAS_OFF64_T:
+ * This symbol will be defined if the C compiler supports off64_t.
+ */
+/* HAS_FPOS64_T:
+ * This symbol will be defined if the C compiler supports fpos64_t.
*/
-/* HAS_FTRUNCATE64:
- * This symbol, if defined, indicates that the ftruncate64 routine is
- * available to tell files larger than 2 gigabytes.
+#$d_off64_t HAS_OFF64_T /**/
+#$d_fpos64_t HAS_FPOS64_T /**/
+
+/* PERL_PRIfldbl:
+ * This symbol, if defined, contains the string used by stdio to
+ * format long doubles (format 'f') for output.
*/
-/* HAS_LSEEK64:
- * This symbol, if defined, indicates that the lseek64 routine is
- * available to seek files larger than 2 gigabytes.
+/* PERL_PRIgldbl:
+ * This symbol, if defined, contains the string used by stdio to
+ * format long doubles (format 'g') for output.
*/
-/* HAS_LSTAT64:
- * This symbol, if defined, indicates that the lstat64 routine is
- * available to stat files (symlinks) larger than 2 gigabytes.
+#$d_PRIfldbl PERL_PRIfldbl $sPRIfldbl /**/
+#$d_PRIgldbl PERL_PRIgldbl $sPRIgldbl /**/
+
+/* IVTYPE:
+ * This symbol defines the C type used for Perl's IV.
*/
-/* HAS_OPEN64:
- * This symbol, if defined, indicates that the open64 routine is
- * available to open files larger than 2 gigabytes.
+/* UVTYPE:
+ * This symbol defines the C type used for Perl's UV.
*/
-/* HAS_OPENDIR64:
- * This symbol, if defined, indicates that the opendir64 routine is
- * available to opendir files larger than 2 gigabytes.
+/* I8TYPE:
+ * This symbol defines the C type used for Perl's I8.
*/
-/* HAS_READDIR64:
- * This symbol, if defined, indicates that the readdir64 routine is
- * available to readdir files larger than 2 gigabytes.
+/* U8TYPE:
+ * This symbol defines the C type used for Perl's U8.
*/
-/* HAS_SEEKDIR64:
- * This symbol, if defined, indicates that the seekdir64 routine is
- * available to seekdir files larger than 2 gigabytes.
+/* I16TYPE:
+ * This symbol defines the C type used for Perl's I16.
*/
-/* HAS_STAT64:
- * This symbol, if defined, indicates that the stat64 routine is
- * available to stat files larger than 2 gigabytes.
+/* U16TYPE:
+ * This symbol defines the C type used for Perl's U16.
*/
-/* HAS_TELLDIR64:
- * This symbol, if defined, indicates that the telldir64 routine is
- * available to telldir files larger than 2 gigabytes.
+/* I32TYPE:
+ * This symbol defines the C type used for Perl's I32.
*/
-/* HAS_TRUNCATE64:
- * This symbol, if defined, indicates that the truncate64 routine is
- * available to truncate files larger than 2 gigabytes.
+/* U32TYPE:
+ * This symbol defines the C type used for Perl's U32.
*/
-/* HAS_OFF64_T:
- * This symbol will be defined if the C compiler supports off64_t.
+/* I64TYPE:
+ * This symbol defines the C type used for Perl's I64.
+ */
+/* U64TYPE:
+ * This symbol defines the C type used for Perl's U64.
+ */
+/* NVTYPE:
+ * This symbol defines the C type used for Perl's NV.
+ */
+/* IVSIZE:
+ * This symbol contains the sizeof(IV).
+ */
+/* UVSIZE:
+ * This symbol contains the sizeof(UV).
+ */
+/* I8SIZE:
+ * This symbol contains the sizeof(I8).
+ */
+/* U8SIZE:
+ * This symbol contains the sizeof(U8).
+ */
+/* I16SIZE:
+ * This symbol contains the sizeof(I16).
+ */
+/* U16SIZE:
+ * This symbol contains the sizeof(U16).
*/
-/* HAS_STRUCT_DIRENT64:
- * This symbol will be defined if the C compiler supports struct dirent64.
- */
-#$d_fstat64 HAS_FSTAT64 /**/
-#$d_ftruncate64 HAS_FTRUNCATE64 /**/
-#$d_lseek64 HAS_LSEEK64 /**/
-#$d_lstat64 HAS_LSTAT64 /**/
-#$d_open64 HAS_OPEN64 /**/
-#$d_opendir64 HAS_OPENDIR64 /**/
-#$d_readdir64 HAS_READDIR64 /**/
-#$d_seekdir64 HAS_SEEKDIR64 /**/
-#$d_stat64 HAS_STAT64 /**/
-#$d_telldir64 HAS_TELLDIR64 /**/
-#$d_truncate64 HAS_TRUNCATE64 /**/
-#$d_off64_t HAS_OFF64_T /**/
-#$d_dirent64_s HAS_STRUCT_DIRENT64 /**/
+/* I32SIZE:
+ * This symbol contains the sizeof(I32).
+ */
+/* U32SIZE:
+ * This symbol contains the sizeof(U32).
+ */
+/* I64SIZE:
+ * This symbol contains the sizeof(I64).
+ */
+/* U64SIZE:
+ * This symbol contains the sizeof(U64).
+ */
+/* NVSIZE:
+ * This symbol contains the sizeof(NV).
+ */
+#define IVTYPE $ivtype /**/
+#define UVTYPE $uvtype /**/
+#define I8TYPE $i8type /**/
+#define U8TYPE $u8type /**/
+#define I16TYPE $i16type /**/
+#define U16TYPE $u16type /**/
+#define I32TYPE $i32type /**/
+#define U32TYPE $u32type /**/
+#ifdef HAS_QUAD
+#define I64TYPE $i64type /**/
+#define U64TYPE $u64type /**/
+#endif
+#define NVTYPE $nvtype /**/
+#define IVSIZE $ivsize /**/
+#define UVSIZE $uvsize /**/
+#define I8SIZE $i8size /**/
+#define U8SIZE $u8size /**/
+#define I16SIZE $i16size /**/
+#define U16SIZE $u16size /**/
+#define I32SIZE $i32size /**/
+#define U32SIZE $u32size /**/
+#ifdef HAS_QUAD
+#define I64SIZE $i64size /**/
+#define U64SIZE $u64size /**/
+#endif
+#define NVSIZE $nvsize /**/
+
+/* IVdf:
+ * This symbol defines the format string used for printing a Perl IV
+ * as a signed decimal integer.
+ */
+/* UVuf:
+ * This symbol defines the format string used for printing a Perl UV
+ * as an unsigned decimal integer.
+ */
+/* UVof:
+ * This symbol defines the format string used for printing a Perl UV
+ * as an unsigned octal integer.
+ */
+/* UVxf:
+ * This symbol defines the format string used for printing a Perl UV
+ * as an unsigned hexadecimal integer.
+ */
+#define IVdf $ivdformat /**/
+#define UVuf $uvuformat /**/
+#define UVof $uvoformat /**/
+#define UVxf $uvxformat /**/
/* SELECT_MIN_BITS:
* This symbol holds the minimum number of bits operated by select.
*/
#define STARTPERL "$startperl" /**/
-/* HAS_FGETPOS64:
- * This symbol, if defined, indicates that the fgetpos64 routine is
- * available to getpos files larger than 2 gigabytes.
- */
-/* HAS_FOPEN64:
- * This symbol, if defined, indicates that the fopen64 routine is
- * available to open files larger than 2 gigabytes.
- */
-/* HAS_FREOPEN64:
- * This symbol, if defined, indicates that the freopen64 routine is
- * available to reopen files larger than 2 gigabytes.
- */
-/* HAS_FSEEK64:
- * This symbol, if defined, indicates that the fseek64 routine is
- * available to seek files larger than 2 gigabytes.
- */
-/* HAS_FSEEKO64:
- * This symbol, if defined, indicates that the fseeko64 routine is
- * available to seek files larger than 2 gigabytes.
- */
-/* HAS_FSETPOS64:
- * This symbol, if defined, indicates that the fsetpos64 routine is
- * available to setpos files larger than 2 gigabytes.
- */
-/* HAS_FTELL64:
- * This symbol, if defined, indicates that the ftell64 routine is
- * available to tell files larger than 2 gigabytes.
- */
-/* HAS_FTELLO64:
- * This symbol, if defined, indicates that the ftello64 routine is
- * available to tell files larger than 2 gigabytes.
- */
-/* HAS_TMPFILE64:
- * This symbol, if defined, indicates that the tmpfile64 routine is
- * available to tmpfile files larger than 2 gigabytes.
- */
-#$d_fgetpos64 HAS_FGETPOS64 /**/
-#$d_fopen64 HAS_FOPEN64 /**/
-#$d_freopen64 HAS_FREOPEN64 /**/
-#$d_fseek64 HAS_FSEEK64 /**/
-#$d_fseeko64 HAS_FSEEKO64 /**/
-#$d_fsetpos64 HAS_FSETPOS64 /**/
-#$d_ftell64 HAS_FTELL64 /**/
-#$d_ftello64 HAS_FTELLO64 /**/
-#$d_tmpfile64 HAS_TMPFILE64 /**/
-
/* HAS_STDIO_STREAM_ARRAY:
* This symbol, if defined, tells that there is an array
* holding the stdio streams.
#$d_stdio_stream_array HAS_STDIO_STREAM_ARRAY /**/
#define STDIO_STREAM_ARRAY $stdio_stream_array
+/* HAS_STRTOULL:
+ * This symbol, if defined, indicates that the strtoull routine is
+ * available to convert strings into unsigned long longs.
+ */
+#$d_strtoull HAS_STRTOULL /**/
+
/* USE_64_BITS:
* This symbol, if defined, indicates that 64-bit interfaces should
* be used when available. If not defined, the native default interfaces
* will be used (be they 32 or 64 bits).
*/
+#ifndef USE_64_BITS
#$use64bits USE_64_BITS /**/
+#endif
+
+/* USE_LARGE_FILES:
+ * This symbol, if defined, indicates that large file support
+ * should be used when available. The USE_64_BITS symbol will
+ * also be turned on if necessary.
+ */
+#ifndef USE_LARGE_FILES
+#$uselargefiles USE_LARGE_FILES /**/
+#endif
+
+/* USE_LONG_DOUBLE:
+ * This symbol, if defined, indicates that long doubles should
+ * be used when available.
+ */
+#ifndef USE_LONG_DOUBLE
+#$uselongdouble USE_LONG_DOUBLE /**/
+#endif
+
+/* USE_LONG_LONG:
+ * This symbol, if defined, indicates that long longs should
+ * be used when available.
+ */
+#ifndef USE_LONG_LONG
+#$uselonglong USE_LONG_LONG /**/
+#endif
+
+#ifndef USE_MORE_BITS
+#$usemorebits USE_MORE_BITS /**/
+#endif
/* MULTIPLICITY:
* This symbol, if defined, indicates that Perl should
* be built to use multiplicity.
*/
+#ifndef MULTIPLICTY
#$usemultiplicity MULTIPLICITY /**/
+#endif
/* 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
#$useperlio USE_PERLIO /**/
+#endif
/* USE_SOCKS:
* This symbol, if defined, indicates that Perl should
* be built to use socks.
*/
+#ifndef USE_SOCKS
#$usesocks USE_SOCKS /**/
+#endif
+
+/* PERL_XS_APIVERSION:
+ * This variable contains the version of the oldest perl binary
+ * compatible with the present perl. perl.c:incpush() and
+ * lib/lib.pm will automatically search in $sitearch for older
+ * directories across major versions back to xs_apiversion.
+ * This is only useful if you have a perl library directory tree
+ * structured like the default one.
+ * See INSTALL for how this works.
+ * The versioned site_perl directory was introduced in 5.005,
+ * so that is the lowest possible value.
+ * Since this can depend on compile time options (such as
+ * bincompat) it is set by Configure. Other non-default sources
+ * of potential incompatibility, such as multiplicity, threads,
+ * debugging, 64bits, sfio, etc., are not checked for currently,
+ * though in principle we could go snooping around in old
+ * Config.pm files.
+ */
+/* PERL_PM_APIVERSION:
+ * This variable contains the version of the oldest perl
+ * compatible with the present perl. (That is, pure perl modules
+ * written for pm_apiversion will still work for the current
+ * version). perl.c:incpush() and lib/lib.pm will automatically
+ * search in $sitelib for older directories across major versions
+ * back to pm_apiversion. This is only useful if you have a perl
+ * library directory tree structured like the default one. The
+ * versioned site_perl library was introduced in 5.005, so that's
+ * the default setting for this variable. It's hard to imagine
+ * it changing before Perl6. It is included here for symmetry
+ * with xs_apiveprsion -- the searching algorithms will
+ * (presumably) be similar.
+ * See the INSTALL file for how this works.
+ */
+#define PERL_XS_APIVERSION $xs_apiversion /* Change to string for tuples?*/
+#define PERL_PM_APIVERSION $pm_apiversion /* Change to string for tuples?*/
/* HAS_DRAND48_PROTO:
* This symbol, if defined, indicates that the system provides
*/
#$i_machcthr I_MACH_CTHREADS /**/
+/* I_PTHREAD:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <pthread.h>.
+ */
+#$i_pthread I_PTHREAD /**/
+
/* USE_THREADS:
* This symbol, if defined, indicates that Perl should
* be built to use threads.
* This symbol, if defined, indicates that Perl should
* be built to use the old draft POSIX threads API.
*/
+#ifndef USE_TTHREADS
#$usethreads USE_THREADS /**/
+#endif
#$d_oldpthreads OLD_PTHREADS_API /**/
/* Time_t:
*/
#define Fpos_t $fpostype /* File position type */
+/* Gid_t_f:
+ * This symbol defines the format string used for printing a Gid_t.
+ */
+#define Gid_t_f $gidformat /**/
+
/* Gid_t:
* This symbol holds the return type of getgid() and the type of
* argument to setrgid() and related functions. Typically,
*/
#define Size_t $sizetype /* length paramater for string functions */
+/* Uid_t_f:
+ * This symbol defines the format string used for printing a Uid_t.
+ */
+#define Uid_t_f $uidformat /**/
+
/* 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