# include <stdio.h> /* FILE */
#endif
-#if !defined (HAVE_STRLCPY) || \
+#if !defined (HAVE_POSIX_MEMALIGN) || \
+ !defined (HAVE_STRLCPY) || \
!defined (HAVE_STRNDUP) || \
!defined (HAVE_STRNLEN)
# include <stddef.h> /* size_t */
#endif
#ifdef __cplusplus
+# define VLC_NOTHROW throw ()
extern "C" {
+#else
+# define VLC_NOTHROW
#endif
/* stdio.h */
char *strdup (const char *);
#endif
-#ifndef HAVE_STRNCASECMP
-int strncasecmp (const char *, const char *, size_t);
+#ifndef HAVE_STRVERSCMP
+int strverscmp (const char *, const char *);
#endif
#ifndef HAVE_STRNLEN
/* unistd.h */
#ifndef HAVE_GETPID
-pid_t getpid (void);
+pid_t getpid (void) VLC_NOTHROW;
#endif
#ifndef HAVE_FSYNC
int unsetenv (const char *);
#endif
+#ifndef HAVE_POSIX_MEMALIGN
+int posix_memalign (void **, size_t, size_t);
+#endif
+
/* locale.h */
#ifndef HAVE_USELOCALE
+#define LC_ALL_MASK 0
#define LC_NUMERIC_MASK 0
#define LC_MESSAGES_MASK 0
+#define LC_GLOBAL_LOCALE ((locale_t)(uintptr_t)1)
typedef void *locale_t;
static inline locale_t uselocale(locale_t loc)
{