aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2015-03-05 04:42:43 +0100
committerSven Gothel <[email protected]>2015-03-05 04:42:43 +0100
commit47713518e3317b2621ee7ff1bbf8223fbce7fdc4 (patch)
tree26714f86a19721bb9eb0aade9cee4bd16c67ce66
parent6b05c6919f3df20ce0b55d5ac7dda7b14068568e (diff)
Bug 1135 - Support EGL 1.5 , ES 3.1 and GL 4.5 - Part 2: Minimal patch of vanilla GL headers
New vanilla GL headers were dropped w/ commit 6b05c6919f3df20ce0b55d5ac7dda7b14068568e. - egl/EGL/eglplatform.h: 2013-10-09 +generic void pointer for EGLNative*Type - khr/KHR/khrplatform.h: 2013-09-30 +using 'our' GlueGen stdint types, hence reduced - GL/glcorearb.h: 2015-02-02 +using 'our' stdint- and platform types - GL/glext.h: 2015-02-02 +using 'our' stdint- and platform types
-rw-r--r--make/stub_includes/egl/EGL/eglplatform.h7
-rw-r--r--make/stub_includes/khr/KHR/khrplatform.h101
-rw-r--r--make/stub_includes/opengl/GL/glcorearb.h19
-rw-r--r--make/stub_includes/opengl/GL/glext.h19
4 files changed, 21 insertions, 125 deletions
diff --git a/make/stub_includes/egl/EGL/eglplatform.h b/make/stub_includes/egl/EGL/eglplatform.h
index 3ab8844f0..cc52354b6 100644
--- a/make/stub_includes/egl/EGL/eglplatform.h
+++ b/make/stub_includes/egl/EGL/eglplatform.h
@@ -104,7 +104,12 @@ typedef Pixmap EGLNativePixmapType;
typedef Window EGLNativeWindowType;
#else
-#error "Platform not recognized"
+
+#warning "Info: Using generic void pointer for EGLNativeDisplayType, EGLNativeWindowType and EGLNativePixmapType"
+typedef struct __EGLNativeDisplayType* EGLNativeDisplayType;
+typedef struct __EGLNativeWindowType* EGLNativeWindowType;
+typedef struct __EGLNativePixmapType* EGLNativePixmapType;
+
#endif
/* EGL 1.2 types, renamed for consistency in EGL 1.3 */
diff --git a/make/stub_includes/khr/KHR/khrplatform.h b/make/stub_includes/khr/KHR/khrplatform.h
index c9e6f17d3..c49539fde 100644
--- a/make/stub_includes/khr/KHR/khrplatform.h
+++ b/make/stub_includes/khr/KHR/khrplatform.h
@@ -132,13 +132,14 @@
/*-------------------------------------------------------------------------
* basic type definitions
*-----------------------------------------------------------------------*/
-#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__)
-
/*
- * Using <stdint.h>
+ * Using <gluegen_stddef.h>
+ * Using <gluegen_stdint.h>
*/
-#include <stdint.h>
+#include <gluegen_stddef.h>
+#define HAS_STDDEF 1
+#include <gluegen_stdint.h>
typedef int32_t khronos_int32_t;
typedef uint32_t khronos_uint32_t;
typedef int64_t khronos_int64_t;
@@ -146,98 +147,14 @@ typedef uint64_t khronos_uint64_t;
#define KHRONOS_SUPPORT_INT64 1
#define KHRONOS_SUPPORT_FLOAT 1
-#elif defined(__VMS ) || defined(__sgi)
-
-/*
- * Using <inttypes.h>
- */
-#include <inttypes.h>
-typedef int32_t khronos_int32_t;
-typedef uint32_t khronos_uint32_t;
-typedef int64_t khronos_int64_t;
-typedef uint64_t khronos_uint64_t;
-#define KHRONOS_SUPPORT_INT64 1
-#define KHRONOS_SUPPORT_FLOAT 1
-
-#elif defined(_WIN32) && !defined(__SCITECH_SNAP__)
-
-/*
- * Win32
- */
-typedef __int32 khronos_int32_t;
-typedef unsigned __int32 khronos_uint32_t;
-typedef __int64 khronos_int64_t;
-typedef unsigned __int64 khronos_uint64_t;
-#define KHRONOS_SUPPORT_INT64 1
-#define KHRONOS_SUPPORT_FLOAT 1
-
-#elif defined(__sun__) || defined(__digital__)
-
-/*
- * Sun or Digital
- */
-typedef int khronos_int32_t;
-typedef unsigned int khronos_uint32_t;
-#if defined(__arch64__) || defined(_LP64)
-typedef long int khronos_int64_t;
-typedef unsigned long int khronos_uint64_t;
-#else
-typedef long long int khronos_int64_t;
-typedef unsigned long long int khronos_uint64_t;
-#endif /* __arch64__ */
-#define KHRONOS_SUPPORT_INT64 1
-#define KHRONOS_SUPPORT_FLOAT 1
-
-#elif 0
-
-/*
- * Hypothetical platform with no float or int64 support
- */
-typedef int khronos_int32_t;
-typedef unsigned int khronos_uint32_t;
-#define KHRONOS_SUPPORT_INT64 0
-#define KHRONOS_SUPPORT_FLOAT 0
-
-#else
-
-/*
- * Generic fallback
- */
-#include <stdint.h>
-typedef int32_t khronos_int32_t;
-typedef uint32_t khronos_uint32_t;
-typedef int64_t khronos_int64_t;
-typedef uint64_t khronos_uint64_t;
-#define KHRONOS_SUPPORT_INT64 1
-#define KHRONOS_SUPPORT_FLOAT 1
-
-#endif
-
-
-/*
- * Types that are (so far) the same on all platforms
- */
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;
-
-/*
- * Types that differ between LLP64 and LP64 architectures - in LLP64,
- * pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
- * to be the only LLP64 architecture in current use.
- */
-#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
+typedef ptrdiff_t khronos_intptr_t;
+typedef size_t khronos_uintptr_t;
+typedef ptrdiff_t khronos_ssize_t;
+typedef size_t khronos_usize_t;
#if KHRONOS_SUPPORT_FLOAT
/*
diff --git a/make/stub_includes/opengl/GL/glcorearb.h b/make/stub_includes/opengl/GL/glcorearb.h
index a8c912f68..238dc6818 100644
--- a/make/stub_includes/opengl/GL/glcorearb.h
+++ b/make/stub_includes/opengl/GL/glcorearb.h
@@ -36,22 +36,9 @@ extern "C" {
** Khronos $Revision: 29735 $ on $Date: 2015-02-02 19:00:01 -0800 (Mon, 02 Feb 2015) $
*/
-#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN 1
-#endif
-#include <windows.h>
-#endif
-
-#ifndef APIENTRY
-#define APIENTRY
-#endif
-#ifndef APIENTRYP
-#define APIENTRYP APIENTRY *
-#endif
-#ifndef GLAPI
-#define GLAPI extern
-#endif
+/* Function declaration macros - to move into gl-platform.h */
+#include "gl-platform.h"
+#include "gl-types.h"
/* glcorearb.h is for use with OpenGL core profile implementations.
** It should should be placed in the same directory as gl.h and
diff --git a/make/stub_includes/opengl/GL/glext.h b/make/stub_includes/opengl/GL/glext.h
index a3873a613..056abbd93 100644
--- a/make/stub_includes/opengl/GL/glext.h
+++ b/make/stub_includes/opengl/GL/glext.h
@@ -36,22 +36,9 @@ extern "C" {
** Khronos $Revision: 29735 $ on $Date: 2015-02-02 19:00:01 -0800 (Mon, 02 Feb 2015) $
*/
-#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN 1
-#endif
-#include <windows.h>
-#endif
-
-#ifndef APIENTRY
-#define APIENTRY
-#endif
-#ifndef APIENTRYP
-#define APIENTRYP APIENTRY *
-#endif
-#ifndef GLAPI
-#define GLAPI extern
-#endif
+/* Function declaration macros - to move into gl-platform.h */
+#include "gl-platform.h"
+#include "gl-types.h"
#define GL_GLEXT_VERSION 20150202