1/*
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.
5 */
6#if (!defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \
7	!defined(_UUID_TYPES) && !defined(_EXT2_TYPES_H))
8#define _UUID_TYPES_H
9
10typedef unsigned char __u8;
11typedef signed char __s8;
12
13#if (@SIZEOF_INT@ == 8)
14typedef int		__s64;
15typedef unsigned int	__u64;
16#elif (@SIZEOF_LONG@ == 8)
17typedef long		__s64;
18typedef unsigned long	__u64;
19#elif (@SIZEOF_LONG_LONG@ == 8)
20#if defined(__GNUC__)
21typedef __signed__ long long 	__s64;
22#else
23typedef signed long long 	__s64;
24#endif
25typedef unsigned long long	__u64;
26#endif
27
28#if (@SIZEOF_INT@ == 2)
29typedef	int		__s16;
30typedef	unsigned int	__u16;
31#elif (@SIZEOF_SHORT@ == 2)
32typedef	short		__s16;
33typedef	unsigned short	__u16;
34#else
35  ?==error: undefined 16 bit type
36#endif
37
38#if (@SIZEOF_INT@ == 4)
39typedef	int		__s32;
40typedef	unsigned int	__u32;
41#elif (@SIZEOF_LONG@ == 4)
42typedef	long		__s32;
43typedef	unsigned long	__u32;
44#elif (@SIZEOF_SHORT@ == 4)
45typedef	short		__s32;
46typedef	unsigned short	__u32;
47#else
48 ?== error: undefined 32 bit type
49#endif
50
51#endif /* _*_TYPES_H */
52