8 /* prtypes.h defines IS_LITTLE_ENDIAN and IS_BIG ENDIAN */
10 #if defined (__SVR4) && defined (__sun)
11 /* int_types.h gets included somehow, so avoid redefining the types differently */
12 #include <sys/int_types.h>
14 #include <sys/types.h>
15 #elif !defined(ANDROID)
16 typedef PRInt8
int8_t;
17 typedef PRUint8
uint8_t;
18 typedef PRInt16
int16_t;
19 typedef PRUint16
uint16_t;
20 typedef PRInt32
int32_t;
21 typedef PRUint32
uint32_t;
22 typedef PRInt64
int64_t;
23 typedef PRUint64
uint64_t;
26 /* OS/2's stdlib typdefs uintptr_t. So we'll just include that so we don't collide */
28 #elif !defined(__intptr_t_defined) && !defined(_UINTPTR_T_DEFINED)
29 typedef PRUptrdiff
uintptr_t;
35 #if BYTE_ORDER == LITTLE_ENDIAN
36 #define IS_LITTLE_ENDIAN
37 #elif BYTE_ORDER == BIG_ENDIAN
41 /* all of the platforms that we use _MSC_VER on are little endian
42 * so this is sufficient for now */
44 #define IS_LITTLE_ENDIAN
48 #define IS_LITTLE_ENDIAN
51 #if !defined(IS_LITTLE_ENDIAN) && !defined(IS_BIG_ENDIAN)
52 #error Unknown endianess
55 #if defined (_SVR4) || defined (SVR4) || defined (__OpenBSD__) || defined (_sgi) || defined (__sun) || defined (sun) || defined (__digital__)
56 # include <inttypes.h>
57 #elif defined (_MSC_VER)
58 typedef __int8
int8_t;
59 typedef unsigned __int8
uint8_t;
60 typedef __int16
int16_t;
61 typedef unsigned __int16
uint16_t;
62 typedef __int32
int32_t;
63 typedef unsigned __int32
uint32_t;
64 typedef __int64
int64_t;
65 typedef unsigned __int64
uint64_t;
67 typedef unsigned __int64
uintptr_t;
69 typedef unsigned long uintptr_t;
73 # include <sys/inttypes.h>
80 typedef qcms_bool
bool;