1 #ifndef __gluegen_stdint_h 2 #define __gluegen_stdint_h 3 4 #ifdef __GLUEGEN__ 5 #error "This file is not intended to be used for GlueGen code generation, use the gluegen/make/stub_includes/gluegen variation instead!" 6 #endif 7 8 #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__) 9 #include <stdint.h> 10 #elif defined(WIN32) && defined(__GNUC__) 11 #include <stdint.h> 12 #elif defined(_WIN64) 13 typedef signed char int8_t; 14 typedef unsigned char uint8_t; 15 typedef signed short int16_t; 16 typedef unsigned short uint16_t; 17 typedef __int32 int32_t; 18 typedef unsigned __int32 uint32_t; 19 typedef __int64 int64_t; 20 typedef unsigned __int64 uint64_t; 21 22 typedef __int64 intptr_t; 23 typedef unsigned __int64 uintptr_t; 24 #elif defined(_WIN32) 25 typedef signed char int8_t; 26 typedef unsigned char uint8_t; 27 typedef signed short int16_t; 28 typedef unsigned short uint16_t; 29 typedef __int32 int32_t; 30 typedef unsigned __int32 uint32_t; 31 typedef __int64 int64_t; 32 typedef unsigned __int64 uint64_t; 33 34 typedef __int32 intptr_t; 35 typedef unsigned __int32 uintptr_t; 36 #elif defined(__LP64__) || defined(__ia64__) || defined(__x86_64__) || defined(__aarch64__) 37 typedef signed char int8_t; 38 typedef unsigned char uint8_t; 39 typedef signed short int16_t; 40 typedef unsigned short uint16_t; 41 typedef signed int int32_t; 42 typedef unsigned int uint32_t; 43 typedef signed long int64_t; 44 typedef unsigned long uint64_t; 45 46 typedef long intptr_t; 47 typedef unsigned long uintptr_t; 48 #else 49 typedef signed char int8_t; 50 typedef unsigned char uint8_t; 51 typedef signed short int16_t; 52 typedef unsigned short uint16_t; 53 typedef signed int int32_t; 54 typedef unsigned int uint32_t; 55 typedef signed long long int64_t; 56 typedef unsigned long long uint64_t; 57 58 typedef int intptr_t; 59 typedef unsigned int uintptr_t; 60 #endif 61 62 #endif /* __gluegen_stdint_h */ 63