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