v4l2: Fix type compatibility issue with glibc 2.30

From now on, we will use linux/types.h on Linux, and use typedef of the
various flavour of BSD.

Fixes #635
This commit is contained in:
Nicolas Dufresne 2019-08-06 22:27:40 -04:00 committed by Tim-Philipp Müller
parent e58ca79741
commit 45b6514f33

View file

@ -24,6 +24,11 @@
#ifndef __TYPES_COMPAT_H__ #ifndef __TYPES_COMPAT_H__
#define __TYPES_COMPAT_H__ #define __TYPES_COMPAT_H__
#ifdef __linux__
#include <linux/types.h>
#include <asm/ioctl.h>
#else /* One of the BSDs */
/* From linux/types.h */ /* From linux/types.h */
#ifndef __bitwise__ #ifndef __bitwise__
# ifdef __CHECKER__ # ifdef __CHECKER__
@ -41,12 +46,14 @@
# endif # endif
#endif #endif
#define __u64 guint64 typedef guint8 __u8;
#define __u32 guint32 typedef guint16 __u16;
#define __u16 guint16 typedef gint32 __s32;
#define __u8 guint8 typedef guint32 __u32;
#define __s64 gint64 typedef gint64 __s64;
#define __s32 gint32 typedef guint64 __u64;
#define __le32 guint32 __bitwise typedef guint32 __bitwise __le32;
#endif
#endif /* __TYPES_COMPAT_H__ */ #endif /* __TYPES_COMPAT_H__ */