119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project/* 219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project * If linux/types.h is already been included, assume it has defined 319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project * everything we need. (cross fingers) Other header files may have 419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project * also defined the types that we need. 519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project */ 619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (!defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \ 719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project !defined(_EXT2_TYPES_H)) 819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#define _BLKID_TYPES_H 919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 1019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#define __S8_TYPEDEF __signed__ char 1119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#define __U8_TYPEDEF unsigned char 1219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#define __S16_TYPEDEF __signed__ short 1319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#define __U16_TYPEDEF unsigned short 1419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#define __S32_TYPEDEF __signed__ int 1519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#define __U32_TYPEDEF unsigned int 1619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#define __S64_TYPEDEF __signed__ long long 1719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#define __U64_TYPEDEF unsigned long long 1819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 1919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#ifdef __U8_TYPEDEF 2019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef __U8_TYPEDEF __u8; 2119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 2219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef unsigned char __u8; 2319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif 2419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 2519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#ifdef __S8_TYPEDEF 2619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef __S8_TYPEDEF __s8; 2719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 2819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef signed char __s8; 2919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif 3019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 3119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#ifdef __U16_TYPEDEF 3219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef __U16_TYPEDEF __u16; 3319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 3419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (4 == 2) 3519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef unsigned int __u16; 3619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 3719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (2 == 2) 3819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef unsigned short __u16; 3919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 4019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project ?==error: undefined 16 bit type 4119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_SHORT == 2 */ 4219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_INT == 2 */ 4319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* __U16_TYPEDEF */ 4419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 4519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#ifdef __S16_TYPEDEF 4619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef __S16_TYPEDEF __s16; 4719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 4819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (4 == 2) 4919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef int __s16; 5019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 5119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (2 == 2) 5219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef short __s16; 5319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 5419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project ?==error: undefined 16 bit type 5519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_SHORT == 2 */ 5619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_INT == 2 */ 5719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* __S16_TYPEDEF */ 5819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 5919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 6019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#ifdef __U32_TYPEDEF 6119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef __U32_TYPEDEF __u32; 6219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 6319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (4 == 4) 6419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef unsigned int __u32; 6519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 668558eab78390d1924cd6b255686ceef133f294d5Ken Sumrall#if (4 == 4) 6719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef unsigned long __u32; 6819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 6919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (2 == 4) 7019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef unsigned short __u32; 7119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 7219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project ?== error: undefined 32 bit type 7319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_SHORT == 4 */ 7419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_LONG == 4 */ 7519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_INT == 4 */ 7619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* __U32_TYPEDEF */ 7719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 7819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#ifdef __S32_TYPEDEF 7919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef __S32_TYPEDEF __s32; 8019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 8119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (4 == 4) 8219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef int __s32; 8319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 848558eab78390d1924cd6b255686ceef133f294d5Ken Sumrall#if (4 == 4) 8519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef long __s32; 8619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 8719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (2 == 4) 8819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef short __s32; 8919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 9019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project ?== error: undefined 32 bit type 9119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_SHORT == 4 */ 9219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_LONG == 4 */ 9319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_INT == 4 */ 9419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* __S32_TYPEDEF */ 9519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 9619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#ifdef __U64_TYPEDEF 9719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef __U64_TYPEDEF __u64; 9819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 9919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (4 == 8) 10019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef unsigned int __u64; 10119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 1028558eab78390d1924cd6b255686ceef133f294d5Ken Sumrall#if (4 == 8) 10319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef unsigned long __u64; 10419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 10519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (8 == 8) 10619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef unsigned long long __u64; 10719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_LONG_LONG == 8 */ 10819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_LONG == 8 */ 10919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_INT == 8 */ 11019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* __U64_TYPEDEF */ 11119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 11219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#ifdef __S64_TYPEDEF 11319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef __S64_TYPEDEF __s64; 11419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 11519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (4 == 8) 11619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef int __s64; 11719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 1188558eab78390d1924cd6b255686ceef133f294d5Ken Sumrall#if (4 == 8) 11919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef long __s64; 12019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 12119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if (8 == 8) 12219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#if defined(__GNUC__) 12319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef __signed__ long long __s64; 12419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#else 12519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Projecttypedef signed long long __s64; 12619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* __GNUC__ */ 12719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_LONG_LONG == 8 */ 12819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_LONG == 8 */ 12919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* SIZEOF_INT == 8 */ 13019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* __S64_TYPEDEF */ 13119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 13219dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#undef __S8_TYPEDEF 13319dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#undef __U8_TYPEDEF 13419dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#undef __S16_TYPEDEF 13519dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#undef __U16_TYPEDEF 13619dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#undef __S32_TYPEDEF 13719dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#undef __U32_TYPEDEF 13819dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#undef __S64_TYPEDEF 13919dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#undef __U64_TYPEDEF 14019dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project 14119dacda2b02bb08c0ffb649f84526b249c749279The Android Open Source Project#endif /* _*_TYPES_H */ 142