Index: third_party/qcms/qcmstypes.h |
=================================================================== |
--- third_party/qcms/qcmstypes.h (revision 0) |
+++ third_party/qcms/qcmstypes.h (revision 0) |
@@ -0,0 +1,84 @@ |
+#ifndef QCMS_TYPES_H |
+#define QCMS_TYPES_H |
+ |
+#ifdef MOZ_QCMS |
+ |
+#include "prtypes.h" |
+ |
+/* prtypes.h defines IS_LITTLE_ENDIAN and IS_BIG ENDIAN */ |
+ |
+#if defined (__SVR4) && defined (__sun) |
+/* int_types.h gets included somehow, so avoid redefining the types differently */ |
+#include <sys/int_types.h> |
+#elif defined (_AIX) |
+#include <sys/types.h> |
+#elif !defined(ANDROID) |
+typedef PRInt8 int8_t; |
+typedef PRUint8 uint8_t; |
+typedef PRInt16 int16_t; |
+typedef PRUint16 uint16_t; |
+typedef PRInt32 int32_t; |
+typedef PRUint32 uint32_t; |
+typedef PRInt64 int64_t; |
+typedef PRUint64 uint64_t; |
+ |
+#ifdef __OS2__ |
+/* OS/2's stdlib typdefs uintptr_t. So we'll just include that so we don't collide */ |
+#include <stdlib.h> |
+#elif !defined(__intptr_t_defined) && !defined(_UINTPTR_T_DEFINED) |
+typedef PRUptrdiff uintptr_t; |
+#endif |
+#endif |
+ |
+#else // MOZ_QCMS |
+ |
+#if BYTE_ORDER == LITTLE_ENDIAN |
+#define IS_LITTLE_ENDIAN |
+#elif BYTE_ORDER == BIG_ENDIAN |
+#define IS_BIG_ENDIAN |
+#endif |
+ |
+/* all of the platforms that we use _MSC_VER on are little endian |
+ * so this is sufficient for now */ |
+#ifdef _MSC_VER |
+#define IS_LITTLE_ENDIAN |
+#endif |
+ |
+#ifdef __OS2__ |
+#define IS_LITTLE_ENDIAN |
+#endif |
+ |
+#if !defined(IS_LITTLE_ENDIAN) && !defined(IS_BIG_ENDIAN) |
+#error Unknown endianess |
+#endif |
+ |
+#if defined (_SVR4) || defined (SVR4) || defined (__OpenBSD__) || defined (_sgi) || defined (__sun) || defined (sun) || defined (__digital__) |
+# include <inttypes.h> |
+#elif defined (_MSC_VER) |
+typedef __int8 int8_t; |
+typedef unsigned __int8 uint8_t; |
+typedef __int16 int16_t; |
+typedef unsigned __int16 uint16_t; |
+typedef __int32 int32_t; |
+typedef unsigned __int32 uint32_t; |
+typedef __int64 int64_t; |
+typedef unsigned __int64 uint64_t; |
+#ifdef _WIN64 |
+typedef unsigned __int64 uintptr_t; |
+#else |
+typedef unsigned long uintptr_t; |
+#endif |
+ |
+#elif defined (_AIX) |
+# include <sys/inttypes.h> |
+#else |
+# include <stdint.h> |
+#endif |
+ |
+#endif |
+ |
+typedef qcms_bool bool; |
+#define true 1 |
+#define false 0 |
+ |
+#endif |