/* 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 */
*/
#$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.
/* 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 /**/
#$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
* LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BE_BE
* LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LE_BE
* LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BE_LE
+ * LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LITTLE_ENDIAN
+ * LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BIG_ENDIAN
* LONG_DOUBLE_IS_VAX_H_FLOAT
* LONG_DOUBLE_IS_UNKNOWN_FORMAT
* It is only defined if the system supports long doubles.
* 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.
#$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 /**/
* This symbol, if defined, indicates that the union semun is
* defined by including <sys/sem.h>. If not, the user code
* probably needs to define it as:
- * union semun {
+ * union semun {
* int val;
* struct semid_ds *buf;
* unsigned short *array;
- * }
+ * }
*/
/* USE_SEMCTL_SEMUN:
* This symbol, if defined, indicates that union semun is
* 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 /**/
*/
#$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.
*/
#$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.
#$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
#$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>.
* 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.
+/* USE_THREADS:
+ * This symbol, if defined, indicates that Perl should
+ * be built to use threads. At present, it is a synonym for
+ * and USE_ITHREADS, but eventually the source ought to be
+ * changed to use this to mean _any_ threading implementation.
*/
/* OLD_PTHREADS_API:
* This symbol, if defined, indicates that Perl should
* try to use the various _r versions of library functions.
* This is extremely experimental.
*/
-#$use5005threads USE_5005THREADS /**/
#$useithreads USE_ITHREADS /**/
-#if defined(USE_5005THREADS) && !defined(USE_ITHREADS)
-#define USE_THREADS /* until src is revised*/
-#endif
+#$usethreads USE_THREADS /**/
#$d_oldpthreads OLD_PTHREADS_API /**/
#$usereentrant USE_REENTRANT_API /**/