This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
warn the user that NetBSD's long double support isn't very good
[perl5.git] / config_h.SH
index 63cb2f7..08c5923 100755 (executable)
@@ -381,7 +381,7 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 
 /* HAS_REGCOMP:
  *     This symbol, if defined, indicates that the regcomp() routine is
- *     available to do some regular patern matching (usually on POSIX.2
+ *     available to do some regular pattern matching (usually on POSIX.2
  *     conforming systems).
  */
 #$d_regcomp HAS_REGCOMP                /* POSIX.2 */
@@ -439,12 +439,6 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$d_setlinebuf HAS_SETLINEBUF          /**/
 
-/* HAS_SETLOCALE:
- *     This symbol, if defined, indicates that the setlocale routine is
- *     available to handle locale-specific ctype implementations.
- */
-#$d_setlocale HAS_SETLOCALE    /**/
-
 /* HAS_SETPGID:
  *     This symbol, if defined, indicates that the setpgid(pid, gpid)
  *     routine is available to set process group ID.
@@ -1497,6 +1491,10 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 /* HASATTRIBUTE_WARN_UNUSED_RESULT:
  *     Can we handle GCC attribute for warning on unused results
  */
+/* HASATTRIBUTE_ALWAYS_INLINE:
+ *     Can we handle GCC attribute for functions that should always be
+ *     inlined.
+ */
 #$d_attribute_deprecated HASATTRIBUTE_DEPRECATED       /**/
 #$d_attribute_format HASATTRIBUTE_FORMAT       /**/
 #$d_printf_format_null PRINTF_FORMAT_NULL_OK   /**/
@@ -1506,6 +1504,7 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #$d_attribute_pure HASATTRIBUTE_PURE   /**/
 #$d_attribute_unused HASATTRIBUTE_UNUSED       /**/
 #$d_attribute_warn_unused_result HASATTRIBUTE_WARN_UNUSED_RESULT       /**/
+#$d_attribute_always_inline HASATTRIBUTE_ALWAYS_INLINE /**/
 
 /* HAS_BACKTRACE:
  *     This symbol, if defined, indicates that the backtrace() routine is
@@ -1514,17 +1513,6 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$d_backtrace HAS_BACKTRACE    /**/
 
-/* HASCONST:
- *     This symbol, if defined, indicates that this C compiler knows about
- *     the const type. There is no need to actually test for that symbol
- *     within your programs. The mere use of the "const" keyword will
- *     trigger the necessary tests.
- */
-#$d_const HASCONST     /**/
-#ifndef HASCONST
-#define const
-#endif
-
 /* HAS_CSH:
  *     This symbol, if defined, indicates that the C-shell exists.
  */
@@ -1956,6 +1944,10 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  *     This symbol, if defined, indicates the availability of
  *     struct sockaddr_in6;
  */
+/* HAS_SOCKADDR_STORAGE:
+ *     This symbol, if defined, indicates the availability of
+ *     struct sockaddr_storage;
+ */
 /* HAS_SIN6_SCOPE_ID:
  *     This symbol, if defined, indicates that the struct sockaddr_in6
  *     structure has a member called sin6_scope_id.
@@ -1980,6 +1972,7 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #$d_sockpair   HAS_SOCKETPAIR  /**/
 #$d_sockaddr_sa_len    HAS_SOCKADDR_SA_LEN     /**/
 #$d_sockaddr_in6       HAS_SOCKADDR_IN6        /**/
+#$d_sockaddr_storage   HAS_SOCKADDR_STORAGE    /**/
 #$d_sin6_scope_id      HAS_SIN6_SCOPE_ID       /**/
 #$d_ip_mreq    HAS_IP_MREQ     /**/
 #$d_ip_mreq_source     HAS_IP_MREQ_SOURCE      /**/
@@ -3028,6 +3021,9 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  *     This symbol, if defined, indicates that the memmem routine is
  *     available to return a pointer to the start of the first occurance
  *     of a substring in a memory area (or NULL if not found).
+ *     In glibc, memmem is a GNU extension.  The function is visible in
+ *     libc, but the prototype is only visible if _GNU_SOURCE is #defined.
+ *     Thus we only define this if both the prototype and symbol are found.
  */
 #$d_memmem HAS_MEMMEM          /**/
 
@@ -3115,6 +3111,10 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  *     This symbol, if defined, indicates that the uselocale routine is
  *     available to set the current locale for the calling thread.
  */
+/* HAS_DUPLOCALE:
+ *     This symbol, if defined, indicates that the duplocale routine is
+ *     available to duplicate a locale object.
+ */
 /* HAS_QUERYLOCALE:
  *     This symbol, if defined, indicates that the querylocale routine is
  *     available to return the name of the locale for a category mask.
@@ -3126,6 +3126,7 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #$d_newlocale  HAS_NEWLOCALE   /**/
 #$d_freelocale HAS_FREELOCALE  /**/
 #$d_uselocale  HAS_USELOCALE   /**/
+#$d_duplocale  HAS_DUPLOCALE   /**/
 #$d_querylocale        HAS_QUERYLOCALE /**/
 #$i_xlocale    I_XLOCALE               /**/
 
@@ -3272,6 +3273,17 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$d_setitimer HAS_SETITIMER            /**/
 
+/* HAS_SETLOCALE:
+ *     This symbol, if defined, indicates that the setlocale routine is
+ *     available to handle locale-specific ctype implementations.
+ */
+/* SETLOCALE_ACCEPTS_ANY_LOCALE_NAME:
+ *     This symbol, if defined, indicates that the setlocale routine is
+ *     available and it accepts any input locale name as valid.
+ */
+#$d_setlocale HAS_SETLOCALE    /**/
+#$d_setlocale_accepts_any_locale_name SETLOCALE_ACCEPTS_ANY_LOCALE_NAME        /**/
+
 /* HAS_SETPROCTITLE:
  *     This symbol, if defined, indicates that the setproctitle routine is
  *     available to set process title.
@@ -3500,6 +3512,18 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$d_timegm HAS_TIMEGM          /**/
 
+/* HAS_TOWLOWER:
+ *     This symbol, if defined, indicates that the towlower () routine is
+ *     available to do case conversion.
+ */
+#$d_towlower HAS_TOWLOWER              /**/
+
+/* HAS_TOWUPPER:
+ *     This symbol, if defined, indicates that the towupper () routine is
+ *     available to do case conversion.
+ */
+#$d_towupper HAS_TOWUPPER              /**/
+
 /* HAS_TRUNC:
  *     This symbol, if defined, indicates that the trunc routine is
  *     available to round doubles towards zero.
@@ -3802,6 +3826,11 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$i_wchar   I_WCHAR    /**/
 
+/* I_WCTYPE:
+ *     This symbol, if defined, indicates that <wctype.h> exists.
+ */
+#$i_wctype     I_WCTYPE                /**/
+
 /* DOUBLEINFBYTES:
  *     This symbol, if defined, is a comma-separated list of
  *     hexadecimal bytes for the double precision infinity.
@@ -4212,11 +4241,11 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #$use64bitall  USE_64_BIT_ALL          /**/
 #endif
 
-/* USE_CBACKTRACE:
+/* USE_C_BACKTRACE:
  *     This symbol, if defined, indicates that Perl should
  *     be built with support for backtrace.
  */
-#$usecbacktrace USE_CBACKTRACE         /**/
+#$usecbacktrace USE_C_BACKTRACE                /**/
 
 /* USE_DTRACE:
  *     This symbol, if defined, indicates that Perl should
@@ -5065,6 +5094,12 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #$d_strerror_r HAS_STRERROR_R  /**/
 #define STRERROR_R_PROTO $strerror_r_proto     /**/
 
+/* HAS_STRTOD_L:
+ *     This symbol, if defined, indicates that the strtod_l routine is
+ *     available to convert strings to long doubles.
+ */
+#$d_strtod_l HAS_STRTOD_L              /**/
+
 /* HAS_STRTOLD_L:
  *     This symbol, if defined, indicates that the strtold_l routine is
  *     available to convert strings to long doubles.
@@ -5097,6 +5132,12 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #$d_ttyname_r HAS_TTYNAME_R    /**/
 #define TTYNAME_R_PROTO $ttyname_r_proto       /**/
 
+/* HAS_WCRTOMB:
+ *     This symbol, if defined, indicates that the wcrtomb routine is
+ *     available to convert a wide character into a multi-byte character.
+ */
+#$d_wcrtomb HAS_WCRTOMB        /**/
+
 /* I_MACH_CTHREADS:
  *     This symbol, if defined, indicates to the C program that it should
  *     include <mach/cthreads.h>.