File angleproject-fix-typedefs-for-win64.patch of Package mingw64-angleproject
From dc2bfb6f8977732e1cd5ed9faac5a32870e2967a Mon Sep 17 00:00:00 2001
From: Jonathan Liu <net147@gmail.com>
Date: Tue, 18 Dec 2012 00:37:11 +1100
Subject: [PATCH] ANGLE: Fix typedefs for Win64
The long int type is incorrect for Windows 64-bit as LLP64 is used
there.
Change-Id: If4ccf49d6bb0cd7ba4ff2997cebfdbe5e7e9711c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
---
src/3rdparty/angle/include/KHR/khrplatform.h | 7 ++++
.../0007-ANGLE-Fix-typedefs-for-Win64.patch | 38 ++++++++++++++++++++
2 files changed, 45 insertions(+), 0 deletions(-)
create mode 100644 src/angle/patches/0007-ANGLE-Fix-typedefs-for-Win64.patch
diff --git a/src/3rdparty/angle/include/KHR/khrplatform.h b/src/3rdparty/angle/include/KHR/khrplatform.h
index 8ec0d19..56c676c 100644
--- a/src/3rdparty/angle/include/KHR/khrplatform.h
+++ b/src/3rdparty/angle/include/KHR/khrplatform.h
@@ -221,10 +221,17 @@ typedef signed char khronos_int8_t;
typedef unsigned char khronos_uint8_t;
typedef signed short int khronos_int16_t;
typedef unsigned short int khronos_uint16_t;
+#ifdef _WIN64
+typedef signed long long int khronos_intptr_t;
+typedef unsigned long long int khronos_uintptr_t;
+typedef signed long long int khronos_ssize_t;
+typedef unsigned long long int khronos_usize_t;
+#else
typedef signed long int khronos_intptr_t;
typedef unsigned long int khronos_uintptr_t;
typedef signed long int khronos_ssize_t;
typedef unsigned long int khronos_usize_t;
+#endif
#if KHRONOS_SUPPORT_FLOAT
/*
diff --git a/src/angle/patches/0007-ANGLE-Fix-typedefs-for-Win64.patch b/src/angle/patches/0007-ANGLE-Fix-typedefs-for-Win64.patch
new file mode 100644
index 0000000..ed744bb
--- /dev/null
+++ b/src/angle/patches/0007-ANGLE-Fix-typedefs-for-Win64.patch
@@ -0,0 +1,38 @@
+From cf01d1953de652910734d0e01b032da99194590d Mon Sep 17 00:00:00 2001
+From: Jonathan Liu <net147@gmail.com>
+Date: Tue, 18 Dec 2012 00:37:11 +1100
+Subject: [PATCH] ANGLE: Fix typedefs for Win64
+
+The long int type is incorrect for Windows 64-bit as LLP64 is used
+there.
+
+Change-Id: If4ccf49d6bb0cd7ba4ff2997cebfdbe5e7e9711c
+---
+ src/3rdparty/angle/include/KHR/khrplatform.h | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/src/3rdparty/angle/include/KHR/khrplatform.h b/src/3rdparty/angle/include/KHR/khrplatform.h
+index 8ec0d19..56c676c 100644
+--- a/src/3rdparty/angle/include/KHR/khrplatform.h
++++ b/src/3rdparty/angle/include/KHR/khrplatform.h
+@@ -221,10 +221,17 @@ typedef signed char khronos_int8_t;
+ typedef unsigned char khronos_uint8_t;
+ typedef signed short int khronos_int16_t;
+ typedef unsigned short int khronos_uint16_t;
++#ifdef _WIN64
++typedef signed long long int khronos_intptr_t;
++typedef unsigned long long int khronos_uintptr_t;
++typedef signed long long int khronos_ssize_t;
++typedef unsigned long long int khronos_usize_t;
++#else
+ typedef signed long int khronos_intptr_t;
+ typedef unsigned long int khronos_uintptr_t;
+ typedef signed long int khronos_ssize_t;
+ typedef unsigned long int khronos_usize_t;
++#endif
+
+ #if KHRONOS_SUPPORT_FLOAT
+ /*
+--
+1.8.0.1
+
--
1.7.1