X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc_fixups.h;h=595cee24b93250d6373e4d77b1614d81505f23ad;hb=554f76adfa055ffac630de9d06bb7caae6c4c146;hp=5289e98c3ead4735aa85c811971a94af051288df;hpb=07594e8b43fa52db73e356a99a5713a0d2699455;p=vlc diff --git a/include/vlc_fixups.h b/include/vlc_fixups.h index 5289e98c3e..595cee24b9 100644 --- a/include/vlc_fixups.h +++ b/include/vlc_fixups.h @@ -50,8 +50,7 @@ typedef struct #if !defined (HAVE_STRLCPY) || \ !defined (HAVE_STRNDUP) || \ - !defined (HAVE_STRNLEN) || \ - !defined (HAVE_GETCWD) + !defined (HAVE_STRNLEN) # include /* size_t */ #endif @@ -65,7 +64,8 @@ typedef struct # include /* ssize_t, pid_t */ #endif -#ifndef HAVE_DIRFD +#if !defined (HAVE_DIRFD) || \ + !defined (HAVE_FDOPENDIR) # include #endif @@ -73,16 +73,49 @@ typedef struct extern "C" { #endif -#ifndef HAVE_STRDUP -char *strdup (const char *); +/* stdio.h */ +#ifndef HAVE_ASPRINTF +int asprintf (char **, const char *, ...); +#endif + +#ifndef HAVE_FLOCKFILE +void flockfile (FILE *); +int ftrylockfile (FILE *); +void funlockfile (FILE *); +int getc_unlocked (FILE *); +int getchar_unlocked (void); +int putc_unlocked (int, FILE *); +int putchar_unlocked (int); +#endif + +#ifndef HAVE_GETDELIM +ssize_t getdelim (char **, size_t *, int, FILE *); +ssize_t getline (char **, size_t *, FILE *); +#endif + +#ifndef HAVE_REWIND +void rewind (FILE *); #endif #ifndef HAVE_VASPRINTF int vasprintf (char **, const char *, va_list); #endif -#ifndef HAVE_ASPRINTF -int asprintf (char **, const char *, ...); +/* string.h */ +#ifndef HAVE_STRCASECMP +int strcasecmp (const char *, const char *); +#endif + +#ifndef HAVE_STRCASESTR +char *strcasestr (const char *, const char *); +#endif + +#ifndef HAVE_STRDUP +char *strdup (const char *); +#endif + +#ifndef HAVE_STRNCASECMP +int strncasecmp (const char *, const char *, size_t); #endif #ifndef HAVE_STRNLEN @@ -97,26 +130,21 @@ char *strndup (const char *, size_t); size_t strlcpy (char *, const char *, size_t); #endif -#ifndef HAVE_STRTOF -#ifndef __ANDROID__ -float strtof (const char *, char **); +#ifndef HAVE_STRSEP +char *strsep (char **, const char *); #endif + +#ifndef HAVE_STRTOK_R +char *strtok_r(char *, const char *, char **); #endif +/* stdlib.h */ #ifndef HAVE_ATOF #ifndef __ANDROID__ double atof (const char *); #endif #endif -#ifndef HAVE_STRTOLL -long long int strtoll (const char *, char **, int); -#endif - -#ifndef HAVE_STRSEP -char *strsep (char **, const char *); -#endif - #ifndef HAVE_ATOLL long long atoll (const char *); #endif @@ -125,18 +153,17 @@ long long atoll (const char *); lldiv_t lldiv (long long, long long); #endif -#ifndef HAVE_STRCASECMP -int strcasecmp (const char *, const char *); +#ifndef HAVE_STRTOF +#ifndef __ANDROID__ +float strtof (const char *, char **); #endif - -#ifndef HAVE_STRNCASECMP -int strncasecmp (const char *, const char *, size_t); #endif -#ifndef HAVE_STRCASESTR -char *strcasestr (const char *, const char *); +#ifndef HAVE_STRTOLL +long long int strtoll (const char *, char **, int); #endif +/* time.h */ #ifndef HAVE_GMTIME_R struct tm *gmtime_r (const time_t *, struct tm *); #endif @@ -145,36 +172,32 @@ struct tm *gmtime_r (const time_t *, struct tm *); struct tm *localtime_r (const time_t *, struct tm *); #endif -#ifndef HAVE_REWIND -void rewind (FILE *); -#endif - -#ifndef HAVE_GETCWD -char *getcwd (char *buf, size_t size); -#endif - -#ifndef HAVE_GETDELIM -ssize_t getdelim (char **, size_t *, int, FILE *); -ssize_t getline (char **, size_t *, FILE *); -#endif - +/* unistd.h */ #ifndef HAVE_GETPID pid_t getpid (void); #endif -#ifndef HAVE_STRTOK_R -char *strtok_r(char *, const char *, char **); +#ifndef HAVE_FSYNC +int fsync (int fd); #endif /* dirent.h */ #ifndef HAVE_DIRFD +#if defined(__APPLE__) || defined(__OS2__) +#undef dirfd +#endif int dirfd (DIR *); #endif +#ifndef HAVE_FDOPENDIR +DIR *fdopendir (int); +#endif + #ifdef __cplusplus } /* extern "C" */ #endif +/* stdlib.h */ #ifndef HAVE_GETENV static inline char *getenv (const char *name) { @@ -188,13 +211,7 @@ int setenv (const char *, const char *, int); int unsetenv (const char *); #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))) -#else -# define ATTR_ALIGN(align) -#endif - +/* locale.h */ #ifndef HAVE_USELOCALE #define LC_NUMERIC_MASK 0 #define LC_MESSAGES_MASK 0 @@ -215,6 +232,13 @@ static inline locale_t newlocale(int mask, const char * locale, locale_t base) } #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))) +#else +# define ATTR_ALIGN(align) +#endif + /* libintl support */ #define _(str) vlc_gettext (str) #define N_(str) gettext_noop (str) @@ -233,7 +257,7 @@ void swab (const void *, void *, ssize_t); # define inet_ntop vlc_inet_ntop #endif -#ifndef HAVE_POLL +#ifndef HAVE_STRUCT_POLLFD enum { POLLIN=1, @@ -250,7 +274,8 @@ struct pollfd unsigned events; unsigned revents; }; - +#endif +#ifndef HAVE_POLL # define poll(a, b, c) vlc_poll(a, b, c) #elif defined (HAVE_MAEMO) # include @@ -258,6 +283,21 @@ struct pollfd int vlc_poll (struct pollfd *, unsigned, int); #endif +#ifndef HAVE_IF_NAMEINDEX +#include +struct if_nameindex +{ + unsigned if_index; + char *if_name; +}; +# ifndef HAVE_IF_NAMETOINDEX +# define if_nametoindex(name) atoi(name) +# endif +# define if_nameindex() (errno = ENOBUFS, NULL) +# define if_freenameindex(list) (void)0 +#endif + +/* search.h */ #ifndef HAVE_SEARCH_H typedef struct entry { char *key; @@ -305,4 +345,8 @@ long nrand48 (unsigned short subi[3]); char *tempnam(const char *, const char *); #endif // ANDROID +#ifdef __OS2__ +# undef HAVE_FORK /* Implementation of fork() is imperfect on OS/2 */ +#endif + #endif /* !LIBVLC_FIXUPS_H */