Skip to content

Commit 8542ce6

Browse files
committed
Merge pull request #110 from MSOpenTech/v3-winrt-fix
V3 Update Angle to support gl_PointSize on Windows Phone 8.1
2 parents a9ca302 + b6518ec commit 8542ce6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+12150
-11856
lines changed

winrt_8.1-specific/angle/include/EGL/egl.h

Lines changed: 303 additions & 303 deletions
Large diffs are not rendered by default.

winrt_8.1-specific/angle/include/EGL/eglext.h

Lines changed: 769 additions & 766 deletions
Large diffs are not rendered by default.
Lines changed: 139 additions & 139 deletions
Original file line numberDiff line numberDiff line change
@@ -1,139 +1,139 @@
1-
#ifndef __eglplatform_h_
2-
#define __eglplatform_h_
3-
4-
/*
5-
** Copyright (c) 2007-2013 The Khronos Group Inc.
6-
**
7-
** Permission is hereby granted, free of charge, to any person obtaining a
8-
** copy of this software and/or associated documentation files (the
9-
** "Materials"), to deal in the Materials without restriction, including
10-
** without limitation the rights to use, copy, modify, merge, publish,
11-
** distribute, sublicense, and/or sell copies of the Materials, and to
12-
** permit persons to whom the Materials are furnished to do so, subject to
13-
** the following conditions:
14-
**
15-
** The above copyright notice and this permission notice shall be included
16-
** in all copies or substantial portions of the Materials.
17-
**
18-
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19-
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20-
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21-
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
22-
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23-
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24-
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
25-
*/
26-
27-
/* Platform-specific types and definitions for egl.h
28-
* $Revision: 23432 $ on $Date: 2013-10-09 00:57:24 -0700 (Wed, 09 Oct 2013) $
29-
*
30-
* Adopters may modify khrplatform.h and this file to suit their platform.
31-
* You are encouraged to submit all modifications to the Khronos group so that
32-
* they can be included in future versions of this file. Please submit changes
33-
* by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
34-
* by filing a bug against product "EGL" component "Registry".
35-
*/
36-
37-
#include <KHR/khrplatform.h>
38-
39-
/* Macros used in EGL function prototype declarations.
40-
*
41-
* EGL functions should be prototyped as:
42-
*
43-
* EGLAPI return-type EGLAPIENTRY eglFunction(arguments);
44-
* typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments);
45-
*
46-
* KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h
47-
*/
48-
49-
#ifndef EGLAPI
50-
#define EGLAPI KHRONOS_APICALL
51-
#endif
52-
53-
#ifndef EGLAPIENTRY
54-
#define EGLAPIENTRY KHRONOS_APIENTRY
55-
#endif
56-
#define EGLAPIENTRYP EGLAPIENTRY*
57-
58-
/* The types NativeDisplayType, NativeWindowType, and NativePixmapType
59-
* are aliases of window-system-dependent types, such as X Display * or
60-
* Windows Device Context. They must be defined in platform-specific
61-
* code below. The EGL-prefixed versions of Native*Type are the same
62-
* types, renamed in EGL 1.3 so all types in the API start with "EGL".
63-
*
64-
* Khronos STRONGLY RECOMMENDS that you use the default definitions
65-
* provided below, since these changes affect both binary and source
66-
* portability of applications using EGL running on different EGL
67-
* implementations.
68-
*/
69-
70-
#if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */
71-
#ifndef WIN32_LEAN_AND_MEAN
72-
#define WIN32_LEAN_AND_MEAN 1
73-
#endif
74-
#include <windows.h>
75-
76-
typedef HDC EGLNativeDisplayType;
77-
typedef HBITMAP EGLNativePixmapType;
78-
79-
#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP) /* Windows Desktop */
80-
typedef HWND EGLNativeWindowType;
81-
#else /* Windows Store */
82-
#include <inspectable.h>
83-
typedef IInspectable* EGLNativeWindowType;
84-
#endif
85-
86-
#elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */
87-
88-
typedef int EGLNativeDisplayType;
89-
typedef void *EGLNativeWindowType;
90-
typedef void *EGLNativePixmapType;
91-
92-
#elif defined(__ANDROID__) || defined(ANDROID)
93-
94-
#include <android/native_window.h>
95-
96-
struct egl_native_pixmap_t;
97-
98-
typedef struct ANativeWindow* EGLNativeWindowType;
99-
typedef struct egl_native_pixmap_t* EGLNativePixmapType;
100-
typedef void* EGLNativeDisplayType;
101-
102-
#elif defined(__unix__)
103-
104-
/* X11 (tentative) */
105-
#include <X11/Xlib.h>
106-
#include <X11/Xutil.h>
107-
108-
typedef Display *EGLNativeDisplayType;
109-
typedef Pixmap EGLNativePixmapType;
110-
typedef Window EGLNativeWindowType;
111-
112-
#elif defined(__GNUC__) && ( defined(__APPLE_CPP__) || defined(__APPLE_CC__) || defined(__MACOS_CLASSIC__) )
113-
114-
// TODO(jmadill): native implementation for OSX
115-
116-
typedef void *EGLNativeDisplayType;
117-
typedef void *EGLNativePixmapType;
118-
typedef void *EGLNativeWindowType;
119-
120-
#else
121-
#error "Platform not recognized"
122-
#endif
123-
124-
/* EGL 1.2 types, renamed for consistency in EGL 1.3 */
125-
typedef EGLNativeDisplayType NativeDisplayType;
126-
typedef EGLNativePixmapType NativePixmapType;
127-
typedef EGLNativeWindowType NativeWindowType;
128-
129-
130-
/* Define EGLint. This must be a signed integral type large enough to contain
131-
* all legal attribute names and values passed into and out of EGL, whether
132-
* their type is boolean, bitmask, enumerant (symbolic constant), integer,
133-
* handle, or other. While in general a 32-bit integer will suffice, if
134-
* handles are 64 bit types, then EGLint should be defined as a signed 64-bit
135-
* integer type.
136-
*/
137-
typedef khronos_int32_t EGLint;
138-
139-
#endif /* __eglplatform_h */
1+
#ifndef __eglplatform_h_
2+
#define __eglplatform_h_
3+
4+
/*
5+
** Copyright (c) 2007-2013 The Khronos Group Inc.
6+
**
7+
** Permission is hereby granted, free of charge, to any person obtaining a
8+
** copy of this software and/or associated documentation files (the
9+
** "Materials"), to deal in the Materials without restriction, including
10+
** without limitation the rights to use, copy, modify, merge, publish,
11+
** distribute, sublicense, and/or sell copies of the Materials, and to
12+
** permit persons to whom the Materials are furnished to do so, subject to
13+
** the following conditions:
14+
**
15+
** The above copyright notice and this permission notice shall be included
16+
** in all copies or substantial portions of the Materials.
17+
**
18+
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19+
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20+
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21+
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
22+
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23+
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24+
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
25+
*/
26+
27+
/* Platform-specific types and definitions for egl.h
28+
* $Revision: 23432 $ on $Date: 2013-10-09 00:57:24 -0700 (Wed, 09 Oct 2013) $
29+
*
30+
* Adopters may modify khrplatform.h and this file to suit their platform.
31+
* You are encouraged to submit all modifications to the Khronos group so that
32+
* they can be included in future versions of this file. Please submit changes
33+
* by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
34+
* by filing a bug against product "EGL" component "Registry".
35+
*/
36+
37+
#include <KHR/khrplatform.h>
38+
39+
/* Macros used in EGL function prototype declarations.
40+
*
41+
* EGL functions should be prototyped as:
42+
*
43+
* EGLAPI return-type EGLAPIENTRY eglFunction(arguments);
44+
* typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments);
45+
*
46+
* KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h
47+
*/
48+
49+
#ifndef EGLAPI
50+
#define EGLAPI KHRONOS_APICALL
51+
#endif
52+
53+
#ifndef EGLAPIENTRY
54+
#define EGLAPIENTRY KHRONOS_APIENTRY
55+
#endif
56+
#define EGLAPIENTRYP EGLAPIENTRY*
57+
58+
/* The types NativeDisplayType, NativeWindowType, and NativePixmapType
59+
* are aliases of window-system-dependent types, such as X Display * or
60+
* Windows Device Context. They must be defined in platform-specific
61+
* code below. The EGL-prefixed versions of Native*Type are the same
62+
* types, renamed in EGL 1.3 so all types in the API start with "EGL".
63+
*
64+
* Khronos STRONGLY RECOMMENDS that you use the default definitions
65+
* provided below, since these changes affect both binary and source
66+
* portability of applications using EGL running on different EGL
67+
* implementations.
68+
*/
69+
70+
#if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */
71+
#ifndef WIN32_LEAN_AND_MEAN
72+
#define WIN32_LEAN_AND_MEAN 1
73+
#endif
74+
#include <windows.h>
75+
76+
typedef HDC EGLNativeDisplayType;
77+
typedef HBITMAP EGLNativePixmapType;
78+
79+
#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP) /* Windows Desktop */
80+
typedef HWND EGLNativeWindowType;
81+
#else /* Windows Store */
82+
#include <inspectable.h>
83+
typedef IInspectable* EGLNativeWindowType;
84+
#endif
85+
86+
#elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */
87+
88+
typedef int EGLNativeDisplayType;
89+
typedef void *EGLNativeWindowType;
90+
typedef void *EGLNativePixmapType;
91+
92+
#elif defined(__ANDROID__) || defined(ANDROID)
93+
94+
#include <android/native_window.h>
95+
96+
struct egl_native_pixmap_t;
97+
98+
typedef struct ANativeWindow* EGLNativeWindowType;
99+
typedef struct egl_native_pixmap_t* EGLNativePixmapType;
100+
typedef void* EGLNativeDisplayType;
101+
102+
#elif defined(__unix__)
103+
104+
/* X11 (tentative) */
105+
#include <X11/Xlib.h>
106+
#include <X11/Xutil.h>
107+
108+
typedef Display *EGLNativeDisplayType;
109+
typedef Pixmap EGLNativePixmapType;
110+
typedef Window EGLNativeWindowType;
111+
112+
#elif defined(__GNUC__) && ( defined(__APPLE_CPP__) || defined(__APPLE_CC__) || defined(__MACOS_CLASSIC__) )
113+
114+
// TODO(jmadill): native implementation for OSX
115+
116+
typedef void *EGLNativeDisplayType;
117+
typedef void *EGLNativePixmapType;
118+
typedef void *EGLNativeWindowType;
119+
120+
#else
121+
#error "Platform not recognized"
122+
#endif
123+
124+
/* EGL 1.2 types, renamed for consistency in EGL 1.3 */
125+
typedef EGLNativeDisplayType NativeDisplayType;
126+
typedef EGLNativePixmapType NativePixmapType;
127+
typedef EGLNativeWindowType NativeWindowType;
128+
129+
130+
/* Define EGLint. This must be a signed integral type large enough to contain
131+
* all legal attribute names and values passed into and out of EGL, whether
132+
* their type is boolean, bitmask, enumerant (symbolic constant), integer,
133+
* handle, or other. While in general a 32-bit integer will suffice, if
134+
* handles are 64 bit types, then EGLint should be defined as a signed 64-bit
135+
* integer type.
136+
*/
137+
typedef khronos_int32_t EGLint;
138+
139+
#endif /* __eglplatform_h */

0 commit comments

Comments
 (0)