This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Microperl tweaks.
[perl5.git] / uconfig.h
index e547a9f..8766659 100644 (file)
--- a/uconfig.h
+++ b/uconfig.h
  */
 /*#define HAS_UMASK            / **/
 
+/* HAS_USLEEP:
+ *     This symbol, if defined, indicates that the usleep routine is
+ *     available to let the process sleep on a sub-second accuracy.
+ */
+/*#define HAS_USLEEP           / **/
+
 /* HASVOLATILE:
  *     This symbol, if defined, indicates that this C compiler knows about
  *     the volatile declaration.
  *     This symbol, if defined, indicates that <sys/ioctl.h> exists and should
  *     be included. Otherwise, include <sgtty.h> or <termio.h>.
  */
+/* I_SYS_SOCKIO:
+ *     This symbol, if defined, indicates the <sys/sockio.h> should be included
+ *     to get socket ioctl options, like SIOCATMARK.
+ */
 /*#define      I_SYS_IOCTL             / **/
+/*#define I_SYS_SOCKIO / **/
 
 /* I_SYS_NDIR:
  *     This symbol, if defined, indicates to the C program that it should
  *     preprocessor can make decisions based on it.
  */
 #define INTSIZE 1              /**/
-#define LONGSIZE 1             /**/
+#define LONGSIZE 4             /**/
 #define SHORTSIZE 1            /**/
 
 /* MULTIARCH:
  *     by Configure.  You shouldn't rely on it too much; the specific
  *     feature tests from Configure are generally more reliable.
  */
+/* OSVERS:
+ *     This symbol contains the version of the operating system, as determined
+ *     by Configure.  You shouldn't rely on it too much; the specific
+ *     feature tests from Configure are generally more reliable.
+ */
 #define OSNAME "unknown"               /**/
+#define OSVERS ""              /**/
 
 /* MEM_ALIGNBYTES:
  *     This symbol contains the number of bytes required to align a
  *     This symbol contains the ~name expanded version of ARCHLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-/*#define ARCHLIB "/usr/local/lib/perl5/5.6/unknown"           / **/
-/*#define ARCHLIB_EXP "/usr/local/lib/perl5/5.6/unknown"               / **/
+/*#define ARCHLIB "/usr/local/lib/perl5/5.7/unknown"           / **/
+/*#define ARCHLIB_EXP "/usr/local/lib/perl5/5.7/unknown"               / **/
 
 /* ARCHNAME:
  *     This symbol holds a string representing the architecture name.
 #    define BYTEORDER 0x4321
 #  endif
 #else
-#define BYTEORDER 0x12 /* large digits for MSB */
+#define BYTEORDER 0x1234       /* large digits for MSB */
 #endif /* NeXT */
 
 /* CAT2:
 #define CPPRUN ""
 #define CPPLAST ""
 
+/* 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           / **/
+
 /* HAS_ACCESS:
  *     This manifest constant lets the C program know that the access()
  *     system call is available to check for accessibility using real UID/GID.
  */
 /*#define VOID_CLOSEDIR                / **/
 
+/* HAS_STRUCT_CMSGHDR:
+ *     This symbol, if defined, indicates that the struct cmsghdr
+ *     is supported.
+ */
+/*#define HAS_STRUCT_CMSGHDR   / **/
+
 /* HAS_CSH:
  *     This symbol, if defined, indicates that the C-shell exists.
  */
  */
 /*#define HAS_ENDSERVENT               / **/
 
+/* 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               / **/
+
 /* HAS_FD_SET:
  *     This symbol, when defined, indicates presence of the fd_set typedef
  *     in <sys/types.h>
  */
 /*#define HAS_FSTATFS          / **/
 
+/* 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            / **/
+
 /* HAS_FTELLO:
  *     This symbol, if defined, indicates that the ftello routine is
  *     available to ftell beyond 32 bits (useful for ILP32 hosts).
  */
 /*#define      HAS_GETHOST_PROTOS      / **/
 
+/* HAS_GETITIMER:
+ *     This symbol, if defined, indicates that the getitimer routine is
+ *     available to return interval timers.
+ */
+/*#define HAS_GETITIMER                / **/
+
 /* HAS_GETMNT:
  *     This symbol, if defined, indicates that the getmnt routine is
  *     available to get filesystem mount info by filename.
  */
 /*#define HAS_GETPROTOENT              / **/
 
+/* HAS_GETPGRP:
+ *     This symbol, if defined, indicates that the getpgrp routine is
+ *     available to get the current process group.
+ */
+/* USE_BSD_GETPGRP:
+ *     This symbol, if defined, indicates that getpgrp needs one
+ *     arguments whereas USG one needs none.
+ */
+/*#define HAS_GETPGRP          / **/
+/*#define USE_BSD_GETPGRP      / **/
+
 /* HAS_GETPROTOBYNAME:
  *     This symbol, if defined, indicates that the getprotobyname()
  *     routine is available to look up protocols by their name.
  */
 /*#define HAS_MSG              / **/
 
+/* HAS_STRUCT_MSGHDR:
+ *     This symbol, if defined, indicates that the struct msghdr
+ *     is supported.
+ */
+/*#define HAS_STRUCT_MSGHDR    / **/
+
 /* HAS_OFF64_T:
  *     This symbol will be defined if the C compiler supports off64_t.
  */
 #define SCHED_YIELD    sched_yield()   /**/
 /*#define HAS_SCHED_YIELD      / **/
 
+/* HAS_READV:
+ *     This symbol, if defined, indicates that the readv routine is
+ *     available to do gather reads.  You will also need <sys/uio.h>
+ *     and there I_SYSUIO.
+ */
+/*#define HAS_READV            / **/
+
+/* HAS_RECVMSG:
+ *     This symbol, if defined, indicates that the recvmsg routine is
+ *     available to send structured socket messages.
+ */
+/*#define HAS_RECVMSG          / **/
+
 /* HAS_SAFE_BCOPY:
  *     This symbol, if defined, indicates that the bcopy routine is available
  *     to copy potentially overlapping memory blocks. Otherwise you should
  */
 /*#define HAS_SANE_MEMCMP      / **/
 
+/* HAS_SBRK_PROTO:
+ *     This symbol, if defined, indicates that the system provides
+ *     a prototype for the sbrk() function.  Otherwise, it is up
+ *     to the program to supply one.  Good guesses are
+ *             extern void* sbrk _((int));
+ *             extern void* sbrk _((size_t));
+ */
+/*#define      HAS_SBRK_PROTO  / **/
+
 /* HAS_SEM:
  *     This symbol, if defined, indicates that the entire sem*(2) library is
  *     supported.
  */
 /*#define HAS_SEM              / **/
 
+/* HAS_SENDMSG:
+ *     This symbol, if defined, indicates that the sendmsg routine is
+ *     available to send structured socket messages.
+ */
+/*#define HAS_SENDMSG          / **/
+
 /* HAS_SETGRENT:
  *     This symbol, if defined, indicates that the setgrent routine is
  *     available for initializing sequential access of the group database.
  */
 /*#define HAS_SETHOSTENT               / **/
 
+/* HAS_SETITIMER:
+ *     This symbol, if defined, indicates that the setitimer routine is
+ *     available to set interval timers.
+ */
+/*#define HAS_SETITIMER                / **/
+
 /* HAS_SETNETENT:
  *     This symbol, if defined, indicates that the setnetent() routine is
  *     available.
  */
 /*#define HAS_SETPROTOENT              / **/
 
+/* HAS_SETPGRP:
+ *     This symbol, if defined, indicates that the setpgrp routine is
+ *     available to set the current process group.
+ */
+/* USE_BSD_SETPGRP:
+ *     This symbol, if defined, indicates that setpgrp needs two
+ *     arguments whereas USG one needs none.  See also HAS_SETPGID
+ *     for a POSIX interface.
+ */
+/*#define HAS_SETPGRP          / **/
+/*#define USE_BSD_SETPGRP      / **/
+
 /* HAS_SETPROCTITLE:
  *     This symbol, if defined, indicates that the setproctitle routine is
  *     available to set process title.
 /*#define USE_STDIO_PTR        / **/
 #ifdef USE_STDIO_PTR
 #define FILE_ptr(fp)   ((fp)->_IO_read_ptr)
-# STDIO_PTR_LVALUE             /**/
+/*#define STDIO_PTR_LVALUE             / **/
 #define FILE_cnt(fp)   ((fp)->_IO_read_end - (fp)->_IO_read_ptr)
 /*#define STDIO_CNT_LVALUE             / **/
 /*#define STDIO_PTR_LVAL_SETS_CNT      / **/
  *     This symbol, if defined, indicates that the strtoq routine is
  *     available to convert strings to long longs (quads).
  */
-# HAS_STRTOQ           /**/
+/*#define HAS_STRTOQ           / **/
 
-/* HAS_STRTOQ:
- *     This symbol, if defined, indicates that the strtoq routine is
- *     available to convert strings to long longs (quads).
+/* HAS_STRTOUL:
+ *     This symbol, if defined, indicates that the strtoul routine is
+ *     available to provide conversion of strings to unsigned long.
  */
-# HAS_STRTOQ           /**/
+/*#define HAS_STRTOUL  / **/
 
 /* HAS_STRTOULL:
  *     This symbol, if defined, indicates that the strtoull routine is
  */
 /*#define HAS_TIMES            / **/
 
+/* HAS_UALARM:
+ *     This symbol, if defined, indicates that the ualarm routine is
+ *     available to do alarms with microsecond granularity.
+ */
+/*#define HAS_UALARM           / **/
+
 /* HAS_UNION_SEMUN:
  *     This symbol, if defined, indicates that the union semun is
  *     defined by including <sys/sem.h>.  If not, the user code
 #define HAS_VPRINTF    /**/
 /*#define USE_CHAR_VSPRINTF    / **/
 
+/* HAS_WRITEV:
+ *     This symbol, if defined, indicates that the writev routine is
+ *     available to do scatter writes.
+ */
+/*#define HAS_WRITEV           / **/
+
 /* USE_DYNAMIC_LOADING:
  *     This symbol, if defined, indicates that dynamic loading of
  *     some sort is available.
  *     This symbol contains the size of a double, so that the C preprocessor
  *     can make decisions based on it.
  */
-#define DOUBLESIZE 1           /**/
+#define DOUBLESIZE 8           /**/
 
 /* EBCDIC:
  *     This symbol, if defined, indicates that this system uses
 #define RD_NODATA -1
 #undef EOF_NONBLOCK
 
+/* NEED_VA_COPY:
+ *     This symbol, if defined, indicates that the system stores
+ *     the variable argument list datatype, va_list, in a format
+ *     that cannot be copied by simple assignment, so that some
+ *     other means must be used when copying is required.
+ *     As such systems vary in their provision (or non-provision)
+ *     of copying mechanisms, handy.h defines a platform-
+ *     independent macro, Perl_va_copy(src, dst), to do the job.
+ */
+/*#define      NEED_VA_COPY            / **/
+
 /* Netdb_host_t:
  *     This symbol holds the type used for the 1st argument
  *     to gethostbyaddr().
 #endif
 #define        NVSIZE          8               /**/
 #undef NV_PRESERVES_UV
-#define        NV_PRESERVES_UV_BITS    
+#define        NV_PRESERVES_UV_BITS    0
 
 /* IVdf:
  *     This symbol defines the format string used for printing a Perl IV
  *     This symbol defines the format string used for printing a Perl UV
  *     as an unsigned hexadecimal integer in lowercase abcdef.
  */
+/* UVXf:
+ *     This symbol defines the format string used for printing a Perl UV
+ *     as an unsigned hexadecimal integer in uppercase ABCDEF.
+ */
 /* NVef:
  *     This symbol defines the format string used for printing a Perl NV
  *     using %e-ish floating point format.
 #define        UVuf            "lu"            /**/
 #define        UVof            "lo"            /**/
 #define        UVxf            "lx"            /**/
+#define        UVXf            "lX"            /**/
 #define        NVef            "e"             /**/
 #define        NVff            "f"             /**/
 #define        NVgf            "g"             /**/
  *     This symbol contains the ~name expanded version of PRIVLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define PRIVLIB "/usr/local/lib/perl5/5.6"             /**/
-#define PRIVLIB_EXP "/usr/local/lib/perl5/5.6"         /**/
+#define PRIVLIB "/usr/local/lib/perl5/5.7"             /**/
+#define PRIVLIB_EXP "/usr/local/lib/perl5/5.7"         /**/
 
 /* PTRSIZE:
  *     This symbol contains the size of a pointer, so that the C preprocessor
  *     the compiler supports (void *); otherwise it will be
  *     sizeof(char *).
  */
-#define PTRSIZE 1              /**/
+#define PTRSIZE 4              /**/
 
 /* Drand01:
  *     This macro is to be used to generate uniformly distributed
  *     The last element is 0, corresponding to the 0 at the end of
  *     the sig_name list.
  */
+/* SIG_SIZE:
+ *     This variable contains the number of elements of the sig_name
+ *     and sig_num arrays, excluding the final NULL entry.
+ */
 #define SIG_NAME 0             /**/
 #define SIG_NUM  0             /**/
+#define SIG_SIZE 1                     /**/
 
 /* SITEARCH:
  *     This symbol contains the name of the private library for this package.
  */
 #define STARTPERL ""           /**/
 
+/* STDCHAR:
+ *     This symbol is defined to be the type of char used in stdio.h.
+ *     It has the values "unsigned char" or "char".
+ */
+#define STDCHAR char   /**/
+
 /* HAS_STDIO_STREAM_ARRAY:
  *     This symbol, if defined, tells that there is an array
  *     holding the stdio streams.
 #define PERL_XS_APIVERSION "5.005"
 #define PERL_PM_APIVERSION "5.005"
 
-/* HAS_GETPGRP:
- *     This symbol, if defined, indicates that the getpgrp routine is
- *     available to get the current process group.
- */
-/* USE_BSD_GETPGRP:
- *     This symbol, if defined, indicates that getpgrp needs one
- *     arguments whereas USG one needs none.
- */
-/*#define HAS_GETPGRP          / **/
-/*#define USE_BSD_GETPGRP      / **/
-
-/* HAS_SETPGRP:
- *     This symbol, if defined, indicates that the setpgrp routine is
- *     available to set the current process group.
- */
-/* USE_BSD_SETPGRP:
- *     This symbol, if defined, indicates that setpgrp needs two
- *     arguments whereas USG one needs none.  See also HAS_SETPGID
- *     for a POSIX interface.
- */
-/*#define HAS_SETPGRP          / **/
-/*#define USE_BSD_SETPGRP      / **/
-
-/* HAS_STRTOUL:
- *     This symbol, if defined, indicates that the strtoul routine is
- *     available to provide conversion of strings to unsigned long.
- */
-/*#define HAS_STRTOUL  / **/
-
-/* STDCHAR:
- *     This symbol is defined to be the type of char used in stdio.h.
- *     It has the values "unsigned char" or "char".
- */
-#define STDCHAR char   /**/
-
-/* HAS_STRTOUL:
- *     This symbol, if defined, indicates that the strtoul routine is
- *     available to provide conversion of strings to unsigned long.
+/* 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_STRTOUL  / **/
+/*#define HAS_SIGPROCMASK              / **/
 
-/* STDCHAR:
- *     This symbol is defined to be the type of char used in stdio.h.
- *     It has the values "unsigned char" or "char".
+/* HAS_SOCKATMARK:
+ *     This symbol, if defined, indicates that the sockatmark routine is
+ *     available to test whether a socket is at the out-of-band mark.
  */
-#define STDCHAR char   /**/
+/*#define HAS_SOCKATMARK               / **/
 
-/* HAS__FWALK:
- *     This symbol, if defined, indicates that the _fwalk system call is
- *     available to apply a function to all the file handles.
+/* HAS_STRFTIME:
+ *     This symbol, if defined, indicates that the strftime routine is
+ *     available to do time formatting.
  */
-/*#define HAS__FWALK           / **/
+/*#define HAS_STRFTIME         / **/
 
-/* 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.
+/* U32_ALIGNMENT_REQUIRED:
+ *     This symbol, if defined, indicates that you must access
+ *     character data through U32-aligned pointers.
  */
-/*#define FCNTL_CAN_LOCK               / **/
-
-/* 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.
- */
-# HAS_FSYNC            /**/
-
-/* HAS_SBRK_PROTO:
- *     This symbol, if defined, indicates that the system provides
- *     a prototype for the sbrk() function.  Otherwise, it is up
- *     to the program to supply one.  Good guesses are
- *             extern void* sbrk _((int));
- *             extern void* sbrk _((size_t));
- */
-/*#define      HAS_SBRK_PROTO  / **/
-
-/* NEED_VA_COPY:
- *     This symbol, if defined, indicates that the system stores
- *     the variable argument list datatype, va_list, in a format
- *     that cannot be copied by simple assignment, so that some
- *     other means must be used when copying is required.
- *     As such systems vary in their provision (or non-provision)
- *     of copying mechanisms, handy.h defines a platform-
- *     independent macro, Perl_va_copy(src, dst), to do the job.
- */
-/*#define      NEED_VA_COPY            / **/
+#define U32_ALIGNMENT_REQUIRED /**/
 
 #endif