00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef KATE_kate_config_h_GUARD
00010 #define KATE_kate_config_h_GUARD
00011
00012 #ifdef HAVE_CONFIG_H
00013 #include "config.h"
00014 #endif
00015
00016 #include <stddef.h>
00017 #include <limits.h>
00018 #include <sys/types.h>
00019
00020 #ifdef HAVE_INTTYPES_H
00021 #include <inttypes.h>
00022 #endif
00023
00024 #ifdef HAVE_STDINT_H
00025 #include <stdint.h>
00026 #endif
00027
00028 #ifdef KATE_INTERNAL
00029 #define kate_const
00030 #else
00031 #define kate_const const
00032 #endif
00033
00034 #ifndef kate_malloc
00035 #define kate_malloc malloc
00036 #endif
00037 #ifndef kate_realloc
00038 #define kate_realloc realloc
00039 #endif
00040 #ifndef kate_free
00041 #define kate_free free
00042 #endif
00043
00044 #if defined HAVE_STDINT_H || defined HAVE_INTTYPES_H
00045 typedef int32_t kate_int32_t;
00046 #elif defined int32_t
00047 typedef int32_t kate_int32_t;
00048 #elif defined INT_MAX && INT_MAX==2147483647
00049 typedef int kate_int32_t;
00050 #elif defined SHRT_MAX && SHRT_MAX==2147483647
00051 typedef short int kate_int32_t;
00052 #elif defined LONG_MAX && LONG_MAX==2147483647
00053 typedef long int kate_int32_t;
00054 #elif defined LLONG_MAX && LLONG_MAX==2147483647
00055 typedef long long int kate_int32_t;
00056 #else
00057 #error No 32 bit signed integer found
00058 #endif
00059
00060 #if defined HAVE_STDINT_H || defined HAVE_INTTYPES_H
00061 typedef uint32_t kate_uint32_t;
00062 #elif defined uint32_t
00063 typedef uint32_t kate_uint32_t;
00064 #elif defined UINT_MAX && UINT_MAX==4294967295u
00065 typedef unsigned int kate_uint32_t;
00066 #elif defined USHRT_MAX && USHRT_MAX==4294967295u
00067 typedef short unsigned int kate_uint32_t;
00068 #elif defined ULONG_MAX && ULONG_MAX==4294967295ul
00069 typedef long unsigned int kate_uint32_t;
00070 #elif defined ULLONG_MAX && ULLONG_MAX==4294967295ull
00071 typedef long long unsigned int kate_uint32_t;
00072 #else
00073 #error No 32 bit unsigned integer found
00074 #endif
00075
00076 #if defined HAVE_STDINT_H || defined HAVE_INTTYPES_H
00077 typedef int64_t kate_int64_t;
00078 #elif defined int64_t
00079 typedef int64_t kate_int64_t;
00080 #elif defined INT_MAX && INT_MAX>2147483647
00081 typedef int kate_int64_t;
00082 #elif defined SHRT_MAX && SHRT_MAX>2147483647
00083 typedef short int kate_int64_t;
00084 #elif defined LONG_MAX && LONG_MAX>2147483647
00085 typedef long int kate_int64_t;
00086 #elif defined LLONG_MAX && LLONG_MAX>2147483647
00087 typedef long long int kate_int64_t;
00088 #elif defined LONG_LONG_MAX && LONG_LONG_MAX>2147483647
00089 typedef long long int kate_int64_t;
00090 #elif defined __GNUC__ && __GNUC__>=4 && defined __WORDSIZE && __WORDSIZE==64
00091
00092 typedef long int kate_int64_t;
00093 #elif defined __GNUC__ && __GNUC__>=4 && defined __WORDSIZE && __WORDSIZE==32
00094
00095 typedef long long int kate_int64_t;
00096 #else
00097 #error No 64 bit signed integer found
00098 #endif
00099
00100 #if defined HAVE_STDINT_H || defined HAVE_INTTYPES_H
00101 typedef uint64_t kate_uint64_t;
00102 #elif defined uint64_t
00103 typedef uint64_t kate_uint64_t;
00104 #elif defined UINT_MAX && UINT_MAX>2147483647
00105 typedef unsigned int kate_uint64_t;
00106 #elif defined USHRT_MAX && USHRT_MAX>2147483647
00107 typedef unsigned short int kate_uint64_t;
00108 #elif defined ULONG_MAX && ULONG_MAX>2147483647
00109 typedef unsigned long int kate_uint64_t;
00110 #elif defined ULLONG_MAX && ULLONG_MAX>2147483647
00111 typedef unsigned long long int kate_uint64_t;
00112 #elif defined ULONG_LONG_MAX && ULONG_LONG_MAX>2147483647
00113 typedef unsigned long long int kate_uint64_t;
00114 #elif defined __GNUC__ && __GNUC__>=4 && defined __WORDSIZE && __WORDSIZE==64
00115
00116 typedef unsigned long int kate_uint64_t;
00117 #elif defined __GNUC__ && __GNUC__>=4 && defined __WORDSIZE && __WORDSIZE==32
00118
00119 typedef unsigned long long int kate_uint64_t;
00120 #else
00121 #error No 64 bit unsigned signed integer found
00122 #endif
00123
00124 #if defined HAVE_STDINT_H || defined HAVE_INTTYPES_H
00125 typedef uintptr_t kate_uintptr_t;
00126 #elif defined uintptr_t
00127 typedef uintptr_t kate_uintptr_t;
00128 #else
00129 typedef size_t kate_uintptr_t;
00130 #endif
00131
00132 typedef float kate_float;
00133
00134 #endif
00135