1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/README-windows.txt Fri Nov 22 13:24:53 2013 -0300
1.3 @@ -0,0 +1,42 @@
1.4 +================================================================================
1.5 +Simple DirectMedia Layer for Windows
1.6 +================================================================================
1.7 +
1.8 +================================================================================
1.9 +OpenGL ES 2.x support
1.10 +================================================================================
1.11 +
1.12 +SDL has support for OpenGL ES 2.x under Windows via two alternative
1.13 +implementations.
1.14 +The most straightforward method consists in running your app in a system with
1.15 +a graphic card paired with a relatively recent (as of November of 2013) driver
1.16 +which supports the WGL_EXT_create_context_es2_profile extension. Vendors known
1.17 +to ship said extension on Windows currently include nVidia and Intel.
1.18 +
1.19 +The other method involves using the ANGLE library (https://code.google.com/p/angleproject/)
1.20 +If an OpenGL ES 2.x context is requested and no WGL_EXT_create_context_es2_profile
1.21 +extension is found, SDL will try to load the libEGL.dll library provided by
1.22 +ANGLE.
1.23 +To obtain the ANGLE binaries, you can either compile from source from
1.24 +https://chromium.googlesource.com/angle/angle or copy the relevant binaries from
1.25 +a recent Chrome/Chromium install for Windows. The files you need are:
1.26 +
1.27 + * libEGL.dll
1.28 + * libGLESv2.dll
1.29 + * d3dcompiler_46.dll (supports Windows Vista or later, better shader compiler)
1.30 + or...
1.31 + * d3dcompiler_43.dll (supports Windows XP or later)
1.32 +
1.33 +If you compile ANGLE from source, you can configure it so it does not need the
1.34 +d3dcompiler_* DLL at all (for details on this, see their documentation).
1.35 +However, by default SDL will try to preload the d3dcompiler_46.dll to
1.36 +comply with ANGLE's requirements. If you wish SDL to preload d3dcompiler_43.dll (to
1.37 +support Windows XP) or to skip this step at all, you can use the
1.38 +SDL_VIDEO_WIN_D3DCOMPILER hint (see SDL_hints.h for more details).
1.39 +
1.40 +Known Bugs:
1.41 +
1.42 + * SDL_GL_SetSwapInterval is currently a no op when using ANGLE. It appears
1.43 + that there's a bug in the library which prevents the window contents from
1.44 + refreshing if this is set to anything other than the default value.
1.45 +
2.1 --- a/VisualC/SDL/SDL_VS2008.vcproj Fri Nov 22 10:26:28 2013 -0300
2.2 +++ b/VisualC/SDL/SDL_VS2008.vcproj Fri Nov 22 13:24:53 2013 -0300
2.3 @@ -415,6 +415,18 @@
2.4 RelativePath="..\..\include\SDL_cpuinfo.h"
2.5 >
2.6 </File>
2.7 + <File
2.8 + RelativePath="..\..\include\\SDL_egl.h"
2.9 + >
2.10 + </File>
2.11 + <File
2.12 + RelativePath="..\..\src\video\sdl_egl_c.h"
2.13 + >
2.14 + </File>
2.15 + <File
2.16 + RelativePath="..\..\src\video\windows\SDL_windowsopengles.h"
2.17 + >
2.18 + </File>
2.19 <File
2.20 RelativePath="..\..\include\SDL_endian.h"
2.21 >
2.22 @@ -1273,6 +1285,22 @@
2.23 >
2.24 </File>
2.25 <File
2.26 + RelativePath="..\..\src\render\opengles2\SDL_render_gles2.c"
2.27 + >
2.28 + </File>
2.29 + <File
2.30 + RelativePath="..\..\src\render\opengles2\SDL_shaders_gles2.c"
2.31 + >
2.32 + </File>
2.33 + <File
2.34 + RelativePath="..\..\src\video\SDL_egl.c"
2.35 + >
2.36 + </File>
2.37 + <File
2.38 + RelativePath="..\..\src\video\windows\SDL_windowsopengles.c"
2.39 + >
2.40 + </File>
2.41 + <File
2.42 RelativePath="..\..\src\video\windows\SDL_windowsopengl.h"
2.43 >
2.44 </File>
3.1 --- a/VisualC/SDL/SDL_VS2010.vcxproj Fri Nov 22 10:26:28 2013 -0300
3.2 +++ b/VisualC/SDL/SDL_VS2010.vcxproj Fri Nov 22 13:24:53 2013 -0300
3.3 @@ -553,6 +553,9 @@
3.4 <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" />
3.5 <ClInclude Include="..\..\src\video\windows\wmmsg.h" />
3.6 <ClInclude Include="resource.h" />
3.7 + <ClInclude Include="..\..\include\SDL_egl.h" />
3.8 + <ClInclude Include="..\..\src\video\sdl_egl_c.h" />
3.9 + <ClInclude Include="..\..\src\video\windows\SDL_windowsopengles.h" />
3.10 </ItemGroup>
3.11 <ItemGroup>
3.12 <ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
3.13 @@ -669,6 +672,10 @@
3.14 <ClCompile Include="..\..\src\video\windows\SDL_windowsvideo.c" />
3.15 <ClCompile Include="..\..\src\video\windows\SDL_windowswindow.c" />
3.16 <ClCompile Include="..\..\src\events\SDL_windowevents.c" />
3.17 + <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
3.18 + <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
3.19 + <ClCompile Include="..\..\src\video\SDL_egl.c" />
3.20 + <ClCompile Include="..\..\src\video\windows\SDL_windowsopengles.c" />
3.21 </ItemGroup>
3.22 <ItemGroup>
3.23 <ResourceCompile Include="..\..\src\main\windows\version.rc" />
4.1 --- a/VisualC/SDL/SDL_VS2012.vcxproj Fri Nov 22 10:26:28 2013 -0300
4.2 +++ b/VisualC/SDL/SDL_VS2012.vcxproj Fri Nov 22 13:24:53 2013 -0300
4.3 @@ -344,6 +344,9 @@
4.4 <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" />
4.5 <ClInclude Include="..\..\src\video\windows\wmmsg.h" />
4.6 <ClInclude Include="resource.h" />
4.7 + <ClInclude Include="..\..\include\SDL_egl.h" />
4.8 + <ClInclude Include="..\..\src\video\sdl_egl_c.h" />
4.9 + <ClInclude Include="..\..\src\video\windows\SDL_windowsopengles.h" />
4.10 </ItemGroup>
4.11 <ItemGroup>
4.12 <ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
4.13 @@ -460,6 +463,10 @@
4.14 <ClCompile Include="..\..\src\video\windows\SDL_windowswindow.c" />
4.15 <ClCompile Include="..\..\src\events\SDL_windowevents.c" />
4.16 <ClCompile Include="..\..\src\joystick\SDL_gamecontroller.c" />
4.17 + <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
4.18 + <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
4.19 + <ClCompile Include="..\..\src\video\SDL_egl.c" />
4.20 + <ClCompile Include="..\..\src\video\windows\SDL_windowsopengles.c" />
4.21 </ItemGroup>
4.22 <ItemGroup>
4.23 <ResourceCompile Include="..\..\src\main\windows\version.rc" />
5.1 --- a/VisualC/SDL/SDL_VS2013.vcxproj Fri Nov 22 10:26:28 2013 -0300
5.2 +++ b/VisualC/SDL/SDL_VS2013.vcxproj Fri Nov 22 13:24:53 2013 -0300
5.3 @@ -1,472 +1,479 @@
5.4 -<?xml version="1.0" encoding="utf-8"?>
5.5 -<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5.6 - <ItemGroup Label="ProjectConfigurations">
5.7 - <ProjectConfiguration Include="Debug|Win32">
5.8 - <Configuration>Debug</Configuration>
5.9 - <Platform>Win32</Platform>
5.10 - </ProjectConfiguration>
5.11 - <ProjectConfiguration Include="Debug|x64">
5.12 - <Configuration>Debug</Configuration>
5.13 - <Platform>x64</Platform>
5.14 - </ProjectConfiguration>
5.15 - <ProjectConfiguration Include="Release|Win32">
5.16 - <Configuration>Release</Configuration>
5.17 - <Platform>Win32</Platform>
5.18 - </ProjectConfiguration>
5.19 - <ProjectConfiguration Include="Release|x64">
5.20 - <Configuration>Release</Configuration>
5.21 - <Platform>x64</Platform>
5.22 - </ProjectConfiguration>
5.23 - </ItemGroup>
5.24 - <PropertyGroup Label="Globals">
5.25 - <ProjectName>SDL2</ProjectName>
5.26 - <ProjectGuid>{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}</ProjectGuid>
5.27 - <RootNamespace>SDL</RootNamespace>
5.28 - </PropertyGroup>
5.29 - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
5.30 - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
5.31 - <ConfigurationType>DynamicLibrary</ConfigurationType>
5.32 - <UseOfMfc>false</UseOfMfc>
5.33 - <PlatformToolset>v120</PlatformToolset>
5.34 - </PropertyGroup>
5.35 - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
5.36 - <ConfigurationType>DynamicLibrary</ConfigurationType>
5.37 - <UseOfMfc>false</UseOfMfc>
5.38 - <PlatformToolset>v120</PlatformToolset>
5.39 - </PropertyGroup>
5.40 - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
5.41 - <ConfigurationType>DynamicLibrary</ConfigurationType>
5.42 - <UseOfMfc>false</UseOfMfc>
5.43 - <PlatformToolset>v120</PlatformToolset>
5.44 - </PropertyGroup>
5.45 - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
5.46 - <ConfigurationType>DynamicLibrary</ConfigurationType>
5.47 - <UseOfMfc>false</UseOfMfc>
5.48 - <CharacterSet>MultiByte</CharacterSet>
5.49 - <PlatformToolset>v120</PlatformToolset>
5.50 - </PropertyGroup>
5.51 - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
5.52 - <ImportGroup Label="ExtensionSettings">
5.53 - </ImportGroup>
5.54 - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
5.55 - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
5.56 - <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
5.57 - </ImportGroup>
5.58 - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
5.59 - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
5.60 - <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
5.61 - </ImportGroup>
5.62 - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
5.63 - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
5.64 - <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
5.65 - </ImportGroup>
5.66 - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
5.67 - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
5.68 - <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
5.69 - </ImportGroup>
5.70 - <PropertyGroup Label="UserMacros" />
5.71 - <PropertyGroup>
5.72 - <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
5.73 - <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir>
5.74 - <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
5.75 - <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
5.76 - <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
5.77 - <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>
5.78 - <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
5.79 - <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
5.80 - <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
5.81 - </PropertyGroup>
5.82 - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
5.83 - <PreBuildEvent />
5.84 - <Midl>
5.85 - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.86 - <MkTypLibCompatible>true</MkTypLibCompatible>
5.87 - <SuppressStartupBanner>true</SuppressStartupBanner>
5.88 - <TargetEnvironment>Win32</TargetEnvironment>
5.89 - </Midl>
5.90 - <ClCompile>
5.91 - <Optimization>Disabled</Optimization>
5.92 - <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
5.93 - <PreprocessorDefinitions>_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.94 - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
5.95 - <BufferSecurityCheck>false</BufferSecurityCheck>
5.96 - <PrecompiledHeader>
5.97 - </PrecompiledHeader>
5.98 - <WarningLevel>Level3</WarningLevel>
5.99 - <SuppressStartupBanner>true</SuppressStartupBanner>
5.100 - <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
5.101 - <CompileAs>Default</CompileAs>
5.102 - <ExceptionHandling>false</ExceptionHandling>
5.103 - <EnableEnhancedInstructionSet>StreamingSIMDExtensions</EnableEnhancedInstructionSet>
5.104 - </ClCompile>
5.105 - <ResourceCompile>
5.106 - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.107 - <Culture>0x0409</Culture>
5.108 - </ResourceCompile>
5.109 - <Link>
5.110 - <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
5.111 - <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
5.112 - <GenerateDebugInformation>true</GenerateDebugInformation>
5.113 - <SubSystem>Windows</SubSystem>
5.114 - <CLRUnmanagedCodeCheck>false</CLRUnmanagedCodeCheck>
5.115 - <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
5.116 - </Link>
5.117 - </ItemDefinitionGroup>
5.118 - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
5.119 - <Midl>
5.120 - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.121 - <MkTypLibCompatible>true</MkTypLibCompatible>
5.122 - <SuppressStartupBanner>true</SuppressStartupBanner>
5.123 - <TargetEnvironment>X64</TargetEnvironment>
5.124 - </Midl>
5.125 - <ClCompile>
5.126 - <Optimization>Disabled</Optimization>
5.127 - <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
5.128 - <PreprocessorDefinitions>_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.129 - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
5.130 - <BufferSecurityCheck>false</BufferSecurityCheck>
5.131 - <PrecompiledHeader>
5.132 - </PrecompiledHeader>
5.133 - <WarningLevel>Level3</WarningLevel>
5.134 - <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
5.135 - <ExceptionHandling>false</ExceptionHandling>
5.136 - </ClCompile>
5.137 - <ResourceCompile>
5.138 - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.139 - <Culture>0x0409</Culture>
5.140 - </ResourceCompile>
5.141 - <Link>
5.142 - <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
5.143 - <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
5.144 - <GenerateDebugInformation>true</GenerateDebugInformation>
5.145 - <SubSystem>Windows</SubSystem>
5.146 - <CLRUnmanagedCodeCheck>false</CLRUnmanagedCodeCheck>
5.147 - <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x64</AdditionalLibraryDirectories>
5.148 - </Link>
5.149 - </ItemDefinitionGroup>
5.150 - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
5.151 - <PreBuildEvent />
5.152 - <Midl>
5.153 - <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.154 - <MkTypLibCompatible>true</MkTypLibCompatible>
5.155 - <SuppressStartupBanner>true</SuppressStartupBanner>
5.156 - <TargetEnvironment>Win32</TargetEnvironment>
5.157 - </Midl>
5.158 - <ClCompile>
5.159 - <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
5.160 - <IntrinsicFunctions>false</IntrinsicFunctions>
5.161 - <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
5.162 - <PreprocessorDefinitions>NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.163 - <StringPooling>true</StringPooling>
5.164 - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
5.165 - <BufferSecurityCheck>false</BufferSecurityCheck>
5.166 - <FunctionLevelLinking>true</FunctionLevelLinking>
5.167 - <PrecompiledHeader>
5.168 - </PrecompiledHeader>
5.169 - <WarningLevel>Level3</WarningLevel>
5.170 - <SuppressStartupBanner>true</SuppressStartupBanner>
5.171 - <CompileAs>Default</CompileAs>
5.172 - <ExceptionHandling>false</ExceptionHandling>
5.173 - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
5.174 - <EnableEnhancedInstructionSet>StreamingSIMDExtensions</EnableEnhancedInstructionSet>
5.175 - </ClCompile>
5.176 - <ResourceCompile>
5.177 - <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.178 - <Culture>0x0409</Culture>
5.179 - </ResourceCompile>
5.180 - <Link>
5.181 - <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
5.182 - <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
5.183 - <SubSystem>Windows</SubSystem>
5.184 - <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
5.185 - <OptimizeReferences>true</OptimizeReferences>
5.186 - <EnableCOMDATFolding>true</EnableCOMDATFolding>
5.187 - <GenerateDebugInformation>true</GenerateDebugInformation>
5.188 - </Link>
5.189 - </ItemDefinitionGroup>
5.190 - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
5.191 - <Midl>
5.192 - <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.193 - <MkTypLibCompatible>true</MkTypLibCompatible>
5.194 - <SuppressStartupBanner>true</SuppressStartupBanner>
5.195 - <TargetEnvironment>X64</TargetEnvironment>
5.196 - </Midl>
5.197 - <ClCompile>
5.198 - <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
5.199 - <IntrinsicFunctions>false</IntrinsicFunctions>
5.200 - <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
5.201 - <PreprocessorDefinitions>NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.202 - <StringPooling>true</StringPooling>
5.203 - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
5.204 - <BufferSecurityCheck>false</BufferSecurityCheck>
5.205 - <FunctionLevelLinking>true</FunctionLevelLinking>
5.206 - <PrecompiledHeader>
5.207 - </PrecompiledHeader>
5.208 - <WarningLevel>Level3</WarningLevel>
5.209 - <ExceptionHandling>false</ExceptionHandling>
5.210 - <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
5.211 - </ClCompile>
5.212 - <ResourceCompile>
5.213 - <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.214 - <Culture>0x0409</Culture>
5.215 - </ResourceCompile>
5.216 - <Link>
5.217 - <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
5.218 - <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
5.219 - <SubSystem>Windows</SubSystem>
5.220 - <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x64</AdditionalLibraryDirectories>
5.221 - <OptimizeReferences>true</OptimizeReferences>
5.222 - <EnableCOMDATFolding>true</EnableCOMDATFolding>
5.223 - <GenerateDebugInformation>true</GenerateDebugInformation>
5.224 - </Link>
5.225 - </ItemDefinitionGroup>
5.226 - <ItemGroup>
5.227 - <ClInclude Include="..\..\include\SDL.h" />
5.228 - <ClInclude Include="..\..\include\SDL_assert.h" />
5.229 - <ClInclude Include="..\..\include\SDL_atomic.h" />
5.230 - <ClInclude Include="..\..\include\SDL_audio.h" />
5.231 - <ClInclude Include="..\..\include\SDL_bits.h" />
5.232 - <ClInclude Include="..\..\include\SDL_blendmode.h" />
5.233 - <ClInclude Include="..\..\include\SDL_clipboard.h" />
5.234 - <ClInclude Include="..\..\include\SDL_config.h" />
5.235 - <ClInclude Include="..\..\include\SDL_config_windows.h" />
5.236 - <ClInclude Include="..\..\include\SDL_copying.h" />
5.237 - <ClInclude Include="..\..\include\SDL_cpuinfo.h" />
5.238 - <ClInclude Include="..\..\include\SDL_endian.h" />
5.239 - <ClInclude Include="..\..\include\SDL_error.h" />
5.240 - <ClInclude Include="..\..\include\SDL_events.h" />
5.241 - <ClInclude Include="..\..\include\SDL_filesystem.h" />
5.242 - <ClInclude Include="..\..\include\SDL_gesture.h" />
5.243 - <ClInclude Include="..\..\include\SDL_haptic.h" />
5.244 - <ClInclude Include="..\..\include\SDL_hints.h" />
5.245 - <ClInclude Include="..\..\include\SDL_joystick.h" />
5.246 - <ClInclude Include="..\..\include\SDL_keyboard.h" />
5.247 - <ClInclude Include="..\..\include\SDL_keycode.h" />
5.248 - <ClInclude Include="..\..\include\SDL_loadso.h" />
5.249 - <ClInclude Include="..\..\include\SDL_log.h" />
5.250 - <ClInclude Include="..\..\include\SDL_main.h" />
5.251 - <ClInclude Include="..\..\include\SDL_mouse.h" />
5.252 - <ClInclude Include="..\..\include\SDL_mutex.h" />
5.253 - <ClInclude Include="..\..\include\SDL_name.h" />
5.254 - <ClInclude Include="..\..\include\SDL_opengl.h" />
5.255 - <ClInclude Include="..\..\include\SDL_opengles.h" />
5.256 - <ClInclude Include="..\..\include\SDL_pixels.h" />
5.257 - <ClInclude Include="..\..\include\SDL_platform.h" />
5.258 - <ClInclude Include="..\..\include\SDL_power.h" />
5.259 - <ClInclude Include="..\..\include\SDL_quit.h" />
5.260 - <ClInclude Include="..\..\include\SDL_rect.h" />
5.261 - <ClInclude Include="..\..\include\SDL_render.h" />
5.262 - <ClInclude Include="..\..\include\SDL_revision.h" />
5.263 - <ClInclude Include="..\..\include\SDL_rwops.h" />
5.264 - <ClInclude Include="..\..\include\SDL_scancode.h" />
5.265 - <ClInclude Include="..\..\include\SDL_shape.h" />
5.266 - <ClInclude Include="..\..\include\SDL_stdinc.h" />
5.267 - <ClInclude Include="..\..\include\SDL_surface.h" />
5.268 - <ClInclude Include="..\..\include\SDL_system.h" />
5.269 - <ClInclude Include="..\..\include\SDL_syswm.h" />
5.270 - <ClInclude Include="..\..\include\SDL_thread.h" />
5.271 - <ClInclude Include="..\..\include\SDL_timer.h" />
5.272 - <ClInclude Include="..\..\include\SDL_touch.h" />
5.273 - <ClInclude Include="..\..\include\SDL_types.h" />
5.274 - <ClInclude Include="..\..\include\SDL_version.h" />
5.275 - <ClInclude Include="..\..\include\SDL_video.h" />
5.276 - <ClInclude Include="..\..\include\SDL_gamecontroller.h" />
5.277 - <ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
5.278 - <ClInclude Include="..\..\src\events\blank_cursor.h" />
5.279 - <ClInclude Include="..\..\src\events\default_cursor.h" />
5.280 - <ClInclude Include="..\..\src\audio\directsound\directx.h" />
5.281 - <ClInclude Include="..\..\src\events\SDL_clipboardevents_c.h" />
5.282 - <ClInclude Include="..\..\src\events\SDL_gesture_c.h" />
5.283 - <ClInclude Include="..\..\src\events\SDL_touch_c.h" />
5.284 - <ClInclude Include="..\..\src\libm\math.h" />
5.285 - <ClInclude Include="..\..\src\libm\math_private.h" />
5.286 - <ClInclude Include="..\..\src\render\mmx.h" />
5.287 - <ClInclude Include="..\..\src\render\opengl\SDL_shaders_gl.h" />
5.288 - <ClInclude Include="..\..\src\render\SDL_sysrender.h" />
5.289 - <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" />
5.290 - <ClInclude Include="..\..\src\audio\SDL_audio_c.h" />
5.291 - <ClInclude Include="..\..\src\audio\SDL_audiodev_c.h" />
5.292 - <ClInclude Include="..\..\src\audio\SDL_audiomem.h" />
5.293 - <ClInclude Include="..\..\src\render\software\SDL_blendfillrect.h" />
5.294 - <ClInclude Include="..\..\src\render\software\SDL_blendline.h" />
5.295 - <ClInclude Include="..\..\src\render\software\SDL_blendpoint.h" />
5.296 - <ClInclude Include="..\..\src\render\software\SDL_draw.h" />
5.297 - <ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
5.298 - <ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
5.299 - <ClInclude Include="..\..\src\events\SDL_dropevents_c.h" />
5.300 - <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
5.301 - <ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
5.302 - <ClInclude Include="..\..\src\video\dummy\SDL_nullframebuffer_c.h" />
5.303 - <ClInclude Include="..\..\src\video\SDL_blit.h" />
5.304 - <ClInclude Include="..\..\src\video\SDL_blit_auto.h" />
5.305 - <ClInclude Include="..\..\src\video\SDL_blit_copy.h" />
5.306 - <ClInclude Include="..\..\src\video\SDL_blit_slow.h" />
5.307 - <ClInclude Include="..\..\src\video\SDL_shape_internals.h" />
5.308 - <ClInclude Include="..\..\src\audio\winmm\SDL_winmm.h" />
5.309 - <ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" />
5.310 - <ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" />
5.311 - <ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" />
5.312 - <ClInclude Include="..\..\src\SDL_error_c.h" />
5.313 - <ClInclude Include="..\..\src\SDL_hints_c.h" />
5.314 - <ClInclude Include="..\..\src\events\SDL_events_c.h" />
5.315 - <ClInclude Include="..\..\src\video\SDL_glesfuncs.h" />
5.316 - <ClInclude Include="..\..\src\video\SDL_glfuncs.h" />
5.317 - <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
5.318 - <ClInclude Include="..\..\src\events\SDL_keyboard_c.h" />
5.319 - <ClInclude Include="..\..\src\events\SDL_mouse_c.h" />
5.320 - <ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h" />
5.321 - <ClInclude Include="..\..\src\video\dummy\SDL_nullvideo.h" />
5.322 - <ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
5.323 - <ClInclude Include="..\..\src\video\SDL_rect_c.h" />
5.324 - <ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
5.325 - <ClInclude Include="..\..\src\video\SDL_stretch_c.h" />
5.326 - <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" />
5.327 - <ClInclude Include="..\..\src\events\SDL_sysevents.h" />
5.328 - <ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
5.329 - <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" />
5.330 - <ClInclude Include="..\..\src\thread\SDL_systhread.h" />
5.331 - <ClInclude Include="..\..\src\thread\windows\SDL_systhread_c.h" />
5.332 - <ClInclude Include="..\..\src\timer\SDL_systimer.h" />
5.333 - <ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
5.334 - <ClInclude Include="..\..\src\thread\SDL_thread_c.h" />
5.335 - <ClInclude Include="..\..\src\timer\SDL_timer_c.h" />
5.336 - <ClInclude Include="..\..\src\video\windows\SDL_vkeys.h" />
5.337 - <ClInclude Include="..\..\src\audio\SDL_wave.h" />
5.338 - <ClInclude Include="..\..\src\video\windows\SDL_windowsclipboard.h" />
5.339 - <ClInclude Include="..\..\src\video\windows\SDL_windowsevents.h" />
5.340 - <ClInclude Include="..\..\src\video\windows\SDL_windowsframebuffer.h" />
5.341 - <ClInclude Include="..\..\src\video\windows\SDL_windowskeyboard.h" />
5.342 - <ClInclude Include="..\..\src\video\windows\SDL_windowsmessagebox.h" />
5.343 - <ClInclude Include="..\..\src\video\windows\SDL_windowsmodes.h" />
5.344 - <ClInclude Include="..\..\src\video\windows\SDL_windowsmouse.h" />
5.345 - <ClInclude Include="..\..\src\video\windows\SDL_windowsopengl.h" />
5.346 - <ClInclude Include="..\..\src\video\windows\SDL_windowsshape.h" />
5.347 - <ClInclude Include="..\..\src\video\windows\SDL_windowsvideo.h" />
5.348 - <ClInclude Include="..\..\src\video\windows\SDL_windowswindow.h" />
5.349 - <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" />
5.350 - <ClInclude Include="..\..\src\video\windows\wmmsg.h" />
5.351 - <ClInclude Include="resource.h" />
5.352 - </ItemGroup>
5.353 - <ItemGroup>
5.354 - <ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
5.355 - <ClCompile Include="..\..\src\events\SDL_clipboardevents.c" />
5.356 - <ClCompile Include="..\..\src\events\SDL_gesture.c" />
5.357 - <ClCompile Include="..\..\src\events\SDL_touch.c" />
5.358 - <ClCompile Include="..\..\src\libm\e_atan2.c" />
5.359 - <ClCompile Include="..\..\src\libm\e_log.c" />
5.360 - <ClCompile Include="..\..\src\libm\e_pow.c" />
5.361 - <ClCompile Include="..\..\src\libm\e_rem_pio2.c" />
5.362 - <ClCompile Include="..\..\src\libm\e_sqrt.c" />
5.363 - <ClCompile Include="..\..\src\libm\k_cos.c" />
5.364 - <ClCompile Include="..\..\src\libm\k_rem_pio2.c" />
5.365 - <ClCompile Include="..\..\src\libm\k_sin.c" />
5.366 - <ClCompile Include="..\..\src\libm\s_atan.c" />
5.367 - <ClCompile Include="..\..\src\libm\s_copysign.c" />
5.368 - <ClCompile Include="..\..\src\libm\s_cos.c" />
5.369 - <ClCompile Include="..\..\src\libm\s_fabs.c" />
5.370 - <ClCompile Include="..\..\src\libm\s_floor.c" />
5.371 - <ClCompile Include="..\..\src\libm\s_scalbn.c" />
5.372 - <ClCompile Include="..\..\src\libm\s_sin.c" />
5.373 - <ClCompile Include="..\..\src\render\direct3d\SDL_render_d3d.c" />
5.374 - <ClCompile Include="..\..\src\render\opengl\SDL_render_gl.c" />
5.375 - <ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
5.376 - <ClCompile Include="..\..\src\render\SDL_render.c" />
5.377 - <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
5.378 - <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
5.379 - <ClCompile Include="..\..\src\render\software\SDL_blendfillrect.c" />
5.380 - <ClCompile Include="..\..\src\render\software\SDL_blendline.c" />
5.381 - <ClCompile Include="..\..\src\render\software\SDL_blendpoint.c" />
5.382 - <ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
5.383 - <ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
5.384 - <ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
5.385 - <ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
5.386 - <ClCompile Include="..\..\src\SDL.c" />
5.387 - <ClCompile Include="..\..\src\SDL_assert.c" />
5.388 - <ClCompile Include="..\..\src\atomic\SDL_atomic.c" />
5.389 - <ClCompile Include="..\..\src\atomic\SDL_spinlock.c" />
5.390 - <ClCompile Include="..\..\src\audio\SDL_audio.c" />
5.391 - <ClCompile Include="..\..\src\audio\SDL_audiocvt.c" />
5.392 - <ClCompile Include="..\..\src\audio\SDL_audiodev.c" />
5.393 - <ClCompile Include="..\..\src\audio\SDL_audiotypecvt.c" />
5.394 - <ClCompile Include="..\..\src\SDL_hints.c" />
5.395 - <ClCompile Include="..\..\src\SDL_log.c" />
5.396 - <ClCompile Include="..\..\src\video\dummy\SDL_nullframebuffer.c" />
5.397 - <ClCompile Include="..\..\src\video\SDL_blit.c" />
5.398 - <ClCompile Include="..\..\src\video\SDL_blit_0.c" />
5.399 - <ClCompile Include="..\..\src\video\SDL_blit_1.c" />
5.400 - <ClCompile Include="..\..\src\video\SDL_blit_A.c" />
5.401 - <ClCompile Include="..\..\src\video\SDL_blit_auto.c" />
5.402 - <ClCompile Include="..\..\src\video\SDL_blit_copy.c" />
5.403 - <ClCompile Include="..\..\src\video\SDL_blit_N.c" />
5.404 - <ClCompile Include="..\..\src\video\SDL_blit_slow.c" />
5.405 - <ClCompile Include="..\..\src\video\SDL_bmp.c" />
5.406 - <ClCompile Include="..\..\src\cpuinfo\SDL_cpuinfo.c" />
5.407 - <ClCompile Include="..\..\src\video\SDL_clipboard.c" />
5.408 - <ClCompile Include="..\..\src\video\SDL_shape.c" />
5.409 - <ClCompile Include="..\..\src\audio\winmm\SDL_winmm.c" />
5.410 - <ClCompile Include="..\..\src\audio\disk\SDL_diskaudio.c" />
5.411 - <ClCompile Include="..\..\src\audio\dummy\SDL_dummyaudio.c" />
5.412 - <ClCompile Include="..\..\src\audio\directsound\SDL_directsound.c" />
5.413 - <ClCompile Include="..\..\src\events\SDL_dropevents.c" />
5.414 - <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c" />
5.415 - <ClCompile Include="..\..\src\joystick\windows\SDL_dxjoystick.c" />
5.416 - <ClCompile Include="..\..\src\SDL_error.c" />
5.417 - <ClCompile Include="..\..\src\events\SDL_events.c" />
5.418 - <ClCompile Include="..\..\src\video\SDL_fillrect.c" />
5.419 - <ClCompile Include="..\..\src\stdlib\SDL_getenv.c" />
5.420 - <ClCompile Include="..\..\src\haptic\SDL_haptic.c" />
5.421 - <ClCompile Include="..\..\src\stdlib\SDL_iconv.c" />
5.422 - <ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
5.423 - <ClCompile Include="..\..\src\events\SDL_keyboard.c" />
5.424 - <ClCompile Include="..\..\src\stdlib\SDL_malloc.c" />
5.425 - <ClCompile Include="..\..\src\audio\SDL_mixer.c" />
5.426 - <ClCompile Include="..\..\src\joystick\windows\SDL_mmjoystick.c" />
5.427 - <ClCompile Include="..\..\src\events\SDL_mouse.c" />
5.428 - <ClCompile Include="..\..\src\video\dummy\SDL_nullevents.c" />
5.429 - <ClCompile Include="..\..\src\video\dummy\SDL_nullvideo.c" />
5.430 - <ClCompile Include="..\..\src\video\SDL_pixels.c" />
5.431 - <ClCompile Include="..\..\src\power\SDL_power.c" />
5.432 - <ClCompile Include="..\..\src\stdlib\SDL_qsort.c" />
5.433 - <ClCompile Include="..\..\src\events\SDL_quit.c" />
5.434 - <ClCompile Include="..\..\src\video\SDL_rect.c" />
5.435 - <ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
5.436 - <ClCompile Include="..\..\src\file\SDL_rwops.c" />
5.437 - <ClCompile Include="..\..\src\stdlib\SDL_stdlib.c" />
5.438 - <ClCompile Include="..\..\src\video\SDL_stretch.c" />
5.439 - <ClCompile Include="..\..\src\stdlib\SDL_string.c" />
5.440 - <ClCompile Include="..\..\src\video\SDL_surface.c" />
5.441 - <ClCompile Include="..\..\src\thread\generic\SDL_syscond.c" />
5.442 - <ClCompile Include="..\..\src\filesystem\windows\SDL_sysfilesystem.c" />
5.443 - <ClCompile Include="..\..\src\haptic\windows\SDL_syshaptic.c" />
5.444 - <ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
5.445 - <ClCompile Include="..\..\src\thread\windows\SDL_sysmutex.c" />
5.446 - <ClCompile Include="..\..\src\power\windows\SDL_syspower.c" />
5.447 - <ClCompile Include="..\..\src\thread\windows\SDL_syssem.c" />
5.448 - <ClCompile Include="..\..\src\thread\windows\SDL_systhread.c" />
5.449 - <ClCompile Include="..\..\src\thread\windows\SDL_systls.c" />
5.450 - <ClCompile Include="..\..\src\timer\windows\SDL_systimer.c" />
5.451 - <ClCompile Include="..\..\src\thread\SDL_thread.c" />
5.452 - <ClCompile Include="..\..\src\timer\SDL_timer.c" />
5.453 - <ClCompile Include="..\..\src\video\SDL_video.c" />
5.454 - <ClCompile Include="..\..\src\audio\SDL_wave.c" />
5.455 - <ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
5.456 - <ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
5.457 - <ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
5.458 - <ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
5.459 - <ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
5.460 - <ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
5.461 - <ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
5.462 - <ClCompile Include="..\..\src\video\windows\SDL_windowsopengl.c" />
5.463 - <ClCompile Include="..\..\src\video\windows\SDL_windowsshape.c" />
5.464 - <ClCompile Include="..\..\src\video\windows\SDL_windowsvideo.c" />
5.465 - <ClCompile Include="..\..\src\video\windows\SDL_windowswindow.c" />
5.466 - <ClCompile Include="..\..\src\events\SDL_windowevents.c" />
5.467 - <ClCompile Include="..\..\src\joystick\SDL_gamecontroller.c" />
5.468 - </ItemGroup>
5.469 - <ItemGroup>
5.470 - <ResourceCompile Include="..\..\src\main\windows\version.rc" />
5.471 - </ItemGroup>
5.472 - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
5.473 - <ImportGroup Label="ExtensionTargets">
5.474 - </ImportGroup>
5.475 +<?xml version="1.0" encoding="utf-8"?>
5.476 +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5.477 + <ItemGroup Label="ProjectConfigurations">
5.478 + <ProjectConfiguration Include="Debug|Win32">
5.479 + <Configuration>Debug</Configuration>
5.480 + <Platform>Win32</Platform>
5.481 + </ProjectConfiguration>
5.482 + <ProjectConfiguration Include="Debug|x64">
5.483 + <Configuration>Debug</Configuration>
5.484 + <Platform>x64</Platform>
5.485 + </ProjectConfiguration>
5.486 + <ProjectConfiguration Include="Release|Win32">
5.487 + <Configuration>Release</Configuration>
5.488 + <Platform>Win32</Platform>
5.489 + </ProjectConfiguration>
5.490 + <ProjectConfiguration Include="Release|x64">
5.491 + <Configuration>Release</Configuration>
5.492 + <Platform>x64</Platform>
5.493 + </ProjectConfiguration>
5.494 + </ItemGroup>
5.495 + <PropertyGroup Label="Globals">
5.496 + <ProjectName>SDL2</ProjectName>
5.497 + <ProjectGuid>{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}</ProjectGuid>
5.498 + <RootNamespace>SDL</RootNamespace>
5.499 + </PropertyGroup>
5.500 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
5.501 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
5.502 + <ConfigurationType>DynamicLibrary</ConfigurationType>
5.503 + <UseOfMfc>false</UseOfMfc>
5.504 + <PlatformToolset>v120</PlatformToolset>
5.505 + </PropertyGroup>
5.506 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
5.507 + <ConfigurationType>DynamicLibrary</ConfigurationType>
5.508 + <UseOfMfc>false</UseOfMfc>
5.509 + <PlatformToolset>v120</PlatformToolset>
5.510 + </PropertyGroup>
5.511 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
5.512 + <ConfigurationType>DynamicLibrary</ConfigurationType>
5.513 + <UseOfMfc>false</UseOfMfc>
5.514 + <PlatformToolset>v120</PlatformToolset>
5.515 + </PropertyGroup>
5.516 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
5.517 + <ConfigurationType>DynamicLibrary</ConfigurationType>
5.518 + <UseOfMfc>false</UseOfMfc>
5.519 + <CharacterSet>MultiByte</CharacterSet>
5.520 + <PlatformToolset>v120</PlatformToolset>
5.521 + </PropertyGroup>
5.522 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
5.523 + <ImportGroup Label="ExtensionSettings">
5.524 + </ImportGroup>
5.525 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
5.526 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
5.527 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
5.528 + </ImportGroup>
5.529 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
5.530 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
5.531 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
5.532 + </ImportGroup>
5.533 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
5.534 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
5.535 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
5.536 + </ImportGroup>
5.537 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
5.538 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
5.539 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
5.540 + </ImportGroup>
5.541 + <PropertyGroup Label="UserMacros" />
5.542 + <PropertyGroup>
5.543 + <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
5.544 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir>
5.545 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
5.546 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
5.547 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
5.548 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>
5.549 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
5.550 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
5.551 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
5.552 + </PropertyGroup>
5.553 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
5.554 + <PreBuildEvent />
5.555 + <Midl>
5.556 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.557 + <MkTypLibCompatible>true</MkTypLibCompatible>
5.558 + <SuppressStartupBanner>true</SuppressStartupBanner>
5.559 + <TargetEnvironment>Win32</TargetEnvironment>
5.560 + </Midl>
5.561 + <ClCompile>
5.562 + <Optimization>Disabled</Optimization>
5.563 + <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
5.564 + <PreprocessorDefinitions>_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.565 + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
5.566 + <BufferSecurityCheck>false</BufferSecurityCheck>
5.567 + <PrecompiledHeader>
5.568 + </PrecompiledHeader>
5.569 + <WarningLevel>Level3</WarningLevel>
5.570 + <SuppressStartupBanner>true</SuppressStartupBanner>
5.571 + <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
5.572 + <CompileAs>Default</CompileAs>
5.573 + <ExceptionHandling>false</ExceptionHandling>
5.574 + <EnableEnhancedInstructionSet>StreamingSIMDExtensions</EnableEnhancedInstructionSet>
5.575 + </ClCompile>
5.576 + <ResourceCompile>
5.577 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.578 + <Culture>0x0409</Culture>
5.579 + </ResourceCompile>
5.580 + <Link>
5.581 + <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
5.582 + <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
5.583 + <GenerateDebugInformation>true</GenerateDebugInformation>
5.584 + <SubSystem>Windows</SubSystem>
5.585 + <CLRUnmanagedCodeCheck>false</CLRUnmanagedCodeCheck>
5.586 + <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
5.587 + </Link>
5.588 + </ItemDefinitionGroup>
5.589 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
5.590 + <Midl>
5.591 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.592 + <MkTypLibCompatible>true</MkTypLibCompatible>
5.593 + <SuppressStartupBanner>true</SuppressStartupBanner>
5.594 + <TargetEnvironment>X64</TargetEnvironment>
5.595 + </Midl>
5.596 + <ClCompile>
5.597 + <Optimization>Disabled</Optimization>
5.598 + <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
5.599 + <PreprocessorDefinitions>_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.600 + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
5.601 + <BufferSecurityCheck>false</BufferSecurityCheck>
5.602 + <PrecompiledHeader>
5.603 + </PrecompiledHeader>
5.604 + <WarningLevel>Level3</WarningLevel>
5.605 + <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
5.606 + <ExceptionHandling>false</ExceptionHandling>
5.607 + </ClCompile>
5.608 + <ResourceCompile>
5.609 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.610 + <Culture>0x0409</Culture>
5.611 + </ResourceCompile>
5.612 + <Link>
5.613 + <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
5.614 + <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
5.615 + <GenerateDebugInformation>true</GenerateDebugInformation>
5.616 + <SubSystem>Windows</SubSystem>
5.617 + <CLRUnmanagedCodeCheck>false</CLRUnmanagedCodeCheck>
5.618 + <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x64</AdditionalLibraryDirectories>
5.619 + </Link>
5.620 + </ItemDefinitionGroup>
5.621 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
5.622 + <PreBuildEvent />
5.623 + <Midl>
5.624 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.625 + <MkTypLibCompatible>true</MkTypLibCompatible>
5.626 + <SuppressStartupBanner>true</SuppressStartupBanner>
5.627 + <TargetEnvironment>Win32</TargetEnvironment>
5.628 + </Midl>
5.629 + <ClCompile>
5.630 + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
5.631 + <IntrinsicFunctions>false</IntrinsicFunctions>
5.632 + <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
5.633 + <PreprocessorDefinitions>NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.634 + <StringPooling>true</StringPooling>
5.635 + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
5.636 + <BufferSecurityCheck>false</BufferSecurityCheck>
5.637 + <FunctionLevelLinking>true</FunctionLevelLinking>
5.638 + <PrecompiledHeader>
5.639 + </PrecompiledHeader>
5.640 + <WarningLevel>Level3</WarningLevel>
5.641 + <SuppressStartupBanner>true</SuppressStartupBanner>
5.642 + <CompileAs>Default</CompileAs>
5.643 + <ExceptionHandling>false</ExceptionHandling>
5.644 + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
5.645 + <EnableEnhancedInstructionSet>StreamingSIMDExtensions</EnableEnhancedInstructionSet>
5.646 + </ClCompile>
5.647 + <ResourceCompile>
5.648 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.649 + <Culture>0x0409</Culture>
5.650 + </ResourceCompile>
5.651 + <Link>
5.652 + <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
5.653 + <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
5.654 + <SubSystem>Windows</SubSystem>
5.655 + <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
5.656 + <OptimizeReferences>true</OptimizeReferences>
5.657 + <EnableCOMDATFolding>true</EnableCOMDATFolding>
5.658 + <GenerateDebugInformation>true</GenerateDebugInformation>
5.659 + </Link>
5.660 + </ItemDefinitionGroup>
5.661 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
5.662 + <Midl>
5.663 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.664 + <MkTypLibCompatible>true</MkTypLibCompatible>
5.665 + <SuppressStartupBanner>true</SuppressStartupBanner>
5.666 + <TargetEnvironment>X64</TargetEnvironment>
5.667 + </Midl>
5.668 + <ClCompile>
5.669 + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
5.670 + <IntrinsicFunctions>false</IntrinsicFunctions>
5.671 + <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
5.672 + <PreprocessorDefinitions>NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.673 + <StringPooling>true</StringPooling>
5.674 + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
5.675 + <BufferSecurityCheck>false</BufferSecurityCheck>
5.676 + <FunctionLevelLinking>true</FunctionLevelLinking>
5.677 + <PrecompiledHeader>
5.678 + </PrecompiledHeader>
5.679 + <WarningLevel>Level3</WarningLevel>
5.680 + <ExceptionHandling>false</ExceptionHandling>
5.681 + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
5.682 + </ClCompile>
5.683 + <ResourceCompile>
5.684 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
5.685 + <Culture>0x0409</Culture>
5.686 + </ResourceCompile>
5.687 + <Link>
5.688 + <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
5.689 + <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
5.690 + <SubSystem>Windows</SubSystem>
5.691 + <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x64</AdditionalLibraryDirectories>
5.692 + <OptimizeReferences>true</OptimizeReferences>
5.693 + <EnableCOMDATFolding>true</EnableCOMDATFolding>
5.694 + <GenerateDebugInformation>true</GenerateDebugInformation>
5.695 + </Link>
5.696 + </ItemDefinitionGroup>
5.697 + <ItemGroup>
5.698 + <ClInclude Include="..\..\include\SDL.h" />
5.699 + <ClInclude Include="..\..\include\SDL_assert.h" />
5.700 + <ClInclude Include="..\..\include\SDL_atomic.h" />
5.701 + <ClInclude Include="..\..\include\SDL_audio.h" />
5.702 + <ClInclude Include="..\..\include\SDL_bits.h" />
5.703 + <ClInclude Include="..\..\include\SDL_blendmode.h" />
5.704 + <ClInclude Include="..\..\include\SDL_clipboard.h" />
5.705 + <ClInclude Include="..\..\include\SDL_config.h" />
5.706 + <ClInclude Include="..\..\include\SDL_config_windows.h" />
5.707 + <ClInclude Include="..\..\include\SDL_copying.h" />
5.708 + <ClInclude Include="..\..\include\SDL_cpuinfo.h" />
5.709 + <ClInclude Include="..\..\include\SDL_egl.h" />
5.710 + <ClInclude Include="..\..\include\SDL_endian.h" />
5.711 + <ClInclude Include="..\..\include\SDL_error.h" />
5.712 + <ClInclude Include="..\..\include\SDL_events.h" />
5.713 + <ClInclude Include="..\..\include\SDL_filesystem.h" />
5.714 + <ClInclude Include="..\..\include\SDL_gesture.h" />
5.715 + <ClInclude Include="..\..\include\SDL_haptic.h" />
5.716 + <ClInclude Include="..\..\include\SDL_hints.h" />
5.717 + <ClInclude Include="..\..\include\SDL_joystick.h" />
5.718 + <ClInclude Include="..\..\include\SDL_keyboard.h" />
5.719 + <ClInclude Include="..\..\include\SDL_keycode.h" />
5.720 + <ClInclude Include="..\..\include\SDL_loadso.h" />
5.721 + <ClInclude Include="..\..\include\SDL_log.h" />
5.722 + <ClInclude Include="..\..\include\SDL_main.h" />
5.723 + <ClInclude Include="..\..\include\SDL_mouse.h" />
5.724 + <ClInclude Include="..\..\include\SDL_mutex.h" />
5.725 + <ClInclude Include="..\..\include\SDL_name.h" />
5.726 + <ClInclude Include="..\..\include\SDL_opengl.h" />
5.727 + <ClInclude Include="..\..\include\SDL_opengles.h" />
5.728 + <ClInclude Include="..\..\include\SDL_pixels.h" />
5.729 + <ClInclude Include="..\..\include\SDL_platform.h" />
5.730 + <ClInclude Include="..\..\include\SDL_power.h" />
5.731 + <ClInclude Include="..\..\include\SDL_quit.h" />
5.732 + <ClInclude Include="..\..\include\SDL_rect.h" />
5.733 + <ClInclude Include="..\..\include\SDL_render.h" />
5.734 + <ClInclude Include="..\..\include\SDL_revision.h" />
5.735 + <ClInclude Include="..\..\include\SDL_rwops.h" />
5.736 + <ClInclude Include="..\..\include\SDL_scancode.h" />
5.737 + <ClInclude Include="..\..\include\SDL_shape.h" />
5.738 + <ClInclude Include="..\..\include\SDL_stdinc.h" />
5.739 + <ClInclude Include="..\..\include\SDL_surface.h" />
5.740 + <ClInclude Include="..\..\include\SDL_system.h" />
5.741 + <ClInclude Include="..\..\include\SDL_syswm.h" />
5.742 + <ClInclude Include="..\..\include\SDL_thread.h" />
5.743 + <ClInclude Include="..\..\include\SDL_timer.h" />
5.744 + <ClInclude Include="..\..\include\SDL_touch.h" />
5.745 + <ClInclude Include="..\..\include\SDL_types.h" />
5.746 + <ClInclude Include="..\..\include\SDL_version.h" />
5.747 + <ClInclude Include="..\..\include\SDL_video.h" />
5.748 + <ClInclude Include="..\..\include\SDL_gamecontroller.h" />
5.749 + <ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
5.750 + <ClInclude Include="..\..\src\events\blank_cursor.h" />
5.751 + <ClInclude Include="..\..\src\events\default_cursor.h" />
5.752 + <ClInclude Include="..\..\src\audio\directsound\directx.h" />
5.753 + <ClInclude Include="..\..\src\events\SDL_clipboardevents_c.h" />
5.754 + <ClInclude Include="..\..\src\events\SDL_gesture_c.h" />
5.755 + <ClInclude Include="..\..\src\events\SDL_touch_c.h" />
5.756 + <ClInclude Include="..\..\src\libm\math.h" />
5.757 + <ClInclude Include="..\..\src\libm\math_private.h" />
5.758 + <ClInclude Include="..\..\src\render\mmx.h" />
5.759 + <ClInclude Include="..\..\src\render\opengl\SDL_shaders_gl.h" />
5.760 + <ClInclude Include="..\..\src\render\SDL_sysrender.h" />
5.761 + <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" />
5.762 + <ClInclude Include="..\..\src\audio\SDL_audio_c.h" />
5.763 + <ClInclude Include="..\..\src\audio\SDL_audiodev_c.h" />
5.764 + <ClInclude Include="..\..\src\audio\SDL_audiomem.h" />
5.765 + <ClInclude Include="..\..\src\render\software\SDL_blendfillrect.h" />
5.766 + <ClInclude Include="..\..\src\render\software\SDL_blendline.h" />
5.767 + <ClInclude Include="..\..\src\render\software\SDL_blendpoint.h" />
5.768 + <ClInclude Include="..\..\src\render\software\SDL_draw.h" />
5.769 + <ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
5.770 + <ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
5.771 + <ClInclude Include="..\..\src\events\SDL_dropevents_c.h" />
5.772 + <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
5.773 + <ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
5.774 + <ClInclude Include="..\..\src\video\dummy\SDL_nullframebuffer_c.h" />
5.775 + <ClInclude Include="..\..\src\video\SDL_blit.h" />
5.776 + <ClInclude Include="..\..\src\video\SDL_blit_auto.h" />
5.777 + <ClInclude Include="..\..\src\video\SDL_blit_copy.h" />
5.778 + <ClInclude Include="..\..\src\video\SDL_blit_slow.h" />
5.779 + <ClInclude Include="..\..\src\video\sdl_egl_c.h" />
5.780 + <ClInclude Include="..\..\src\video\SDL_shape_internals.h" />
5.781 + <ClInclude Include="..\..\src\audio\winmm\SDL_winmm.h" />
5.782 + <ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" />
5.783 + <ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" />
5.784 + <ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" />
5.785 + <ClInclude Include="..\..\src\SDL_error_c.h" />
5.786 + <ClInclude Include="..\..\src\SDL_hints_c.h" />
5.787 + <ClInclude Include="..\..\src\events\SDL_events_c.h" />
5.788 + <ClInclude Include="..\..\src\video\SDL_glesfuncs.h" />
5.789 + <ClInclude Include="..\..\src\video\SDL_glfuncs.h" />
5.790 + <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
5.791 + <ClInclude Include="..\..\src\events\SDL_keyboard_c.h" />
5.792 + <ClInclude Include="..\..\src\events\SDL_mouse_c.h" />
5.793 + <ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h" />
5.794 + <ClInclude Include="..\..\src\video\dummy\SDL_nullvideo.h" />
5.795 + <ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
5.796 + <ClInclude Include="..\..\src\video\SDL_rect_c.h" />
5.797 + <ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
5.798 + <ClInclude Include="..\..\src\video\SDL_stretch_c.h" />
5.799 + <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" />
5.800 + <ClInclude Include="..\..\src\events\SDL_sysevents.h" />
5.801 + <ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
5.802 + <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" />
5.803 + <ClInclude Include="..\..\src\thread\SDL_systhread.h" />
5.804 + <ClInclude Include="..\..\src\thread\windows\SDL_systhread_c.h" />
5.805 + <ClInclude Include="..\..\src\timer\SDL_systimer.h" />
5.806 + <ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
5.807 + <ClInclude Include="..\..\src\thread\SDL_thread_c.h" />
5.808 + <ClInclude Include="..\..\src\timer\SDL_timer_c.h" />
5.809 + <ClInclude Include="..\..\src\video\windows\SDL_vkeys.h" />
5.810 + <ClInclude Include="..\..\src\audio\SDL_wave.h" />
5.811 + <ClInclude Include="..\..\src\video\windows\SDL_windowsclipboard.h" />
5.812 + <ClInclude Include="..\..\src\video\windows\SDL_windowsevents.h" />
5.813 + <ClInclude Include="..\..\src\video\windows\SDL_windowsframebuffer.h" />
5.814 + <ClInclude Include="..\..\src\video\windows\SDL_windowskeyboard.h" />
5.815 + <ClInclude Include="..\..\src\video\windows\SDL_windowsmessagebox.h" />
5.816 + <ClInclude Include="..\..\src\video\windows\SDL_windowsmodes.h" />
5.817 + <ClInclude Include="..\..\src\video\windows\SDL_windowsmouse.h" />
5.818 + <ClInclude Include="..\..\src\video\windows\SDL_windowsopengl.h" />
5.819 + <ClInclude Include="..\..\src\video\windows\SDL_windowsopengles.h" />
5.820 + <ClInclude Include="..\..\src\video\windows\SDL_windowsshape.h" />
5.821 + <ClInclude Include="..\..\src\video\windows\SDL_windowsvideo.h" />
5.822 + <ClInclude Include="..\..\src\video\windows\SDL_windowswindow.h" />
5.823 + <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" />
5.824 + <ClInclude Include="..\..\src\video\windows\wmmsg.h" />
5.825 + <ClInclude Include="resource.h" />
5.826 + </ItemGroup>
5.827 + <ItemGroup>
5.828 + <ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
5.829 + <ClCompile Include="..\..\src\events\SDL_clipboardevents.c" />
5.830 + <ClCompile Include="..\..\src\events\SDL_gesture.c" />
5.831 + <ClCompile Include="..\..\src\events\SDL_touch.c" />
5.832 + <ClCompile Include="..\..\src\libm\e_atan2.c" />
5.833 + <ClCompile Include="..\..\src\libm\e_log.c" />
5.834 + <ClCompile Include="..\..\src\libm\e_pow.c" />
5.835 + <ClCompile Include="..\..\src\libm\e_rem_pio2.c" />
5.836 + <ClCompile Include="..\..\src\libm\e_sqrt.c" />
5.837 + <ClCompile Include="..\..\src\libm\k_cos.c" />
5.838 + <ClCompile Include="..\..\src\libm\k_rem_pio2.c" />
5.839 + <ClCompile Include="..\..\src\libm\k_sin.c" />
5.840 + <ClCompile Include="..\..\src\libm\s_atan.c" />
5.841 + <ClCompile Include="..\..\src\libm\s_copysign.c" />
5.842 + <ClCompile Include="..\..\src\libm\s_cos.c" />
5.843 + <ClCompile Include="..\..\src\libm\s_fabs.c" />
5.844 + <ClCompile Include="..\..\src\libm\s_floor.c" />
5.845 + <ClCompile Include="..\..\src\libm\s_scalbn.c" />
5.846 + <ClCompile Include="..\..\src\libm\s_sin.c" />
5.847 + <ClCompile Include="..\..\src\render\direct3d\SDL_render_d3d.c" />
5.848 + <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
5.849 + <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
5.850 + <ClCompile Include="..\..\src\render\opengl\SDL_render_gl.c" />
5.851 + <ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
5.852 + <ClCompile Include="..\..\src\render\SDL_render.c" />
5.853 + <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
5.854 + <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
5.855 + <ClCompile Include="..\..\src\render\software\SDL_blendfillrect.c" />
5.856 + <ClCompile Include="..\..\src\render\software\SDL_blendline.c" />
5.857 + <ClCompile Include="..\..\src\render\software\SDL_blendpoint.c" />
5.858 + <ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
5.859 + <ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
5.860 + <ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
5.861 + <ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
5.862 + <ClCompile Include="..\..\src\SDL.c" />
5.863 + <ClCompile Include="..\..\src\SDL_assert.c" />
5.864 + <ClCompile Include="..\..\src\atomic\SDL_atomic.c" />
5.865 + <ClCompile Include="..\..\src\atomic\SDL_spinlock.c" />
5.866 + <ClCompile Include="..\..\src\audio\SDL_audio.c" />
5.867 + <ClCompile Include="..\..\src\audio\SDL_audiocvt.c" />
5.868 + <ClCompile Include="..\..\src\audio\SDL_audiodev.c" />
5.869 + <ClCompile Include="..\..\src\audio\SDL_audiotypecvt.c" />
5.870 + <ClCompile Include="..\..\src\SDL_hints.c" />
5.871 + <ClCompile Include="..\..\src\SDL_log.c" />
5.872 + <ClCompile Include="..\..\src\video\dummy\SDL_nullframebuffer.c" />
5.873 + <ClCompile Include="..\..\src\video\SDL_blit.c" />
5.874 + <ClCompile Include="..\..\src\video\SDL_blit_0.c" />
5.875 + <ClCompile Include="..\..\src\video\SDL_blit_1.c" />
5.876 + <ClCompile Include="..\..\src\video\SDL_blit_A.c" />
5.877 + <ClCompile Include="..\..\src\video\SDL_blit_auto.c" />
5.878 + <ClCompile Include="..\..\src\video\SDL_blit_copy.c" />
5.879 + <ClCompile Include="..\..\src\video\SDL_blit_N.c" />
5.880 + <ClCompile Include="..\..\src\video\SDL_blit_slow.c" />
5.881 + <ClCompile Include="..\..\src\video\SDL_bmp.c" />
5.882 + <ClCompile Include="..\..\src\cpuinfo\SDL_cpuinfo.c" />
5.883 + <ClCompile Include="..\..\src\video\SDL_clipboard.c" />
5.884 + <ClCompile Include="..\..\src\video\SDL_egl.c" />
5.885 + <ClCompile Include="..\..\src\video\SDL_shape.c" />
5.886 + <ClCompile Include="..\..\src\audio\winmm\SDL_winmm.c" />
5.887 + <ClCompile Include="..\..\src\audio\disk\SDL_diskaudio.c" />
5.888 + <ClCompile Include="..\..\src\audio\dummy\SDL_dummyaudio.c" />
5.889 + <ClCompile Include="..\..\src\audio\directsound\SDL_directsound.c" />
5.890 + <ClCompile Include="..\..\src\events\SDL_dropevents.c" />
5.891 + <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c" />
5.892 + <ClCompile Include="..\..\src\joystick\windows\SDL_dxjoystick.c" />
5.893 + <ClCompile Include="..\..\src\SDL_error.c" />
5.894 + <ClCompile Include="..\..\src\events\SDL_events.c" />
5.895 + <ClCompile Include="..\..\src\video\SDL_fillrect.c" />
5.896 + <ClCompile Include="..\..\src\stdlib\SDL_getenv.c" />
5.897 + <ClCompile Include="..\..\src\haptic\SDL_haptic.c" />
5.898 + <ClCompile Include="..\..\src\stdlib\SDL_iconv.c" />
5.899 + <ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
5.900 + <ClCompile Include="..\..\src\events\SDL_keyboard.c" />
5.901 + <ClCompile Include="..\..\src\stdlib\SDL_malloc.c" />
5.902 + <ClCompile Include="..\..\src\audio\SDL_mixer.c" />
5.903 + <ClCompile Include="..\..\src\joystick\windows\SDL_mmjoystick.c" />
5.904 + <ClCompile Include="..\..\src\events\SDL_mouse.c" />
5.905 + <ClCompile Include="..\..\src\video\dummy\SDL_nullevents.c" />
5.906 + <ClCompile Include="..\..\src\video\dummy\SDL_nullvideo.c" />
5.907 + <ClCompile Include="..\..\src\video\SDL_pixels.c" />
5.908 + <ClCompile Include="..\..\src\power\SDL_power.c" />
5.909 + <ClCompile Include="..\..\src\stdlib\SDL_qsort.c" />
5.910 + <ClCompile Include="..\..\src\events\SDL_quit.c" />
5.911 + <ClCompile Include="..\..\src\video\SDL_rect.c" />
5.912 + <ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
5.913 + <ClCompile Include="..\..\src\file\SDL_rwops.c" />
5.914 + <ClCompile Include="..\..\src\stdlib\SDL_stdlib.c" />
5.915 + <ClCompile Include="..\..\src\video\SDL_stretch.c" />
5.916 + <ClCompile Include="..\..\src\stdlib\SDL_string.c" />
5.917 + <ClCompile Include="..\..\src\video\SDL_surface.c" />
5.918 + <ClCompile Include="..\..\src\thread\generic\SDL_syscond.c" />
5.919 + <ClCompile Include="..\..\src\filesystem\windows\SDL_sysfilesystem.c" />
5.920 + <ClCompile Include="..\..\src\haptic\windows\SDL_syshaptic.c" />
5.921 + <ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
5.922 + <ClCompile Include="..\..\src\thread\windows\SDL_sysmutex.c" />
5.923 + <ClCompile Include="..\..\src\power\windows\SDL_syspower.c" />
5.924 + <ClCompile Include="..\..\src\thread\windows\SDL_syssem.c" />
5.925 + <ClCompile Include="..\..\src\thread\windows\SDL_systhread.c" />
5.926 + <ClCompile Include="..\..\src\thread\windows\SDL_systls.c" />
5.927 + <ClCompile Include="..\..\src\timer\windows\SDL_systimer.c" />
5.928 + <ClCompile Include="..\..\src\thread\SDL_thread.c" />
5.929 + <ClCompile Include="..\..\src\timer\SDL_timer.c" />
5.930 + <ClCompile Include="..\..\src\video\SDL_video.c" />
5.931 + <ClCompile Include="..\..\src\audio\SDL_wave.c" />
5.932 + <ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
5.933 + <ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
5.934 + <ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
5.935 + <ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
5.936 + <ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
5.937 + <ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
5.938 + <ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
5.939 + <ClCompile Include="..\..\src\video\windows\SDL_windowsopengl.c" />
5.940 + <ClCompile Include="..\..\src\video\windows\SDL_windowsopengles.c" />
5.941 + <ClCompile Include="..\..\src\video\windows\SDL_windowsshape.c" />
5.942 + <ClCompile Include="..\..\src\video\windows\SDL_windowsvideo.c" />
5.943 + <ClCompile Include="..\..\src\video\windows\SDL_windowswindow.c" />
5.944 + <ClCompile Include="..\..\src\events\SDL_windowevents.c" />
5.945 + <ClCompile Include="..\..\src\joystick\SDL_gamecontroller.c" />
5.946 + </ItemGroup>
5.947 + <ItemGroup>
5.948 + <ResourceCompile Include="..\..\src\main\windows\version.rc" />
5.949 + </ItemGroup>
5.950 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
5.951 + <ImportGroup Label="ExtensionTargets">
5.952 + </ImportGroup>
5.953 </Project>
5.954 \ No newline at end of file
6.1 --- a/VisualC/SDL_VS2013.sln Fri Nov 22 10:26:28 2013 -0300
6.2 +++ b/VisualC/SDL_VS2013.sln Fri Nov 22 13:24:53 2013 -0300
6.3 @@ -1,5 +1,8 @@
6.4 -Microsoft Visual Studio Solution File, Format Version 12.00
6.5 +
6.6 +Microsoft Visual Studio Solution File, Format Version 12.00
6.7 # Visual Studio 2013
6.8 +VisualStudioVersion = 12.0.21005.1
6.9 +MinimumVisualStudioVersion = 10.0.40219.1
6.10 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2", "SDL\SDL_VS2013.vcxproj", "{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}"
6.11 EndProject
6.12 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2main", "SDLmain\SDLmain_VS2013.vcxproj", "{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}"
6.13 @@ -102,6 +105,8 @@
6.14 {DA956FD3-E143-46F2-9FE5-C77BEBC56B1A} = {DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}
6.15 EndProjectSection
6.16 EndProject
6.17 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testgles2", "tests\testgles2\testgles2_VS2013.vcxproj", "{E5287C64-0646-4BFA-A772-1DB5A649F35E}"
6.18 +EndProject
6.19 Global
6.20 GlobalSection(SolutionConfigurationPlatforms) = preSolution
6.21 Debug|Win32 = Debug|Win32
6.22 @@ -252,6 +257,14 @@
6.23 {55812185-D13C-4022-9C81-32E0F4A08BCC}.Release|Win32.Build.0 = Release|Win32
6.24 {55812185-D13C-4022-9C81-32E0F4A08BCC}.Release|x64.ActiveCfg = Release|x64
6.25 {55812185-D13C-4022-9C81-32E0F4A08BCC}.Release|x64.Build.0 = Release|x64
6.26 + {E5287C64-0646-4BFA-A772-1DB5A649F35E}.Debug|Win32.ActiveCfg = Debug|Win32
6.27 + {E5287C64-0646-4BFA-A772-1DB5A649F35E}.Debug|Win32.Build.0 = Debug|Win32
6.28 + {E5287C64-0646-4BFA-A772-1DB5A649F35E}.Debug|x64.ActiveCfg = Debug|x64
6.29 + {E5287C64-0646-4BFA-A772-1DB5A649F35E}.Debug|x64.Build.0 = Debug|x64
6.30 + {E5287C64-0646-4BFA-A772-1DB5A649F35E}.Release|Win32.ActiveCfg = Release|Win32
6.31 + {E5287C64-0646-4BFA-A772-1DB5A649F35E}.Release|Win32.Build.0 = Release|Win32
6.32 + {E5287C64-0646-4BFA-A772-1DB5A649F35E}.Release|x64.ActiveCfg = Release|x64
6.33 + {E5287C64-0646-4BFA-A772-1DB5A649F35E}.Release|x64.Build.0 = Release|x64
6.34 EndGlobalSection
6.35 GlobalSection(SolutionProperties) = preSolution
6.36 HideSolutionNode = FALSE
6.37 @@ -273,5 +286,6 @@
6.38 {55812185-D13C-4022-9C81-32E0F4A08336} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
6.39 {55812185-D13C-4022-9C81-32E0F4A08996} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
6.40 {55812185-D13C-4022-9C81-32E0F4A08BCC} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
6.41 + {E5287C64-0646-4BFA-A772-1DB5A649F35E} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
6.42 EndGlobalSection
6.43 EndGlobal
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
7.2 +++ b/VisualC/tests/testgles2/testgles2_VS2008.vcproj Fri Nov 22 13:24:53 2013 -0300
7.3 @@ -0,0 +1,207 @@
7.4 +<?xml version="1.0" encoding="Windows-1252"?>
7.5 +<VisualStudioProject
7.6 + ProjectType="Visual C++"
7.7 + Version="9.00"
7.8 + Name="testgl2"
7.9 + ProjectGUID="{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}"
7.10 + RootNamespace="testgl2"
7.11 + TargetFrameworkVersion="131072"
7.12 + >
7.13 + <Platforms>
7.14 + <Platform
7.15 + Name="Win32"
7.16 + />
7.17 + </Platforms>
7.18 + <ToolFiles>
7.19 + </ToolFiles>
7.20 + <Configurations>
7.21 + <Configuration
7.22 + Name="Debug|Win32"
7.23 + OutputDirectory=".\Debug"
7.24 + IntermediateDirectory=".\Debug"
7.25 + ConfigurationType="1"
7.26 + InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
7.27 + UseOfMFC="0"
7.28 + ATLMinimizesCRunTimeLibraryUsage="false"
7.29 + >
7.30 + <Tool
7.31 + Name="VCPreBuildEventTool"
7.32 + />
7.33 + <Tool
7.34 + Name="VCCustomBuildTool"
7.35 + />
7.36 + <Tool
7.37 + Name="VCXMLDataGeneratorTool"
7.38 + />
7.39 + <Tool
7.40 + Name="VCWebServiceProxyGeneratorTool"
7.41 + />
7.42 + <Tool
7.43 + Name="VCMIDLTool"
7.44 + PreprocessorDefinitions="_DEBUG"
7.45 + MkTypLibCompatible="true"
7.46 + SuppressStartupBanner="true"
7.47 + TargetEnvironment="1"
7.48 + TypeLibraryName=".\Debug/testgl2.tlb"
7.49 + />
7.50 + <Tool
7.51 + Name="VCCLCompilerTool"
7.52 + Optimization="0"
7.53 + AdditionalIncludeDirectories="..\..\..\include"
7.54 + PreprocessorDefinitions="_DEBUG,WIN32,_WINDOWS,HAVE_OPENGL"
7.55 + RuntimeLibrary="3"
7.56 + UsePrecompiledHeader="0"
7.57 + PrecompiledHeaderFile=".\Debug/testgles2.pch"
7.58 + WarningLevel="3"
7.59 + SuppressStartupBanner="true"
7.60 + DebugInformationFormat="4"
7.61 + CompileAs="0"
7.62 + />
7.63 + <Tool
7.64 + Name="VCManagedResourceCompilerTool"
7.65 + />
7.66 + <Tool
7.67 + Name="VCResourceCompilerTool"
7.68 + PreprocessorDefinitions="_DEBUG"
7.69 + Culture="1033"
7.70 + />
7.71 + <Tool
7.72 + Name="VCPreLinkEventTool"
7.73 + />
7.74 + <Tool
7.75 + Name="VCLinkerTool"
7.76 + AdditionalOptions="/MACHINE:I386"
7.77 + AdditionalDependencies="opengl32.lib"
7.78 + LinkIncremental="2"
7.79 + SuppressStartupBanner="true"
7.80 + GenerateDebugInformation="true"
7.81 + ProgramDatabaseFile=".\Debug/testgles2.pdb"
7.82 + SubSystem="2"
7.83 + RandomizedBaseAddress="1"
7.84 + DataExecutionPrevention="0"
7.85 + />
7.86 + <Tool
7.87 + Name="VCALinkTool"
7.88 + />
7.89 + <Tool
7.90 + Name="VCManifestTool"
7.91 + />
7.92 + <Tool
7.93 + Name="VCXDCMakeTool"
7.94 + />
7.95 + <Tool
7.96 + Name="VCBscMakeTool"
7.97 + />
7.98 + <Tool
7.99 + Name="VCFxCopTool"
7.100 + />
7.101 + <Tool
7.102 + Name="VCAppVerifierTool"
7.103 + />
7.104 + <Tool
7.105 + Name="VCPostBuildEventTool"
7.106 + Description="Copy SDL"
7.107 + CommandLine="copy "$(SolutionDir)\SDL\$(ConfigurationName)\SDL2.dll" "$(TargetDir)\SDL2.dll""
7.108 + />
7.109 + </Configuration>
7.110 + <Configuration
7.111 + Name="Release|Win32"
7.112 + OutputDirectory=".\Release"
7.113 + IntermediateDirectory=".\Release"
7.114 + ConfigurationType="1"
7.115 + InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
7.116 + UseOfMFC="0"
7.117 + ATLMinimizesCRunTimeLibraryUsage="false"
7.118 + >
7.119 + <Tool
7.120 + Name="VCPreBuildEventTool"
7.121 + />
7.122 + <Tool
7.123 + Name="VCCustomBuildTool"
7.124 + />
7.125 + <Tool
7.126 + Name="VCXMLDataGeneratorTool"
7.127 + />
7.128 + <Tool
7.129 + Name="VCWebServiceProxyGeneratorTool"
7.130 + />
7.131 + <Tool
7.132 + Name="VCMIDLTool"
7.133 + PreprocessorDefinitions="NDEBUG"
7.134 + MkTypLibCompatible="true"
7.135 + SuppressStartupBanner="true"
7.136 + TargetEnvironment="1"
7.137 + TypeLibraryName=".\Release/testgles2.tlb"
7.138 + />
7.139 + <Tool
7.140 + Name="VCCLCompilerTool"
7.141 + InlineFunctionExpansion="1"
7.142 + AdditionalIncludeDirectories="..\..\..\include"
7.143 + PreprocessorDefinitions="NDEBUG,WIN32,_WINDOWS,HAVE_OPENGL"
7.144 + StringPooling="true"
7.145 + RuntimeLibrary="2"
7.146 + EnableFunctionLevelLinking="true"
7.147 + UsePrecompiledHeader="0"
7.148 + PrecompiledHeaderFile=".\Release/testgles2.pch"
7.149 + WarningLevel="3"
7.150 + SuppressStartupBanner="true"
7.151 + CompileAs="0"
7.152 + />
7.153 + <Tool
7.154 + Name="VCManagedResourceCompilerTool"
7.155 + />
7.156 + <Tool
7.157 + Name="VCResourceCompilerTool"
7.158 + PreprocessorDefinitions="NDEBUG"
7.159 + Culture="1033"
7.160 + />
7.161 + <Tool
7.162 + Name="VCPreLinkEventTool"
7.163 + />
7.164 + <Tool
7.165 + Name="VCLinkerTool"
7.166 + AdditionalOptions="/MACHINE:I386"
7.167 + AdditionalDependencies="opengl32.lib"
7.168 + LinkIncremental="1"
7.169 + SuppressStartupBanner="true"
7.170 + ProgramDatabaseFile=".\Release/testgles2.pdb"
7.171 + SubSystem="2"
7.172 + RandomizedBaseAddress="1"
7.173 + DataExecutionPrevention="0"
7.174 + />
7.175 + <Tool
7.176 + Name="VCALinkTool"
7.177 + />
7.178 + <Tool
7.179 + Name="VCManifestTool"
7.180 + />
7.181 + <Tool
7.182 + Name="VCXDCMakeTool"
7.183 + />
7.184 + <Tool
7.185 + Name="VCBscMakeTool"
7.186 + />
7.187 + <Tool
7.188 + Name="VCFxCopTool"
7.189 + />
7.190 + <Tool
7.191 + Name="VCAppVerifierTool"
7.192 + />
7.193 + <Tool
7.194 + Name="VCPostBuildEventTool"
7.195 + Description="Copy SDL"
7.196 + CommandLine="copy "$(SolutionDir)\SDL\$(ConfigurationName)\SDL2.dll" "$(TargetDir)\SDL2.dll""
7.197 + />
7.198 + </Configuration>
7.199 + </Configurations>
7.200 + <References>
7.201 + </References>
7.202 + <Files>
7.203 + <File
7.204 + RelativePath="..\..\..\test\testgles2.c"
7.205 + >
7.206 + </File>
7.207 + </Files>
7.208 + <Globals>
7.209 + </Globals>
7.210 +</VisualStudioProject>
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
8.2 +++ b/VisualC/tests/testgles2/testgles2_VS2010.vcxproj Fri Nov 22 13:24:53 2013 -0300
8.3 @@ -0,0 +1,238 @@
8.4 +<?xml version="1.0" encoding="utf-8"?>
8.5 +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
8.6 + <ItemGroup Label="ProjectConfigurations">
8.7 + <ProjectConfiguration Include="Debug|Win32">
8.8 + <Configuration>Debug</Configuration>
8.9 + <Platform>Win32</Platform>
8.10 + </ProjectConfiguration>
8.11 + <ProjectConfiguration Include="Debug|x64">
8.12 + <Configuration>Debug</Configuration>
8.13 + <Platform>x64</Platform>
8.14 + </ProjectConfiguration>
8.15 + <ProjectConfiguration Include="Release|Win32">
8.16 + <Configuration>Release</Configuration>
8.17 + <Platform>Win32</Platform>
8.18 + </ProjectConfiguration>
8.19 + <ProjectConfiguration Include="Release|x64">
8.20 + <Configuration>Release</Configuration>
8.21 + <Platform>x64</Platform>
8.22 + </ProjectConfiguration>
8.23 + </ItemGroup>
8.24 + <PropertyGroup Label="Globals">
8.25 + <ProjectName>testgles2</ProjectName>
8.26 + <RootNamespace>testgles2</RootNamespace>
8.27 + <ProjectGuid>{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}</ProjectGuid>
8.28 + </PropertyGroup>
8.29 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
8.30 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
8.31 + <ConfigurationType>Application</ConfigurationType>
8.32 + <UseOfMfc>false</UseOfMfc>
8.33 + </PropertyGroup>
8.34 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
8.35 + <ConfigurationType>Application</ConfigurationType>
8.36 + <UseOfMfc>false</UseOfMfc>
8.37 + </PropertyGroup>
8.38 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
8.39 + <ConfigurationType>Application</ConfigurationType>
8.40 + <UseOfMfc>false</UseOfMfc>
8.41 + </PropertyGroup>
8.42 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
8.43 + <ConfigurationType>Application</ConfigurationType>
8.44 + <UseOfMfc>false</UseOfMfc>
8.45 + <CharacterSet>MultiByte</CharacterSet>
8.46 + </PropertyGroup>
8.47 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
8.48 + <ImportGroup Label="ExtensionSettings">
8.49 + </ImportGroup>
8.50 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
8.51 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
8.52 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
8.53 + </ImportGroup>
8.54 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
8.55 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
8.56 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
8.57 + </ImportGroup>
8.58 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
8.59 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
8.60 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
8.61 + </ImportGroup>
8.62 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
8.63 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
8.64 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
8.65 + </ImportGroup>
8.66 + <PropertyGroup Label="UserMacros" />
8.67 + <PropertyGroup>
8.68 + <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
8.69 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir>
8.70 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
8.71 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
8.72 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
8.73 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
8.74 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
8.75 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>
8.76 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
8.77 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
8.78 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
8.79 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
8.80 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
8.81 + </PropertyGroup>
8.82 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
8.83 + <Midl>
8.84 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.85 + <MkTypLibCompatible>true</MkTypLibCompatible>
8.86 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.87 + <TargetEnvironment>Win32</TargetEnvironment>
8.88 + </Midl>
8.89 + <ClCompile>
8.90 + <Optimization>Disabled</Optimization>
8.91 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
8.92 + <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.93 + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
8.94 + <PrecompiledHeader>
8.95 + </PrecompiledHeader>
8.96 + <WarningLevel>Level3</WarningLevel>
8.97 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.98 + <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
8.99 + <CompileAs>Default</CompileAs>
8.100 + </ClCompile>
8.101 + <ResourceCompile>
8.102 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.103 + <Culture>0x0409</Culture>
8.104 + </ResourceCompile>
8.105 + <Link>
8.106 + <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
8.107 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.108 + <GenerateDebugInformation>true</GenerateDebugInformation>
8.109 + <SubSystem>Windows</SubSystem>
8.110 + </Link>
8.111 + <PostBuildEvent>
8.112 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
8.113 + </PostBuildEvent>
8.114 + <PostBuildEvent>
8.115 + <Message>Copy SDL</Message>
8.116 + </PostBuildEvent>
8.117 + </ItemDefinitionGroup>
8.118 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
8.119 + <Midl>
8.120 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.121 + <MkTypLibCompatible>true</MkTypLibCompatible>
8.122 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.123 + </Midl>
8.124 + <ClCompile>
8.125 + <Optimization>Disabled</Optimization>
8.126 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
8.127 + <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.128 + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
8.129 + <PrecompiledHeader>
8.130 + </PrecompiledHeader>
8.131 + <WarningLevel>Level3</WarningLevel>
8.132 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.133 + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
8.134 + <CompileAs>Default</CompileAs>
8.135 + </ClCompile>
8.136 + <ResourceCompile>
8.137 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.138 + <Culture>0x0409</Culture>
8.139 + </ResourceCompile>
8.140 + <Link>
8.141 + <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
8.142 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.143 + <GenerateDebugInformation>true</GenerateDebugInformation>
8.144 + <SubSystem>Windows</SubSystem>
8.145 + </Link>
8.146 + <PostBuildEvent>
8.147 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
8.148 + </PostBuildEvent>
8.149 + <PostBuildEvent>
8.150 + <Message>Copy SDL</Message>
8.151 + </PostBuildEvent>
8.152 + </ItemDefinitionGroup>
8.153 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
8.154 + <Midl>
8.155 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.156 + <MkTypLibCompatible>true</MkTypLibCompatible>
8.157 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.158 + <TargetEnvironment>Win32</TargetEnvironment>
8.159 + </Midl>
8.160 + <ClCompile>
8.161 + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
8.162 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
8.163 + <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.164 + <StringPooling>true</StringPooling>
8.165 + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
8.166 + <FunctionLevelLinking>true</FunctionLevelLinking>
8.167 + <PrecompiledHeader>
8.168 + </PrecompiledHeader>
8.169 + <WarningLevel>Level3</WarningLevel>
8.170 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.171 + <CompileAs>Default</CompileAs>
8.172 + </ClCompile>
8.173 + <ResourceCompile>
8.174 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.175 + <Culture>0x0409</Culture>
8.176 + </ResourceCompile>
8.177 + <Link>
8.178 + <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
8.179 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.180 + <SubSystem>Windows</SubSystem>
8.181 + </Link>
8.182 + <PostBuildEvent>
8.183 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
8.184 + </PostBuildEvent>
8.185 + <PostBuildEvent>
8.186 + <Message>Copy SDL</Message>
8.187 + </PostBuildEvent>
8.188 + </ItemDefinitionGroup>
8.189 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
8.190 + <Midl>
8.191 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.192 + <MkTypLibCompatible>true</MkTypLibCompatible>
8.193 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.194 + </Midl>
8.195 + <ClCompile>
8.196 + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
8.197 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
8.198 + <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.199 + <StringPooling>true</StringPooling>
8.200 + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
8.201 + <FunctionLevelLinking>true</FunctionLevelLinking>
8.202 + <PrecompiledHeader>
8.203 + </PrecompiledHeader>
8.204 + <WarningLevel>Level3</WarningLevel>
8.205 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.206 + <CompileAs>Default</CompileAs>
8.207 + </ClCompile>
8.208 + <ResourceCompile>
8.209 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
8.210 + <Culture>0x0409</Culture>
8.211 + </ResourceCompile>
8.212 + <Link>
8.213 + <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
8.214 + <SuppressStartupBanner>true</SuppressStartupBanner>
8.215 + <SubSystem>Windows</SubSystem>
8.216 + </Link>
8.217 + <PostBuildEvent>
8.218 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
8.219 + </PostBuildEvent>
8.220 + <PostBuildEvent>
8.221 + <Message>Copy SDL</Message>
8.222 + </PostBuildEvent>
8.223 + </ItemDefinitionGroup>
8.224 + <ItemGroup>
8.225 + <ClCompile Include="..\..\..\test\testgles2.c" />
8.226 + </ItemGroup>
8.227 + <ItemGroup>
8.228 + <ProjectReference Include="..\..\SDLmain\SDLmain_VS2010.vcxproj">
8.229 + <Project>{da956fd3-e142-46f2-9dd5-c78bebb56b7a}</Project>
8.230 + </ProjectReference>
8.231 + <ProjectReference Include="..\..\SDLtest\SDLtest_VS2010.vcxproj">
8.232 + <Project>{da956fd3-e143-46f2-9fe5-c77bebc56b1a}</Project>
8.233 + </ProjectReference>
8.234 + <ProjectReference Include="..\..\SDL\SDL_VS2010.vcxproj">
8.235 + <Project>{81ce8daf-ebb2-4761-8e45-b71abcca8c68}</Project>
8.236 + </ProjectReference>
8.237 + </ItemGroup>
8.238 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
8.239 + <ImportGroup Label="ExtensionTargets">
8.240 + </ImportGroup>
8.241 +</Project>
8.242 \ No newline at end of file
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/VisualC/tests/testgles2/testgles2_VS2012.vcxproj Fri Nov 22 13:24:53 2013 -0300
9.3 @@ -0,0 +1,236 @@
9.4 +<?xml version="1.0" encoding="utf-8"?>
9.5 +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
9.6 + <ItemGroup Label="ProjectConfigurations">
9.7 + <ProjectConfiguration Include="Debug|Win32">
9.8 + <Configuration>Debug</Configuration>
9.9 + <Platform>Win32</Platform>
9.10 + </ProjectConfiguration>
9.11 + <ProjectConfiguration Include="Debug|x64">
9.12 + <Configuration>Debug</Configuration>
9.13 + <Platform>x64</Platform>
9.14 + </ProjectConfiguration>
9.15 + <ProjectConfiguration Include="Release|Win32">
9.16 + <Configuration>Release</Configuration>
9.17 + <Platform>Win32</Platform>
9.18 + </ProjectConfiguration>
9.19 + <ProjectConfiguration Include="Release|x64">
9.20 + <Configuration>Release</Configuration>
9.21 + <Platform>x64</Platform>
9.22 + </ProjectConfiguration>
9.23 + </ItemGroup>
9.24 + <PropertyGroup Label="Globals">
9.25 + <ProjectName>testgles2</ProjectName>
9.26 + <RootNamespace>testgles2</RootNamespace>
9.27 + <ProjectGuid>{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}</ProjectGuid>
9.28 + </PropertyGroup>
9.29 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
9.30 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
9.31 + <ConfigurationType>Application</ConfigurationType>
9.32 + <UseOfMfc>false</UseOfMfc>
9.33 + <PlatformToolset>v110</PlatformToolset>
9.34 + </PropertyGroup>
9.35 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
9.36 + <ConfigurationType>Application</ConfigurationType>
9.37 + <UseOfMfc>false</UseOfMfc>
9.38 + <PlatformToolset>v110</PlatformToolset>
9.39 + </PropertyGroup>
9.40 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
9.41 + <ConfigurationType>Application</ConfigurationType>
9.42 + <UseOfMfc>false</UseOfMfc>
9.43 + <PlatformToolset>v110</PlatformToolset>
9.44 + </PropertyGroup>
9.45 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
9.46 + <ConfigurationType>Application</ConfigurationType>
9.47 + <UseOfMfc>false</UseOfMfc>
9.48 + <CharacterSet>MultiByte</CharacterSet>
9.49 + <PlatformToolset>v110</PlatformToolset>
9.50 + </PropertyGroup>
9.51 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
9.52 + <ImportGroup Label="ExtensionSettings">
9.53 + </ImportGroup>
9.54 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
9.55 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
9.56 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
9.57 + </ImportGroup>
9.58 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
9.59 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
9.60 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
9.61 + </ImportGroup>
9.62 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
9.63 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
9.64 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
9.65 + </ImportGroup>
9.66 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
9.67 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
9.68 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
9.69 + </ImportGroup>
9.70 + <PropertyGroup Label="UserMacros" />
9.71 + <PropertyGroup>
9.72 + <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
9.73 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir>
9.74 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
9.75 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
9.76 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
9.77 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
9.78 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
9.79 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>
9.80 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
9.81 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
9.82 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
9.83 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
9.84 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
9.85 + </PropertyGroup>
9.86 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
9.87 + <Midl>
9.88 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.89 + <MkTypLibCompatible>true</MkTypLibCompatible>
9.90 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.91 + <TargetEnvironment>Win32</TargetEnvironment>
9.92 + </Midl>
9.93 + <ClCompile>
9.94 + <Optimization>Disabled</Optimization>
9.95 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
9.96 + <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.97 + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
9.98 + <PrecompiledHeader>
9.99 + </PrecompiledHeader>
9.100 + <WarningLevel>Level3</WarningLevel>
9.101 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.102 + <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
9.103 + <CompileAs>Default</CompileAs>
9.104 + </ClCompile>
9.105 + <ResourceCompile>
9.106 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.107 + <Culture>0x0409</Culture>
9.108 + </ResourceCompile>
9.109 + <Link>
9.110 + <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
9.111 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.112 + <GenerateDebugInformation>true</GenerateDebugInformation>
9.113 + <SubSystem>Windows</SubSystem>
9.114 + </Link>
9.115 + <PostBuildEvent>
9.116 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
9.117 + </PostBuildEvent>
9.118 + <PostBuildEvent>
9.119 + <Message>Copy SDL</Message>
9.120 + </PostBuildEvent>
9.121 + </ItemDefinitionGroup>
9.122 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
9.123 + <Midl>
9.124 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.125 + <MkTypLibCompatible>true</MkTypLibCompatible>
9.126 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.127 + </Midl>
9.128 + <ClCompile>
9.129 + <Optimization>Disabled</Optimization>
9.130 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
9.131 + <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.132 + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
9.133 + <PrecompiledHeader>
9.134 + </PrecompiledHeader>
9.135 + <WarningLevel>Level3</WarningLevel>
9.136 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.137 + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
9.138 + <CompileAs>Default</CompileAs>
9.139 + </ClCompile>
9.140 + <ResourceCompile>
9.141 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.142 + <Culture>0x0409</Culture>
9.143 + </ResourceCompile>
9.144 + <Link>
9.145 + <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
9.146 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.147 + <GenerateDebugInformation>true</GenerateDebugInformation>
9.148 + <SubSystem>Windows</SubSystem>
9.149 + </Link>
9.150 + <PostBuildEvent>
9.151 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
9.152 + </PostBuildEvent>
9.153 + <PostBuildEvent>
9.154 + <Message>Copy SDL</Message>
9.155 + </PostBuildEvent>
9.156 + </ItemDefinitionGroup>
9.157 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
9.158 + <Midl>
9.159 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.160 + <MkTypLibCompatible>true</MkTypLibCompatible>
9.161 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.162 + <TargetEnvironment>Win32</TargetEnvironment>
9.163 + </Midl>
9.164 + <ClCompile>
9.165 + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
9.166 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
9.167 + <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.168 + <StringPooling>true</StringPooling>
9.169 + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
9.170 + <FunctionLevelLinking>true</FunctionLevelLinking>
9.171 + <PrecompiledHeader>
9.172 + </PrecompiledHeader>
9.173 + <WarningLevel>Level3</WarningLevel>
9.174 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.175 + <CompileAs>Default</CompileAs>
9.176 + </ClCompile>
9.177 + <ResourceCompile>
9.178 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.179 + <Culture>0x0409</Culture>
9.180 + </ResourceCompile>
9.181 + <Link>
9.182 + <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
9.183 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.184 + <SubSystem>Windows</SubSystem>
9.185 + </Link>
9.186 + <PostBuildEvent>
9.187 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
9.188 + </PostBuildEvent>
9.189 + <PostBuildEvent>
9.190 + <Message>Copy SDL</Message>
9.191 + </PostBuildEvent>
9.192 + </ItemDefinitionGroup>
9.193 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
9.194 + <Midl>
9.195 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.196 + <MkTypLibCompatible>true</MkTypLibCompatible>
9.197 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.198 + </Midl>
9.199 + <ClCompile>
9.200 + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
9.201 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
9.202 + <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.203 + <StringPooling>true</StringPooling>
9.204 + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
9.205 + <FunctionLevelLinking>true</FunctionLevelLinking>
9.206 + <PrecompiledHeader>
9.207 + </PrecompiledHeader>
9.208 + <WarningLevel>Level3</WarningLevel>
9.209 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.210 + <CompileAs>Default</CompileAs>
9.211 + </ClCompile>
9.212 + <ResourceCompile>
9.213 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9.214 + <Culture>0x0409</Culture>
9.215 + </ResourceCompile>
9.216 + <Link>
9.217 + <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
9.218 + <SuppressStartupBanner>true</SuppressStartupBanner>
9.219 + <SubSystem>Windows</SubSystem>
9.220 + </Link>
9.221 + <PostBuildEvent>
9.222 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
9.223 + </PostBuildEvent>
9.224 + <PostBuildEvent>
9.225 + <Message>Copy SDL</Message>
9.226 + </PostBuildEvent>
9.227 + </ItemDefinitionGroup>
9.228 + <ItemGroup>
9.229 + <ClCompile Include="..\..\..\test\testgles2.c" />
9.230 + </ItemGroup>
9.231 + <ItemGroup>
9.232 + <Library Include="..\..\SDL\$(Platform)\$(Configuration)\SDL2.lib" />
9.233 + <Library Include="..\..\SDLmain\$(Platform)\$(Configuration)\SDL2main.lib" />
9.234 + <Library Include="..\..\SDLtest\$(Platform)\$(Configuration)\SDL2test.lib" />
9.235 + </ItemGroup>
9.236 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
9.237 + <ImportGroup Label="ExtensionTargets">
9.238 + </ImportGroup>
9.239 +</Project>
9.240 \ No newline at end of file
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/VisualC/tests/testgles2/testgles2_VS2013.vcxproj Fri Nov 22 13:24:53 2013 -0300
10.3 @@ -0,0 +1,236 @@
10.4 +<?xml version="1.0" encoding="utf-8"?>
10.5 +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
10.6 + <ItemGroup Label="ProjectConfigurations">
10.7 + <ProjectConfiguration Include="Debug|Win32">
10.8 + <Configuration>Debug</Configuration>
10.9 + <Platform>Win32</Platform>
10.10 + </ProjectConfiguration>
10.11 + <ProjectConfiguration Include="Debug|x64">
10.12 + <Configuration>Debug</Configuration>
10.13 + <Platform>x64</Platform>
10.14 + </ProjectConfiguration>
10.15 + <ProjectConfiguration Include="Release|Win32">
10.16 + <Configuration>Release</Configuration>
10.17 + <Platform>Win32</Platform>
10.18 + </ProjectConfiguration>
10.19 + <ProjectConfiguration Include="Release|x64">
10.20 + <Configuration>Release</Configuration>
10.21 + <Platform>x64</Platform>
10.22 + </ProjectConfiguration>
10.23 + </ItemGroup>
10.24 + <PropertyGroup Label="Globals">
10.25 + <ProjectName>testgles2</ProjectName>
10.26 + <RootNamespace>testgles2</RootNamespace>
10.27 + <ProjectGuid>{E5287C64-0646-4BFA-A772-1DB5A649F35E}</ProjectGuid>
10.28 + </PropertyGroup>
10.29 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
10.30 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
10.31 + <ConfigurationType>Application</ConfigurationType>
10.32 + <UseOfMfc>false</UseOfMfc>
10.33 + <PlatformToolset>v120</PlatformToolset>
10.34 + </PropertyGroup>
10.35 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
10.36 + <ConfigurationType>Application</ConfigurationType>
10.37 + <UseOfMfc>false</UseOfMfc>
10.38 + <PlatformToolset>v120</PlatformToolset>
10.39 + </PropertyGroup>
10.40 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
10.41 + <ConfigurationType>Application</ConfigurationType>
10.42 + <UseOfMfc>false</UseOfMfc>
10.43 + <PlatformToolset>v120</PlatformToolset>
10.44 + </PropertyGroup>
10.45 + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
10.46 + <ConfigurationType>Application</ConfigurationType>
10.47 + <UseOfMfc>false</UseOfMfc>
10.48 + <CharacterSet>MultiByte</CharacterSet>
10.49 + <PlatformToolset>v120</PlatformToolset>
10.50 + </PropertyGroup>
10.51 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
10.52 + <ImportGroup Label="ExtensionSettings">
10.53 + </ImportGroup>
10.54 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
10.55 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
10.56 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
10.57 + </ImportGroup>
10.58 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
10.59 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
10.60 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
10.61 + </ImportGroup>
10.62 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
10.63 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
10.64 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
10.65 + </ImportGroup>
10.66 + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
10.67 + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
10.68 + <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
10.69 + </ImportGroup>
10.70 + <PropertyGroup Label="UserMacros" />
10.71 + <PropertyGroup>
10.72 + <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
10.73 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir>
10.74 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
10.75 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
10.76 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
10.77 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
10.78 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
10.79 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>
10.80 + <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
10.81 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
10.82 + <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
10.83 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
10.84 + <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
10.85 + </PropertyGroup>
10.86 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
10.87 + <Midl>
10.88 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.89 + <MkTypLibCompatible>true</MkTypLibCompatible>
10.90 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.91 + <TargetEnvironment>Win32</TargetEnvironment>
10.92 + </Midl>
10.93 + <ClCompile>
10.94 + <Optimization>Disabled</Optimization>
10.95 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
10.96 + <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;HAVE_OPENGLES2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.97 + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
10.98 + <PrecompiledHeader>
10.99 + </PrecompiledHeader>
10.100 + <WarningLevel>Level3</WarningLevel>
10.101 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.102 + <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
10.103 + <CompileAs>Default</CompileAs>
10.104 + </ClCompile>
10.105 + <ResourceCompile>
10.106 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.107 + <Culture>0x0409</Culture>
10.108 + </ResourceCompile>
10.109 + <Link>
10.110 + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
10.111 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.112 + <GenerateDebugInformation>true</GenerateDebugInformation>
10.113 + <SubSystem>Windows</SubSystem>
10.114 + </Link>
10.115 + <PostBuildEvent>
10.116 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
10.117 + </PostBuildEvent>
10.118 + <PostBuildEvent>
10.119 + <Message>Copy SDL</Message>
10.120 + </PostBuildEvent>
10.121 + </ItemDefinitionGroup>
10.122 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
10.123 + <Midl>
10.124 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.125 + <MkTypLibCompatible>true</MkTypLibCompatible>
10.126 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.127 + </Midl>
10.128 + <ClCompile>
10.129 + <Optimization>Disabled</Optimization>
10.130 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
10.131 + <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;HAVE_OPENGLES2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.132 + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
10.133 + <PrecompiledHeader>
10.134 + </PrecompiledHeader>
10.135 + <WarningLevel>Level3</WarningLevel>
10.136 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.137 + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
10.138 + <CompileAs>Default</CompileAs>
10.139 + </ClCompile>
10.140 + <ResourceCompile>
10.141 + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.142 + <Culture>0x0409</Culture>
10.143 + </ResourceCompile>
10.144 + <Link>
10.145 + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
10.146 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.147 + <GenerateDebugInformation>true</GenerateDebugInformation>
10.148 + <SubSystem>Windows</SubSystem>
10.149 + </Link>
10.150 + <PostBuildEvent>
10.151 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
10.152 + </PostBuildEvent>
10.153 + <PostBuildEvent>
10.154 + <Message>Copy SDL</Message>
10.155 + </PostBuildEvent>
10.156 + </ItemDefinitionGroup>
10.157 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
10.158 + <Midl>
10.159 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.160 + <MkTypLibCompatible>true</MkTypLibCompatible>
10.161 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.162 + <TargetEnvironment>Win32</TargetEnvironment>
10.163 + </Midl>
10.164 + <ClCompile>
10.165 + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
10.166 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
10.167 + <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;HAVE_OPENGLES2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.168 + <StringPooling>true</StringPooling>
10.169 + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
10.170 + <FunctionLevelLinking>true</FunctionLevelLinking>
10.171 + <PrecompiledHeader>
10.172 + </PrecompiledHeader>
10.173 + <WarningLevel>Level3</WarningLevel>
10.174 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.175 + <CompileAs>Default</CompileAs>
10.176 + </ClCompile>
10.177 + <ResourceCompile>
10.178 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.179 + <Culture>0x0409</Culture>
10.180 + </ResourceCompile>
10.181 + <Link>
10.182 + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
10.183 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.184 + <SubSystem>Windows</SubSystem>
10.185 + </Link>
10.186 + <PostBuildEvent>
10.187 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
10.188 + </PostBuildEvent>
10.189 + <PostBuildEvent>
10.190 + <Message>Copy SDL</Message>
10.191 + </PostBuildEvent>
10.192 + </ItemDefinitionGroup>
10.193 + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
10.194 + <Midl>
10.195 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.196 + <MkTypLibCompatible>true</MkTypLibCompatible>
10.197 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.198 + </Midl>
10.199 + <ClCompile>
10.200 + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
10.201 + <AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
10.202 + <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;HAVE_OPENGLES2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.203 + <StringPooling>true</StringPooling>
10.204 + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
10.205 + <FunctionLevelLinking>true</FunctionLevelLinking>
10.206 + <PrecompiledHeader>
10.207 + </PrecompiledHeader>
10.208 + <WarningLevel>Level3</WarningLevel>
10.209 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.210 + <CompileAs>Default</CompileAs>
10.211 + </ClCompile>
10.212 + <ResourceCompile>
10.213 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
10.214 + <Culture>0x0409</Culture>
10.215 + </ResourceCompile>
10.216 + <Link>
10.217 + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
10.218 + <SuppressStartupBanner>true</SuppressStartupBanner>
10.219 + <SubSystem>Windows</SubSystem>
10.220 + </Link>
10.221 + <PostBuildEvent>
10.222 + <Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL2.dll" "$(TargetDir)\SDL2.dll"</Command>
10.223 + </PostBuildEvent>
10.224 + <PostBuildEvent>
10.225 + <Message>Copy SDL</Message>
10.226 + </PostBuildEvent>
10.227 + </ItemDefinitionGroup>
10.228 + <ItemGroup>
10.229 + <ClCompile Include="..\..\..\test\testgles2.c" />
10.230 + </ItemGroup>
10.231 + <ItemGroup>
10.232 + <Library Include="..\..\SDL\$(Platform)\$(Configuration)\SDL2.lib" />
10.233 + <Library Include="..\..\SDLmain\$(Platform)\$(Configuration)\SDL2main.lib" />
10.234 + <Library Include="..\..\SDLtest\$(Platform)\$(Configuration)\SDL2test.lib" />
10.235 + </ItemGroup>
10.236 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
10.237 + <ImportGroup Label="ExtensionTargets">
10.238 + </ImportGroup>
10.239 +</Project>
10.240 \ No newline at end of file
11.1 --- a/include/SDL_config_windows.h Fri Nov 22 10:26:28 2013 -0300
11.2 +++ b/include/SDL_config_windows.h Fri Nov 22 13:24:53 2013 -0300
11.3 @@ -180,6 +180,16 @@
11.4 #ifndef SDL_VIDEO_RENDER_OGL
11.5 #define SDL_VIDEO_RENDER_OGL 1
11.6 #endif
11.7 +#ifndef SDL_VIDEO_RENDER_OGL_ES2
11.8 +#define SDL_VIDEO_RENDER_OGL_ES2 1
11.9 +#endif
11.10 +#ifndef SDL_VIDEO_OPENGL_ES2
11.11 +#define SDL_VIDEO_OPENGL_ES2 1
11.12 +#endif
11.13 +#ifndef SDL_VIDEO_OPENGL_EGL
11.14 +#define SDL_VIDEO_OPENGL_EGL 1
11.15 +#endif
11.16 +
11.17
11.18 /* Enable system power support */
11.19 #define SDL_POWER_WINDOWS 1
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
12.2 +++ b/include/SDL_egl.h Fri Nov 22 13:24:53 2013 -0300
12.3 @@ -0,0 +1,1389 @@
12.4 +/*
12.5 + Simple DirectMedia Layer
12.6 + Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
12.7 +
12.8 + This software is provided 'as-is', without any express or implied
12.9 + warranty. In no event will the authors be held liable for any damages
12.10 + arising from the use of this software.
12.11 +
12.12 + Permission is granted to anyone to use this software for any purpose,
12.13 + including commercial applications, and to alter it and redistribute it
12.14 + freely, subject to the following restrictions:
12.15 +
12.16 + 1. The origin of this software must not be misrepresented; you must not
12.17 + claim that you wrote the original software. If you use this software
12.18 + in a product, an acknowledgment in the product documentation would be
12.19 + appreciated but is not required.
12.20 + 2. Altered source versions must be plainly marked as such, and must not be
12.21 + misrepresented as being the original software.
12.22 + 3. This notice may not be removed or altered from any source distribution.
12.23 +*/
12.24 +
12.25 +/**
12.26 + * \file SDL_opengles.h
12.27 + *
12.28 + * This is a simple file to encapsulate the OpenGL ES 2.0 API headers.
12.29 + */
12.30 +#ifndef _MSC_VER
12.31 +
12.32 +#include <EGL/egl.h>
12.33 +
12.34 +#else /* _MSC_VER */
12.35 +
12.36 +/* EGL headers for Visual Studio */
12.37 +
12.38 +#ifndef __khrplatform_h_
12.39 +#define __khrplatform_h_
12.40 +
12.41 +/*
12.42 +** Copyright (c) 2008-2009 The Khronos Group Inc.
12.43 +**
12.44 +** Permission is hereby granted, free of charge, to any person obtaining a
12.45 +** copy of this software and/or associated documentation files (the
12.46 +** "Materials"), to deal in the Materials without restriction, including
12.47 +** without limitation the rights to use, copy, modify, merge, publish,
12.48 +** distribute, sublicense, and/or sell copies of the Materials, and to
12.49 +** permit persons to whom the Materials are furnished to do so, subject to
12.50 +** the following conditions:
12.51 +**
12.52 +** The above copyright notice and this permission notice shall be included
12.53 +** in all copies or substantial portions of the Materials.
12.54 +**
12.55 +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
12.56 +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
12.57 +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
12.58 +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
12.59 +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
12.60 +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
12.61 +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
12.62 +*/
12.63 +
12.64 +/* Khronos platform-specific types and definitions.
12.65 +*
12.66 +* $Revision: 23298 $ on $Date: 2013-09-30 17:07:13 -0700 (Mon, 30 Sep 2013) $
12.67 +*
12.68 +* Adopters may modify this file to suit their platform. Adopters are
12.69 +* encouraged to submit platform specific modifications to the Khronos
12.70 +* group so that they can be included in future versions of this file.
12.71 +* Please submit changes by sending them to the public Khronos Bugzilla
12.72 +* (http://khronos.org/bugzilla) by filing a bug against product
12.73 +* "Khronos (general)" component "Registry".
12.74 +*
12.75 +* A predefined template which fills in some of the bug fields can be
12.76 +* reached using http://tinyurl.com/khrplatform-h-bugreport, but you
12.77 +* must create a Bugzilla login first.
12.78 +*
12.79 +*
12.80 +* See the Implementer's Guidelines for information about where this file
12.81 +* should be located on your system and for more details of its use:
12.82 +* http://www.khronos.org/registry/implementers_guide.pdf
12.83 +*
12.84 +* This file should be included as
12.85 +* #include <KHR/khrplatform.h>
12.86 +* by Khronos client API header files that use its types and defines.
12.87 +*
12.88 +* The types in khrplatform.h should only be used to define API-specific types.
12.89 +*
12.90 +* Types defined in khrplatform.h:
12.91 +* khronos_int8_t signed 8 bit
12.92 +* khronos_uint8_t unsigned 8 bit
12.93 +* khronos_int16_t signed 16 bit
12.94 +* khronos_uint16_t unsigned 16 bit
12.95 +* khronos_int32_t signed 32 bit
12.96 +* khronos_uint32_t unsigned 32 bit
12.97 +* khronos_int64_t signed 64 bit
12.98 +* khronos_uint64_t unsigned 64 bit
12.99 +* khronos_intptr_t signed same number of bits as a pointer
12.100 +* khronos_uintptr_t unsigned same number of bits as a pointer
12.101 +* khronos_ssize_t signed size
12.102 +* khronos_usize_t unsigned size
12.103 +* khronos_float_t signed 32 bit floating point
12.104 +* khronos_time_ns_t unsigned 64 bit time in nanoseconds
12.105 +* khronos_utime_nanoseconds_t unsigned time interval or absolute time in
12.106 +* nanoseconds
12.107 +* khronos_stime_nanoseconds_t signed time interval in nanoseconds
12.108 +* khronos_boolean_enum_t enumerated boolean type. This should
12.109 +* only be used as a base type when a client API's boolean type is
12.110 +* an enum. Client APIs which use an integer or other type for
12.111 +* booleans cannot use this as the base type for their boolean.
12.112 +*
12.113 +* Tokens defined in khrplatform.h:
12.114 +*
12.115 +* KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values.
12.116 +*
12.117 +* KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0.
12.118 +* KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0.
12.119 +*
12.120 +* Calling convention macros defined in this file:
12.121 +* KHRONOS_APICALL
12.122 +* KHRONOS_APIENTRY
12.123 +* KHRONOS_APIATTRIBUTES
12.124 +*
12.125 +* These may be used in function prototypes as:
12.126 +*
12.127 +* KHRONOS_APICALL void KHRONOS_APIENTRY funcname(
12.128 +* int arg1,
12.129 +* int arg2) KHRONOS_APIATTRIBUTES;
12.130 +*/
12.131 +
12.132 +/*-------------------------------------------------------------------------
12.133 +* Definition of KHRONOS_APICALL
12.134 +*-------------------------------------------------------------------------
12.135 +* This precedes the return type of the function in the function prototype.
12.136 +*/
12.137 +#if defined(_WIN32) && !defined(__SCITECH_SNAP__)
12.138 +# define KHRONOS_APICALL __declspec(dllimport)
12.139 +#elif defined (__SYMBIAN32__)
12.140 +# define KHRONOS_APICALL IMPORT_C
12.141 +#else
12.142 +# define KHRONOS_APICALL
12.143 +#endif
12.144 +
12.145 +/*-------------------------------------------------------------------------
12.146 +* Definition of KHRONOS_APIENTRY
12.147 +*-------------------------------------------------------------------------
12.148 +* This follows the return type of the function and precedes the function
12.149 +* name in the function prototype.
12.150 +*/
12.151 +#if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__)
12.152 +/* Win32 but not WinCE */
12.153 +# define KHRONOS_APIENTRY __stdcall
12.154 +#else
12.155 +# define KHRONOS_APIENTRY
12.156 +#endif
12.157 +
12.158 +/*-------------------------------------------------------------------------
12.159 +* Definition of KHRONOS_APIATTRIBUTES
12.160 +*-------------------------------------------------------------------------
12.161 +* This follows the closing parenthesis of the function prototype arguments.
12.162 +*/
12.163 +#if defined (__ARMCC_2__)
12.164 +#define KHRONOS_APIATTRIBUTES __softfp
12.165 +#else
12.166 +#define KHRONOS_APIATTRIBUTES
12.167 +#endif
12.168 +
12.169 +/*-------------------------------------------------------------------------
12.170 +* basic type definitions
12.171 +*-----------------------------------------------------------------------*/
12.172 +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__)
12.173 +
12.174 +
12.175 +/*
12.176 +* Using <stdint.h>
12.177 +*/
12.178 +#include <stdint.h>
12.179 +typedef int32_t khronos_int32_t;
12.180 +typedef uint32_t khronos_uint32_t;
12.181 +typedef int64_t khronos_int64_t;
12.182 +typedef uint64_t khronos_uint64_t;
12.183 +#define KHRONOS_SUPPORT_INT64 1
12.184 +#define KHRONOS_SUPPORT_FLOAT 1
12.185 +
12.186 +#elif defined(__VMS ) || defined(__sgi)
12.187 +
12.188 +/*
12.189 +* Using <inttypes.h>
12.190 +*/
12.191 +#include <inttypes.h>
12.192 +typedef int32_t khronos_int32_t;
12.193 +typedef uint32_t khronos_uint32_t;
12.194 +typedef int64_t khronos_int64_t;
12.195 +typedef uint64_t khronos_uint64_t;
12.196 +#define KHRONOS_SUPPORT_INT64 1
12.197 +#define KHRONOS_SUPPORT_FLOAT 1
12.198 +
12.199 +#elif defined(_WIN32) && !defined(__SCITECH_SNAP__)
12.200 +
12.201 +/*
12.202 +* Win32
12.203 +*/
12.204 +typedef __int32 khronos_int32_t;
12.205 +typedef unsigned __int32 khronos_uint32_t;
12.206 +typedef __int64 khronos_int64_t;
12.207 +typedef unsigned __int64 khronos_uint64_t;
12.208 +#define KHRONOS_SUPPORT_INT64 1
12.209 +#define KHRONOS_SUPPORT_FLOAT 1
12.210 +
12.211 +#elif defined(__sun__) || defined(__digital__)
12.212 +
12.213 +/*
12.214 +* Sun or Digital
12.215 +*/
12.216 +typedef int khronos_int32_t;
12.217 +typedef unsigned int khronos_uint32_t;
12.218 +#if defined(__arch64__) || defined(_LP64)
12.219 +typedef long int khronos_int64_t;
12.220 +typedef unsigned long int khronos_uint64_t;
12.221 +#else
12.222 +typedef long long int khronos_int64_t;
12.223 +typedef unsigned long long int khronos_uint64_t;
12.224 +#endif /* __arch64__ */
12.225 +#define KHRONOS_SUPPORT_INT64 1
12.226 +#define KHRONOS_SUPPORT_FLOAT 1
12.227 +
12.228 +#elif 0
12.229 +
12.230 +/*
12.231 +* Hypothetical platform with no float or int64 support
12.232 +*/
12.233 +typedef int khronos_int32_t;
12.234 +typedef unsigned int khronos_uint32_t;
12.235 +#define KHRONOS_SUPPORT_INT64 0
12.236 +#define KHRONOS_SUPPORT_FLOAT 0
12.237 +
12.238 +#else
12.239 +
12.240 +/*
12.241 +* Generic fallback
12.242 +*/
12.243 +#include <stdint.h>
12.244 +typedef int32_t khronos_int32_t;
12.245 +typedef uint32_t khronos_uint32_t;
12.246 +typedef int64_t khronos_int64_t;
12.247 +typedef uint64_t khronos_uint64_t;
12.248 +#define KHRONOS_SUPPORT_INT64 1
12.249 +#define KHRONOS_SUPPORT_FLOAT 1
12.250 +
12.251 +#endif
12.252 +
12.253 +
12.254 +/*
12.255 +* Types that are (so far) the same on all platforms
12.256 +*/
12.257 +typedef signed char khronos_int8_t;
12.258 +typedef unsigned char khronos_uint8_t;
12.259 +typedef signed short int khronos_int16_t;
12.260 +typedef unsigned short int khronos_uint16_t;
12.261 +
12.262 +/*
12.263 +* Types that differ between LLP64 and LP64 architectures - in LLP64,
12.264 +* pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
12.265 +* to be the only LLP64 architecture in current use.
12.266 +*/
12.267 +#ifdef _WIN64
12.268 +typedef signed long long int khronos_intptr_t;
12.269 +typedef unsigned long long int khronos_uintptr_t;
12.270 +typedef signed long long int khronos_ssize_t;
12.271 +typedef unsigned long long int khronos_usize_t;
12.272 +#else
12.273 +typedef signed long int khronos_intptr_t;
12.274 +typedef unsigned long int khronos_uintptr_t;
12.275 +typedef signed long int khronos_ssize_t;
12.276 +typedef unsigned long int khronos_usize_t;
12.277 +#endif
12.278 +
12.279 +#if KHRONOS_SUPPORT_FLOAT
12.280 +/*
12.281 +* Float type
12.282 +*/
12.283 +typedef float khronos_float_t;
12.284 +#endif
12.285 +
12.286 +#if KHRONOS_SUPPORT_INT64
12.287 +/* Time types
12.288 +*
12.289 +* These types can be used to represent a time interval in nanoseconds or
12.290 +* an absolute Unadjusted System Time. Unadjusted System Time is the number
12.291 +* of nanoseconds since some arbitrary system event (e.g. since the last
12.292 +* time the system booted). The Unadjusted System Time is an unsigned
12.293 +* 64 bit value that wraps back to 0 every 584 years. Time intervals
12.294 +* may be either signed or unsigned.
12.295 +*/
12.296 +typedef khronos_uint64_t khronos_utime_nanoseconds_t;
12.297 +typedef khronos_int64_t khronos_stime_nanoseconds_t;
12.298 +#endif
12.299 +
12.300 +/*
12.301 +* Dummy value used to pad enum types to 32 bits.
12.302 +*/
12.303 +#ifndef KHRONOS_MAX_ENUM
12.304 +#define KHRONOS_MAX_ENUM 0x7FFFFFFF
12.305 +#endif
12.306 +
12.307 +/*
12.308 +* Enumerated boolean type
12.309 +*
12.310 +* Values other than zero should be considered to be true. Therefore
12.311 +* comparisons should not be made against KHRONOS_TRUE.
12.312 +*/
12.313 +typedef enum {
12.314 + KHRONOS_FALSE = 0,
12.315 + KHRONOS_TRUE = 1,
12.316 + KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM
12.317 +} khronos_boolean_enum_t;
12.318 +
12.319 +#endif /* __khrplatform_h_ */
12.320 +
12.321 +
12.322 +#ifndef __eglplatform_h_
12.323 +#define __eglplatform_h_
12.324 +
12.325 +/*
12.326 +** Copyright (c) 2007-2009 The Khronos Group Inc.
12.327 +**
12.328 +** Permission is hereby granted, free of charge, to any person obtaining a
12.329 +** copy of this software and/or associated documentation files (the
12.330 +** "Materials"), to deal in the Materials without restriction, including
12.331 +** without limitation the rights to use, copy, modify, merge, publish,
12.332 +** distribute, sublicense, and/or sell copies of the Materials, and to
12.333 +** permit persons to whom the Materials are furnished to do so, subject to
12.334 +** the following conditions:
12.335 +**
12.336 +** The above copyright notice and this permission notice shall be included
12.337 +** in all copies or substantial portions of the Materials.
12.338 +**
12.339 +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
12.340 +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
12.341 +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
12.342 +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
12.343 +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
12.344 +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
12.345 +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
12.346 +*/
12.347 +
12.348 +/* Platform-specific types and definitions for egl.h
12.349 +* $Revision: 12306 $ on $Date: 2010-08-25 09:51:28 -0700 (Wed, 25 Aug 2010) $
12.350 +*
12.351 +* Adopters may modify khrplatform.h and this file to suit their platform.
12.352 +* You are encouraged to submit all modifications to the Khronos group so that
12.353 +* they can be included in future versions of this file. Please submit changes
12.354 +* by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
12.355 +* by filing a bug against product "EGL" component "Registry".
12.356 +*/
12.357 +
12.358 +/*#include <KHR/khrplatform.h>*/
12.359 +
12.360 +/* Macros used in EGL function prototype declarations.
12.361 +*
12.362 +* EGL functions should be prototyped as:
12.363 +*
12.364 +* EGLAPI return-type EGLAPIENTRY eglFunction(arguments);
12.365 +* typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments);
12.366 +*
12.367 +* KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h
12.368 +*/
12.369 +
12.370 +#ifndef EGLAPI
12.371 +#define EGLAPI KHRONOS_APICALL
12.372 +#endif
12.373 +
12.374 +#ifndef EGLAPIENTRY
12.375 +#define EGLAPIENTRY KHRONOS_APIENTRY
12.376 +#endif
12.377 +#define EGLAPIENTRYP EGLAPIENTRY*
12.378 +
12.379 +/* The types NativeDisplayType, NativeWindowType, and NativePixmapType
12.380 +* are aliases of window-system-dependent types, such as X Display * or
12.381 +* Windows Device Context. They must be defined in platform-specific
12.382 +* code below. The EGL-prefixed versions of Native*Type are the same
12.383 +* types, renamed in EGL 1.3 so all types in the API start with "EGL".
12.384 +*
12.385 +* Khronos STRONGLY RECOMMENDS that you use the default definitions
12.386 +* provided below, since these changes affect both binary and source
12.387 +* portability of applications using EGL running on different EGL
12.388 +* implementations.
12.389 +*/
12.390 +
12.391 +#if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */
12.392 +#ifndef WIN32_LEAN_AND_MEAN
12.393 +#define WIN32_LEAN_AND_MEAN 1
12.394 +#endif
12.395 +#include <windows.h>
12.396 +
12.397 +typedef HDC EGLNativeDisplayType;
12.398 +typedef HBITMAP EGLNativePixmapType;
12.399 +typedef HWND EGLNativeWindowType;
12.400 +
12.401 +#elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */
12.402 +
12.403 +typedef int EGLNativeDisplayType;
12.404 +typedef void *EGLNativeWindowType;
12.405 +typedef void *EGLNativePixmapType;
12.406 +
12.407 +#elif defined(WL_EGL_PLATFORM)
12.408 +
12.409 +typedef struct wl_display *EGLNativeDisplayType;
12.410 +typedef struct wl_egl_pixmap *EGLNativePixmapType;
12.411 +typedef struct wl_egl_window *EGLNativeWindowType;
12.412 +
12.413 +#elif defined(__GBM__)
12.414 +
12.415 +typedef struct gbm_device *EGLNativeDisplayType;
12.416 +typedef struct gbm_bo *EGLNativePixmapType;
12.417 +typedef void *EGLNativeWindowType;
12.418 +
12.419 +#elif defined(ANDROID) /* Android */
12.420 +
12.421 +struct ANativeWindow;
12.422 +struct egl_native_pixmap_t;
12.423 +
12.424 +typedef struct ANativeWindow *EGLNativeWindowType;
12.425 +typedef struct egl_native_pixmap_t *EGLNativePixmapType;
12.426 +typedef void *EGLNativeDisplayType;
12.427 +
12.428 +#elif defined(MIR_EGL_PLATFORM)
12.429 +
12.430 +#include <mir_toolkit/mir_client_library.h>
12.431 +typedef MirEGLNativeDisplayType EGLNativeDisplayType;
12.432 +typedef void *EGLNativePixmapType;
12.433 +typedef MirEGLNativeWindowType EGLNativeWindowType;
12.434 +
12.435 +#elif defined(__unix__)
12.436 +
12.437 +#ifdef MESA_EGL_NO_X11_HEADERS
12.438 +
12.439 +typedef void *EGLNativeDisplayType;
12.440 +typedef khronos_uintptr_t EGLNativePixmapType;
12.441 +typedef khronos_uintptr_t EGLNativeWindowType;
12.442 +
12.443 +#else
12.444 +
12.445 +/* X11 (tentative) */
12.446 +#include <X11/Xlib.h>
12.447 +#include <X11/Xutil.h>
12.448 +
12.449 +typedef Display *EGLNativeDisplayType;
12.450 +typedef Pixmap EGLNativePixmapType;
12.451 +typedef Window EGLNativeWindowType;
12.452 +
12.453 +#endif /* MESA_EGL_NO_X11_HEADERS */
12.454 +
12.455 +#else
12.456 +#error "Platform not recognized"
12.457 +#endif
12.458 +
12.459 +/* EGL 1.2 types, renamed for consistency in EGL 1.3 */
12.460 +typedef EGLNativeDisplayType NativeDisplayType;
12.461 +typedef EGLNativePixmapType NativePixmapType;
12.462 +typedef EGLNativeWindowType NativeWindowType;
12.463 +
12.464 +
12.465 +/* Define EGLint. This must be a signed integral type large enough to contain
12.466 +* all legal attribute names and values passed into and out of EGL, whether
12.467 +* their type is boolean, bitmask, enumerant (symbolic constant), integer,
12.468 +* handle, or other. While in general a 32-bit integer will suffice, if
12.469 +* handles are 64 bit types, then EGLint should be defined as a signed 64-bit
12.470 +* integer type.
12.471 +*/
12.472 +typedef khronos_int32_t EGLint;
12.473 +
12.474 +#endif /* __eglplatform_h */
12.475 +
12.476 +/* -*- mode: c; tab-width: 8; -*- */
12.477 +/* vi: set sw=4 ts=8: */
12.478 +/* Reference version of egl.h for EGL 1.4.
12.479 +* $Revision: 9356 $ on $Date: 2009-10-21 02:52:25 -0700 (Wed, 21 Oct 2009) $
12.480 +*/
12.481 +
12.482 +/*
12.483 +** Copyright (c) 2007-2009 The Khronos Group Inc.
12.484 +**
12.485 +** Permission is hereby granted, free of charge, to any person obtaining a
12.486 +** copy of this software and/or associated documentation files (the
12.487 +** "Materials"), to deal in the Materials without restriction, including
12.488 +** without limitation the rights to use, copy, modify, merge, publish,
12.489 +** distribute, sublicense, and/or sell copies of the Materials, and to
12.490 +** permit persons to whom the Materials are furnished to do so, subject to
12.491 +** the following conditions:
12.492 +**
12.493 +** The above copyright notice and this permission notice shall be included
12.494 +** in all copies or substantial portions of the Materials.
12.495 +**
12.496 +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
12.497 +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
12.498 +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
12.499 +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
12.500 +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
12.501 +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
12.502 +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
12.503 +*/
12.504 +
12.505 +#ifndef __egl_h_
12.506 +#define __egl_h_
12.507 +
12.508 +/* All platform-dependent types and macro boilerplate (such as EGLAPI
12.509 +* and EGLAPIENTRY) should go in eglplatform.h.
12.510 +*/
12.511 +/*#include <EGL/eglplatform.h>*/
12.512 +
12.513 +#ifdef __cplusplus
12.514 +extern "C" {
12.515 +#endif
12.516 +
12.517 + /* EGL Types */
12.518 + /* EGLint is defined in eglplatform.h */
12.519 + typedef unsigned int EGLBoolean;
12.520 + typedef unsigned int EGLenum;
12.521 + typedef void *EGLConfig;
12.522 + typedef void *EGLContext;
12.523 + typedef void *EGLDisplay;
12.524 + typedef void *EGLSurface;
12.525 + typedef void *EGLClientBuffer;
12.526 +
12.527 + /* EGL Versioning */
12.528 +#define EGL_VERSION_1_0 1
12.529 +#define EGL_VERSION_1_1 1
12.530 +#define EGL_VERSION_1_2 1
12.531 +#define EGL_VERSION_1_3 1
12.532 +#define EGL_VERSION_1_4 1
12.533 +
12.534 + /* EGL Enumerants. Bitmasks and other exceptional cases aside, most
12.535 + * enums are assigned unique values starting at 0x3000.
12.536 + */
12.537 +
12.538 + /* EGL aliases */
12.539 +#define EGL_FALSE 0
12.540 +#define EGL_TRUE 1
12.541 +
12.542 + /* Out-of-band handle values */
12.543 +#define EGL_DEFAULT_DISPLAY ((EGLNativeDisplayType)0)
12.544 +#define EGL_NO_CONTEXT ((EGLContext)0)
12.545 +#define EGL_NO_DISPLAY ((EGLDisplay)0)
12.546 +#define EGL_NO_SURFACE ((EGLSurface)0)
12.547 +
12.548 + /* Out-of-band attribute value */
12.549 +#define EGL_DONT_CARE ((EGLint)-1)
12.550 +
12.551 + /* Errors / GetError return values */
12.552 +#define EGL_SUCCESS 0x3000
12.553 +#define EGL_NOT_INITIALIZED 0x3001
12.554 +#define EGL_BAD_ACCESS 0x3002
12.555 +#define EGL_BAD_ALLOC 0x3003
12.556 +#define EGL_BAD_ATTRIBUTE 0x3004
12.557 +#define EGL_BAD_CONFIG 0x3005
12.558 +#define EGL_BAD_CONTEXT 0x3006
12.559 +#define EGL_BAD_CURRENT_SURFACE 0x3007
12.560 +#define EGL_BAD_DISPLAY 0x3008
12.561 +#define EGL_BAD_MATCH 0x3009
12.562 +#define EGL_BAD_NATIVE_PIXMAP 0x300A
12.563 +#define EGL_BAD_NATIVE_WINDOW 0x300B
12.564 +#define EGL_BAD_PARAMETER 0x300C
12.565 +#define EGL_BAD_SURFACE 0x300D
12.566 +#define EGL_CONTEXT_LOST 0x300E /* EGL 1.1 - IMG_power_management */
12.567 +
12.568 + /* Reserved 0x300F-0x301F for additional errors */
12.569 +
12.570 + /* Config attributes */
12.571 +#define EGL_BUFFER_SIZE 0x3020
12.572 +#define EGL_ALPHA_SIZE 0x3021
12.573 +#define EGL_BLUE_SIZE 0x3022
12.574 +#define EGL_GREEN_SIZE 0x3023
12.575 +#define EGL_RED_SIZE 0x3024
12.576 +#define EGL_DEPTH_SIZE 0x3025
12.577 +#define EGL_STENCIL_SIZE 0x3026
12.578 +#define EGL_CONFIG_CAVEAT 0x3027
12.579 +#define EGL_CONFIG_ID 0x3028
12.580 +#define EGL_LEVEL 0x3029
12.581 +#define EGL_MAX_PBUFFER_HEIGHT 0x302A
12.582 +#define EGL_MAX_PBUFFER_PIXELS 0x302B
12.583 +#define EGL_MAX_PBUFFER_WIDTH 0x302C
12.584 +#define EGL_NATIVE_RENDERABLE 0x302D
12.585 +#define EGL_NATIVE_VISUAL_ID 0x302E
12.586 +#define EGL_NATIVE_VISUAL_TYPE 0x302F
12.587 +#define EGL_SAMPLES 0x3031
12.588 +#define EGL_SAMPLE_BUFFERS 0x3032
12.589 +#define EGL_SURFACE_TYPE 0x3033
12.590 +#define EGL_TRANSPARENT_TYPE 0x3034
12.591 +#define EGL_TRANSPARENT_BLUE_VALUE 0x3035
12.592 +#define EGL_TRANSPARENT_GREEN_VALUE 0x3036
12.593 +#define EGL_TRANSPARENT_RED_VALUE 0x3037
12.594 +#define EGL_NONE 0x3038 /* Attrib list terminator */
12.595 +#define EGL_BIND_TO_TEXTURE_RGB 0x3039
12.596 +#define EGL_BIND_TO_TEXTURE_RGBA 0x303A
12.597 +#define EGL_MIN_SWAP_INTERVAL 0x303B
12.598 +#define EGL_MAX_SWAP_INTERVAL 0x303C
12.599 +#define EGL_LUMINANCE_SIZE 0x303D
12.600 +#define EGL_ALPHA_MASK_SIZE 0x303E
12.601 +#define EGL_COLOR_BUFFER_TYPE 0x303F
12.602 +#define EGL_RENDERABLE_TYPE 0x3040
12.603 +#define EGL_MATCH_NATIVE_PIXMAP 0x3041 /* Pseudo-attribute (not queryable) */
12.604 +#define EGL_CONFORMANT 0x3042
12.605 +
12.606 + /* Reserved 0x3041-0x304F for additional config attributes */
12.607 +
12.608 + /* Config attribute values */
12.609 +#define EGL_SLOW_CONFIG 0x3050 /* EGL_CONFIG_CAVEAT value */
12.610 +#define EGL_NON_CONFORMANT_CONFIG 0x3051 /* EGL_CONFIG_CAVEAT value */
12.611 +#define EGL_TRANSPARENT_RGB 0x3052 /* EGL_TRANSPARENT_TYPE value */
12.612 +#define EGL_RGB_BUFFER 0x308E /* EGL_COLOR_BUFFER_TYPE value */
12.613 +#define EGL_LUMINANCE_BUFFER 0x308F /* EGL_COLOR_BUFFER_TYPE value */
12.614 +
12.615 + /* More config attribute values, for EGL_TEXTURE_FORMAT */
12.616 +#define EGL_NO_TEXTURE 0x305C
12.617 +#define EGL_TEXTURE_RGB 0x305D
12.618 +#define EGL_TEXTURE_RGBA 0x305E
12.619 +#define EGL_TEXTURE_2D 0x305F
12.620 +
12.621 + /* Config attribute mask bits */
12.622 +#define EGL_PBUFFER_BIT 0x0001 /* EGL_SURFACE_TYPE mask bits */
12.623 +#define EGL_PIXMAP_BIT 0x0002 /* EGL_SURFACE_TYPE mask bits */
12.624 +#define EGL_WINDOW_BIT 0x0004 /* EGL_SURFACE_TYPE mask bits */
12.625 +#define EGL_VG_COLORSPACE_LINEAR_BIT 0x0020 /* EGL_SURFACE_TYPE mask bits */
12.626 +#define EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040 /* EGL_SURFACE_TYPE mask bits */
12.627 +#define EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200 /* EGL_SURFACE_TYPE mask bits */
12.628 +#define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400 /* EGL_SURFACE_TYPE mask bits */
12.629 +
12.630 +#define EGL_OPENGL_ES_BIT 0x0001 /* EGL_RENDERABLE_TYPE mask bits */
12.631 +#define EGL_OPENVG_BIT 0x0002 /* EGL_RENDERABLE_TYPE mask bits */
12.632 +#define EGL_OPENGL_ES2_BIT 0x0004 /* EGL_RENDERABLE_TYPE mask bits */
12.633 +#define EGL_OPENGL_BIT 0x0008 /* EGL_RENDERABLE_TYPE mask bits */
12.634 +
12.635 + /* QueryString targets */
12.636 +#define EGL_VENDOR 0x3053
12.637 +#define EGL_VERSION 0x3054
12.638 +#define EGL_EXTENSIONS 0x3055
12.639 +#define EGL_CLIENT_APIS 0x308D
12.640 +
12.641 + /* QuerySurface / SurfaceAttrib / CreatePbufferSurface targets */
12.642 +#define EGL_HEIGHT 0x3056
12.643 +#define EGL_WIDTH 0x3057
12.644 +#define EGL_LARGEST_PBUFFER 0x3058
12.645 +#define EGL_TEXTURE_FORMAT 0x3080
12.646 +#define EGL_TEXTURE_TARGET 0x3081
12.647 +#define EGL_MIPMAP_TEXTURE 0x3082
12.648 +#define EGL_MIPMAP_LEVEL 0x3083
12.649 +#define EGL_RENDER_BUFFER 0x3086
12.650 +#define EGL_VG_COLORSPACE 0x3087
12.651 +#define EGL_VG_ALPHA_FORMAT 0x3088
12.652 +#define EGL_HORIZONTAL_RESOLUTION 0x3090
12.653 +#define EGL_VERTICAL_RESOLUTION 0x3091
12.654 +#define EGL_PIXEL_ASPECT_RATIO 0x3092
12.655 +#define EGL_SWAP_BEHAVIOR 0x3093
12.656 +#define EGL_MULTISAMPLE_RESOLVE 0x3099
12.657 +
12.658 + /* EGL_RENDER_BUFFER values / BindTexImage / ReleaseTexImage buffer targets */
12.659 +#define EGL_BACK_BUFFER 0x3084
12.660 +#define EGL_SINGLE_BUFFER 0x3085
12.661 +
12.662 + /* OpenVG color spaces */
12.663 +#define EGL_VG_COLORSPACE_sRGB 0x3089 /* EGL_VG_COLORSPACE value */
12.664 +#define EGL_VG_COLORSPACE_LINEAR 0x308A /* EGL_VG_COLORSPACE value */
12.665 +
12.666 + /* OpenVG alpha formats */
12.667 +#define EGL_VG_ALPHA_FORMAT_NONPRE 0x308B /* EGL_ALPHA_FORMAT value */
12.668 +#define EGL_VG_ALPHA_FORMAT_PRE 0x308C /* EGL_ALPHA_FORMAT value */
12.669 +
12.670 + /* Constant scale factor by which fractional display resolutions &
12.671 + * aspect ratio are scaled when queried as integer values.
12.672 + */
12.673 +#define EGL_DISPLAY_SCALING 10000
12.674 +
12.675 + /* Unknown display resolution/aspect ratio */
12.676 +#define EGL_UNKNOWN ((EGLint)-1)
12.677 +
12.678 + /* Back buffer swap behaviors */
12.679 +#define EGL_BUFFER_PRESERVED 0x3094 /* EGL_SWAP_BEHAVIOR value */
12.680 +#define EGL_BUFFER_DESTROYED 0x3095 /* EGL_SWAP_BEHAVIOR value */
12.681 +
12.682 + /* CreatePbufferFromClientBuffer buffer types */
12.683 +#define EGL_OPENVG_IMAGE 0x3096
12.684 +
12.685 + /* QueryContext targets */
12.686 +#define EGL_CONTEXT_CLIENT_TYPE 0x3097
12.687 +
12.688 + /* CreateContext attributes */
12.689 +#define EGL_CONTEXT_CLIENT_VERSION 0x3098
12.690 +
12.691 + /* Multisample resolution behaviors */
12.692 +#define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A /* EGL_MULTISAMPLE_RESOLVE value */
12.693 +#define EGL_MULTISAMPLE_RESOLVE_BOX 0x309B /* EGL_MULTISAMPLE_RESOLVE value */
12.694 +
12.695 + /* BindAPI/QueryAPI targets */
12.696 +#define EGL_OPENGL_ES_API 0x30A0
12.697 +#define EGL_OPENVG_API 0x30A1
12.698 +#define EGL_OPENGL_API 0x30A2
12.699 +
12.700 + /* GetCurrentSurface targets */
12.701 +#define EGL_DRAW 0x3059
12.702 +#define EGL_READ 0x305A
12.703 +
12.704 + /* WaitNative engines */
12.705 +#define EGL_CORE_NATIVE_ENGINE 0x305B
12.706 +
12.707 + /* EGL 1.2 tokens renamed for consistency in EGL 1.3 */
12.708 +#define EGL_COLORSPACE EGL_VG_COLORSPACE
12.709 +#define EGL_ALPHA_FORMAT EGL_VG_ALPHA_FORMAT
12.710 +#define EGL_COLORSPACE_sRGB EGL_VG_COLORSPACE_sRGB
12.711 +#define EGL_COLORSPACE_LINEAR EGL_VG_COLORSPACE_LINEAR
12.712 +#define EGL_ALPHA_FORMAT_NONPRE EGL_VG_ALPHA_FORMAT_NONPRE
12.713 +#define EGL_ALPHA_FORMAT_PRE EGL_VG_ALPHA_FORMAT_PRE
12.714 +
12.715 + /* EGL extensions must request enum blocks from the Khronos
12.716 + * API Registrar, who maintains the enumerant registry. Submit
12.717 + * a bug in Khronos Bugzilla against task "Registry".
12.718 + */
12.719 +
12.720 +
12.721 +
12.722 + /* EGL Functions */
12.723 +
12.724 + EGLAPI EGLint EGLAPIENTRY eglGetError(void);
12.725 +
12.726 + EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay(EGLNativeDisplayType display_id);
12.727 + EGLAPI EGLBoolean EGLAPIENTRY eglInitialize(EGLDisplay dpy, EGLint *major, EGLint *minor);
12.728 + EGLAPI EGLBoolean EGLAPIENTRY eglTerminate(EGLDisplay dpy);
12.729 +
12.730 + EGLAPI const char * EGLAPIENTRY eglQueryString(EGLDisplay dpy, EGLint name);
12.731 +
12.732 + EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigs(EGLDisplay dpy, EGLConfig *configs,
12.733 + EGLint config_size, EGLint *num_config);
12.734 + EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig(EGLDisplay dpy, const EGLint *attrib_list,
12.735 + EGLConfig *configs, EGLint config_size,
12.736 + EGLint *num_config);
12.737 + EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config,
12.738 + EGLint attribute, EGLint *value);
12.739 +
12.740 + EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config,
12.741 + EGLNativeWindowType win,
12.742 + const EGLint *attrib_list);
12.743 + EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config,
12.744 + const EGLint *attrib_list);
12.745 + EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface(EGLDisplay dpy, EGLConfig config,
12.746 + EGLNativePixmapType pixmap,
12.747 + const EGLint *attrib_list);
12.748 + EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface(EGLDisplay dpy, EGLSurface surface);
12.749 + EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface(EGLDisplay dpy, EGLSurface surface,
12.750 + EGLint attribute, EGLint *value);
12.751 +
12.752 + EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI(EGLenum api);
12.753 + EGLAPI EGLenum EGLAPIENTRY eglQueryAPI(void);
12.754 +
12.755 + EGLAPI EGLBoolean EGLAPIENTRY eglWaitClient(void);
12.756 +
12.757 + EGLAPI EGLBoolean EGLAPIENTRY eglReleaseThread(void);
12.758 +
12.759 + EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer(
12.760 + EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer,
12.761 + EGLConfig config, const EGLint *attrib_list);
12.762 +
12.763 + EGLAPI EGLBoolean EGLAPIENTRY eglSurfaceAttrib(EGLDisplay dpy, EGLSurface surface,
12.764 + EGLint attribute, EGLint value);
12.765 + EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer);
12.766 + EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer);
12.767 +
12.768 +
12.769 + EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval(EGLDisplay dpy, EGLint interval);
12.770 +
12.771 +
12.772 + EGLAPI EGLContext EGLAPIENTRY eglCreateContext(EGLDisplay dpy, EGLConfig config,
12.773 + EGLContext share_context,
12.774 + const EGLint *attrib_list);
12.775 + EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext(EGLDisplay dpy, EGLContext ctx);
12.776 + EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent(EGLDisplay dpy, EGLSurface draw,
12.777 + EGLSurface read, EGLContext ctx);
12.778 +
12.779 + EGLAPI EGLContext EGLAPIENTRY eglGetCurrentContext(void);
12.780 + EGLAPI EGLSurface EGLAPIENTRY eglGetCurrentSurface(EGLint readdraw);
12.781 + EGLAPI EGLDisplay EGLAPIENTRY eglGetCurrentDisplay(void);
12.782 + EGLAPI EGLBoolean EGLAPIENTRY eglQueryContext(EGLDisplay dpy, EGLContext ctx,
12.783 + EGLint attribute, EGLint *value);
12.784 +
12.785 + EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL(void);
12.786 + EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative(EGLint engine);
12.787 + EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers(EGLDisplay dpy, EGLSurface surface);
12.788 + EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers(EGLDisplay dpy, EGLSurface surface,
12.789 + EGLNativePixmapType target);
12.790 +
12.791 + /* This is a generic function pointer type, whose name indicates it must
12.792 + * be cast to the proper type *and calling convention* before use.
12.793 + */
12.794 + typedef void(*__eglMustCastToProperFunctionPointerType)(void);
12.795 +
12.796 + /* Now, define eglGetProcAddress using the generic function ptr. type */
12.797 + EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY
12.798 + eglGetProcAddress(const char *procname);
12.799 +
12.800 +#ifdef __cplusplus
12.801 +}
12.802 +#endif
12.803 +
12.804 +#endif /* __egl_h_ */
12.805 +
12.806 +
12.807 +
12.808 +
12.809 +#ifndef __eglext_h_
12.810 +#define __eglext_h_
12.811 +
12.812 +#ifdef __cplusplus
12.813 +extern "C" {
12.814 +#endif
12.815 +
12.816 + /*
12.817 + ** Copyright (c) 2007-2013 The Khronos Group Inc.
12.818 + **
12.819 + ** Permission is hereby granted, free of charge, to any person obtaining a
12.820 + ** copy of this software and/or associated documentation files (the
12.821 + ** "Materials"), to deal in the Materials without restriction, including
12.822 + ** without limitation the rights to use, copy, modify, merge, publish,
12.823 + ** distribute, sublicense, and/or sell copies of the Materials, and to
12.824 + ** permit persons to whom the Materials are furnished to do so, subject to
12.825 + ** the following conditions:
12.826 + **
12.827 + ** The above copyright notice and this permission notice shall be included
12.828 + ** in all copies or substantial portions of the Materials.
12.829 + **
12.830 + ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
12.831 + ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
12.832 + ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
12.833 + ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
12.834 + ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
12.835 + ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
12.836 + ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
12.837 + */
12.838 +
12.839 +/* #include <EGL/eglplatform.h> */
12.840 +
12.841 + /*************************************************************/
12.842 +
12.843 + /* Header file version number */
12.844 + /* Current version at http://www.khronos.org/registry/egl/ */
12.845 + /* $Revision: 21254 $ on $Date: 2013-04-25 03:11:55 -0700 (Thu, 25 Apr 2013) $ */
12.846 +#define EGL_EGLEXT_VERSION 16
12.847 +
12.848 +#ifndef EGL_KHR_config_attribs
12.849 +#define EGL_KHR_config_attribs 1
12.850 +#define EGL_CONFORMANT_KHR 0x3042 /* EGLConfig attribute */
12.851 +#define EGL_VG_COLORSPACE_LINEAR_BIT_KHR 0x0020 /* EGL_SURFACE_TYPE bitfield */
12.852 +#define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR 0x0040 /* EGL_SURFACE_TYPE bitfield */
12.853 +#endif
12.854 +
12.855 +#ifndef EGL_KHR_lock_surface
12.856 +#define EGL_KHR_lock_surface 1
12.857 +#define EGL_READ_SURFACE_BIT_KHR 0x0001 /* EGL_LOCK_USAGE_HINT_KHR bitfield */
12.858 +#define EGL_WRITE_SURFACE_BIT_KHR 0x0002 /* EGL_LOCK_USAGE_HINT_KHR bitfield */
12.859 +#define EGL_LOCK_SURFACE_BIT_KHR 0x0080 /* EGL_SURFACE_TYPE bitfield */
12.860 +#define EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100 /* EGL_SURFACE_TYPE bitfield */
12.861 +#define EGL_MATCH_FORMAT_KHR 0x3043 /* EGLConfig attribute */
12.862 +#define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0 /* EGL_MATCH_FORMAT_KHR value */
12.863 +#define EGL_FORMAT_RGB_565_KHR 0x30C1 /* EGL_MATCH_FORMAT_KHR value */
12.864 +#define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2 /* EGL_MATCH_FORMAT_KHR value */
12.865 +#define EGL_FORMAT_RGBA_8888_KHR 0x30C3 /* EGL_MATCH_FORMAT_KHR value */
12.866 +#define EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4 /* eglLockSurfaceKHR attribute */
12.867 +#define EGL_LOCK_USAGE_HINT_KHR 0x30C5 /* eglLockSurfaceKHR attribute */
12.868 +#define EGL_BITMAP_POINTER_KHR 0x30C6 /* eglQuerySurface attribute */
12.869 +#define EGL_BITMAP_PITCH_KHR 0x30C7 /* eglQuerySurface attribute */
12.870 +#define EGL_BITMAP_ORIGIN_KHR 0x30C8 /* eglQuerySurface attribute */
12.871 +#define EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9 /* eglQuerySurface attribute */
12.872 +#define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA /* eglQuerySurface attribute */
12.873 +#define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB /* eglQuerySurface attribute */
12.874 +#define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC /* eglQuerySurface attribute */
12.875 +#define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD /* eglQuerySurface attribute */
12.876 +#define EGL_LOWER_LEFT_KHR 0x30CE /* EGL_BITMAP_ORIGIN_KHR value */
12.877 +#define EGL_UPPER_LEFT_KHR 0x30CF /* EGL_BITMAP_ORIGIN_KHR value */
12.878 +#ifdef EGL_EGLEXT_PROTOTYPES
12.879 + EGLAPI EGLBoolean EGLAPIENTRY eglLockSurfaceKHR(EGLDisplay display, EGLSurface surface, const EGLint *attrib_list);
12.880 + EGLAPI EGLBoolean EGLAPIENTRY eglUnlockSurfaceKHR(EGLDisplay display, EGLSurface surface);
12.881 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.882 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list);
12.883 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface);
12.884 +#endif
12.885 +
12.886 +#ifndef EGL_KHR_image
12.887 +#define EGL_KHR_image 1
12.888 +#define EGL_NATIVE_PIXMAP_KHR 0x30B0 /* eglCreateImageKHR target */
12.889 + typedef void *EGLImageKHR;
12.890 +#define EGL_NO_IMAGE_KHR ((EGLImageKHR)0)
12.891 +#ifdef EGL_EGLEXT_PROTOTYPES
12.892 + EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR(EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
12.893 + EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR(EGLDisplay dpy, EGLImageKHR image);
12.894 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.895 + typedef EGLImageKHR(EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
12.896 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image);
12.897 +#endif
12.898 +
12.899 +#ifndef EGL_KHR_vg_parent_image
12.900 +#define EGL_KHR_vg_parent_image 1
12.901 +#define EGL_VG_PARENT_IMAGE_KHR 0x30BA /* eglCreateImageKHR target */
12.902 +#endif
12.903 +
12.904 +#ifndef EGL_KHR_gl_texture_2D_image
12.905 +#define EGL_KHR_gl_texture_2D_image 1
12.906 +#define EGL_GL_TEXTURE_2D_KHR 0x30B1 /* eglCreateImageKHR target */
12.907 +#define EGL_GL_TEXTURE_LEVEL_KHR 0x30BC /* eglCreateImageKHR attribute */
12.908 +#endif
12.909 +
12.910 +#ifndef EGL_KHR_gl_texture_cubemap_image
12.911 +#define EGL_KHR_gl_texture_cubemap_image 1
12.912 +#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR 0x30B3 /* eglCreateImageKHR target */
12.913 +#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR 0x30B4 /* eglCreateImageKHR target */
12.914 +#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR 0x30B5 /* eglCreateImageKHR target */
12.915 +#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR 0x30B6 /* eglCreateImageKHR target */
12.916 +#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR 0x30B7 /* eglCreateImageKHR target */
12.917 +#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR 0x30B8 /* eglCreateImageKHR target */
12.918 +#endif
12.919 +
12.920 +#ifndef EGL_KHR_gl_texture_3D_image
12.921 +#define EGL_KHR_gl_texture_3D_image 1
12.922 +#define EGL_GL_TEXTURE_3D_KHR 0x30B2 /* eglCreateImageKHR target */
12.923 +#define EGL_GL_TEXTURE_ZOFFSET_KHR 0x30BD /* eglCreateImageKHR attribute */
12.924 +#endif
12.925 +
12.926 +#ifndef EGL_KHR_gl_renderbuffer_image
12.927 +#define EGL_KHR_gl_renderbuffer_image 1
12.928 +#define EGL_GL_RENDERBUFFER_KHR 0x30B9 /* eglCreateImageKHR target */
12.929 +#endif
12.930 +
12.931 +#if KHRONOS_SUPPORT_INT64 /* EGLTimeKHR requires 64-bit uint support */
12.932 +#ifndef EGL_KHR_reusable_sync
12.933 +#define EGL_KHR_reusable_sync 1
12.934 +
12.935 + typedef void* EGLSyncKHR;
12.936 + typedef khronos_utime_nanoseconds_t EGLTimeKHR;
12.937 +
12.938 +#define EGL_SYNC_STATUS_KHR 0x30F1
12.939 +#define EGL_SIGNALED_KHR 0x30F2
12.940 +#define EGL_UNSIGNALED_KHR 0x30F3
12.941 +#define EGL_TIMEOUT_EXPIRED_KHR 0x30F5
12.942 +#define EGL_CONDITION_SATISFIED_KHR 0x30F6
12.943 +#define EGL_SYNC_TYPE_KHR 0x30F7
12.944 +#define EGL_SYNC_REUSABLE_KHR 0x30FA
12.945 +#define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR 0x0001 /* eglClientWaitSyncKHR <flags> bitfield */
12.946 +#define EGL_FOREVER_KHR 0xFFFFFFFFFFFFFFFFull
12.947 +#define EGL_NO_SYNC_KHR ((EGLSyncKHR)0)
12.948 +#ifdef EGL_EGLEXT_PROTOTYPES
12.949 + EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR(EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
12.950 + EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync);
12.951 + EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
12.952 + EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
12.953 + EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
12.954 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.955 + typedef EGLSyncKHR(EGLAPIENTRYP PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
12.956 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync);
12.957 + typedef EGLint(EGLAPIENTRYP PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
12.958 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
12.959 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
12.960 +#endif
12.961 +#endif
12.962 +
12.963 +#ifndef EGL_KHR_image_base
12.964 +#define EGL_KHR_image_base 1
12.965 + /* Most interfaces defined by EGL_KHR_image_pixmap above */
12.966 +#define EGL_IMAGE_PRESERVED_KHR 0x30D2 /* eglCreateImageKHR attribute */
12.967 +#endif
12.968 +
12.969 +#ifndef EGL_KHR_image_pixmap
12.970 +#define EGL_KHR_image_pixmap 1
12.971 + /* Interfaces defined by EGL_KHR_image above */
12.972 +#endif
12.973 +
12.974 +#ifndef EGL_IMG_context_priority
12.975 +#define EGL_IMG_context_priority 1
12.976 +#define EGL_CONTEXT_PRIORITY_LEVEL_IMG 0x3100
12.977 +#define EGL_CONTEXT_PRIORITY_HIGH_IMG 0x3101
12.978 +#define EGL_CONTEXT_PRIORITY_MEDIUM_IMG 0x3102
12.979 +#define EGL_CONTEXT_PRIORITY_LOW_IMG 0x3103
12.980 +#endif
12.981 +
12.982 +#ifndef EGL_KHR_lock_surface2
12.983 +#define EGL_KHR_lock_surface2 1
12.984 +#define EGL_BITMAP_PIXEL_SIZE_KHR 0x3110
12.985 +#endif
12.986 +
12.987 +#ifndef EGL_NV_coverage_sample
12.988 +#define EGL_NV_coverage_sample 1
12.989 +#define EGL_COVERAGE_BUFFERS_NV 0x30E0
12.990 +#define EGL_COVERAGE_SAMPLES_NV 0x30E1
12.991 +#endif
12.992 +
12.993 +#ifndef EGL_NV_depth_nonlinear
12.994 +#define EGL_NV_depth_nonlinear 1
12.995 +#define EGL_DEPTH_ENCODING_NV 0x30E2
12.996 +#define EGL_DEPTH_ENCODING_NONE_NV 0
12.997 +#define EGL_DEPTH_ENCODING_NONLINEAR_NV 0x30E3
12.998 +#endif
12.999 +
12.1000 +#if KHRONOS_SUPPORT_INT64 /* EGLTimeNV requires 64-bit uint support */
12.1001 +#ifndef EGL_NV_sync
12.1002 +#define EGL_NV_sync 1
12.1003 +#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_NV 0x30E6
12.1004 +#define EGL_SYNC_STATUS_NV 0x30E7
12.1005 +#define EGL_SIGNALED_NV 0x30E8
12.1006 +#define EGL_UNSIGNALED_NV 0x30E9
12.1007 +#define EGL_SYNC_FLUSH_COMMANDS_BIT_NV 0x0001
12.1008 +#define EGL_FOREVER_NV 0xFFFFFFFFFFFFFFFFull
12.1009 +#define EGL_ALREADY_SIGNALED_NV 0x30EA
12.1010 +#define EGL_TIMEOUT_EXPIRED_NV 0x30EB
12.1011 +#define EGL_CONDITION_SATISFIED_NV 0x30EC
12.1012 +#define EGL_SYNC_TYPE_NV 0x30ED
12.1013 +#define EGL_SYNC_CONDITION_NV 0x30EE
12.1014 +#define EGL_SYNC_FENCE_NV 0x30EF
12.1015 +#define EGL_NO_SYNC_NV ((EGLSyncNV)0)
12.1016 + typedef void* EGLSyncNV;
12.1017 + typedef khronos_utime_nanoseconds_t EGLTimeNV;
12.1018 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1019 + EGLAPI EGLSyncNV EGLAPIENTRY eglCreateFenceSyncNV(EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list);
12.1020 + EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncNV(EGLSyncNV sync);
12.1021 + EGLAPI EGLBoolean EGLAPIENTRY eglFenceNV(EGLSyncNV sync);
12.1022 + EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncNV(EGLSyncNV sync, EGLint flags, EGLTimeNV timeout);
12.1023 + EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncNV(EGLSyncNV sync, EGLenum mode);
12.1024 + EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribNV(EGLSyncNV sync, EGLint attribute, EGLint *value);
12.1025 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1026 + typedef EGLSyncNV(EGLAPIENTRYP PFNEGLCREATEFENCESYNCNVPROC) (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list);
12.1027 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLDESTROYSYNCNVPROC) (EGLSyncNV sync);
12.1028 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLFENCENVPROC) (EGLSyncNV sync);
12.1029 + typedef EGLint(EGLAPIENTRYP PFNEGLCLIENTWAITSYNCNVPROC) (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout);
12.1030 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLSIGNALSYNCNVPROC) (EGLSyncNV sync, EGLenum mode);
12.1031 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLGETSYNCATTRIBNVPROC) (EGLSyncNV sync, EGLint attribute, EGLint *value);
12.1032 +#endif
12.1033 +#endif
12.1034 +
12.1035 +#if KHRONOS_SUPPORT_INT64 /* Dependent on EGL_KHR_reusable_sync which requires 64-bit uint support */
12.1036 +#ifndef EGL_KHR_fence_sync
12.1037 +#define EGL_KHR_fence_sync 1
12.1038 + /* Reuses most tokens and entry points from EGL_KHR_reusable_sync */
12.1039 +#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR 0x30F0
12.1040 +#define EGL_SYNC_CONDITION_KHR 0x30F8
12.1041 +#define EGL_SYNC_FENCE_KHR 0x30F9
12.1042 +#endif
12.1043 +#endif
12.1044 +
12.1045 +#ifndef EGL_HI_clientpixmap
12.1046 +#define EGL_HI_clientpixmap 1
12.1047 +
12.1048 + /* Surface Attribute */
12.1049 +#define EGL_CLIENT_PIXMAP_POINTER_HI 0x8F74
12.1050 + /*
12.1051 + * Structure representing a client pixmap
12.1052 + * (pixmap's data is in client-space memory).
12.1053 + */
12.1054 + struct EGLClientPixmapHI
12.1055 + {
12.1056 + void* pData;
12.1057 + EGLint iWidth;
12.1058 + EGLint iHeight;
12.1059 + EGLint iStride;
12.1060 + };
12.1061 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1062 + EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurfaceHI(EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI* pixmap);
12.1063 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1064 + typedef EGLSurface(EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI* pixmap);
12.1065 +#endif /* EGL_HI_clientpixmap */
12.1066 +
12.1067 +#ifndef EGL_HI_colorformats
12.1068 +#define EGL_HI_colorformats 1
12.1069 + /* Config Attribute */
12.1070 +#define EGL_COLOR_FORMAT_HI 0x8F70
12.1071 + /* Color Formats */
12.1072 +#define EGL_COLOR_RGB_HI 0x8F71
12.1073 +#define EGL_COLOR_RGBA_HI 0x8F72
12.1074 +#define EGL_COLOR_ARGB_HI 0x8F73
12.1075 +#endif /* EGL_HI_colorformats */
12.1076 +
12.1077 +#ifndef EGL_MESA_drm_image
12.1078 +#define EGL_MESA_drm_image 1
12.1079 +#define EGL_DRM_BUFFER_FORMAT_MESA 0x31D0 /* CreateDRMImageMESA attribute */
12.1080 +#define EGL_DRM_BUFFER_USE_MESA 0x31D1 /* CreateDRMImageMESA attribute */
12.1081 +#define EGL_DRM_BUFFER_FORMAT_ARGB32_MESA 0x31D2 /* EGL_IMAGE_FORMAT_MESA attribute value */
12.1082 +#define EGL_DRM_BUFFER_MESA 0x31D3 /* eglCreateImageKHR target */
12.1083 +#define EGL_DRM_BUFFER_STRIDE_MESA 0x31D4
12.1084 +#define EGL_DRM_BUFFER_USE_SCANOUT_MESA 0x00000001 /* EGL_DRM_BUFFER_USE_MESA bits */
12.1085 +#define EGL_DRM_BUFFER_USE_SHARE_MESA 0x00000002 /* EGL_DRM_BUFFER_USE_MESA bits */
12.1086 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1087 + EGLAPI EGLImageKHR EGLAPIENTRY eglCreateDRMImageMESA(EGLDisplay dpy, const EGLint *attrib_list);
12.1088 + EGLAPI EGLBoolean EGLAPIENTRY eglExportDRMImageMESA(EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride);
12.1089 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1090 + typedef EGLImageKHR(EGLAPIENTRYP PFNEGLCREATEDRMIMAGEMESAPROC) (EGLDisplay dpy, const EGLint *attrib_list);
12.1091 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLEXPORTDRMIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride);
12.1092 +#endif
12.1093 +
12.1094 +#ifndef EGL_NV_post_sub_buffer
12.1095 +#define EGL_NV_post_sub_buffer 1
12.1096 +#define EGL_POST_SUB_BUFFER_SUPPORTED_NV 0x30BE
12.1097 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1098 + EGLAPI EGLBoolean EGLAPIENTRY eglPostSubBufferNV(EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height);
12.1099 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1100 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLPOSTSUBBUFFERNVPROC) (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height);
12.1101 +#endif
12.1102 +
12.1103 +#ifndef EGL_ANGLE_query_surface_pointer
12.1104 +#define EGL_ANGLE_query_surface_pointer 1
12.1105 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1106 + EGLAPI EGLBoolean eglQuerySurfacePointerANGLE(EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value);
12.1107 +#endif
12.1108 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLQUERYSURFACEPOINTERANGLEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value);
12.1109 +#endif
12.1110 +
12.1111 +#ifndef EGL_ANGLE_surface_d3d_texture_2d_share_handle
12.1112 +#define EGL_ANGLE_surface_d3d_texture_2d_share_handle 1
12.1113 +#define EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE 0x3200
12.1114 +#endif
12.1115 +
12.1116 +#ifndef EGL_NV_coverage_sample_resolve
12.1117 +#define EGL_NV_coverage_sample_resolve 1
12.1118 +#define EGL_COVERAGE_SAMPLE_RESOLVE_NV 0x3131
12.1119 +#define EGL_COVERAGE_SAMPLE_RESOLVE_DEFAULT_NV 0x3132
12.1120 +#define EGL_COVERAGE_SAMPLE_RESOLVE_NONE_NV 0x3133
12.1121 +#endif
12.1122 +
12.1123 +#if KHRONOS_SUPPORT_INT64 /* EGLuint64NV requires 64-bit uint support */
12.1124 +#ifndef EGL_NV_system_time
12.1125 +#define EGL_NV_system_time 1
12.1126 + typedef khronos_utime_nanoseconds_t EGLuint64NV;
12.1127 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1128 + EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeFrequencyNV(void);
12.1129 + EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeNV(void);
12.1130 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1131 + typedef EGLuint64NV(EGLAPIENTRYP PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC) (void);
12.1132 + typedef EGLuint64NV(EGLAPIENTRYP PFNEGLGETSYSTEMTIMENVPROC) (void);
12.1133 +#endif
12.1134 +#endif
12.1135 +
12.1136 +#if KHRONOS_SUPPORT_INT64 /* EGLuint64KHR requires 64-bit uint support */
12.1137 +#ifndef EGL_KHR_stream
12.1138 +#define EGL_KHR_stream 1
12.1139 + typedef void* EGLStreamKHR;
12.1140 + typedef khronos_uint64_t EGLuint64KHR;
12.1141 +#define EGL_NO_STREAM_KHR ((EGLStreamKHR)0)
12.1142 +#define EGL_CONSUMER_LATENCY_USEC_KHR 0x3210
12.1143 +#define EGL_PRODUCER_FRAME_KHR 0x3212
12.1144 +#define EGL_CONSUMER_FRAME_KHR 0x3213
12.1145 +#define EGL_STREAM_STATE_KHR 0x3214
12.1146 +#define EGL_STREAM_STATE_CREATED_KHR 0x3215
12.1147 +#define EGL_STREAM_STATE_CONNECTING_KHR 0x3216
12.1148 +#define EGL_STREAM_STATE_EMPTY_KHR 0x3217
12.1149 +#define EGL_STREAM_STATE_NEW_FRAME_AVAILABLE_KHR 0x3218
12.1150 +#define EGL_STREAM_STATE_OLD_FRAME_AVAILABLE_KHR 0x3219
12.1151 +#define EGL_STREAM_STATE_DISCONNECTED_KHR 0x321A
12.1152 +#define EGL_BAD_STREAM_KHR 0x321B
12.1153 +#define EGL_BAD_STATE_KHR 0x321C
12.1154 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1155 + EGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamKHR(EGLDisplay dpy, const EGLint *attrib_list);
12.1156 + EGLAPI EGLBoolean EGLAPIENTRY eglDestroyStreamKHR(EGLDisplay dpy, EGLStreamKHR stream);
12.1157 + EGLAPI EGLBoolean EGLAPIENTRY eglStreamAttribKHR(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value);
12.1158 + EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamKHR(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value);
12.1159 + EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamu64KHR(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value);
12.1160 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1161 + typedef EGLStreamKHR(EGLAPIENTRYP PFNEGLCREATESTREAMKHRPROC)(EGLDisplay dpy, const EGLint *attrib_list);
12.1162 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLDESTROYSTREAMKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
12.1163 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLSTREAMATTRIBKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value);
12.1164 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLQUERYSTREAMKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value);
12.1165 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLQUERYSTREAMU64KHRPROC)(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value);
12.1166 +#endif
12.1167 +#endif
12.1168 +
12.1169 +#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
12.1170 +#ifndef EGL_KHR_stream_consumer_gltexture
12.1171 +#define EGL_KHR_stream_consumer_gltexture 1
12.1172 +#define EGL_CONSUMER_ACQUIRE_TIMEOUT_USEC_KHR 0x321E
12.1173 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1174 + EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerGLTextureExternalKHR(EGLDisplay dpy, EGLStreamKHR stream);
12.1175 + EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerAcquireKHR(EGLDisplay dpy, EGLStreamKHR stream);
12.1176 + EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerReleaseKHR(EGLDisplay dpy, EGLStreamKHR stream);
12.1177 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1178 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
12.1179 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLSTREAMCONSUMERACQUIREKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
12.1180 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLSTREAMCONSUMERRELEASEKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
12.1181 +#endif
12.1182 +#endif
12.1183 +
12.1184 +#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
12.1185 +#ifndef EGL_KHR_stream_producer_eglsurface
12.1186 +#define EGL_KHR_stream_producer_eglsurface 1
12.1187 +#define EGL_STREAM_BIT_KHR 0x0800
12.1188 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1189 + EGLAPI EGLSurface EGLAPIENTRY eglCreateStreamProducerSurfaceKHR(EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list);
12.1190 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1191 + typedef EGLSurface(EGLAPIENTRYP PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC)(EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list);
12.1192 +#endif
12.1193 +#endif
12.1194 +
12.1195 +#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
12.1196 +#ifndef EGL_KHR_stream_producer_aldatalocator
12.1197 +#define EGL_KHR_stream_producer_aldatalocator 1
12.1198 +#endif
12.1199 +#endif
12.1200 +
12.1201 +#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
12.1202 +#ifndef EGL_KHR_stream_fifo
12.1203 +#define EGL_KHR_stream_fifo 1
12.1204 + /* reuse EGLTimeKHR */
12.1205 +#define EGL_STREAM_FIFO_LENGTH_KHR 0x31FC
12.1206 +#define EGL_STREAM_TIME_NOW_KHR 0x31FD
12.1207 +#define EGL_STREAM_TIME_CONSUMER_KHR 0x31FE
12.1208 +#define EGL_STREAM_TIME_PRODUCER_KHR 0x31FF
12.1209 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1210 + EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamTimeKHR(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value);
12.1211 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1212 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLQUERYSTREAMTIMEKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value);
12.1213 +#endif
12.1214 +#endif
12.1215 +
12.1216 +#ifndef EGL_EXT_create_context_robustness
12.1217 +#define EGL_EXT_create_context_robustness 1
12.1218 +#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT 0x30BF
12.1219 +#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_EXT 0x3138
12.1220 +#define EGL_NO_RESET_NOTIFICATION_EXT 0x31BE
12.1221 +#define EGL_LOSE_CONTEXT_ON_RESET_EXT 0x31BF
12.1222 +#endif
12.1223 +
12.1224 +#ifndef EGL_ANGLE_d3d_share_handle_client_buffer
12.1225 +#define EGL_ANGLE_d3d_share_handle_client_buffer 1
12.1226 + /* reuse EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE */
12.1227 +#endif
12.1228 +
12.1229 +#ifndef EGL_KHR_create_context
12.1230 +#define EGL_KHR_create_context 1
12.1231 +#define EGL_CONTEXT_MAJOR_VERSION_KHR EGL_CONTEXT_CLIENT_VERSION
12.1232 +#define EGL_CONTEXT_MINOR_VERSION_KHR 0x30FB
12.1233 +#define EGL_CONTEXT_FLAGS_KHR 0x30FC
12.1234 +#define EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR 0x30FD
12.1235 +#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD
12.1236 +#define EGL_NO_RESET_NOTIFICATION_KHR 0x31BE
12.1237 +#define EGL_LOSE_CONTEXT_ON_RESET_KHR 0x31BF
12.1238 +#define EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR 0x00000001
12.1239 +#define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR 0x00000002
12.1240 +#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR 0x00000004
12.1241 +#define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR 0x00000001
12.1242 +#define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR 0x00000002
12.1243 +#define EGL_OPENGL_ES3_BIT_KHR 0x00000040
12.1244 +#endif
12.1245 +
12.1246 +#ifndef EGL_KHR_surfaceless_context
12.1247 +#define EGL_KHR_surfaceless_context 1
12.1248 + /* No tokens/entry points, just relaxes an error condition */
12.1249 +#endif
12.1250 +
12.1251 +#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
12.1252 +#ifndef EGL_KHR_stream_cross_process_fd
12.1253 +#define EGL_KHR_stream_cross_process_fd 1
12.1254 + typedef int EGLNativeFileDescriptorKHR;
12.1255 +#define EGL_NO_FILE_DESCRIPTOR_KHR ((EGLNativeFileDescriptorKHR)(-1))
12.1256 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1257 + EGLAPI EGLNativeFileDescriptorKHR EGLAPIENTRY eglGetStreamFileDescriptorKHR(EGLDisplay dpy, EGLStreamKHR stream);
12.1258 + EGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamFromFileDescriptorKHR(EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor);
12.1259 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1260 + typedef EGLNativeFileDescriptorKHR(EGLAPIENTRYP PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
12.1261 + typedef EGLStreamKHR(EGLAPIENTRYP PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC)(EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor);
12.1262 +#endif
12.1263 +#endif
12.1264 +
12.1265 +#ifndef EGL_EXT_multiview_window
12.1266 +#define EGL_EXT_multiview_window 1
12.1267 +#define EGL_MULTIVIEW_VIEW_COUNT_EXT 0x3134
12.1268 +#endif
12.1269 +
12.1270 +#ifndef EGL_KHR_wait_sync
12.1271 +#define EGL_KHR_wait_sync 1
12.1272 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1273 + EGLAPI EGLint EGLAPIENTRY eglWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags);
12.1274 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1275 + typedef EGLint(EGLAPIENTRYP PFNEGLWAITSYNCKHRPROC)(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags);
12.1276 +#endif
12.1277 +
12.1278 +#ifndef EGL_NV_post_convert_rounding
12.1279 +#define EGL_NV_post_convert_rounding 1
12.1280 + /* No tokens or entry points, just relaxes behavior of SwapBuffers */
12.1281 +#endif
12.1282 +
12.1283 +#ifndef EGL_NV_native_query
12.1284 +#define EGL_NV_native_query 1
12.1285 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1286 + EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativeDisplayNV(EGLDisplay dpy, EGLNativeDisplayType* display_id);
12.1287 + EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativeWindowNV(EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType* window);
12.1288 + EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativePixmapNV(EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType* pixmap);
12.1289 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1290 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLQUERYNATIVEDISPLAYNVPROC)(EGLDisplay dpy, EGLNativeDisplayType *display_id);
12.1291 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLQUERYNATIVEWINDOWNVPROC)(EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType *window);
12.1292 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLQUERYNATIVEPIXMAPNVPROC)(EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType *pixmap);
12.1293 +#endif
12.1294 +
12.1295 +#ifndef EGL_NV_3dvision_surface
12.1296 +#define EGL_NV_3dvision_surface 1
12.1297 +#define EGL_AUTO_STEREO_NV 0x3136
12.1298 +#endif
12.1299 +
12.1300 +#ifndef EGL_ANDROID_framebuffer_target
12.1301 +#define EGL_ANDROID_framebuffer_target 1
12.1302 +#define EGL_FRAMEBUFFER_TARGET_ANDROID 0x3147
12.1303 +#endif
12.1304 +
12.1305 +#ifndef EGL_ANDROID_blob_cache
12.1306 +#define EGL_ANDROID_blob_cache 1
12.1307 + typedef khronos_ssize_t EGLsizeiANDROID;
12.1308 + typedef void(*EGLSetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, const void *value, EGLsizeiANDROID valueSize);
12.1309 + typedef EGLsizeiANDROID(*EGLGetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, void *value, EGLsizeiANDROID valueSize);
12.1310 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1311 + EGLAPI void EGLAPIENTRY eglSetBlobCacheFuncsANDROID(EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get);
12.1312 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1313 + typedef void (EGLAPIENTRYP PFNEGLSETBLOBCACHEFUNCSANDROIDPROC)(EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get);
12.1314 +#endif
12.1315 +
12.1316 +#ifndef EGL_ANDROID_image_native_buffer
12.1317 +#define EGL_ANDROID_image_native_buffer 1
12.1318 +#define EGL_NATIVE_BUFFER_ANDROID 0x3140
12.1319 +#endif
12.1320 +
12.1321 +#ifndef EGL_ANDROID_native_fence_sync
12.1322 +#define EGL_ANDROID_native_fence_sync 1
12.1323 +#define EGL_SYNC_NATIVE_FENCE_ANDROID 0x3144
12.1324 +#define EGL_SYNC_NATIVE_FENCE_FD_ANDROID 0x3145
12.1325 +#define EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID 0x3146
12.1326 +#define EGL_NO_NATIVE_FENCE_FD_ANDROID -1
12.1327 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1328 + EGLAPI EGLint EGLAPIENTRY eglDupNativeFenceFDANDROID(EGLDisplay dpy, EGLSyncKHR);
12.1329 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1330 + typedef EGLint(EGLAPIENTRYP PFNEGLDUPNATIVEFENCEFDANDROIDPROC)(EGLDisplay dpy, EGLSyncKHR);
12.1331 +#endif
12.1332 +
12.1333 +#ifndef EGL_ANDROID_recordable
12.1334 +#define EGL_ANDROID_recordable 1
12.1335 +#define EGL_RECORDABLE_ANDROID 0x3142
12.1336 +#endif
12.1337 +
12.1338 +#ifndef EGL_EXT_buffer_age
12.1339 +#define EGL_EXT_buffer_age 1
12.1340 +#define EGL_BUFFER_AGE_EXT 0x313D
12.1341 +#endif
12.1342 +
12.1343 +#ifndef EGL_EXT_image_dma_buf_import
12.1344 +#define EGL_EXT_image_dma_buf_import 1
12.1345 +#define EGL_LINUX_DMA_BUF_EXT 0x3270
12.1346 +#define EGL_LINUX_DRM_FOURCC_EXT 0x3271
12.1347 +#define EGL_DMA_BUF_PLANE0_FD_EXT 0x3272
12.1348 +#define EGL_DMA_BUF_PLANE0_OFFSET_EXT 0x3273
12.1349 +#define EGL_DMA_BUF_PLANE0_PITCH_EXT 0x3274
12.1350 +#define EGL_DMA_BUF_PLANE1_FD_EXT 0x3275
12.1351 +#define EGL_DMA_BUF_PLANE1_OFFSET_EXT 0x3276
12.1352 +#define EGL_DMA_BUF_PLANE1_PITCH_EXT 0x3277
12.1353 +#define EGL_DMA_BUF_PLANE2_FD_EXT 0x3278
12.1354 +#define EGL_DMA_BUF_PLANE2_OFFSET_EXT 0x3279
12.1355 +#define EGL_DMA_BUF_PLANE2_PITCH_EXT 0x327A
12.1356 +#define EGL_YUV_COLOR_SPACE_HINT_EXT 0x327B
12.1357 +#define EGL_SAMPLE_RANGE_HINT_EXT 0x327C
12.1358 +#define EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT 0x327D
12.1359 +#define EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT 0x327E
12.1360 +#define EGL_ITU_REC601_EXT 0x327F
12.1361 +#define EGL_ITU_REC709_EXT 0x3280
12.1362 +#define EGL_ITU_REC2020_EXT 0x3281
12.1363 +#define EGL_YUV_FULL_RANGE_EXT 0x3282
12.1364 +#define EGL_YUV_NARROW_RANGE_EXT 0x3283
12.1365 +#define EGL_YUV_CHROMA_SITING_0_EXT 0x3284
12.1366 +#define EGL_YUV_CHROMA_SITING_0_5_EXT 0x3285
12.1367 +#endif
12.1368 +
12.1369 +#ifndef EGL_ARM_pixmap_multisample_discard
12.1370 +#define EGL_ARM_pixmap_multisample_discard 1
12.1371 +#define EGL_DISCARD_SAMPLES_ARM 0x3286
12.1372 +#endif
12.1373 +
12.1374 +#ifndef EGL_EXT_swap_buffers_with_damage
12.1375 +#define EGL_EXT_swap_buffers_with_damage 1
12.1376 +#ifdef EGL_EGLEXT_PROTOTYPES
12.1377 + EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersWithDamageEXT(EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
12.1378 +#endif /* EGL_EGLEXT_PROTOTYPES */
12.1379 + typedef EGLBoolean(EGLAPIENTRYP PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC)(EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
12.1380 +#endif
12.1381 +
12.1382 +/* #include <EGL/eglmesaext.h> */
12.1383 +
12.1384 +#ifdef __cplusplus
12.1385 +}
12.1386 +#endif
12.1387 +
12.1388 +#endif /* __eglext_h_ */
12.1389 +
12.1390 +
12.1391 +
12.1392 +#endif /* _MSC_VER */
12.1393 \ No newline at end of file
13.1 --- a/include/SDL_hints.h Fri Nov 22 10:26:28 2013 -0300
13.2 +++ b/include/SDL_hints.h Fri Nov 22 13:24:53 2013 -0300
13.3 @@ -301,6 +301,21 @@
13.4 */
13.5 #define SDL_HINT_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK "SDL_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK"
13.6
13.7 +/**
13.8 +* \brief A variable specifying which shader compiler to preload when using the Chrome ANGLE binaries
13.9 +*
13.10 +* SDL has EGL and OpenGL ES2 support on Windows via the ANGLE project. It
13.11 +* can use two different sets of binaries, those compiled by the user from source
13.12 +* or those provided by the Chrome browser. In the later case, these binaries require
13.13 +* that SDL loads
13.14 +*
13.15 +* This variable can be set to the following values:
13.16 +* "d3dcompiler_46.dll" - default, best for Vista or later.
13.17 +* "d3dcompiler_43.dll" - for XP support.
13.18 +* "none" - do not load any library, useful if you compiled ANGLE from source and included the compiler in your binaries.
13.19 +*
13.20 +*/
13.21 +#define SDL_HINT_VIDEO_WIN_D3DCOMPILER "SDL_VIDEO_WIN_D3DCOMPILER"
13.22
13.23 /**
13.24 * \brief An enumeration of hint priorities
14.1 --- a/include/SDL_opengles2.h Fri Nov 22 10:26:28 2013 -0300
14.2 +++ b/include/SDL_opengles2.h Fri Nov 22 13:24:53 2013 -0300
14.3 @@ -24,7 +24,7 @@
14.4 *
14.5 * This is a simple file to encapsulate the OpenGL ES 2.0 API headers.
14.6 */
14.7 -
14.8 +#ifndef _MSC_VER
14.9 #ifdef __IPHONEOS__
14.10 #include <OpenGLES/ES2/gl.h>
14.11 #include <OpenGLES/ES2/glext.h>
14.12 @@ -33,6 +33,2758 @@
14.13 #include <GLES2/gl2ext.h>
14.14 #endif
14.15
14.16 +#else /* _MSC_VER */
14.17 +
14.18 +/* OpenGL ES2 headers for Visual Studio */
14.19 +
14.20 +#ifndef __khrplatform_h_
14.21 +#define __khrplatform_h_
14.22 +
14.23 +/*
14.24 +** Copyright (c) 2008-2009 The Khronos Group Inc.
14.25 +**
14.26 +** Permission is hereby granted, free of charge, to any person obtaining a
14.27 +** copy of this software and/or associated documentation files (the
14.28 +** "Materials"), to deal in the Materials without restriction, including
14.29 +** without limitation the rights to use, copy, modify, merge, publish,
14.30 +** distribute, sublicense, and/or sell copies of the Materials, and to
14.31 +** permit persons to whom the Materials are furnished to do so, subject to
14.32 +** the following conditions:
14.33 +**
14.34 +** The above copyright notice and this permission notice shall be included
14.35 +** in all copies or substantial portions of the Materials.
14.36 +**
14.37 +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
14.38 +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
14.39 +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
14.40 +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
14.41 +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
14.42 +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
14.43 +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
14.44 +*/
14.45 +
14.46 +/* Khronos platform-specific types and definitions.
14.47 +*
14.48 +* $Revision: 23298 $ on $Date: 2013-09-30 17:07:13 -0700 (Mon, 30 Sep 2013) $
14.49 +*
14.50 +* Adopters may modify this file to suit their platform. Adopters are
14.51 +* encouraged to submit platform specific modifications to the Khronos
14.52 +* group so that they can be included in future versions of this file.
14.53 +* Please submit changes by sending them to the public Khronos Bugzilla
14.54 +* (http://khronos.org/bugzilla) by filing a bug against product
14.55 +* "Khronos (general)" component "Registry".
14.56 +*
14.57 +* A predefined template which fills in some of the bug fields can be
14.58 +* reached using http://tinyurl.com/khrplatform-h-bugreport, but you
14.59 +* must create a Bugzilla login first.
14.60 +*
14.61 +*
14.62 +* See the Implementer's Guidelines for information about where this file
14.63 +* should be located on your system and for more details of its use:
14.64 +* http://www.khronos.org/registry/implementers_guide.pdf
14.65 +*
14.66 +* This file should be included as
14.67 +* #include <KHR/khrplatform.h>
14.68 +* by Khronos client API header files that use its types and defines.
14.69 +*
14.70 +* The types in khrplatform.h should only be used to define API-specific types.
14.71 +*
14.72 +* Types defined in khrplatform.h:
14.73 +* khronos_int8_t signed 8 bit
14.74 +* khronos_uint8_t unsigned 8 bit
14.75 +* khronos_int16_t signed 16 bit
14.76 +* khronos_uint16_t unsigned 16 bit
14.77 +* khronos_int32_t signed 32 bit
14.78 +* khronos_uint32_t unsigned 32 bit
14.79 +* khronos_int64_t signed 64 bit
14.80 +* khronos_uint64_t unsigned 64 bit
14.81 +* khronos_intptr_t signed same number of bits as a pointer
14.82 +* khronos_uintptr_t unsigned same number of bits as a pointer
14.83 +* khronos_ssize_t signed size
14.84 +* khronos_usize_t unsigned size
14.85 +* khronos_float_t signed 32 bit floating point
14.86 +* khronos_time_ns_t unsigned 64 bit time in nanoseconds
14.87 +* khronos_utime_nanoseconds_t unsigned time interval or absolute time in
14.88 +* nanoseconds
14.89 +* khronos_stime_nanoseconds_t signed time interval in nanoseconds
14.90 +* khronos_boolean_enum_t enumerated boolean type. This should
14.91 +* only be used as a base type when a client API's boolean type is
14.92 +* an enum. Client APIs which use an integer or other type for
14.93 +* booleans cannot use this as the base type for their boolean.
14.94 +*
14.95 +* Tokens defined in khrplatform.h:
14.96 +*
14.97 +* KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values.
14.98 +*
14.99 +* KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0.
14.100 +* KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0.
14.101 +*
14.102 +* Calling convention macros defined in this file:
14.103 +* KHRONOS_APICALL
14.104 +* KHRONOS_APIENTRY
14.105 +* KHRONOS_APIATTRIBUTES
14.106 +*
14.107 +* These may be used in function prototypes as:
14.108 +*
14.109 +* KHRONOS_APICALL void KHRONOS_APIENTRY funcname(
14.110 +* int arg1,
14.111 +* int arg2) KHRONOS_APIATTRIBUTES;
14.112 +*/
14.113 +
14.114 +/*-------------------------------------------------------------------------
14.115 +* Definition of KHRONOS_APICALL
14.116 +*-------------------------------------------------------------------------
14.117 +* This precedes the return type of the function in the function prototype.
14.118 +*/
14.119 +#if defined(_WIN32) && !defined(__SCITECH_SNAP__)
14.120 +# define KHRONOS_APICALL __declspec(dllimport)
14.121 +#elif defined (__SYMBIAN32__)
14.122 +# define KHRONOS_APICALL IMPORT_C
14.123 +#else
14.124 +# define KHRONOS_APICALL
14.125 +#endif
14.126 +
14.127 +/*-------------------------------------------------------------------------
14.128 +* Definition of KHRONOS_APIENTRY
14.129 +*-------------------------------------------------------------------------
14.130 +* This follows the return type of the function and precedes the function
14.131 +* name in the function prototype.
14.132 +*/
14.133 +#if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__)
14.134 +/* Win32 but not WinCE */
14.135 +# define KHRONOS_APIENTRY __stdcall
14.136 +#else
14.137 +# define KHRONOS_APIENTRY
14.138 +#endif
14.139 +
14.140 +/*-------------------------------------------------------------------------
14.141 +* Definition of KHRONOS_APIATTRIBUTES
14.142 +*-------------------------------------------------------------------------
14.143 +* This follows the closing parenthesis of the function prototype arguments.
14.144 +*/
14.145 +#if defined (__ARMCC_2__)
14.146 +#define KHRONOS_APIATTRIBUTES __softfp
14.147 +#else
14.148 +#define KHRONOS_APIATTRIBUTES
14.149 +#endif
14.150 +
14.151 +/*-------------------------------------------------------------------------
14.152 +* basic type definitions
14.153 +*-----------------------------------------------------------------------*/
14.154 +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__)
14.155 +
14.156 +
14.157 +/*
14.158 +* Using <stdint.h>
14.159 +*/
14.160 +#include <stdint.h>
14.161 +typedef int32_t khronos_int32_t;
14.162 +typedef uint32_t khronos_uint32_t;
14.163 +typedef int64_t khronos_int64_t;
14.164 +typedef uint64_t khronos_uint64_t;
14.165 +#define KHRONOS_SUPPORT_INT64 1
14.166 +#define KHRONOS_SUPPORT_FLOAT 1
14.167 +
14.168 +#elif defined(__VMS ) || defined(__sgi)
14.169 +
14.170 +/*
14.171 +* Using <inttypes.h>
14.172 +*/
14.173 +#include <inttypes.h>
14.174 +typedef int32_t khronos_int32_t;
14.175 +typedef uint32_t khronos_uint32_t;
14.176 +typedef int64_t khronos_int64_t;
14.177 +typedef uint64_t khronos_uint64_t;
14.178 +#define KHRONOS_SUPPORT_INT64 1
14.179 +#define KHRONOS_SUPPORT_FLOAT 1
14.180 +
14.181 +#elif defined(_WIN32) && !defined(__SCITECH_SNAP__)
14.182 +
14.183 +/*
14.184 +* Win32
14.185 +*/
14.186 +typedef __int32 khronos_int32_t;
14.187 +typedef unsigned __int32 khronos_uint32_t;
14.188 +typedef __int64 khronos_int64_t;
14.189 +typedef unsigned __int64 khronos_uint64_t;
14.190 +#define KHRONOS_SUPPORT_INT64 1
14.191 +#define KHRONOS_SUPPORT_FLOAT 1
14.192 +
14.193 +#elif defined(__sun__) || defined(__digital__)
14.194 +
14.195 +/*
14.196 +* Sun or Digital
14.197 +*/
14.198 +typedef int khronos_int32_t;
14.199 +typedef unsigned int khronos_uint32_t;
14.200 +#if defined(__arch64__) || defined(_LP64)
14.201 +typedef long int khronos_int64_t;
14.202 +typedef unsigned long int khronos_uint64_t;
14.203 +#else
14.204 +typedef long long int khronos_int64_t;
14.205 +typedef unsigned long long int khronos_uint64_t;
14.206 +#endif /* __arch64__ */
14.207 +#define KHRONOS_SUPPORT_INT64 1
14.208 +#define KHRONOS_SUPPORT_FLOAT 1
14.209 +
14.210 +#elif 0
14.211 +
14.212 +/*
14.213 +* Hypothetical platform with no float or int64 support
14.214 +*/
14.215 +typedef int khronos_int32_t;
14.216 +typedef unsigned int khronos_uint32_t;
14.217 +#define KHRONOS_SUPPORT_INT64 0
14.218 +#define KHRONOS_SUPPORT_FLOAT 0
14.219 +
14.220 +#else
14.221 +
14.222 +/*
14.223 +* Generic fallback
14.224 +*/
14.225 +#include <stdint.h>
14.226 +typedef int32_t khronos_int32_t;
14.227 +typedef uint32_t khronos_uint32_t;
14.228 +typedef int64_t khronos_int64_t;
14.229 +typedef uint64_t khronos_uint64_t;
14.230 +#define KHRONOS_SUPPORT_INT64 1
14.231 +#define KHRONOS_SUPPORT_FLOAT 1
14.232 +
14.233 +#endif
14.234 +
14.235 +
14.236 +/*
14.237 +* Types that are (so far) the same on all platforms
14.238 +*/
14.239 +typedef signed char khronos_int8_t;
14.240 +typedef unsigned char khronos_uint8_t;
14.241 +typedef signed short int khronos_int16_t;
14.242 +typedef unsigned short int khronos_uint16_t;
14.243 +
14.244 +/*
14.245 +* Types that differ between LLP64 and LP64 architectures - in LLP64,
14.246 +* pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
14.247 +* to be the only LLP64 architecture in current use.
14.248 +*/
14.249 +#ifdef _WIN64
14.250 +typedef signed long long int khronos_intptr_t;
14.251 +typedef unsigned long long int khronos_uintptr_t;
14.252 +typedef signed long long int khronos_ssize_t;
14.253 +typedef unsigned long long int khronos_usize_t;
14.254 +#else
14.255 +typedef signed long int khronos_intptr_t;
14.256 +typedef unsigned long int khronos_uintptr_t;
14.257 +typedef signed long int khronos_ssize_t;
14.258 +typedef unsigned long int khronos_usize_t;
14.259 +#endif
14.260 +
14.261 +#if KHRONOS_SUPPORT_FLOAT
14.262 +/*
14.263 +* Float type
14.264 +*/
14.265 +typedef float khronos_float_t;
14.266 +#endif
14.267 +
14.268 +#if KHRONOS_SUPPORT_INT64
14.269 +/* Time types
14.270 +*
14.271 +* These types can be used to represent a time interval in nanoseconds or
14.272 +* an absolute Unadjusted System Time. Unadjusted System Time is the number
14.273 +* of nanoseconds since some arbitrary system event (e.g. since the last
14.274 +* time the system booted). The Unadjusted System Time is an unsigned
14.275 +* 64 bit value that wraps back to 0 every 584 years. Time intervals
14.276 +* may be either signed or unsigned.
14.277 +*/
14.278 +typedef khronos_uint64_t khronos_utime_nanoseconds_t;
14.279 +typedef khronos_int64_t khronos_stime_nanoseconds_t;
14.280 +#endif
14.281 +
14.282 +/*
14.283 +* Dummy value used to pad enum types to 32 bits.
14.284 +*/
14.285 +#ifndef KHRONOS_MAX_ENUM
14.286 +#define KHRONOS_MAX_ENUM 0x7FFFFFFF
14.287 +#endif
14.288 +
14.289 +/*
14.290 +* Enumerated boolean type
14.291 +*
14.292 +* Values other than zero should be considered to be true. Therefore
14.293 +* comparisons should not be made against KHRONOS_TRUE.
14.294 +*/
14.295 +typedef enum {
14.296 + KHRONOS_FALSE = 0,
14.297 + KHRONOS_TRUE = 1,
14.298 + KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM
14.299 +} khronos_boolean_enum_t;
14.300 +
14.301 +#endif /* __khrplatform_h_ */
14.302 +
14.303 +
14.304 +#ifndef __gl2platform_h_
14.305 +#define __gl2platform_h_
14.306 +
14.307 +/* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */
14.308 +
14.309 +/*
14.310 + * This document is licensed under the SGI Free Software B License Version
14.311 + * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
14.312 + */
14.313 +
14.314 +/* Platform-specific types and definitions for OpenGL ES 2.X gl2.h
14.315 + *
14.316 + * Adopters may modify khrplatform.h and this file to suit their platform.
14.317 + * You are encouraged to submit all modifications to the Khronos group so that
14.318 + * they can be included in future versions of this file. Please submit changes
14.319 + * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
14.320 + * by filing a bug against product "OpenGL-ES" component "Registry".
14.321 + */
14.322 +
14.323 +/*#include <KHR/khrplatform.h>*/
14.324 +
14.325 +#ifndef GL_APICALL
14.326 +#define GL_APICALL KHRONOS_APICALL
14.327 +#endif
14.328 +
14.329 +#ifndef GL_APIENTRY
14.330 +#define GL_APIENTRY KHRONOS_APIENTRY
14.331 +#endif
14.332 +
14.333 +#endif /* __gl2platform_h_ */
14.334 +
14.335 +#ifndef __gl2_h_
14.336 +#define __gl2_h_
14.337 +
14.338 +/* $Revision: 16803 $ on $Date:: 2012-02-02 09:49:18 -0800 #$ */
14.339 +
14.340 +/*#include <GLES2/gl2platform.h>*/
14.341 +
14.342 +#ifdef __cplusplus
14.343 +extern "C" {
14.344 +#endif
14.345 +
14.346 +/*
14.347 + * This document is licensed under the SGI Free Software B License Version
14.348 + * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
14.349 + */
14.350 +
14.351 +/*-------------------------------------------------------------------------
14.352 + * Data type definitions
14.353 + *-----------------------------------------------------------------------*/
14.354 +
14.355 +typedef void GLvoid;
14.356 +typedef char GLchar;
14.357 +typedef unsigned int GLenum;
14.358 +typedef unsigned char GLboolean;
14.359 +typedef unsigned int GLbitfield;
14.360 +typedef khronos_int8_t GLbyte;
14.361 +typedef short GLshort;
14.362 +typedef int GLint;
14.363 +typedef int GLsizei;
14.364 +typedef khronos_uint8_t GLubyte;
14.365 +typedef unsigned short GLushort;
14.366 +typedef unsigned int GLuint;
14.367 +typedef khronos_float_t GLfloat;
14.368 +typedef khronos_float_t GLclampf;
14.369 +typedef khronos_int32_t GLfixed;
14.370 +
14.371 +/* GL types for handling large vertex buffer objects */
14.372 +typedef khronos_intptr_t GLintptr;
14.373 +typedef khronos_ssize_t GLsizeiptr;
14.374 +
14.375 +/* OpenGL ES core versions */
14.376 +#define GL_ES_VERSION_2_0 1
14.377 +
14.378 +/* ClearBufferMask */
14.379 +#define GL_DEPTH_BUFFER_BIT 0x00000100
14.380 +#define GL_STENCIL_BUFFER_BIT 0x00000400
14.381 +#define GL_COLOR_BUFFER_BIT 0x00004000
14.382 +
14.383 +/* Boolean */
14.384 +#define GL_FALSE 0
14.385 +#define GL_TRUE 1
14.386 +
14.387 +/* BeginMode */
14.388 +#define GL_POINTS 0x0000
14.389 +#define GL_LINES 0x0001
14.390 +#define GL_LINE_LOOP 0x0002
14.391 +#define GL_LINE_STRIP 0x0003
14.392 +#define GL_TRIANGLES 0x0004
14.393 +#define GL_TRIANGLE_STRIP 0x0005
14.394 +#define GL_TRIANGLE_FAN 0x0006
14.395 +
14.396 +/* AlphaFunction (not supported in ES20) */
14.397 +/* GL_NEVER */
14.398 +/* GL_LESS */
14.399 +/* GL_EQUAL */
14.400 +/* GL_LEQUAL */
14.401 +/* GL_GREATER */
14.402 +/* GL_NOTEQUAL */
14.403 +/* GL_GEQUAL */
14.404 +/* GL_ALWAYS */
14.405 +
14.406 +/* BlendingFactorDest */
14.407 +#define GL_ZERO 0
14.408 +#define GL_ONE 1
14.409 +#define GL_SRC_COLOR 0x0300
14.410 +#define GL_ONE_MINUS_SRC_COLOR 0x0301
14.411 +#define GL_SRC_ALPHA 0x0302
14.412 +#define GL_ONE_MINUS_SRC_ALPHA 0x0303
14.413 +#define GL_DST_ALPHA 0x0304
14.414 +#define GL_ONE_MINUS_DST_ALPHA 0x0305
14.415 +
14.416 +/* BlendingFactorSrc */
14.417 +/* GL_ZERO */
14.418 +/* GL_ONE */
14.419 +#define GL_DST_COLOR 0x0306
14.420 +#define GL_ONE_MINUS_DST_COLOR 0x0307
14.421 +#define GL_SRC_ALPHA_SATURATE 0x0308
14.422 +/* GL_SRC_ALPHA */
14.423 +/* GL_ONE_MINUS_SRC_ALPHA */
14.424 +/* GL_DST_ALPHA */
14.425 +/* GL_ONE_MINUS_DST_ALPHA */
14.426 +
14.427 +/* BlendEquationSeparate */
14.428 +#define GL_FUNC_ADD 0x8006
14.429 +#define GL_BLEND_EQUATION 0x8009
14.430 +#define GL_BLEND_EQUATION_RGB 0x8009 /* same as BLEND_EQUATION */
14.431 +#define GL_BLEND_EQUATION_ALPHA 0x883D
14.432 +
14.433 +/* BlendSubtract */
14.434 +#define GL_FUNC_SUBTRACT 0x800A
14.435 +#define GL_FUNC_REVERSE_SUBTRACT 0x800B
14.436 +
14.437 +/* Separate Blend Functions */
14.438 +#define GL_BLEND_DST_RGB 0x80C8
14.439 +#define GL_BLEND_SRC_RGB 0x80C9
14.440 +#define GL_BLEND_DST_ALPHA 0x80CA
14.441 +#define GL_BLEND_SRC_ALPHA 0x80CB
14.442 +#define GL_CONSTANT_COLOR 0x8001
14.443 +#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
14.444 +#define GL_CONSTANT_ALPHA 0x8003
14.445 +#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
14.446 +#define GL_BLEND_COLOR 0x8005
14.447 +
14.448 +/* Buffer Objects */
14.449 +#define GL_ARRAY_BUFFER 0x8892
14.450 +#define GL_ELEMENT_ARRAY_BUFFER 0x8893
14.451 +#define GL_ARRAY_BUFFER_BINDING 0x8894
14.452 +#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
14.453 +
14.454 +#define GL_STREAM_DRAW 0x88E0
14.455 +#define GL_STATIC_DRAW 0x88E4
14.456 +#define GL_DYNAMIC_DRAW 0x88E8
14.457 +
14.458 +#define GL_BUFFER_SIZE 0x8764
14.459 +#define GL_BUFFER_USAGE 0x8765
14.460 +
14.461 +#define GL_CURRENT_VERTEX_ATTRIB 0x8626
14.462 +
14.463 +/* CullFaceMode */
14.464 +#define GL_FRONT 0x0404
14.465 +#define GL_BACK 0x0405
14.466 +#define GL_FRONT_AND_BACK 0x0408
14.467 +
14.468 +/* DepthFunction */
14.469 +/* GL_NEVER */
14.470 +/* GL_LESS */
14.471 +/* GL_EQUAL */
14.472 +/* GL_LEQUAL */
14.473 +/* GL_GREATER */
14.474 +/* GL_NOTEQUAL */
14.475 +/* GL_GEQUAL */
14.476 +/* GL_ALWAYS */
14.477 +
14.478 +/* EnableCap */
14.479 +#define GL_TEXTURE_2D 0x0DE1
14.480 +#define GL_CULL_FACE 0x0B44
14.481 +#define GL_BLEND 0x0BE2
14.482 +#define GL_DITHER 0x0BD0
14.483 +#define GL_STENCIL_TEST 0x0B90
14.484 +#define GL_DEPTH_TEST 0x0B71
14.485 +#define GL_SCISSOR_TEST 0x0C11
14.486 +#define GL_POLYGON_OFFSET_FILL 0x8037
14.487 +#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
14.488 +#define GL_SAMPLE_COVERAGE 0x80A0
14.489 +
14.490 +/* ErrorCode */
14.491 +#define GL_NO_ERROR 0
14.492 +#define GL_INVALID_ENUM 0x0500
14.493 +#define GL_INVALID_VALUE 0x0501
14.494 +#define GL_INVALID_OPERATION 0x0502
14.495 +#define GL_OUT_OF_MEMORY 0x0505
14.496 +
14.497 +/* FrontFaceDirection */
14.498 +#define GL_CW 0x0900
14.499 +#define GL_CCW 0x0901
14.500 +
14.501 +/* GetPName */
14.502 +#define GL_LINE_WIDTH 0x0B21
14.503 +#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
14.504 +#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
14.505 +#define GL_CULL_FACE_MODE 0x0B45
14.506 +#define GL_FRONT_FACE 0x0B46
14.507 +#define GL_DEPTH_RANGE 0x0B70
14.508 +#define GL_DEPTH_WRITEMASK 0x0B72
14.509 +#define GL_DEPTH_CLEAR_VALUE 0x0B73
14.510 +#define GL_DEPTH_FUNC 0x0B74
14.511 +#define GL_STENCIL_CLEAR_VALUE 0x0B91
14.512 +#define GL_STENCIL_FUNC 0x0B92
14.513 +#define GL_STENCIL_FAIL 0x0B94
14.514 +#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
14.515 +#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
14.516 +#define GL_STENCIL_REF 0x0B97
14.517 +#define GL_STENCIL_VALUE_MASK 0x0B93
14.518 +#define GL_STENCIL_WRITEMASK 0x0B98
14.519 +#define GL_STENCIL_BACK_FUNC 0x8800
14.520 +#define GL_STENCIL_BACK_FAIL 0x8801
14.521 +#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
14.522 +#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
14.523 +#define GL_STENCIL_BACK_REF 0x8CA3
14.524 +#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
14.525 +#define GL_STENCIL_BACK_WRITEMASK 0x8CA5
14.526 +#define GL_VIEWPORT 0x0BA2
14.527 +#define GL_SCISSOR_BOX 0x0C10
14.528 +/* GL_SCISSOR_TEST */
14.529 +#define GL_COLOR_CLEAR_VALUE 0x0C22
14.530 +#define GL_COLOR_WRITEMASK 0x0C23
14.531 +#define GL_UNPACK_ALIGNMENT 0x0CF5
14.532 +#define GL_PACK_ALIGNMENT 0x0D05
14.533 +#define GL_MAX_TEXTURE_SIZE 0x0D33
14.534 +#define GL_MAX_VIEWPORT_DIMS 0x0D3A
14.535 +#define GL_SUBPIXEL_BITS 0x0D50
14.536 +#define GL_RED_BITS 0x0D52
14.537 +#define GL_GREEN_BITS 0x0D53
14.538 +#define GL_BLUE_BITS 0x0D54
14.539 +#define GL_ALPHA_BITS 0x0D55
14.540 +#define GL_DEPTH_BITS 0x0D56
14.541 +#define GL_STENCIL_BITS 0x0D57
14.542 +#define GL_POLYGON_OFFSET_UNITS 0x2A00
14.543 +/* GL_POLYGON_OFFSET_FILL */
14.544 +#define GL_POLYGON_OFFSET_FACTOR 0x8038
14.545 +#define GL_TEXTURE_BINDING_2D 0x8069
14.546 +#define GL_SAMPLE_BUFFERS 0x80A8
14.547 +#define GL_SAMPLES 0x80A9
14.548 +#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
14.549 +#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
14.550 +
14.551 +/* GetTextureParameter */
14.552 +/* GL_TEXTURE_MAG_FILTER */
14.553 +/* GL_TEXTURE_MIN_FILTER */
14.554 +/* GL_TEXTURE_WRAP_S */
14.555 +/* GL_TEXTURE_WRAP_T */
14.556 +
14.557 +#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
14.558 +#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
14.559 +
14.560 +/* HintMode */
14.561 +#define GL_DONT_CARE 0x1100
14.562 +#define GL_FASTEST 0x1101
14.563 +#define GL_NICEST 0x1102
14.564 +
14.565 +/* HintTarget */
14.566 +#define GL_GENERATE_MIPMAP_HINT 0x8192
14.567 +
14.568 +/* DataType */
14.569 +#define GL_BYTE 0x1400
14.570 +#define GL_UNSIGNED_BYTE 0x1401
14.571 +#define GL_SHORT 0x1402
14.572 +#define GL_UNSIGNED_SHORT 0x1403
14.573 +#define GL_INT 0x1404
14.574 +#define GL_UNSIGNED_INT 0x1405
14.575 +#define GL_FLOAT 0x1406
14.576 +#define GL_FIXED 0x140C
14.577 +
14.578 +/* PixelFormat */
14.579 +#define GL_DEPTH_COMPONENT 0x1902
14.580 +#define GL_ALPHA 0x1906
14.581 +#define GL_RGB 0x1907
14.582 +#define GL_RGBA 0x1908
14.583 +#define GL_LUMINANCE 0x1909
14.584 +#define GL_LUMINANCE_ALPHA 0x190A
14.585 +
14.586 +/* PixelType */
14.587 +/* GL_UNSIGNED_BYTE */
14.588 +#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
14.589 +#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
14.590 +#define GL_UNSIGNED_SHORT_5_6_5 0x8363
14.591 +
14.592 +/* Shaders */
14.593 +#define GL_FRAGMENT_SHADER 0x8B30
14.594 +#define GL_VERTEX_SHADER 0x8B31
14.595 +#define GL_MAX_VERTEX_ATTRIBS 0x8869
14.596 +#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB
14.597 +#define GL_MAX_VARYING_VECTORS 0x8DFC
14.598 +#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
14.599 +#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
14.600 +#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
14.601 +#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
14.602 +#define GL_SHADER_TYPE 0x8B4F
14.603 +#define GL_DELETE_STATUS 0x8B80
14.604 +#define GL_LINK_STATUS 0x8B82
14.605 +#define GL_VALIDATE_STATUS 0x8B83
14.606 +#define GL_ATTACHED_SHADERS 0x8B85
14.607 +#define GL_ACTIVE_UNIFORMS 0x8B86
14.608 +#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
14.609 +#define GL_ACTIVE_ATTRIBUTES 0x8B89
14.610 +#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
14.611 +#define GL_SHADING_LANGUAGE_VERSION 0x8B8C
14.612 +#define GL_CURRENT_PROGRAM 0x8B8D
14.613 +
14.614 +/* StencilFunction */
14.615 +#define GL_NEVER 0x0200
14.616 +#define GL_LESS 0x0201
14.617 +#define GL_EQUAL 0x0202
14.618 +#define GL_LEQUAL 0x0203
14.619 +#define GL_GREATER 0x0204
14.620 +#define GL_NOTEQUAL 0x0205
14.621 +#define GL_GEQUAL 0x0206
14.622 +#define GL_ALWAYS 0x0207
14.623 +
14.624 +/* StencilOp */
14.625 +/* GL_ZERO */
14.626 +#define GL_KEEP 0x1E00
14.627 +#define GL_REPLACE 0x1E01
14.628 +#define GL_INCR 0x1E02
14.629 +#define GL_DECR 0x1E03
14.630 +#define GL_INVERT 0x150A
14.631 +#define GL_INCR_WRAP 0x8507
14.632 +#define GL_DECR_WRAP 0x8508
14.633 +
14.634 +/* StringName */
14.635 +#define GL_VENDOR 0x1F00
14.636 +#define GL_RENDERER 0x1F01
14.637 +#define GL_VERSION 0x1F02
14.638 +#define GL_EXTENSIONS 0x1F03
14.639 +
14.640 +/* TextureMagFilter */
14.641 +#define GL_NEAREST 0x2600
14.642 +#define GL_LINEAR 0x2601
14.643 +
14.644 +/* TextureMinFilter */
14.645 +/* GL_NEAREST */
14.646 +/* GL_LINEAR */
14.647 +#define GL_NEAREST_MIPMAP_NEAREST 0x2700
14.648 +#define GL_LINEAR_MIPMAP_NEAREST 0x2701
14.649 +#define GL_NEAREST_MIPMAP_LINEAR 0x2702
14.650 +#define GL_LINEAR_MIPMAP_LINEAR 0x2703
14.651 +
14.652 +/* TextureParameterName */
14.653 +#define GL_TEXTURE_MAG_FILTER 0x2800
14.654 +#define GL_TEXTURE_MIN_FILTER 0x2801
14.655 +#define GL_TEXTURE_WRAP_S 0x2802
14.656 +#define GL_TEXTURE_WRAP_T 0x2803
14.657 +
14.658 +/* TextureTarget */
14.659 +/* GL_TEXTURE_2D */
14.660 +#define GL_TEXTURE 0x1702
14.661 +
14.662 +#define GL_TEXTURE_CUBE_MAP 0x8513
14.663 +#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
14.664 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
14.665 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
14.666 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
14.667 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
14.668 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
14.669 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
14.670 +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
14.671 +
14.672 +/* TextureUnit */
14.673 +#define GL_TEXTURE0 0x84C0
14.674 +#define GL_TEXTURE1 0x84C1
14.675 +#define GL_TEXTURE2 0x84C2
14.676 +#define GL_TEXTURE3 0x84C3
14.677 +#define GL_TEXTURE4 0x84C4
14.678 +#define GL_TEXTURE5 0x84C5
14.679 +#define GL_TEXTURE6 0x84C6
14.680 +#define GL_TEXTURE7 0x84C7
14.681 +#define GL_TEXTURE8 0x84C8
14.682 +#define GL_TEXTURE9 0x84C9
14.683 +#define GL_TEXTURE10 0x84CA
14.684 +#define GL_TEXTURE11 0x84CB
14.685 +#define GL_TEXTURE12 0x84CC
14.686 +#define GL_TEXTURE13 0x84CD
14.687 +#define GL_TEXTURE14 0x84CE
14.688 +#define GL_TEXTURE15 0x84CF
14.689 +#define GL_TEXTURE16 0x84D0
14.690 +#define GL_TEXTURE17 0x84D1
14.691 +#define GL_TEXTURE18 0x84D2
14.692 +#define GL_TEXTURE19 0x84D3
14.693 +#define GL_TEXTURE20 0x84D4
14.694 +#define GL_TEXTURE21 0x84D5
14.695 +#define GL_TEXTURE22 0x84D6
14.696 +#define GL_TEXTURE23 0x84D7
14.697 +#define GL_TEXTURE24 0x84D8
14.698 +#define GL_TEXTURE25 0x84D9
14.699 +#define GL_TEXTURE26 0x84DA
14.700 +#define GL_TEXTURE27 0x84DB
14.701 +#define GL_TEXTURE28 0x84DC
14.702 +#define GL_TEXTURE29 0x84DD
14.703 +#define GL_TEXTURE30 0x84DE
14.704 +#define GL_TEXTURE31 0x84DF
14.705 +#define GL_ACTIVE_TEXTURE 0x84E0
14.706 +
14.707 +/* TextureWrapMode */
14.708 +#define GL_REPEAT 0x2901
14.709 +#define GL_CLAMP_TO_EDGE 0x812F
14.710 +#define GL_MIRRORED_REPEAT 0x8370
14.711 +
14.712 +/* Uniform Types */
14.713 +#define GL_FLOAT_VEC2 0x8B50
14.714 +#define GL_FLOAT_VEC3 0x8B51
14.715 +#define GL_FLOAT_VEC4 0x8B52
14.716 +#define GL_INT_VEC2 0x8B53
14.717 +#define GL_INT_VEC3 0x8B54
14.718 +#define GL_INT_VEC4 0x8B55
14.719 +#define GL_BOOL 0x8B56
14.720 +#define GL_BOOL_VEC2 0x8B57
14.721 +#define GL_BOOL_VEC3 0x8B58
14.722 +#define GL_BOOL_VEC4 0x8B59
14.723 +#define GL_FLOAT_MAT2 0x8B5A
14.724 +#define GL_FLOAT_MAT3 0x8B5B
14.725 +#define GL_FLOAT_MAT4 0x8B5C
14.726 +#define GL_SAMPLER_2D 0x8B5E
14.727 +#define GL_SAMPLER_CUBE 0x8B60
14.728 +
14.729 +/* Vertex Arrays */
14.730 +#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
14.731 +#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
14.732 +#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
14.733 +#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
14.734 +#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
14.735 +#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
14.736 +#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
14.737 +
14.738 +/* Read Format */
14.739 +#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
14.740 +#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
14.741 +
14.742 +/* Shader Source */
14.743 +#define GL_COMPILE_STATUS 0x8B81
14.744 +#define GL_INFO_LOG_LENGTH 0x8B84
14.745 +#define GL_SHADER_SOURCE_LENGTH 0x8B88
14.746 +#define GL_SHADER_COMPILER 0x8DFA
14.747 +
14.748 +/* Shader Binary */
14.749 +#define GL_SHADER_BINARY_FORMATS 0x8DF8
14.750 +#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9
14.751 +
14.752 +/* Shader Precision-Specified Types */
14.753 +#define GL_LOW_FLOAT 0x8DF0
14.754 +#define GL_MEDIUM_FLOAT 0x8DF1
14.755 +#define GL_HIGH_FLOAT 0x8DF2
14.756 +#define GL_LOW_INT 0x8DF3
14.757 +#define GL_MEDIUM_INT 0x8DF4
14.758 +#define GL_HIGH_INT 0x8DF5
14.759 +
14.760 +/* Framebuffer Object. */
14.761 +#define GL_FRAMEBUFFER 0x8D40
14.762 +#define GL_RENDERBUFFER 0x8D41
14.763 +
14.764 +#define GL_RGBA4 0x8056
14.765 +#define GL_RGB5_A1 0x8057
14.766 +#define GL_RGB565 0x8D62
14.767 +#define GL_DEPTH_COMPONENT16 0x81A5
14.768 +#define GL_STENCIL_INDEX8 0x8D48
14.769 +
14.770 +#define GL_RENDERBUFFER_WIDTH 0x8D42
14.771 +#define GL_RENDERBUFFER_HEIGHT 0x8D43
14.772 +#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
14.773 +#define GL_RENDERBUFFER_RED_SIZE 0x8D50
14.774 +#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51
14.775 +#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52
14.776 +#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
14.777 +#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
14.778 +#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
14.779 +
14.780 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
14.781 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
14.782 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
14.783 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
14.784 +
14.785 +#define GL_COLOR_ATTACHMENT0 0x8CE0
14.786 +#define GL_DEPTH_ATTACHMENT 0x8D00
14.787 +#define GL_STENCIL_ATTACHMENT 0x8D20
14.788 +
14.789 +#define GL_NONE 0
14.790 +
14.791 +#define GL_FRAMEBUFFER_COMPLETE 0x8CD5
14.792 +#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
14.793 +#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
14.794 +#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9
14.795 +#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
14.796 +
14.797 +#define GL_FRAMEBUFFER_BINDING 0x8CA6
14.798 +#define GL_RENDERBUFFER_BINDING 0x8CA7
14.799 +#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
14.800 +
14.801 +#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
14.802 +
14.803 +/*-------------------------------------------------------------------------
14.804 + * GL core functions.
14.805 + *-----------------------------------------------------------------------*/
14.806 +
14.807 +GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture);
14.808 +GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
14.809 +GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar* name);
14.810 +GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
14.811 +GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
14.812 +GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
14.813 +GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
14.814 +GL_APICALL void GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
14.815 +GL_APICALL void GL_APIENTRY glBlendEquation ( GLenum mode );
14.816 +GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
14.817 +GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
14.818 +GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
14.819 +GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
14.820 +GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
14.821 +GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target);
14.822 +GL_APICALL void GL_APIENTRY glClear (GLbitfield mask);
14.823 +GL_APICALL void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
14.824 +GL_APICALL void GL_APIENTRY glClearDepthf (GLclampf depth);
14.825 +GL_APICALL void GL_APIENTRY glClearStencil (GLint s);
14.826 +GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
14.827 +GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader);
14.828 +GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
14.829 +GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
14.830 +GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
14.831 +GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
14.832 +GL_APICALL GLuint GL_APIENTRY glCreateProgram (void);
14.833 +GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type);
14.834 +GL_APICALL void GL_APIENTRY glCullFace (GLenum mode);
14.835 +GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers);
14.836 +GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers);
14.837 +GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program);
14.838 +GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers);
14.839 +GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader);
14.840 +GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures);
14.841 +GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func);
14.842 +GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag);
14.843 +GL_APICALL void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar);
14.844 +GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
14.845 +GL_APICALL void GL_APIENTRY glDisable (GLenum cap);
14.846 +GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index);
14.847 +GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
14.848 +GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
14.849 +GL_APICALL void GL_APIENTRY glEnable (GLenum cap);
14.850 +GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index);
14.851 +GL_APICALL void GL_APIENTRY glFinish (void);
14.852 +GL_APICALL void GL_APIENTRY glFlush (void);
14.853 +GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
14.854 +GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
14.855 +GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode);
14.856 +GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers);
14.857 +GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
14.858 +GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers);
14.859 +GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers);
14.860 +GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures);
14.861 +GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
14.862 +GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
14.863 +GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
14.864 +GL_APICALL int GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar* name);
14.865 +GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params);
14.866 +GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params);
14.867 +GL_APICALL GLenum GL_APIENTRY glGetError (void);
14.868 +GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params);
14.869 +GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params);
14.870 +GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params);
14.871 +GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params);
14.872 +GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
14.873 +GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params);
14.874 +GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params);
14.875 +GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
14.876 +GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
14.877 +GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
14.878 +GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name);
14.879 +GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
14.880 +GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
14.881 +GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params);
14.882 +GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params);
14.883 +GL_APICALL int GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar* name);
14.884 +GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params);
14.885 +GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params);
14.886 +GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid** pointer);
14.887 +GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode);
14.888 +GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer);
14.889 +GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap);
14.890 +GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
14.891 +GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program);
14.892 +GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
14.893 +GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader);
14.894 +GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture);
14.895 +GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width);
14.896 +GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program);
14.897 +GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
14.898 +GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
14.899 +GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
14.900 +GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void);
14.901 +GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
14.902 +GL_APICALL void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert);
14.903 +GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
14.904 +GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
14.905 +GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar* const* string, const GLint* length);
14.906 +GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
14.907 +GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
14.908 +GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
14.909 +GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
14.910 +GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
14.911 +GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
14.912 +GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
14.913 +GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
14.914 +GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
14.915 +GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
14.916 +GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
14.917 +GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
14.918 +GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat x);
14.919 +GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v);
14.920 +GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint x);
14.921 +GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v);
14.922 +GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y);
14.923 +GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v);
14.924 +GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y);
14.925 +GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v);
14.926 +GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z);
14.927 +GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v);
14.928 +GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z);
14.929 +GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v);
14.930 +GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
14.931 +GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v);
14.932 +GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w);
14.933 +GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v);
14.934 +GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
14.935 +GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
14.936 +GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
14.937 +GL_APICALL void GL_APIENTRY glUseProgram (GLuint program);
14.938 +GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program);
14.939 +GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x);
14.940 +GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values);
14.941 +GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y);
14.942 +GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values);
14.943 +GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z);
14.944 +GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values);
14.945 +GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
14.946 +GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values);
14.947 +GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
14.948 +GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
14.949 +
14.950 +#ifdef __cplusplus
14.951 +}
14.952 +#endif
14.953 +
14.954 +#endif /* __gl2_h_ */
14.955 +
14.956 +
14.957 +#ifndef __gl2ext_h_
14.958 +#define __gl2ext_h_
14.959 +
14.960 +/* $Revision: 19436 $ on $Date:: 2012-10-10 10:37:04 -0700 #$ */
14.961 +
14.962 +#ifdef __cplusplus
14.963 +extern "C" {
14.964 +#endif
14.965 +
14.966 +/*
14.967 + * This document is licensed under the SGI Free Software B License Version
14.968 + * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
14.969 + */
14.970 +
14.971 +#ifndef GL_APIENTRYP
14.972 +# define GL_APIENTRYP GL_APIENTRY*
14.973 +#endif
14.974 +
14.975 +/*------------------------------------------------------------------------*
14.976 + * OES extension tokens
14.977 + *------------------------------------------------------------------------*/
14.978 +
14.979 +/* GL_OES_compressed_ETC1_RGB8_texture */
14.980 +#ifndef GL_OES_compressed_ETC1_RGB8_texture
14.981 +#define GL_ETC1_RGB8_OES 0x8D64
14.982 +#endif
14.983 +
14.984 +/* GL_OES_compressed_paletted_texture */
14.985 +#ifndef GL_OES_compressed_paletted_texture
14.986 +#define GL_PALETTE4_RGB8_OES 0x8B90
14.987 +#define GL_PALETTE4_RGBA8_OES 0x8B91
14.988 +#define GL_PALETTE4_R5_G6_B5_OES 0x8B92
14.989 +#define GL_PALETTE4_RGBA4_OES 0x8B93
14.990 +#define GL_PALETTE4_RGB5_A1_OES 0x8B94
14.991 +#define GL_PALETTE8_RGB8_OES 0x8B95
14.992 +#define GL_PALETTE8_RGBA8_OES 0x8B96
14.993 +#define GL_PALETTE8_R5_G6_B5_OES 0x8B97
14.994 +#define GL_PALETTE8_RGBA4_OES 0x8B98
14.995 +#define GL_PALETTE8_RGB5_A1_OES 0x8B99
14.996 +#endif
14.997 +
14.998 +/* GL_OES_depth24 */
14.999 +#ifndef GL_OES_depth24
14.1000 +#define GL_DEPTH_COMPONENT24_OES 0x81A6
14.1001 +#endif
14.1002 +
14.1003 +/* GL_OES_depth32 */
14.1004 +#ifndef GL_OES_depth32
14.1005 +#define GL_DEPTH_COMPONENT32_OES 0x81A7
14.1006 +#endif
14.1007 +
14.1008 +/* GL_OES_depth_texture */
14.1009 +/* No new tokens introduced by this extension. */
14.1010 +
14.1011 +/* GL_OES_EGL_image */
14.1012 +#ifndef GL_OES_EGL_image
14.1013 +typedef void* GLeglImageOES;
14.1014 +#endif
14.1015 +
14.1016 +/* GL_OES_EGL_image_external */
14.1017 +#ifndef GL_OES_EGL_image_external
14.1018 +/* GLeglImageOES defined in GL_OES_EGL_image already. */
14.1019 +#define GL_TEXTURE_EXTERNAL_OES 0x8D65
14.1020 +#define GL_SAMPLER_EXTERNAL_OES 0x8D66
14.1021 +#define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67
14.1022 +#define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68
14.1023 +#endif
14.1024 +
14.1025 +/* GL_OES_element_index_uint */
14.1026 +#ifndef GL_OES_element_index_uint
14.1027 +#define GL_UNSIGNED_INT 0x1405
14.1028 +#endif
14.1029 +
14.1030 +/* GL_OES_get_program_binary */
14.1031 +#ifndef GL_OES_get_program_binary
14.1032 +#define GL_PROGRAM_BINARY_LENGTH_OES 0x8741
14.1033 +#define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE
14.1034 +#define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF
14.1035 +#endif
14.1036 +
14.1037 +/* GL_OES_mapbuffer */
14.1038 +#ifndef GL_OES_mapbuffer
14.1039 +#define GL_WRITE_ONLY_OES 0x88B9
14.1040 +#define GL_BUFFER_ACCESS_OES 0x88BB
14.1041 +#define GL_BUFFER_MAPPED_OES 0x88BC
14.1042 +#define GL_BUFFER_MAP_POINTER_OES 0x88BD
14.1043 +#endif
14.1044 +
14.1045 +/* GL_OES_packed_depth_stencil */
14.1046 +#ifndef GL_OES_packed_depth_stencil
14.1047 +#define GL_DEPTH_STENCIL_OES 0x84F9
14.1048 +#define GL_UNSIGNED_INT_24_8_OES 0x84FA
14.1049 +#define GL_DEPTH24_STENCIL8_OES 0x88F0
14.1050 +#endif
14.1051 +
14.1052 +/* GL_OES_required_internalformat */
14.1053 +#ifndef GL_OES_required_internalformat
14.1054 +#define GL_ALPHA8_OES 0x803C
14.1055 +#define GL_DEPTH_COMPONENT16_OES 0x81A5
14.1056 +/* reuse GL_DEPTH_COMPONENT24_OES */
14.1057 +/* reuse GL_DEPTH24_STENCIL8_OES */
14.1058 +/* reuse GL_DEPTH_COMPONENT32_OES */
14.1059 +#define GL_LUMINANCE4_ALPHA4_OES 0x8043
14.1060 +#define GL_LUMINANCE8_ALPHA8_OES 0x8045
14.1061 +#define GL_LUMINANCE8_OES 0x8040
14.1062 +#define GL_RGBA4_OES 0x8056
14.1063 +#define GL_RGB5_A1_OES 0x8057
14.1064 +#define GL_RGB565_OES 0x8D62
14.1065 +/* reuse GL_RGB8_OES */
14.1066 +/* reuse GL_RGBA8_OES */
14.1067 +/* reuse GL_RGB10_EXT */
14.1068 +/* reuse GL_RGB10_A2_EXT */
14.1069 +#endif
14.1070 +
14.1071 +/* GL_OES_rgb8_rgba8 */
14.1072 +#ifndef GL_OES_rgb8_rgba8
14.1073 +#define GL_RGB8_OES 0x8051
14.1074 +#define GL_RGBA8_OES 0x8058
14.1075 +#endif
14.1076 +
14.1077 +/* GL_OES_standard_derivatives */
14.1078 +#ifndef GL_OES_standard_derivatives
14.1079 +#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B
14.1080 +#endif
14.1081 +
14.1082 +/* GL_OES_stencil1 */
14.1083 +#ifndef GL_OES_stencil1
14.1084 +#define GL_STENCIL_INDEX1_OES 0x8D46
14.1085 +#endif
14.1086 +
14.1087 +/* GL_OES_stencil4 */
14.1088 +#ifndef GL_OES_stencil4
14.1089 +#define GL_STENCIL_INDEX4_OES 0x8D47
14.1090 +#endif
14.1091 +
14.1092 +#ifndef GL_OES_surfaceless_context
14.1093 +#define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219
14.1094 +#endif
14.1095 +
14.1096 +/* GL_OES_texture_3D */
14.1097 +#ifndef GL_OES_texture_3D
14.1098 +#define GL_TEXTURE_WRAP_R_OES 0x8072
14.1099 +#define GL_TEXTURE_3D_OES 0x806F
14.1100 +#define GL_TEXTURE_BINDING_3D_OES 0x806A
14.1101 +#define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073
14.1102 +#define GL_SAMPLER_3D_OES 0x8B5F
14.1103 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4
14.1104 +#endif
14.1105 +
14.1106 +/* GL_OES_texture_float */
14.1107 +/* No new tokens introduced by this extension. */
14.1108 +
14.1109 +/* GL_OES_texture_float_linear */
14.1110 +/* No new tokens introduced by this extension. */
14.1111 +
14.1112 +/* GL_OES_texture_half_float */
14.1113 +#ifndef GL_OES_texture_half_float
14.1114 +#define GL_HALF_FLOAT_OES 0x8D61
14.1115 +#endif
14.1116 +
14.1117 +/* GL_OES_texture_half_float_linear */
14.1118 +/* No new tokens introduced by this extension. */
14.1119 +
14.1120 +/* GL_OES_texture_npot */
14.1121 +/* No new tokens introduced by this extension. */
14.1122 +
14.1123 +/* GL_OES_vertex_array_object */
14.1124 +#ifndef GL_OES_vertex_array_object
14.1125 +#define GL_VERTEX_ARRAY_BINDING_OES 0x85B5
14.1126 +#endif
14.1127 +
14.1128 +/* GL_OES_vertex_half_float */
14.1129 +/* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
14.1130 +
14.1131 +/* GL_OES_vertex_type_10_10_10_2 */
14.1132 +#ifndef GL_OES_vertex_type_10_10_10_2
14.1133 +#define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6
14.1134 +#define GL_INT_10_10_10_2_OES 0x8DF7
14.1135 +#endif
14.1136 +
14.1137 +/*------------------------------------------------------------------------*
14.1138 + * KHR extension tokens
14.1139 + *------------------------------------------------------------------------*/
14.1140 +
14.1141 +#ifndef GL_KHR_debug
14.1142 +typedef void (GL_APIENTRYP GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
14.1143 +#define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242
14.1144 +#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH 0x8243
14.1145 +#define GL_DEBUG_CALLBACK_FUNCTION 0x8244
14.1146 +#define GL_DEBUG_CALLBACK_USER_PARAM 0x8245
14.1147 +#define GL_DEBUG_SOURCE_API 0x8246
14.1148 +#define GL_DEBUG_SOURCE_WINDOW_SYSTEM 0x8247
14.1149 +#define GL_DEBUG_SOURCE_SHADER_COMPILER 0x8248
14.1150 +#define GL_DEBUG_SOURCE_THIRD_PARTY 0x8249
14.1151 +#define GL_DEBUG_SOURCE_APPLICATION 0x824A
14.1152 +#define GL_DEBUG_SOURCE_OTHER 0x824B
14.1153 +#define GL_DEBUG_TYPE_ERROR 0x824C
14.1154 +#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR 0x824D
14.1155 +#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR 0x824E
14.1156 +#define GL_DEBUG_TYPE_PORTABILITY 0x824F
14.1157 +#define GL_DEBUG_TYPE_PERFORMANCE 0x8250
14.1158 +#define GL_DEBUG_TYPE_OTHER 0x8251
14.1159 +#define GL_DEBUG_TYPE_MARKER 0x8268
14.1160 +#define GL_DEBUG_TYPE_PUSH_GROUP 0x8269
14.1161 +#define GL_DEBUG_TYPE_POP_GROUP 0x826A
14.1162 +#define GL_DEBUG_SEVERITY_NOTIFICATION 0x826B
14.1163 +#define GL_MAX_DEBUG_GROUP_STACK_DEPTH 0x826C
14.1164 +#define GL_DEBUG_GROUP_STACK_DEPTH 0x826D
14.1165 +#define GL_BUFFER 0x82E0
14.1166 +#define GL_SHADER 0x82E1
14.1167 +#define GL_PROGRAM 0x82E2
14.1168 +#define GL_QUERY 0x82E3
14.1169 +/* PROGRAM_PIPELINE only in GL */
14.1170 +#define GL_SAMPLER 0x82E6
14.1171 +/* DISPLAY_LIST only in GL */
14.1172 +#define GL_MAX_LABEL_LENGTH 0x82E8
14.1173 +#define GL_MAX_DEBUG_MESSAGE_LENGTH 0x9143
14.1174 +#define GL_MAX_DEBUG_LOGGED_MESSAGES 0x9144
14.1175 +#define GL_DEBUG_LOGGED_MESSAGES 0x9145
14.1176 +#define GL_DEBUG_SEVERITY_HIGH 0x9146
14.1177 +#define GL_DEBUG_SEVERITY_MEDIUM 0x9147
14.1178 +#define GL_DEBUG_SEVERITY_LOW 0x9148
14.1179 +#define GL_DEBUG_OUTPUT 0x92E0
14.1180 +#define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002
14.1181 +#define GL_STACK_OVERFLOW 0x0503
14.1182 +#define GL_STACK_UNDERFLOW 0x0504
14.1183 +#endif
14.1184 +
14.1185 +#ifndef GL_KHR_texture_compression_astc_ldr
14.1186 +#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0
14.1187 +#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1
14.1188 +#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2
14.1189 +#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3
14.1190 +#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4
14.1191 +#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5
14.1192 +#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6
14.1193 +#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7
14.1194 +#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8
14.1195 +#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9
14.1196 +#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA
14.1197 +#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB
14.1198 +#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC
14.1199 +#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD
14.1200 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0
14.1201 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1
14.1202 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2
14.1203 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3
14.1204 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4
14.1205 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5
14.1206 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6
14.1207 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7
14.1208 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8
14.1209 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9
14.1210 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA
14.1211 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB
14.1212 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC
14.1213 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD
14.1214 +#endif
14.1215 +
14.1216 +/*------------------------------------------------------------------------*
14.1217 + * AMD extension tokens
14.1218 + *------------------------------------------------------------------------*/
14.1219 +
14.1220 +/* GL_AMD_compressed_3DC_texture */
14.1221 +#ifndef GL_AMD_compressed_3DC_texture
14.1222 +#define GL_3DC_X_AMD 0x87F9
14.1223 +#define GL_3DC_XY_AMD 0x87FA
14.1224 +#endif
14.1225 +
14.1226 +/* GL_AMD_compressed_ATC_texture */
14.1227 +#ifndef GL_AMD_compressed_ATC_texture
14.1228 +#define GL_ATC_RGB_AMD 0x8C92
14.1229 +#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
14.1230 +#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
14.1231 +#endif
14.1232 +
14.1233 +/* GL_AMD_performance_monitor */
14.1234 +#ifndef GL_AMD_performance_monitor
14.1235 +#define GL_COUNTER_TYPE_AMD 0x8BC0
14.1236 +#define GL_COUNTER_RANGE_AMD 0x8BC1
14.1237 +#define GL_UNSIGNED_INT64_AMD 0x8BC2
14.1238 +#define GL_PERCENTAGE_AMD 0x8BC3
14.1239 +#define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
14.1240 +#define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
14.1241 +#define GL_PERFMON_RESULT_AMD 0x8BC6
14.1242 +#endif
14.1243 +
14.1244 +/* GL_AMD_program_binary_Z400 */
14.1245 +#ifndef GL_AMD_program_binary_Z400
14.1246 +#define GL_Z400_BINARY_AMD 0x8740
14.1247 +#endif
14.1248 +
14.1249 +/*------------------------------------------------------------------------*
14.1250 + * ANGLE extension tokens
14.1251 + *------------------------------------------------------------------------*/
14.1252 +
14.1253 +/* GL_ANGLE_framebuffer_blit */
14.1254 +#ifndef GL_ANGLE_framebuffer_blit
14.1255 +#define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8
14.1256 +#define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9
14.1257 +#define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6
14.1258 +#define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA
14.1259 +#endif
14.1260 +
14.1261 +/* GL_ANGLE_framebuffer_multisample */
14.1262 +#ifndef GL_ANGLE_framebuffer_multisample
14.1263 +#define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB
14.1264 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56
14.1265 +#define GL_MAX_SAMPLES_ANGLE 0x8D57
14.1266 +#endif
14.1267 +
14.1268 +/* GL_ANGLE_instanced_arrays */
14.1269 +#ifndef GL_ANGLE_instanced_arrays
14.1270 +#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE
14.1271 +#endif
14.1272 +
14.1273 +/* GL_ANGLE_pack_reverse_row_order */
14.1274 +#ifndef GL_ANGLE_pack_reverse_row_order
14.1275 +#define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4
14.1276 +#endif
14.1277 +
14.1278 +/* GL_ANGLE_texture_compression_dxt3 */
14.1279 +#ifndef GL_ANGLE_texture_compression_dxt3
14.1280 +#define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2
14.1281 +#endif
14.1282 +
14.1283 +/* GL_ANGLE_texture_compression_dxt5 */
14.1284 +#ifndef GL_ANGLE_texture_compression_dxt5
14.1285 +#define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3
14.1286 +#endif
14.1287 +
14.1288 +/* GL_ANGLE_texture_usage */
14.1289 +#ifndef GL_ANGLE_texture_usage
14.1290 +#define GL_TEXTURE_USAGE_ANGLE 0x93A2
14.1291 +#define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3
14.1292 +#endif
14.1293 +
14.1294 +/* GL_ANGLE_translated_shader_source */
14.1295 +#ifndef GL_ANGLE_translated_shader_source
14.1296 +#define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0
14.1297 +#endif
14.1298 +
14.1299 +/*------------------------------------------------------------------------*
14.1300 + * APPLE extension tokens
14.1301 + *------------------------------------------------------------------------*/
14.1302 +
14.1303 +/* GL_APPLE_copy_texture_levels */
14.1304 +/* No new tokens introduced by this extension. */
14.1305 +
14.1306 +/* GL_APPLE_framebuffer_multisample */
14.1307 +#ifndef GL_APPLE_framebuffer_multisample
14.1308 +#define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB
14.1309 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56
14.1310 +#define GL_MAX_SAMPLES_APPLE 0x8D57
14.1311 +#define GL_READ_FRAMEBUFFER_APPLE 0x8CA8
14.1312 +#define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9
14.1313 +#define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6
14.1314 +#define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA
14.1315 +#endif
14.1316 +
14.1317 +/* GL_APPLE_rgb_422 */
14.1318 +#ifndef GL_APPLE_rgb_422
14.1319 +#define GL_RGB_422_APPLE 0x8A1F
14.1320 +#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
14.1321 +#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
14.1322 +#endif
14.1323 +
14.1324 +/* GL_APPLE_sync */
14.1325 +#ifndef GL_APPLE_sync
14.1326 +
14.1327 +#ifndef __gl3_h_
14.1328 +/* These types are defined with reference to <inttypes.h>
14.1329 + * in the Apple extension spec, but here we use the Khronos
14.1330 + * portable types in khrplatform.h, and assume those types
14.1331 + * are always defined.
14.1332 + * If any other extensions using these types are defined,
14.1333 + * the typedefs must move out of this block and be shared.
14.1334 + */
14.1335 +typedef khronos_int64_t GLint64;
14.1336 +typedef khronos_uint64_t GLuint64;
14.1337 +typedef struct __GLsync *GLsync;
14.1338 +#endif
14.1339 +
14.1340 +#define GL_SYNC_OBJECT_APPLE 0x8A53
14.1341 +#define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111
14.1342 +#define GL_OBJECT_TYPE_APPLE 0x9112
14.1343 +#define GL_SYNC_CONDITION_APPLE 0x9113
14.1344 +#define GL_SYNC_STATUS_APPLE 0x9114
14.1345 +#define GL_SYNC_FLAGS_APPLE 0x9115
14.1346 +#define GL_SYNC_FENCE_APPLE 0x9116
14.1347 +#define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117
14.1348 +#define GL_UNSIGNALED_APPLE 0x9118
14.1349 +#define GL_SIGNALED_APPLE 0x9119
14.1350 +#define GL_ALREADY_SIGNALED_APPLE 0x911A
14.1351 +#define GL_TIMEOUT_EXPIRED_APPLE 0x911B
14.1352 +#define GL_CONDITION_SATISFIED_APPLE 0x911C
14.1353 +#define GL_WAIT_FAILED_APPLE 0x911D
14.1354 +#define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001
14.1355 +#define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull
14.1356 +#endif
14.1357 +
14.1358 +/* GL_APPLE_texture_format_BGRA8888 */
14.1359 +#ifndef GL_APPLE_texture_format_BGRA8888
14.1360 +#define GL_BGRA_EXT 0x80E1
14.1361 +#endif
14.1362 +
14.1363 +/* GL_APPLE_texture_max_level */
14.1364 +#ifndef GL_APPLE_texture_max_level
14.1365 +#define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D
14.1366 +#endif
14.1367 +
14.1368 +/*------------------------------------------------------------------------*
14.1369 + * ARM extension tokens
14.1370 + *------------------------------------------------------------------------*/
14.1371 +
14.1372 +/* GL_ARM_mali_program_binary */
14.1373 +#ifndef GL_ARM_mali_program_binary
14.1374 +#define GL_MALI_PROGRAM_BINARY_ARM 0x8F61
14.1375 +#endif
14.1376 +
14.1377 +/* GL_ARM_mali_shader_binary */
14.1378 +#ifndef GL_ARM_mali_shader_binary
14.1379 +#define GL_MALI_SHADER_BINARY_ARM 0x8F60
14.1380 +#endif
14.1381 +
14.1382 +/* GL_ARM_rgba8 */
14.1383 +/* No new tokens introduced by this extension. */
14.1384 +
14.1385 +/*------------------------------------------------------------------------*
14.1386 + * EXT extension tokens
14.1387 + *------------------------------------------------------------------------*/
14.1388 +
14.1389 +/* GL_EXT_blend_minmax */
14.1390 +#ifndef GL_EXT_blend_minmax
14.1391 +#define GL_MIN_EXT 0x8007
14.1392 +#define GL_MAX_EXT 0x8008
14.1393 +#endif
14.1394 +
14.1395 +/* GL_EXT_color_buffer_half_float */
14.1396 +#ifndef GL_EXT_color_buffer_half_float
14.1397 +#define GL_RGBA16F_EXT 0x881A
14.1398 +#define GL_RGB16F_EXT 0x881B
14.1399 +#define GL_RG16F_EXT 0x822F
14.1400 +#define GL_R16F_EXT 0x822D
14.1401 +#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211
14.1402 +#define GL_UNSIGNED_NORMALIZED_EXT 0x8C17
14.1403 +#endif
14.1404 +
14.1405 +/* GL_EXT_debug_label */
14.1406 +#ifndef GL_EXT_debug_label
14.1407 +#define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F
14.1408 +#define GL_PROGRAM_OBJECT_EXT 0x8B40
14.1409 +#define GL_SHADER_OBJECT_EXT 0x8B48
14.1410 +#define GL_BUFFER_OBJECT_EXT 0x9151
14.1411 +#define GL_QUERY_OBJECT_EXT 0x9153
14.1412 +#define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154
14.1413 +#endif
14.1414 +
14.1415 +/* GL_EXT_debug_marker */
14.1416 +/* No new tokens introduced by this extension. */
14.1417 +
14.1418 +/* GL_EXT_discard_framebuffer */
14.1419 +#ifndef GL_EXT_discard_framebuffer
14.1420 +#define GL_COLOR_EXT 0x1800
14.1421 +#define GL_DEPTH_EXT 0x1801
14.1422 +#define GL_STENCIL_EXT 0x1802
14.1423 +#endif
14.1424 +
14.1425 +/* GL_EXT_map_buffer_range */
14.1426 +#ifndef GL_EXT_map_buffer_range
14.1427 +#define GL_MAP_READ_BIT_EXT 0x0001
14.1428 +#define GL_MAP_WRITE_BIT_EXT 0x0002
14.1429 +#define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004
14.1430 +#define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008
14.1431 +#define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010
14.1432 +#define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020
14.1433 +#endif
14.1434 +
14.1435 +/* GL_EXT_multisampled_render_to_texture */
14.1436 +#ifndef GL_EXT_multisampled_render_to_texture
14.1437 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C
14.1438 +/* reuse values from GL_EXT_framebuffer_multisample (desktop extension) */
14.1439 +#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
14.1440 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
14.1441 +#define GL_MAX_SAMPLES_EXT 0x8D57
14.1442 +#endif
14.1443 +
14.1444 +/* GL_EXT_multiview_draw_buffers */
14.1445 +#ifndef GL_EXT_multiview_draw_buffers
14.1446 +#define GL_COLOR_ATTACHMENT_EXT 0x90F0
14.1447 +#define GL_MULTIVIEW_EXT 0x90F1
14.1448 +#define GL_DRAW_BUFFER_EXT 0x0C01
14.1449 +#define GL_READ_BUFFER_EXT 0x0C02
14.1450 +#define GL_MAX_MULTIVIEW_BUFFERS_EXT 0x90F2
14.1451 +#endif
14.1452 +
14.1453 +/* GL_EXT_multi_draw_arrays */
14.1454 +/* No new tokens introduced by this extension. */
14.1455 +
14.1456 +/* GL_EXT_occlusion_query_boolean */
14.1457 +#ifndef GL_EXT_occlusion_query_boolean
14.1458 +#define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F
14.1459 +#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A
14.1460 +#define GL_CURRENT_QUERY_EXT 0x8865
14.1461 +#define GL_QUERY_RESULT_EXT 0x8866
14.1462 +#define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867
14.1463 +#endif
14.1464 +
14.1465 +/* GL_EXT_read_format_bgra */
14.1466 +#ifndef GL_EXT_read_format_bgra
14.1467 +#define GL_BGRA_EXT 0x80E1
14.1468 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365
14.1469 +#define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366
14.1470 +#endif
14.1471 +
14.1472 +/* GL_EXT_robustness */
14.1473 +#ifndef GL_EXT_robustness
14.1474 +/* reuse GL_NO_ERROR */
14.1475 +#define GL_GUILTY_CONTEXT_RESET_EXT 0x8253
14.1476 +#define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254
14.1477 +#define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255
14.1478 +#define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3
14.1479 +#define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256
14.1480 +#define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252
14.1481 +#define GL_NO_RESET_NOTIFICATION_EXT 0x8261
14.1482 +#endif
14.1483 +
14.1484 +/* GL_EXT_separate_shader_objects */
14.1485 +#ifndef GL_EXT_separate_shader_objects
14.1486 +#define GL_VERTEX_SHADER_BIT_EXT 0x00000001
14.1487 +#define GL_FRAGMENT_SHADER_BIT_EXT 0x00000002
14.1488 +#define GL_ALL_SHADER_BITS_EXT 0xFFFFFFFF
14.1489 +#define GL_PROGRAM_SEPARABLE_EXT 0x8258
14.1490 +#define GL_ACTIVE_PROGRAM_EXT 0x8259
14.1491 +#define GL_PROGRAM_PIPELINE_BINDING_EXT 0x825A
14.1492 +#endif
14.1493 +
14.1494 +/* GL_EXT_shader_framebuffer_fetch */
14.1495 +#ifndef GL_EXT_shader_framebuffer_fetch
14.1496 +#define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52
14.1497 +#endif
14.1498 +
14.1499 +/* GL_EXT_shader_texture_lod */
14.1500 +/* No new tokens introduced by this extension. */
14.1501 +
14.1502 +/* GL_EXT_shadow_samplers */
14.1503 +#ifndef GL_EXT_shadow_samplers
14.1504 +#define GL_TEXTURE_COMPARE_MODE_EXT 0x884C
14.1505 +#define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D
14.1506 +#define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E
14.1507 +#define GL_SAMPLER_2D_SHADOW_EXT 0x8B62
14.1508 +#endif
14.1509 +
14.1510 +/* GL_EXT_sRGB */
14.1511 +#ifndef GL_EXT_sRGB
14.1512 +#define GL_SRGB_EXT 0x8C40
14.1513 +#define GL_SRGB_ALPHA_EXT 0x8C42
14.1514 +#define GL_SRGB8_ALPHA8_EXT 0x8C43
14.1515 +#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210
14.1516 +#endif
14.1517 +
14.1518 +/* GL_EXT_texture_compression_dxt1 */
14.1519 +#ifndef GL_EXT_texture_compression_dxt1
14.1520 +#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
14.1521 +#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
14.1522 +#endif
14.1523 +
14.1524 +/* GL_EXT_texture_filter_anisotropic */
14.1525 +#ifndef GL_EXT_texture_filter_anisotropic
14.1526 +#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
14.1527 +#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
14.1528 +#endif
14.1529 +
14.1530 +/* GL_EXT_texture_format_BGRA8888 */
14.1531 +#ifndef GL_EXT_texture_format_BGRA8888
14.1532 +#define GL_BGRA_EXT 0x80E1
14.1533 +#endif
14.1534 +
14.1535 +/* GL_EXT_texture_rg */
14.1536 +#ifndef GL_EXT_texture_rg
14.1537 +#define GL_RED_EXT 0x1903
14.1538 +#define GL_RG_EXT 0x8227
14.1539 +#define GL_R8_EXT 0x8229
14.1540 +#define GL_RG8_EXT 0x822B
14.1541 +#endif
14.1542 +
14.1543 +/* GL_EXT_texture_storage */
14.1544 +#ifndef GL_EXT_texture_storage
14.1545 +#define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F
14.1546 +#define GL_ALPHA8_EXT 0x803C
14.1547 +#define GL_LUMINANCE8_EXT 0x8040
14.1548 +#define GL_LUMINANCE8_ALPHA8_EXT 0x8045
14.1549 +#define GL_RGBA32F_EXT 0x8814
14.1550 +#define GL_RGB32F_EXT 0x8815
14.1551 +#define GL_ALPHA32F_EXT 0x8816
14.1552 +#define GL_LUMINANCE32F_EXT 0x8818
14.1553 +#define GL_LUMINANCE_ALPHA32F_EXT 0x8819
14.1554 +/* reuse GL_RGBA16F_EXT */
14.1555 +/* reuse GL_RGB16F_EXT */
14.1556 +#define GL_ALPHA16F_EXT 0x881C
14.1557 +#define GL_LUMINANCE16F_EXT 0x881E
14.1558 +#define GL_LUMINANCE_ALPHA16F_EXT 0x881F
14.1559 +#define GL_RGB10_A2_EXT 0x8059
14.1560 +#define GL_RGB10_EXT 0x8052
14.1561 +#define GL_BGRA8_EXT 0x93A1
14.1562 +#define GL_R8_EXT 0x8229
14.1563 +#define GL_RG8_EXT 0x822B
14.1564 +#define GL_R32F_EXT 0x822E
14.1565 +#define GL_RG32F_EXT 0x8230
14.1566 +#define GL_R16F_EXT 0x822D
14.1567 +#define GL_RG16F_EXT 0x822F
14.1568 +#endif
14.1569 +
14.1570 +/* GL_EXT_texture_type_2_10_10_10_REV */
14.1571 +#ifndef GL_EXT_texture_type_2_10_10_10_REV
14.1572 +#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368
14.1573 +#endif
14.1574 +
14.1575 +/* GL_EXT_unpack_subimage */
14.1576 +#ifndef GL_EXT_unpack_subimage
14.1577 +#define GL_UNPACK_ROW_LENGTH 0x0CF2
14.1578 +#define GL_UNPACK_SKIP_ROWS 0x0CF3
14.1579 +#define GL_UNPACK_SKIP_PIXELS 0x0CF4
14.1580 +#endif
14.1581 +
14.1582 +/*------------------------------------------------------------------------*
14.1583 + * DMP extension tokens
14.1584 + *------------------------------------------------------------------------*/
14.1585 +
14.1586 +/* GL_DMP_shader_binary */
14.1587 +#ifndef GL_DMP_shader_binary
14.1588 +#define GL_SHADER_BINARY_DMP 0x9250
14.1589 +#endif
14.1590 +
14.1591 +/*------------------------------------------------------------------------*
14.1592 + * FJ extension tokens
14.1593 + *------------------------------------------------------------------------*/
14.1594 +
14.1595 +/* GL_FJ_shader_binary_GCCSO */
14.1596 +#ifndef GL_FJ_shader_binary_GCCSO
14.1597 +#define GCCSO_SHADER_BINARY_FJ 0x9260
14.1598 +#endif
14.1599 +
14.1600 +/*------------------------------------------------------------------------*
14.1601 + * IMG extension tokens
14.1602 + *------------------------------------------------------------------------*/
14.1603 +
14.1604 +/* GL_IMG_program_binary */
14.1605 +#ifndef GL_IMG_program_binary
14.1606 +#define GL_SGX_PROGRAM_BINARY_IMG 0x9130
14.1607 +#endif
14.1608 +
14.1609 +/* GL_IMG_read_format */
14.1610 +#ifndef GL_IMG_read_format
14.1611 +#define GL_BGRA_IMG 0x80E1
14.1612 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365
14.1613 +#endif
14.1614 +
14.1615 +/* GL_IMG_shader_binary */
14.1616 +#ifndef GL_IMG_shader_binary
14.1617 +#define GL_SGX_BINARY_IMG 0x8C0A
14.1618 +#endif
14.1619 +
14.1620 +/* GL_IMG_texture_compression_pvrtc */
14.1621 +#ifndef GL_IMG_texture_compression_pvrtc
14.1622 +#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
14.1623 +#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
14.1624 +#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
14.1625 +#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
14.1626 +#endif
14.1627 +
14.1628 +/* GL_IMG_multisampled_render_to_texture */
14.1629 +#ifndef GL_IMG_multisampled_render_to_texture
14.1630 +#define GL_RENDERBUFFER_SAMPLES_IMG 0x9133
14.1631 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134
14.1632 +#define GL_MAX_SAMPLES_IMG 0x9135
14.1633 +#define GL_TEXTURE_SAMPLES_IMG 0x9136
14.1634 +#endif
14.1635 +
14.1636 +/*------------------------------------------------------------------------*
14.1637 + * NV extension tokens
14.1638 + *------------------------------------------------------------------------*/
14.1639 +
14.1640 +/* GL_NV_coverage_sample */
14.1641 +#ifndef GL_NV_coverage_sample
14.1642 +#define GL_COVERAGE_COMPONENT_NV 0x8ED0
14.1643 +#define GL_COVERAGE_COMPONENT4_NV 0x8ED1
14.1644 +#define GL_COVERAGE_ATTACHMENT_NV 0x8ED2
14.1645 +#define GL_COVERAGE_BUFFERS_NV 0x8ED3
14.1646 +#define GL_COVERAGE_SAMPLES_NV 0x8ED4
14.1647 +#define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5
14.1648 +#define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6
14.1649 +#define GL_COVERAGE_AUTOMATIC_NV 0x8ED7
14.1650 +#define GL_COVERAGE_BUFFER_BIT_NV 0x8000
14.1651 +#endif
14.1652 +
14.1653 +/* GL_NV_depth_nonlinear */
14.1654 +#ifndef GL_NV_depth_nonlinear
14.1655 +#define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C
14.1656 +#endif
14.1657 +
14.1658 +/* GL_NV_draw_buffers */
14.1659 +#ifndef GL_NV_draw_buffers
14.1660 +#define GL_MAX_DRAW_BUFFERS_NV 0x8824
14.1661 +#define GL_DRAW_BUFFER0_NV 0x8825
14.1662 +#define GL_DRAW_BUFFER1_NV 0x8826
14.1663 +#define GL_DRAW_BUFFER2_NV 0x8827
14.1664 +#define GL_DRAW_BUFFER3_NV 0x8828
14.1665 +#define GL_DRAW_BUFFER4_NV 0x8829
14.1666 +#define GL_DRAW_BUFFER5_NV 0x882A
14.1667 +#define GL_DRAW_BUFFER6_NV 0x882B
14.1668 +#define GL_DRAW_BUFFER7_NV 0x882C
14.1669 +#define GL_DRAW_BUFFER8_NV 0x882D
14.1670 +#define GL_DRAW_BUFFER9_NV 0x882E
14.1671 +#define GL_DRAW_BUFFER10_NV 0x882F
14.1672 +#define GL_DRAW_BUFFER11_NV 0x8830
14.1673 +#define GL_DRAW_BUFFER12_NV 0x8831
14.1674 +#define GL_DRAW_BUFFER13_NV 0x8832
14.1675 +#define GL_DRAW_BUFFER14_NV 0x8833
14.1676 +#define GL_DRAW_BUFFER15_NV 0x8834
14.1677 +#define GL_COLOR_ATTACHMENT0_NV 0x8CE0
14.1678 +#define GL_COLOR_ATTACHMENT1_NV 0x8CE1
14.1679 +#define GL_COLOR_ATTACHMENT2_NV 0x8CE2
14.1680 +#define GL_COLOR_ATTACHMENT3_NV 0x8CE3
14.1681 +#define GL_COLOR_ATTACHMENT4_NV 0x8CE4
14.1682 +#define GL_COLOR_ATTACHMENT5_NV 0x8CE5
14.1683 +#define GL_COLOR_ATTACHMENT6_NV 0x8CE6
14.1684 +#define GL_COLOR_ATTACHMENT7_NV 0x8CE7
14.1685 +#define GL_COLOR_ATTACHMENT8_NV 0x8CE8
14.1686 +#define GL_COLOR_ATTACHMENT9_NV 0x8CE9
14.1687 +#define GL_COLOR_ATTACHMENT10_NV 0x8CEA
14.1688 +#define GL_COLOR_ATTACHMENT11_NV 0x8CEB
14.1689 +#define GL_COLOR_ATTACHMENT12_NV 0x8CEC
14.1690 +#define GL_COLOR_ATTACHMENT13_NV 0x8CED
14.1691 +#define GL_COLOR_ATTACHMENT14_NV 0x8CEE
14.1692 +#define GL_COLOR_ATTACHMENT15_NV 0x8CEF
14.1693 +#endif
14.1694 +
14.1695 +/* GL_NV_fbo_color_attachments */
14.1696 +#ifndef GL_NV_fbo_color_attachments
14.1697 +#define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF
14.1698 +/* GL_COLOR_ATTACHMENT{0-15}_NV defined in GL_NV_draw_buffers already. */
14.1699 +#endif
14.1700 +
14.1701 +/* GL_NV_fence */
14.1702 +#ifndef GL_NV_fence
14.1703 +#define GL_ALL_COMPLETED_NV 0x84F2
14.1704 +#define GL_FENCE_STATUS_NV 0x84F3
14.1705 +#define GL_FENCE_CONDITION_NV 0x84F4
14.1706 +#endif
14.1707 +
14.1708 +/* GL_NV_read_buffer */
14.1709 +#ifndef GL_NV_read_buffer
14.1710 +#define GL_READ_BUFFER_NV 0x0C02
14.1711 +#endif
14.1712 +
14.1713 +/* GL_NV_read_buffer_front */
14.1714 +/* No new tokens introduced by this extension. */
14.1715 +
14.1716 +/* GL_NV_read_depth */
14.1717 +/* No new tokens introduced by this extension. */
14.1718 +
14.1719 +/* GL_NV_read_depth_stencil */
14.1720 +/* No new tokens introduced by this extension. */
14.1721 +
14.1722 +/* GL_NV_read_stencil */
14.1723 +/* No new tokens introduced by this extension. */
14.1724 +
14.1725 +/* GL_NV_texture_compression_s3tc_update */
14.1726 +/* No new tokens introduced by this extension. */
14.1727 +
14.1728 +/* GL_NV_texture_npot_2D_mipmap */
14.1729 +/* No new tokens introduced by this extension. */
14.1730 +
14.1731 +/*------------------------------------------------------------------------*
14.1732 + * QCOM extension tokens
14.1733 + *------------------------------------------------------------------------*/
14.1734 +
14.1735 +/* GL_QCOM_alpha_test */
14.1736 +#ifndef GL_QCOM_alpha_test
14.1737 +#define GL_ALPHA_TEST_QCOM 0x0BC0
14.1738 +#define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1
14.1739 +#define GL_ALPHA_TEST_REF_QCOM 0x0BC2
14.1740 +#endif
14.1741 +
14.1742 +/* GL_QCOM_binning_control */
14.1743 +#ifndef GL_QCOM_binning_control
14.1744 +#define GL_BINNING_CONTROL_HINT_QCOM 0x8FB0
14.1745 +#define GL_CPU_OPTIMIZED_QCOM 0x8FB1
14.1746 +#define GL_GPU_OPTIMIZED_QCOM 0x8FB2
14.1747 +#define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM 0x8FB3
14.1748 +#endif
14.1749 +
14.1750 +/* GL_QCOM_driver_control */
14.1751 +/* No new tokens introduced by this extension. */
14.1752 +
14.1753 +/* GL_QCOM_extended_get */
14.1754 +#ifndef GL_QCOM_extended_get
14.1755 +#define GL_TEXTURE_WIDTH_QCOM 0x8BD2
14.1756 +#define GL_TEXTURE_HEIGHT_QCOM 0x8BD3
14.1757 +#define GL_TEXTURE_DEPTH_QCOM 0x8BD4
14.1758 +#define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5
14.1759 +#define GL_TEXTURE_FORMAT_QCOM 0x8BD6
14.1760 +#define GL_TEXTURE_TYPE_QCOM 0x8BD7
14.1761 +#define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8
14.1762 +#define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9
14.1763 +#define GL_TEXTURE_TARGET_QCOM 0x8BDA
14.1764 +#define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB
14.1765 +#define GL_STATE_RESTORE 0x8BDC
14.1766 +#endif
14.1767 +
14.1768 +/* GL_QCOM_extended_get2 */
14.1769 +/* No new tokens introduced by this extension. */
14.1770 +
14.1771 +/* GL_QCOM_perfmon_global_mode */
14.1772 +#ifndef GL_QCOM_perfmon_global_mode
14.1773 +#define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
14.1774 +#endif
14.1775 +
14.1776 +/* GL_QCOM_writeonly_rendering */
14.1777 +#ifndef GL_QCOM_writeonly_rendering
14.1778 +#define GL_WRITEONLY_RENDERING_QCOM 0x8823
14.1779 +#endif
14.1780 +
14.1781 +/* GL_QCOM_tiled_rendering */
14.1782 +#ifndef GL_QCOM_tiled_rendering
14.1783 +#define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001
14.1784 +#define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002
14.1785 +#define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004
14.1786 +#define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008
14.1787 +#define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010
14.1788 +#define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020
14.1789 +#define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040
14.1790 +#define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080
14.1791 +#define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100
14.1792 +#define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200
14.1793 +#define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400
14.1794 +#define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800
14.1795 +#define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000
14.1796 +#define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000
14.1797 +#define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000
14.1798 +#define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000
14.1799 +#define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000
14.1800 +#define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000
14.1801 +#define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000
14.1802 +#define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000
14.1803 +#define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000
14.1804 +#define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000
14.1805 +#define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000
14.1806 +#define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000
14.1807 +#define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000
14.1808 +#define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000
14.1809 +#define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000
14.1810 +#define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000
14.1811 +#define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000
14.1812 +#define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000
14.1813 +#define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000
14.1814 +#define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000
14.1815 +#endif
14.1816 +
14.1817 +/*------------------------------------------------------------------------*
14.1818 + * VIV extension tokens
14.1819 + *------------------------------------------------------------------------*/
14.1820 +
14.1821 +/* GL_VIV_shader_binary */
14.1822 +#ifndef GL_VIV_shader_binary
14.1823 +#define GL_SHADER_BINARY_VIV 0x8FC4
14.1824 +#endif
14.1825 +
14.1826 +/*------------------------------------------------------------------------*
14.1827 + * End of extension tokens, start of corresponding extension functions
14.1828 + *------------------------------------------------------------------------*/
14.1829 +
14.1830 +/*------------------------------------------------------------------------*
14.1831 + * OES extension functions
14.1832 + *------------------------------------------------------------------------*/
14.1833 +
14.1834 +/* GL_OES_compressed_ETC1_RGB8_texture */
14.1835 +#ifndef GL_OES_compressed_ETC1_RGB8_texture
14.1836 +#define GL_OES_compressed_ETC1_RGB8_texture 1
14.1837 +#endif
14.1838 +
14.1839 +/* GL_OES_compressed_paletted_texture */
14.1840 +#ifndef GL_OES_compressed_paletted_texture
14.1841 +#define GL_OES_compressed_paletted_texture 1
14.1842 +#endif
14.1843 +
14.1844 +/* GL_OES_depth24 */
14.1845 +#ifndef GL_OES_depth24
14.1846 +#define GL_OES_depth24 1
14.1847 +#endif
14.1848 +
14.1849 +/* GL_OES_depth32 */
14.1850 +#ifndef GL_OES_depth32
14.1851 +#define GL_OES_depth32 1
14.1852 +#endif
14.1853 +
14.1854 +/* GL_OES_depth_texture */
14.1855 +#ifndef GL_OES_depth_texture
14.1856 +#define GL_OES_depth_texture 1
14.1857 +#endif
14.1858 +
14.1859 +/* GL_OES_EGL_image */
14.1860 +#ifndef GL_OES_EGL_image
14.1861 +#define GL_OES_EGL_image 1
14.1862 +#ifdef GL_GLEXT_PROTOTYPES
14.1863 +GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
14.1864 +GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
14.1865 +#endif
14.1866 +typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
14.1867 +typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
14.1868 +#endif
14.1869 +
14.1870 +/* GL_OES_EGL_image_external */
14.1871 +#ifndef GL_OES_EGL_image_external
14.1872 +#define GL_OES_EGL_image_external 1
14.1873 +/* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */
14.1874 +#endif
14.1875 +
14.1876 +/* GL_OES_element_index_uint */
14.1877 +#ifndef GL_OES_element_index_uint
14.1878 +#define GL_OES_element_index_uint 1
14.1879 +#endif
14.1880 +
14.1881 +/* GL_OES_fbo_render_mipmap */
14.1882 +#ifndef GL_OES_fbo_render_mipmap
14.1883 +#define GL_OES_fbo_render_mipmap 1
14.1884 +#endif
14.1885 +
14.1886 +/* GL_OES_fragment_precision_high */
14.1887 +#ifndef GL_OES_fragment_precision_high
14.1888 +#define GL_OES_fragment_precision_high 1
14.1889 +#endif
14.1890 +
14.1891 +/* GL_OES_get_program_binary */
14.1892 +#ifndef GL_OES_get_program_binary
14.1893 +#define GL_OES_get_program_binary 1
14.1894 +#ifdef GL_GLEXT_PROTOTYPES
14.1895 +GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
14.1896 +GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
14.1897 +#endif
14.1898 +typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
14.1899 +typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
14.1900 +#endif
14.1901 +
14.1902 +/* GL_OES_mapbuffer */
14.1903 +#ifndef GL_OES_mapbuffer
14.1904 +#define GL_OES_mapbuffer 1
14.1905 +#ifdef GL_GLEXT_PROTOTYPES
14.1906 +GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
14.1907 +GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
14.1908 +GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid** params);
14.1909 +#endif
14.1910 +typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
14.1911 +typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
14.1912 +typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid** params);
14.1913 +#endif
14.1914 +
14.1915 +/* GL_OES_packed_depth_stencil */
14.1916 +#ifndef GL_OES_packed_depth_stencil
14.1917 +#define GL_OES_packed_depth_stencil 1
14.1918 +#endif
14.1919 +
14.1920 +/* GL_OES_required_internalformat */
14.1921 +#ifndef GL_OES_required_internalformat
14.1922 +#define GL_OES_required_internalformat 1
14.1923 +#endif
14.1924 +
14.1925 +/* GL_OES_rgb8_rgba8 */
14.1926 +#ifndef GL_OES_rgb8_rgba8
14.1927 +#define GL_OES_rgb8_rgba8 1
14.1928 +#endif
14.1929 +
14.1930 +/* GL_OES_standard_derivatives */
14.1931 +#ifndef GL_OES_standard_derivatives
14.1932 +#define GL_OES_standard_derivatives 1
14.1933 +#endif
14.1934 +
14.1935 +/* GL_OES_stencil1 */
14.1936 +#ifndef GL_OES_stencil1
14.1937 +#define GL_OES_stencil1 1
14.1938 +#endif
14.1939 +
14.1940 +/* GL_OES_stencil4 */
14.1941 +#ifndef GL_OES_stencil4
14.1942 +#define GL_OES_stencil4 1
14.1943 +#endif
14.1944 +
14.1945 +#ifndef GL_OES_surfaceless_context
14.1946 +#define GL_OES_surfaceless_context 1
14.1947 +#endif
14.1948 +
14.1949 +/* GL_OES_texture_3D */
14.1950 +#ifndef GL_OES_texture_3D
14.1951 +#define GL_OES_texture_3D 1
14.1952 +#ifdef GL_GLEXT_PROTOTYPES
14.1953 +GL_APICALL void GL_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
14.1954 +GL_APICALL void GL_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
14.1955 +GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
14.1956 +GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
14.1957 +GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
14.1958 +GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
14.1959 +#endif
14.1960 +typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
14.1961 +typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
14.1962 +typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
14.1963 +typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
14.1964 +typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
14.1965 +typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
14.1966 +#endif
14.1967 +
14.1968 +/* GL_OES_texture_float */
14.1969 +#ifndef GL_OES_texture_float
14.1970 +#define GL_OES_texture_float 1
14.1971 +#endif
14.1972 +
14.1973 +/* GL_OES_texture_float_linear */
14.1974 +#ifndef GL_OES_texture_float_linear
14.1975 +#define GL_OES_texture_float_linear 1
14.1976 +#endif
14.1977 +
14.1978 +/* GL_OES_texture_half_float */
14.1979 +#ifndef GL_OES_texture_half_float
14.1980 +#define GL_OES_texture_half_float 1
14.1981 +#endif
14.1982 +
14.1983 +/* GL_OES_texture_half_float_linear */
14.1984 +#ifndef GL_OES_texture_half_float_linear
14.1985 +#define GL_OES_texture_half_float_linear 1
14.1986 +#endif
14.1987 +
14.1988 +/* GL_OES_texture_npot */
14.1989 +#ifndef GL_OES_texture_npot
14.1990 +#define GL_OES_texture_npot 1
14.1991 +#endif
14.1992 +
14.1993 +/* GL_OES_vertex_array_object */
14.1994 +#ifndef GL_OES_vertex_array_object
14.1995 +#define GL_OES_vertex_array_object 1
14.1996 +#ifdef GL_GLEXT_PROTOTYPES
14.1997 +GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array);
14.1998 +GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
14.1999 +GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
14.2000 +GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
14.2001 +#endif
14.2002 +typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
14.2003 +typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
14.2004 +typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
14.2005 +typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
14.2006 +#endif
14.2007 +
14.2008 +/* GL_OES_vertex_half_float */
14.2009 +#ifndef GL_OES_vertex_half_float
14.2010 +#define GL_OES_vertex_half_float 1
14.2011 +#endif
14.2012 +
14.2013 +/* GL_OES_vertex_type_10_10_10_2 */
14.2014 +#ifndef GL_OES_vertex_type_10_10_10_2
14.2015 +#define GL_OES_vertex_type_10_10_10_2 1
14.2016 +#endif
14.2017 +
14.2018 +/*------------------------------------------------------------------------*
14.2019 + * KHR extension functions
14.2020 + *------------------------------------------------------------------------*/
14.2021 +
14.2022 +#ifndef GL_KHR_debug
14.2023 +#define GL_KHR_debug 1
14.2024 +#ifdef GL_GLEXT_PROTOTYPES
14.2025 +GL_APICALL void GL_APIENTRY glDebugMessageControl (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
14.2026 +GL_APICALL void GL_APIENTRY glDebugMessageInsert (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
14.2027 +GL_APICALL void GL_APIENTRY glDebugMessageCallback (GLDEBUGPROC callback, const void *userParam);
14.2028 +GL_APICALL GLuint GL_APIENTRY glGetDebugMessageLog (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
14.2029 +GL_APICALL void GL_APIENTRY glPushDebugGroup (GLenum source, GLuint id, GLsizei length, const GLchar *message);
14.2030 +GL_APICALL void GL_APIENTRY glPopDebugGroup (void);
14.2031 +GL_APICALL void GL_APIENTRY glObjectLabel (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
14.2032 +GL_APICALL void GL_APIENTRY glGetObjectLabel (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
14.2033 +GL_APICALL void GL_APIENTRY glObjectPtrLabel (const void *ptr, GLsizei length, const GLchar *label);
14.2034 +GL_APICALL void GL_APIENTRY glGetObjectPtrLabel (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
14.2035 +GL_APICALL void GL_APIENTRY glGetPointerv (GLenum pname, void **params);
14.2036 +#endif
14.2037 +typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECONTROLPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
14.2038 +typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGEINSERTPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
14.2039 +typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECALLBACKPROC) (GLDEBUGPROC callback, const void *userParam);
14.2040 +typedef GLuint (GL_APIENTRYP PFNGLGETDEBUGMESSAGELOGPROC) (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
14.2041 +typedef void (GL_APIENTRYP PFNGLPUSHDEBUGGROUPPROC) (GLenum source, GLuint id, GLsizei length, const GLchar *message);
14.2042 +typedef void (GL_APIENTRYP PFNGLPOPDEBUGGROUPPROC) (void);
14.2043 +typedef void (GL_APIENTRYP PFNGLOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
14.2044 +typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
14.2045 +typedef void (GL_APIENTRYP PFNGLOBJECTPTRLABELPROC) (const void *ptr, GLsizei length, const GLchar *label);
14.2046 +typedef void (GL_APIENTRYP PFNGLGETOBJECTPTRLABELPROC) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
14.2047 +typedef void (GL_APIENTRYP PFNGLGETPOINTERVPROC) (GLenum pname, void **params);
14.2048 +#endif
14.2049 +
14.2050 +#ifndef GL_KHR_texture_compression_astc_ldr
14.2051 +#define GL_KHR_texture_compression_astc_ldr 1
14.2052 +#endif
14.2053 +
14.2054 +
14.2055 +/*------------------------------------------------------------------------*
14.2056 + * AMD extension functions
14.2057 + *------------------------------------------------------------------------*/
14.2058 +
14.2059 +/* GL_AMD_compressed_3DC_texture */
14.2060 +#ifndef GL_AMD_compressed_3DC_texture
14.2061 +#define GL_AMD_compressed_3DC_texture 1
14.2062 +#endif
14.2063 +
14.2064 +/* GL_AMD_compressed_ATC_texture */
14.2065 +#ifndef GL_AMD_compressed_ATC_texture
14.2066 +#define GL_AMD_compressed_ATC_texture 1
14.2067 +#endif
14.2068 +
14.2069 +/* AMD_performance_monitor */
14.2070 +#ifndef GL_AMD_performance_monitor
14.2071 +#define GL_AMD_performance_monitor 1
14.2072 +#ifdef GL_GLEXT_PROTOTYPES
14.2073 +GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
14.2074 +GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
14.2075 +GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
14.2076 +GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
14.2077 +GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
14.2078 +GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
14.2079 +GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
14.2080 +GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
14.2081 +GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor);
14.2082 +GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor);
14.2083 +GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
14.2084 +#endif
14.2085 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
14.2086 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
14.2087 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
14.2088 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
14.2089 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
14.2090 +typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
14.2091 +typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
14.2092 +typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
14.2093 +typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
14.2094 +typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
14.2095 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
14.2096 +#endif
14.2097 +
14.2098 +/* GL_AMD_program_binary_Z400 */
14.2099 +#ifndef GL_AMD_program_binary_Z400
14.2100 +#define GL_AMD_program_binary_Z400 1
14.2101 +#endif
14.2102 +
14.2103 +/*------------------------------------------------------------------------*
14.2104 + * ANGLE extension functions
14.2105 + *------------------------------------------------------------------------*/
14.2106 +
14.2107 +/* GL_ANGLE_framebuffer_blit */
14.2108 +#ifndef GL_ANGLE_framebuffer_blit
14.2109 +#define GL_ANGLE_framebuffer_blit 1
14.2110 +#ifdef GL_GLEXT_PROTOTYPES
14.2111 +GL_APICALL void GL_APIENTRY glBlitFramebufferANGLE (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
14.2112 +#endif
14.2113 +typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERANGLEPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
14.2114 +#endif
14.2115 +
14.2116 +/* GL_ANGLE_framebuffer_multisample */
14.2117 +#ifndef GL_ANGLE_framebuffer_multisample
14.2118 +#define GL_ANGLE_framebuffer_multisample 1
14.2119 +#ifdef GL_GLEXT_PROTOTYPES
14.2120 +GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleANGLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
14.2121 +#endif
14.2122 +typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
14.2123 +#endif
14.2124 +
14.2125 +#ifndef GL_ANGLE_instanced_arrays
14.2126 +#ifdef GL_GLEXT_PROTOTYPES
14.2127 +GL_APICALL void GL_APIENTRY glDrawArraysInstancedANGLE (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
14.2128 +GL_APICALL void GL_APIENTRY glDrawElementsInstancedANGLE (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
14.2129 +GL_APICALL void GL_APIENTRY glVertexAttribDivisorANGLE (GLuint index, GLuint divisor);
14.2130 +#endif
14.2131 +typedef void (GL_APIENTRYP PFLGLDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
14.2132 +typedef void (GL_APIENTRYP PFLGLDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
14.2133 +typedef void (GL_APIENTRYP PFLGLVERTEXATTRIBDIVISORANGLEPROC) (GLuint index, GLuint divisor);
14.2134 +#endif
14.2135 +
14.2136 +/* GL_ANGLE_pack_reverse_row_order */
14.2137 +#ifndef GL_ANGLE_pack_reverse_row_order
14.2138 +#define GL_ANGLE_pack_reverse_row_order 1
14.2139 +#endif
14.2140 +
14.2141 +/* GL_ANGLE_texture_compression_dxt3 */
14.2142 +#ifndef GL_ANGLE_texture_compression_dxt3
14.2143 +#define GL_ANGLE_texture_compression_dxt3 1
14.2144 +#endif
14.2145 +
14.2146 +/* GL_ANGLE_texture_compression_dxt5 */
14.2147 +#ifndef GL_ANGLE_texture_compression_dxt5
14.2148 +#define GL_ANGLE_texture_compression_dxt5 1
14.2149 +#endif
14.2150 +
14.2151 +/* GL_ANGLE_texture_usage */
14.2152 +#ifndef GL_ANGLE_texture_usage
14.2153 +#define GL_ANGLE_texture_usage 1
14.2154 +#endif
14.2155 +
14.2156 +#ifndef GL_ANGLE_translated_shader_source
14.2157 +#define GL_ANGLE_translated_shader_source 1
14.2158 +#ifdef GL_GLEXT_PROTOTYPES
14.2159 +GL_APICALL void GL_APIENTRY glGetTranslatedShaderSourceANGLE (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
14.2160 +#endif
14.2161 +typedef void (GL_APIENTRYP PFLGLGETTRANSLATEDSHADERSOURCEANGLEPROC) (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
14.2162 +#endif
14.2163 +
14.2164 +/*------------------------------------------------------------------------*
14.2165 + * APPLE extension functions
14.2166 + *------------------------------------------------------------------------*/
14.2167 +
14.2168 +/* GL_APPLE_copy_texture_levels */
14.2169 +#ifndef GL_APPLE_copy_texture_levels
14.2170 +#define GL_APPLE_copy_texture_levels 1
14.2171 +#ifdef GL_GLEXT_PROTOTYPES
14.2172 +GL_APICALL void GL_APIENTRY glCopyTextureLevelsAPPLE (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
14.2173 +#endif
14.2174 +typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
14.2175 +#endif
14.2176 +
14.2177 +/* GL_APPLE_framebuffer_multisample */
14.2178 +#ifndef GL_APPLE_framebuffer_multisample
14.2179 +#define GL_APPLE_framebuffer_multisample 1
14.2180 +#ifdef GL_GLEXT_PROTOTYPES
14.2181 +GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
14.2182 +GL_APICALL void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void);
14.2183 +#endif /* GL_GLEXT_PROTOTYPES */
14.2184 +typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
14.2185 +typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void);
14.2186 +#endif
14.2187 +
14.2188 +/* GL_APPLE_rgb_422 */
14.2189 +#ifndef GL_APPLE_rgb_422
14.2190 +#define GL_APPLE_rgb_422 1
14.2191 +#endif
14.2192 +
14.2193 +/* GL_APPLE_sync */
14.2194 +#ifndef GL_APPLE_sync
14.2195 +#define GL_APPLE_sync 1
14.2196 +#ifdef GL_GLEXT_PROTOTYPES
14.2197 +GL_APICALL GLsync GL_APIENTRY glFenceSyncAPPLE (GLenum condition, GLbitfield flags);
14.2198 +GL_APICALL GLboolean GL_APIENTRY glIsSyncAPPLE (GLsync sync);
14.2199 +GL_APICALL void GL_APIENTRY glDeleteSyncAPPLE (GLsync sync);
14.2200 +GL_APICALL GLenum GL_APIENTRY glClientWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
14.2201 +GL_APICALL void GL_APIENTRY glWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
14.2202 +GL_APICALL void GL_APIENTRY glGetInteger64vAPPLE (GLenum pname, GLint64 *params);
14.2203 +GL_APICALL void GL_APIENTRY glGetSyncivAPPLE (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
14.2204 +#endif
14.2205 +typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags);
14.2206 +typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync);
14.2207 +typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync);
14.2208 +typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
14.2209 +typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
14.2210 +typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64 *params);
14.2211 +typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
14.2212 +#endif
14.2213 +
14.2214 +/* GL_APPLE_texture_format_BGRA8888 */
14.2215 +#ifndef GL_APPLE_texture_format_BGRA8888
14.2216 +#define GL_APPLE_texture_format_BGRA8888 1
14.2217 +#endif
14.2218 +
14.2219 +/* GL_APPLE_texture_max_level */
14.2220 +#ifndef GL_APPLE_texture_max_level
14.2221 +#define GL_APPLE_texture_max_level 1
14.2222 +#endif
14.2223 +
14.2224 +/*------------------------------------------------------------------------*
14.2225 + * ARM extension functions
14.2226 + *------------------------------------------------------------------------*/
14.2227 +
14.2228 +/* GL_ARM_mali_program_binary */
14.2229 +#ifndef GL_ARM_mali_program_binary
14.2230 +#define GL_ARM_mali_program_binary 1
14.2231 +#endif
14.2232 +
14.2233 +/* GL_ARM_mali_shader_binary */
14.2234 +#ifndef GL_ARM_mali_shader_binary
14.2235 +#define GL_ARM_mali_shader_binary 1
14.2236 +#endif
14.2237 +
14.2238 +/* GL_ARM_rgba8 */
14.2239 +#ifndef GL_ARM_rgba8
14.2240 +#define GL_ARM_rgba8 1
14.2241 +#endif
14.2242 +
14.2243 +/*------------------------------------------------------------------------*
14.2244 + * EXT extension functions
14.2245 + *------------------------------------------------------------------------*/
14.2246 +
14.2247 +/* GL_EXT_blend_minmax */
14.2248 +#ifndef GL_EXT_blend_minmax
14.2249 +#define GL_EXT_blend_minmax 1
14.2250 +#endif
14.2251 +
14.2252 +/* GL_EXT_color_buffer_half_float */
14.2253 +#ifndef GL_EXT_color_buffer_half_float
14.2254 +#define GL_EXT_color_buffer_half_float 1
14.2255 +#endif
14.2256 +
14.2257 +/* GL_EXT_debug_label */
14.2258 +#ifndef GL_EXT_debug_label
14.2259 +#define GL_EXT_debug_label 1
14.2260 +#ifdef GL_GLEXT_PROTOTYPES
14.2261 +GL_APICALL void GL_APIENTRY glLabelObjectEXT (GLenum type, GLuint object, GLsizei length, const GLchar *label);
14.2262 +GL_APICALL void GL_APIENTRY glGetObjectLabelEXT (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
14.2263 +#endif
14.2264 +typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar *label);
14.2265 +typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
14.2266 +#endif
14.2267 +
14.2268 +/* GL_EXT_debug_marker */
14.2269 +#ifndef GL_EXT_debug_marker
14.2270 +#define GL_EXT_debug_marker 1
14.2271 +#ifdef GL_GLEXT_PROTOTYPES
14.2272 +GL_APICALL void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker);
14.2273 +GL_APICALL void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker);
14.2274 +GL_APICALL void GL_APIENTRY glPopGroupMarkerEXT (void);
14.2275 +#endif
14.2276 +typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker);
14.2277 +typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker);
14.2278 +typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC) (void);
14.2279 +#endif
14.2280 +
14.2281 +/* GL_EXT_discard_framebuffer */
14.2282 +#ifndef GL_EXT_discard_framebuffer
14.2283 +#define GL_EXT_discard_framebuffer 1
14.2284 +#ifdef GL_GLEXT_PROTOTYPES
14.2285 +GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
14.2286 +#endif
14.2287 +typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
14.2288 +#endif
14.2289 +
14.2290 +/* GL_EXT_map_buffer_range */
14.2291 +#ifndef GL_EXT_map_buffer_range
14.2292 +#define GL_EXT_map_buffer_range 1
14.2293 +#ifdef GL_GLEXT_PROTOTYPES
14.2294 +GL_APICALL void* GL_APIENTRY glMapBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
14.2295 +GL_APICALL void GL_APIENTRY glFlushMappedBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length);
14.2296 +#endif
14.2297 +typedef void* (GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
14.2298 +typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
14.2299 +#endif
14.2300 +
14.2301 +/* GL_EXT_multisampled_render_to_texture */
14.2302 +#ifndef GL_EXT_multisampled_render_to_texture
14.2303 +#define GL_EXT_multisampled_render_to_texture 1
14.2304 +#ifdef GL_GLEXT_PROTOTYPES
14.2305 +GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
14.2306 +GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
14.2307 +#endif
14.2308 +typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
14.2309 +typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
14.2310 +#endif
14.2311 +
14.2312 +/* GL_EXT_multiview_draw_buffers */
14.2313 +#ifndef GL_EXT_multiview_draw_buffers
14.2314 +#define GL_EXT_multiview_draw_buffers 1
14.2315 +#ifdef GL_GLEXT_PROTOTYPES
14.2316 +GL_APICALL void GL_APIENTRY glReadBufferIndexedEXT (GLenum src, GLint index);
14.2317 +GL_APICALL void GL_APIENTRY glDrawBuffersIndexedEXT (GLint n, const GLenum *location, const GLint *indices);
14.2318 +GL_APICALL void GL_APIENTRY glGetIntegeri_vEXT (GLenum target, GLuint index, GLint *data);
14.2319 +#endif
14.2320 +typedef void (GL_APIENTRYP PFNGLREADBUFFERINDEXEDEXTPROC) (GLenum src, GLint index);
14.2321 +typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSINDEXEDEXTPROC) (GLint n, const GLenum *location, const GLint *indices);
14.2322 +typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VEXTPROC) (GLenum target, GLuint index, GLint *data);
14.2323 +#endif
14.2324 +
14.2325 +#ifndef GL_EXT_multi_draw_arrays
14.2326 +#define GL_EXT_multi_draw_arrays 1
14.2327 +#ifdef GL_GLEXT_PROTOTYPES
14.2328 +GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
14.2329 +GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
14.2330 +#endif /* GL_GLEXT_PROTOTYPES */
14.2331 +typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
14.2332 +typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
14.2333 +#endif
14.2334 +
14.2335 +/* GL_EXT_occlusion_query_boolean */
14.2336 +#ifndef GL_EXT_occlusion_query_boolean
14.2337 +#define GL_EXT_occlusion_query_boolean 1
14.2338 +#ifdef GL_GLEXT_PROTOTYPES
14.2339 +GL_APICALL void GL_APIENTRY glGenQueriesEXT (GLsizei n, GLuint *ids);
14.2340 +GL_APICALL void GL_APIENTRY glDeleteQueriesEXT (GLsizei n, const GLuint *ids);
14.2341 +GL_APICALL GLboolean GL_APIENTRY glIsQueryEXT (GLuint id);
14.2342 +GL_APICALL void GL_APIENTRY glBeginQueryEXT (GLenum target, GLuint id);
14.2343 +GL_APICALL void GL_APIENTRY glEndQueryEXT (GLenum target);
14.2344 +GL_APICALL void GL_APIENTRY glGetQueryivEXT (GLenum target, GLenum pname, GLint *params);
14.2345 +GL_APICALL void GL_APIENTRY glGetQueryObjectuivEXT (GLuint id, GLenum pname, GLuint *params);
14.2346 +#endif
14.2347 +typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint *ids);
14.2348 +typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint *ids);
14.2349 +typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC) (GLuint id);
14.2350 +typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id);
14.2351 +typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC) (GLenum target);
14.2352 +typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
14.2353 +typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint *params);
14.2354 +#endif
14.2355 +
14.2356 +/* GL_EXT_read_format_bgra */
14.2357 +#ifndef GL_EXT_read_format_bgra
14.2358 +#define GL_EXT_read_format_bgra 1
14.2359 +#endif
14.2360 +
14.2361 +/* GL_EXT_robustness */
14.2362 +#ifndef GL_EXT_robustness
14.2363 +#define GL_EXT_robustness 1
14.2364 +#ifdef GL_GLEXT_PROTOTYPES
14.2365 +GL_APICALL GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void);
14.2366 +GL_APICALL void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
14.2367 +GL_APICALL void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, float *params);
14.2368 +GL_APICALL void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params);
14.2369 +#endif
14.2370 +typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void);
14.2371 +typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
14.2372 +typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, float *params);
14.2373 +typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
14.2374 +#endif
14.2375 +
14.2376 +/* GL_EXT_separate_shader_objects */
14.2377 +#ifndef GL_EXT_separate_shader_objects
14.2378 +#define GL_EXT_separate_shader_objects 1
14.2379 +#ifdef GL_GLEXT_PROTOTYPES
14.2380 +GL_APICALL void GL_APIENTRY glUseProgramStagesEXT (GLuint pipeline, GLbitfield stages, GLuint program);
14.2381 +GL_APICALL void GL_APIENTRY glActiveShaderProgramEXT (GLuint pipeline, GLuint program);
14.2382 +GL_APICALL GLuint GL_APIENTRY glCreateShaderProgramvEXT (GLenum type, GLsizei count, const GLchar **strings);
14.2383 +GL_APICALL void GL_APIENTRY glBindProgramPipelineEXT (GLuint pipeline);
14.2384 +GL_APICALL void GL_APIENTRY glDeleteProgramPipelinesEXT (GLsizei n, const GLuint *pipelines);
14.2385 +GL_APICALL void GL_APIENTRY glGenProgramPipelinesEXT (GLsizei n, GLuint *pipelines);
14.2386 +GL_APICALL GLboolean GL_APIENTRY glIsProgramPipelineEXT (GLuint pipeline);
14.2387 +GL_APICALL void GL_APIENTRY glProgramParameteriEXT (GLuint program, GLenum pname, GLint value);
14.2388 +GL_APICALL void GL_APIENTRY glGetProgramPipelineivEXT (GLuint pipeline, GLenum pname, GLint *params);
14.2389 +GL_APICALL void GL_APIENTRY glProgramUniform1iEXT (GLuint program, GLint location, GLint x);
14.2390 +GL_APICALL void GL_APIENTRY glProgramUniform2iEXT (GLuint program, GLint location, GLint x, GLint y);
14.2391 +GL_APICALL void GL_APIENTRY glProgramUniform3iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z);
14.2392 +GL_APICALL void GL_APIENTRY glProgramUniform4iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
14.2393 +GL_APICALL void GL_APIENTRY glProgramUniform1fEXT (GLuint program, GLint location, GLfloat x);
14.2394 +GL_APICALL void GL_APIENTRY glProgramUniform2fEXT (GLuint program, GLint location, GLfloat x, GLfloat y);
14.2395 +GL_APICALL void GL_APIENTRY glProgramUniform3fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
14.2396 +GL_APICALL void GL_APIENTRY glProgramUniform4fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
14.2397 +GL_APICALL void GL_APIENTRY glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
14.2398 +GL_APICALL void GL_APIENTRY glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
14.2399 +GL_APICALL void GL_APIENTRY glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
14.2400 +GL_APICALL void GL_APIENTRY glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
14.2401 +GL_APICALL void GL_APIENTRY glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
14.2402 +GL_APICALL void GL_APIENTRY glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
14.2403 +GL_APICALL void GL_APIENTRY glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
14.2404 +GL_APICALL void GL_APIENTRY glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
14.2405 +GL_APICALL void GL_APIENTRY glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
14.2406 +GL_APICALL void GL_APIENTRY glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
14.2407 +GL_APICALL void GL_APIENTRY glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
14.2408 +GL_APICALL void GL_APIENTRY glValidateProgramPipelineEXT (GLuint pipeline);
14.2409 +GL_APICALL void GL_APIENTRY glGetProgramPipelineInfoLogEXT (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
14.2410 +#endif
14.2411 +typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC) (GLuint pipeline, GLbitfield stages, GLuint program);
14.2412 +typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC) (GLuint pipeline, GLuint program);
14.2413 +typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC) (GLenum type, GLsizei count, const GLchar **strings);
14.2414 +typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
14.2415 +typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC) (GLsizei n, const GLuint *pipelines);
14.2416 +typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC) (GLsizei n, GLuint *pipelines);
14.2417 +typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
14.2418 +typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value);
14.2419 +typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC) (GLuint pipeline, GLenum pname, GLint *params);
14.2420 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint x);
14.2421 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint x, GLint y);
14.2422 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z);
14.2423 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
14.2424 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat x);
14.2425 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y);
14.2426 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
14.2427 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
14.2428 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
14.2429 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
14.2430 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
14.2431 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
14.2432 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
14.2433 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
14.2434 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
14.2435 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
14.2436 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
14.2437 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
14.2438 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
14.2439 +typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
14.2440 +typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGEXTPROC) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
14.2441 +#endif
14.2442 +
14.2443 +/* GL_EXT_shader_framebuffer_fetch */
14.2444 +#ifndef GL_EXT_shader_framebuffer_fetch
14.2445 +#define GL_EXT_shader_framebuffer_fetch 1
14.2446 +#endif
14.2447 +
14.2448 +/* GL_EXT_shader_texture_lod */
14.2449 +#ifndef GL_EXT_shader_texture_lod
14.2450 +#define GL_EXT_shader_texture_lod 1
14.2451 +#endif
14.2452 +
14.2453 +/* GL_EXT_shadow_samplers */
14.2454 +#ifndef GL_EXT_shadow_samplers
14.2455 +#define GL_EXT_shadow_samplers 1
14.2456 +#endif
14.2457 +
14.2458 +/* GL_EXT_sRGB */
14.2459 +#ifndef GL_EXT_sRGB
14.2460 +#define GL_EXT_sRGB 1
14.2461 +#endif
14.2462 +
14.2463 +/* GL_EXT_texture_compression_dxt1 */
14.2464 +#ifndef GL_EXT_texture_compression_dxt1
14.2465 +#define GL_EXT_texture_compression_dxt1 1
14.2466 +#endif
14.2467 +
14.2468 +/* GL_EXT_texture_filter_anisotropic */
14.2469 +#ifndef GL_EXT_texture_filter_anisotropic
14.2470 +#define GL_EXT_texture_filter_anisotropic 1
14.2471 +#endif
14.2472 +
14.2473 +/* GL_EXT_texture_format_BGRA8888 */
14.2474 +#ifndef GL_EXT_texture_format_BGRA8888
14.2475 +#define GL_EXT_texture_format_BGRA8888 1
14.2476 +#endif
14.2477 +
14.2478 +/* GL_EXT_texture_rg */
14.2479 +#ifndef GL_EXT_texture_rg
14.2480 +#define GL_EXT_texture_rg 1
14.2481 +#endif
14.2482 +
14.2483 +/* GL_EXT_texture_storage */
14.2484 +#ifndef GL_EXT_texture_storage
14.2485 +#define GL_EXT_texture_storage 1
14.2486 +#ifdef GL_GLEXT_PROTOTYPES
14.2487 +GL_APICALL void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
14.2488 +GL_APICALL void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
14.2489 +GL_APICALL void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
14.2490 +GL_APICALL void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
14.2491 +GL_APICALL void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
14.2492 +GL_APICALL void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
14.2493 +#endif
14.2494 +typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
14.2495 +typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
14.2496 +typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
14.2497 +typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
14.2498 +typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
14.2499 +typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
14.2500 +#endif
14.2501 +
14.2502 +/* GL_EXT_texture_type_2_10_10_10_REV */
14.2503 +#ifndef GL_EXT_texture_type_2_10_10_10_REV
14.2504 +#define GL_EXT_texture_type_2_10_10_10_REV 1
14.2505 +#endif
14.2506 +
14.2507 +/* GL_EXT_unpack_subimage */
14.2508 +#ifndef GL_EXT_unpack_subimage
14.2509 +#define GL_EXT_unpack_subimage 1
14.2510 +#endif
14.2511 +
14.2512 +/*------------------------------------------------------------------------*
14.2513 + * DMP extension functions
14.2514 + *------------------------------------------------------------------------*/
14.2515 +
14.2516 +/* GL_DMP_shader_binary */
14.2517 +#ifndef GL_DMP_shader_binary
14.2518 +#define GL_DMP_shader_binary 1
14.2519 +#endif
14.2520 +
14.2521 +/*------------------------------------------------------------------------*
14.2522 + * FJ extension functions
14.2523 + *------------------------------------------------------------------------*/
14.2524 +
14.2525 +/* GL_FJ_shader_binary_GCCSO */
14.2526 +#ifndef GL_FJ_shader_binary_GCCSO
14.2527 +#define GL_FJ_shader_binary_GCCSO 1
14.2528 +#endif
14.2529 +
14.2530 +/*------------------------------------------------------------------------*
14.2531 + * IMG extension functions
14.2532 + *------------------------------------------------------------------------*/
14.2533 +
14.2534 +/* GL_IMG_program_binary */
14.2535 +#ifndef GL_IMG_program_binary
14.2536 +#define GL_IMG_program_binary 1
14.2537 +#endif
14.2538 +
14.2539 +/* GL_IMG_read_format */
14.2540 +#ifndef GL_IMG_read_format
14.2541 +#define GL_IMG_read_format 1
14.2542 +#endif
14.2543 +
14.2544 +/* GL_IMG_shader_binary */
14.2545 +#ifndef GL_IMG_shader_binary
14.2546 +#define GL_IMG_shader_binary 1
14.2547 +#endif
14.2548 +
14.2549 +/* GL_IMG_texture_compression_pvrtc */
14.2550 +#ifndef GL_IMG_texture_compression_pvrtc
14.2551 +#define GL_IMG_texture_compression_pvrtc 1
14.2552 +#endif
14.2553 +
14.2554 +/* GL_IMG_multisampled_render_to_texture */
14.2555 +#ifndef GL_IMG_multisampled_render_to_texture
14.2556 +#define GL_IMG_multisampled_render_to_texture 1
14.2557 +#ifdef GL_GLEXT_PROTOTYPES
14.2558 +GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
14.2559 +GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
14.2560 +#endif
14.2561 +typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
14.2562 +typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
14.2563 +#endif
14.2564 +
14.2565 +/*------------------------------------------------------------------------*
14.2566 + * NV extension functions
14.2567 + *------------------------------------------------------------------------*/
14.2568 +
14.2569 +/* GL_NV_coverage_sample */
14.2570 +#ifndef GL_NV_coverage_sample
14.2571 +#define GL_NV_coverage_sample 1
14.2572 +#ifdef GL_GLEXT_PROTOTYPES
14.2573 +GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask);
14.2574 +GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation);
14.2575 +#endif
14.2576 +typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask);
14.2577 +typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum operation);
14.2578 +#endif
14.2579 +
14.2580 +/* GL_NV_depth_nonlinear */
14.2581 +#ifndef GL_NV_depth_nonlinear
14.2582 +#define GL_NV_depth_nonlinear 1
14.2583 +#endif
14.2584 +
14.2585 +/* GL_NV_draw_buffers */
14.2586 +#ifndef GL_NV_draw_buffers
14.2587 +#define GL_NV_draw_buffers 1
14.2588 +#ifdef GL_GLEXT_PROTOTYPES
14.2589 +GL_APICALL void GL_APIENTRY glDrawBuffersNV (GLsizei n, const GLenum *bufs);
14.2590 +#endif
14.2591 +typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum *bufs);
14.2592 +#endif
14.2593 +
14.2594 +/* GL_NV_fbo_color_attachments */
14.2595 +#ifndef GL_NV_fbo_color_attachments
14.2596 +#define GL_NV_fbo_color_attachments 1
14.2597 +#endif
14.2598 +
14.2599 +/* GL_NV_fence */
14.2600 +#ifndef GL_NV_fence
14.2601 +#define GL_NV_fence 1
14.2602 +#ifdef GL_GLEXT_PROTOTYPES
14.2603 +GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *);
14.2604 +GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *);
14.2605 +GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint);
14.2606 +GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint);
14.2607 +GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *);
14.2608 +GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint);
14.2609 +GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint, GLenum);
14.2610 +#endif
14.2611 +typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
14.2612 +typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
14.2613 +typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
14.2614 +typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
14.2615 +typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
14.2616 +typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
14.2617 +typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
14.2618 +#endif
14.2619 +
14.2620 +/* GL_NV_read_buffer */
14.2621 +#ifndef GL_NV_read_buffer
14.2622 +#define GL_NV_read_buffer 1
14.2623 +#ifdef GL_GLEXT_PROTOTYPES
14.2624 +GL_APICALL void GL_APIENTRY glReadBufferNV (GLenum mode);
14.2625 +#endif
14.2626 +typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC) (GLenum mode);
14.2627 +#endif
14.2628 +
14.2629 +/* GL_NV_read_buffer_front */
14.2630 +#ifndef GL_NV_read_buffer_front
14.2631 +#define GL_NV_read_buffer_front 1
14.2632 +#endif
14.2633 +
14.2634 +/* GL_NV_read_depth */
14.2635 +#ifndef GL_NV_read_depth
14.2636 +#define GL_NV_read_depth 1
14.2637 +#endif
14.2638 +
14.2639 +/* GL_NV_read_depth_stencil */
14.2640 +#ifndef GL_NV_read_depth_stencil
14.2641 +#define GL_NV_read_depth_stencil 1
14.2642 +#endif
14.2643 +
14.2644 +/* GL_NV_read_stencil */
14.2645 +#ifndef GL_NV_read_stencil
14.2646 +#define GL_NV_read_stencil 1
14.2647 +#endif
14.2648 +
14.2649 +/* GL_NV_texture_compression_s3tc_update */
14.2650 +#ifndef GL_NV_texture_compression_s3tc_update
14.2651 +#define GL_NV_texture_compression_s3tc_update 1
14.2652 +#endif
14.2653 +
14.2654 +/* GL_NV_texture_npot_2D_mipmap */
14.2655 +#ifndef GL_NV_texture_npot_2D_mipmap
14.2656 +#define GL_NV_texture_npot_2D_mipmap 1
14.2657 +#endif
14.2658 +
14.2659 +/*------------------------------------------------------------------------*
14.2660 + * QCOM extension functions
14.2661 + *------------------------------------------------------------------------*/
14.2662 +
14.2663 +/* GL_QCOM_alpha_test */
14.2664 +#ifndef GL_QCOM_alpha_test
14.2665 +#define GL_QCOM_alpha_test 1
14.2666 +#ifdef GL_GLEXT_PROTOTYPES
14.2667 +GL_APICALL void GL_APIENTRY glAlphaFuncQCOM (GLenum func, GLclampf ref);
14.2668 +#endif
14.2669 +typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf ref);
14.2670 +#endif
14.2671 +
14.2672 +/* GL_QCOM_binning_control */
14.2673 +#ifndef GL_QCOM_binning_control
14.2674 +#define GL_QCOM_binning_control 1
14.2675 +#endif
14.2676 +
14.2677 +/* GL_QCOM_driver_control */
14.2678 +#ifndef GL_QCOM_driver_control
14.2679 +#define GL_QCOM_driver_control 1
14.2680 +#ifdef GL_GLEXT_PROTOTYPES
14.2681 +GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
14.2682 +GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
14.2683 +GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
14.2684 +GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
14.2685 +#endif
14.2686 +typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
14.2687 +typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
14.2688 +typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
14.2689 +typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
14.2690 +#endif
14.2691 +
14.2692 +/* GL_QCOM_extended_get */
14.2693 +#ifndef GL_QCOM_extended_get
14.2694 +#define GL_QCOM_extended_get 1
14.2695 +#ifdef GL_GLEXT_PROTOTYPES
14.2696 +GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
14.2697 +GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
14.2698 +GL_APICALL void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
14.2699 +GL_APICALL void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
14.2700 +GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
14.2701 +GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
14.2702 +GL_APICALL void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
14.2703 +GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
14.2704 +#endif
14.2705 +typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
14.2706 +typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
14.2707 +typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
14.2708 +typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
14.2709 +typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
14.2710 +typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
14.2711 +typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
14.2712 +typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
14.2713 +#endif
14.2714 +
14.2715 +/* GL_QCOM_extended_get2 */
14.2716 +#ifndef GL_QCOM_extended_get2
14.2717 +#define GL_QCOM_extended_get2 1
14.2718 +#ifdef GL_GLEXT_PROTOTYPES
14.2719 +GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
14.2720 +GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
14.2721 +GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
14.2722 +GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
14.2723 +#endif
14.2724 +typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
14.2725 +typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
14.2726 +typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
14.2727 +typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
14.2728 +#endif
14.2729 +
14.2730 +/* GL_QCOM_perfmon_global_mode */
14.2731 +#ifndef GL_QCOM_perfmon_global_mode
14.2732 +#define GL_QCOM_perfmon_global_mode 1
14.2733 +#endif
14.2734 +
14.2735 +/* GL_QCOM_writeonly_rendering */
14.2736 +#ifndef GL_QCOM_writeonly_rendering
14.2737 +#define GL_QCOM_writeonly_rendering 1
14.2738 +#endif
14.2739 +
14.2740 +/* GL_QCOM_tiled_rendering */
14.2741 +#ifndef GL_QCOM_tiled_rendering
14.2742 +#define GL_QCOM_tiled_rendering 1
14.2743 +#ifdef GL_GLEXT_PROTOTYPES
14.2744 +GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
14.2745 +GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
14.2746 +#endif
14.2747 +typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
14.2748 +typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
14.2749 +#endif
14.2750 +
14.2751 +/*------------------------------------------------------------------------*
14.2752 + * VIV extension tokens
14.2753 + *------------------------------------------------------------------------*/
14.2754 +
14.2755 +/* GL_VIV_shader_binary */
14.2756 +#ifndef GL_VIV_shader_binary
14.2757 +#define GL_VIV_shader_binary 1
14.2758 +#endif
14.2759 +
14.2760 +#ifdef __cplusplus
14.2761 +}
14.2762 +#endif
14.2763 +
14.2764 +#endif /* __gl2ext_h_ */
14.2765 +
14.2766 +#endif /* _MSC_VER */
14.2767 +
14.2768 #ifndef APIENTRY
14.2769 -#define APIENTRY
14.2770 -#endif
14.2771 +#define APIENTRY GL_APIENTRY
14.2772 +#endif
14.2773 \ No newline at end of file
15.1 --- a/src/render/opengles2/SDL_gles2funcs.h Fri Nov 22 10:26:28 2013 -0300
15.2 +++ b/src/render/opengles2/SDL_gles2funcs.h Fri Nov 22 13:24:53 2013 -0300
15.3 @@ -46,3 +46,5 @@
15.4 SDL_PROC(void, glFramebufferTexture2D, (GLenum, GLenum, GLenum, GLuint, GLint))
15.5 SDL_PROC(GLenum, glCheckFramebufferStatus, (GLenum))
15.6 SDL_PROC(void, glDeleteFramebuffers, (GLsizei, const GLuint *))
15.7 +SDL_PROC(GLint, glGetAttribLocation, (GLuint, const GLchar *))
15.8 +
15.9 \ No newline at end of file
16.1 --- a/src/video/SDL_egl.c Fri Nov 22 10:26:28 2013 -0300
16.2 +++ b/src/video/SDL_egl.c Fri Nov 22 13:24:53 2013 -0300
16.3 @@ -23,8 +23,9 @@
16.4 #if SDL_VIDEO_OPENGL_EGL
16.5
16.6 #include "SDL_sysvideo.h"
16.7 -#include "SDL_egl.h"
16.8 -
16.9 +#include "SDL_egl_c.h"
16.10 +#include "SDL_loadso.h"
16.11 +#include "SDL_hints.h"
16.12
16.13 #if SDL_VIDEO_DRIVER_RPI
16.14 /* Raspbian places the OpenGL ES/EGL binaries in a non standard path */
16.15 @@ -40,6 +41,13 @@
16.16 #define DEFAULT_OGL_ES_PVR "libGLES_CM.so"
16.17 #define DEFAULT_OGL_ES "libGLESv1_CM.so"
16.18
16.19 +#elif SDL_VIDEO_DRIVER_WINDOWS
16.20 +/* EGL AND OpenGL ES support via ANGLE */
16.21 +#define DEFAULT_EGL "libEGL.dll"
16.22 +#define DEFAULT_OGL_ES2 "libGLESv2.dll"
16.23 +#define DEFAULT_OGL_ES_PVR "libGLES_CM.dll"
16.24 +#define DEFAULT_OGL_ES "libGLESv1_CM.dll"
16.25 +
16.26 #else
16.27 /* Desktop Linux */
16.28 #define DEFAULT_EGL "libEGL.so.1"
16.29 @@ -49,7 +57,7 @@
16.30 #endif /* SDL_VIDEO_DRIVER_RPI */
16.31
16.32 #define LOAD_FUNC(NAME) \
16.33 -*((void**)&_this->egl_data->NAME) = dlsym(dll_handle, #NAME); \
16.34 +*((void**)&_this->egl_data->NAME) = SDL_LoadFunction(_this->egl_data->dll_handle, #NAME); \
16.35 if (!_this->egl_data->NAME) \
16.36 { \
16.37 return SDL_SetError("Could not retrieve EGL function " #NAME); \
16.38 @@ -61,12 +69,10 @@
16.39 SDL_EGL_GetProcAddress(_THIS, const char *proc)
16.40 {
16.41 static char procname[1024];
16.42 - void *handle;
16.43 void *retval;
16.44
16.45 /* eglGetProcAddress is busted on Android http://code.google.com/p/android/issues/detail?id=7681 */
16.46 -#if !defined(SDL_VIDEO_DRIVER_ANDROID)
16.47 - handle = _this->egl_data->egl_dll_handle;
16.48 +#if !defined(SDL_VIDEO_DRIVER_ANDROID)
16.49 if (_this->egl_data->eglGetProcAddress) {
16.50 retval = _this->egl_data->eglGetProcAddress(proc);
16.51 if (retval) {
16.52 @@ -75,15 +81,11 @@
16.53 }
16.54 #endif
16.55
16.56 - handle = _this->gl_config.dll_handle;
16.57 - #if defined(__OpenBSD__) && !defined(__ELF__)
16.58 - #undef dlsym(x,y);
16.59 - #endif
16.60 - retval = dlsym(handle, proc);
16.61 - if (!retval && strlen(proc) <= 1022) {
16.62 + retval = SDL_LoadFunction(_this->egl_data->egl_dll_handle, proc);
16.63 + if (!retval && SDL_strlen(proc) <= 1022) {
16.64 procname[0] = '_';
16.65 - strcpy(procname + 1, proc);
16.66 - retval = dlsym(handle, procname);
16.67 + SDL_strlcpy(procname + 1, proc, 1022);
16.68 + retval = SDL_LoadFunction(_this->egl_data->egl_dll_handle, procname);
16.69 }
16.70 return retval;
16.71 }
16.72 @@ -97,12 +99,12 @@
16.73 _this->egl_data->egl_display = NULL;
16.74 }
16.75
16.76 - if (_this->gl_config.dll_handle) {
16.77 - dlclose(_this->gl_config.dll_handle);
16.78 - _this->gl_config.dll_handle = NULL;
16.79 + if (_this->egl_data->dll_handle) {
16.80 + SDL_UnloadObject(_this->egl_data->dll_handle);
16.81 + _this->egl_data->dll_handle = NULL;
16.82 }
16.83 if (_this->egl_data->egl_dll_handle) {
16.84 - dlclose(_this->egl_data->egl_dll_handle);
16.85 + SDL_UnloadObject(_this->egl_data->egl_dll_handle);
16.86 _this->egl_data->egl_dll_handle = NULL;
16.87 }
16.88
16.89 @@ -114,10 +116,12 @@
16.90 int
16.91 SDL_EGL_LoadLibrary(_THIS, const char *egl_path, NativeDisplayType native_display)
16.92 {
16.93 - void *dll_handle, *egl_dll_handle; /* The naming is counter intuitive, but hey, I just work here -- Gabriel */
16.94 - char *path;
16.95 - int dlopen_flags;
16.96 -
16.97 + void *dll_handle = NULL, *egl_dll_handle = NULL; /* The naming is counter intuitive, but hey, I just work here -- Gabriel */
16.98 + char *path = NULL;
16.99 +#if SDL_VIDEO_DRIVER_WINDOWS
16.100 + const char *d3dcompiler;
16.101 +#endif
16.102 +
16.103 if (_this->egl_data) {
16.104 return SDL_SetError("OpenGL ES context already created");
16.105 }
16.106 @@ -127,50 +131,63 @@
16.107 return SDL_OutOfMemory();
16.108 }
16.109
16.110 -#ifdef RTLD_GLOBAL
16.111 - dlopen_flags = RTLD_LAZY | RTLD_GLOBAL;
16.112 -#else
16.113 - dlopen_flags = RTLD_LAZY;
16.114 +#if SDL_VIDEO_DRIVER_WINDOWS
16.115 + d3dcompiler = SDL_GetHint(SDL_HINT_VIDEO_WIN_D3DCOMPILER);
16.116 + if (!d3dcompiler) {
16.117 + /* By default we load the Vista+ compatible compiler */
16.118 + d3dcompiler = "d3dcompiler_46.dll";
16.119 + }
16.120 + if (SDL_strcasecmp(d3dcompiler, "none") != 0) {
16.121 + SDL_LoadObject(d3dcompiler);
16.122 + }
16.123 #endif
16.124
16.125 /* A funny thing, loading EGL.so first does not work on the Raspberry, so we load libGL* first */
16.126 - path = getenv("SDL_VIDEO_GL_DRIVER");
16.127 - egl_dll_handle = dlopen(path, dlopen_flags);
16.128 - if ((path == NULL) | (egl_dll_handle == NULL)) {
16.129 + path = SDL_getenv("SDL_VIDEO_GL_DRIVER");
16.130 + if (path != NULL) {
16.131 + egl_dll_handle = SDL_LoadObject(path);
16.132 + }
16.133 +
16.134 + if (egl_dll_handle == NULL) {
16.135 if (_this->gl_config.major_version > 1) {
16.136 path = DEFAULT_OGL_ES2;
16.137 - egl_dll_handle = dlopen(path, dlopen_flags);
16.138 - } else {
16.139 + egl_dll_handle = SDL_LoadObject(path);
16.140 + }
16.141 + else {
16.142 path = DEFAULT_OGL_ES;
16.143 - egl_dll_handle = dlopen(path, dlopen_flags);
16.144 + egl_dll_handle = SDL_LoadObject(path);
16.145 if (egl_dll_handle == NULL) {
16.146 path = DEFAULT_OGL_ES_PVR;
16.147 - egl_dll_handle = dlopen(path, dlopen_flags);
16.148 + egl_dll_handle = SDL_LoadObject(path);
16.149 }
16.150 }
16.151 }
16.152 _this->egl_data->egl_dll_handle = egl_dll_handle;
16.153
16.154 if (egl_dll_handle == NULL) {
16.155 - return SDL_SetError("Could not initialize OpenGL ES library: %s", dlerror());
16.156 + return SDL_SetError("Could not initialize OpenGL ES library");
16.157 }
16.158 -
16.159 +
16.160 /* Loading libGL* in the previous step took care of loading libEGL.so, but we future proof by double checking */
16.161 - dll_handle = dlopen(egl_path, dlopen_flags);
16.162 + if (egl_path != NULL) {
16.163 + dll_handle = SDL_LoadObject(egl_path);
16.164 + }
16.165 /* Catch the case where the application isn't linked with EGL */
16.166 - if ((dlsym(dll_handle, "eglChooseConfig") == NULL) && (egl_path == NULL)) {
16.167 - dlclose(dll_handle);
16.168 - path = getenv("SDL_VIDEO_EGL_DRIVER");
16.169 + if ((SDL_LoadFunction(dll_handle, "eglChooseConfig") == NULL) && (egl_path == NULL)) {
16.170 + if (dll_handle != NULL) {
16.171 + SDL_UnloadObject(dll_handle);
16.172 + }
16.173 + path = SDL_getenv("SDL_VIDEO_EGL_DRIVER");
16.174 if (path == NULL) {
16.175 path = DEFAULT_EGL;
16.176 }
16.177 - dll_handle = dlopen(path, dlopen_flags);
16.178 + dll_handle = SDL_LoadObject(path);
16.179 + if (dll_handle == NULL) {
16.180 + return SDL_SetError("Could not load EGL library");
16.181 + }
16.182 }
16.183 - _this->gl_config.dll_handle = dll_handle;
16.184
16.185 - if (dll_handle == NULL) {
16.186 - return SDL_SetError("Could not load EGL library: %s", dlerror());
16.187 - }
16.188 + _this->egl_data->dll_handle = dll_handle;
16.189
16.190 /* Load new function pointers */
16.191 LOAD_FUNC(eglGetDisplay);
16.192 @@ -198,14 +215,14 @@
16.193 return SDL_SetError("Could not initialize EGL");
16.194 }
16.195
16.196 - _this->gl_config.dll_handle = dll_handle;
16.197 + _this->egl_data->dll_handle = dll_handle;
16.198 _this->egl_data->egl_dll_handle = egl_dll_handle;
16.199 _this->gl_config.driver_loaded = 1;
16.200
16.201 if (path) {
16.202 - strncpy(_this->gl_config.driver_path, path, sizeof(_this->gl_config.driver_path) - 1);
16.203 + SDL_strlcpy(_this->gl_config.driver_path, path, sizeof(_this->gl_config.driver_path) - 1);
16.204 } else {
16.205 - strcpy(_this->gl_config.driver_path, "");
16.206 + *_this->gl_config.driver_path = '\0';
16.207 }
16.208
16.209 /* We need to select a config here to satisfy some video backends such as X11 */
16.210 @@ -217,10 +234,10 @@
16.211 {
16.212 /* 64 seems nice. */
16.213 EGLint attribs[64];
16.214 - EGLint found_configs = 0;
16.215 + EGLint found_configs = 0, value;
16.216 /* 128 seems even nicer here */
16.217 EGLConfig configs[128];
16.218 - int i, j, best_bitdiff = -1, bitdiff, value;
16.219 + int i, j, best_bitdiff = -1, bitdiff;
16.220
16.221 if (!_this->egl_data) {
16.222 /* The EGL library wasn't loaded, SDL_GetError() should have info */
16.223 @@ -283,10 +300,10 @@
16.224
16.225 /* eglChooseConfig returns a number of configurations that match or exceed the requested attribs. */
16.226 /* From those, we select the one that matches our requirements more closely via a makeshift algorithm */
16.227 -
16.228 +
16.229 for ( i=0; i<found_configs; i++ ) {
16.230 bitdiff = 0;
16.231 - for (j = 0; ; j += 2) {
16.232 + for (j = 0; j < SDL_arraysize(attribs) - 1; j += 2) {
16.233 if (attribs[j] == EGL_NONE) {
16.234 break;
16.235 }
16.236 @@ -298,7 +315,6 @@
16.237 attribs[j] == EGL_ALPHA_SIZE ||
16.238 attribs[j] == EGL_DEPTH_SIZE ||
16.239 attribs[j] == EGL_STENCIL_SIZE)) {
16.240 -
16.241 _this->egl_data->eglGetConfigAttrib(_this->egl_data->egl_display, configs[i], attribs[j], &value);
16.242 bitdiff += value - attribs[j + 1]; /* value is always >= attrib */
16.243 }
17.1 --- a/src/video/SDL_egl.h Fri Nov 22 10:26:28 2013 -0300
17.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
17.3 @@ -1,132 +0,0 @@
17.4 -/*
17.5 - Simple DirectMedia Layer
17.6 - Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
17.7 -
17.8 - This software is provided 'as-is', without any express or implied
17.9 - warranty. In no event will the authors be held liable for any damages
17.10 - arising from the use of this software.
17.11 -
17.12 - Permission is granted to anyone to use this software for any purpose,
17.13 - including commercial applications, and to alter it and redistribute it
17.14 - freely, subject to the following restrictions:
17.15 -
17.16 - 1. The origin of this software must not be misrepresented; you must not
17.17 - claim that you wrote the original software. If you use this software
17.18 - in a product, an acknowledgment in the product documentation would be
17.19 - appreciated but is not required.
17.20 - 2. Altered source versions must be plainly marked as such, and must not be
17.21 - misrepresented as being the original software.
17.22 - 3. This notice may not be removed or altered from any source distribution.
17.23 -*/
17.24 -#include "SDL_config.h"
17.25 -
17.26 -#ifndef _SDL_egl_h
17.27 -#define _SDL_egl_h
17.28 -
17.29 -#if SDL_VIDEO_OPENGL_EGL
17.30 -
17.31 -#include <EGL/egl.h>
17.32 -
17.33 -#include <dlfcn.h>
17.34 -#if defined(__OpenBSD__) && !defined(__ELF__)
17.35 -#define dlsym(x,y) dlsym(x, "_" y)
17.36 -#endif
17.37 -
17.38 -#include "SDL_sysvideo.h"
17.39 -
17.40 -typedef struct SDL_EGL_VideoData
17.41 -{
17.42 - void *egl_dll_handle;
17.43 - EGLDisplay egl_display;
17.44 - EGLConfig egl_config;
17.45 - int egl_swapinterval;
17.46 -
17.47 - EGLDisplay(*eglGetDisplay) (NativeDisplayType display);
17.48 - EGLBoolean(*eglInitialize) (EGLDisplay dpy, EGLint * major,
17.49 - EGLint * minor);
17.50 - EGLBoolean(*eglTerminate) (EGLDisplay dpy);
17.51 -
17.52 - void *(*eglGetProcAddress) (const char * procName);
17.53 -
17.54 - EGLBoolean(*eglChooseConfig) (EGLDisplay dpy,
17.55 - const EGLint * attrib_list,
17.56 - EGLConfig * configs,
17.57 - EGLint config_size, EGLint * num_config);
17.58 -
17.59 - EGLContext(*eglCreateContext) (EGLDisplay dpy,
17.60 - EGLConfig config,
17.61 - EGLContext share_list,
17.62 - const EGLint * attrib_list);
17.63 -
17.64 - EGLBoolean(*eglDestroyContext) (EGLDisplay dpy, EGLContext ctx);
17.65 -
17.66 - EGLSurface(*eglCreateWindowSurface) (EGLDisplay dpy,
17.67 - EGLConfig config,
17.68 - NativeWindowType window,
17.69 - const EGLint * attrib_list);
17.70 - EGLBoolean(*eglDestroySurface) (EGLDisplay dpy, EGLSurface surface);
17.71 -
17.72 - EGLBoolean(*eglMakeCurrent) (EGLDisplay dpy, EGLSurface draw,
17.73 - EGLSurface read, EGLContext ctx);
17.74 -
17.75 - EGLBoolean(*eglSwapBuffers) (EGLDisplay dpy, EGLSurface draw);
17.76 -
17.77 - EGLBoolean(*eglSwapInterval) (EGLDisplay dpy, EGLint interval);
17.78 -
17.79 - const char *(*eglQueryString) (EGLDisplay dpy, EGLint name);
17.80 -
17.81 - EGLBoolean(*eglGetConfigAttrib) (EGLDisplay dpy, EGLConfig config,
17.82 - EGLint attribute, EGLint * value);
17.83 -
17.84 - EGLBoolean(*eglWaitNative) (EGLint engine);
17.85 -
17.86 - EGLBoolean(*eglWaitGL)(void);
17.87 -} SDL_EGL_VideoData;
17.88 -
17.89 -/* OpenGLES functions */
17.90 -extern int SDL_EGL_GetAttribute(_THIS, SDL_GLattr attrib, int *value);
17.91 -extern int SDL_EGL_LoadLibrary(_THIS, const char *path, NativeDisplayType native_display);
17.92 -extern void *SDL_EGL_GetProcAddress(_THIS, const char *proc);
17.93 -extern void SDL_EGL_UnloadLibrary(_THIS);
17.94 -extern int SDL_EGL_ChooseConfig(_THIS);
17.95 -extern int SDL_EGL_SetSwapInterval(_THIS, int interval);
17.96 -extern int SDL_EGL_GetSwapInterval(_THIS);
17.97 -extern void SDL_EGL_DeleteContext(_THIS, SDL_GLContext context);
17.98 -extern EGLSurface *SDL_EGL_CreateSurface(_THIS, NativeWindowType nw);
17.99 -extern void SDL_EGL_DestroySurface(_THIS, EGLSurface egl_surface);
17.100 -
17.101 -/* These need to be wrapped to get the surface for the window by the platform GLES implementation */
17.102 -extern SDL_GLContext SDL_EGL_CreateContext(_THIS, EGLSurface egl_surface);
17.103 -extern int SDL_EGL_MakeCurrent(_THIS, EGLSurface egl_surface, SDL_GLContext context);
17.104 -extern void SDL_EGL_SwapBuffers(_THIS, EGLSurface egl_surface);
17.105 -
17.106 -/* A few of useful macros */
17.107 -
17.108 -#define SDL_EGL_SwapWindow_impl(BACKEND) void \
17.109 -BACKEND ## _GLES_SwapWindow(_THIS, SDL_Window * window) \
17.110 -{\
17.111 - SDL_EGL_SwapBuffers(_this, ((SDL_WindowData *) window->driverdata)->egl_surface);\
17.112 -}
17.113 -
17.114 -#define SDL_EGL_MakeCurrent_impl(BACKEND) int \
17.115 -BACKEND ## _GLES_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context) \
17.116 -{\
17.117 - if (window && context) { \
17.118 - return SDL_EGL_MakeCurrent(_this, ((SDL_WindowData *) window->driverdata)->egl_surface, context); \
17.119 - }\
17.120 - else {\
17.121 - return SDL_EGL_MakeCurrent(_this, NULL, NULL);\
17.122 - }\
17.123 -}
17.124 -
17.125 -#define SDL_EGL_CreateContext_impl(BACKEND) SDL_GLContext \
17.126 -BACKEND ## _GLES_CreateContext(_THIS, SDL_Window * window) \
17.127 -{\
17.128 - return SDL_EGL_CreateContext(_this, ((SDL_WindowData *) window->driverdata)->egl_surface);\
17.129 -}
17.130 -
17.131 -#endif /* SDL_VIDEO_OPENGL_EGL */
17.132 -
17.133 -#endif /* _SDL_egl_h */
17.134 -
17.135 -/* vi: set ts=4 sw=4 expandtab: */
18.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
18.2 +++ b/src/video/SDL_egl_c.h Fri Nov 22 13:24:53 2013 -0300
18.3 @@ -0,0 +1,127 @@
18.4 +/*
18.5 + Simple DirectMedia Layer
18.6 + Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
18.7 +
18.8 + This software is provided 'as-is', without any express or implied
18.9 + warranty. In no event will the authors be held liable for any damages
18.10 + arising from the use of this software.
18.11 +
18.12 + Permission is granted to anyone to use this software for any purpose,
18.13 + including commercial applications, and to alter it and redistribute it
18.14 + freely, subject to the following restrictions:
18.15 +
18.16 + 1. The origin of this software must not be misrepresented; you must not
18.17 + claim that you wrote the original software. If you use this software
18.18 + in a product, an acknowledgment in the product documentation would be
18.19 + appreciated but is not required.
18.20 + 2. Altered source versions must be plainly marked as such, and must not be
18.21 + misrepresented as being the original software.
18.22 + 3. This notice may not be removed or altered from any source distribution.
18.23 +*/
18.24 +#include "SDL_config.h"
18.25 +
18.26 +#ifndef _SDL_egl_h
18.27 +#define _SDL_egl_h
18.28 +
18.29 +#if SDL_VIDEO_OPENGL_EGL
18.30 +
18.31 +#include "SDL_egl.h"
18.32 +
18.33 +#include "SDL_sysvideo.h"
18.34 +
18.35 +typedef struct SDL_EGL_VideoData
18.36 +{
18.37 + void *egl_dll_handle, *dll_handle;
18.38 + EGLDisplay egl_display;
18.39 + EGLConfig egl_config;
18.40 + int egl_swapinterval;
18.41 +
18.42 + EGLDisplay(EGLAPIENTRY *eglGetDisplay) (NativeDisplayType display);
18.43 + EGLBoolean(EGLAPIENTRY *eglInitialize) (EGLDisplay dpy, EGLint * major,
18.44 + EGLint * minor);
18.45 + EGLBoolean(EGLAPIENTRY *eglTerminate) (EGLDisplay dpy);
18.46 +
18.47 + void *(EGLAPIENTRY *eglGetProcAddress) (const char * procName);
18.48 +
18.49 + EGLBoolean(EGLAPIENTRY *eglChooseConfig) (EGLDisplay dpy,
18.50 + const EGLint * attrib_list,
18.51 + EGLConfig * configs,
18.52 + EGLint config_size, EGLint * num_config);
18.53 +
18.54 + EGLContext(EGLAPIENTRY *eglCreateContext) (EGLDisplay dpy,
18.55 + EGLConfig config,
18.56 + EGLContext share_list,
18.57 + const EGLint * attrib_list);
18.58 +
18.59 + EGLBoolean(EGLAPIENTRY *eglDestroyContext) (EGLDisplay dpy, EGLContext ctx);
18.60 +
18.61 + EGLSurface(EGLAPIENTRY *eglCreateWindowSurface) (EGLDisplay dpy,
18.62 + EGLConfig config,
18.63 + NativeWindowType window,
18.64 + const EGLint * attrib_list);
18.65 + EGLBoolean(EGLAPIENTRY *eglDestroySurface) (EGLDisplay dpy, EGLSurface surface);
18.66 +
18.67 + EGLBoolean(EGLAPIENTRY *eglMakeCurrent) (EGLDisplay dpy, EGLSurface draw,
18.68 + EGLSurface read, EGLContext ctx);
18.69 +
18.70 + EGLBoolean(EGLAPIENTRY *eglSwapBuffers) (EGLDisplay dpy, EGLSurface draw);
18.71 +
18.72 + EGLBoolean(EGLAPIENTRY *eglSwapInterval) (EGLDisplay dpy, EGLint interval);
18.73 +
18.74 + const char *(EGLAPIENTRY *eglQueryString) (EGLDisplay dpy, EGLint name);
18.75 +
18.76 + EGLBoolean(EGLAPIENTRY *eglGetConfigAttrib) (EGLDisplay dpy, EGLConfig config,
18.77 + EGLint attribute, EGLint * value);
18.78 +
18.79 + EGLBoolean(EGLAPIENTRY *eglWaitNative) (EGLint engine);
18.80 +
18.81 + EGLBoolean(EGLAPIENTRY *eglWaitGL)(void);
18.82 +} SDL_EGL_VideoData;
18.83 +
18.84 +/* OpenGLES functions */
18.85 +extern int SDL_EGL_GetAttribute(_THIS, SDL_GLattr attrib, int *value);
18.86 +extern int SDL_EGL_LoadLibrary(_THIS, const char *path, NativeDisplayType native_display);
18.87 +extern void *SDL_EGL_GetProcAddress(_THIS, const char *proc);
18.88 +extern void SDL_EGL_UnloadLibrary(_THIS);
18.89 +extern int SDL_EGL_ChooseConfig(_THIS);
18.90 +extern int SDL_EGL_SetSwapInterval(_THIS, int interval);
18.91 +extern int SDL_EGL_GetSwapInterval(_THIS);
18.92 +extern void SDL_EGL_DeleteContext(_THIS, SDL_GLContext context);
18.93 +extern EGLSurface *SDL_EGL_CreateSurface(_THIS, NativeWindowType nw);
18.94 +extern void SDL_EGL_DestroySurface(_THIS, EGLSurface egl_surface);
18.95 +
18.96 +/* These need to be wrapped to get the surface for the window by the platform GLES implementation */
18.97 +extern SDL_GLContext SDL_EGL_CreateContext(_THIS, EGLSurface egl_surface);
18.98 +extern int SDL_EGL_MakeCurrent(_THIS, EGLSurface egl_surface, SDL_GLContext context);
18.99 +extern void SDL_EGL_SwapBuffers(_THIS, EGLSurface egl_surface);
18.100 +
18.101 +/* A few of useful macros */
18.102 +
18.103 +#define SDL_EGL_SwapWindow_impl(BACKEND) void \
18.104 +BACKEND ## _GLES_SwapWindow(_THIS, SDL_Window * window) \
18.105 +{\
18.106 + SDL_EGL_SwapBuffers(_this, ((SDL_WindowData *) window->driverdata)->egl_surface);\
18.107 +}
18.108 +
18.109 +#define SDL_EGL_MakeCurrent_impl(BACKEND) int \
18.110 +BACKEND ## _GLES_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context) \
18.111 +{\
18.112 + if (window && context) { \
18.113 + return SDL_EGL_MakeCurrent(_this, ((SDL_WindowData *) window->driverdata)->egl_surface, context); \
18.114 + }\
18.115 + else {\
18.116 + return SDL_EGL_MakeCurrent(_this, NULL, NULL);\
18.117 + }\
18.118 +}
18.119 +
18.120 +#define SDL_EGL_CreateContext_impl(BACKEND) SDL_GLContext \
18.121 +BACKEND ## _GLES_CreateContext(_THIS, SDL_Window * window) \
18.122 +{\
18.123 + return SDL_EGL_CreateContext(_this, ((SDL_WindowData *) window->driverdata)->egl_surface);\
18.124 +}
18.125 +
18.126 +#endif /* SDL_VIDEO_OPENGL_EGL */
18.127 +
18.128 +#endif /* _SDL_egl_h */
18.129 +
18.130 +/* vi: set ts=4 sw=4 expandtab: */
19.1 --- a/src/video/android/SDL_androidgl.c Fri Nov 22 10:26:28 2013 -0300
19.2 +++ b/src/video/android/SDL_androidgl.c Fri Nov 22 13:24:53 2013 -0300
19.3 @@ -25,7 +25,7 @@
19.4 /* Android SDL video driver implementation */
19.5
19.6 #include "SDL_video.h"
19.7 -#include "../SDL_egl.h"
19.8 +#include "../SDL_egl_c.h"
19.9 #include "SDL_androidwindow.h"
19.10
19.11 #include "SDL_androidvideo.h"
20.1 --- a/src/video/android/SDL_androidvideo.c Fri Nov 22 10:26:28 2013 -0300
20.2 +++ b/src/video/android/SDL_androidvideo.c Fri Nov 22 13:24:53 2013 -0300
20.3 @@ -45,7 +45,7 @@
20.4 static int Android_VideoInit(_THIS);
20.5 static void Android_VideoQuit(_THIS);
20.6
20.7 -#include "../SDL_egl.h"
20.8 +#include "../SDL_egl_c.h"
20.9 /* GL functions (SDL_androidgl.c) */
20.10 extern SDL_GLContext Android_GLES_CreateContext(_THIS, SDL_Window * window);
20.11 extern int Android_GLES_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context);
21.1 --- a/src/video/android/SDL_androidwindow.h Fri Nov 22 10:26:28 2013 -0300
21.2 +++ b/src/video/android/SDL_androidwindow.h Fri Nov 22 13:24:53 2013 -0300
21.3 @@ -24,7 +24,7 @@
21.4 #define _SDL_androidwindow_h
21.5
21.6 #include "../../core/android/SDL_android.h"
21.7 -#include "../SDL_egl.h"
21.8 +#include "../SDL_egl_c.h"
21.9
21.10 extern int Android_CreateWindow(_THIS, SDL_Window * window);
21.11 extern void Android_SetWindowTitle(_THIS, SDL_Window * window);
22.1 --- a/src/video/raspberry/SDL_rpiopengles.h Fri Nov 22 10:26:28 2013 -0300
22.2 +++ b/src/video/raspberry/SDL_rpiopengles.h Fri Nov 22 13:24:53 2013 -0300
22.3 @@ -26,7 +26,7 @@
22.4 #if SDL_VIDEO_DRIVER_RPI && SDL_VIDEO_OPENGL_EGL
22.5
22.6 #include "../SDL_sysvideo.h"
22.7 -#include "../SDL_egl.h"
22.8 +#include "../SDL_egl_c.h"
22.9
22.10 /* OpenGLES functions */
22.11 #define RPI_GLES_GetAttribute SDL_EGL_GetAttribute
23.1 --- a/src/video/windows/SDL_windowsopengl.c Fri Nov 22 10:26:28 2013 -0300
23.2 +++ b/src/video/windows/SDL_windowsopengl.c Fri Nov 22 13:24:53 2013 -0300
23.3 @@ -25,6 +25,7 @@
23.4 #include "SDL_assert.h"
23.5 #include "SDL_loadso.h"
23.6 #include "SDL_windowsvideo.h"
23.7 +#include "SDL_windowsopengles.h"
23.8
23.9 /* WGL implementation of SDL OpenGL support */
23.10
23.11 @@ -323,11 +324,35 @@
23.12 return SDL_FALSE;
23.13 }
23.14
23.15 -static void
23.16 -WIN_GL_InitExtensions(_THIS, HDC hdc)
23.17 +void
23.18 +WIN_GL_InitExtensions(_THIS)
23.19 {
23.20 const char *(WINAPI * wglGetExtensionsStringARB) (HDC) = 0;
23.21 const char *extensions;
23.22 + HWND hwnd;
23.23 + HDC hdc;
23.24 + HGLRC hglrc;
23.25 + PIXELFORMATDESCRIPTOR pfd;
23.26 +
23.27 + hwnd =
23.28 + CreateWindow(SDL_Appname, SDL_Appname, (WS_POPUP | WS_DISABLED), 0, 0,
23.29 + 10, 10, NULL, NULL, SDL_Instance, NULL);
23.30 + if (!hwnd) {
23.31 + return;
23.32 + }
23.33 + WIN_PumpEvents(_this);
23.34 +
23.35 + hdc = GetDC(hwnd);
23.36 +
23.37 + WIN_GL_SetupPixelFormat(_this, &pfd);
23.38 +
23.39 + SetPixelFormat(hdc, ChoosePixelFormat(hdc, &pfd), &pfd);
23.40 +
23.41 + hglrc = _this->gl_data->wglCreateContext(hdc);
23.42 + if (!hglrc) {
23.43 + return;
23.44 + }
23.45 + _this->gl_data->wglMakeCurrent(hdc, hglrc);
23.46
23.47 wglGetExtensionsStringARB = (const char *(WINAPI *) (HDC))
23.48 _this->gl_data->wglGetProcAddress("wglGetExtensionsStringARB");
23.49 @@ -369,6 +394,18 @@
23.50 _this->gl_data->wglSwapIntervalEXT = NULL;
23.51 _this->gl_data->wglGetSwapIntervalEXT = NULL;
23.52 }
23.53 +
23.54 + /* Check for WGL_EXT_create_context_es2_profile */
23.55 + _this->gl_data->HAS_WGL_EXT_create_context_es2_profile = SDL_FALSE;
23.56 + if (HasExtension("WGL_EXT_create_context_es2_profile", extensions)) {
23.57 + _this->gl_data->HAS_WGL_EXT_create_context_es2_profile = SDL_TRUE;
23.58 + }
23.59 +
23.60 + _this->gl_data->wglMakeCurrent(hdc, NULL);
23.61 + _this->gl_data->wglDeleteContext(hglrc);
23.62 + ReleaseDC(hwnd, hdc);
23.63 + DestroyWindow(hwnd);
23.64 + WIN_PumpEvents(_this);
23.65 }
23.66
23.67 static int
23.68 @@ -396,8 +433,6 @@
23.69 if (hglrc) {
23.70 _this->gl_data->wglMakeCurrent(hdc, hglrc);
23.71
23.72 - WIN_GL_InitExtensions(_this, hdc);
23.73 -
23.74 if (_this->gl_data->HAS_WGL_ARB_pixel_format) {
23.75 _this->gl_data->wglChoosePixelFormatARB(hdc, iAttribs, fAttribs,
23.76 1, &pixel_format,
23.77 @@ -548,6 +583,27 @@
23.78 HDC hdc = ((SDL_WindowData *) window->driverdata)->hdc;
23.79 HGLRC context, share_context;
23.80
23.81 + if (_this->gl_config.profile_mask == SDL_GL_CONTEXT_PROFILE_ES &&
23.82 + !_this->gl_data->HAS_WGL_EXT_create_context_es2_profile) {
23.83 + /* Switch to EGL based functions */
23.84 + WIN_GL_UnloadLibrary(_this);
23.85 + _this->GL_LoadLibrary = WIN_GLES_LoadLibrary;
23.86 + _this->GL_GetProcAddress = WIN_GLES_GetProcAddress;
23.87 + _this->GL_UnloadLibrary = WIN_GLES_UnloadLibrary;
23.88 + _this->GL_CreateContext = WIN_GLES_CreateContext;
23.89 + _this->GL_MakeCurrent = WIN_GLES_MakeCurrent;
23.90 + _this->GL_SetSwapInterval = WIN_GLES_SetSwapInterval;
23.91 + _this->GL_GetSwapInterval = WIN_GLES_GetSwapInterval;
23.92 + _this->GL_SwapWindow = WIN_GLES_SwapWindow;
23.93 + _this->GL_DeleteContext = WIN_GLES_DeleteContext;
23.94 +
23.95 + if (WIN_GLES_LoadLibrary(_this, NULL) != 0) {
23.96 + return NULL;
23.97 + }
23.98 +
23.99 + return WIN_GLES_CreateContext(_this, window);
23.100 + }
23.101 +
23.102 if (_this->gl_config.share_with_current_context) {
23.103 share_context = (HGLRC)SDL_GL_GetCurrentContext();
23.104 } else {
23.105 @@ -622,8 +678,6 @@
23.106 return NULL;
23.107 }
23.108
23.109 - WIN_GL_InitExtensions(_this, hdc);
23.110 -
23.111 return context;
23.112 }
23.113
24.1 --- a/src/video/windows/SDL_windowsopengl.h Fri Nov 22 10:26:28 2013 -0300
24.2 +++ b/src/video/windows/SDL_windowsopengl.h Fri Nov 22 13:24:53 2013 -0300
24.3 @@ -29,6 +29,7 @@
24.4 {
24.5 SDL_bool HAS_WGL_ARB_pixel_format;
24.6 SDL_bool HAS_WGL_EXT_swap_control_tear;
24.7 + SDL_bool HAS_WGL_EXT_create_context_es2_profile;
24.8
24.9 void *(WINAPI * wglGetProcAddress) (const char *proc);
24.10 HGLRC(WINAPI * wglCreateContext) (HDC hdc);
24.11 @@ -62,6 +63,7 @@
24.12 extern int WIN_GL_GetSwapInterval(_THIS);
24.13 extern void WIN_GL_SwapWindow(_THIS, SDL_Window * window);
24.14 extern void WIN_GL_DeleteContext(_THIS, SDL_GLContext context);
24.15 +extern void WIN_GL_InitExtensions(_THIS);
24.16
24.17 #ifndef WGL_ARB_pixel_format
24.18 #define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
25.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
25.2 +++ b/src/video/windows/SDL_windowsopengles.c Fri Nov 22 13:24:53 2013 -0300
25.3 @@ -0,0 +1,141 @@
25.4 +/*
25.5 +Simple DirectMedia Layer
25.6 +Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
25.7 +
25.8 +This software is provided 'as-is', without any express or implied
25.9 +warranty. In no event will the authors be held liable for any damages
25.10 +arising from the use of this software.
25.11 +
25.12 +Permission is granted to anyone to use this software for any purpose,
25.13 +including commercial applications, and to alter it and redistribute it
25.14 +freely, subject to the following restrictions:
25.15 +
25.16 +1. The origin of this software must not be misrepresented; you must not
25.17 +claim that you wrote the original software. If you use this software
25.18 +in a product, an acknowledgment in the product documentation would be
25.19 +appreciated but is not required.
25.20 +2. Altered source versions must be plainly marked as such, and must not be
25.21 +misrepresented as being the original software.
25.22 +3. This notice may not be removed or altered from any source distribution.
25.23 +*/
25.24 +#include "SDL_config.h"
25.25 +
25.26 +#if SDL_VIDEO_DRIVER_WINDOWS && SDL_VIDEO_OPENGL_EGL
25.27 +
25.28 +#include "SDL_windowsvideo.h"
25.29 +#include "SDL_windowsopengles.h"
25.30 +#include "SDL_windowsopengl.h"
25.31 +#include "SDL_log.h"
25.32 +
25.33 +/* EGL implementation of SDL OpenGL support */
25.34 +
25.35 +int
25.36 +WIN_GLES_LoadLibrary(_THIS, const char *path) {
25.37 +
25.38 + SDL_VideoData *data = (SDL_VideoData *)_this->driverdata;
25.39 +
25.40 + /* If the profile requested is not GL ES, switch over to WIN_GL functions */
25.41 + if (_this->gl_config.profile_mask != SDL_GL_CONTEXT_PROFILE_ES) {
25.42 +#if SDL_VIDEO_OPENGL_WGL
25.43 + WIN_GLES_UnloadLibrary(_this);
25.44 + _this->GL_LoadLibrary = WIN_GL_LoadLibrary;
25.45 + _this->GL_GetProcAddress = WIN_GL_GetProcAddress;
25.46 + _this->GL_UnloadLibrary = WIN_GL_UnloadLibrary;
25.47 + _this->GL_CreateContext = WIN_GL_CreateContext;
25.48 + _this->GL_MakeCurrent = WIN_GL_MakeCurrent;
25.49 + _this->GL_SetSwapInterval = WIN_GL_SetSwapInterval;
25.50 + _this->GL_GetSwapInterval = WIN_GL_GetSwapInterval;
25.51 + _this->GL_SwapWindow = WIN_GL_SwapWindow;
25.52 + _this->GL_DeleteContext = WIN_GL_DeleteContext;
25.53 + return WIN_GL_LoadLibrary(_this, path);
25.54 +#else
25.55 + return SDL_SetError("SDL not configured with OpenGL/WGL support");
25.56 +#endif
25.57 + }
25.58 +
25.59 + if (_this->egl_data == NULL) {
25.60 + return SDL_EGL_LoadLibrary(_this, NULL, EGL_DEFAULT_DISPLAY);
25.61 + }
25.62 +
25.63 + return 0;
25.64 +}
25.65 +
25.66 +SDL_GLContext
25.67 +WIN_GLES_CreateContext(_THIS, SDL_Window * window)
25.68 +{
25.69 + SDL_GLContext context;
25.70 + SDL_WindowData *data = (SDL_WindowData *)window->driverdata;
25.71 +
25.72 + if (_this->gl_config.profile_mask != SDL_GL_CONTEXT_PROFILE_ES) {
25.73 + /* Switch to WGL based functions */
25.74 + WIN_GLES_UnloadLibrary(_this);
25.75 + _this->GL_LoadLibrary = WIN_GL_LoadLibrary;
25.76 + _this->GL_GetProcAddress = WIN_GL_GetProcAddress;
25.77 + _this->GL_UnloadLibrary = WIN_GL_UnloadLibrary;
25.78 + _this->GL_CreateContext = WIN_GL_CreateContext;
25.79 + _this->GL_MakeCurrent = WIN_GL_MakeCurrent;
25.80 + _this->GL_SetSwapInterval = WIN_GL_SetSwapInterval;
25.81 + _this->GL_GetSwapInterval = WIN_GL_GetSwapInterval;
25.82 + _this->GL_SwapWindow = WIN_GL_SwapWindow;
25.83 + _this->GL_DeleteContext = WIN_GL_DeleteContext;
25.84 +
25.85 + if (WIN_GL_LoadLibrary(_this, NULL) != 0) {
25.86 + return NULL;
25.87 + }
25.88 +
25.89 + return WIN_GL_CreateContext(_this, window);
25.90 + }
25.91 +
25.92 + context = SDL_EGL_CreateContext(_this, data->egl_surface);
25.93 + return context;
25.94 +}
25.95 +
25.96 +void
25.97 +WIN_GLES_DeleteContext(_THIS, SDL_GLContext context)
25.98 +{
25.99 + SDL_EGL_DeleteContext(_this, context);
25.100 + WIN_GLES_UnloadLibrary(_this);
25.101 +}
25.102 +
25.103 +SDL_EGL_SwapWindow_impl(WIN)
25.104 +SDL_EGL_MakeCurrent_impl(WIN)
25.105 +
25.106 +int
25.107 +WIN_GLES_SetupWindow(_THIS, SDL_Window * window)
25.108 +{
25.109 + /* The current context is lost in here; save it and reset it. */
25.110 + SDL_WindowData *windowdata = (SDL_WindowData *) window->driverdata;
25.111 + SDL_Window *current_win = SDL_GL_GetCurrentWindow();
25.112 + SDL_GLContext current_ctx =