/*****************************************************************************
- * fixups.h: portability fixups included from config.h
+ * vlc_fixups.h: portability fixups included from config.h
*****************************************************************************
* Copyright © 1998-2008 the VideoLAN project
*
# 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 */
int strncasecmp (const char *, const char *, size_t);
#endif
+#ifndef HAVE_STRVERSCMP
+int strverscmp (const char *, const char *);
+#endif
+
#ifndef HAVE_STRNLEN
size_t strnlen (const char *, size_t);
#endif
/* dirent.h */
#ifndef HAVE_DIRFD
-#if defined(__APPLE__) || defined(__OS2__)
-#undef dirfd
-#endif
-int dirfd (DIR *);
+int (dirfd) (DIR *);
#endif
#ifndef HAVE_FDOPENDIR
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_NUMERIC_MASK 0
}
#endif
+#if !defined (HAVE_STATIC_ASSERT)
+# define _Static_assert(x, s) ((void) sizeof (struct { unsigned:-!(x); }))
+# define static_assert _Static_assert
+#endif
+
/* Alignment of critical static data structures */
#ifdef ATTRIBUTE_ALIGNED_MAX
# define ATTR_ALIGN(align) __attribute__ ((__aligned__ ((ATTRIBUTE_ALIGNED_MAX < align) ? ATTRIBUTE_ALIGNED_MAX : align)))
};
#endif
#ifndef HAVE_POLL
-# define poll(a, b, c) vlc_poll(a, b, c)
-#elif defined (HAVE_MAEMO)
-# include <poll.h>
-# define poll(a, b, c) vlc_poll(a, b, c)
+struct pollfd;
+int poll (struct pollfd *, unsigned, int);
#endif
#ifndef HAVE_IF_NAMEINDEX
long nrand48 (unsigned short subi[3]);
#endif
-#ifdef __ANDROID__
-# undef __linux__
-# ifndef __cplusplus
-# define __cplusplus 0
-# endif
-# include <pthread.h>
-# if __cplusplus == 0
-# undef __cplusplus
-# endif
-char *tempnam(const char *, const char *);
-#endif // ANDROID
-
#ifdef __OS2__
# undef HAVE_FORK /* Implementation of fork() is imperfect on OS/2 */
#endif