ext2_types.h.in revision e0ed7404719a9ddd2ba427a80db5365c8bad18c0
1a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)/* 2a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) * If linux/types.h is already been included, assume it has defined 3a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) * everything we need. (cross fingers) Other header files may have 4a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) * also defined the types that we need. 5a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) */ 6a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#if (!defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \ 7a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) !defined(_EXT2_TYPES_H)) 8a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#define _EXT2_TYPES_H 9a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)@ASM_TYPES_HEADER@ 115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 12a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#ifdef __U8_TYPEDEF 13a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)typedef __U8_TYPEDEF __u8; 14a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#else 15a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)typedef unsigned char __u8; 16a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#endif 17a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 18a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#ifdef __S8_TYPEDEF 19a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)typedef __S8_TYPEDEF __s8; 205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#else 215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef signed char __s8; 225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 24a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#ifdef __U16_TYPEDEF 25a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)typedef __U16_TYPEDEF __u16; 26a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#else 27a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#if (@SIZEOF_INT@ == 2) 285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef unsigned int __u16; 29a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#else 30a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#if (@SIZEOF_SHORT@ == 2) 31a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)typedef unsigned short __u16; 32a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#else 33a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) ?==error: undefined 16 bit type 34a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#endif /* SIZEOF_SHORT == 2 */ 35a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#endif /* SIZEOF_INT == 2 */ 36a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#endif /* __U16_TYPEDEF */ 37a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 38a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#ifdef __S16_TYPEDEF 395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef __S16_TYPEDEF __s16; 40a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#else 41a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#if (@SIZEOF_INT@ == 2) 42typedef int __s16; 43#else 44#if (@SIZEOF_SHORT@ == 2) 45typedef short __s16; 46#else 47 ?==error: undefined 16 bit type 48#endif /* SIZEOF_SHORT == 2 */ 49#endif /* SIZEOF_INT == 2 */ 50#endif /* __S16_TYPEDEF */ 51 52 53#ifdef __U32_TYPEDEF 54typedef __U32_TYPEDEF __u32; 55#else 56#if (@SIZEOF_INT@ == 4) 57typedef unsigned int __u32; 58#else 59#if (@SIZEOF_LONG@ == 4) 60typedef unsigned long __u32; 61#else 62#if (@SIZEOF_SHORT@ == 4) 63typedef unsigned short __u32; 64#else 65 ?== error: undefined 32 bit type 66#endif /* SIZEOF_SHORT == 4 */ 67#endif /* SIZEOF_LONG == 4 */ 68#endif /* SIZEOF_INT == 4 */ 69#endif /* __U32_TYPEDEF */ 70 71#ifdef __S32_TYPEDEF 72typedef __S32_TYPEDEF __s32; 73#else 74#if (@SIZEOF_INT@ == 4) 75typedef int __s32; 76#else 77#if (@SIZEOF_LONG@ == 4) 78typedef long __s32; 79#else 80#if (@SIZEOF_SHORT@ == 4) 81typedef short __s32; 82#else 83 ?== error: undefined 32 bit type 84#endif /* SIZEOF_SHORT == 4 */ 85#endif /* SIZEOF_LONG == 4 */ 86#endif /* SIZEOF_INT == 4 */ 87#endif /* __S32_TYPEDEF */ 88 89#ifdef __U64_TYPEDEF 90typedef __U64_TYPEDEF __u64; 91#else 92#if (@SIZEOF_INT@ == 8) 93typedef unsigned int __u64; 94#else 95#if (@SIZEOF_LONG_LONG@ == 8) 96typedef unsigned long long __u64; 97#else 98#if (@SIZEOF_LONG@ == 8) 99typedef unsigned long __u64; 100#endif /* SIZEOF_LONG_LONG == 8 */ 101#endif /* SIZEOF_LONG == 8 */ 102#endif /* SIZEOF_INT == 8 */ 103#endif /* __U64_TYPEDEF */ 104 105#ifdef __S64_TYPEDEF 106typedef __S64_TYPEDEF __s64; 107#else 108#if (@SIZEOF_INT@ == 8) 109typedef int __s64; 110#else 111#if (@SIZEOF_LONG_LONG@ == 8) 112#if defined(__GNUC__) 113typedef __signed__ long long __s64; 114#else 115typedef signed long long __s64; 116#endif /* __GNUC__ */ 117#else 118#if (@SIZEOF_LONG@ == 8) 119typedef long __s64; 120#endif /* SIZEOF_LONG_LONG == 8 */ 121#endif /* SIZEOF_LONG == 8 */ 122#endif /* SIZEOF_INT == 8 */ 123#endif /* __S64_TYPEDEF */ 124 125#undef __S8_TYPEDEF 126#undef __U8_TYPEDEF 127#undef __S16_TYPEDEF 128#undef __U16_TYPEDEF 129#undef __S32_TYPEDEF 130#undef __U32_TYPEDEF 131#undef __S64_TYPEDEF 132#undef __U64_TYPEDEF 133 134#endif /* _*_TYPES_H */ 135 136@PUBLIC_CONFIG_HEADER@ 137