This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Don't pretend to determine whether ansi2knr is needed
[perl5.git] / Porting / config_H
index 0d32c5d..6e11af8 100644 (file)
  */
 #define HAS_ALARM              /**/
 
-/* HAS_BCMP:
- *     This symbol is defined if the bcmp() routine is available to
- *     compare blocks of memory.
- */
-#define HAS_BCMP       /**/
-
-/* HAS_BCOPY:
- *     This symbol is defined if the bcopy() routine is available to
- *     copy blocks of memory.
- */
-#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      /**/
-
 /* HAS_CHOWN:
  *     This symbol, if defined, indicates that the chown routine is
  *     available.
  */
 #define HAS_MBTOWC             /**/
 
-/* HAS_MEMCMP:
- *     This symbol, if defined, indicates that the memcmp routine is available
- *     to compare blocks of memory.
- */
-#define HAS_MEMCMP     /**/
-
-/* HAS_MEMCPY:
- *     This symbol, if defined, indicates that the memcpy routine is available
- *     to copy blocks of memory.
- */
-#define HAS_MEMCPY     /**/
-
-/* HAS_MEMMOVE:
- *     This symbol, if defined, indicates that the memmove routine is available
- *     to copy potentially overlapping blocks of memory. This should be used
- *     only when HAS_SAFE_BCOPY is not defined. If neither is there, roll your
- *     own version.
+/* HAS_MEMRCHR:
+ *     This symbol, if defined, indicates that the memrchr routine is
+ *     available to return a pointer to the last occurrence of a byte in
+ *     a memory area (or NULL if not found).
  */
-#define HAS_MEMMOVE    /**/
-
-/* HAS_MEMSET:
- *     This symbol, if defined, indicates that the memset routine is available
- *     to set blocks of memory.
- */
-#define HAS_MEMSET     /**/
+#define HAS_MEMRCHR            /**/
 
 /* HAS_MKDIR:
  *     This symbol, if defined, indicates that the mkdir routine is available
  */
 /*#define I_VFORK      / **/
 
-/* CAN_VAPROTO:
- *     This variable is defined on systems supporting prototype declaration
- *     of functions with a variable number of arguments.
- */
-/* _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 CAN_VAPROTO    /**/
-#ifdef CAN_VAPROTO
-#define        _V(args) args
-#else
-#define        _V(args) ()
-#endif
-
 /* INTSIZE:
  *     This symbol contains the value of sizeof(int) so that the C
  *     preprocessor can make decisions based on it.
  *     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 "/pro/lib/perl5/5.23.4/i686-linux-64int-ld"            /**/
-#define ARCHLIB_EXP "/pro/lib/perl5/5.23.4/i686-linux-64int-ld"                /**/
+#define ARCHLIB "/pro/lib/perl5/5.27.6/i686-linux-64int-ld"            /**/
+#define ARCHLIB_EXP "/pro/lib/perl5/5.27.6/i686-linux-64int-ld"                /**/
 
 /* ARCHNAME:
  *     This symbol holds a string representing the architecture name.
 /*#define HAS_READDIR_R           / **/
 #define READDIR_R_PROTO 0         /**/
 
-/* 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_SETGRENT_R:
  *     This symbol, if defined, indicates that the setgrent_r routine
  *     is available to setgrent re-entrantly.
 /*#define HAS_TTYNAME_R           / **/
 #define TTYNAME_R_PROTO 0         /**/
 
-/* 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.
  *     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 "/pro/lib/perl5/5.23.4"                /**/
-#define PRIVLIB_EXP "/pro/lib/perl5/5.23.4"            /**/
+#define PRIVLIB "/pro/lib/perl5/5.27.6"                /**/
+#define PRIVLIB_EXP "/pro/lib/perl5/5.27.6"            /**/
 
 /* PTRSIZE:
  *     This symbol contains the size of a pointer, so that the C preprocessor
  *     This symbol contains the ~name expanded version of SITEARCH, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define SITEARCH "/pro/lib/perl5/site_perl/5.23.4/i686-linux-64int-ld"         /**/
-#define SITEARCH_EXP "/pro/lib/perl5/site_perl/5.23.4/i686-linux-64int-ld"             /**/
+#define SITEARCH "/pro/lib/perl5/site_perl/5.27.6/i686-linux-64int-ld"         /**/
+#define SITEARCH_EXP "/pro/lib/perl5/site_perl/5.27.6/i686-linux-64int-ld"             /**/
 
 /* SITELIB:
  *     This symbol contains the name of the private library for this package.
  *     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 "/pro/lib/perl5/site_perl/5.23.4"              /**/
-#define SITELIB_EXP "/pro/lib/perl5/site_perl/5.23.4"          /**/
+#define SITELIB "/pro/lib/perl5/site_perl/5.27.6"              /**/
+#define SITELIB_EXP "/pro/lib/perl5/site_perl/5.27.6"          /**/
 #define SITELIB_STEM "/pro/lib/perl5/site_perl"                /**/
 
 /* SSize_t:
 #define LONGLONGSIZE 8         /**/
 #endif
 
-/* HAS_MEMCHR:
- *     This symbol, if defined, indicates that the memchr routine is available
- *     to locate characters within a C string.
- */
-#define HAS_MEMCHR     /**/
-
 /* HAS_MKSTEMP:
  *     This symbol, if defined, indicates that the mkstemp routine is
  *     available to exclusively create and open a uniquely named
 #define USE_STAT_BLOCKS        /**/
 #endif
 
-/* USE_STRUCT_COPY:
- *     This symbol, if defined, indicates that this C compiler knows how
- *     to copy structures.  If undefined, you'll need to use a block copy
- *     routine of some sort instead.
- */
-#define        USE_STRUCT_COPY /**/
-
 /* HAS_STRERROR:
  *     This symbol, if defined, indicates that the strerror routine is
  *     available to translate error numbers to strings. See the writeup
  */
 #define Signal_t void  /* Signal handler's return type */
 
-/* HASVOLATILE:
- *     This symbol, if defined, indicates that this C compiler knows about
- *     the volatile declaration.
- */
-#define        HASVOLATILE     /**/
-#ifndef HASVOLATILE
-#define volatile
-#endif
-
 /* I_DIRENT:
  *     This symbol, if defined, indicates to the C program that it should
  *     include <dirent.h>. Using this symbol also triggers the definition
  */
 #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   / **/
+
 /* 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            /**/
+
 /* HAS_FSYNC:
  *     This symbol, if defined, indicates that the fsync routine is
  *     available to write a file's modified data and attributes to
  */
 /*#define HAS_GETESPWNAM               / **/
 
+/* HAS_GETFSSTAT:
+ *     This symbol, if defined, indicates that the getfsstat routine is
+ *     available to stat filesystems in bulk.
+ */
+/*#define HAS_GETFSSTAT                / **/
+
 /* 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           / **/
+
+/* HAS_GETMNTENT:
+ *     This symbol, if defined, indicates that the getmntent routine is
+ *     available to iterate through mounted file systems to get their info.
+ */
+#define HAS_GETMNTENT          /**/
+
 /* HAS_GETNAMEINFO:
  *     This symbol, if defined, indicates that the getnameinfo() function
  *     is available for use.
  */
 #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          /**/
+
 /* HAS_ILOGBL:
  *     This symbol, if defined, indicates that the ilogbl routine is
  *     available.  If scalbnl is also present we can emulate frexpl.
 /*#define      USE_SITECUSTOMIZE               / **/
 #endif
 
-/* HAS_SNPRINTF:
- *     This symbol, if defined, indicates that the snprintf () library
- *     function is available for use.
- */
-/* HAS_VSNPRINTF:
- *     This symbol, if defined, indicates that the vsnprintf () library
- *     function is available for use.
- */
-#define HAS_SNPRINTF   /**/
-#define HAS_VSNPRINTF  /**/
-
 /* HAS_SOCKATMARK:
  *     This symbol, if defined, indicates that the sockatmark routine is
  *     available to test whether a socket is at the out-of-band mark.
  */
 /*#define      HAS_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 <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.
+ */
+/*#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           /**/
+
 /* HAS_STRFTIME:
  *     This symbol, if defined, indicates that the strftime routine is
  *     available to do time formatting.
  */
 #define        HAS_USLEEP_PROTO        /**/
 
+/* HAS_USTAT:
+ *     This symbol, if defined, indicates that the ustat system call is
+ *     available to query file system statistics by dev_t.
+ */
+#define HAS_USTAT              /**/
+
 /* HAS_WRITEV:
  *     This symbol, if defined, indicates that the writev routine is
  *     available to do scatter writes.
  */
 /*#define I_MALLOCMALLOC               / **/
 
+/* I_MNTENT:
+ *     This symbol, if defined, indicates that <mntent.h> exists and
+ *     should be included.
+ */
+#define        I_MNTENT                /**/
+
 /* I_NETINET_TCP:
  *     This symbol, if defined, indicates to the C program that it should
  *     include <netinet/tcp.h>.
  */
 /*#define      I_SYSMODE               / **/
 
+/* I_SYS_MOUNT:
+ *     This symbol, if defined, indicates that <sys/mount.h> exists and
+ *     should be included.
+ */
+#define        I_SYS_MOUNT             /**/
+
+/* I_SYS_STATFS:
+ *     This symbol, if defined, indicates that <sys/statfs.h> exists.
+ */
+#define        I_SYS_STATFS            /**/
+
+/* I_SYS_STATVFS:
+ *     This symbol, if defined, indicates that <sys/statvfs.h> exists and
+ *     should be included.
+ */
+#define        I_SYS_STATVFS           /**/
+
 /* I_SYSUTSNAME:
  *     This symbol, if defined, indicates that <sys/utsname.h> exists and
  *     should be included.
  */
 #define        I_SYSUTSNAME            /**/
 
+/* I_SYS_VFS:
+ *     This symbol, if defined, indicates that <sys/vfs.h> exists and
+ *     should be included.
+ */
+#define        I_SYS_VFS               /**/
+
+/* I_USTAT:
+ *     This symbol, if defined, indicates that <ustat.h> exists and
+ *     should be included.
+ */
+#define        I_USTAT         /**/
+
 /* PERL_PRIfldbl:
  *     This symbol, if defined, contains the string used by stdio to
  *     format long doubles (format 'f') for output.
  *     script to make sure (one hopes) that it runs with perl and not
  *     some shell.
  */
-#define STARTPERL "#!/pro/bin/perl5.23.4"              /**/
+#define STARTPERL "#!/pro/bin/perl5.27.6"              /**/
 
 /* HAS_STDIO_STREAM_ARRAY:
  *     This symbol, if defined, tells that there is an array