2 * If linux/types.h is already been included, assume it has defined
3 * everything we need. (cross fingers) Other header files may have
4 * also defined the types that we need.
6 #if (!defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \
7 !defined(_EXT2_TYPES_H))
15 typedef __U8_TYPEDEF __u8;
17 typedef unsigned char __u8;
19 #endif /* HAVE___U8 */
24 typedef __S8_TYPEDEF __s8;
26 typedef signed char __s8;
28 #endif /* HAVE___S8 */
33 typedef __U16_TYPEDEF __u16;
35 #if (@SIZEOF_INT@ == 2)
36 typedef unsigned int __u16;
38 #if (@SIZEOF_SHORT@ == 2)
39 typedef unsigned short __u16;
42 ?==error: undefined 16 bit type
43 #endif /* SIZEOF_SHORT == 2 */
44 #endif /* SIZEOF_INT == 2 */
45 #endif /* __U16_TYPEDEF */
46 #endif /* HAVE___U16 */
51 typedef __S16_TYPEDEF __s16;
53 #if (@SIZEOF_INT@ == 2)
56 #if (@SIZEOF_SHORT@ == 2)
60 ?==error: undefined 16 bit type
61 #endif /* SIZEOF_SHORT == 2 */
62 #endif /* SIZEOF_INT == 2 */
63 #endif /* __S16_TYPEDEF */
64 #endif /* HAVE___S16 */
69 typedef __U32_TYPEDEF __u32;
71 #if (@SIZEOF_INT@ == 4)
72 typedef unsigned int __u32;
74 #if (@SIZEOF_LONG@ == 4)
75 typedef unsigned long __u32;
77 #if (@SIZEOF_SHORT@ == 4)
78 typedef unsigned short __u32;
81 ?== error: undefined 32 bit type
82 #endif /* SIZEOF_SHORT == 4 */
83 #endif /* SIZEOF_LONG == 4 */
84 #endif /* SIZEOF_INT == 4 */
85 #endif /* __U32_TYPEDEF */
86 #endif /* HAVE___U32 */
91 typedef __S32_TYPEDEF __s32;
93 #if (@SIZEOF_INT@ == 4)
96 #if (@SIZEOF_LONG@ == 4)
99 #if (@SIZEOF_SHORT@ == 4)
103 ?== error: undefined 32 bit type
104 #endif /* SIZEOF_SHORT == 4 */
105 #endif /* SIZEOF_LONG == 4 */
106 #endif /* SIZEOF_INT == 4 */
107 #endif /* __S32_TYPEDEF */
108 #endif /* HAVE___S32 */
113 typedef __U64_TYPEDEF __u64;
115 #if (@SIZEOF_INT@ == 8)
116 typedef unsigned int __u64;
118 #if (@SIZEOF_LONG_LONG@ == 8)
119 typedef unsigned long long __u64;
121 #if (@SIZEOF_LONG@ == 8)
122 typedef unsigned long __u64;
125 ?== error: undefined 64 bit type
126 #endif /* SIZEOF_LONG_LONG == 8 */
127 #endif /* SIZEOF_LONG == 8 */
128 #endif /* SIZEOF_INT == 8 */
129 #endif /* __U64_TYPEDEF */
130 #endif /* HAVE___U64 */
135 typedef __S64_TYPEDEF __s64;
137 #if (@SIZEOF_INT@ == 8)
140 #if (@SIZEOF_LONG_LONG@ == 8)
141 #if defined(__GNUC__)
142 typedef __signed__ long long __s64;
144 typedef signed long long __s64;
145 #endif /* __GNUC__ */
147 #if (@SIZEOF_LONG@ == 8)
151 ?== error: undefined 64 bit type
152 #endif /* SIZEOF_LONG_LONG == 8 */
153 #endif /* SIZEOF_LONG == 8 */
154 #endif /* SIZEOF_INT == 8 */
155 #endif /* __S64_TYPEDEF */
156 #endif /* HAVE___S64 */
167 #endif /* _*_TYPES_H */
171 /* endian checking stuff */
172 #ifndef EXT2_ENDIAN_H_
173 #define EXT2_ENDIAN_H_
177 # define __bitwise __attribute__((bitwise))
179 #define __force __attribute__((force))
187 typedef __u16 __bitwise __le16;
188 typedef __u32 __bitwise __le32;
189 typedef __u64 __bitwise __le64;
190 typedef __u16 __bitwise __be16;
191 typedef __u32 __bitwise __be32;
192 typedef __u64 __bitwise __be64;
194 #endif /* EXT2_ENDIAN_H_ */
196 @PUBLIC_CONFIG_HEADER@