• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2014 Collabora Ltd.
3  *     Author: Nicolas Dufresne <nicolas@ndufresne.ca>
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Library General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Library General Public License for more details.
14  *
15  * You should have received a copy of the GNU Library General Public
16  * License along with this library; if not, write to the
17  * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
18  * Boston, MA 02110-1301, USA.
19  *
20  */
21 
22 #include <glib.h>
23 
24 #ifndef __TYPES_COMPAT_H__
25 #define __TYPES_COMPAT_H__
26 
27 #define __inline__ inline
28 
29 #ifdef   __linux__
30 #include <linux/types.h>
31 #include <asm/ioctl.h>
32 
33 #else /* One of the BSDs */
34 /* From linux/types.h */
35 #ifndef __bitwise__
36 #  ifdef __CHECKER__
37 #    define __bitwise__ __attribute__((bitwise))
38 #  else
39 #    define __bitwise__
40 #  endif
41 #endif
42 
43 #if defined(__sun)
44 /* for _IOR/_IORW on Illumos distros */
45 #include <sys/ioccom.h>
46 #endif
47 
48 #ifndef __bitwise
49 #  ifdef __CHECK_ENDIAN__
50 #    define __bitwise __bitwise__
51 #  else
52 #    define __bitwise
53 #  endif
54 #endif
55 
56 typedef gint8   __s8;
57 typedef guint8  __u8;
58 typedef gint16  __s16;
59 typedef guint16 __u16;
60 typedef gint32  __s32;
61 typedef guint32 __u32;
62 typedef gint64  __s64;
63 typedef guint64 __u64;
64 typedef guint32 __bitwise __le32;
65 
66 #endif
67 
68 #endif /* __TYPES_COMPAT_H__ */
69