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(_STDINT_H) && !defined(_UUID_STDINT_H))
7#define _UUID_STDINT_H
8
9typedef unsigned char uint8_t;
10typedef signed char int8_t;
11
12#if (@SIZEOF_INT@ == 8)
13typedef int		int64_t;
14typedef unsigned int	uint64_t;
15#elif (@SIZEOF_LONG@ == 8)
16typedef long		int64_t;
17typedef unsigned long	uint64_t;
18#elif (@SIZEOF_LONG_LONG@ == 8)
19#if defined(__GNUC__)
20typedef __signed__ long long 	int64_t;
21#else
22typedef signed long long 	int64_t;
23#endif
24typedef unsigned long long	uint64_t;
25#endif
26
27#if (@SIZEOF_INT@ == 2)
28typedef	int		int16_t;
29typedef	unsigned int	uint16_t;
30#elif (@SIZEOF_SHORT@ == 2)
31typedef	short		int16_t;
32typedef	unsigned short	uint16_t;
33#else
34  ?==error: undefined 16 bit type
35#endif
36
37#if (@SIZEOF_INT@ == 4)
38typedef	int		int32_t;
39typedef	unsigned int	uint32_t;
40#elif (@SIZEOF_LONG@ == 4)
41typedef	long		int32_t;
42typedef	unsigned long	uint32_t;
43#elif (@SIZEOF_SHORT@ == 4)
44typedef	short		int32_t;
45typedef	unsigned short	uint32_t;
46#else
47 ?== error: undefined 32 bit type
48#endif
49
50#endif
51