nigels-com-glew-285c35d/0000775000175000017500000000000015135005167015231 5ustar alastairalastairnigels-com-glew-285c35d/build/0000775000175000017500000000000015135005167016330 5ustar alastairalastairnigels-com-glew-285c35d/build/vc12/0000775000175000017500000000000015135005167017103 5ustar alastairalastairnigels-com-glew-285c35d/build/vc12/glew.sln0000664000175000017500000000667215135005167020572 0ustar alastairalastair Microsoft Visual Studio Solution File, Format Version 11.00 # Visual Studio 2010 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_shared", "glew_shared.vcxproj", "{55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_static", "glew_static.vcxproj", "{664E6F0D-6784-4760-9565-D54F8EB1EDF4}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glewinfo", "glewinfo.vcxproj", "{8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "visualinfo", "visualinfo.vcxproj", "{79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 Debug|x64 = Debug|x64 Release|Win32 = Release|Win32 Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|Win32.ActiveCfg = Debug|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|Win32.Build.0 = Debug|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|x64.ActiveCfg = Debug|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|x64.Build.0 = Debug|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|Win32.ActiveCfg = Release|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|Win32.Build.0 = Release|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|x64.ActiveCfg = Release|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|x64.Build.0 = Release|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|Win32.ActiveCfg = Debug|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|Win32.Build.0 = Debug|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|x64.ActiveCfg = Debug|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|x64.Build.0 = Debug|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|Win32.ActiveCfg = Release|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|Win32.Build.0 = Release|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|x64.ActiveCfg = Release|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|x64.Build.0 = Release|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|Win32.ActiveCfg = Debug|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|Win32.Build.0 = Debug|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|x64.ActiveCfg = Debug|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|x64.Build.0 = Debug|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|Win32.ActiveCfg = Release|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|Win32.Build.0 = Release|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|x64.ActiveCfg = Release|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|x64.Build.0 = Release|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|Win32.ActiveCfg = Debug|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|Win32.Build.0 = Debug|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|x64.ActiveCfg = Debug|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|x64.Build.0 = Debug|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|Win32.ActiveCfg = Release|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|Win32.Build.0 = Release|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|x64.ActiveCfg = Release|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal nigels-com-glew-285c35d/build/vc12/visualinfo.vcxproj0000664000175000017500000003062115135005167022701 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E} Application Application Application false v120 Application false v120 Application false v120 Application false v120 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ visualinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ ..\..\bin/ visualinfo MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\visualinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\visualinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\visualinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\visualinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ {664e6f0d-6784-4760-9565-d54f8eb1edf4} nigels-com-glew-285c35d/build/vc12/common.props0000664000175000017500000000176715135005167021473 0ustar alastairalastair ..\..\include ..\..\lib ..\..\bin $(INCLUDE_DIR) $(INCLUDE_DIR) true $(LIB_DIR) true $(BIN_DIR) true nigels-com-glew-285c35d/build/vc12/glew_shared.vcxproj0000664000175000017500000003031715135005167023010 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D} DynamicLibrary false v120 DynamicLibrary false v120 DynamicLibrary false v120 DynamicLibrary false v120 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32d $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32d MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 $(INCLUDE_DIR) WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) false true NDEBUG;%(PreprocessorDefinitions) true Win32 0x0409 NDEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) /ignore:4089 true true MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 $(INCLUDE_DIR) WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) false true NDEBUG;%(PreprocessorDefinitions) true 0x0409 NDEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) /ignore:4089 true true MultiThreadedDebugDLL Default false Disabled true WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) EnableFastChecks Level3 $(INCLUDE_DIR) false true _DEBUG;%(PreprocessorDefinitions) true Win32 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) MultiThreadedDebugDLL Default false Disabled true WIN32;WIN32_LEAN_AND_MEAN;GLEW_BUILD;%(PreprocessorDefinitions) EnableFastChecks Level3 $(INCLUDE_DIR) false true _DEBUG;%(PreprocessorDefinitions) true 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) nigels-com-glew-285c35d/build/vc12/glewinfo.vcxproj0000664000175000017500000003036715135005167022343 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA} Application Application Application false v120 Application false v120 Application false v120 Application false v120 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ glewinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ $(BIN_DIR)\$(Configuration)\$(PlatformName)\ glewinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\glewinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\glewinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\glewinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\glewinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ {664e6f0d-6784-4760-9565-d54f8eb1edf4} nigels-com-glew-285c35d/build/vc12/glew_static.vcxproj0000664000175000017500000002600415135005167023027 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4} Application Application StaticLibrary false MultiByte v120 StaticLibrary false MultiByte v120 StaticLibrary false MultiByte v120 StaticLibrary false MultiByte v120 $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32s $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32s $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32sd $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32sd $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 ../../include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) false 0x0409 NDEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX86 MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 ../../include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) false 0x0409 NDEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX64 MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;_DEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) EnableFastChecks false 0x0409 _DEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX86 MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;_DEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) EnableFastChecks false 0x0409 _DEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX64 ../../include;%(AdditionalIncludeDirectories) ../../include;%(AdditionalIncludeDirectories) nigels-com-glew-285c35d/build/vc14/0000775000175000017500000000000015135005167017105 5ustar alastairalastairnigels-com-glew-285c35d/build/vc14/glew.sln0000664000175000017500000000667015135005167020572 0ustar alastairalastair Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_shared", "glew_shared.vcxproj", "{55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_static", "glew_static.vcxproj", "{664E6F0D-6784-4760-9565-D54F8EB1EDF4}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glewinfo", "glewinfo.vcxproj", "{8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "visualinfo", "visualinfo.vcxproj", "{79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 Debug|x64 = Debug|x64 Release|Win32 = Release|Win32 Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|Win32.ActiveCfg = Debug|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|Win32.Build.0 = Debug|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|x64.ActiveCfg = Debug|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|x64.Build.0 = Debug|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|Win32.ActiveCfg = Release|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|Win32.Build.0 = Release|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|x64.ActiveCfg = Release|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|x64.Build.0 = Release|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|Win32.ActiveCfg = Debug|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|Win32.Build.0 = Debug|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|x64.ActiveCfg = Debug|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|x64.Build.0 = Debug|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|Win32.ActiveCfg = Release|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|Win32.Build.0 = Release|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|x64.ActiveCfg = Release|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|x64.Build.0 = Release|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|Win32.ActiveCfg = Debug|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|Win32.Build.0 = Debug|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|x64.ActiveCfg = Debug|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|x64.Build.0 = Debug|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|Win32.ActiveCfg = Release|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|Win32.Build.0 = Release|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|x64.ActiveCfg = Release|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|x64.Build.0 = Release|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|Win32.ActiveCfg = Debug|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|Win32.Build.0 = Debug|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|x64.ActiveCfg = Debug|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|x64.Build.0 = Debug|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|Win32.ActiveCfg = Release|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|Win32.Build.0 = Release|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|x64.ActiveCfg = Release|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal nigels-com-glew-285c35d/build/vc14/visualinfo.vcxproj0000664000175000017500000003062115135005167022703 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E} Application Application Application false v140 Application false v140 Application false v140 Application false v140 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ visualinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ ..\..\bin/ visualinfo MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\visualinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\visualinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\visualinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\visualinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ {664e6f0d-6784-4760-9565-d54f8eb1edf4} nigels-com-glew-285c35d/build/vc14/common.props0000664000175000017500000000176715135005167021475 0ustar alastairalastair ..\..\include ..\..\lib ..\..\bin $(INCLUDE_DIR) $(INCLUDE_DIR) true $(LIB_DIR) true $(BIN_DIR) true nigels-com-glew-285c35d/build/vc14/glew_shared.vcxproj0000664000175000017500000003031515135005167023010 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D} DynamicLibrary false v140 DynamicLibrary false v140 DynamicLibrary false v140 DynamicLibrary false v140 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32d $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32d MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 $(INCLUDE_DIR) WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) false true NDEBUG;%(PreprocessorDefinitions) true Win32 0x0409 NDEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) /ignore:4089 true true MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 $(INCLUDE_DIR) WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) false true NDEBUG;%(PreprocessorDefinitions) true 0x0409 NDEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) /ignore:4089 true true MultiThreadedDebugDLL Default false Disabled true WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) EnableFastChecks Level3 $(INCLUDE_DIR) false true _DEBUG;%(PreprocessorDefinitions) true Win32 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) MultiThreadedDebugDLL Default false Disabled true WIN32;WIN32_LEAN_AND_MEAN;GLEW_BUILD;%(PreprocessorDefinitions) EnableFastChecks Level3 $(INCLUDE_DIR) false true _DEBUG;%(PreprocessorDefinitions) true 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) nigels-com-glew-285c35d/build/vc14/glewinfo.vcxproj0000664000175000017500000003036715135005167022345 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA} Application Application Application false v140 Application false v140 Application false v140 Application false v140 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ glewinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ $(BIN_DIR)\$(Configuration)\$(PlatformName)\ glewinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\glewinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\glewinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\glewinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\glewinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ {664e6f0d-6784-4760-9565-d54f8eb1edf4} nigels-com-glew-285c35d/build/vc14/glew_static.vcxproj0000664000175000017500000002600415135005167023031 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4} Application Application StaticLibrary false MultiByte v140 StaticLibrary false MultiByte v140 StaticLibrary false MultiByte v140 StaticLibrary false MultiByte v140 $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32s $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32s $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32sd $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32sd $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 ../../include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) false 0x0409 NDEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX86 MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 ../../include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) false 0x0409 NDEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX64 MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;_DEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) EnableFastChecks false 0x0409 _DEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX86 MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;_DEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) EnableFastChecks false 0x0409 _DEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX64 ../../include;%(AdditionalIncludeDirectories) ../../include;%(AdditionalIncludeDirectories) nigels-com-glew-285c35d/build/vc15/0000775000175000017500000000000015135005167017106 5ustar alastairalastairnigels-com-glew-285c35d/build/vc15/glew.sln0000664000175000017500000000707115135005167020567 0ustar alastairalastair Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_shared", "glew_shared.vcxproj", "{55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_static", "glew_static.vcxproj", "{664E6F0D-6784-4760-9565-D54F8EB1EDF4}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glewinfo", "glewinfo.vcxproj", "{8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "visualinfo", "visualinfo.vcxproj", "{79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 Debug|x64 = Debug|x64 Release|Win32 = Release|Win32 Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|Win32.ActiveCfg = Debug|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|Win32.Build.0 = Debug|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|x64.ActiveCfg = Debug|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|x64.Build.0 = Debug|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|Win32.ActiveCfg = Release|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|Win32.Build.0 = Release|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|x64.ActiveCfg = Release|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|x64.Build.0 = Release|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|Win32.ActiveCfg = Debug|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|Win32.Build.0 = Debug|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|x64.ActiveCfg = Debug|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|x64.Build.0 = Debug|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|Win32.ActiveCfg = Release|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|Win32.Build.0 = Release|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|x64.ActiveCfg = Release|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|x64.Build.0 = Release|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|Win32.ActiveCfg = Debug|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|Win32.Build.0 = Debug|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|x64.ActiveCfg = Debug|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|x64.Build.0 = Debug|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|Win32.ActiveCfg = Release|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|Win32.Build.0 = Release|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|x64.ActiveCfg = Release|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|x64.Build.0 = Release|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|Win32.ActiveCfg = Debug|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|Win32.Build.0 = Debug|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|x64.ActiveCfg = Debug|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|x64.Build.0 = Debug|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|Win32.ActiveCfg = Release|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|Win32.Build.0 = Release|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|x64.ActiveCfg = Release|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9A5903BA-2749-477B-A225-BC8AB668C316} EndGlobalSection EndGlobal nigels-com-glew-285c35d/build/vc15/visualinfo.vcxproj0000664000175000017500000003114715135005167022710 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E} Application Application Application false v141 Application false v141 Application false v141 Application false v141 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ visualinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ ..\..\bin/ visualinfo MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\visualinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\visualinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\visualinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;glu32.lib;opengl32.lib;libvcruntime.lib;msvcrt.lib;%(AdditionalDependencies) libcmt $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\visualinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;glu32.lib;opengl32.lib;libvcruntime.lib;msvcrt.lib;%(AdditionalDependencies) libcmt $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ {664e6f0d-6784-4760-9565-d54f8eb1edf4} nigels-com-glew-285c35d/build/vc15/common.props0000664000175000017500000000176715135005167021476 0ustar alastairalastair ..\..\include ..\..\lib ..\..\bin $(INCLUDE_DIR) $(INCLUDE_DIR) true $(LIB_DIR) true $(BIN_DIR) true nigels-com-glew-285c35d/build/vc15/glew_shared.vcxproj0000664000175000017500000003040515135005167023011 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D} DynamicLibrary false v141 DynamicLibrary false v141 DynamicLibrary false v141 DynamicLibrary false v141 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32d $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32d MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 $(INCLUDE_DIR) WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) false true NDEBUG;%(PreprocessorDefinitions) true Win32 0x0409 NDEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;libvcruntime.lib;msvcrt.lib;%(AdditionalDependencies) /ignore:4089 true true MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 $(INCLUDE_DIR) WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) false true NDEBUG;%(PreprocessorDefinitions) true 0x0409 NDEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;libvcruntime.lib;msvcrt.lib;%(AdditionalDependencies) /ignore:4089 true true MultiThreadedDebugDLL Default false Disabled true WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) EnableFastChecks Level3 $(INCLUDE_DIR) false true _DEBUG;%(PreprocessorDefinitions) true Win32 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) MultiThreadedDebugDLL Default false Disabled true WIN32;WIN32_LEAN_AND_MEAN;GLEW_BUILD;%(PreprocessorDefinitions) EnableFastChecks Level3 $(INCLUDE_DIR) false true _DEBUG;%(PreprocessorDefinitions) true 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) nigels-com-glew-285c35d/build/vc15/glewinfo.vcxproj0000664000175000017500000003071515135005167022343 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA} Application Application Application false v141 Application false v141 Application false v141 Application false v141 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ glewinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ $(BIN_DIR)\$(Configuration)\$(PlatformName)\ glewinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\glewinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\glewinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\glewinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;opengl32.lib;libvcruntime.lib;msvcrt.lib;%(AdditionalDependencies) libcmt $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\glewinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;opengl32.lib;libvcruntime.lib;msvcrt.lib;%(AdditionalDependencies) libcmt $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ {664e6f0d-6784-4760-9565-d54f8eb1edf4} nigels-com-glew-285c35d/build/vc15/glew_static.vcxproj0000664000175000017500000002600415135005167023032 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4} Application Application StaticLibrary false MultiByte v141 StaticLibrary false MultiByte v141 StaticLibrary false MultiByte v141 StaticLibrary false MultiByte v141 $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32s $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32s $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32sd $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32sd $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 ../../include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) false 0x0409 NDEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX86 MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 ../../include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) false 0x0409 NDEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX64 MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;_DEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) EnableFastChecks false 0x0409 _DEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX86 MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;_DEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) EnableFastChecks false 0x0409 _DEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX64 ../../include;%(AdditionalIncludeDirectories) ../../include;%(AdditionalIncludeDirectories) nigels-com-glew-285c35d/build/vc10/0000775000175000017500000000000015135005167017101 5ustar alastairalastairnigels-com-glew-285c35d/build/vc10/glew.sln0000664000175000017500000000667215135005167020570 0ustar alastairalastair Microsoft Visual Studio Solution File, Format Version 11.00 # Visual Studio 2010 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_shared", "glew_shared.vcxproj", "{55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_static", "glew_static.vcxproj", "{664E6F0D-6784-4760-9565-D54F8EB1EDF4}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glewinfo", "glewinfo.vcxproj", "{8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "visualinfo", "visualinfo.vcxproj", "{79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 Debug|x64 = Debug|x64 Release|Win32 = Release|Win32 Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|Win32.ActiveCfg = Debug|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|Win32.Build.0 = Debug|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|x64.ActiveCfg = Debug|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Debug|x64.Build.0 = Debug|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|Win32.ActiveCfg = Release|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|Win32.Build.0 = Release|Win32 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|x64.ActiveCfg = Release|x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D}.Release|x64.Build.0 = Release|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|Win32.ActiveCfg = Debug|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|Win32.Build.0 = Debug|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|x64.ActiveCfg = Debug|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Debug|x64.Build.0 = Debug|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|Win32.ActiveCfg = Release|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|Win32.Build.0 = Release|Win32 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|x64.ActiveCfg = Release|x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4}.Release|x64.Build.0 = Release|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|Win32.ActiveCfg = Debug|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|Win32.Build.0 = Debug|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|x64.ActiveCfg = Debug|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Debug|x64.Build.0 = Debug|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|Win32.ActiveCfg = Release|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|Win32.Build.0 = Release|Win32 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|x64.ActiveCfg = Release|x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA}.Release|x64.Build.0 = Release|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|Win32.ActiveCfg = Debug|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|Win32.Build.0 = Debug|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|x64.ActiveCfg = Debug|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Debug|x64.Build.0 = Debug|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|Win32.ActiveCfg = Release|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|Win32.Build.0 = Release|Win32 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|x64.ActiveCfg = Release|x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal nigels-com-glew-285c35d/build/vc10/visualinfo.vcxproj0000664000175000017500000003021015135005167022671 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {79AA8443-86F4-649A-0BEB-0CB5E51B7D7E} Application Application Application false Application false Application false Application false $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false visualinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ visualinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ ..\..\bin/ visualinfo MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\visualinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\visualinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\visualinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\visualinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;glu32.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ {664e6f0d-6784-4760-9565-d54f8eb1edf4} nigels-com-glew-285c35d/build/vc10/common.props0000664000175000017500000000176715135005167021471 0ustar alastairalastair ../../include ../../lib ../../bin $(INCLUDE_DIR) $(INCLUDE_DIR) true $(LIB_DIR) true $(BIN_DIR) true nigels-com-glew-285c35d/build/vc10/glew_shared.vcxproj0000664000175000017500000003002715135005167023004 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {55AE3D72-7DE6-F19F-AEF2-9AE8CA26CF3D} DynamicLibrary false DynamicLibrary false DynamicLibrary false DynamicLibrary false $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32 $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32d $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glew32d MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 $(INCLUDE_DIR) WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) false true NDEBUG;%(PreprocessorDefinitions) true Win32 0x0409 NDEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) /ignore:4089 true true MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 $(INCLUDE_DIR) WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) false true NDEBUG;%(PreprocessorDefinitions) true 0x0409 NDEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) /ignore:4089 true true MultiThreadedDebugDLL Default false Disabled true WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_BUILD;%(PreprocessorDefinitions) EnableFastChecks Level3 $(INCLUDE_DIR) false true _DEBUG;%(PreprocessorDefinitions) true Win32 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) MultiThreadedDebugDLL Default false Disabled true WIN32;WIN32_LEAN_AND_MEAN;GLEW_BUILD;%(PreprocessorDefinitions) EnableFastChecks Level3 $(INCLUDE_DIR) false true _DEBUG;%(PreprocessorDefinitions) true 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true true Console $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\$(TargetName).lib 0x62AA0000 opengl32.lib;%(AdditionalDependencies) nigels-com-glew-285c35d/build/vc10/glewinfo.vcxproj0000664000175000017500000002776015135005167022344 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {8EFB5DCB-C0C4-1670-5938-A0E0F1A1C5EA} Application Application Application false Application false Application false Application false $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfod $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ false glewinfo $(BIN_DIR)\$(Configuration)\$(PlatformName)\ glewinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ $(BIN_DIR)\$(Configuration)\$(PlatformName)\ glewinfo tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\glewinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks .\..\..\bin\glewinfo.tlb 0x0409 _DEBUG;%(PreprocessorDefinitions) true true true Console $(OutDir)$(TargetName)$(TargetExt) glew32sd.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\glewinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 WIN32;WIN32_LEAN_AND_MEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) .\..\..\bin\glewinfo.tlb 0x0409 NDEBUG;%(PreprocessorDefinitions) true true Console $(OutDir)$(TargetName)$(TargetExt) glew32s.lib;opengl32.lib;%(AdditionalDependencies) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ $(OutDir)$(TargetName)$(TargetExt) $(LIB_DIR)\$(Configuration)\$(PlatformName)\ {664e6f0d-6784-4760-9565-d54f8eb1edf4} nigels-com-glew-285c35d/build/vc10/glew_static.vcxproj0000664000175000017500000002551615135005167023034 0ustar alastairalastair Debug Win32 Debug x64 Release Win32 Release x64 {664E6F0D-6784-4760-9565-D54F8EB1EDF4} Application Application StaticLibrary false MultiByte StaticLibrary false MultiByte StaticLibrary false MultiByte StaticLibrary false MultiByte $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32s $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32s $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32sd $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ glew32sd $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ $(LIB_DIR)\$(Configuration)\$(PlatformName)\ tmp\$(TargetName)\$(Configuration)\$(PlatformName)\ MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 ../../include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) false 0x0409 NDEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX86 MultiThreaded OnlyExplicitInline true true MaxSpeed true Level3 ../../include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) false 0x0409 NDEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX64 MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;_DEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) EnableFastChecks false 0x0409 _DEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX86 MultiThreadedDebugDLL Default false Disabled true Level3 WIN32;_DEBUG;_LIB;WIN32_LEAN_AND_MEAN;GLEW_STATIC;%(PreprocessorDefinitions) EnableFastChecks false 0x0409 _DEBUG;GLEW_STATIC;%(PreprocessorDefinitions) true true $(OutDir)$(TargetName)$(TargetExt) MachineX64 ../../include;%(AdditionalIncludeDirectories) ../../include;%(AdditionalIncludeDirectories) nigels-com-glew-285c35d/build/cmake/0000775000175000017500000000000015135005167017410 5ustar alastairalastairnigels-com-glew-285c35d/build/cmake/cmake_uninstall.cmake.in0000664000175000017500000000216315135005167024172 0ustar alastairalastairif(NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt") message(FATAL_ERROR "Cannot find install manifest: @CMAKE_BINARY_DIR@/install_manifest.txt") endif(NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt") if (NOT DEFINED CMAKE_INSTALL_PREFIX) set (CMAKE_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@") endif () message(${CMAKE_INSTALL_PREFIX}) file(READ "@CMAKE_BINARY_DIR@/install_manifest.txt" files) string(REGEX REPLACE "\n" ";" files "${files}") foreach(file ${files}) message(STATUS "Uninstalling $ENV{DESTDIR}${file}") if(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}") exec_program( "@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\"" OUTPUT_VARIABLE rm_out RETURN_VALUE rm_retval ) if(NOT "${rm_retval}" STREQUAL 0) message(FATAL_ERROR "Problem when removing $ENV{DESTDIR}${file}") endif(NOT "${rm_retval}" STREQUAL 0) else(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}") message(STATUS "File $ENV{DESTDIR}${file} does not exist.") endif(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}") endforeach(file) nigels-com-glew-285c35d/build/cmake/CMakeLists.txt0000664000175000017500000002114415135005167022152 0ustar alastairalastaircmake_minimum_required(VERSION 3.16) project(glew LANGUAGES C) if ( NOT DEFINED CMAKE_BUILD_TYPE ) set( CMAKE_BUILD_TYPE Release CACHE STRING "Build type" ) endif () include(GNUInstallDirs) set(CMAKE_DEBUG_POSTFIX d) option (BUILD_UTILS "utilities" ON) option (GLEW_REGAL "Regal mode" OFF) option (GLEW_OSMESA "OSMesa mode" OFF) if (APPLE) option (BUILD_FRAMEWORK "Build Framework bundle for OSX" OFF) endif () option (GLEW_X11 "X11 mode" ON) option (GLEW_EGL "EGL mode" OFF) option (BUILD_SHARED_LIBS "install/link shared instead of static libs" ON) set (GLEW_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../..) # get version from config/version file (STRINGS ${GLEW_DIR}/config/version _VERSION_MAJOR_STRING REGEX "GLEW_MAJOR[ ]*=[ ]*[0-9]+.*") string (REGEX REPLACE "GLEW_MAJOR[ ]*=[ ]*([0-9]+)" "\\1" CPACK_PACKAGE_VERSION_MAJOR ${_VERSION_MAJOR_STRING}) file (STRINGS ${GLEW_DIR}/config/version _VERSION_MINOR_STRING REGEX "GLEW_MINOR[ ]*=[ ]*[0-9]+.*") string (REGEX REPLACE "GLEW_MINOR[ ]*=[ ]*([0-9]+)" "\\1" CPACK_PACKAGE_VERSION_MINOR ${_VERSION_MINOR_STRING}) file (STRINGS ${GLEW_DIR}/config/version _VERSION_PATCH_STRING REGEX "GLEW_MICRO[ ]*=[ ]*[0-9]+.*") string (REGEX REPLACE "GLEW_MICRO[ ]*=[ ]*([0-9]+)" "\\1" CPACK_PACKAGE_VERSION_PATCH ${_VERSION_PATCH_STRING}) set (GLEW_VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) if (NOT GLEW_CUSTOM_OUTPUT_DIRS) set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) endif() find_package (OpenGL REQUIRED) # prefer GLVND if (OPENGL_opengl_LIBRARY) set (GLEW_LIBRARIES ${OPENGL_opengl_LIBRARY}) else () set (GLEW_LIBRARIES ${OPENGL_gl_LIBRARY}) endif () # X11 required except for Windows and Apple OSX platforms if (GLEW_X11 AND NOT WIN32 AND NOT APPLE) find_package (X11) list (APPEND GLEW_LIBRARIES ${OPENGL_glx_LIBRARY} ${X11_LIBRARIES}) endif() if (WIN32) set (GLEW_LIB_NAME glew32) else () set (GLEW_LIB_NAME GLEW) set (DLL_PREFIX lib) endif () add_definitions (-DGLEW_NO_GLU) #### Regal mode #### if (GLEW_REGAL) if (WIN32) set (REGAL_LIB_NAME regal32) else () set (REGAL_LIB_NAME Regal) endif () add_definitions (-DGLEW_REGAL) set (GLEW_LIBRARIES ${REGAL_LIB_NAME}) endif () #### OSMesa mode #### if (GLEW_OSMESA) if (WIN32) set (OSMESA_LIB_NAME osmesa) else () set (OSMESA_LIB_NAME OSMesa) endif () add_definitions (-DGLEW_OSMESA) list (APPEND GLEW_LIBRARIES ${OSMESA_LIB_NAME}) set (X11_LIBRARIES) endif () #### EGL #### if (GLEW_EGL AND UNIX) add_definitions (-DGLEW_EGL) if (NOT OpenGL_EGL_FOUND) message (FATAL_ERROR "EGL library set but not found.") endif () list (APPEND GLEW_LIBRARIES ${OPENGL_egl_LIBRARY}) endif () #### GLEW #### include_directories (${GLEW_DIR}/include ${X11_INCLUDE_DIR}) set (GLEW_PUBLIC_HEADERS_FILES ${GLEW_DIR}/include/GL/wglew.h ${GLEW_DIR}/include/GL/glew.h ${GLEW_DIR}/include/GL/glxew.h ${GLEW_DIR}/include/GL/eglew.h ) set (GLEW_SRC_FILES ${GLEW_DIR}/src/glew.c) if (WIN32) list (APPEND GLEW_SRC_FILES ${GLEW_DIR}/build/glew.rc) endif () add_library (glew SHARED ${GLEW_PUBLIC_HEADERS_FILES} ${GLEW_SRC_FILES}) set_target_properties (glew PROPERTIES COMPILE_DEFINITIONS "GLEW_BUILD" OUTPUT_NAME "${GLEW_LIB_NAME}" PREFIX "${DLL_PREFIX}" VERSION ${GLEW_VERSION} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}) add_library (glew_s STATIC ${GLEW_PUBLIC_HEADERS_FILES} ${GLEW_SRC_FILES}) set_target_properties (glew_s PROPERTIES COMPILE_DEFINITIONS "GLEW_STATIC" OUTPUT_NAME "${GLEW_LIB_NAME}" PREFIX lib) if (MSVC) # add options from visual studio project target_compile_definitions (glew PRIVATE "GLEW_BUILD;VC_EXTRALEAN") target_compile_definitions (glew_s PRIVATE "GLEW_STATIC;VC_EXTRALEAN") if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i?86|x86|x86_32)$") target_link_libraries (glew LINK_PRIVATE -BASE:0x62AA0000) endif() # kill security checks which are dependent on stdlib target_compile_options (glew PRIVATE -GS-) target_compile_options (glew_s PRIVATE -GS-) # remove stdlib dependency target_link_libraries (glew LINK_PRIVATE -nodefaultlib -noentry) target_link_libraries (glew LINK_PRIVATE libvcruntime.lib) target_link_libraries (glew LINK_PRIVATE msvcrt.lib ) string(REGEX REPLACE "/RTC(su|[1su])" "" CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG}) elseif (WIN32 AND ((CMAKE_C_COMPILER_ID MATCHES "GNU") OR (CMAKE_C_COMPILER_ID MATCHES "Clang"))) # remove stdlib dependency on windows with GCC and Clang (for similar reasons # as to MSVC - to allow it to be used with any Windows compiler) target_compile_options (glew PRIVATE -fno-builtin -fno-stack-protector) target_compile_options (glew_s PRIVATE -fno-builtin -fno-stack-protector) target_link_libraries (glew LINK_PRIVATE -nostdlib) endif () if (BUILD_FRAMEWORK) set_target_properties(glew PROPERTIES FRAMEWORK TRUE FRAMEWORK_VERSION ${GLEW_VERSION} MACOSX_FRAMEWORK_IDENTIFIER net.sourceforge.glew MACOSX_FRAMEWORK_SHORT_VERSION_STRING ${GLEW_VERSION} MACOSX_FRAMEWORK_BUNDLE_VERSION ${GLEW_VERSION} XCODE_ATTRIBUTE_INSTALL_PATH "@rpath" PUBLIC_HEADER "${GLEW_PUBLIC_HEADERS_FILES}" OUTPUT_NAME GLEW ) endif() target_link_libraries (glew LINK_PUBLIC ${GLEW_LIBRARIES}) target_link_libraries (glew_s ${GLEW_LIBRARIES}) target_compile_definitions(glew_s INTERFACE "GLEW_STATIC") foreach(t glew glew_s) target_include_directories(${t} PUBLIC $) endforeach() set(targets_to_install "") if(BUILD_SHARED_LIBS) list(APPEND targets_to_install glew) else () list(APPEND targets_to_install glew_s) endif() install ( TARGETS ${targets_to_install} EXPORT glew-targets RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Runtime ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX} COMPONENT Runtime ) if (BUILD_UTILS) set (GLEWINFO_SRC_FILES ${GLEW_DIR}/src/glewinfo.c) if (WIN32) list (APPEND GLEWINFO_SRC_FILES ${GLEW_DIR}/build/glewinfo.rc) endif () add_executable (glewinfo ${GLEWINFO_SRC_FILES}) if(BUILD_SHARED_LIBS) target_link_libraries (glewinfo glew) else() target_link_libraries (glewinfo glew_s) endif() if (NOT WIN32) target_link_libraries(glewinfo ${X11_LIBRARIES}) endif () set (VISUALINFO_SRC_FILES ${GLEW_DIR}/src/visualinfo.c) if (WIN32) list (APPEND VISUALINFO_SRC_FILES ${GLEW_DIR}/build/visualinfo.rc) endif () add_executable (visualinfo ${VISUALINFO_SRC_FILES}) if(BUILD_SHARED_LIBS) target_link_libraries (visualinfo glew) else() target_link_libraries (visualinfo glew_s) endif() if (NOT WIN32) target_link_libraries(visualinfo ${X11_LIBRARIES}) endif () install ( TARGETS glewinfo visualinfo DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime) endif () set (prefix ${CMAKE_INSTALL_PREFIX}) set (exec_prefix ${CMAKE_INSTALL_PREFIX}) set (libdir ${CMAKE_INSTALL_FULL_LIBDIR}) set (includedir ${CMAKE_INSTALL_FULL_INCLUDEDIR}) set (version ${GLEW_VERSION}) set (libname ${GLEW_LIB_NAME}) set (cflags) set (requireslib glu) # Mac OSX has no glu.pc unless optional X11/GLX is installed if (APPLE) set (requireslib) endif () configure_file (${GLEW_DIR}/glew.pc.in ${CMAKE_CURRENT_BINARY_DIR}/glew.pc @ONLY) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/glew.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig COMPONENT Development ) if(WIN32 AND MSVC AND (NOT MSVC_VERSION LESS 1600)) install( FILES $ DESTINATION ${CMAKE_INSTALL_LIBDIR} CONFIGURATIONS Debug RelWithDebInfo COMPONENT Runtime ) endif() install ( FILES ${GLEW_PUBLIC_HEADERS_FILES} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/GL COMPONENT Development) install(EXPORT glew-targets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/glew COMPONENT Development NAMESPACE GLEW::) install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/glew-config.cmake ${CMAKE_CURRENT_SOURCE_DIR}/CopyImportedTargetProperties.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/glew COMPONENT Development) if(NOT TARGET uninstall) configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake IMMEDIATE @ONLY) add_custom_target(uninstall COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake) endif() nigels-com-glew-285c35d/build/cmake/testbuild/0000775000175000017500000000000015135005167021407 5ustar alastairalastairnigels-com-glew-285c35d/build/cmake/testbuild/main.c0000664000175000017500000000121215135005167022473 0ustar alastairalastair#include #include #include #define S(x) SS(x) #define SS(x) #x int main(int argc, char* argv[]) { printf("GLEW CMake test, %s build\n", S(GLEW_CMAKE_TEST_CONFIG)); printf("-- linked to %s which is %s\n", S(GLEW_CMAKE_TEST_TARGET_FILE_NAME), S(GLEW_CMAKE_TEST_TARGET_TYPE)); const GLubyte* v = glewGetString(GLEW_VERSION); if(v) { printf("-- glewGetString(GLEW_VERSION) returns %s\n-- test passed.\n", v); return EXIT_SUCCESS; } else { printf("-- glewGetString(GLEW_VERSION) returns NULL\n-- test failed.\n"); return EXIT_FAILURE; } } nigels-com-glew-285c35d/build/cmake/testbuild/CMakeLists.txt0000664000175000017500000000134715135005167024154 0ustar alastairalastaircmake_minimum_required(VERSION 3.16) project(glew-cmake-test LANGUAGES C) find_package(GLEW REQUIRED CONFIG) find_package(GLEW REQUIRED CONFIG) # call twice to test multiple call find_package(OpenGL REQUIRED) add_executable(cmake-test main.c) set_target_properties(cmake-test PROPERTIES DEBUG_POSTFIX _d) target_link_libraries(cmake-test PRIVATE GLEW::GLEW ${OPENGL_LIBRARIES}) target_include_directories(cmake-test PRIVATE ${OPENGL_INCLUDE_DIR}) target_compile_definitions(cmake-test PRIVATE -DGLEW_CMAKE_TEST_CONFIG=$ -DGLEW_CMAKE_TEST_TARGET_FILE_NAME=$ -DGLEW_CMAKE_TEST_TARGET_TYPE=$ ) install(TARGETS cmake-test DESTINATION bin COMPONENT Runtime) nigels-com-glew-285c35d/build/cmake/glew-config.cmake0000664000175000017500000000435615135005167022623 0ustar alastairalastair# This config-module creates the following import libraries: # # - GLEW::glew shared lib # - GLEW::glew_s static lib # # Additionally GLEW::GLEW will be created as an # copy of either the shared (default) or the static libs. # # Dependending on the setting of BUILD_SHARED_LIBS at GLEW build time # either the static or shared versions may not be available. # # Set GLEW_USE_STATIC_LIBS to OFF or ON to force using the shared # or static lib for GLEW::GLEW # include(${CMAKE_CURRENT_LIST_DIR}/glew-targets.cmake) include(${CMAKE_CURRENT_LIST_DIR}/CopyImportedTargetProperties.cmake) # decide which import library (glew/glew_s) # needs to be copied to GLEW::GLEW set(_glew_target_postfix "") set(_glew_target_type SHARED) if(DEFINED GLEW_USE_STATIC_LIBS) # if defined, use only static or shared if(GLEW_USE_STATIC_LIBS) set(_glew_target_postfix "_s") endif() # else use static only if no shared elseif(NOT TARGET GLEW::glew AND TARGET GLEW::glew_s) set(_glew_target_postfix "_s") endif() if(_glew_target_postfix STREQUAL "") set(_glew_target_type SHARED) else() set(_glew_target_type STATIC) endif() # CMake doesn't allow creating ALIAS lib for an IMPORTED lib # so create imported ones and copy the properties foreach(_glew_target glew) set(_glew_src_target "GLEW::${_glew_target}${_glew_target_postfix}") string(TOUPPER "GLEW::${_glew_target}" _glew_dest_target) if(TARGET ${_glew_dest_target}) get_target_property(_glew_previous_src_target ${_glew_dest_target} _GLEW_SRC_TARGET) if(NOT _glew_previous_src_target STREQUAL _glew_src_target) message(FATAL_ERROR "find_package(GLEW) was called the second time with " "different GLEW_USE_STATIC_LIBS setting. Previously, " "`glew-config.cmake` created ${_glew_dest_target} as a copy of " "${_glew_previous_src_target}. Now it attempted to copy it from " "${_glew_src_target}. ") endif() else() add_library(${_glew_dest_target} ${_glew_target_type} IMPORTED) # message(STATUS "add_library(${_glew_dest_target} ${_glew_target_type} IMPORTED)") copy_imported_target_properties(${_glew_src_target} ${_glew_dest_target}) set_target_properties(${_glew_dest_target} PROPERTIES _GLEW_SRC_TARGET ${_glew_src_target}) endif() endforeach() nigels-com-glew-285c35d/build/cmake/CopyImportedTargetProperties.cmake0000664000175000017500000000616515135005167026264 0ustar alastairalastair#.rst: # CopyImportedTargetProperties # -------------------------- # # Copies the `INTERFACE*` and `IMPORTED*` properties from a target # to another one. # This function can be used to duplicate an `IMPORTED` or an `ALIAS` library # with a different name since ``add_library(... ALIAS ...)`` does not work # for those targets. # # :: # # copy_imported_target_properties( ) # # The function copies all the `INTERFACE*` and `IMPORTED*` target # properties from `` to ``. # # The function uses the `IMPORTED_CONFIGURATIONS` property to determine # which configuration-dependent properties should be copied # (`IMPORTED_LOCATION_`, etc...) # # Example: # # Internally the CMake project of ZLIB builds the ``zlib`` and # ``zlibstatic`` targets which can be exported in the ``ZLIB::`` namespace # with the ``install(EXPORT ...)`` command. # # The config-module will then create the import libraries ``ZLIB::zlib`` and # ``ZLIB::zlibstatic``. To use ``ZLIB::zlibstatic`` under the standard # ``ZLIB::ZLIB`` name we need to create the ``ZLIB::ZLIB`` imported library # and copy the appropriate properties: # # add_library(ZLIB::ZLIB STATIC IMPORTED) # copy_imported_target_properties(ZLIB::zlibstatic ZLIB::ZLIB) # function(copy_imported_target_properties src_target dest_target) set(config_dependent_props IMPORTED_IMPLIB IMPORTED_LINK_DEPENDENT_LIBRARIES IMPORTED_LINK_INTERFACE_LANGUAGES IMPORTED_LINK_INTERFACE_LIBRARIES IMPORTED_LINK_INTERFACE_MULTIPLICITY IMPORTED_LOCATION IMPORTED_NO_SONAME IMPORTED_SONAME ) # copy configuration-independent properties foreach(prop ${config_dependent_props} IMPORTED_CONFIGURATIONS INTERFACE_AUTOUIC_OPTIONS INTERFACE_COMPILE_DEFINITIONS INTERFACE_COMPILE_FEATURES INTERFACE_COMPILE_OPTIONS INTERFACE_INCLUDE_DIRECTORIES INTERFACE_LINK_LIBRARIES INTERFACE_POSITION_INDEPENDENT_CODE INTERFACE_SOURCES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES ) get_property(is_set TARGET ${src_target} PROPERTY ${prop} SET) if(is_set) get_target_property(v ${src_target} ${prop}) set_target_properties(${dest_target} PROPERTIES ${prop} "${v}") # message(STATUS "set_target_properties(${dest_target} PROPERTIES ${prop} ${v})") endif() endforeach() # copy configuration-dependent properties get_target_property(imported_configs ${src_target} IMPORTED_CONFIGURATIONS) foreach(config ${imported_configs}) foreach(prop_prefix ${config_dependent_props}) set(prop ${prop_prefix}_${config}) get_property(is_set TARGET ${src_target} PROPERTY ${prop} SET) if(is_set) get_target_property(v ${src_target} ${prop}) set_target_properties(${dest_target} PROPERTIES ${prop} "${v}") # message(STATUS "set_target_properties(${dest_target} PROPERTIES ${prop} ${v})") endif() endforeach() endforeach() endfunction() nigels-com-glew-285c35d/build/vc6/0000775000175000017500000000000015135005167017026 5ustar alastairalastairnigels-com-glew-285c35d/build/vc6/glew.dsw0000664000175000017500000000244015135005167020503 0ustar alastairalastairMicrosoft Developer Studio Workspace File, Format Version 6.00 # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! ############################################################################### Project: "glew_shared"=.\glew_shared.dsp - Package Owner=<4> Package=<5> {{{ }}} Package=<4> {{{ }}} ############################################################################### Project: "glew_static"=.\glew_static.dsp - Package Owner=<4> Package=<5> {{{ }}} Package=<4> {{{ }}} ############################################################################### Project: "glewinfo"=.\glewinfo.dsp - Package Owner=<4> Package=<5> {{{ }}} Package=<4> {{{ Begin Project Dependency Project_Dep_Name glew_static End Project Dependency }}} ############################################################################### Project: "visualinfo"=.\visualinfo.dsp - Package Owner=<4> Package=<5> {{{ }}} Package=<4> {{{ Begin Project Dependency Project_Dep_Name glew_static End Project Dependency }}} ############################################################################### Global: Package=<5> {{{ }}} Package=<3> {{{ }}} ############################################################################### nigels-com-glew-285c35d/build/vc6/visualinfo.dsp0000664000175000017500000001014715135005167021720 0ustar alastairalastair# Microsoft Developer Studio Project File - Name="visualinfo" - Package Owner=<4> # Microsoft Developer Studio Generated Build File, Format Version 6.00 # ** DO NOT EDIT ** # TARGTYPE "Win32 (x86) Console Application" 0x0103 CFG=visualinfo - Win32 Debug MX !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE !MESSAGE NMAKE /f "visualinfo.mak". !MESSAGE !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE !MESSAGE NMAKE /f "visualinfo.mak" CFG="visualinfo - Win32 Debug MX" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE !MESSAGE "visualinfo - Win32 Release" (based on "Win32 (x86) Console Application") !MESSAGE "visualinfo - Win32 Debug" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project # PROP AllowPerConfigDependencies 0 # PROP Scc_ProjName "" # PROP Scc_LocalPath "" CPP=cl.exe RSC=rc.exe !IF "$(CFG)" == "visualinfo - Win32 Release" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 # PROP BASE Output_Dir "Release" # PROP BASE Intermediate_Dir "Release" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 0 # PROP Output_Dir "../../bin" # PROP Intermediate_Dir "static/release" # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c # ADD CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /c # ADD BASE RSC /l 0x409 /d "NDEBUG" # ADD RSC /l 0x409 /d "NDEBUG" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 # ADD LINK32 ../../lib/glew32s.lib glu32.lib opengl32.lib gdi32.lib user32.lib kernel32.lib /nologo /subsystem:console /machine:I386 !ELSEIF "$(CFG)" == "visualinfo - Win32 Debug" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 # PROP BASE Output_Dir "Debug" # PROP BASE Intermediate_Dir "Debug" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 1 # PROP Output_Dir "../../bin" # PROP Intermediate_Dir "static/debug" # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c # ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRA_LEAN" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /GZ /c # ADD BASE RSC /l 0x409 /d "_DEBUG" # ADD RSC /l 0x409 /d "_DEBUG" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept # ADD LINK32 ../../lib/glew32sd.lib glu32.lib opengl32.lib gdi32.lib user32.lib kernel32.lib /nologo /subsystem:console /incremental:no /pdb:"static/debug/visualinfod.pdb" /debug /machine:I386 /out:"../../bin/visualinfod.exe" /pdbtype:sept # SUBTRACT LINK32 /pdb:none !ENDIF # Begin Target # Name "visualinfo - Win32 Release" # Name "visualinfo - Win32 Debug" # Begin Group "Source Files" # PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" # Begin Source File SOURCE=..\..\src\visualinfo.c # End Source File # End Group # Begin Group "Resource Files" # PROP Default_Filter "" # Begin Source File SOURCE=..\visualinfo.rc # End Source File # End Group # End Target # End Project nigels-com-glew-285c35d/build/vc6/glewinfo.dsp0000664000175000017500000001003315135005167021345 0ustar alastairalastair# Microsoft Developer Studio Project File - Name="glewinfo" - Package Owner=<4> # Microsoft Developer Studio Generated Build File, Format Version 6.00 # ** DO NOT EDIT ** # TARGTYPE "Win32 (x86) Console Application" 0x0103 CFG=glewinfo - Win32 Debug MX !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE !MESSAGE NMAKE /f "glewinfo.mak". !MESSAGE !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE !MESSAGE NMAKE /f "glewinfo.mak" CFG="glewinfo - Win32 Debug MX" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE !MESSAGE "glewinfo - Win32 Release" (based on "Win32 (x86) Console Application") !MESSAGE "glewinfo - Win32 Debug" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project # PROP AllowPerConfigDependencies 0 # PROP Scc_ProjName "" # PROP Scc_LocalPath "" CPP=cl.exe RSC=rc.exe !IF "$(CFG)" == "glewinfo - Win32 Release" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 # PROP BASE Output_Dir "Release" # PROP BASE Intermediate_Dir "Release" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 0 # PROP Output_Dir "../../bin" # PROP Intermediate_Dir "static/release" # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c # ADD CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /c # ADD BASE RSC /l 0x409 /d "NDEBUG" # ADD RSC /l 0x409 /d "NDEBUG" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 # ADD LINK32 ../../lib/glew32s.lib opengl32.lib gdi32.lib user32.lib /nologo /subsystem:console /machine:I386 !ELSEIF "$(CFG)" == "glewinfo - Win32 Debug" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 # PROP BASE Output_Dir "Debug" # PROP BASE Intermediate_Dir "Debug" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 1 # PROP Output_Dir "../../bin" # PROP Intermediate_Dir "static/debug" # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c # ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRA_LEAN" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /GZ /c # ADD BASE RSC /l 0x409 /d "_DEBUG" # ADD RSC /l 0x409 /d "_DEBUG" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept # ADD LINK32 ../../lib/glew32sd.lib opengl32.lib gdi32.lib user32.lib /nologo /subsystem:console /incremental:no /pdb:"static/debug/glewinfod.pdb" /debug /machine:I386 /out:"../../bin/glewinfod.exe" /pdbtype:sept # SUBTRACT LINK32 /pdb:none !ENDIF # Begin Target # Name "glewinfo - Win32 Release" # Name "glewinfo - Win32 Debug" # Begin Group "Source Files" # PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" # Begin Source File SOURCE=..\..\src\glewinfo.c # End Source File # End Group # Begin Group "Resource Files" # PROP Default_Filter "" # Begin Source File SOURCE=..\glewinfo.rc # End Source File # End Group # End Target # End Project nigels-com-glew-285c35d/build/vc6/glew_shared.dsp0000664000175000017500000001032515135005167022023 0ustar alastairalastair# Microsoft Developer Studio Project File - Name="glew_shared" - Package Owner=<4> # Microsoft Developer Studio Generated Build File, Format Version 6.00 # ** DO NOT EDIT ** # TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 CFG=glew_shared - Win32 Debug !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE !MESSAGE NMAKE /f "glew_shared.mak". !MESSAGE !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE !MESSAGE NMAKE /f "glew_shared.mak" CFG="glew_shared - Win32 Debug MX" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE !MESSAGE "glew_shared - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "glew_shared - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE # Begin Project # PROP AllowPerConfigDependencies 0 # PROP Scc_ProjName "" # PROP Scc_LocalPath "" CPP=cl.exe MTL=midl.exe RSC=rc.exe !IF "$(CFG)" == "glew_shared - Win32 Release" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 # PROP BASE Output_Dir "Release" # PROP BASE Intermediate_Dir "Release" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 0 # PROP Output_Dir "../../lib" # PROP Intermediate_Dir "shared/release" # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GLEW_EXPORTS" /YX /FD /c /GS- # ADD CPP /nologo /W3 /O2 /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_BUILD" /YX /FD /c /GS- # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD BASE RSC /l 0x409 /d "NDEBUG" # ADD RSC /l 0x409 /d "NDEBUG" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 # ADD LINK32 opengl32.lib /nologo /dll /pdb:none /machine:I386 /out:"../../bin/glew32.dll" /ignore:4089 # ADD LINK32 /base:0x62AA0000 /nodefaultlib /noentry !ELSEIF "$(CFG)" == "glew_shared - Win32 Debug" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 # PROP BASE Output_Dir "Debug" # PROP BASE Intermediate_Dir "Debug" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 1 # PROP Output_Dir "../../lib" # PROP Intermediate_Dir "shared/debug" # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GLEW_EXPORTS" /YX /FD /GZ /c /GS- # ADD CPP /nologo /MDd /W3 /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_BUILD" /YX /FD /GZ /c /GS- # ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32 # ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32 # ADD BASE RSC /l 0x409 /d "_DEBUG" # ADD RSC /l 0x409 /d "_DEBUG" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept # ADD LINK32 opengl32.lib /nologo /dll /incremental:no /debug /machine:I386 /out:"../../bin/glew32d.dll" /pdbtype:sept # SUBTRACT LINK32 /pdb:none # ADD LINK32 /base:0x62AA0000 !ENDIF # Begin Target # Name "glew_shared - Win32 Release" # Name "glew_shared - Win32 Debug" # Begin Group "Source Files" # PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" # Begin Source File SOURCE=..\..\src\glew.c # End Source File # End Group # Begin Group "Header Files" # PROP Default_Filter "h;hpp;hxx;hm;inl" # Begin Source File SOURCE=..\..\include\GL\glew.h # End Source File # Begin Source File SOURCE=..\..\include\GL\wglew.h # End Source File # End Group # Begin Group "Resource Files" # PROP Default_Filter "" # Begin Source File SOURCE=..\glew.rc # End Source File # End Group # End Target # End Project nigels-com-glew-285c35d/build/vc6/glew_static.dsp0000664000175000017500000000657215135005167022055 0ustar alastairalastair# Microsoft Developer Studio Project File - Name="glew_static" - Package Owner=<4> # Microsoft Developer Studio Generated Build File, Format Version 6.00 # ** DO NOT EDIT ** # TARGTYPE "Win32 (x86) Static Library" 0x0104 CFG=glew_static - Win32 Debug !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE !MESSAGE NMAKE /f "glew_static.mak". !MESSAGE !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE !MESSAGE NMAKE /f "glew_static.mak" CFG="glew_static - Win32 Debug MX" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE !MESSAGE "glew_static - Win32 Release" (based on "Win32 (x86) Static Library") !MESSAGE "glew_static - Win32 Debug" (based on "Win32 (x86) Static Library") !MESSAGE # Begin Project # PROP AllowPerConfigDependencies 0 # PROP Scc_ProjName "" # PROP Scc_LocalPath "" CPP=cl.exe RSC=rc.exe !IF "$(CFG)" == "glew_static - Win32 Release" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 # PROP BASE Output_Dir "Release" # PROP BASE Intermediate_Dir "Release" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 0 # PROP Output_Dir "../../lib" # PROP Intermediate_Dir "static/release" # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c /GS- # ADD CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /YX /FD /c /GS- # ADD BASE RSC /l 0x409 /d "NDEBUG" # ADD RSC /l 0x409 /d "NDEBUG" /d "GLEW_STATIC" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo # ADD LIB32 /nologo /out:"../../lib/glew32s.lib" !ELSEIF "$(CFG)" == "glew_static - Win32 Debug" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 # PROP BASE Output_Dir "Debug" # PROP BASE Intermediate_Dir "Debug" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 1 # PROP Output_Dir "../../lib" # PROP Intermediate_Dir "static/debug" # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c # ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /YX /FD /GZ /c # ADD BASE RSC /l 0x409 /d "_DEBUG" # ADD RSC /l 0x409 /d "_DEBUG" /d "GLEW_STATIC" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo # ADD LIB32 /nologo /out:"../../lib/glew32sd.lib" !ENDIF # Begin Target # Name "glew_static - Win32 Release" # Name "glew_static - Win32 Debug" # Begin Group "Source Files" # PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" # Begin Source File SOURCE=..\..\src\glew.c # End Source File # End Group # Begin Group "Header Files" # PROP Default_Filter "h;hpp;hxx;hm;inl" # Begin Source File SOURCE=..\..\include\GL\glew.h # End Source File # Begin Source File SOURCE=..\..\include\GL\wglew.h # End Source File # End Group # Begin Group "Resources" # PROP Default_Filter "" # Begin Source File SOURCE=..\glew.rc # End Source File # End Group # End Target # End Project nigels-com-glew-285c35d/build/vc6/Makefile0000664000175000017500000000071715135005167020473 0ustar alastairalastairMSDEV := msdev RM := rm -rf default: $(MSDEV) glew.dsw /make \ "glew_static - Win32 Release" \ "glew_shared - Win32 Release" \ "glewinfo - Win32 Release" \ "visualinfo - Win32 Release" /build debug: $(MSDEV) glew.dsw /make \ "glew_static - Win32 Debug" \ "glew_shared - Win32 Debug" \ "glewinfo - Win32 Debug" \ "visualinfo - Win32 Debug" /build clean: $(MSDEV) glew.dsw /make all /clean $(RM) static shared *.plg *.ncb *.opt nigels-com-glew-285c35d/README.md0000664000175000017500000002277715135005167016527 0ustar alastairalastair# GLEW - The OpenGL Extension Wrangler Library The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform. OpenGL core and extension functionality is exposed in a single header file. GLEW has been tested on a variety of operating systems, including Windows, Linux, Mac OS X, FreeBSD, Irix, and Solaris. [![](http://glew.sourceforge.net/glew.png)](https://github.com/nigels-com/glew) https://github.com/nigels-com/glew [![GitHub Stars](https://img.shields.io/github/stars/nigels-com/glew)](https://github.com/nigels-com/glew) ![Contributors](https://img.shields.io/github/contributors/nigels-com/glew) [![Commits since release](https://img.shields.io/github/commits-since/nigels-com/glew/latest)](https://github.com/nigels-com/glew/commits/master/) [![Issues](https://img.shields.io/github/issues/nigels-com/glew)](https://github.com/nigels-com/glew/issues) [![Pull Requests](https://img.shields.io/github/issues-pr/nigels-com/glew)](https://github.com/nigels-com/glew/pulls) [![GitHub Downloads](https://img.shields.io/github/downloads/nigels-com/glew/latest/total)](https://github.com/nigels-com/glew/releases) [![SourceForge Downloads](https://img.shields.io/sourceforge/dm/glew.svg)](https://sourceforge.net/projects/glew/files/latest/download) [![Health](https://codebuild.ap-southeast-2.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiZ0cxMFNORFBPTGQ5Z1MyRUsxRnU5V1ZyOUNUWmZZRFJwNWdBNng5MnNtdFFObGNsTEJkQkxZa0lHYmtMNEZRREZaZmdvMUh2bDMxVjhFc3c2L29odFQ4PSIsIml2UGFyYW1ldGVyU3BlYyI6InhLVlFqWXVaMEZRVFh6c1QiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=master)](https://ap-southeast-2.codebuild.aws.amazon.com/project/eyJlbmNyeXB0ZWREYXRhIjoiK3RLWndGOVVkMWthbXRQZCtVTTNOQ0w2dEpxakZ1cVBTNDZ1UldGODdqUERSdkx0U21Nd0RFaGhQL1kycVlmNzh2OXpEYnRKV3hXTVJJdjUvVStCbTl0dkliZm5jRTFsc0VBPSIsIml2UGFyYW1ldGVyU3BlYyI6ImZ0ekRoMkNjaU0rRUt5K2UiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D) ## Table of Contents * [Downloads](#downloads) * [Build](#build) * [Linux and Mac](#linux-and-mac) * [Using GNU Make](#using-gnu-make) * [Install build tools](#install-build-tools) * [Build](#build-1) * [Linux EGL](#linux-egl) * [Linux OSMesa](#linux-osmesa) * [Linux mingw-w64](#linux-mingw-w64) * [Using cmake](#using-cmake) * [Install build tools](#install-build-tools-1) * [Build](#build-2) * [Windows](#windows) * [Visual Studio](#visual-studio) * [MSYS/Mingw](#msysmingw) * [MSYS2/Mingw-w64](#msys2mingw-w64) * [glewinfo](#glewinfo) * [Code Generation](#code-generation) * [Authors](#authors) * [Contributions](#contributions) * [Copyright and Licensing](#copyright-and-licensing) ## Downloads Current release is [2.3.0](https://github.com/nigels-com/glew/releases/tag/glew-2.3.0). [(Change Log)](http://glew.sourceforge.net/log.html) Sources available as [ZIP](https://github.com/nigels-com/glew/releases/download/glew-2.3.0/glew-2.3.0.zip) or [TGZ](https://github.com/nigels-com/glew/releases/download/glew-2.3.0/glew-2.3.0.tgz). Windows binaries for [32-bit and 64-bit](https://github.com/nigels-com/glew/releases/download/glew-2.3.0/glew-2.3.0-win32.zip). ## Build It is highly recommended to build from a tgz or zip release snapshot. The code generation workflow is a complex brew of gnu make, perl and python, that works best on Linux or Mac. The code generation is known to work on Windows using [MSYS2](https://www.msys2.org/). For most end-users of GLEW the official releases are the best choice, with first class support. ### Linux and Mac #### Using GNU Make GNU make is the primary build system for GLEW, historically. It includes targets for building the sources and headers, for maintenance purposes. ##### Install build tools Debian/Ubuntu/Mint: `$ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev` RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel` FreeBSD: `# pkg install xorg lang/gcc git cmake gmake bash python perl5` ##### Build $ make $ sudo make install $ make clean Targets: `all, glew.lib (sub-targets: glew.lib.shared, glew.lib.static), glew.bin, clean, install, uninstall` Variables: `SYSTEM=linux-clang, GLEW_DEST=/usr/local, STRIP=` _Note: you may need to call `make` in the **auto** folder first_ ##### Linux EGL $ sudo apt install libegl1-mesa-dev $ make SYSTEM=linux-egl ##### Linux OSMesa $ sudo apt install libosmesa-dev $ make SYSTEM=linux-osmesa ##### Linux mingw-w64 $ sudo apt install mingw-w64 $ make SYSTEM=linux-mingw32 $ make SYSTEM=linux-mingw64 #### Using cmake The cmake build is mostly contributor maintained. Due to the multitude of use cases this is maintained on a _best effort_ basis. Pull requests are welcome. *CMake 3.16 or higher is required.* ##### Install build tools Debian/Ubuntu/Mint: `$ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev cmake git` RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel cmake git` ##### Build $ cd build $ cmake ./cmake $ make -j4 | Target | Description | | ---------- | ----------- | | glew | Build the glew shared library. | | glew_s | Build the glew static library. | | glewinfo | Build the `glewinfo` executable (requires `BUILD_UTILS` to be `ON`). | | visualinfo | Build the `visualinfo` executable (requires `BUILD_UTILS` to be `ON`). | | install | Install all enabled targets into `CMAKE_INSTALL_PREFIX`. | | clean | Clean up build artifacts. | | all | Build all enabled targets (default target). | | Variables | Description | | --------------- | ----------- | | BUILD_UTILS | Build the `glewinfo` and `visualinfo` executables. | | GLEW_REGAL | Build in Regal mode. | | GLEW_OSMESA | Build in off-screen Mesa mode. | | BUILD_FRAMEWORK | Build as MacOSX Framework. Setting `CMAKE_INSTALL_PREFIX` to `/Library/Frameworks` is recommended. | ### Windows #### Visual Studio Use the provided Visual Studio project file in build/vc15/ Projects for vc6, vc10, vc12 and vc14 are also provided #### MSYS/Mingw Available from [Mingw](http://www.mingw.org/) Requirements: bash, make, gcc $ mingw32-make $ mingw32-make install $ mingw32-make install.all Alternative toolchain: `SYSTEM=mingw-win32` #### MSYS2/Mingw-w64 Available from [Msys2](http://msys2.github.io/) and/or [Mingw-w64](http://mingw-w64.org/) Requirements: bash, make, gcc $ pacman -S gcc make mingw-w64-i686-gcc mingw-w64-x86_64-gcc $ make $ make install $ make install.all Alternative toolchain: `SYSTEM=msys, SYSTEM=msys-win32, SYSTEM=msys-win64` ## glewinfo `glewinfo` is a command-line tool useful for inspecting the capabilities of an OpenGL implementation and GLEW support for that. Please include `glewinfo.txt` with bug reports, as appropriate. --------------------------- GLEW Extension Info --------------------------- GLEW version 2.0.0 Reporting capabilities of pixelformat 3 Running on a Intel(R) HD Graphics 3000 from Intel OpenGL version 3.1.0 - Build 9.17.10.4229 is supported GL_VERSION_1_1: OK --------------- GL_VERSION_1_2: OK --------------- glCopyTexSubImage3D: OK glDrawRangeElements: OK glTexImage3D: OK glTexSubImage3D: OK ... ## Code Generation A Unix or Mac environment is needed for building GLEW from scratch to include new extensions, or customize the code generation. The extension data is regenerated from the top level source directory with: make extensions An alternative to generating the GLEW sources from scratch is to download a pre-generated (unsupported) snapshot: https://sourceforge.net/projects/glew/files/glew/snapshots/ ## Authors GLEW is currently maintained by [Nigel Stewart](https://github.com/nigels-com) with bug fixes, new OpenGL extension support and new releases. GLEW was developed by [Milan Ikits](http://www.cs.utah.edu/~ikits/) and [Marcelo Magallon](http://wwwvis.informatik.uni-stuttgart.de/~magallon/). Aaron Lefohn, Joe Kniss, and Chris Wyman were the first users and also assisted with the design and debugging process. The acronym GLEW originates from Aaron Lefohn. Pasi Kärkkäinen identified and fixed several problems with GLX and SDL. Nate Robins created the `wglinfo` utility, to which modifications were made by Michael Wimmer. ## Contributions GLEW welcomes community contributions. Typically these are co-ordinated via [Issues](https://github.com/nigels-com/glew/issues) or [Pull Requests](https://github.com/nigels-com/glew/pulls) in the GitHub web interface. Be sure to mention platform and compiler toolchain details when filing a bug report. The output of `glewinfo` can be quite useful for discussion also. Generally GLEW is usually released once a year, around the time of the Siggraph computer graphics conference. If you're not using the current release version of GLEW, be sure to check if the issue or bug is fixed there. ## Copyright and Licensing GLEW is originally derived from the EXTGL project by Lev Povalahev. The source code is licensed under the [Modified BSD License](http://glew.sourceforge.net/glew.txt), the [Mesa 3-D License](http://glew.sourceforge.net/mesa.txt) (MIT) and the [Khronos License](http://glew.sourceforge.net/khronos.txt) (MIT). The automatic code generation scripts are released under the [GNU GPL](http://glew.sourceforge.net/gpl.txt). nigels-com-glew-285c35d/.gitattributes0000664000175000017500000000023215135005167020121 0ustar alastairalastair* text eol=lf *.png binary *.pdf binary build/*/* text eol=crlf CMakeLists.txt text eol=lf build/cmake/* text eol=lf nigels-com-glew-285c35d/src/0000775000175000017500000000000015135005167016020 5ustar alastairalastairnigels-com-glew-285c35d/src/visualinfo.c0000664000175000017500000011644515135005167020356 0ustar alastairalastair/* ** visualinfo.c ** ** Copyright (C) Nate Robins, 1997 ** Michael Wimmer, 1999 ** Milan Ikits, 2002-2008 ** Nigel Stewart, 2008-2025 ** ** visualinfo is a small utility that displays all available visuals, ** aka. pixelformats, in an OpenGL system along with renderer version ** information. It shows a table of all the visuals that support OpenGL ** along with their capabilities. The format of the table is similar to ** that of glxinfo on Unix systems: ** ** visual ~= pixel format descriptor ** id = visual id (integer from 1 - max visuals) ** tp = type (wn: window, pb: pbuffer, wp: window & pbuffer, bm: bitmap) ** ac = acceleration (ge: generic, fu: full, no: none) ** fm = format (i: integer, f: float, c: color index) ** db = double buffer (y = yes) ** sw = swap method (x: exchange, c: copy, u: undefined) ** st = stereo (y = yes) ** sz = total # bits ** r = # bits of red ** g = # bits of green ** b = # bits of blue ** a = # bits of alpha ** axbf = # aux buffers ** dpth = # bits of depth ** stcl = # bits of stencil */ #include #include #include #include #if defined(GLEW_OSMESA) #define GLAPI extern #ifndef APIENTRY #define APIENTRY #endif #include #elif defined(GLEW_EGL) #include #elif defined(_WIN32) #include #elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX) #include #include #elif !defined(__HAIKU__) #include #endif typedef struct GLContextStruct { #if defined(GLEW_OSMESA) OSMesaContext ctx; #elif defined(GLEW_EGL) EGLContext ctx; #elif defined(_WIN32) HWND wnd; HDC dc; HGLRC rc; #elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX) CGLContextObj ctx, octx; #elif !defined(__HAIKU__) Display* dpy; XVisualInfo* vi; GLXContext ctx; Window wnd; Colormap cmap; #endif } GLContext; void InitContext (GLContext* ctx); GLboolean CreateContext (GLContext* ctx); void DestroyContext (GLContext* ctx); void VisualInfo (GLContext* ctx); void PrintExtensions (const char* s); GLboolean ParseArgs (int argc, char** argv); int showall = 0; int displaystdout = 0; int verbose = 0; int drawableonly = 0; char* display = NULL; int visual = -1; FILE* file = 0; int main (int argc, char** argv) { GLenum err; GLContext ctx; /* ---------------------------------------------------------------------- */ /* parse arguments */ if (GL_TRUE == ParseArgs(argc-1, argv+1)) { #if defined(_WIN32) fprintf(stderr, "Usage: visualinfo [-a] [-s] [-h] [-pf ]\n"); fprintf(stderr, " -a: show all visuals\n"); fprintf(stderr, " -s: display to stdout instead of visualinfo.txt\n"); fprintf(stderr, " -pf : use given pixelformat\n"); fprintf(stderr, " -h: this screen\n"); #else fprintf(stderr, "Usage: visualinfo [-h] [-display ] [-visual ]\n"); fprintf(stderr, " -h: this screen\n"); fprintf(stderr, " -display : use given display\n"); fprintf(stderr, " -visual : use given visual\n"); #endif return 1; } #if defined(GLEW_EGL) { fprintf(stderr, "Error [main]: EGL not supported by visualinfo.\n"); return 1; } #endif /* ---------------------------------------------------------------------- */ /* create OpenGL rendering context */ InitContext(&ctx); if (GL_TRUE == CreateContext(&ctx)) { fprintf(stderr, "Error: CreateContext failed\n"); DestroyContext(&ctx); return 1; } /* ---------------------------------------------------------------------- */ /* initialize GLEW */ glewExperimental = GL_TRUE; err = glewInit(); if (GLEW_OK != err) { fprintf(stderr, "Error [main]: glewInit failed: %s\n", glewGetErrorString(err)); DestroyContext(&ctx); return 1; } /* ---------------------------------------------------------------------- */ /* open file */ #if defined(_WIN32) if (!displaystdout) { #if defined(_MSC_VER) && (_MSC_VER >= 1400) if (fopen_s(&file, "visualinfo.txt", "w") != 0) file = stdout; #else file = fopen("visualinfo.txt", "w"); #endif } if (file == NULL) file = stdout; #else file = stdout; #endif /* ---------------------------------------------------------------------- */ /* output header information */ /* OpenGL extensions */ fprintf(file, "OpenGL vendor string: %s\n", glGetString(GL_VENDOR)); fprintf(file, "OpenGL renderer string: %s\n", glGetString(GL_RENDERER)); fprintf(file, "OpenGL version string: %s\n", glGetString(GL_VERSION)); fprintf(file, "OpenGL extensions (GL_): \n"); PrintExtensions((const char*)glGetString(GL_EXTENSIONS)); #ifndef GLEW_NO_GLU /* GLU extensions */ fprintf(file, "GLU version string: %s\n", gluGetString(GLU_VERSION)); fprintf(file, "GLU extensions (GLU_): \n"); PrintExtensions((const char*)gluGetString(GLU_EXTENSIONS)); #endif /* ---------------------------------------------------------------------- */ /* extensions string */ #if defined(GLEW_OSMESA) #elif defined(GLEW_EGL) #elif defined(_WIN32) /* WGL extensions */ if (WGLEW_ARB_extensions_string || WGLEW_EXT_extensions_string) { fprintf(file, "WGL extensions (WGL_): \n"); PrintExtensions(wglGetExtensionsStringARB ? (const char*)wglGetExtensionsStringARB(ctx.dc) : (const char*)wglGetExtensionsStringEXT()); } #elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX) #elif defined(__HAIKU__) /* TODO */ #else /* GLX extensions */ fprintf(file, "GLX extensions (GLX_): \n"); PrintExtensions(glXQueryExtensionsString(glXGetCurrentDisplay(), DefaultScreen(glXGetCurrentDisplay()))); #endif /* ---------------------------------------------------------------------- */ /* enumerate all the formats */ VisualInfo(&ctx); /* ---------------------------------------------------------------------- */ /* release resources */ DestroyContext(&ctx); if (file != stdout) fclose(file); return 0; } /* do the magic to separate all extensions with comma's, except for the last one that _may_ terminate in a space. */ void PrintExtensions (const char* s) { char t[80]; int i=0; char* p=0; t[79] = '\0'; while (*s) { t[i++] = *s; if(*s == ' ') { if (*(s+1) != '\0') { t[i-1] = ','; t[i] = ' '; p = &t[i++]; } else /* zoinks! last one terminated in a space! */ { t[i-1] = '\0'; } } if(i > 80 - 5) { *p = t[i] = '\0'; fprintf(file, " %s\n", t); p++; i = (int)strlen(p); #if defined(_MSC_VER) && (_MSC_VER >= 1400) strcpy_s(t, sizeof(t), p); #else strcpy(t, p); #endif } s++; } t[i] = '\0'; fprintf(file, " %s.\n", t); } /* ---------------------------------------------------------------------- */ #if defined(GLEW_OSMESA) || defined(GLEW_EGL) void VisualInfo (GLContext* ctx) { (void) ctx; /* not used */ } #elif defined(_WIN32) void VisualInfoARB (GLContext* ctx) { int attrib[32], value[32], n_attrib, n_pbuffer=0, n_float=0; int i, pf, maxpf; unsigned int c; /* to get pbuffer capable pixel formats */ attrib[0] = WGL_DRAW_TO_PBUFFER_ARB; attrib[1] = GL_TRUE; attrib[2] = 0; wglChoosePixelFormatARB(ctx->dc, attrib, 0, 1, &pf, &c); /* query number of pixel formats */ attrib[0] = WGL_NUMBER_PIXEL_FORMATS_ARB; wglGetPixelFormatAttribivARB(ctx->dc, 0, 0, 1, attrib, value); maxpf = value[0]; for (i=0; i<32; i++) value[i] = 0; attrib[0] = WGL_SUPPORT_OPENGL_ARB; attrib[1] = WGL_DRAW_TO_WINDOW_ARB; attrib[2] = WGL_DRAW_TO_BITMAP_ARB; attrib[3] = WGL_ACCELERATION_ARB; /* WGL_NO_ACCELERATION_ARB, WGL_GENERIC_ACCELERATION_ARB, WGL_FULL_ACCELERATION_ARB */ attrib[4] = WGL_SWAP_METHOD_ARB; /* WGL_SWAP_EXCHANGE_ARB, WGL_SWAP_COPY_ARB, WGL_SWAP_UNDEFINED_ARB */ attrib[5] = WGL_DOUBLE_BUFFER_ARB; attrib[6] = WGL_STEREO_ARB; attrib[7] = WGL_PIXEL_TYPE_ARB; /* WGL_TYPE_RGBA_ARB, WGL_TYPE_COLORINDEX_ARB, WGL_TYPE_RGBA_FLOAT_ATI (WGL_ATI_pixel_format_float) */ /* Color buffer information */ attrib[8] = WGL_COLOR_BITS_ARB; attrib[9] = WGL_RED_BITS_ARB; attrib[10] = WGL_GREEN_BITS_ARB; attrib[11] = WGL_BLUE_BITS_ARB; attrib[12] = WGL_ALPHA_BITS_ARB; /* Accumulation buffer information */ attrib[13] = WGL_ACCUM_BITS_ARB; attrib[14] = WGL_ACCUM_RED_BITS_ARB; attrib[15] = WGL_ACCUM_GREEN_BITS_ARB; attrib[16] = WGL_ACCUM_BLUE_BITS_ARB; attrib[17] = WGL_ACCUM_ALPHA_BITS_ARB; /* Depth, stencil, and aux buffer information */ attrib[18] = WGL_DEPTH_BITS_ARB; attrib[19] = WGL_STENCIL_BITS_ARB; attrib[20] = WGL_AUX_BUFFERS_ARB; /* Layer information */ attrib[21] = WGL_NUMBER_OVERLAYS_ARB; attrib[22] = WGL_NUMBER_UNDERLAYS_ARB; attrib[23] = WGL_SWAP_LAYER_BUFFERS_ARB; attrib[24] = WGL_SAMPLES_ARB; attrib[25] = WGL_SUPPORT_GDI_ARB; n_attrib = 26; if (WGLEW_ARB_pbuffer) { attrib[n_attrib] = WGL_DRAW_TO_PBUFFER_ARB; n_pbuffer = n_attrib; n_attrib++; } if (WGLEW_NV_float_buffer) { attrib[n_attrib] = WGL_FLOAT_COMPONENTS_NV; n_float = n_attrib; n_attrib++; } if (!verbose) { /* print table header */ fprintf(file, " +-----+-------------------------+-----------------+----------+-----------------+----------+\n"); fprintf(file, " | | visual | color | ax dp st | accum | layer |\n"); fprintf(file, " | id | tp ac gd fm db sw st ms | sz r g b a | bf th cl | sz r g b a | ov un sw |\n"); fprintf(file, " +-----+-------------------------+-----------------+----------+-----------------+----------+\n"); /* loop through all the pixel formats */ for(i = 1; i <= maxpf; i++) { wglGetPixelFormatAttribivARB(ctx->dc, i, 0, n_attrib, attrib, value); /* only describe this format if it supports OpenGL */ if (!value[0]) continue; /* by default show only fully accelerated window or pbuffer capable visuals */ if (!showall && ((value[2] && !value[1]) || (!WGLEW_ARB_pbuffer || !value[n_pbuffer]) || (value[3] != WGL_FULL_ACCELERATION_ARB))) continue; /* print out the information for this visual */ /* visual id */ fprintf(file, " |% 4d | ", i); /* visual type */ if (value[1]) { if (WGLEW_ARB_pbuffer && value[n_pbuffer]) fprintf(file, "wp "); else fprintf(file, "wn "); } else { if (value[2]) fprintf(file, "bm "); else if (WGLEW_ARB_pbuffer && value[n_pbuffer]) fprintf(file, "pb "); } /* acceleration */ fprintf(file, "%s ", value[3] == WGL_FULL_ACCELERATION_ARB ? "fu" : value[3] == WGL_GENERIC_ACCELERATION_ARB ? "ge" : value[3] == WGL_NO_ACCELERATION_ARB ? "no" : ". "); /* gdi support */ fprintf(file, " %c ", value[25] ? 'y' : '.'); /* format */ if (WGLEW_NV_float_buffer && value[n_float]) fprintf(file, " f "); else if (WGLEW_ATI_pixel_format_float && value[7] == WGL_TYPE_RGBA_FLOAT_ATI) fprintf(file, " f "); else if (value[7] == WGL_TYPE_RGBA_ARB) fprintf(file, " i "); else if (value[7] == WGL_TYPE_COLORINDEX_ARB) fprintf(file, " c "); else if (value[7] == WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT) fprintf(file," p "); else fprintf(file," ? "); /* double buffer */ fprintf(file, " %c ", value[5] ? 'y' : '.'); /* swap method */ if (value[4] == WGL_SWAP_EXCHANGE_ARB) fprintf(file, " x "); else if (value[4] == WGL_SWAP_COPY_ARB) fprintf(file, " c "); else if (value[4] == WGL_SWAP_UNDEFINED_ARB) fprintf(file, " . "); else fprintf(file, " . "); /* stereo */ fprintf(file, " %c ", value[6] ? 'y' : '.'); /* multisample */ if (value[24] > 0) fprintf(file, "%2d | ", value[24]); else fprintf(file, " . | "); /* color size */ if (value[8]) fprintf(file, "%3d ", value[8]); else fprintf(file, " . "); /* red */ if (value[9]) fprintf(file, "%2d ", value[9]); else fprintf(file, " . "); /* green */ if (value[10]) fprintf(file, "%2d ", value[10]); else fprintf(file, " . "); /* blue */ if (value[11]) fprintf(file, "%2d ", value[11]); else fprintf(file, " . "); /* alpha */ if (value[12]) fprintf(file, "%2d | ", value[12]); else fprintf(file, " . | "); /* aux buffers */ if (value[20]) fprintf(file, "%2d ", value[20]); else fprintf(file, " . "); /* depth */ if (value[18]) fprintf(file, "%2d ", value[18]); else fprintf(file, " . "); /* stencil */ if (value[19]) fprintf(file, "%2d | ", value[19]); else fprintf(file, " . | "); /* accum size */ if (value[13]) fprintf(file, "%3d ", value[13]); else fprintf(file, " . "); /* accum red */ if (value[14]) fprintf(file, "%2d ", value[14]); else fprintf(file, " . "); /* accum green */ if (value[15]) fprintf(file, "%2d ", value[15]); else fprintf(file, " . "); /* accum blue */ if (value[16]) fprintf(file, "%2d ", value[16]); else fprintf(file, " . "); /* accum alpha */ if (value[17]) fprintf(file, "%2d | ", value[17]); else fprintf(file, " . | "); /* overlay */ if (value[21]) fprintf(file, "%2d ", value[21]); else fprintf(file, " . "); /* underlay */ if (value[22]) fprintf(file, "%2d ", value[22]); else fprintf(file, " . "); /* layer swap */ if (value[23]) fprintf(file, "y "); else fprintf(file, " . "); fprintf(file, "|\n"); } /* print table footer */ fprintf(file, " +-----+-------------------------+-----------------+----------+-----------------+----------+\n"); fprintf(file, " | | visual | color | ax dp st | accum | layer |\n"); fprintf(file, " | id | tp ac gd fm db sw st ms | sz r g b a | bf th cl | sz r g b a | ov un sw |\n"); fprintf(file, " +-----+-------------------------+-----------------+----------+-----------------+----------+\n"); } else /* verbose */ { #if 0 fprintf(file, "\n"); /* loop through all the pixel formats */ for(i = 1; i <= maxpf; i++) { DescribePixelFormat(ctx->dc, i, sizeof(PIXELFORMATDESCRIPTOR), &pfd); /* only describe this format if it supports OpenGL */ if(!(pfd.dwFlags & PFD_SUPPORT_OPENGL) || (drawableonly && !(pfd.dwFlags & PFD_DRAW_TO_WINDOW))) continue; fprintf(file, "Visual ID: %2d depth=%d class=%s\n", i, pfd.cDepthBits, pfd.cColorBits <= 8 ? "PseudoColor" : "TrueColor"); fprintf(file, " bufferSize=%d level=%d renderType=%s doubleBuffer=%d stereo=%d\n", pfd.cColorBits, pfd.bReserved, pfd.iPixelType == PFD_TYPE_RGBA ? "rgba" : "ci", pfd.dwFlags & PFD_DOUBLEBUFFER, pfd.dwFlags & PFD_STEREO); fprintf(file, " generic=%d generic accelerated=%d\n", (pfd.dwFlags & PFD_GENERIC_FORMAT) == PFD_GENERIC_FORMAT, (pfd.dwFlags & PFD_GENERIC_ACCELERATED) == PFD_GENERIC_ACCELERATED); fprintf(file, " rgba: redSize=%d greenSize=%d blueSize=%d alphaSize=%d\n", pfd.cRedBits, pfd.cGreenBits, pfd.cBlueBits, pfd.cAlphaBits); fprintf(file, " auxBuffers=%d depthSize=%d stencilSize=%d\n", pfd.cAuxBuffers, pfd.cDepthBits, pfd.cStencilBits); fprintf(file, " accum: redSize=%d greenSize=%d blueSize=%d alphaSize=%d\n", pfd.cAccumRedBits, pfd.cAccumGreenBits, pfd.cAccumBlueBits, pfd.cAccumAlphaBits); fprintf(file, " multiSample=%d multisampleBuffers=%d\n", 0, 0); fprintf(file, " Opaque.\n"); } #endif } } void VisualInfoGDI (GLContext* ctx) { int i, maxpf; PIXELFORMATDESCRIPTOR pfd; /* calling DescribePixelFormat() with NULL pfd (!!!) return maximum number of pixel formats */ maxpf = DescribePixelFormat(ctx->dc, 1, 0, NULL); if (!verbose) { fprintf(file, "-----------------------------------------------------------------------------\n"); fprintf(file, " visual x bf lv rg d st ge ge r g b a ax dp st accum buffs ms \n"); fprintf(file, " id dep tp sp sz l ci b ro ne ac sz sz sz sz bf th cl sz r g b a ns b\n"); fprintf(file, "-----------------------------------------------------------------------------\n"); /* loop through all the pixel formats */ for(i = 1; i <= maxpf; i++) { DescribePixelFormat(ctx->dc, i, sizeof(PIXELFORMATDESCRIPTOR), &pfd); /* only describe this format if it supports OpenGL */ if(!(pfd.dwFlags & PFD_SUPPORT_OPENGL) || (drawableonly && (pfd.dwFlags & PFD_DRAW_TO_BITMAP))) continue; /* other criteria could be tested here for actual pixel format choosing in an application: for (...each pixel format...) { if (pfd.dwFlags & PFD_SUPPORT_OPENGL && pfd.dwFlags & PFD_DOUBLEBUFFER && pfd.cDepthBits >= 24 && pfd.cColorBits >= 24) { goto found; } } ... not found so exit ... found: ... found so use it ... */ /* print out the information for this pixel format */ fprintf(file, "0x%02x ", i); fprintf(file, "%3d ", pfd.cColorBits); if(pfd.dwFlags & PFD_DRAW_TO_WINDOW) fprintf(file, "wn "); else if(pfd.dwFlags & PFD_DRAW_TO_BITMAP) fprintf(file, "bm "); else fprintf(file, "pb "); /* should find transparent pixel from LAYERPLANEDESCRIPTOR */ fprintf(file, " . "); fprintf(file, "%3d ", pfd.cColorBits); /* bReserved field indicates number of over/underlays */ if(pfd.bReserved) fprintf(file, " %d ", pfd.bReserved); else fprintf(file, " . "); fprintf(file, " %c ", pfd.iPixelType == PFD_TYPE_RGBA ? 'r' : 'c'); fprintf(file, "%c ", pfd.dwFlags & PFD_DOUBLEBUFFER ? 'y' : '.'); fprintf(file, " %c ", pfd.dwFlags & PFD_STEREO ? 'y' : '.'); /* added: */ fprintf(file, " %c ", pfd.dwFlags & PFD_GENERIC_FORMAT ? 'y' : '.'); fprintf(file, " %c ", pfd.dwFlags & PFD_GENERIC_ACCELERATED ? 'y' : '.'); if(pfd.cRedBits && pfd.iPixelType == PFD_TYPE_RGBA) fprintf(file, "%2d ", pfd.cRedBits); else fprintf(file, " . "); if(pfd.cGreenBits && pfd.iPixelType == PFD_TYPE_RGBA) fprintf(file, "%2d ", pfd.cGreenBits); else fprintf(file, " . "); if(pfd.cBlueBits && pfd.iPixelType == PFD_TYPE_RGBA) fprintf(file, "%2d ", pfd.cBlueBits); else fprintf(file, " . "); if(pfd.cAlphaBits && pfd.iPixelType == PFD_TYPE_RGBA) fprintf(file, "%2d ", pfd.cAlphaBits); else fprintf(file, " . "); if(pfd.cAuxBuffers) fprintf(file, "%2d ", pfd.cAuxBuffers); else fprintf(file, " . "); if(pfd.cDepthBits) fprintf(file, "%2d ", pfd.cDepthBits); else fprintf(file, " . "); if(pfd.cStencilBits) fprintf(file, "%2d ", pfd.cStencilBits); else fprintf(file, " . "); if(pfd.cAccumBits) fprintf(file, "%3d ", pfd.cAccumBits); else fprintf(file, " . "); if(pfd.cAccumRedBits) fprintf(file, "%2d ", pfd.cAccumRedBits); else fprintf(file, " . "); if(pfd.cAccumGreenBits) fprintf(file, "%2d ", pfd.cAccumGreenBits); else fprintf(file, " . "); if(pfd.cAccumBlueBits) fprintf(file, "%2d ", pfd.cAccumBlueBits); else fprintf(file, " . "); if(pfd.cAccumAlphaBits) fprintf(file, "%2d ", pfd.cAccumAlphaBits); else fprintf(file, " . "); /* no multisample in win32 */ fprintf(file, " . .\n"); } /* print table footer */ fprintf(file, "-----------------------------------------------------------------------------\n"); fprintf(file, " visual x bf lv rg d st ge ge r g b a ax dp st accum buffs ms \n"); fprintf(file, " id dep tp sp sz l ci b ro ne ac sz sz sz sz bf th cl sz r g b a ns b\n"); fprintf(file, "-----------------------------------------------------------------------------\n"); } else /* verbose */ { fprintf(file, "\n"); /* loop through all the pixel formats */ for(i = 1; i <= maxpf; i++) { DescribePixelFormat(ctx->dc, i, sizeof(PIXELFORMATDESCRIPTOR), &pfd); /* only describe this format if it supports OpenGL */ if(!(pfd.dwFlags & PFD_SUPPORT_OPENGL) || (drawableonly && !(pfd.dwFlags & PFD_DRAW_TO_WINDOW))) continue; fprintf(file, "Visual ID: %2d depth=%d class=%s\n", i, pfd.cDepthBits, pfd.cColorBits <= 8 ? "PseudoColor" : "TrueColor"); fprintf(file, " bufferSize=%d level=%d renderType=%s doubleBuffer=%ld stereo=%ld\n", pfd.cColorBits, pfd.bReserved, pfd.iPixelType == PFD_TYPE_RGBA ? "rgba" : "ci", (long) (pfd.dwFlags & PFD_DOUBLEBUFFER), (long) (pfd.dwFlags & PFD_STEREO)); fprintf(file, " generic=%d generic accelerated=%d\n", (pfd.dwFlags & PFD_GENERIC_FORMAT) == PFD_GENERIC_FORMAT, (pfd.dwFlags & PFD_GENERIC_ACCELERATED) == PFD_GENERIC_ACCELERATED); fprintf(file, " rgba: redSize=%d greenSize=%d blueSize=%d alphaSize=%d\n", pfd.cRedBits, pfd.cGreenBits, pfd.cBlueBits, pfd.cAlphaBits); fprintf(file, " auxBuffers=%d depthSize=%d stencilSize=%d\n", pfd.cAuxBuffers, pfd.cDepthBits, pfd.cStencilBits); fprintf(file, " accum: redSize=%d greenSize=%d blueSize=%d alphaSize=%d\n", pfd.cAccumRedBits, pfd.cAccumGreenBits, pfd.cAccumBlueBits, pfd.cAccumAlphaBits); fprintf(file, " multiSample=%d multisampleBuffers=%d\n", 0, 0); fprintf(file, " Opaque.\n"); } } } void VisualInfo (GLContext* ctx) { if (WGLEW_ARB_pixel_format) VisualInfoARB(ctx); else VisualInfoGDI(ctx); } /* ---------------------------------------------------------------------- */ #elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX) void VisualInfo (__attribute__((unused)) GLContext* ctx) { /* int attrib[] = { AGL_RGBA, AGL_NONE }; AGLPixelFormat pf; GLint value; pf = aglChoosePixelFormat(NULL, 0, attrib); while (pf != NULL) { aglDescribePixelFormat(pf, GL_RGBA, &value); fprintf(stderr, "%d\n", value); pf = aglNextPixelFormat(pf); } */ } /* ---------------------------------------------------------------------- */ #elif defined(__HAIKU__) void VisualInfo (GLContext* ctx) { /* TODO */ } #else /* GLX */ void VisualInfo (GLContext* ctx) { int n_fbc; GLXFBConfig* fbc; int value, ret, i; fbc = glXGetFBConfigs(ctx->dpy, DefaultScreen(ctx->dpy), &n_fbc); if (fbc) { if (!verbose) { /* print table header */ fprintf(file, " +-----+-------------------------+-----------------+----------+-------------+-------+------+\n"); fprintf(file, " | | visual | color | ax dp st | accum | ms | cav |\n"); fprintf(file, " | id | tp xr cl fm db st lv xp | sz r g b a | bf th cl | r g b a | ns b | eat |\n"); fprintf(file, " +-----+-------------------------+-----------------+----------+-------------+-------+------+\n"); /* loop through all the fbcs */ for (i=0; idpy, fbc[i], GLX_FBCONFIG_ID, &value); if (ret != Success) { fprintf(file, "| ? |"); } else { fprintf(file, " |% 4d | ", value); } /* visual type */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_DRAWABLE_TYPE, &value); if (ret != Success) { fprintf(file, " ? "); } else { if (value & GLX_WINDOW_BIT) { if (value & GLX_PBUFFER_BIT) { fprintf(file, "wp "); } else { fprintf(file, "wn "); } } else { if (value & GLX_PBUFFER_BIT) { fprintf(file, "pb "); } else if (value & GLX_PIXMAP_BIT) { fprintf(file, "pm "); } else { fprintf(file, " ? "); } } } /* x renderable */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_X_RENDERABLE, &value); if (ret != Success) { fprintf(file, " ? "); } else { fprintf(file, value ? " y " : " n "); } /* class */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_X_VISUAL_TYPE, &value); if (ret != Success) { fprintf(file, " ? "); } else { if (GLX_TRUE_COLOR == value) fprintf(file, "tc "); else if (GLX_DIRECT_COLOR == value) fprintf(file, "dc "); else if (GLX_PSEUDO_COLOR == value) fprintf(file, "pc "); else if (GLX_STATIC_COLOR == value) fprintf(file, "sc "); else if (GLX_GRAY_SCALE == value) fprintf(file, "gs "); else if (GLX_STATIC_GRAY == value) fprintf(file, "sg "); else if (GLX_X_VISUAL_TYPE == value) fprintf(file, " . "); else fprintf(file, " ? "); } /* format */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_RENDER_TYPE, &value); if (ret != Success) { fprintf(file, " ? "); } else { if (GLXEW_NV_float_buffer) { int ret2, value2; ret2 = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_FLOAT_COMPONENTS_NV, &value2); if (Success == ret2 && GL_TRUE == value2) { fprintf(file, " f "); } else if (value & GLX_RGBA_BIT) fprintf(file, " i "); else if (value & GLX_COLOR_INDEX_BIT) fprintf(file, " c "); else fprintf(file, " ? "); } else { if (value & GLX_RGBA_FLOAT_ATI_BIT) fprintf(file, " f "); else if (value & GLX_RGBA_BIT) fprintf(file, " i "); else if (value & GLX_COLOR_INDEX_BIT) fprintf(file, " c "); else fprintf(file, " ? "); } } /* double buffer */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_DOUBLEBUFFER, &value); fprintf(file, " %c ", Success != ret ? '?' : (value ? 'y' : '.')); /* stereo */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_STEREO, &value); fprintf(file, " %c ", Success != ret ? '?' : (value ? 'y' : '.')); /* level */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_LEVEL, &value); if (Success != ret) { fprintf(file, " ? "); } else { fprintf(file, "%2d ", value); } /* transparency */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_TRANSPARENT_TYPE, &value); if (Success != ret) { fprintf(file, " ? | "); } else { if (GLX_TRANSPARENT_RGB == value) fprintf(file, " r | "); else if (GLX_TRANSPARENT_INDEX == value) fprintf(file, " i | "); else if (GLX_NONE == value) fprintf(file, " . | "); else fprintf(file, " ? | "); } /* color size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_BUFFER_SIZE, &value); if (Success != ret) { fprintf(file, " ? "); } else { if (value) fprintf(file, "%3d ", value); else fprintf(file, " . "); } /* red size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_RED_SIZE, &value); if (Success != ret) { fprintf(file, " ? "); } else { if (value) fprintf(file, "%2d ", value); else fprintf(file, " . "); } /* green size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_GREEN_SIZE, &value); if (Success != ret) { fprintf(file, " ? "); } else { if (value) fprintf(file, "%2d ", value); else fprintf(file, " . "); } /* blue size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_BLUE_SIZE, &value); if (Success != ret) { fprintf(file, " ? "); } else { if (value) fprintf(file, "%2d ", value); else fprintf(file, " . "); } /* alpha size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ALPHA_SIZE, &value); if (Success != ret) { fprintf(file, " ? | "); } else { if (value) fprintf(file, "%2d | ", value); else fprintf(file, " . | "); } /* aux buffers */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_AUX_BUFFERS, &value); if (Success != ret) { fprintf(file, " ? "); } else { if (value) fprintf(file, "%2d ", value); else fprintf(file, " . "); } /* depth size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_DEPTH_SIZE, &value); if (Success != ret) { fprintf(file, " ? "); } else { if (value) fprintf(file, "%2d ", value); else fprintf(file, " . "); } /* stencil size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_STENCIL_SIZE, &value); if (Success != ret) { fprintf(file, " ? | "); } else { if (value) fprintf(file, "%2d | ", value); else fprintf(file, " . | "); } /* accum red size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ACCUM_RED_SIZE, &value); if (Success != ret) { fprintf(file, " ? "); } else { if (value) fprintf(file, "%2d ", value); else fprintf(file, " . "); } /* accum green size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ACCUM_GREEN_SIZE, &value); if (Success != ret) { fprintf(file, " ? "); } else { if (value) fprintf(file, "%2d ", value); else fprintf(file, " . "); } /* accum blue size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ACCUM_BLUE_SIZE, &value); if (Success != ret) { fprintf(file, " ? "); } else { if (value) fprintf(file, "%2d ", value); else fprintf(file, " . "); } /* accum alpha size */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ACCUM_ALPHA_SIZE, &value); if (Success != ret) { fprintf(file, " ? | "); } else { if (value) fprintf(file, "%2d | ", value); else fprintf(file, " . | "); } /* multisample */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_SAMPLES, &value); if (Success != ret) { fprintf(file, " ? "); } else { fprintf(file, "%2d ", value); } ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_SAMPLE_BUFFERS, &value); if (Success != ret) { fprintf(file, " ? | "); } else { fprintf(file, "%2d | ", value); } /* caveat */ ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_CONFIG_CAVEAT, &value); if (Success != ret) { fprintf(file, "???? |"); } else { if (GLX_NONE == value) fprintf(file, "none |\n"); else if (GLX_SLOW_CONFIG == value) fprintf(file, "slow |\n"); else if (GLX_NON_CONFORMANT_CONFIG == value) fprintf(file, "ncft |\n"); else fprintf(file, "???? |\n"); } } /* print table footer */ fprintf(file, " +-----+-------------------------+-----------------+----------+-------------+-------+------+\n"); fprintf(file, " | id | tp xr cl fm db st lv xp | sz r g b a | bf th cl | r g b a | ns b | eat |\n"); fprintf(file, " | | visual | color | ax dp st | accum | ms | cav |\n"); fprintf(file, " +-----+-------------------------+-----------------+----------+-------------+-------+------+\n"); } } } #endif /* ------------------------------------------------------------------------ */ #if defined(GLEW_OSMESA) void InitContext (GLContext* ctx) { ctx->ctx = NULL; } static const GLint osmFormat = GL_UNSIGNED_BYTE; static const GLint osmWidth = 640; static const GLint osmHeight = 480; static GLubyte *osmPixels = NULL; GLboolean CreateContext (GLContext* ctx) { if (NULL == ctx) return GL_TRUE; ctx->ctx = OSMesaCreateContext(OSMESA_RGBA, NULL); if (NULL == ctx->ctx) return GL_TRUE; if (NULL == osmPixels) { osmPixels = (GLubyte *) calloc(osmWidth*osmHeight*4, 1); } if (!OSMesaMakeCurrent(ctx->ctx, osmPixels, osmFormat, osmWidth, osmHeight)) { return GL_TRUE; } return GL_FALSE; } void DestroyContext (GLContext* ctx) { if (NULL == ctx) return; if (NULL != ctx->ctx) OSMesaDestroyContext(ctx->ctx); } /* ------------------------------------------------------------------------ */ #elif defined(GLEW_EGL) void InitContext (GLContext* ctx) { ctx->ctx = NULL; } GLboolean CreateContext (GLContext* ctx) { (void) ctx; /* not used */ return GL_FALSE; } void DestroyContext (GLContext* ctx) { (void) ctx; /* not used */ } /* ------------------------------------------------------------------------ */ #elif defined(_WIN32) void InitContext (GLContext* ctx) { ctx->wnd = NULL; ctx->dc = NULL; ctx->rc = NULL; } GLboolean CreateContext (GLContext* ctx) { WNDCLASS wc; PIXELFORMATDESCRIPTOR pfd; /* check for input */ if (NULL == ctx) return GL_TRUE; /* register window class */ ZeroMemory(&wc, sizeof(WNDCLASS)); wc.hInstance = GetModuleHandle(NULL); wc.lpfnWndProc = DefWindowProc; wc.lpszClassName = "GLEW"; if (0 == RegisterClass(&wc)) return GL_TRUE; /* create window */ ctx->wnd = CreateWindow("GLEW", "GLEW", 0, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, GetModuleHandle(NULL), NULL); if (NULL == ctx->wnd) return GL_TRUE; /* get the device context */ ctx->dc = GetDC(ctx->wnd); if (NULL == ctx->dc) return GL_TRUE; /* find pixel format */ ZeroMemory(&pfd, sizeof(PIXELFORMATDESCRIPTOR)); if (visual == -1) /* find default */ { pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR); pfd.nVersion = 1; pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL; visual = ChoosePixelFormat(ctx->dc, &pfd); if (0 == visual) return GL_TRUE; } /* set the pixel format for the dc */ if (FALSE == SetPixelFormat(ctx->dc, visual, &pfd)) return GL_TRUE; /* create rendering context */ ctx->rc = wglCreateContext(ctx->dc); if (NULL == ctx->rc) return GL_TRUE; if (FALSE == wglMakeCurrent(ctx->dc, ctx->rc)) return GL_TRUE; return GL_FALSE; } void DestroyContext (GLContext* ctx) { if (NULL == ctx) return; if (NULL != ctx->rc) wglMakeCurrent(NULL, NULL); if (NULL != ctx->rc) wglDeleteContext(wglGetCurrentContext()); if (NULL != ctx->wnd && NULL != ctx->dc) ReleaseDC(ctx->wnd, ctx->dc); if (NULL != ctx->wnd) DestroyWindow(ctx->wnd); UnregisterClass("GLEW", GetModuleHandle(NULL)); } /* ------------------------------------------------------------------------ */ #elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX) void InitContext (GLContext* ctx) { ctx->ctx = NULL; ctx->octx = NULL; } GLboolean CreateContext (GLContext* ctx) { CGLPixelFormatAttribute attrib[] = { kCGLPFAAccelerated, 0 }; CGLPixelFormatObj pf; GLint npix; CGLError error; /* check input */ if (NULL == ctx) return GL_TRUE; error = CGLChoosePixelFormat(attrib, &pf, &npix); if (error) return GL_TRUE; error = CGLCreateContext(pf, NULL, &ctx->ctx); if (error) return GL_TRUE; CGLReleasePixelFormat(pf); ctx->octx = CGLGetCurrentContext(); error = CGLSetCurrentContext(ctx->ctx); if (error) return GL_TRUE; return GL_FALSE; } void DestroyContext (GLContext* ctx) { if (NULL == ctx) return; CGLSetCurrentContext(ctx->octx); if (NULL != ctx->ctx) CGLReleaseContext(ctx->ctx); } /* ------------------------------------------------------------------------ */ #elif defined(__HAIKU__) void InitContext (GLContext* ctx) { /* TODO */ } GLboolean CreateContext (GLContext* ctx) { /* TODO */ return GL_FALSE; } void DestroyContext (GLContext* ctx) { /* TODO */ } /* ------------------------------------------------------------------------ */ #else /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */ void InitContext (GLContext* ctx) { ctx->dpy = NULL; ctx->vi = NULL; ctx->ctx = NULL; ctx->wnd = 0; ctx->cmap = 0; } GLboolean CreateContext (GLContext* ctx) { int attrib[] = { GLX_RGBA, GLX_DOUBLEBUFFER, None }; int erb, evb; XSetWindowAttributes swa; /* check input */ if (NULL == ctx) return GL_TRUE; /* open display */ ctx->dpy = XOpenDisplay(display); if (NULL == ctx->dpy) return GL_TRUE; /* query for glx */ if (!glXQueryExtension(ctx->dpy, &erb, &evb)) return GL_TRUE; /* choose visual */ ctx->vi = glXChooseVisual(ctx->dpy, DefaultScreen(ctx->dpy), attrib); if (NULL == ctx->vi) return GL_TRUE; /* create context */ ctx->ctx = glXCreateContext(ctx->dpy, ctx->vi, None, True); if (NULL == ctx->ctx) return GL_TRUE; /* create window */ /*wnd = XCreateSimpleWindow(dpy, RootWindow(dpy, vi->screen), 0, 0, 1, 1, 1, 0, 0);*/ ctx->cmap = XCreateColormap(ctx->dpy, RootWindow(ctx->dpy, ctx->vi->screen), ctx->vi->visual, AllocNone); swa.border_pixel = 0; swa.colormap = ctx->cmap; ctx->wnd = XCreateWindow(ctx->dpy, RootWindow(ctx->dpy, ctx->vi->screen), 0, 0, 1, 1, 0, ctx->vi->depth, InputOutput, ctx->vi->visual, CWBorderPixel | CWColormap, &swa); /* make context current */ if (!glXMakeCurrent(ctx->dpy, ctx->wnd, ctx->ctx)) return GL_TRUE; return GL_FALSE; } void DestroyContext (GLContext* ctx) { if (NULL != ctx->dpy && NULL != ctx->ctx) glXDestroyContext(ctx->dpy, ctx->ctx); if (NULL != ctx->dpy && 0 != ctx->wnd) XDestroyWindow(ctx->dpy, ctx->wnd); if (NULL != ctx->dpy && 0 != ctx->cmap) XFreeColormap(ctx->dpy, ctx->cmap); if (NULL != ctx->vi) XFree(ctx->vi); if (NULL != ctx->dpy) XCloseDisplay(ctx->dpy); } #endif /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */ GLboolean ParseArgs (int argc, char** argv) { int p = 0; while (p < argc) { #if defined(_WIN32) if (!strcmp(argv[p], "-pf") || !strcmp(argv[p], "-pixelformat")) { if (++p >= argc) return GL_TRUE; display = NULL; visual = strtol(argv[p], NULL, 0); } else if (!strcmp(argv[p], "-a")) { showall = 1; } else if (!strcmp(argv[p], "-s")) { displaystdout = 1; } else if (!strcmp(argv[p], "-h")) { return GL_TRUE; } else return GL_TRUE; #else if (!strcmp(argv[p], "-display")) { if (++p >= argc) return GL_TRUE; display = argv[p]; } else if (!strcmp(argv[p], "-visual")) { if (++p >= argc) return GL_TRUE; visual = (int)strtol(argv[p], NULL, 0); } else if (!strcmp(argv[p], "-h")) { return GL_TRUE; } else return GL_TRUE; #endif p++; } return GL_FALSE; } nigels-com-glew-285c35d/cmake-testbuild.sh0000775000175000017500000000427615135005167020656 0ustar alastairalastair#!/bin/sh # This script tests the CMake build: # # - builds the main CMakeLists.txt # - builds and runs a small test app in a separate build tree so # the config-module is tested, too # # Options (environment variables): # # - The variable BUILD_SHARED_LIBS will be forwarded to the CMake project # that builds and installs the GLEW libraries. Set BUILD_SHARED_LIBS to # ON or OFF to install only static or shared libs. Leave it unset to # install both. # # Note: BUILD_SHARED_LIBS controls only what to install not what to build. # # - GLEW_USE_STATIC_LIBS will be forwarded to the test project that calls # `find_package` to find GLEW. Set GLEW_USE_STATIC LIBS to ON or OFF force # finding the shared or static versions of GLEW. Leave it unset to find # the shared or what is available. # # Examples: # # Build & install shared + static, find default (shared) # # ./cmake-testbuild.sh # # Build & install shared + static, find static # # GLEW_USE_STATIC_LIBS=ON ./cmake-testbuild.sh # # Install static only (still build both) # # BUILD_SHARED_LIBS=OFF ./cmake-testbuild.sh # set -ex rm -rf out/include rm -rf out/lib* rm -rf out/bin if [ -n "$BUILD_SHARED_LIBS" ]; then bsl=-DBUILD_SHARED_LIBS=$BUILD_SHARED_LIBS else bsl=-UBUILD_SHARED_LIBS fi if [ -n "$GLEW_USE_STATIC_LIBS" ]; then gusl=-DGLEW_USE_STATIC_LIBS=$GLEW_USE_STATIC_LIBS else gusl=-UGLEW_USE_STATIC_LIBS fi cmake -Hbuild/cmake -Bout/build/glew -DCMAKE_INSTALL_PREFIX=${PWD}/out -DCMAKE_BUILD_TYPE=Debug $bsl cmake --build out/build/glew --target install --config Debug cmake out/build/glew -DCMAKE_BUILD_TYPE=Release cmake --build out/build/glew --target install --config Release --clean-first cmake -Hbuild/cmake/testbuild -Bout/build/cmake-testbuild -DCMAKE_INSTALL_PREFIX=${PWD}/out -DCMAKE_PREFIX_PATH=${PWD}/out -DCMAKE_BUILD_TYPE=Debug $gusl cmake --build out/build/cmake-testbuild --target install --config Debug cmake out/build/cmake-testbuild -DCMAKE_BUILD_TYPE=Release cmake --build out/build/cmake-testbuild --target install --config Release --clean-first export LD_LIBRARY_PATH=${PWD}/out/lib:$LD_LIBRARY_PATH export DYLD_LIBRARY_PATH=${PWD}/out/lib:$DYLD_LIBRARY_PATH out/bin/cmake-test_d out/bin/cmake-test nigels-com-glew-285c35d/auto/0000775000175000017500000000000015135005167016201 5ustar alastairalastairnigels-com-glew-285c35d/auto/bin/0000775000175000017500000000000015135005167016751 5ustar alastairalastairnigels-com-glew-285c35d/auto/bin/parse_spec.pl0000775000175000017500000003312715135005167021443 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; sub compile_regex { my $regex = join('', @_); return qr/$regex/ } my @sections = ( "Name", "Name Strings?", "New Procedures and Functions", "New Tokens.*", # Optional (GL/WGL/GLX/...) suffix "Additions to Chapter.*", ); my %typemap = ( bitfield => "GLbitfield", boolean => "GLboolean", # fsck up in EXT_vertex_array Boolean => "GLboolean", byte => "GLbyte", clampd => "GLclampd", clampf => "GLclampf", double => "GLdouble", enum => "GLenum", # Intel fsck up Glenum => "GLenum", float => "GLfloat", half => "GLhalf", int => "GLint", short => "GLshort", sizei => "GLsizei", ubyte => "GLubyte", uint => "GLuint", ushort => "GLushort", DMbuffer => "void *", # Nvidia video output fsck up int64EXT => "GLint64EXT", uint64EXT=> "GLuint64EXT", # ARB VBO introduces these. sizeiptr => "GLsizeiptr", intptr => "GLintptr", sizeiptrARB => "GLsizeiptrARB", intptrARB => "GLintptrARB", # ARB shader objects introduces these, charARB is at least 8 bits, # handleARB is at least 32 bits charARB => "GLcharARB", handleARB => "GLhandleARB", char => "GLchar", # OpenGL 3.2 and GL_ARB_sync int64 => "GLint64", uint64 => "GLuint64", sync => "GLsync", # GL_EXT_EGL_image_storage eglImageOES => "GLeglImageOES", # AMD_debug_output DEBUGPROCAMD => "GLDEBUGPROCAMD", # ARB_debug_output DEBUGPROCARB => "GLDEBUGPROCARB", # KHR_debug DEBUGPROC => "GLDEBUGPROC", VULKANPROCNV => "GLVULKANPROCNV", vdpauSurfaceNV => "GLvdpauSurfaceNV", # GLX 1.3 defines new types which might not be available at compile time #GLXFBConfig => "void*", #GLXFBConfigID => "XID", #GLXContextID => "XID", #GLXWindow => "XID", #GLXPbuffer => "XID", # Weird stuff to some SGIX extension #GLXFBConfigSGIX => "void*", #GLXFBConfigIDSGIX => "XID", ); my %voidtypemap = ( void => "GLvoid", ); my %taboo_tokens = ( GL_ZERO => 1, ); # list of function definitions to be ignored, unless they are being defined in # the given spec. This is an ugly hack around the fact that people writing # spec files seem to shut down all brain activity while they are at this task. # # This will be moved to its own file eventually. # # (mem, 2003-03-19) my %fnc_ignore_list = ( "BindProgramARB" => "ARB_vertex_program", "ColorSubTableEXT" => "EXT_color_subtable", "DeleteProgramsARB" => "ARB_vertex_program", "GenProgramsARB" => "ARB_vertex_program", "GetProgramEnvParameterdvARB" => "ARB_vertex_program", "GetProgramEnvParameterfvARB" => "ARB_vertex_program", "GetProgramLocalParameterdvARB" => "ARB_vertex_program", "GetProgramLocalParameterfvARB" => "ARB_vertex_program", "GetProgramStringARB" => "ARB_vertex_program", "GetProgramivARB" => "ARB_vertex_program", "IsProgramARB" => "ARB_vertex_program", "ProgramEnvParameter4dARB" => "ARB_vertex_program", "ProgramEnvParameter4dvARB" => "ARB_vertex_program", "ProgramEnvParameter4fARB" => "ARB_vertex_program", "ProgramEnvParameter4fvARB" => "ARB_vertex_program", "ProgramLocalParameter4dARB" => "ARB_vertex_program", "ProgramLocalParameter4dvARB" => "ARB_vertex_program", "ProgramLocalParameter4fARB" => "ARB_vertex_program", "ProgramLocalParameter4fvARB" => "ARB_vertex_program", "ProgramStringARB" => "ARB_vertex_program", "EGLImageTargetTexture2DOES" => "OES_EGL_image", "FramebufferTextureOES" => "GL_OES_geometry_shader", "PatchParameteriOES" => "GL_OES_tessellation_shader", "PointSizePointerOES" => "GL_OES_point_size_array", "LockArraysEXT" => "EXT_compiled_vertex_array", "UnlockArraysEXT" => "EXT_compiled_vertex_array", "CoverageMaskNV" => "NV_coverage_sample", "CoverageOperationNV" => "NV_coverage_sample", "glXCreateContextAttribsARB" => "ARB_create_context_profile", "wglCreateContextAttribsARB" => "WGL_ARB_create_context_profile", ); my %regex = ( eofnc => qr/(?:\);?$|^$)/, # )$ | );$ | ^$ extname => qr/^[A-Z][A-Za-z0-9_]+$/, none => qr/^\(none\)$/, function => qr/^(.+) ([a-z][a-z0-9_]*) \((.*)\)$/i, prefix => qr/^(?:[aw]?gl|glX|egl)/, # gl | agl | wgl | glX tprefix => qr/^(?:[AW]?GL|GLX|EGL)_/, # GL_ | AGL_ | WGL_ | GLX_ section => compile_regex('^(', join('|', @sections), ')$'), # sections in spec token => qr/^([A-Z0-9][A-Z0-9_x]*):?\s+((?:0x)?[0-9A-Fa-f]+(u(ll)?)?)(|\s[^\?]*)$/, # define tokens types => compile_regex('\b(', join('|', keys %typemap), ')\b'), # var types voidtype => compile_regex('\b(', keys %voidtypemap, ')\b '), # void type ); # reshapes the the function declaration from multiline to single line form sub normalize_prototype { local $_ = join(" ", @_); s/\s+/ /g; # multiple whitespace -> single space s/\<.*\>//g; # remove from direct state access extension s/\<.*$//g; # remove incomplete from direct state access extension s#/\*.*\*/##g; # remove /* ... */ comments s/\s*\(\s*/ \(/; # exactly one space before ( and none after s/\s*\)\s*/\)/; # no space before or after ) s/\s*\*([a-zA-Z])/\* $1/; # "* identifier" s/\*wgl/\* wgl/; # "* wgl" s/\*glX/\* glX/; # "* glX" s/\.\.\./void/; # ... -> void s/;$//; # remove ; at the end of the line return $_; } # Ugly hack to work around the fact that functions are declared in more # than one spec file. sub ignore_function($$) { return exists($fnc_ignore_list{$_[0]}) && $fnc_ignore_list{$_[0]} ne $_[1] } sub parse_spec($) { my $filename = shift; my $extname = ""; my $vendortag = ""; my @extnames = (); my %functions = (); my %tokens = (); my $section = ""; my @fnc = (); my %proc = ( "Name" => sub { if (/^([a-z0-9]+)_([a-z0-9_]+)/i) { $extname = "$1_$2"; $vendortag = $1; } }, "Name Strings" => sub { # Add extension name to extension list # Initially use $extname if (none) specified if (/$regex{none}/) { $_ = $extname; } if (/$regex{extname}/) { # prefix with "GL_" if prefix not present s/^/GL_/ unless /$regex{tprefix}/o; # Add extension name to extension list push @extnames, $_; } }, "New Procedures and Functions" => sub { # if line matches end of function if (/$regex{eofnc}/) { # add line to function declaration push @fnc, $_; # if normalized version of function looks like a function if (normalize_prototype(@fnc) =~ /$regex{function}/) { # get return type, name, and arguments from regex my ($return, $name, $parms) = ($1, $2, $3); if (!ignore_function($name, $extname)) { # prefix with "gl" if prefix not present $name =~ s/^/gl/ unless $name =~ /$regex{prefix}/; # is this a pure GL function? if ($name =~ /^gl/ && $name !~ /^glX/) { # apply typemaps $return =~ s/$regex{types}/$typemap{$1}/og; $return =~ s/GLvoid/void/og; $return =~ s/void\*/void */og; $parms =~ s/$regex{types}/$typemap{$1}/og; $parms =~ s/$regex{voidtype}/$voidtypemap{$1}/og; $parms =~ s/GLvoid/void/og; $parms =~ s/ void\* / void */og; if ($parms eq "") { $parms = "void"; # NVX_progress_fence and others } } # add to functions hash $functions{$name} = { rtype => $return, parms => $parms, }; } } # reset function declaration @fnc = (); } elsif ($_ ne "" and $_ ne "None") { # if not eof, add line to function declaration push @fnc, $_ } }, "New Tokens" => sub { if (/$regex{token}/) { my ($name, $value) = ($1, $2); # prefix with "GL_" if prefix not present $name =~ s/^/GL_/ unless $name =~ /$regex{tprefix}/; # Add (name, value) pair to tokens hash, unless it's taboo $tokens{$name} = $value unless exists $taboo_tokens{$name}; } }, ); # Some people can't read, the template clearly says "Name String_s_" $proc{"Name String"} = $proc{"Name Strings"}; # Open spec file open SPEC, "<$filename" or return; # For each line of SPEC while() { # Delete trailing newline character chomp; # Remove trailing white spaces s/\s+$//; # If starts with a capital letter, it must be a new section if (/^[A-Z]/) { # Match section name with one of the predefined names $section = /$regex{section}/o ? $1 : "default"; } else { # Line is internal to a section # Remove leading whitespace s/^\s+//; # Call appropriate section processing function if it exists &{$proc{$section}} if exists $proc{$section}; } } close SPEC; return ($extname, \@extnames, \%tokens, \%functions); } #---------------------------------------------------------------------------------------- my @speclist = (); my %extensions = (); my $ext_dir = shift; my $reg_http = "https://www.khronos.org/registry/OpenGL/extensions/"; # Take command line arguments or read list from file if (@ARGV) { @speclist = @ARGV; } else { local $/; #??? @speclist = split "\n", (<>); } foreach my $spec (sort @speclist) { my ($extname, $extnames, $tokens, $functions) = parse_spec($spec); foreach my $ext (@{$extnames}) { my $info = "$ext_dir/" . $ext; open EXT, ">$info"; print EXT $ext . "\n"; # Extension name my $specname = $spec; $specname =~ s/OpenGL-Registry\/extensions\///; print EXT $reg_http . $specname . "\n"; # Extension info URL print EXT $ext . "\n"; # Extension string print EXT "\n"; # Resuses nothing by default my $prefix = $ext; $prefix =~ s/^(.+?)(_.+)$/$1/; foreach my $token (sort { if (${$tokens}{$a} eq ${$tokens}{$b}) { $a cmp $b } else { if (${$tokens}{$a} =~ /_/) { if (${$tokens}{$b} =~ /_/) { $a cmp $b } else { -1 } } else { if (${$tokens}{$b} =~ /_/) { 1 } else { if (${$tokens}{$a} =~ /u(ll)?$/) { if (${$tokens}{$b} =~ /u(ll)?$/) { $a cmp $b } else { -1 } } else { if (${$tokens}{$b} =~ /u(ll)?$/) { 1 } else { if (hex ${$tokens}{$a} eq hex ${$tokens}{$b}) { $a cmp $b } else { hex ${$tokens}{$a} <=> hex ${$tokens}{$b} } } } } } } } keys %{$tokens}) { if ($token =~ /^$prefix\_.*/i) { print EXT "\t" . $token . " " . ${\%{$tokens}}{$token} . "\n"; } } foreach my $function (sort keys %{$functions}) { if ($function =~ /^$prefix.*/i) { print EXT "\t" . ${$functions}{$function}{rtype} . " " . $function . " (" . ${$functions}{$function}{parms} . ")" . "\n"; } } close EXT; } } nigels-com-glew-285c35d/auto/bin/make_index.pl0000775000175000017500000000176315135005167021424 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use File::Basename; use lib '.'; do 'bin/make.pl'; ## ## Make Index ## ## Output sorted array of extension strings for indexing into extension ## enable/disable flags. This provides a way to convert an extension string ## into an integer index. ## my @extlist = (); if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort { basename($a) cmp basename($b) } @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); print "#ifdef $extname\n"; print " \"$extname\",\n"; print "#endif\n"; } } nigels-com-glew-285c35d/auto/bin/make_enable_index.pl0000775000175000017500000000226315135005167022726 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use File::Basename; use lib '.'; do 'bin/make.pl'; ## ## Make Extension-enabled Index ## my @extlist = (); if (@ARGV) { @extlist = @ARGV; print "/* Detected in the extension string or strings */\n"; print "static GLboolean _glewExtensionString[" . scalar @extlist . "];\n"; print "/* Detected via extension string or experimental mode */\n"; print "static GLboolean* _glewExtensionEnabled[] = {\n";; foreach my $ext (sort { basename($a) cmp basename($b) } @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); my $extvar = $extname; $extvar =~ s/GL(X*)_/GL$1EW_/; print "#ifdef $extname\n"; print " &__$extvar,\n"; print "#endif\n"; } print " NULL\n};\n\n"; } nigels-com-glew-285c35d/auto/bin/make_str.pl0000775000175000017500000000275615135005167021130 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; my @extlist = (); my %extensions = (); if (@ARGV) { @extlist = @ARGV; my $curexttype = ""; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); my $exttype = $extname; $exttype =~ s/(W?E?)GL(X?)_(.*?_)(.*)/$3/; my $extrem = $extname; $extrem =~ s/(W?E?)GL(X?)_(.*?_)(.*)/$4/; my $extvar = $extname; $extvar =~ s/(W?E?)GL(X?)_/$1GL$2EW_/; if(!($exttype =~ $curexttype)) { if(length($curexttype) > 0) { print " }\n"; } print " if (_glewStrSame2(&pos, &len, (const GLubyte*)\"$exttype\", " . length($exttype) . "))\n"; print " {\n"; $curexttype = $exttype; } print "#ifdef $extname\n"; print " if (_glewStrSame3(&pos, &len, (const GLubyte*)\"$extrem\", ". length($extrem) . "))\n"; #print " return $extvar;\n"; print " {\n"; print " ret = $extvar;\n"; print " continue;\n"; print " }\n"; print "#endif\n"; } print " }\n"; } nigels-com-glew-285c35d/auto/bin/make_list2.pl0000775000175000017500000000223315135005167021343 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; #--------------------------------------------------------------------------------------- # Extensions that depend on others can be enabled once we know # if the one it depends on, is enabled. my @extlist = (); my %extensions = (); if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); if ($extname ne $extstring && length($extstring)) { my $extvar = $extname; $extvar =~ s/GL(X*)_/GL$1EW_/; my $parent = $extstring; $parent =~ s/GL(X*)_/GL$1EW_/; print "#ifdef $extname\n"; print " $extvar = $parent;\n"; print "#endif /* $extname */\n"; } } } nigels-com-glew-285c35d/auto/bin/make_info_list.pl0000775000175000017500000000247015135005167022277 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; #--------------------------------------------------------------------------------------- # function pointer definition sub make_pfn_def($%) { return "PFN" . (uc $_[0]) . "PROC " . prefixname($_[0]) . " = NULL;"; } # function pointer definition sub make_init_call($%) { my $name = prefixname($_[0]); return " r = r || (" . $name . " = (PFN" . (uc $_[0]) . "PROC)glewGetProcAddress((const GLubyte*)\"" . $name . "\")) == NULL;"; } #--------------------------------------------------------------------------------------- my @extlist = (); my %extensions = (); if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); print "#ifdef $extname\n"; print " _glewInfo_$extname();\n"; print "#endif /* $extname */\n"; } } nigels-com-glew-285c35d/auto/bin/make_struct_fun.pl0000775000175000017500000000162715135005167022510 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; # function pointer declaration sub make_pfn_decl($%) { our $export; return $export . " PFN" . (uc $_[0]) . "PROC " . prefixname($_[0]) . ";"; } my @extlist = (); my %extensions = (); our $export = shift; if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); output_decls($functions, \&make_pfn_decl); } } nigels-com-glew-285c35d/auto/bin/make_html.pl0000775000175000017500000000270615135005167021257 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; #--------------------------------------------------------------------------------------- my @extlist = (); my %extensions = (); my $group = ""; my $cur_group = ""; if (@ARGV) { @extlist = @ARGV; my $n = 1; print "\n"; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); $cur_group = $extname; $cur_group =~ s/^(?:W?)GL(?:X?)_([A-Z0-9]+?)_.*$/$1/; $extname =~ s/^(?:W?)GL(?:X?)_(.*)$/$1/; if ($cur_group ne $group) { if ($group ne "") { print "\n"; } $group = $cur_group; } { if ($exturl) { print "\n"; } else { print "\n"; } $n++; } } print "

$n $extname
$n $extname
\n" } nigels-com-glew-285c35d/auto/bin/make.pl0000775000175000017500000001226715135005167020236 0ustar alastairalastair## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. my %regex = ( extname => qr/^[A-Z][A-Za-z0-9_]+$/, exturl => qr/^http.+$/, function => qr/^(.+) ([a-z][a-z0-9_]*) \((.*)\)$/i, token => qr/^([A-Z][A-Za-z0-9_x]*)\s+((?:0x|-)?[0-9A-Fa-f]+(u(ll)?)?|[A-Z][A-Za-z0-9(),_-]*)$/, type => qr/^typedef\s+(.+)$/, exact => qr/.*;$/, ); # prefix function name with glew sub prefixname($) { my $name = $_[0]; $name =~ s/^(.*?)gl/__$1glew/; return $name; } # prefix function name with glew sub prefix_varname($) { my $name = $_[0]; $name =~ s/^(.*?)GL(X*?)EW/__$1GL$2EW/; return $name; } #--------------------------------------------------------------------------------------- sub make_exact($) { my $exact = $_[0]; $exact =~ s/(; |{)/$1\n/g; return $exact; } sub make_separator($) { my $extname = $_[0]; my $l = length $extname; my $s = (71 - $l)/2; print "/* "; my $j = 3; for (my $i = 0; $i < $s; $i++) { print "-"; $j++; } print " $_[0] "; $j += $l + 2; while ($j < 76) { print "-"; $j++; } print " */\n\n"; } #--------------------------------------------------------------------------------------- sub parse_ext($) { my $filename = shift; my %functions = (); my %tokens = (); my @reuse = (); # Extensions to reuse my @types = (); my @exacts = (); my $extname = ""; # Full extension name GL_FOO_extension my $exturl = ""; # Info URL my $extstring = ""; # Relevant extension string open EXT, "<$filename" or return; # As of GLEW 1.14.0 the first four lines _must_ be # the extension name, the URL and the GL extension # string (which might be different to the name), # and the reused extensions # # For example GL_NV_geometry_program4 is available # iff GL_NV_gpu_program4 appears in the extension # string. # # For core OpenGL versions, the third line should # be blank. # # If the URL is unknown, the second line should be # blank. $extname = readline(*EXT); $exturl = readline(*EXT); $extstring = readline(*EXT); @reuse = split(" ", readline(*EXT)); chomp($extname); chomp($exturl); chomp($extstring); while() { chomp; if (s/^\s+//) { if (/$regex{exact}/) { push @exacts, $_; } elsif (/$regex{type}/) { push @types, $_; } elsif (/$regex{token}/) { my ($name, $value) = ($1, $2); $tokens{$name} = $value; } elsif (/$regex{function}/) { my ($return, $name, $parms) = ($1, $2, $3); $functions{$name} = { rtype => $return, parms => $parms, }; } else { print STDERR "'$_' matched no regex.\n"; } } } close EXT; return ($extname, $exturl, $extstring, \@reuse, \@types, \%tokens, \%functions, \@exacts); } sub output_tokens($$) { my ($tbl, $fnc) = @_; if (keys %{$tbl}) { local $, = "\n"; print "\n"; print map { &{$fnc}($_, $tbl->{$_}) } sort { if (${$tbl}{$a} eq ${$tbl}{$b}) { $a cmp $b } else { if (${$tbl}{$a} =~ /_/) { if (${$tbl}{$b} =~ /_/) { $a cmp $b } else { -1 } } else { if (${$tbl}{$b} =~ /_/) { 1 } else { if (hex ${$tbl}{$a} eq hex ${$tbl}{$b}) { $a cmp $b } else { hex ${$tbl}{$a} <=> hex ${$tbl}{$b} } } } } } keys %{$tbl}; print "\n"; } else { print STDERR "no keys in table!\n"; } } sub output_types($$) { my ($tbl, $fnc) = @_; if (scalar @{$tbl}) { local $, = "\n"; print "\n"; print map { &{$fnc}($_) } sort @{$tbl}; print "\n"; } } sub output_decls($$) { my ($tbl, $fnc) = @_; if (keys %{$tbl}) { local $, = "\n"; print "\n"; print map { &{$fnc}($_, $tbl->{$_}) } sort keys %{$tbl}; print "\n"; } } sub output_exacts($$) { my ($tbl, $fnc) = @_; if (scalar @{$tbl}) { local $, = "\n"; print "\n"; print map { &{$fnc}($_) } sort @{$tbl}; print "\n"; } } sub output_reuse($$) { my ($tbl, $fnc) = @_; if (scalar @{$tbl}) { local $, = "\n"; print "\n"; print map { &{$fnc}($_) } sort @{$tbl}; print "\n"; } } nigels-com-glew-285c35d/auto/bin/update_ext.sh0000775000175000017500000000135015135005167021451 0ustar alastairalastair#!/usr/bin/env bash ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. ## ## Parameters: ## ## $1: Extensions directory ## $2: Registry directory ## $3: The black list set -e if [ ! -d $1 ] ; then mkdir -p $1 # Parse each of the extensions in the registry find $2 -name doc -type d -prune -o -name "*.txt" -print | \ grep -v -f $3 | sort | bin/parse_spec.pl $1 fi nigels-com-glew-285c35d/auto/bin/filter_gles_ext.sh0000775000175000017500000000107615135005167022473 0ustar alastairalastair#!/usr/bin/env bash ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. ## ## Parameters: ## ## $1: Extensions directory ## $2: Registry directory ## $3: The black list set -e # clean up rm -f $1/*.bak nigels-com-glew-285c35d/auto/bin/make_list.pl0000775000175000017500000000361715135005167021270 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; #--------------------------------------------------------------------------------------- # function pointer definition sub make_init_call($%) { my $name = prefixname($_[0]); return " r = r || (" . $_[0] . " = (PFN" . (uc $_[0]) . "PROC)glewGetProcAddress(\"" . $name . "\")) == NULL;"; } #--------------------------------------------------------------------------------------- my @extlist = (); my %extensions = (); if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); my $extvar = $extname; $extvar =~ s/GL(X*)_/GL$1EW_/; my $extpre = $extname; $extpre =~ s/^(W?E?)GL(X?).*$/\l$1gl\l$2ew/; #my $pextvar = prefix_varname($extvar); if (length($extstring) && $extstring !~ /^GL_/ || keys %$functions) { print "#ifdef $extname\n"; } if (length($extstring) && $extstring !~ /^GL_/) { print " " . $extvar . " = _glewSearchExtension(\"$extstring\", extStart, extEnd);\n"; } if (keys %$functions) { if ($extname =~ /WGL_.*/) { print " if (glewExperimental || " . $extvar . "|| crippled) " . $extvar . "= !_glewInit_$extname();\n"; } else { print " if (glewExperimental || " . $extvar . ") " . $extvar . " = !_glewInit_$extname();\n"; } } if (length($extstring) && $extstring !~ /^GL_/ || keys %$functions) { print "#endif /* $extname */\n"; } } } nigels-com-glew-285c35d/auto/bin/make_def_fun.pl0000775000175000017500000000160015135005167021711 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; # function pointer declaration sub make_pfn_decl($%) { return "PFN" . (uc $_[0]) . "PROC " . prefixname($_[0]) . " = NULL;"; } my @extlist = (); my %extensions = (); our $type = shift; if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); output_decls($functions, \&make_pfn_decl); } } nigels-com-glew-285c35d/auto/bin/make_struct_var.pl0000775000175000017500000000151615135005167022505 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; my @extlist = (); my %extensions = (); our $export = shift; if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); my $extvar = $extname; $extvar =~ s/GL(X*)_/GL$1EW_/; print $export . " GLboolean " . prefix_varname($extvar) . ";\n"; } } nigels-com-glew-285c35d/auto/bin/make_initd.pl0000775000175000017500000000225515135005167021421 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; ## Output declarations for the _glewInit_[extension] functions defined ## by make_init.pl script. These are necessary for for initializers to ## call each other, such as a core GL 3 context that depends on certain ## extensions. #------------------------------------------------------------------------------- my @extlist = (); my %extensions = (); our $type = shift; if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); #print "#ifdef $extname\n\n"; if (keys %$functions) { print "static GLboolean _glewInit_$extname (void);\n"; } #print "#endif /* $extname */\n\n"; } } nigels-com-glew-285c35d/auto/bin/filter_gl_ext.sh0000775000175000017500000006257315135005167022154 0ustar alastairalastair#!/usr/bin/env bash ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. ## ## Parameters: ## ## $1: Extensions directory set -e # fix GL_NV_texture_compression_vtc grep -v EXT $1/GL_NV_texture_compression_vtc > tmp mv tmp $1/GL_NV_texture_compression_vtc # remove duplicates from GL_ARB_vertex_program and GL_ARB_fragment_program tail -n +5 $1/GL_ARB_vertex_program > patterns grep -v -F -f patterns $1/GL_ARB_fragment_program > tmp mv tmp $1/GL_ARB_fragment_program # remove duplicates from GLX_EXT_visual_rating and GLX_EXT_visual_info tail -n +5 $1/GLX_EXT_visual_info > patterns grep -v -F -f patterns $1/GLX_EXT_visual_rating > tmp mv tmp $1/GLX_EXT_visual_rating # GL_EXT_draw_buffers2 and GL_EXT_transform_feedback both define glGetBooleanIndexedvEXT but with different parameter names grep -v glGetBooleanIndexedvEXT $1/GL_EXT_transform_feedback > tmp mv tmp $1/GL_EXT_transform_feedback # GL_EXT_draw_buffers2 and GL_EXT_transform_feedback both define glGetIntegerIndexedvEXT but with different parameter names grep -v glGetIntegerIndexedvEXT $1/GL_EXT_transform_feedback > tmp mv tmp $1/GL_EXT_transform_feedback # remove duplicates from GL_NV_video_capture and GLX_NV_video_capture grep -v glX $1/GL_NV_video_capture > tmp mv tmp $1/GL_NV_video_capture # add missing functions to GL_NV_video_capture cat >> $1/GL_NV_video_capture <> $1/WGL_NV_video_capture <> $1/GLX_NV_video_capture < patterns grep -v -F -f patterns $1/GL_NV_present_video > tmp mv tmp $1/GL_NV_present_video # fix WGL_NV_present_video cat >> $1/WGL_NV_present_video <> $1/WGL_NV_video_output < tmp mv tmp $1/GL_NV_occlusion_query # add deprecated constants to GL_ATI_fragment_shader cat >> $1/GL_ATI_fragment_shader <> $1/GL_NV_texture_shader <> $1/WGL_ATI_pixel_format_float <> $1/WGL_ARB_make_current_read <> $1/WGL_EXT_make_current_read <> $1/GL_ARB_vertex_buffer_object <> $1/GLX_EXT_import_context <> $1/GLX_OML_swap_method <> $1/GLX_SGIX_fbconfig <> $1/GLX_SGIX_pbuffer <> $1/GL_NV_half_float <> $1/WGL_ARB_pbuffer <> $1/WGL_EXT_pbuffer < patterns grep -v -F -f patterns $1/GL_ARB_fragment_shader > tmp mv tmp $1/GL_ARB_fragment_shader grep -v -F -f patterns $1/GL_ARB_vertex_shader > tmp mv tmp $1/GL_ARB_vertex_shader # remove duplicates in GL_ARB_vertex_program and GL_ARB_vertex_shader tail -n +5 $1/GL_ARB_vertex_program > patterns grep -v -F -f patterns $1/GL_ARB_vertex_shader > tmp mv tmp $1/GL_ARB_vertex_shader # remove triplicates in GL_ARB_fragment_program, GL_ARB_fragment_shader, # and GL_ARB_vertex_shader tail -n +5 $1/GL_ARB_fragment_program > patterns grep -v -F -f patterns $1/GL_ARB_fragment_shader > tmp mv tmp $1/GL_ARB_fragment_shader grep -v -F -f patterns $1/GL_ARB_vertex_shader > tmp mv tmp $1/GL_ARB_vertex_shader # remove duplicates in GL_EXT_direct_state_access grep -v "glGetBooleanIndexedvEXT" $1/GL_EXT_direct_state_access > tmp mv tmp $1/GL_EXT_direct_state_access grep -v "glGetIntegerIndexedvEXT" $1/GL_EXT_direct_state_access > tmp mv tmp $1/GL_EXT_direct_state_access grep -v "glDisableIndexedEXT" $1/GL_EXT_direct_state_access > tmp mv tmp $1/GL_EXT_direct_state_access grep -v "glEnableIndexedEXT" $1/GL_EXT_direct_state_access > tmp mv tmp $1/GL_EXT_direct_state_access grep -v "glIsEnabledIndexedEXT" $1/GL_EXT_direct_state_access > tmp mv tmp $1/GL_EXT_direct_state_access # remove duplicates in GL_NV_explicit_multisample grep -v "glGetBooleanIndexedvEXT" $1/GL_NV_explicit_multisample > tmp mv tmp $1/GL_NV_explicit_multisample grep -v "glGetIntegerIndexedvEXT" $1/GL_NV_explicit_multisample > tmp mv tmp $1/GL_NV_explicit_multisample # fix bugs in GL_ARB_vertex_shader grep -v "GL_FLOAT" $1/GL_ARB_vertex_shader > tmp mv tmp $1/GL_ARB_vertex_shader perl -e 's/handle /GLhandleARB /g' -pi $1/GL_ARB_vertex_shader # fix bugs in GL_ARB_shader_objects grep -v "GL_FLOAT " $1/GL_ARB_shader_objects > tmp mv tmp $1/GL_ARB_shader_objects grep -v "GL_INT " $1/GL_ARB_shader_objects > tmp mv tmp $1/GL_ARB_shader_objects # add typedefs to GL_ARB_shader_objects cat >> $1/GL_ARB_shader_objects <> $1/GL_ARB_transpose_matrix <> $1/GL_EXT_framebuffer_multisample < tmp mv tmp $1/GL_NV_gpu_program_fp64 # Filter glGetUniformui64vNV from GL_NV_shader_buffer_load grep -v "glGetUniformui64vNV" $1/GL_NV_shader_buffer_load > tmp mv tmp $1/GL_NV_shader_buffer_load # Filter out profile enumerations from GLX_ARB_create_context grep -v "_PROFILE_" $1/GLX_ARB_create_context > tmp mv tmp $1/GLX_ARB_create_context # Filter only profile related enumerations for GLX_ARB_create_context_profile head -n4 $1/GLX_ARB_create_context_profile > tmp grep "_PROFILE_" $1/GLX_ARB_create_context_profile >> tmp mv tmp $1/GLX_ARB_create_context_profile # Filter out profile enumerations from WGL_ARB_create_context grep -v "_PROFILE_" $1/WGL_ARB_create_context > tmp mv tmp $1/WGL_ARB_create_context # Filter only profile related enumerations for WGL_ARB_create_context_profile head -n4 $1/WGL_ARB_create_context_profile > tmp grep "_PROFILE_" $1/WGL_ARB_create_context_profile >> tmp mv tmp $1/WGL_ARB_create_context_profile # add missing function to GLX_NV_copy_image cat >> $1/GLX_NV_copy_image <> $1/WGL_NV_copy_image < tmp mv tmp $1/GL_EXT_separate_shader_objects # Filter out EXT functions from GL_ARB_viewport_array grep -v "EXT" $1/GL_ARB_viewport_array > tmp mv tmp $1/GL_ARB_viewport_array # Additional enumerations for GL_NV_vertex_buffer_unified_memory # These are mentioned in GL_ARB_draw_indirect.txt cat >> $1/GL_NV_vertex_buffer_unified_memory < tmp mv tmp $1/GL_ARB_debug_output # Filter glGetPointerv from GL_EXT_vertex_array # It's part of OpenGL 1.1, after all grep -v "glGetPointerv" $1/GL_EXT_vertex_array > tmp mv tmp $1/GL_EXT_vertex_array # add typedef to GL_AMD_debug_output # parse_spec.pl can't parse typedefs from New Types section, but ought to cat >> $1/GL_AMD_debug_output <> $1/GL_ARB_debug_output <> $1/GL_KHR_debug < tmp mv tmp $1/GL_KHR_debug # add typedefs to GL_ARB_cl_event # parse_spec.pl can't parse typedefs from New Types section, but ought to cat >> $1/GL_ARB_cl_event < tmp mv tmp $1/GL_ARB_gpu_shader_fp64 # add missing functions to GL_EXT_direct_state_access (GL_ARB_gpu_shader_fp64 related) cat >> $1/GL_EXT_direct_state_access <> $1/GL_EXT_direct_state_access <> $1/GL_EXT_direct_state_access <> $1/GL_EXT_direct_state_access < tmp mv tmp $1/GL_AMD_performance_monitor grep -v 'GL_FLOAT ' $1/GL_AMD_performance_monitor > tmp mv tmp $1/GL_AMD_performance_monitor # Filter out GL_STORAGE_CACHED_APPLE and GL_STORAGE_SHARED_APPLE from GL_APPLE_texture_range grep -v 'GL_STORAGE_CACHED_APPLE ' $1/GL_APPLE_texture_range > tmp mv tmp $1/GL_APPLE_texture_range grep -v 'GL_STORAGE_SHARED_APPLE ' $1/GL_APPLE_texture_range > tmp mv tmp $1/GL_APPLE_texture_range # Filter out GL_RED from GL_ARB_texture_rg grep -v 'GL_RED ' $1/GL_ARB_texture_rg > tmp mv tmp $1/GL_ARB_texture_rg # Filter out _EXT enums from GL_ARB_texture_storage grep -v '_EXT ' $1/GL_ARB_texture_storage > tmp mv tmp $1/GL_ARB_texture_storage # Filter out TEXTURE_3D enums from GL_EXT_paletted_texture grep -v 'TEXTURE_3D' $1/GL_EXT_paletted_texture > tmp mv tmp $1/GL_EXT_paletted_texture # Filter out GL_VERSION_1_1 enums from GL_AMD_stencil_operation_extended grep -v '0x150' $1/GL_AMD_stencil_operation_extended > tmp mv tmp $1/GL_AMD_stencil_operation_extended # Filter out from GL_APPLE_ycbcr_422 grep -v 'GL_UNSIGNED_SHORT_8_8_APPLE' $1/GL_APPLE_ycbcr_422 > tmp mv tmp $1/GL_APPLE_ycbcr_422 grep -v 'GL_UNSIGNED_SHORT_8_8_REV_APPLE' $1/GL_APPLE_ycbcr_422 > tmp mv tmp $1/GL_APPLE_ycbcr_422 # Filter out GL_FRAGMENT_DEPTH_EXT from GL_EXT_light_texture grep -v 'GL_FRAGMENT_DEPTH_EXT' $1/GL_EXT_light_texture > tmp mv tmp $1/GL_EXT_light_texture # Filter out GL_MULTISAMPLE_BIT_EXT from GL_SGIS_multisample grep -v 'GL_MULTISAMPLE_BIT_EXT' $1/GL_SGIS_multisample > tmp mv tmp $1/GL_SGIS_multisample # Filter out GL_COMPRESSED_RGB_S3TC_DXT1_EXT from GL_EXT_texture_compression_dxt1 grep -v 'GL_COMPRESSED_RGB_S3TC_DXT1_EXT' $1/GL_EXT_texture_compression_dxt1 > tmp mv tmp $1/GL_EXT_texture_compression_dxt1 # Filter out GL_COMPRESSED_RGBA_S3TC_DXT1_EXT from GL_EXT_texture_compression_dxt1 grep -v 'GL_COMPRESSED_RGBA_S3TC_DXT1_EXT' $1/GL_EXT_texture_compression_dxt1 > tmp mv tmp $1/GL_EXT_texture_compression_dxt1 # Append GLfixed to GL_ARB_ES2_compatibility # Probably ought to be explicitly mentioned in the spec language cat >> $1/GL_ARB_ES2_compatibility <> $1/GL_REGAL_ES1_0_compatibility <> $1/GL_REGAL_log < GLLOGPROCREGAL perl -e 's/LOGPROCREGAL/GLLOGPROCREGAL/g' -pi $1/GL_REGAL_log # Filter out GL_BYTE from GL_OES_byte_coordinates grep -v 'GL_BYTE' $1/GL_OES_byte_coordinates > tmp mv tmp $1/GL_OES_byte_coordinates # Filter out fp64 (not widely supported) from GL_EXT_direct_state_access egrep -v 'glProgramUniform.*[1234]d[v]?EXT' $1/GL_EXT_direct_state_access > tmp mv tmp $1/GL_EXT_direct_state_access # Filter out all enums from GL_ANGLE_depth_texture grep -v '0x' $1/GL_ANGLE_depth_texture > tmp mv tmp $1/GL_ANGLE_depth_texture # Filter out GL_NONE enum from GL_ANGLE_depth_texture grep -v 'GL_NONE' $1/GL_ANGLE_texture_usage > tmp mv tmp $1/GL_ANGLE_texture_usage # Fixup REGAL and ANGLE urls for i in $1/GL_REGAL_*; do perl -e 's#http://www.opengl.org/registry/specs/REGAL/.*#https://github.com/p3/regal/tree/master/doc/extensions#g' -pi $i; done for i in $1/GL_ANGLE_*; do perl -e 's#http://www.opengl.org/registry/specs/ANGLE/.*#https://code.google.com/p/angleproject/source/browse/\#git%2Fextensions#g' -pi $i; done # Filter out GL_NV_blend_equation_advanced_coherent enums and functions head -n4 $1/GL_NV_blend_equation_advanced_coherent > tmp mv tmp $1/GL_NV_blend_equation_advanced_coherent # Filter out GL_AMD_gpu_shader_int64 enums and functions head -n4 $1/GL_AMD_gpu_shader_int64 > tmp mv tmp $1/GL_AMD_gpu_shader_int64 # Filter out GL_NO_ERROR enum and glGetGraphicsResetStatus from GL_KHR_robustness grep -v 'GL_NO_ERROR' $1/GL_KHR_robustness | grep -v 'glGetGraphicsResetStatus' > tmp mv tmp $1/GL_KHR_robustness # Filter out all enums from GL_KHR_blend_equation_advanced_coherent grep -v '0x' $1/GL_KHR_blend_equation_advanced_coherent > tmp mv tmp $1/GL_KHR_blend_equation_advanced_coherent # Filter out glBlendBarrierKHR enum from GL_KHR_blend_equation_advanced_coherent grep -v 'glBlendBarrierKHR' $1/GL_KHR_blend_equation_advanced_coherent > tmp mv tmp $1/GL_KHR_blend_equation_advanced_coherent # Filter out GL_NONE enum from GL_KHR_context_flush_control grep -v 'GL_NONE' $1/GL_KHR_context_flush_control > tmp mv tmp $1/GL_KHR_context_flush_control # Filter out CoverageModulation from NV_framebuffer_mixed_samples # Superset of EXT_raster_multisample grep -v "CoverageModulation" $1/GL_NV_framebuffer_mixed_samples > tmp mv tmp $1/GL_NV_framebuffer_mixed_samples # Filter out glRasterSamplesEXT from NV_framebuffer_mixed_samples # Superset of EXT_raster_multisample grep -v "RasterSamplesEXT" $1/GL_NV_framebuffer_mixed_samples > tmp mv tmp $1/GL_NV_framebuffer_mixed_samples # Filter out glNamedBufferStorageEXT from GL_ARB_buffer_storage grep -v "glNamedBufferStorageEXT" $1/GL_ARB_buffer_storage > tmp mv tmp $1/GL_ARB_buffer_storage # Filter out glFramebufferTextureEXT from GL_EXT_geometry_point_size # and GL_EXT_geometry_shader grep -v "glFramebufferTextureEXT" $1/GL_EXT_geometry_point_size > tmp mv tmp $1/GL_EXT_geometry_point_size grep -v "glFramebufferTextureEXT" $1/GL_EXT_geometry_shader > tmp mv tmp $1/GL_EXT_geometry_shader # Filter out glBindFragDataLocationEXT from GL_EXT_blend_func_extended grep -v "glBindFragDataLocationEXT" $1/GL_EXT_blend_func_extended > tmp mv tmp $1/GL_EXT_blend_func_extended # Filter out glDrawArraysInstancedEXT and glDrawElementsInstancedEXT from GL_EXT_blend_func_extended grep -v "glDrawArraysInstancedEXT" $1/GL_EXT_instanced_arrays > tmp mv tmp $1/GL_EXT_instanced_arrays grep -v "glDrawElementsInstancedEXT" $1/GL_EXT_instanced_arrays > tmp mv tmp $1/GL_EXT_instanced_arrays # Filter out glRenderbufferStorageMultisampleEXT from GL_EXT_multisampled_render_to_texture grep -v "glRenderbufferStorageMultisampleEXT" $1/GL_EXT_multisampled_render_to_texture > tmp mv tmp $1/GL_EXT_multisampled_render_to_texture # Filter out glTexturePageCommitmentEXT from GL_ARB_sparse_texture grep -v "glTexturePageCommitmentEXT" $1/GL_ARB_sparse_texture > tmp mv tmp $1/GL_ARB_sparse_texture # Filter out TextureStorage* from GL_ARB_texture_storage grep -v "TextureStorage" $1/GL_ARB_texture_storage > tmp mv tmp $1/GL_ARB_texture_storage # Filter out functions from GL_EXT_occlusion_query_boolean grep -v "(" $1/GL_EXT_occlusion_query_boolean > tmp mv tmp $1/GL_EXT_occlusion_query_boolean # Filter out duplicate enums from GL_EXT_protected_textures cat $1/GL_EXT_protected_textures | grep -v GL_TRUE | grep -v GL_FALSE > tmp mv tmp $1/GL_EXT_protected_textures # Filter out duplicate enums from GL_EXT_robustness cat $1/GL_EXT_robustness | grep -v GL_NO_ERROR > tmp mv tmp $1/GL_EXT_robustness # Filter GL_EXT_shader_framebuffer_fetch_non_coherent grep -v "FramebufferFetchBarrierEXT" $1/GL_EXT_shader_framebuffer_fetch_non_coherent > tmp mv tmp $1/GL_EXT_shader_framebuffer_fetch_non_coherent # Filter GL_EXT_tessellation_shader grep -v "PatchParameteriEXT" $1/GL_EXT_tessellation_shader > tmp mv tmp $1/GL_EXT_tessellation_shader # Filter GL_EXT_texture_buffer grep -v "TexBuffer" $1/GL_EXT_texture_buffer > tmp mv tmp $1/GL_EXT_texture_buffer # Filter GL_EXT_texture_border_clamp grep -v "TexParameter" $1/GL_EXT_texture_border_clamp > tmp mv tmp $1/GL_EXT_texture_border_clamp # Filter GL_EXT_disjoint_timer_query cat $1/GL_EXT_disjoint_timer_query | grep -v GetQueryObjecti64v | grep -v GetQueryObjectui64v > tmp mv tmp $1/GL_EXT_disjoint_timer_query # Filter GL_NV_read_buffer_front grep -v "ReadBufferNV" $1/GL_NV_read_buffer_front > tmp mv tmp $1/GL_NV_read_buffer_front # Append GLVULKANPROCNV to GL_NV_draw_vulkan_image # Probably ought to be explicitly mentioned in the spec language cat >> $1/GL_NV_draw_vulkan_image < patterns grep -v -F -f patterns $1/GL_EXT_fragment_shading_rate_primitive > tmp mv tmp $1/GL_EXT_fragment_shading_rate_primitive # remove duplicates in GL_EXT_fragment_shading_rate and GL_EXT_fragment_shading_rate_attachment tail -n +5 $1/GL_EXT_fragment_shading_rate_attachment > patterns grep -v -F -f patterns $1/GL_EXT_fragment_shading_rate_attachment > tmp mv tmp $1/GL_EXT_fragment_shading_rate_attachment # GLU extensions are not relevant here rm -f $1/GL_GLU_* # Not complete rm -f $1/GL_SGIX_color_type # clean up rm -f patterns $1/*.bak nigels-com-glew-285c35d/auto/bin/make_init.pl0000775000175000017500000000315415135005167021254 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; #------------------------------------------------------------------------------- # function pointer definition sub make_pfn_def_init($%) { #my $name = prefixname($_[0]); return " r = ((" . $_[0] . " = (PFN" . (uc $_[0]) . "PROC)glewGetProcAddress((const GLubyte*)\"" . $_[0] . "\")) == NULL) || r;"; } sub make_reuse_call($%) { return " r = _glewInit_" . $_[0] . "() || r;"; } #------------------------------------------------------------------------------- my @extlist = (); my %extensions = (); our $type = shift; if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); #make_separator($extname); my $extvar = $extname; my $extvardef = $extname; $extvar =~ s/GL(X*)_/GL$1EW_/; if (keys %$functions or keys @$reuse) { print "#ifdef $extname\n\n"; print "static GLboolean _glewInit_$extname (void)\n{\n GLboolean r = GL_FALSE;\n"; output_reuse($reuse, \&make_reuse_call); output_decls($functions, \&make_pfn_def_init); print "\n return r;\n}\n\n"; print "#endif /* $extname */\n\n"; } } } nigels-com-glew-285c35d/auto/bin/parse_xml.py0000775000175000017500000001071615135005167021325 0ustar alastairalastair#!/usr/bin/env python import re import sys from xml.dom.minidom import parse, Node # # DOM traversal utility functions # def findChildren(node, path): result = [] if len(path)==1: for i in node.childNodes: if i.nodeType==Node.ELEMENT_NODE: if i.tagName==path[0]: result.append(i) else: for i in node.childNodes: if i.nodeType==Node.ELEMENT_NODE: if i.tagName==path[0]: result.extend(findChildren(i, path[1:])) return result def findData(node, path): return [ i.firstChild.data for i in findChildren(node, path) ] isPointer = re.compile('(.*)([ ]+)([*]+)') def findParams(node): n = findData(node, ['name'])[0] t = '' for i in node.childNodes: if i.nodeType==Node.TEXT_NODE: t += i.data if i.nodeType==Node.ELEMENT_NODE and i.tagName=='ptype': t += i.firstChild.data t.strip() m = isPointer.match(t) if m: t = ('%s%s'%(m.group(1), m.group(3))).strip() return ( t, n.strip()) def findEnums(dom): return {i.getAttribute('name'): i.getAttribute('value') for i in findChildren(dom, [ 'registry', 'enums', 'enum' ])} def findCommands(dom): ret = {} for i in findChildren(dom, [ 'registry', 'commands', 'command' ]): r,n = findParams(findChildren(i, ['proto'])[0]) p = [ findParams(j) for j in findChildren(i, ['param'])] ret[n] = (r, p) return ret def findFeatures(dom): ret = {} for i in findChildren(dom, [ 'registry', 'feature' ]): n = i.getAttribute('name') e = [j.getAttribute("name") for j in findChildren(i, [ 'require', 'enum' ])] c = [j.getAttribute("name") for j in findChildren(i, [ 'require', 'command' ])] ret[n] = (e,c) return ret def findExtensions(dom): ret = {} for i in findChildren(dom, [ 'registry', 'extensions', 'extension' ]): n = i.getAttribute('name') e = [j.getAttribute("name") for j in findChildren(i, [ 'require', 'enum' ])] c = [j.getAttribute("name") for j in findChildren(i, [ 'require', 'command' ])] ret[n] = (e,c) return ret def findApi(dom, name): enums = findEnums(dom) commands = findCommands(dom) features = findFeatures(dom) extensions = findExtensions(dom) return (enums, commands, features, extensions) # # # isWGL = re.compile('WGL_([A-Z0-9]+)_.*') def writeExtension(f, name, extension, enums, commands): f.write(('%s\n'%name).encode()) url = 'https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf' m = isWGL.match(name) if m: url = 'https://www.khronos.org/registry/OpenGL/extensions/%s/%s.txt'%(m.group(1), name) f.write(('%s\n'%(url)).encode()) if name.find('_VERSION_')==-1: f.write(('%s\n'%name).encode()) else: f.write('\n'.encode()) f.write('\n'.encode()) enums = [ (j, enums[j]) for j in extension[0] ] for e in sorted(enums, key=lambda i: i[1]): f.write(('\t%s %s\n'%(e[0], e[1])).encode()) commands = [ (j, commands[j]) for j in extension[1] ] for c in sorted(commands): params = ', '.join( [ '%s %s'%(j[0].strip(), j[1].strip()) for j in c[1][1] ] ) if len(params)==0: params = 'void' f.write(('\t%s %s (%s)\n'%(c[1][0].strip(), c[0].strip(), params)).encode()) if __name__ == '__main__': from argparse import ArgumentParser import os parser = ArgumentParser(description='usage: %prog [options] [XML specs...]') parser.add_argument("--core", dest="core", help="location for core outputs", default='') parser.add_argument("--api", dest="name", help="API name: egl, wgl, glx, etc", default='') parser.add_argument("--extensions", dest="extensions", help="location for extensions outputs", default='') (options, args) = parser.parse_known_args() options = vars(options) for i in args: dom = parse(i) api = findApi(dom, options['name']) print('Found {} enums, {} commands, {} features and {} extensions.'.format( len(api[0]), len(api[1]), len(api[2]), len(api[3]))) if len(options['core']): for i in api[2].keys(): with open(os.path.join(options['core'], i), 'wb') as f: writeExtension(f, i, api[2][i], api[0], api[1]) if len(options['extensions']): for i in api[3].keys(): with open(os.path.join(options['extensions'], i), 'wb') as f: writeExtension(f, i, api[3][i], api[0], api[1]) nigels-com-glew-285c35d/auto/bin/make_def_var.pl0000775000175000017500000000151115135005167021712 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; my @extlist = (); my %extensions = (); our $type = shift; if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); my $extvar = $extname; $extvar =~ s/GL(X*)_/GL$1EW_/; print "GLboolean " . prefix_varname($extvar) . " = GL_FALSE;\n"; } } nigels-com-glew-285c35d/auto/bin/filter_spec.py0000775000175000017500000000236715135005167021635 0ustar alastairalastair#!/usr/bin/python import re section = re.compile('^(Name|Name Strings?|Contact|Notice|Number|Dependencies|Overview|Issues|IP Status|Status|Version|New Procedures and Functions|New Tokens|Additions to .*|Changes to .*|Modifications to .*|Add new Section .*)\s*$') token = re.compile('^\s+(([A-Z0-9][A-Z0-9_x]*):?\s+((?:0x)?[0-9A-F]+)([^\?]*))?\s*$') match = [ 'Name', 'Name String', 'Contact', 'Notice', 'Name Strings', 'Version', 'Number', 'Dependencies', 'New Procedures and Functions', 'New Tokens'] if __name__ == '__main__': from optparse import OptionParser import os parser = OptionParser('usage: %prog [options] [SOURCES...]') (options, args) = parser.parse_args() for i in args: lines = open(i).readlines() f = open(i,'w') # Keep track of the current section as we iterate over the input current = '' for j in lines: # Detect the start of a new section m = section.match(j) if m: current = m.group(1).strip() if current in match: print >>f, j, continue if current=='New Tokens': if token.match(j): print >>f, j, elif current in match: print >>f, j, nigels-com-glew-285c35d/auto/bin/make_info.pl0000775000175000017500000000330515135005167021242 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; #--------------------------------------------------------------------------------------- # function pointer definition sub make_pfn_info($%) { my $name = $_[0]; return " glewInfoFunc(fi, \"$_[0]\", $name == NULL);"; } #--------------------------------------------------------------------------------------- my @extlist = (); my %extensions = (); if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); my $extvar = $extname; $extvar =~ s/GL(X*)_/GL$1EW_/; my $extpre = $extname; $extpre =~ s/(GLX|GLW|GL).*/$1/; $extpre = lc $extpre; #make_separator($extname); print "#ifdef $extname\n\n"; print "static void _glewInfo_$extname (void)\n{\n"; if (! %$functions) { print " "; } else { print " GLboolean fi = "; } if ($extvar =~ /VERSION/) { print "glewPrintExt(\"$extname\", $extvar, $extvar, $extvar);\n"; } else { print "glewPrintExt(\"$extname\", $extvar, $extpre" . "ewIsSupported(\"$extname\"), $extpre" . "ewGetExtension(\"$extstring\"));\n"; } output_decls($functions, \&make_pfn_info); print "}\n\n"; print "#endif /* $extname */\n\n"; } } nigels-com-glew-285c35d/auto/bin/make_header.pl0000775000175000017500000000325215135005167021540 0ustar alastairalastair#!/usr/bin/env perl ## ## Copyright (C) 2008-2025, Nigel Stewart ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. use strict; use warnings; use lib '.'; do 'bin/make.pl'; # token sub make_define($$) { return "#define $_[0] $_[1]" } # type declaration sub make_type($$) { return "@_;" } # function pointer type declaration sub make_pfn_type($%) { our $api; return join(' ', "typedef", $_[1]->{rtype}, "($api * PFN" . (uc $_[0]) . "PROC)", "(" . $_[1]->{parms} . ")") . ";"; } # function name alias sub make_pfn_alias($%) { our $type; return join(" ", "#define", $_[0], $type . "EW_GET_FUN(" . prefixname($_[0]) . ")") } my @extlist = (); my %extensions = (); our $api = shift; our $type = shift; if (@ARGV) { @extlist = @ARGV; foreach my $ext (sort @extlist) { my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); make_separator($extname); print "#ifndef $extname\n#define $extname 1\n"; output_tokens($tokens, \&make_define); output_types($types, \&make_type); output_exacts($exacts, \&make_exact); output_decls($functions, \&make_pfn_type); output_decls($functions, \&make_pfn_alias); my $extvar = $extname; $extvar =~ s/GL(X*)_/GL$1EW_/; print "\n#define $extvar " . $type . "EW_GET_VAR(" . prefix_varname($extvar) . ")\n"; print "\n#endif /* $extname */\n\n"; } } nigels-com-glew-285c35d/auto/custom.txt0000664000175000017500000000023415135005167020253 0ustar alastairalastairWGL_ARB_extensions_string WGL_EXT_extensions_string WGL_ARB_pixel_format WGL_ARB_pbuffer WGL_NV_float_buffer WGL_ATI_pixel_format_float WGL_ARB_multisample nigels-com-glew-285c35d/auto/blacklist0000664000175000017500000000150515135005167020075 0ustar alastairalastairEXT/draw_range_elements.txt EXT/static_vertex_array.txt EXT/vertex_array_set.alt.txt EXT/vertex_array_set.txt EXT/nurbs_tessellator.txt EXT/object_space_tess.txt MESA/MESA_sampler_objects.txt SGI/filter4_parameters.txt SGIS/SGIS_texture_color_mask.txt SGIX/SGIX_dmbuffer.txt SGIX/SGIX_instruments.txt SGIX/SGIX_video_source.txt SGIX/SGIX_hyperpipe_group.txt OES/OES_fixed_point.txt OES/OES_query_matrix.txt IMG/IMG_user_clip_plane.txt NV/NV_query_resource.txt NV/EGL_NV_coverage_sample.txt OES/OES_draw_elements_base_vertex.txt OES/OES_viewport_array.txt OES/EGL_KHR_fence_sync.txt EXT/EXT_texenv_op.txt EXT/EXT_transform_feedback2.txt EXT/EXT_vertex_array_set.txt EXT/EXT_separate_shader_objects.gles.txt IGLOO/IGLOO_swap_triangle_strip_vertex_pointerXXX.txt IGLOO/IGLOO_viewport_offsetXXX.txt IGLOO/IGLOO_toggle_color_and_lightXXX.txt nigels-com-glew-285c35d/auto/src/0000775000175000017500000000000015135005167016770 5ustar alastairalastairnigels-com-glew-285c35d/auto/src/visualinfo.rc0000664000175000017500000001473015135005167021502 0ustar alastairalastair #include #ifdef _DEBUG # define FILENAME "visualinfod.exe" #else # define FILENAME "visualinfo.exe" #endif ///////////////////////////////////////////////////////////////////////////// // // Version // VS_VERSION_INFO VERSIONINFO FILEVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0 PRODUCTVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK #ifdef _DEBUG FILEFLAGS VS_FF_DEBUG #else FILEFLAGS 0x0L #endif FILEOS VOS__WINDOWS32 FILETYPE VFT_APP FILESUBTYPE VFT2_UNKNOWN BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "040904b0" BEGIN VALUE "Comments", "The OpenGL Extension Wrangler Library\r\n" "Copyright (C) 2008-2025, Nigel Stewart \r\n" "Copyright (C) 2002-2008, Milan Ikits \r\n" "Copyright (C) 2002-2008, Marcelo E. Magallon \r\n" "Copyright (C) 2002, Lev Povalahev\r\n" "All rights reserved.\r\n" "\r\n" "Redistribution and use in source and binary forms, with or without \r\n" "modification, are permitted provided that the following conditions are met:\r\n" "\r\n" "* Redistributions of source code must retain the above copyright notice, \r\n" " this list of conditions and the following disclaimer.\r\n" "* Redistributions in binary form must reproduce the above copyright notice, \r\n" " this list of conditions and the following disclaimer in the documentation \r\n" " and/or other materials provided with the distribution.\r\n" "* The name of the author may be used to endorse or promote products \r\n" " derived from this software without specific prior written permission.\r\n" "\r\n" "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ''AS IS'' \r\n" "AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\n" "IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\n" "ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\n" "LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\n" "CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\n" "SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\n" "INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\n" "CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\n" "ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\n" "THE POSSIBILITY OF SUCH DAMAGE.\r\n" "\r\n" "\r\n" "Mesa 3-D graphics library\r\n" "\r\n" "Version: 7.0\r\n" "\r\n" "Copyright (C) 1999-2007 Brian Paul All Rights Reserved.\r\n" "\r\n" "Permission is hereby granted, free of charge, to any person obtaining a\r\n" "copy of this software and associated documentation files (the ''Software''),\r\n" "to deal in the Software without restriction, including without limitation\r\n" "the rights to use, copy, modify, merge, publish, distribute, sublicense,\r\n" "and/or sell copies of the Software, and to permit persons to whom the\r\n" "Software is furnished to do so, subject to the following conditions:\r\n" "\r\n" "The above copyright notice and this permission notice shall be included\r\n" "in all copies or substantial portions of the Software.\r\n" "\r\n" "THE SOFTWARE IS PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS\r\n" "OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n" "FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL\r\n" "BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r\n" "AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r\n" "CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n" "\r\n" "\r\n" "Copyright (c) 2007 The Khronos Group Inc.\r\n" "\r\n" "Permission is hereby granted, free of charge, to any person obtaining a\r\n" "copy of this software and/or associated documentation files (the\r\n" "''Materials''), to deal in the Materials without restriction, including\r\n" "without limitation the rights to use, copy, modify, merge, publish,\r\n" "distribute, sublicense, and/or sell copies of the Materials, and to\r\n" "permit persons to whom the Materials are furnished to do so, subject to\r\n" "the following conditions:\r\n" "\r\n" "The above copyright notice and this permission notice shall be included\r\n" "in all copies or substantial portions of the Materials.\r\n" "\r\n" "THE MATERIALS ARE PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND,\r\n" "EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\n" "MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\n" "IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\n" "CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\n" "TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\n" "MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\0" VALUE "CompanyName", "\0" VALUE "FileDescription", "Utility for listing pixelformat capabilities\0" VALUE "FileVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0" VALUE "InternalName", "visualinfo\0" VALUE "LegalCopyright", "(C) 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", FILENAME "\0" VALUE "PrivateBuild", "\0" VALUE "ProductName", "The OpenGL Extension Wrangler Library\0" VALUE "ProductVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0" VALUE "SpecialBuild", "\0" END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x409, 1200 END END nigels-com-glew-285c35d/auto/src/khronos_license.h0000664000175000017500000000217215135005167022330 0ustar alastairalastair/* ** Copyright (c) 2007 The Khronos Group Inc. ** ** Permission is hereby granted, free of charge, to any person obtaining a ** copy of this software and/or associated documentation files (the ** "Materials"), to deal in the Materials without restriction, including ** without limitation the rights to use, copy, modify, merge, publish, ** distribute, sublicense, and/or sell copies of the Materials, and to ** permit persons to whom the Materials are furnished to do so, subject to ** the following conditions: ** ** The above copyright notice and this permission notice shall be included ** in all copies or substantial portions of the Materials. ** ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. */ nigels-com-glew-285c35d/auto/src/glew_str_wgl.c0000664000175000017500000000057415135005167021641 0ustar alastairalastair } ret = (len == 0); } return ret; } #if defined(_WIN32) && !defined(GLEW_EGL) && !defined(GLEW_OSMESA) GLboolean GLEWAPIENTRY wglewIsSupported (const char* name) { const GLubyte* pos = (const GLubyte*)name; GLuint len = _glewStrLen(pos); GLboolean ret = GL_TRUE; while (ret && len > 0) { if (_glewStrSame1(&pos, &len, (const GLubyte*)"WGL_", 4)) { nigels-com-glew-285c35d/auto/src/glew_head.c0000664000175000017500000001734615135005167021066 0ustar alastairalastair#ifndef GLEW_INCLUDE # include #else # include GLEW_INCLUDE #endif #if defined(GLEW_OSMESA) # define GLAPI extern # ifndef APIENTRY # define APIENTRY # define GLEW_APIENTRY_DEFINED # endif # include # ifdef GLEW_APIENTRY_DEFINED # undef APIENTRY # undef GLEW_APIENTRY_DEFINED # endif #elif defined(GLEW_EGL) # include #elif defined(_WIN32) /* * If NOGDI is defined, wingdi.h won't be included by windows.h, and thus * wglGetProcAddress won't be declared. It will instead be implicitly declared, * potentially incorrectly, which we don't want. */ # if defined(NOGDI) # undef NOGDI # endif # include #elif !defined(__ANDROID__) && !defined(__native_client__) && !defined(__HAIKU__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) # include #endif #include /* For size_t */ #if defined(GLEW_EGL) #elif defined(GLEW_REGAL) /* In GLEW_REGAL mode we call directly into the linked libRegal.so glGetProcAddressREGAL for looking up the GL function pointers. */ # undef glGetProcAddressREGAL # ifdef WIN32 extern void * __stdcall glGetProcAddressREGAL(const GLchar *name); static void * (__stdcall * regalGetProcAddress) (const GLchar *) = glGetProcAddressREGAL; # else extern void * glGetProcAddressREGAL(const GLchar *name); static void * (*regalGetProcAddress) (const GLchar *) = glGetProcAddressREGAL; # endif # define glGetProcAddressREGAL GLEW_GET_FUN(__glewGetProcAddressREGAL) #elif defined(__sgi) || defined (__sun) || defined(__HAIKU__) || defined(GLEW_APPLE_GLX) #include #include #include void* dlGetProcAddress (const GLubyte* name) { static void* h = NULL; static void* gpa; if (h == NULL) { if ((h = dlopen(NULL, RTLD_LAZY | RTLD_LOCAL)) == NULL) return NULL; gpa = dlsym(h, "glXGetProcAddress"); } if (gpa != NULL) return ((void*(*)(const GLubyte*))gpa)(name); else return dlsym(h, (const char*)name); } #endif /* __sgi || __sun || GLEW_APPLE_GLX */ #if defined(__APPLE__) #include #include #include #if defined(MAC_OS_X_VERSION_10_3) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_3 #include void* NSGLGetProcAddress (const GLubyte *name) { static void* image = NULL; void* addr; if (NULL == image) { image = dlopen("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", RTLD_LAZY); } if( !image ) return NULL; addr = dlsym(image, (const char*)name); if( addr ) return addr; #ifdef GLEW_APPLE_GLX return dlGetProcAddress( name ); // try next for glx symbols #else return NULL; #endif } #else #include void* NSGLGetProcAddress (const GLubyte *name) { static const struct mach_header* image = NULL; NSSymbol symbol; char* symbolName; if (NULL == image) { image = NSAddImage("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", NSADDIMAGE_OPTION_RETURN_ON_ERROR); } /* prepend a '_' for the Unix C symbol mangling convention */ symbolName = malloc(strlen((const char*)name) + 2); strcpy(symbolName+1, (const char*)name); symbolName[0] = '_'; symbol = NULL; /* if (NSIsSymbolNameDefined(symbolName)) symbol = NSLookupAndBindSymbol(symbolName); */ symbol = image ? NSLookupSymbolInImage(image, symbolName, NSLOOKUPSYMBOLINIMAGE_OPTION_BIND | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR) : NULL; free(symbolName); if( symbol ) return NSAddressOfSymbol(symbol); #ifdef GLEW_APPLE_GLX return dlGetProcAddress( name ); // try next for glx symbols #else return NULL; #endif } #endif /* defined(MAC_OS_X_VERSION_10_3) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_3 */ #endif /* __APPLE__ */ /* * Define glewGetProcAddress. */ #if defined(GLEW_REGAL) # define glewGetProcAddress(name) regalGetProcAddress((const GLchar *)name) #elif defined(GLEW_OSMESA) # define glewGetProcAddress(name) OSMesaGetProcAddress((const char *)name) #elif defined(GLEW_EGL) # define glewGetProcAddress(name) eglGetProcAddress((const char *)name) #elif defined(_WIN32) # define glewGetProcAddress(name) wglGetProcAddress((LPCSTR)name) #elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX) # define glewGetProcAddress(name) NSGLGetProcAddress(name) #elif defined(__sgi) || defined(__sun) || defined(__HAIKU__) # define glewGetProcAddress(name) dlGetProcAddress(name) #elif defined(__ANDROID__) # define glewGetProcAddress(name) NULL /* TODO */ #elif defined(__native_client__) # define glewGetProcAddress(name) NULL /* TODO */ #else /* __linux */ # define glewGetProcAddress(name) (*glXGetProcAddressARB)(name) #endif /* * Redefine GLEW_GET_VAR etc without const cast */ #undef GLEW_GET_VAR # define GLEW_GET_VAR(x) (x) #ifdef WGLEW_GET_VAR # undef WGLEW_GET_VAR # define WGLEW_GET_VAR(x) (x) #endif /* WGLEW_GET_VAR */ #ifdef GLXEW_GET_VAR # undef GLXEW_GET_VAR # define GLXEW_GET_VAR(x) (x) #endif /* GLXEW_GET_VAR */ #ifdef EGLEW_GET_VAR # undef EGLEW_GET_VAR # define EGLEW_GET_VAR(x) (x) #endif /* EGLEW_GET_VAR */ /* * GLEW, just like OpenGL or GLU, does not rely on the standard C library. * These functions implement the functionality required in this file. */ static GLuint _glewStrLen (const GLubyte* s) { GLuint i=0; if (s == NULL) return 0; while (s[i] != '\0') i++; return i; } static GLuint _glewStrCLen (const GLubyte* s, GLubyte c) { GLuint i=0; if (s == NULL) return 0; while (s[i] != '\0' && s[i] != c) i++; return i; } static GLuint _glewStrCopy(char *d, const char *s, char c) { GLuint i=0; if (s == NULL) return 0; while (s[i] != '\0' && s[i] != c) { d[i] = s[i]; i++; } d[i] = '\0'; return i; } #if !defined(GLEW_OSMESA) #if !defined(__APPLE__) || defined(GLEW_APPLE_GLX) static GLboolean _glewStrSame (const GLubyte* a, const GLubyte* b, GLuint n) { GLuint i=0; if(a == NULL || b == NULL) return (a == NULL && b == NULL && n == 0) ? GL_TRUE : GL_FALSE; while (i < n && a[i] != '\0' && b[i] != '\0' && a[i] == b[i]) i++; return i == n ? GL_TRUE : GL_FALSE; } #endif #endif static GLboolean _glewStrSame1 (const GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb) { while (*na > 0 && (**a == ' ' || **a == '\n' || **a == '\r' || **a == '\t')) { (*a)++; (*na)--; } if(*na >= nb) { GLuint i=0; while (i < nb && (*a)[i] == b[i]) i++; if(i == nb) { *a = *a + nb; *na = *na - nb; return GL_TRUE; } } return GL_FALSE; } static GLboolean _glewStrSame2 (const GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb) { if(*na >= nb) { GLuint i=0; while (i < nb && (*a)[i] == b[i]) i++; if(i == nb) { *a = *a + nb; *na = *na - nb; return GL_TRUE; } } return GL_FALSE; } static GLboolean _glewStrSame3 (const GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb) { if(*na >= nb) { GLuint i=0; while (i < nb && (*a)[i] == b[i]) i++; if (i == nb && (*na == nb || (*a)[i] == ' ' || (*a)[i] == '\n' || (*a)[i] == '\r' || (*a)[i] == '\t')) { *a = *a + nb; *na = *na - nb; return GL_TRUE; } } return GL_FALSE; } /* * Search for name in the extensions string. Use of strstr() * is not sufficient because extension names can be prefixes of * other extension names. Could use strtok() but the constant * string returned by glGetString might be in read-only memory. */ #if !defined(GLEW_OSMESA) #if !defined(__APPLE__) || defined(GLEW_APPLE_GLX) static GLboolean _glewSearchExtension (const char* name, const GLubyte *start, const GLubyte *end) { const GLubyte* p; GLuint len = _glewStrLen((const GLubyte*)name); p = start; while (p < end) { GLuint n = _glewStrCLen(p, ' '); if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE; p += n+1; } return GL_FALSE; } #endif #endif nigels-com-glew-285c35d/auto/src/glew_init_gl.c0000664000175000017500000001500515135005167021600 0ustar alastairalastair/* ------------------------------------------------------------------------- */ static int _glewExtensionCompare(const char *s1, const char *s2) { /* http://www.chanduthedev.com/2012/07/strcmp-implementation-in-c.html */ while (*s1 || *s2) { if (*s1 > *s2) return 1; if (*s1 < *s2) return -1; s1++; s2++; } return 0; } static ptrdiff_t _glewBsearchExtension(const char* name) { ptrdiff_t lo = 0, hi = sizeof(_glewExtensionLookup) / sizeof(char*) - 2; while (lo <= hi) { ptrdiff_t mid = (lo + hi) / 2; const int cmp = _glewExtensionCompare(name, _glewExtensionLookup[mid]); if (cmp < 0) hi = mid - 1; else if (cmp > 0) lo = mid + 1; else return mid; } return -1; } static GLboolean *_glewGetExtensionString(const char *name) { ptrdiff_t n = _glewBsearchExtension(name); if (n >= 0) return &_glewExtensionString[n]; return NULL; } static GLboolean *_glewGetExtensionEnable(const char *name) { ptrdiff_t n = _glewBsearchExtension(name); if (n >= 0) return _glewExtensionEnabled[n]; return NULL; } static const char *_glewNextSpace(const char *i) { const char *j = i; if (j) while (*j!=' ' && *j) ++j; return j; } static const char *_glewNextNonSpace(const char *i) { const char *j = i; if (j) while (*j==' ') ++j; return j; } GLboolean GLEWAPIENTRY glewGetExtension (const char* name) { GLboolean *enable = _glewGetExtensionString(name); if (enable) return *enable; return GL_FALSE; } /* ------------------------------------------------------------------------- */ typedef const GLubyte* (GLAPIENTRY * PFNGLGETSTRINGPROC) (GLenum name); typedef void (GLAPIENTRY * PFNGLGETINTEGERVPROC) (GLenum pname, GLint *params); GLenum GLEWAPIENTRY glewContextInit (void) { PFNGLGETSTRINGPROC getString; const GLubyte* s; GLuint dot; GLint major, minor; #ifdef _WIN32 getString = glGetString; #else getString = (PFNGLGETSTRINGPROC) glewGetProcAddress((const GLubyte*)"glGetString"); if (!getString) return GLEW_ERROR_NO_GL_VERSION; #endif /* query opengl version */ s = getString(GL_VERSION); dot = _glewStrCLen(s, '.'); if (dot == 0) return GLEW_ERROR_NO_GL_VERSION; major = s[dot-1]-'0'; minor = s[dot+1]-'0'; if (minor < 0 || minor > 9) minor = 0; if (major<0 || major>9) return GLEW_ERROR_NO_GL_VERSION; if (major == 1 && minor == 0) { return GLEW_ERROR_GL_VERSION_10_ONLY; } else { GLEW_VERSION_4_6 = ( major > 4 ) || ( major == 4 && minor >= 6 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_4_5 = GLEW_VERSION_4_6 == GL_TRUE || ( major == 4 && minor >= 5 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_4_4 = GLEW_VERSION_4_5 == GL_TRUE || ( major == 4 && minor >= 4 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_4_3 = GLEW_VERSION_4_4 == GL_TRUE || ( major == 4 && minor >= 3 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_4_2 = GLEW_VERSION_4_3 == GL_TRUE || ( major == 4 && minor >= 2 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_4_1 = GLEW_VERSION_4_2 == GL_TRUE || ( major == 4 && minor >= 1 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_4_0 = GLEW_VERSION_4_1 == GL_TRUE || ( major == 4 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_3_3 = GLEW_VERSION_4_0 == GL_TRUE || ( major == 3 && minor >= 3 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_3_2 = GLEW_VERSION_3_3 == GL_TRUE || ( major == 3 && minor >= 2 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_3_1 = GLEW_VERSION_3_2 == GL_TRUE || ( major == 3 && minor >= 1 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_3_0 = GLEW_VERSION_3_1 == GL_TRUE || ( major == 3 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_2_1 = GLEW_VERSION_3_0 == GL_TRUE || ( major == 2 && minor >= 1 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_2_0 = GLEW_VERSION_2_1 == GL_TRUE || ( major == 2 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_1_5 = GLEW_VERSION_2_0 == GL_TRUE || ( major == 1 && minor >= 5 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_1_4 = GLEW_VERSION_1_5 == GL_TRUE || ( major == 1 && minor >= 4 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_1_3 = GLEW_VERSION_1_4 == GL_TRUE || ( major == 1 && minor >= 3 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_1_2_1 = GLEW_VERSION_1_3 == GL_TRUE ? GL_TRUE : GL_FALSE; GLEW_VERSION_1_2 = GLEW_VERSION_1_2_1 == GL_TRUE || ( major == 1 && minor >= 2 ) ? GL_TRUE : GL_FALSE; GLEW_VERSION_1_1 = GLEW_VERSION_1_2 == GL_TRUE || ( major == 1 && minor >= 1 ) ? GL_TRUE : GL_FALSE; } { size_t i; for (i = 0; i < sizeof(_glewExtensionString) / sizeof(_glewExtensionString[0]); ++i) _glewExtensionString[i] = GL_FALSE; } if (GLEW_VERSION_3_0) { GLint n = 0; GLint i; PFNGLGETINTEGERVPROC getIntegerv; PFNGLGETSTRINGIPROC getStringi; const char *ext; GLboolean *enable; #ifdef _WIN32 getIntegerv = glGetIntegerv; #else getIntegerv = (PFNGLGETINTEGERVPROC) glewGetProcAddress((const GLubyte*)"glGetIntegerv"); #endif if (getIntegerv) getIntegerv(GL_NUM_EXTENSIONS, &n); /* glGetStringi is OpenGL 3.0 */ getStringi = (PFNGLGETSTRINGIPROC) glewGetProcAddress((const GLubyte*)"glGetStringi"); if (getStringi) for (i = 0; i= (ptrdiff_t) sizeof(ext)) continue; _glewStrCopy(ext, i, ' '); /* Based on extension string(s), glewGetExtension purposes */ enable = _glewGetExtensionString(ext); if (enable) *enable = GL_TRUE; /* Based on extension string(s), experimental mode, glewIsSupported purposes */ enable = _glewGetExtensionEnable(ext); if (enable) *enable = GL_TRUE; } } } nigels-com-glew-285c35d/auto/src/glewinfo_egl.c0000664000175000017500000000007315135005167021575 0ustar alastairalastair} #elif defined(GLEW_EGL) static void eglewInfo (void) { nigels-com-glew-285c35d/auto/src/glxew_mid.h0000664000175000017500000000024315135005167021117 0ustar alastairalastair/* ------------------------------------------------------------------------- */ #define GLXEW_FUN_EXPORT GLEW_FUN_EXPORT #define GLXEW_VAR_EXPORT GLEW_VAR_EXPORT nigels-com-glew-285c35d/auto/src/footer.html0000664000175000017500000000011715135005167021153 0ustar alastairalastair nigels-com-glew-285c35d/auto/src/wglew_mid.h0000664000175000017500000000024315135005167021116 0ustar alastairalastair/* ------------------------------------------------------------------------- */ #define WGLEW_FUN_EXPORT GLEW_FUN_EXPORT #define WGLEW_VAR_EXPORT GLEW_VAR_EXPORT nigels-com-glew-285c35d/auto/src/glew_str_glx.c0000664000175000017500000000073615135005167021642 0ustar alastairalastair } ret = (len == 0); } return ret; } #elif !defined(GLEW_OSMESA) && !defined(GLEW_EGL) && !defined(__ANDROID__) && !defined(__native_client__) && !defined(__HAIKU__) && !defined(__APPLE__) || defined(GLEW_APPLE_GLX) GLboolean glxewIsSupported (const char* name) { const GLubyte* pos = (const GLubyte*)name; GLuint len = _glewStrLen(pos); GLboolean ret = GL_TRUE; while (ret && len > 0) { if(_glewStrSame1(&pos, &len, (const GLubyte*)"GLX_", 4)) { nigels-com-glew-285c35d/auto/src/header.html0000664000175000017500000001034015135005167021104 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

nigels-com-glew-285c35d/auto/src/eglew_tail.h0000664000175000017500000000063215135005167021256 0ustar alastairalastair/* ------------------------------------------------------------------------ */ GLEWAPI GLenum GLEWAPIENTRY eglewInit (EGLDisplay display); GLEWAPI GLboolean GLEWAPIENTRY eglewIsSupported (const char *name); #define EGLEW_GET_VAR(x) (*(const GLboolean*)&x) #define EGLEW_GET_FUN(x) x GLEWAPI GLboolean GLEWAPIENTRY eglewGetExtension (const char *name); #ifdef __cplusplus } #endif #endif /* __eglew_h__ */ nigels-com-glew-285c35d/auto/src/wglew_head.h0000664000175000017500000000121715135005167021250 0ustar alastairalastair#ifndef __wglew_h__ #define __wglew_h__ #define __WGLEW_H__ #ifdef __wglext_h_ #error wglext.h included before wglew.h #endif #define __wglext_h_ #if !defined(WINAPI) # ifndef WIN32_LEAN_AND_MEAN # define WIN32_LEAN_AND_MEAN 1 # endif #include # undef WIN32_LEAN_AND_MEAN #endif /* * GLEW_STATIC needs to be set when using the static version. * GLEW_BUILD is set when building the DLL version. */ #ifdef GLEW_STATIC # define GLEWAPI extern #else # ifdef GLEW_BUILD # define GLEWAPI extern __declspec(dllexport) # else # define GLEWAPI extern __declspec(dllimport) # endif #endif #ifdef __cplusplus extern "C" { #endif nigels-com-glew-285c35d/auto/src/mesa_license.h0000664000175000017500000000222215135005167021566 0ustar alastairalastair/* * Mesa 3-D graphics library * Version: 7.0 * * Copyright (C) 1999-2007 Brian Paul All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ nigels-com-glew-285c35d/auto/src/glew_head.h0000664000175000017500000013325115135005167021065 0ustar alastairalastair#ifndef __glew_h__ #define __glew_h__ #define __GLEW_H__ #if defined(__gl_h_) || defined(__GL_H__) || defined(_GL_H) || defined(__gl_gl_h_) || defined(__X_GL_H) #error gl.h included before glew.h #endif #if defined(__gl2_h_) #error gl2.h included before glew.h #endif #if defined(__gltypes_h_) #error gltypes.h included before glew.h #endif #if defined(__REGAL_H__) #error Regal.h included before glew.h #endif #if defined(__glext_h_) || defined(__GLEXT_H_) || defined(__gl_glext_h_) #error glext.h included before glew.h #endif #if defined(__gl_ATI_h_) #error glATI.h included before glew.h #endif #define __gl_h_ #define __gl2_h_ #define __GL_H__ #define _GL_H #define __gl_gl_h_ #define __gltypes_h_ #define __REGAL_H__ #define __X_GL_H #define __glext_h_ #define __GLEXT_H_ #define __gl_glext_h_ #define __gl_ATI_h_ #if defined(_WIN32) /* * GLEW does not include to avoid name space pollution. * GL needs GLAPI and GLAPIENTRY, GLU needs APIENTRY, CALLBACK, and wchar_t * defined properly. */ /* and */ #ifdef APIENTRY # ifndef GLAPIENTRY # define GLAPIENTRY APIENTRY # endif # ifndef GLEWAPIENTRY # define GLEWAPIENTRY APIENTRY # endif #else #define GLEW_APIENTRY_DEFINED # if defined(__MINGW32__) || defined(__CYGWIN__) || (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__) # define APIENTRY __stdcall # ifndef GLAPIENTRY # define GLAPIENTRY __stdcall # endif # ifndef GLEWAPIENTRY # define GLEWAPIENTRY __stdcall # endif # else # define APIENTRY # endif #endif /* */ #ifndef CALLBACK #define GLEW_CALLBACK_DEFINED # if defined(__MINGW32__) || defined(__CYGWIN__) # define CALLBACK __attribute__ ((__stdcall__)) # elif (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) && !defined(MIDL_PASS) # define CALLBACK __stdcall # else # define CALLBACK # endif #endif /* and */ #ifndef WINGDIAPI #define GLEW_WINGDIAPI_DEFINED #define WINGDIAPI __declspec(dllimport) #endif /* */ #if (defined(_MSC_VER) || defined(__BORLANDC__)) && !defined(_WCHAR_T_DEFINED) typedef unsigned short wchar_t; # define _WCHAR_T_DEFINED #endif /* */ #if !defined(_W64) # if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && defined(_MSC_VER) && _MSC_VER >= 1300 # define _W64 __w64 # else # define _W64 # endif #endif #if !defined(_PTRDIFF_T_DEFINED) && !defined(_PTRDIFF_T_) && !defined(__MINGW64__) # ifdef _WIN64 typedef __int64 ptrdiff_t; # else typedef _W64 int ptrdiff_t; # endif # define _PTRDIFF_T_DEFINED # define _PTRDIFF_T_ #endif #ifndef GLAPI # if defined(__MINGW32__) || defined(__CYGWIN__) # define GLAPI extern # else # define GLAPI WINGDIAPI # endif #endif /* * GLEW_STATIC is defined for static library. * GLEW_BUILD is defined for building the DLL library. */ #ifdef GLEW_STATIC # define GLEWAPI extern #else # ifdef GLEW_BUILD # define GLEWAPI extern __declspec(dllexport) # else # define GLEWAPI extern __declspec(dllimport) # endif #endif #else /* _UNIX */ /* * Needed for ptrdiff_t in turn needed by VBO. This is defined by ISO * C. On my system, this amounts to _3 lines_ of included code, all of * them pretty much harmless. If you know of a way of detecting 32 vs * 64 _targets_ at compile time you are free to replace this with * something that's portable. For now, _this_ is the portable solution. * (mem, 2004-01-04) */ #if defined(__APPLE__) || defined(__linux__) /* GCC12 errors out when including with __cplusplus < 201103L */ # if defined(__cplusplus) && __cplusplus >= 201103L # include # include # else # include # include # endif #else # include /* SGI MIPSPro doesn't like stdint.h in C++ mode */ /* ID: 3376260 Solaris 9 has inttypes.h, but not stdint.h */ # if (defined(__sgi) || defined(__sun)) && !defined(__GNUC__) # include # else # include # endif #endif #define GLEW_APIENTRY_DEFINED #define APIENTRY /* * GLEW_STATIC is defined for static library. */ #ifdef GLEW_STATIC # define GLEWAPI extern #else # if defined(__GNUC__) && __GNUC__>=4 # define GLEWAPI extern __attribute__ ((visibility("default"))) # elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) # define GLEWAPI extern __global # else # define GLEWAPI extern # endif #endif /* */ #ifndef GLAPI #define GLAPI extern #endif #endif /* _WIN32 */ #ifndef GLAPIENTRY #define GLAPIENTRY #endif #ifndef GLEWAPIENTRY #define GLEWAPIENTRY #endif #define GLEW_VAR_EXPORT GLEWAPI #define GLEW_FUN_EXPORT GLEWAPI #ifdef __cplusplus extern "C" { #endif /* ----------------------------- GL_VERSION_1_1 ---------------------------- */ #ifndef GL_VERSION_1_1 #define GL_VERSION_1_1 1 typedef unsigned int GLenum; typedef unsigned int GLbitfield; typedef unsigned int GLuint; typedef int GLint; typedef int GLsizei; typedef unsigned char GLboolean; typedef signed char GLbyte; typedef short GLshort; typedef unsigned char GLubyte; typedef unsigned short GLushort; typedef unsigned long GLulong; typedef float GLfloat; typedef float GLclampf; typedef double GLdouble; typedef double GLclampd; typedef void GLvoid; #if defined(_MSC_VER) && _MSC_VER < 1400 typedef __int64 GLint64EXT; typedef unsigned __int64 GLuint64EXT; #elif defined(_MSC_VER) || defined(__BORLANDC__) typedef signed long long GLint64EXT; typedef unsigned long long GLuint64EXT; #else # if defined(__MINGW32__) || defined(__CYGWIN__) #include # endif typedef int64_t GLint64EXT; typedef uint64_t GLuint64EXT; #endif typedef GLint64EXT GLint64; typedef GLuint64EXT GLuint64; typedef struct __GLsync *GLsync; typedef char GLchar; typedef void *GLeglImageOES; /* GL_EXT_EGL_image_storage */ #define GL_ZERO 0 #define GL_FALSE 0 #define GL_LOGIC_OP 0x0BF1 #define GL_NONE 0 #define GL_TEXTURE_COMPONENTS 0x1003 #define GL_NO_ERROR 0 #define GL_POINTS 0x0000 #define GL_CURRENT_BIT 0x00000001 #define GL_TRUE 1 #define GL_ONE 1 #define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 #define GL_LINES 0x0001 #define GL_LINE_LOOP 0x0002 #define GL_POINT_BIT 0x00000002 #define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 #define GL_LINE_STRIP 0x0003 #define GL_LINE_BIT 0x00000004 #define GL_TRIANGLES 0x0004 #define GL_TRIANGLE_STRIP 0x0005 #define GL_TRIANGLE_FAN 0x0006 #define GL_QUADS 0x0007 #define GL_QUAD_STRIP 0x0008 #define GL_POLYGON_BIT 0x00000008 #define GL_POLYGON 0x0009 #define GL_POLYGON_STIPPLE_BIT 0x00000010 #define GL_PIXEL_MODE_BIT 0x00000020 #define GL_LIGHTING_BIT 0x00000040 #define GL_FOG_BIT 0x00000080 #define GL_DEPTH_BUFFER_BIT 0x00000100 #define GL_ACCUM 0x0100 #define GL_LOAD 0x0101 #define GL_RETURN 0x0102 #define GL_MULT 0x0103 #define GL_ADD 0x0104 #define GL_NEVER 0x0200 #define GL_ACCUM_BUFFER_BIT 0x00000200 #define GL_LESS 0x0201 #define GL_EQUAL 0x0202 #define GL_LEQUAL 0x0203 #define GL_GREATER 0x0204 #define GL_NOTEQUAL 0x0205 #define GL_GEQUAL 0x0206 #define GL_ALWAYS 0x0207 #define GL_SRC_COLOR 0x0300 #define GL_ONE_MINUS_SRC_COLOR 0x0301 #define GL_SRC_ALPHA 0x0302 #define GL_ONE_MINUS_SRC_ALPHA 0x0303 #define GL_DST_ALPHA 0x0304 #define GL_ONE_MINUS_DST_ALPHA 0x0305 #define GL_DST_COLOR 0x0306 #define GL_ONE_MINUS_DST_COLOR 0x0307 #define GL_SRC_ALPHA_SATURATE 0x0308 #define GL_STENCIL_BUFFER_BIT 0x00000400 #define GL_FRONT_LEFT 0x0400 #define GL_FRONT_RIGHT 0x0401 #define GL_BACK_LEFT 0x0402 #define GL_BACK_RIGHT 0x0403 #define GL_FRONT 0x0404 #define GL_BACK 0x0405 #define GL_LEFT 0x0406 #define GL_RIGHT 0x0407 #define GL_FRONT_AND_BACK 0x0408 #define GL_AUX0 0x0409 #define GL_AUX1 0x040A #define GL_AUX2 0x040B #define GL_AUX3 0x040C #define GL_INVALID_ENUM 0x0500 #define GL_INVALID_VALUE 0x0501 #define GL_INVALID_OPERATION 0x0502 #define GL_STACK_OVERFLOW 0x0503 #define GL_STACK_UNDERFLOW 0x0504 #define GL_OUT_OF_MEMORY 0x0505 #define GL_2D 0x0600 #define GL_3D 0x0601 #define GL_3D_COLOR 0x0602 #define GL_3D_COLOR_TEXTURE 0x0603 #define GL_4D_COLOR_TEXTURE 0x0604 #define GL_PASS_THROUGH_TOKEN 0x0700 #define GL_POINT_TOKEN 0x0701 #define GL_LINE_TOKEN 0x0702 #define GL_POLYGON_TOKEN 0x0703 #define GL_BITMAP_TOKEN 0x0704 #define GL_DRAW_PIXEL_TOKEN 0x0705 #define GL_COPY_PIXEL_TOKEN 0x0706 #define GL_LINE_RESET_TOKEN 0x0707 #define GL_EXP 0x0800 #define GL_VIEWPORT_BIT 0x00000800 #define GL_EXP2 0x0801 #define GL_CW 0x0900 #define GL_CCW 0x0901 #define GL_COEFF 0x0A00 #define GL_ORDER 0x0A01 #define GL_DOMAIN 0x0A02 #define GL_CURRENT_COLOR 0x0B00 #define GL_CURRENT_INDEX 0x0B01 #define GL_CURRENT_NORMAL 0x0B02 #define GL_CURRENT_TEXTURE_COORDS 0x0B03 #define GL_CURRENT_RASTER_COLOR 0x0B04 #define GL_CURRENT_RASTER_INDEX 0x0B05 #define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 #define GL_CURRENT_RASTER_POSITION 0x0B07 #define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 #define GL_CURRENT_RASTER_DISTANCE 0x0B09 #define GL_POINT_SMOOTH 0x0B10 #define GL_POINT_SIZE 0x0B11 #define GL_POINT_SIZE_RANGE 0x0B12 #define GL_POINT_SIZE_GRANULARITY 0x0B13 #define GL_LINE_SMOOTH 0x0B20 #define GL_LINE_WIDTH 0x0B21 #define GL_LINE_WIDTH_RANGE 0x0B22 #define GL_LINE_WIDTH_GRANULARITY 0x0B23 #define GL_LINE_STIPPLE 0x0B24 #define GL_LINE_STIPPLE_PATTERN 0x0B25 #define GL_LINE_STIPPLE_REPEAT 0x0B26 #define GL_LIST_MODE 0x0B30 #define GL_MAX_LIST_NESTING 0x0B31 #define GL_LIST_BASE 0x0B32 #define GL_LIST_INDEX 0x0B33 #define GL_POLYGON_MODE 0x0B40 #define GL_POLYGON_SMOOTH 0x0B41 #define GL_POLYGON_STIPPLE 0x0B42 #define GL_EDGE_FLAG 0x0B43 #define GL_CULL_FACE 0x0B44 #define GL_CULL_FACE_MODE 0x0B45 #define GL_FRONT_FACE 0x0B46 #define GL_LIGHTING 0x0B50 #define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 #define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 #define GL_LIGHT_MODEL_AMBIENT 0x0B53 #define GL_SHADE_MODEL 0x0B54 #define GL_COLOR_MATERIAL_FACE 0x0B55 #define GL_COLOR_MATERIAL_PARAMETER 0x0B56 #define GL_COLOR_MATERIAL 0x0B57 #define GL_FOG 0x0B60 #define GL_FOG_INDEX 0x0B61 #define GL_FOG_DENSITY 0x0B62 #define GL_FOG_START 0x0B63 #define GL_FOG_END 0x0B64 #define GL_FOG_MODE 0x0B65 #define GL_FOG_COLOR 0x0B66 #define GL_DEPTH_RANGE 0x0B70 #define GL_DEPTH_TEST 0x0B71 #define GL_DEPTH_WRITEMASK 0x0B72 #define GL_DEPTH_CLEAR_VALUE 0x0B73 #define GL_DEPTH_FUNC 0x0B74 #define GL_ACCUM_CLEAR_VALUE 0x0B80 #define GL_STENCIL_TEST 0x0B90 #define GL_STENCIL_CLEAR_VALUE 0x0B91 #define GL_STENCIL_FUNC 0x0B92 #define GL_STENCIL_VALUE_MASK 0x0B93 #define GL_STENCIL_FAIL 0x0B94 #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 #define GL_STENCIL_REF 0x0B97 #define GL_STENCIL_WRITEMASK 0x0B98 #define GL_MATRIX_MODE 0x0BA0 #define GL_NORMALIZE 0x0BA1 #define GL_VIEWPORT 0x0BA2 #define GL_MODELVIEW_STACK_DEPTH 0x0BA3 #define GL_PROJECTION_STACK_DEPTH 0x0BA4 #define GL_TEXTURE_STACK_DEPTH 0x0BA5 #define GL_MODELVIEW_MATRIX 0x0BA6 #define GL_PROJECTION_MATRIX 0x0BA7 #define GL_TEXTURE_MATRIX 0x0BA8 #define GL_ATTRIB_STACK_DEPTH 0x0BB0 #define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 #define GL_ALPHA_TEST 0x0BC0 #define GL_ALPHA_TEST_FUNC 0x0BC1 #define GL_ALPHA_TEST_REF 0x0BC2 #define GL_DITHER 0x0BD0 #define GL_BLEND_DST 0x0BE0 #define GL_BLEND_SRC 0x0BE1 #define GL_BLEND 0x0BE2 #define GL_LOGIC_OP_MODE 0x0BF0 #define GL_INDEX_LOGIC_OP 0x0BF1 #define GL_COLOR_LOGIC_OP 0x0BF2 #define GL_AUX_BUFFERS 0x0C00 #define GL_DRAW_BUFFER 0x0C01 #define GL_READ_BUFFER 0x0C02 #define GL_SCISSOR_BOX 0x0C10 #define GL_SCISSOR_TEST 0x0C11 #define GL_INDEX_CLEAR_VALUE 0x0C20 #define GL_INDEX_WRITEMASK 0x0C21 #define GL_COLOR_CLEAR_VALUE 0x0C22 #define GL_COLOR_WRITEMASK 0x0C23 #define GL_INDEX_MODE 0x0C30 #define GL_RGBA_MODE 0x0C31 #define GL_DOUBLEBUFFER 0x0C32 #define GL_STEREO 0x0C33 #define GL_RENDER_MODE 0x0C40 #define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 #define GL_POINT_SMOOTH_HINT 0x0C51 #define GL_LINE_SMOOTH_HINT 0x0C52 #define GL_POLYGON_SMOOTH_HINT 0x0C53 #define GL_FOG_HINT 0x0C54 #define GL_TEXTURE_GEN_S 0x0C60 #define GL_TEXTURE_GEN_T 0x0C61 #define GL_TEXTURE_GEN_R 0x0C62 #define GL_TEXTURE_GEN_Q 0x0C63 #define GL_PIXEL_MAP_I_TO_I 0x0C70 #define GL_PIXEL_MAP_S_TO_S 0x0C71 #define GL_PIXEL_MAP_I_TO_R 0x0C72 #define GL_PIXEL_MAP_I_TO_G 0x0C73 #define GL_PIXEL_MAP_I_TO_B 0x0C74 #define GL_PIXEL_MAP_I_TO_A 0x0C75 #define GL_PIXEL_MAP_R_TO_R 0x0C76 #define GL_PIXEL_MAP_G_TO_G 0x0C77 #define GL_PIXEL_MAP_B_TO_B 0x0C78 #define GL_PIXEL_MAP_A_TO_A 0x0C79 #define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 #define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 #define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 #define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 #define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 #define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 #define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 #define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 #define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 #define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 #define GL_UNPACK_SWAP_BYTES 0x0CF0 #define GL_UNPACK_LSB_FIRST 0x0CF1 #define GL_UNPACK_ROW_LENGTH 0x0CF2 #define GL_UNPACK_SKIP_ROWS 0x0CF3 #define GL_UNPACK_SKIP_PIXELS 0x0CF4 #define GL_UNPACK_ALIGNMENT 0x0CF5 #define GL_PACK_SWAP_BYTES 0x0D00 #define GL_PACK_LSB_FIRST 0x0D01 #define GL_PACK_ROW_LENGTH 0x0D02 #define GL_PACK_SKIP_ROWS 0x0D03 #define GL_PACK_SKIP_PIXELS 0x0D04 #define GL_PACK_ALIGNMENT 0x0D05 #define GL_MAP_COLOR 0x0D10 #define GL_MAP_STENCIL 0x0D11 #define GL_INDEX_SHIFT 0x0D12 #define GL_INDEX_OFFSET 0x0D13 #define GL_RED_SCALE 0x0D14 #define GL_RED_BIAS 0x0D15 #define GL_ZOOM_X 0x0D16 #define GL_ZOOM_Y 0x0D17 #define GL_GREEN_SCALE 0x0D18 #define GL_GREEN_BIAS 0x0D19 #define GL_BLUE_SCALE 0x0D1A #define GL_BLUE_BIAS 0x0D1B #define GL_ALPHA_SCALE 0x0D1C #define GL_ALPHA_BIAS 0x0D1D #define GL_DEPTH_SCALE 0x0D1E #define GL_DEPTH_BIAS 0x0D1F #define GL_MAX_EVAL_ORDER 0x0D30 #define GL_MAX_LIGHTS 0x0D31 #define GL_MAX_CLIP_PLANES 0x0D32 #define GL_MAX_TEXTURE_SIZE 0x0D33 #define GL_MAX_PIXEL_MAP_TABLE 0x0D34 #define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 #define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 #define GL_MAX_NAME_STACK_DEPTH 0x0D37 #define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 #define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 #define GL_MAX_VIEWPORT_DIMS 0x0D3A #define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B #define GL_SUBPIXEL_BITS 0x0D50 #define GL_INDEX_BITS 0x0D51 #define GL_RED_BITS 0x0D52 #define GL_GREEN_BITS 0x0D53 #define GL_BLUE_BITS 0x0D54 #define GL_ALPHA_BITS 0x0D55 #define GL_DEPTH_BITS 0x0D56 #define GL_STENCIL_BITS 0x0D57 #define GL_ACCUM_RED_BITS 0x0D58 #define GL_ACCUM_GREEN_BITS 0x0D59 #define GL_ACCUM_BLUE_BITS 0x0D5A #define GL_ACCUM_ALPHA_BITS 0x0D5B #define GL_NAME_STACK_DEPTH 0x0D70 #define GL_AUTO_NORMAL 0x0D80 #define GL_MAP1_COLOR_4 0x0D90 #define GL_MAP1_INDEX 0x0D91 #define GL_MAP1_NORMAL 0x0D92 #define GL_MAP1_TEXTURE_COORD_1 0x0D93 #define GL_MAP1_TEXTURE_COORD_2 0x0D94 #define GL_MAP1_TEXTURE_COORD_3 0x0D95 #define GL_MAP1_TEXTURE_COORD_4 0x0D96 #define GL_MAP1_VERTEX_3 0x0D97 #define GL_MAP1_VERTEX_4 0x0D98 #define GL_MAP2_COLOR_4 0x0DB0 #define GL_MAP2_INDEX 0x0DB1 #define GL_MAP2_NORMAL 0x0DB2 #define GL_MAP2_TEXTURE_COORD_1 0x0DB3 #define GL_MAP2_TEXTURE_COORD_2 0x0DB4 #define GL_MAP2_TEXTURE_COORD_3 0x0DB5 #define GL_MAP2_TEXTURE_COORD_4 0x0DB6 #define GL_MAP2_VERTEX_3 0x0DB7 #define GL_MAP2_VERTEX_4 0x0DB8 #define GL_MAP1_GRID_DOMAIN 0x0DD0 #define GL_MAP1_GRID_SEGMENTS 0x0DD1 #define GL_MAP2_GRID_DOMAIN 0x0DD2 #define GL_MAP2_GRID_SEGMENTS 0x0DD3 #define GL_TEXTURE_1D 0x0DE0 #define GL_TEXTURE_2D 0x0DE1 #define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 #define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 #define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 #define GL_SELECTION_BUFFER_POINTER 0x0DF3 #define GL_SELECTION_BUFFER_SIZE 0x0DF4 #define GL_TEXTURE_WIDTH 0x1000 #define GL_TRANSFORM_BIT 0x00001000 #define GL_TEXTURE_HEIGHT 0x1001 #define GL_TEXTURE_INTERNAL_FORMAT 0x1003 #define GL_TEXTURE_BORDER_COLOR 0x1004 #define GL_TEXTURE_BORDER 0x1005 #define GL_DONT_CARE 0x1100 #define GL_FASTEST 0x1101 #define GL_NICEST 0x1102 #define GL_AMBIENT 0x1200 #define GL_DIFFUSE 0x1201 #define GL_SPECULAR 0x1202 #define GL_POSITION 0x1203 #define GL_SPOT_DIRECTION 0x1204 #define GL_SPOT_EXPONENT 0x1205 #define GL_SPOT_CUTOFF 0x1206 #define GL_CONSTANT_ATTENUATION 0x1207 #define GL_LINEAR_ATTENUATION 0x1208 #define GL_QUADRATIC_ATTENUATION 0x1209 #define GL_COMPILE 0x1300 #define GL_COMPILE_AND_EXECUTE 0x1301 #define GL_BYTE 0x1400 #define GL_UNSIGNED_BYTE 0x1401 #define GL_SHORT 0x1402 #define GL_UNSIGNED_SHORT 0x1403 #define GL_INT 0x1404 #define GL_UNSIGNED_INT 0x1405 #define GL_FLOAT 0x1406 #define GL_2_BYTES 0x1407 #define GL_3_BYTES 0x1408 #define GL_4_BYTES 0x1409 #define GL_DOUBLE 0x140A #define GL_CLEAR 0x1500 #define GL_AND 0x1501 #define GL_AND_REVERSE 0x1502 #define GL_COPY 0x1503 #define GL_AND_INVERTED 0x1504 #define GL_NOOP 0x1505 #define GL_XOR 0x1506 #define GL_OR 0x1507 #define GL_NOR 0x1508 #define GL_EQUIV 0x1509 #define GL_INVERT 0x150A #define GL_OR_REVERSE 0x150B #define GL_COPY_INVERTED 0x150C #define GL_OR_INVERTED 0x150D #define GL_NAND 0x150E #define GL_SET 0x150F #define GL_EMISSION 0x1600 #define GL_SHININESS 0x1601 #define GL_AMBIENT_AND_DIFFUSE 0x1602 #define GL_COLOR_INDEXES 0x1603 #define GL_MODELVIEW 0x1700 #define GL_PROJECTION 0x1701 #define GL_TEXTURE 0x1702 #define GL_COLOR 0x1800 #define GL_DEPTH 0x1801 #define GL_STENCIL 0x1802 #define GL_COLOR_INDEX 0x1900 #define GL_STENCIL_INDEX 0x1901 #define GL_DEPTH_COMPONENT 0x1902 #define GL_RED 0x1903 #define GL_GREEN 0x1904 #define GL_BLUE 0x1905 #define GL_ALPHA 0x1906 #define GL_RGB 0x1907 #define GL_RGBA 0x1908 #define GL_LUMINANCE 0x1909 #define GL_LUMINANCE_ALPHA 0x190A #define GL_BITMAP 0x1A00 #define GL_POINT 0x1B00 #define GL_LINE 0x1B01 #define GL_FILL 0x1B02 #define GL_RENDER 0x1C00 #define GL_FEEDBACK 0x1C01 #define GL_SELECT 0x1C02 #define GL_FLAT 0x1D00 #define GL_SMOOTH 0x1D01 #define GL_KEEP 0x1E00 #define GL_REPLACE 0x1E01 #define GL_INCR 0x1E02 #define GL_DECR 0x1E03 #define GL_VENDOR 0x1F00 #define GL_RENDERER 0x1F01 #define GL_VERSION 0x1F02 #define GL_EXTENSIONS 0x1F03 #define GL_S 0x2000 #define GL_ENABLE_BIT 0x00002000 #define GL_T 0x2001 #define GL_R 0x2002 #define GL_Q 0x2003 #define GL_MODULATE 0x2100 #define GL_DECAL 0x2101 #define GL_TEXTURE_ENV_MODE 0x2200 #define GL_TEXTURE_ENV_COLOR 0x2201 #define GL_TEXTURE_ENV 0x2300 #define GL_EYE_LINEAR 0x2400 #define GL_OBJECT_LINEAR 0x2401 #define GL_SPHERE_MAP 0x2402 #define GL_TEXTURE_GEN_MODE 0x2500 #define GL_OBJECT_PLANE 0x2501 #define GL_EYE_PLANE 0x2502 #define GL_NEAREST 0x2600 #define GL_LINEAR 0x2601 #define GL_NEAREST_MIPMAP_NEAREST 0x2700 #define GL_LINEAR_MIPMAP_NEAREST 0x2701 #define GL_NEAREST_MIPMAP_LINEAR 0x2702 #define GL_LINEAR_MIPMAP_LINEAR 0x2703 #define GL_TEXTURE_MAG_FILTER 0x2800 #define GL_TEXTURE_MIN_FILTER 0x2801 #define GL_TEXTURE_WRAP_S 0x2802 #define GL_TEXTURE_WRAP_T 0x2803 #define GL_CLAMP 0x2900 #define GL_REPEAT 0x2901 #define GL_POLYGON_OFFSET_UNITS 0x2A00 #define GL_POLYGON_OFFSET_POINT 0x2A01 #define GL_POLYGON_OFFSET_LINE 0x2A02 #define GL_R3_G3_B2 0x2A10 #define GL_V2F 0x2A20 #define GL_V3F 0x2A21 #define GL_C4UB_V2F 0x2A22 #define GL_C4UB_V3F 0x2A23 #define GL_C3F_V3F 0x2A24 #define GL_N3F_V3F 0x2A25 #define GL_C4F_N3F_V3F 0x2A26 #define GL_T2F_V3F 0x2A27 #define GL_T4F_V4F 0x2A28 #define GL_T2F_C4UB_V3F 0x2A29 #define GL_T2F_C3F_V3F 0x2A2A #define GL_T2F_N3F_V3F 0x2A2B #define GL_T2F_C4F_N3F_V3F 0x2A2C #define GL_T4F_C4F_N3F_V4F 0x2A2D #define GL_CLIP_PLANE0 0x3000 #define GL_CLIP_PLANE1 0x3001 #define GL_CLIP_PLANE2 0x3002 #define GL_CLIP_PLANE3 0x3003 #define GL_CLIP_PLANE4 0x3004 #define GL_CLIP_PLANE5 0x3005 #define GL_LIGHT0 0x4000 #define GL_COLOR_BUFFER_BIT 0x00004000 #define GL_LIGHT1 0x4001 #define GL_LIGHT2 0x4002 #define GL_LIGHT3 0x4003 #define GL_LIGHT4 0x4004 #define GL_LIGHT5 0x4005 #define GL_LIGHT6 0x4006 #define GL_LIGHT7 0x4007 #define GL_HINT_BIT 0x00008000 #define GL_POLYGON_OFFSET_FILL 0x8037 #define GL_POLYGON_OFFSET_FACTOR 0x8038 #define GL_ALPHA4 0x803B #define GL_ALPHA8 0x803C #define GL_ALPHA12 0x803D #define GL_ALPHA16 0x803E #define GL_LUMINANCE4 0x803F #define GL_LUMINANCE8 0x8040 #define GL_LUMINANCE12 0x8041 #define GL_LUMINANCE16 0x8042 #define GL_LUMINANCE4_ALPHA4 0x8043 #define GL_LUMINANCE6_ALPHA2 0x8044 #define GL_LUMINANCE8_ALPHA8 0x8045 #define GL_LUMINANCE12_ALPHA4 0x8046 #define GL_LUMINANCE12_ALPHA12 0x8047 #define GL_LUMINANCE16_ALPHA16 0x8048 #define GL_INTENSITY 0x8049 #define GL_INTENSITY4 0x804A #define GL_INTENSITY8 0x804B #define GL_INTENSITY12 0x804C #define GL_INTENSITY16 0x804D #define GL_RGB4 0x804F #define GL_RGB5 0x8050 #define GL_RGB8 0x8051 #define GL_RGB10 0x8052 #define GL_RGB12 0x8053 #define GL_RGB16 0x8054 #define GL_RGBA2 0x8055 #define GL_RGBA4 0x8056 #define GL_RGB5_A1 0x8057 #define GL_RGBA8 0x8058 #define GL_RGB10_A2 0x8059 #define GL_RGBA12 0x805A #define GL_RGBA16 0x805B #define GL_TEXTURE_RED_SIZE 0x805C #define GL_TEXTURE_GREEN_SIZE 0x805D #define GL_TEXTURE_BLUE_SIZE 0x805E #define GL_TEXTURE_ALPHA_SIZE 0x805F #define GL_TEXTURE_LUMINANCE_SIZE 0x8060 #define GL_TEXTURE_INTENSITY_SIZE 0x8061 #define GL_PROXY_TEXTURE_1D 0x8063 #define GL_PROXY_TEXTURE_2D 0x8064 #define GL_TEXTURE_PRIORITY 0x8066 #define GL_TEXTURE_RESIDENT 0x8067 #define GL_TEXTURE_BINDING_1D 0x8068 #define GL_TEXTURE_BINDING_2D 0x8069 #define GL_VERTEX_ARRAY 0x8074 #define GL_NORMAL_ARRAY 0x8075 #define GL_COLOR_ARRAY 0x8076 #define GL_INDEX_ARRAY 0x8077 #define GL_TEXTURE_COORD_ARRAY 0x8078 #define GL_EDGE_FLAG_ARRAY 0x8079 #define GL_VERTEX_ARRAY_SIZE 0x807A #define GL_VERTEX_ARRAY_TYPE 0x807B #define GL_VERTEX_ARRAY_STRIDE 0x807C #define GL_NORMAL_ARRAY_TYPE 0x807E #define GL_NORMAL_ARRAY_STRIDE 0x807F #define GL_COLOR_ARRAY_SIZE 0x8081 #define GL_COLOR_ARRAY_TYPE 0x8082 #define GL_COLOR_ARRAY_STRIDE 0x8083 #define GL_INDEX_ARRAY_TYPE 0x8085 #define GL_INDEX_ARRAY_STRIDE 0x8086 #define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 #define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 #define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A #define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C #define GL_VERTEX_ARRAY_POINTER 0x808E #define GL_NORMAL_ARRAY_POINTER 0x808F #define GL_COLOR_ARRAY_POINTER 0x8090 #define GL_INDEX_ARRAY_POINTER 0x8091 #define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 #define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 #define GL_COLOR_INDEX1_EXT 0x80E2 #define GL_COLOR_INDEX2_EXT 0x80E3 #define GL_COLOR_INDEX4_EXT 0x80E4 #define GL_COLOR_INDEX8_EXT 0x80E5 #define GL_COLOR_INDEX12_EXT 0x80E6 #define GL_COLOR_INDEX16_EXT 0x80E7 #define GL_EVAL_BIT 0x00010000 #define GL_LIST_BIT 0x00020000 #define GL_TEXTURE_BIT 0x00040000 #define GL_SCISSOR_BIT 0x00080000 #define GL_ALL_ATTRIB_BITS 0x000fffff #define GL_CLIENT_ALL_ATTRIB_BITS 0xffffffff GLAPI void GLAPIENTRY glAccum (GLenum op, GLfloat value); GLAPI void GLAPIENTRY glAlphaFunc (GLenum func, GLclampf ref); GLAPI GLboolean GLAPIENTRY glAreTexturesResident (GLsizei n, const GLuint *textures, GLboolean *residences); GLAPI void GLAPIENTRY glArrayElement (GLint i); GLAPI void GLAPIENTRY glBegin (GLenum mode); GLAPI void GLAPIENTRY glBindTexture (GLenum target, GLuint texture); GLAPI void GLAPIENTRY glBitmap (GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap); GLAPI void GLAPIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor); GLAPI void GLAPIENTRY glCallList (GLuint list); GLAPI void GLAPIENTRY glCallLists (GLsizei n, GLenum type, const void *lists); GLAPI void GLAPIENTRY glClear (GLbitfield mask); GLAPI void GLAPIENTRY glClearAccum (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); GLAPI void GLAPIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); GLAPI void GLAPIENTRY glClearDepth (GLclampd depth); GLAPI void GLAPIENTRY glClearIndex (GLfloat c); GLAPI void GLAPIENTRY glClearStencil (GLint s); GLAPI void GLAPIENTRY glClipPlane (GLenum plane, const GLdouble *equation); GLAPI void GLAPIENTRY glColor3b (GLbyte red, GLbyte green, GLbyte blue); GLAPI void GLAPIENTRY glColor3bv (const GLbyte *v); GLAPI void GLAPIENTRY glColor3d (GLdouble red, GLdouble green, GLdouble blue); GLAPI void GLAPIENTRY glColor3dv (const GLdouble *v); GLAPI void GLAPIENTRY glColor3f (GLfloat red, GLfloat green, GLfloat blue); GLAPI void GLAPIENTRY glColor3fv (const GLfloat *v); GLAPI void GLAPIENTRY glColor3i (GLint red, GLint green, GLint blue); GLAPI void GLAPIENTRY glColor3iv (const GLint *v); GLAPI void GLAPIENTRY glColor3s (GLshort red, GLshort green, GLshort blue); GLAPI void GLAPIENTRY glColor3sv (const GLshort *v); GLAPI void GLAPIENTRY glColor3ub (GLubyte red, GLubyte green, GLubyte blue); GLAPI void GLAPIENTRY glColor3ubv (const GLubyte *v); GLAPI void GLAPIENTRY glColor3ui (GLuint red, GLuint green, GLuint blue); GLAPI void GLAPIENTRY glColor3uiv (const GLuint *v); GLAPI void GLAPIENTRY glColor3us (GLushort red, GLushort green, GLushort blue); GLAPI void GLAPIENTRY glColor3usv (const GLushort *v); GLAPI void GLAPIENTRY glColor4b (GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); GLAPI void GLAPIENTRY glColor4bv (const GLbyte *v); GLAPI void GLAPIENTRY glColor4d (GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha); GLAPI void GLAPIENTRY glColor4dv (const GLdouble *v); GLAPI void GLAPIENTRY glColor4f (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); GLAPI void GLAPIENTRY glColor4fv (const GLfloat *v); GLAPI void GLAPIENTRY glColor4i (GLint red, GLint green, GLint blue, GLint alpha); GLAPI void GLAPIENTRY glColor4iv (const GLint *v); GLAPI void GLAPIENTRY glColor4s (GLshort red, GLshort green, GLshort blue, GLshort alpha); GLAPI void GLAPIENTRY glColor4sv (const GLshort *v); GLAPI void GLAPIENTRY glColor4ub (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha); GLAPI void GLAPIENTRY glColor4ubv (const GLubyte *v); GLAPI void GLAPIENTRY glColor4ui (GLuint red, GLuint green, GLuint blue, GLuint alpha); GLAPI void GLAPIENTRY glColor4uiv (const GLuint *v); GLAPI void GLAPIENTRY glColor4us (GLushort red, GLushort green, GLushort blue, GLushort alpha); GLAPI void GLAPIENTRY glColor4usv (const GLushort *v); GLAPI void GLAPIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); GLAPI void GLAPIENTRY glColorMaterial (GLenum face, GLenum mode); GLAPI void GLAPIENTRY glColorPointer (GLint size, GLenum type, GLsizei stride, const void *pointer); GLAPI void GLAPIENTRY glCopyPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum type); GLAPI void GLAPIENTRY glCopyTexImage1D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border); GLAPI void GLAPIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); GLAPI void GLAPIENTRY glCopyTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); GLAPI void GLAPIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); GLAPI void GLAPIENTRY glCullFace (GLenum mode); GLAPI void GLAPIENTRY glDeleteLists (GLuint list, GLsizei range); GLAPI void GLAPIENTRY glDeleteTextures (GLsizei n, const GLuint *textures); GLAPI void GLAPIENTRY glDepthFunc (GLenum func); GLAPI void GLAPIENTRY glDepthMask (GLboolean flag); GLAPI void GLAPIENTRY glDepthRange (GLclampd zNear, GLclampd zFar); GLAPI void GLAPIENTRY glDisable (GLenum cap); GLAPI void GLAPIENTRY glDisableClientState (GLenum array); GLAPI void GLAPIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count); GLAPI void GLAPIENTRY glDrawBuffer (GLenum mode); GLAPI void GLAPIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const void *indices); GLAPI void GLAPIENTRY glDrawPixels (GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); GLAPI void GLAPIENTRY glEdgeFlag (GLboolean flag); GLAPI void GLAPIENTRY glEdgeFlagPointer (GLsizei stride, const void *pointer); GLAPI void GLAPIENTRY glEdgeFlagv (const GLboolean *flag); GLAPI void GLAPIENTRY glEnable (GLenum cap); GLAPI void GLAPIENTRY glEnableClientState (GLenum array); GLAPI void GLAPIENTRY glEnd (void); GLAPI void GLAPIENTRY glEndList (void); GLAPI void GLAPIENTRY glEvalCoord1d (GLdouble u); GLAPI void GLAPIENTRY glEvalCoord1dv (const GLdouble *u); GLAPI void GLAPIENTRY glEvalCoord1f (GLfloat u); GLAPI void GLAPIENTRY glEvalCoord1fv (const GLfloat *u); GLAPI void GLAPIENTRY glEvalCoord2d (GLdouble u, GLdouble v); GLAPI void GLAPIENTRY glEvalCoord2dv (const GLdouble *u); GLAPI void GLAPIENTRY glEvalCoord2f (GLfloat u, GLfloat v); GLAPI void GLAPIENTRY glEvalCoord2fv (const GLfloat *u); GLAPI void GLAPIENTRY glEvalMesh1 (GLenum mode, GLint i1, GLint i2); GLAPI void GLAPIENTRY glEvalMesh2 (GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); GLAPI void GLAPIENTRY glEvalPoint1 (GLint i); GLAPI void GLAPIENTRY glEvalPoint2 (GLint i, GLint j); GLAPI void GLAPIENTRY glFeedbackBuffer (GLsizei size, GLenum type, GLfloat *buffer); GLAPI void GLAPIENTRY glFinish (void); GLAPI void GLAPIENTRY glFlush (void); GLAPI void GLAPIENTRY glFogf (GLenum pname, GLfloat param); GLAPI void GLAPIENTRY glFogfv (GLenum pname, const GLfloat *params); GLAPI void GLAPIENTRY glFogi (GLenum pname, GLint param); GLAPI void GLAPIENTRY glFogiv (GLenum pname, const GLint *params); GLAPI void GLAPIENTRY glFrontFace (GLenum mode); GLAPI void GLAPIENTRY glFrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); GLAPI GLuint GLAPIENTRY glGenLists (GLsizei range); GLAPI void GLAPIENTRY glGenTextures (GLsizei n, GLuint *textures); GLAPI void GLAPIENTRY glGetBooleanv (GLenum pname, GLboolean *params); GLAPI void GLAPIENTRY glGetClipPlane (GLenum plane, GLdouble *equation); GLAPI void GLAPIENTRY glGetDoublev (GLenum pname, GLdouble *params); GLAPI GLenum GLAPIENTRY glGetError (void); GLAPI void GLAPIENTRY glGetFloatv (GLenum pname, GLfloat *params); GLAPI void GLAPIENTRY glGetIntegerv (GLenum pname, GLint *params); GLAPI void GLAPIENTRY glGetLightfv (GLenum light, GLenum pname, GLfloat *params); GLAPI void GLAPIENTRY glGetLightiv (GLenum light, GLenum pname, GLint *params); GLAPI void GLAPIENTRY glGetMapdv (GLenum target, GLenum query, GLdouble *v); GLAPI void GLAPIENTRY glGetMapfv (GLenum target, GLenum query, GLfloat *v); GLAPI void GLAPIENTRY glGetMapiv (GLenum target, GLenum query, GLint *v); GLAPI void GLAPIENTRY glGetMaterialfv (GLenum face, GLenum pname, GLfloat *params); GLAPI void GLAPIENTRY glGetMaterialiv (GLenum face, GLenum pname, GLint *params); GLAPI void GLAPIENTRY glGetPixelMapfv (GLenum map, GLfloat *values); GLAPI void GLAPIENTRY glGetPixelMapuiv (GLenum map, GLuint *values); GLAPI void GLAPIENTRY glGetPixelMapusv (GLenum map, GLushort *values); GLAPI void GLAPIENTRY glGetPointerv (GLenum pname, void* *params); GLAPI void GLAPIENTRY glGetPolygonStipple (GLubyte *mask); GLAPI const GLubyte * GLAPIENTRY glGetString (GLenum name); GLAPI void GLAPIENTRY glGetTexEnvfv (GLenum target, GLenum pname, GLfloat *params); GLAPI void GLAPIENTRY glGetTexEnviv (GLenum target, GLenum pname, GLint *params); GLAPI void GLAPIENTRY glGetTexGendv (GLenum coord, GLenum pname, GLdouble *params); GLAPI void GLAPIENTRY glGetTexGenfv (GLenum coord, GLenum pname, GLfloat *params); GLAPI void GLAPIENTRY glGetTexGeniv (GLenum coord, GLenum pname, GLint *params); GLAPI void GLAPIENTRY glGetTexImage (GLenum target, GLint level, GLenum format, GLenum type, void *pixels); GLAPI void GLAPIENTRY glGetTexLevelParameterfv (GLenum target, GLint level, GLenum pname, GLfloat *params); GLAPI void GLAPIENTRY glGetTexLevelParameteriv (GLenum target, GLint level, GLenum pname, GLint *params); GLAPI void GLAPIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params); GLAPI void GLAPIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params); GLAPI void GLAPIENTRY glHint (GLenum target, GLenum mode); GLAPI void GLAPIENTRY glIndexMask (GLuint mask); GLAPI void GLAPIENTRY glIndexPointer (GLenum type, GLsizei stride, const void *pointer); GLAPI void GLAPIENTRY glIndexd (GLdouble c); GLAPI void GLAPIENTRY glIndexdv (const GLdouble *c); GLAPI void GLAPIENTRY glIndexf (GLfloat c); GLAPI void GLAPIENTRY glIndexfv (const GLfloat *c); GLAPI void GLAPIENTRY glIndexi (GLint c); GLAPI void GLAPIENTRY glIndexiv (const GLint *c); GLAPI void GLAPIENTRY glIndexs (GLshort c); GLAPI void GLAPIENTRY glIndexsv (const GLshort *c); GLAPI void GLAPIENTRY glIndexub (GLubyte c); GLAPI void GLAPIENTRY glIndexubv (const GLubyte *c); GLAPI void GLAPIENTRY glInitNames (void); GLAPI void GLAPIENTRY glInterleavedArrays (GLenum format, GLsizei stride, const void *pointer); GLAPI GLboolean GLAPIENTRY glIsEnabled (GLenum cap); GLAPI GLboolean GLAPIENTRY glIsList (GLuint list); GLAPI GLboolean GLAPIENTRY glIsTexture (GLuint texture); GLAPI void GLAPIENTRY glLightModelf (GLenum pname, GLfloat param); GLAPI void GLAPIENTRY glLightModelfv (GLenum pname, const GLfloat *params); GLAPI void GLAPIENTRY glLightModeli (GLenum pname, GLint param); GLAPI void GLAPIENTRY glLightModeliv (GLenum pname, const GLint *params); GLAPI void GLAPIENTRY glLightf (GLenum light, GLenum pname, GLfloat param); GLAPI void GLAPIENTRY glLightfv (GLenum light, GLenum pname, const GLfloat *params); GLAPI void GLAPIENTRY glLighti (GLenum light, GLenum pname, GLint param); GLAPI void GLAPIENTRY glLightiv (GLenum light, GLenum pname, const GLint *params); GLAPI void GLAPIENTRY glLineStipple (GLint factor, GLushort pattern); GLAPI void GLAPIENTRY glLineWidth (GLfloat width); GLAPI void GLAPIENTRY glListBase (GLuint base); GLAPI void GLAPIENTRY glLoadIdentity (void); GLAPI void GLAPIENTRY glLoadMatrixd (const GLdouble *m); GLAPI void GLAPIENTRY glLoadMatrixf (const GLfloat *m); GLAPI void GLAPIENTRY glLoadName (GLuint name); GLAPI void GLAPIENTRY glLogicOp (GLenum opcode); GLAPI void GLAPIENTRY glMap1d (GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points); GLAPI void GLAPIENTRY glMap1f (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points); GLAPI void GLAPIENTRY glMap2d (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points); GLAPI void GLAPIENTRY glMap2f (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points); GLAPI void GLAPIENTRY glMapGrid1d (GLint un, GLdouble u1, GLdouble u2); GLAPI void GLAPIENTRY glMapGrid1f (GLint un, GLfloat u1, GLfloat u2); GLAPI void GLAPIENTRY glMapGrid2d (GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2); GLAPI void GLAPIENTRY glMapGrid2f (GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); GLAPI void GLAPIENTRY glMaterialf (GLenum face, GLenum pname, GLfloat param); GLAPI void GLAPIENTRY glMaterialfv (GLenum face, GLenum pname, const GLfloat *params); GLAPI void GLAPIENTRY glMateriali (GLenum face, GLenum pname, GLint param); GLAPI void GLAPIENTRY glMaterialiv (GLenum face, GLenum pname, const GLint *params); GLAPI void GLAPIENTRY glMatrixMode (GLenum mode); GLAPI void GLAPIENTRY glMultMatrixd (const GLdouble *m); GLAPI void GLAPIENTRY glMultMatrixf (const GLfloat *m); GLAPI void GLAPIENTRY glNewList (GLuint list, GLenum mode); GLAPI void GLAPIENTRY glNormal3b (GLbyte nx, GLbyte ny, GLbyte nz); GLAPI void GLAPIENTRY glNormal3bv (const GLbyte *v); GLAPI void GLAPIENTRY glNormal3d (GLdouble nx, GLdouble ny, GLdouble nz); GLAPI void GLAPIENTRY glNormal3dv (const GLdouble *v); GLAPI void GLAPIENTRY glNormal3f (GLfloat nx, GLfloat ny, GLfloat nz); GLAPI void GLAPIENTRY glNormal3fv (const GLfloat *v); GLAPI void GLAPIENTRY glNormal3i (GLint nx, GLint ny, GLint nz); GLAPI void GLAPIENTRY glNormal3iv (const GLint *v); GLAPI void GLAPIENTRY glNormal3s (GLshort nx, GLshort ny, GLshort nz); GLAPI void GLAPIENTRY glNormal3sv (const GLshort *v); GLAPI void GLAPIENTRY glNormalPointer (GLenum type, GLsizei stride, const void *pointer); GLAPI void GLAPIENTRY glOrtho (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); GLAPI void GLAPIENTRY glPassThrough (GLfloat token); GLAPI void GLAPIENTRY glPixelMapfv (GLenum map, GLsizei mapsize, const GLfloat *values); GLAPI void GLAPIENTRY glPixelMapuiv (GLenum map, GLsizei mapsize, const GLuint *values); GLAPI void GLAPIENTRY glPixelMapusv (GLenum map, GLsizei mapsize, const GLushort *values); GLAPI void GLAPIENTRY glPixelStoref (GLenum pname, GLfloat param); GLAPI void GLAPIENTRY glPixelStorei (GLenum pname, GLint param); GLAPI void GLAPIENTRY glPixelTransferf (GLenum pname, GLfloat param); GLAPI void GLAPIENTRY glPixelTransferi (GLenum pname, GLint param); GLAPI void GLAPIENTRY glPixelZoom (GLfloat xfactor, GLfloat yfactor); GLAPI void GLAPIENTRY glPointSize (GLfloat size); GLAPI void GLAPIENTRY glPolygonMode (GLenum face, GLenum mode); GLAPI void GLAPIENTRY glPolygonOffset (GLfloat factor, GLfloat units); GLAPI void GLAPIENTRY glPolygonStipple (const GLubyte *mask); GLAPI void GLAPIENTRY glPopAttrib (void); GLAPI void GLAPIENTRY glPopClientAttrib (void); GLAPI void GLAPIENTRY glPopMatrix (void); GLAPI void GLAPIENTRY glPopName (void); GLAPI void GLAPIENTRY glPrioritizeTextures (GLsizei n, const GLuint *textures, const GLclampf *priorities); GLAPI void GLAPIENTRY glPushAttrib (GLbitfield mask); GLAPI void GLAPIENTRY glPushClientAttrib (GLbitfield mask); GLAPI void GLAPIENTRY glPushMatrix (void); GLAPI void GLAPIENTRY glPushName (GLuint name); GLAPI void GLAPIENTRY glRasterPos2d (GLdouble x, GLdouble y); GLAPI void GLAPIENTRY glRasterPos2dv (const GLdouble *v); GLAPI void GLAPIENTRY glRasterPos2f (GLfloat x, GLfloat y); GLAPI void GLAPIENTRY glRasterPos2fv (const GLfloat *v); GLAPI void GLAPIENTRY glRasterPos2i (GLint x, GLint y); GLAPI void GLAPIENTRY glRasterPos2iv (const GLint *v); GLAPI void GLAPIENTRY glRasterPos2s (GLshort x, GLshort y); GLAPI void GLAPIENTRY glRasterPos2sv (const GLshort *v); GLAPI void GLAPIENTRY glRasterPos3d (GLdouble x, GLdouble y, GLdouble z); GLAPI void GLAPIENTRY glRasterPos3dv (const GLdouble *v); GLAPI void GLAPIENTRY glRasterPos3f (GLfloat x, GLfloat y, GLfloat z); GLAPI void GLAPIENTRY glRasterPos3fv (const GLfloat *v); GLAPI void GLAPIENTRY glRasterPos3i (GLint x, GLint y, GLint z); GLAPI void GLAPIENTRY glRasterPos3iv (const GLint *v); GLAPI void GLAPIENTRY glRasterPos3s (GLshort x, GLshort y, GLshort z); GLAPI void GLAPIENTRY glRasterPos3sv (const GLshort *v); GLAPI void GLAPIENTRY glRasterPos4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w); GLAPI void GLAPIENTRY glRasterPos4dv (const GLdouble *v); GLAPI void GLAPIENTRY glRasterPos4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w); GLAPI void GLAPIENTRY glRasterPos4fv (const GLfloat *v); GLAPI void GLAPIENTRY glRasterPos4i (GLint x, GLint y, GLint z, GLint w); GLAPI void GLAPIENTRY glRasterPos4iv (const GLint *v); GLAPI void GLAPIENTRY glRasterPos4s (GLshort x, GLshort y, GLshort z, GLshort w); GLAPI void GLAPIENTRY glRasterPos4sv (const GLshort *v); GLAPI void GLAPIENTRY glReadBuffer (GLenum mode); GLAPI void GLAPIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels); GLAPI void GLAPIENTRY glRectd (GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2); GLAPI void GLAPIENTRY glRectdv (const GLdouble *v1, const GLdouble *v2); GLAPI void GLAPIENTRY glRectf (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); GLAPI void GLAPIENTRY glRectfv (const GLfloat *v1, const GLfloat *v2); GLAPI void GLAPIENTRY glRecti (GLint x1, GLint y1, GLint x2, GLint y2); GLAPI void GLAPIENTRY glRectiv (const GLint *v1, const GLint *v2); GLAPI void GLAPIENTRY glRects (GLshort x1, GLshort y1, GLshort x2, GLshort y2); GLAPI void GLAPIENTRY glRectsv (const GLshort *v1, const GLshort *v2); GLAPI GLint GLAPIENTRY glRenderMode (GLenum mode); GLAPI void GLAPIENTRY glRotated (GLdouble angle, GLdouble x, GLdouble y, GLdouble z); GLAPI void GLAPIENTRY glRotatef (GLfloat angle, GLfloat x, GLfloat y, GLfloat z); GLAPI void GLAPIENTRY glScaled (GLdouble x, GLdouble y, GLdouble z); GLAPI void GLAPIENTRY glScalef (GLfloat x, GLfloat y, GLfloat z); GLAPI void GLAPIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height); GLAPI void GLAPIENTRY glSelectBuffer (GLsizei size, GLuint *buffer); GLAPI void GLAPIENTRY glShadeModel (GLenum mode); GLAPI void GLAPIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask); GLAPI void GLAPIENTRY glStencilMask (GLuint mask); GLAPI void GLAPIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass); GLAPI void GLAPIENTRY glTexCoord1d (GLdouble s); GLAPI void GLAPIENTRY glTexCoord1dv (const GLdouble *v); GLAPI void GLAPIENTRY glTexCoord1f (GLfloat s); GLAPI void GLAPIENTRY glTexCoord1fv (const GLfloat *v); GLAPI void GLAPIENTRY glTexCoord1i (GLint s); GLAPI void GLAPIENTRY glTexCoord1iv (const GLint *v); GLAPI void GLAPIENTRY glTexCoord1s (GLshort s); GLAPI void GLAPIENTRY glTexCoord1sv (const GLshort *v); GLAPI void GLAPIENTRY glTexCoord2d (GLdouble s, GLdouble t); GLAPI void GLAPIENTRY glTexCoord2dv (const GLdouble *v); GLAPI void GLAPIENTRY glTexCoord2f (GLfloat s, GLfloat t); GLAPI void GLAPIENTRY glTexCoord2fv (const GLfloat *v); GLAPI void GLAPIENTRY glTexCoord2i (GLint s, GLint t); GLAPI void GLAPIENTRY glTexCoord2iv (const GLint *v); GLAPI void GLAPIENTRY glTexCoord2s (GLshort s, GLshort t); GLAPI void GLAPIENTRY glTexCoord2sv (const GLshort *v); GLAPI void GLAPIENTRY glTexCoord3d (GLdouble s, GLdouble t, GLdouble r); GLAPI void GLAPIENTRY glTexCoord3dv (const GLdouble *v); GLAPI void GLAPIENTRY glTexCoord3f (GLfloat s, GLfloat t, GLfloat r); GLAPI void GLAPIENTRY glTexCoord3fv (const GLfloat *v); GLAPI void GLAPIENTRY glTexCoord3i (GLint s, GLint t, GLint r); GLAPI void GLAPIENTRY glTexCoord3iv (const GLint *v); GLAPI void GLAPIENTRY glTexCoord3s (GLshort s, GLshort t, GLshort r); GLAPI void GLAPIENTRY glTexCoord3sv (const GLshort *v); GLAPI void GLAPIENTRY glTexCoord4d (GLdouble s, GLdouble t, GLdouble r, GLdouble q); GLAPI void GLAPIENTRY glTexCoord4dv (const GLdouble *v); GLAPI void GLAPIENTRY glTexCoord4f (GLfloat s, GLfloat t, GLfloat r, GLfloat q); GLAPI void GLAPIENTRY glTexCoord4fv (const GLfloat *v); GLAPI void GLAPIENTRY glTexCoord4i (GLint s, GLint t, GLint r, GLint q); GLAPI void GLAPIENTRY glTexCoord4iv (const GLint *v); GLAPI void GLAPIENTRY glTexCoord4s (GLshort s, GLshort t, GLshort r, GLshort q); GLAPI void GLAPIENTRY glTexCoord4sv (const GLshort *v); GLAPI void GLAPIENTRY glTexCoordPointer (GLint size, GLenum type, GLsizei stride, const void *pointer); GLAPI void GLAPIENTRY glTexEnvf (GLenum target, GLenum pname, GLfloat param); GLAPI void GLAPIENTRY glTexEnvfv (GLenum target, GLenum pname, const GLfloat *params); GLAPI void GLAPIENTRY glTexEnvi (GLenum target, GLenum pname, GLint param); GLAPI void GLAPIENTRY glTexEnviv (GLenum target, GLenum pname, const GLint *params); GLAPI void GLAPIENTRY glTexGend (GLenum coord, GLenum pname, GLdouble param); GLAPI void GLAPIENTRY glTexGendv (GLenum coord, GLenum pname, const GLdouble *params); GLAPI void GLAPIENTRY glTexGenf (GLenum coord, GLenum pname, GLfloat param); GLAPI void GLAPIENTRY glTexGenfv (GLenum coord, GLenum pname, const GLfloat *params); GLAPI void GLAPIENTRY glTexGeni (GLenum coord, GLenum pname, GLint param); GLAPI void GLAPIENTRY glTexGeniv (GLenum coord, GLenum pname, const GLint *params); GLAPI void GLAPIENTRY glTexImage1D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels); GLAPI void GLAPIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); GLAPI void GLAPIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param); GLAPI void GLAPIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params); GLAPI void GLAPIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param); GLAPI void GLAPIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params); GLAPI void GLAPIENTRY glTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); GLAPI void GLAPIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); GLAPI void GLAPIENTRY glTranslated (GLdouble x, GLdouble y, GLdouble z); GLAPI void GLAPIENTRY glTranslatef (GLfloat x, GLfloat y, GLfloat z); GLAPI void GLAPIENTRY glVertex2d (GLdouble x, GLdouble y); GLAPI void GLAPIENTRY glVertex2dv (const GLdouble *v); GLAPI void GLAPIENTRY glVertex2f (GLfloat x, GLfloat y); GLAPI void GLAPIENTRY glVertex2fv (const GLfloat *v); GLAPI void GLAPIENTRY glVertex2i (GLint x, GLint y); GLAPI void GLAPIENTRY glVertex2iv (const GLint *v); GLAPI void GLAPIENTRY glVertex2s (GLshort x, GLshort y); GLAPI void GLAPIENTRY glVertex2sv (const GLshort *v); GLAPI void GLAPIENTRY glVertex3d (GLdouble x, GLdouble y, GLdouble z); GLAPI void GLAPIENTRY glVertex3dv (const GLdouble *v); GLAPI void GLAPIENTRY glVertex3f (GLfloat x, GLfloat y, GLfloat z); GLAPI void GLAPIENTRY glVertex3fv (const GLfloat *v); GLAPI void GLAPIENTRY glVertex3i (GLint x, GLint y, GLint z); GLAPI void GLAPIENTRY glVertex3iv (const GLint *v); GLAPI void GLAPIENTRY glVertex3s (GLshort x, GLshort y, GLshort z); GLAPI void GLAPIENTRY glVertex3sv (const GLshort *v); GLAPI void GLAPIENTRY glVertex4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w); GLAPI void GLAPIENTRY glVertex4dv (const GLdouble *v); GLAPI void GLAPIENTRY glVertex4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w); GLAPI void GLAPIENTRY glVertex4fv (const GLfloat *v); GLAPI void GLAPIENTRY glVertex4i (GLint x, GLint y, GLint z, GLint w); GLAPI void GLAPIENTRY glVertex4iv (const GLint *v); GLAPI void GLAPIENTRY glVertex4s (GLshort x, GLshort y, GLshort z, GLshort w); GLAPI void GLAPIENTRY glVertex4sv (const GLshort *v); GLAPI void GLAPIENTRY glVertexPointer (GLint size, GLenum type, GLsizei stride, const void *pointer); GLAPI void GLAPIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height); #define GLEW_VERSION_1_1 GLEW_GET_VAR(__GLEW_VERSION_1_1) #endif /* GL_VERSION_1_1 */ /* ---------------------------------- GLU ---------------------------------- */ #ifndef GLEW_NO_GLU # ifdef __APPLE__ # include # if defined(__IPHONE_OS_VERSION_MIN_REQUIRED) # define GLEW_NO_GLU # endif # endif #endif #ifndef GLEW_NO_GLU /* this is where we can safely include GLU */ # if defined(__APPLE__) && defined(__MACH__) # include # else # include # endif #endif nigels-com-glew-285c35d/auto/src/glew_init_glx.c0000664000175000017500000000314615135005167021773 0ustar alastairalastair/* ------------------------------------------------------------------------ */ GLboolean glxewGetExtension (const char* name) { const GLubyte* start; const GLubyte* end; if (glXGetCurrentDisplay == NULL) return GL_FALSE; start = (const GLubyte*)glXGetClientString(glXGetCurrentDisplay(), GLX_EXTENSIONS); if (0 == start) return GL_FALSE; end = start + _glewStrLen(start); return _glewSearchExtension(name, start, end); } GLenum glxewInit (void) { Display* display; int major, minor; const GLubyte* extStart; const GLubyte* extEnd; /* initialize core GLX 1.2 */ if (_glewInit_GLX_VERSION_1_2()) return GLEW_ERROR_GLX_VERSION_11_ONLY; /* check for a display */ display = glXGetCurrentDisplay(); if (display == NULL) return GLEW_ERROR_NO_GLX_DISPLAY; /* initialize flags */ GLXEW_VERSION_1_0 = GL_TRUE; GLXEW_VERSION_1_1 = GL_TRUE; GLXEW_VERSION_1_2 = GL_TRUE; GLXEW_VERSION_1_3 = GL_TRUE; GLXEW_VERSION_1_4 = GL_TRUE; /* query GLX version */ glXQueryVersion(display, &major, &minor); if (major == 1 && minor <= 3) { switch (minor) { case 3: GLXEW_VERSION_1_4 = GL_FALSE; break; case 2: GLXEW_VERSION_1_4 = GL_FALSE; GLXEW_VERSION_1_3 = GL_FALSE; break; default: return GLEW_ERROR_GLX_VERSION_11_ONLY; break; } } /* query GLX extension string */ extStart = 0; if (glXGetCurrentDisplay != NULL) extStart = (const GLubyte*)glXGetClientString(display, GLX_EXTENSIONS); if (extStart == 0) extStart = (const GLubyte *)""; extEnd = extStart + _glewStrLen(extStart); /* initialize extensions */ nigels-com-glew-285c35d/auto/src/glewinfo.rc0000664000175000017500000001472015135005167021134 0ustar alastairalastair #include #ifdef _DEBUG # define FILENAME "glewinfod.exe" #else # define FILENAME "glewinfo.exe" #endif ///////////////////////////////////////////////////////////////////////////// // // Version // VS_VERSION_INFO VERSIONINFO FILEVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0 PRODUCTVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK #ifdef _DEBUG FILEFLAGS VS_FF_DEBUG #else FILEFLAGS 0x0L #endif FILEOS VOS__WINDOWS32 FILETYPE VFT_APP FILESUBTYPE VFT2_UNKNOWN BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "040904b0" BEGIN VALUE "Comments", "The OpenGL Extension Wrangler Library\r\n" "Copyright (C) 2008-2025, Nigel Stewart \r\n" "Copyright (C) 2002-2008, Milan Ikits \r\n" "Copyright (C) 2002-2008, Marcelo E. Magallon \r\n" "Copyright (C) 2002, Lev Povalahev\r\n" "All rights reserved.\r\n" "\r\n" "Redistribution and use in source and binary forms, with or without \r\n" "modification, are permitted provided that the following conditions are met:\r\n" "\r\n" "* Redistributions of source code must retain the above copyright notice, \r\n" " this list of conditions and the following disclaimer.\r\n" "* Redistributions in binary form must reproduce the above copyright notice, \r\n" " this list of conditions and the following disclaimer in the documentation \r\n" " and/or other materials provided with the distribution.\r\n" "* The name of the author may be used to endorse or promote products \r\n" " derived from this software without specific prior written permission.\r\n" "\r\n" "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ''AS IS'' \r\n" "AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\n" "IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\n" "ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\n" "LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\n" "CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\n" "SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\n" "INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\n" "CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\n" "ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\n" "THE POSSIBILITY OF SUCH DAMAGE.\r\n" "\r\n" "\r\n" "Mesa 3-D graphics library\r\n" "\r\n" "Version: 7.0\r\n" "\r\n" "Copyright (C) 1999-2007 Brian Paul All Rights Reserved.\r\n" "\r\n" "Permission is hereby granted, free of charge, to any person obtaining a\r\n" "copy of this software and associated documentation files (the ''Software''),\r\n" "to deal in the Software without restriction, including without limitation\r\n" "the rights to use, copy, modify, merge, publish, distribute, sublicense,\r\n" "and/or sell copies of the Software, and to permit persons to whom the\r\n" "Software is furnished to do so, subject to the following conditions:\r\n" "\r\n" "The above copyright notice and this permission notice shall be included\r\n" "in all copies or substantial portions of the Software.\r\n" "\r\n" "THE SOFTWARE IS PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS\r\n" "OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n" "FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL\r\n" "BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r\n" "AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r\n" "CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n" "\r\n" "\r\n" "Copyright (c) 2007 The Khronos Group Inc.\r\n" "\r\n" "Permission is hereby granted, free of charge, to any person obtaining a\r\n" "copy of this software and/or associated documentation files (the\r\n" "''Materials''), to deal in the Materials without restriction, including\r\n" "without limitation the rights to use, copy, modify, merge, publish,\r\n" "distribute, sublicense, and/or sell copies of the Materials, and to\r\n" "permit persons to whom the Materials are furnished to do so, subject to\r\n" "the following conditions:\r\n" "\r\n" "The above copyright notice and this permission notice shall be included\r\n" "in all copies or substantial portions of the Materials.\r\n" "\r\n" "THE MATERIALS ARE PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND,\r\n" "EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\n" "MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\n" "IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\n" "CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\n" "TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\n" "MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\0" VALUE "CompanyName", "\0" VALUE "FileDescription", "Utility for verifying extension entry points\0" VALUE "FileVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0" VALUE "InternalName", "glewinfo\0" VALUE "LegalCopyright", "(C) 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", FILENAME "\0" VALUE "PrivateBuild", "\0" VALUE "ProductName", "The OpenGL Extension Wrangler Library\0" VALUE "ProductVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0" VALUE "SpecialBuild", "\0" END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x409, 1200 END END nigels-com-glew-285c35d/auto/src/wglew_tail.h0000664000175000017500000000073015135005167021277 0ustar alastairalastair/* ------------------------------------------------------------------------- */ GLEWAPI GLenum GLEWAPIENTRY wglewInit (void); GLEWAPI GLboolean GLEWAPIENTRY wglewIsSupported (const char *name); #ifndef WGLEW_GET_VAR #define WGLEW_GET_VAR(x) (*(const GLboolean*)&x) #endif #ifndef WGLEW_GET_FUN #define WGLEW_GET_FUN(x) x #endif GLEWAPI GLboolean GLEWAPIENTRY wglewGetExtension (const char *name); #ifdef __cplusplus } #endif #undef GLEWAPI #endif /* __wglew_h__ */ nigels-com-glew-285c35d/auto/src/eglew_head.h0000664000175000017500000000432015135005167021224 0ustar alastairalastair#ifndef __eglew_h__ #define __eglew_h__ #define __EGLEW_H__ #ifdef __eglext_h_ #error eglext.h included before eglew.h #endif #if defined(__egl_h_) #error egl.h included before eglew.h #endif #define __eglext_h_ #define __egl_h_ #ifndef EGLAPIENTRY #define EGLAPIENTRY #endif #ifndef EGLAPI #define EGLAPI extern #endif /* EGL Types */ #include #include #include #ifndef GLEW_INCLUDE # include #else # include GLEW_INCLUDE #endif #ifdef __cplusplus extern "C" { #endif typedef int32_t EGLint; typedef unsigned int EGLBoolean; typedef void *EGLDisplay; typedef void *EGLConfig; typedef void *EGLSurface; typedef void *EGLContext; typedef void (*__eglMustCastToProperFunctionPointerType)(void); typedef unsigned int EGLenum; typedef void *EGLClientBuffer; typedef void *EGLSync; typedef intptr_t EGLAttrib; typedef khronos_utime_nanoseconds_t EGLTime; typedef void *EGLImage; typedef void *EGLSyncKHR; typedef intptr_t EGLAttribKHR; typedef void *EGLLabelKHR; typedef void *EGLObjectKHR; typedef void (EGLAPIENTRY *EGLDEBUGPROCKHR)(EGLenum error,const char *command,EGLint messageType,EGLLabelKHR threadLabel,EGLLabelKHR objectLabel,const char* message); typedef khronos_utime_nanoseconds_t EGLTimeKHR; typedef void *EGLImageKHR; typedef void *EGLStreamKHR; typedef khronos_uint64_t EGLuint64KHR; typedef int EGLNativeFileDescriptorKHR; typedef khronos_ssize_t EGLsizeiANDROID; typedef void (*EGLSetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, const void *value, EGLsizeiANDROID valueSize); typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, void *value, EGLsizeiANDROID valueSize); typedef void *EGLDeviceEXT; typedef void *EGLOutputLayerEXT; typedef void *EGLOutputPortEXT; typedef void *EGLSyncNV; typedef khronos_utime_nanoseconds_t EGLTimeNV; typedef khronos_utime_nanoseconds_t EGLuint64NV; typedef khronos_stime_nanoseconds_t EGLnsecsANDROID; struct EGLClientPixmapHI; struct AHardwareBuffer; /* Wayland types for WL_bind_wayland_display purposes */ struct wl_buffer; struct wl_display; struct wl_resource; EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress (const char *procname); nigels-com-glew-285c35d/auto/src/glewinfo_gl.c0000664000175000017500000000027615135005167021435 0ustar alastairalastair/* ------------------------------------------------------------------------ */ static void glewInfo (void) { #ifdef GL_VERSION_1_1 _glewInfo_GL_VERSION_1_1(); #endif /* GL_VERSION_1_1 */ nigels-com-glew-285c35d/auto/src/glewinfo_glx.c0000664000175000017500000000014115135005167021614 0ustar alastairalastair} #elif !defined(GLEW_EGL) && !defined(GLEW_OSMESA) /* _UNIX */ static void glxewInfo (void) { nigels-com-glew-285c35d/auto/src/glew_init_egl.c0000664000175000017500000000341215135005167021744 0ustar alastairalastair /* ------------------------------------------------------------------------ */ GLboolean eglewGetExtension (const char* name) { const GLubyte* start; const GLubyte* end; start = (const GLubyte*) eglQueryString(eglGetCurrentDisplay(), EGL_EXTENSIONS); if (0 == start) return GL_FALSE; end = start + _glewStrLen(start); return _glewSearchExtension(name, start, end); } GLenum eglewInit (EGLDisplay display) { EGLint major, minor; const GLubyte* extStart; const GLubyte* extEnd; PFNEGLINITIALIZEPROC initialize = NULL; PFNEGLQUERYSTRINGPROC queryString = NULL; /* Load necessary entry points */ initialize = (PFNEGLINITIALIZEPROC) glewGetProcAddress("eglInitialize"); queryString = (PFNEGLQUERYSTRINGPROC) glewGetProcAddress("eglQueryString"); if (!initialize || !queryString) return 1; /* query EGL version */ if (initialize(display, &major, &minor) != EGL_TRUE) return 1; EGLEW_VERSION_1_5 = ( major > 1 ) || ( major == 1 && minor >= 5 ) ? GL_TRUE : GL_FALSE; EGLEW_VERSION_1_4 = EGLEW_VERSION_1_5 == GL_TRUE || ( major == 1 && minor >= 4 ) ? GL_TRUE : GL_FALSE; EGLEW_VERSION_1_3 = EGLEW_VERSION_1_4 == GL_TRUE || ( major == 1 && minor >= 3 ) ? GL_TRUE : GL_FALSE; EGLEW_VERSION_1_2 = EGLEW_VERSION_1_3 == GL_TRUE || ( major == 1 && minor >= 2 ) ? GL_TRUE : GL_FALSE; EGLEW_VERSION_1_1 = EGLEW_VERSION_1_2 == GL_TRUE || ( major == 1 && minor >= 1 ) ? GL_TRUE : GL_FALSE; EGLEW_VERSION_1_0 = EGLEW_VERSION_1_1 == GL_TRUE || ( major == 1 && minor >= 0 ) ? GL_TRUE : GL_FALSE; /* query EGL extension string */ extStart = (const GLubyte*) queryString(display, EGL_EXTENSIONS); if (extStart == 0) extStart = (const GLubyte *)""; extEnd = extStart + _glewStrLen(extStart); /* initialize extensions */ nigels-com-glew-285c35d/auto/src/glewinfo_tail.c0000664000175000017500000004274015135005167021766 0ustar alastairalastair} #endif /* _WIN32 */ /* ------------------------------------------------------------------------ */ int main (int argc, char** argv) { GLuint err; struct createParams params = { #if defined(GLEW_OSMESA) #elif defined(GLEW_EGL) #elif defined(_WIN32) -1, /* pixelformat */ #elif !defined(__HAIKU__) && !defined(__APPLE__) || defined(GLEW_APPLE_GLX) "", /* display */ -1, /* visual */ #endif 0, /* major */ 0, /* minor */ 0, /* profile mask */ 0, /* flags */ 0 /* experimental */ }; #if defined(GLEW_EGL) typedef const GLubyte* (GLAPIENTRY * PFNGLGETSTRINGPROC) (GLenum name); PFNGLGETSTRINGPROC getString; #endif if (glewParseArgs(argc-1, argv+1, ¶ms)) { fprintf(stderr, "Usage: glewinfo " #if defined(GLEW_OSMESA) #elif defined(GLEW_EGL) #elif defined(_WIN32) "[-pf ] " #elif !defined(__HAIKU__) && !defined(__APPLE__) || defined(GLEW_APPLE_GLX) "[-display ] " "[-visual ] " #endif "[-version ] " "[-profile core|compatibility] " "[-flag debug|forward] " "[-experimental]" "\n"); return 1; } if (GL_TRUE == glewCreateContext(¶ms)) { fprintf(stderr, "Error: glewCreateContext failed\n"); glewDestroyContext(); return 1; } glewExperimental = params.experimental ? GL_TRUE : GL_FALSE; err = glewInit(); if (GLEW_OK != err) { fprintf(stderr, "Error [main]: glewInit failed: %s\n", glewGetErrorString(err)); glewDestroyContext(); return 1; } #if defined(GLEW_EGL) getString = (PFNGLGETSTRINGPROC) eglGetProcAddress("glGetString"); if (!getString) { fprintf(stderr, "Error: eglGetProcAddress failed to fetch glGetString\n"); glewDestroyContext(); return 1; } #endif #if defined(_WIN32) #if defined(_MSC_VER) && (_MSC_VER >= 1400) if (fopen_s(&f, "glewinfo.txt", "w") != 0) f = stdout; #else f = fopen("glewinfo.txt", "w"); #endif if (f == NULL) f = stdout; #else f = stdout; #endif fprintf(f, "---------------------------\n"); fprintf(f, " GLEW Extension Info\n"); fprintf(f, "---------------------------\n\n"); fprintf(f, "GLEW version %s\n", glewGetString(GLEW_VERSION)); #if defined(GLEW_OSMESA) #elif defined(GLEW_EGL) #elif defined(_WIN32) fprintf(f, "Reporting capabilities of pixelformat %d\n", params.pixelformat); #elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX) fprintf(f, "Reporting capabilities of display %s, visual 0x%x\n", params.display == NULL ? getenv("DISPLAY") : params.display, params.visual); #endif #if defined(GLEW_EGL) fprintf(f, "Running on a %s from %s\n", getString(GL_RENDERER), getString(GL_VENDOR)); fprintf(f, "OpenGL version %s is supported\n", getString(GL_VERSION)); #else fprintf(f, "Running on a %s from %s\n", glGetString(GL_RENDERER), glGetString(GL_VENDOR)); fprintf(f, "OpenGL version %s is supported\n", glGetString(GL_VERSION)); #endif glewInfo(); #if defined(GLEW_OSMESA) #elif defined(GLEW_EGL) eglewInfo(); #elif defined(_WIN32) wglewInfo(); #else glxewInfo(); #endif if (f != stdout) fclose(f); glewDestroyContext(); return 0; } /* ------------------------------------------------------------------------ */ GLboolean glewParseArgs (int argc, char** argv, struct createParams *params) { int p = 0; while (p < argc) { if (!strcmp(argv[p], "-version")) { if (++p >= argc) return GL_TRUE; #if defined(__STDC_LIB_EXT1__) || (defined(_MSC_VER) && (_MSC_VER >= 1400)) if (sscanf_s(argv[p++], "%d.%d", ¶ms->major, ¶ms->minor) != 2) return GL_TRUE; #else if (sscanf(argv[p++], "%d.%d", ¶ms->major, ¶ms->minor) != 2) return GL_TRUE; #endif } else if (!strcmp(argv[p], "-profile")) { if (++p >= argc) return GL_TRUE; if (strcmp("core", argv[p]) == 0) params->profile |= 1; else if (strcmp("compatibility",argv[p]) == 0) params->profile |= 2; else return GL_TRUE; ++p; } else if (!strcmp(argv[p], "-flag")) { if (++p >= argc) return GL_TRUE; if (strcmp("debug", argv[p]) == 0) params->flags |= 1; else if (strcmp("forward",argv[p]) == 0) params->flags |= 2; else return GL_TRUE; ++p; } #if defined(GLEW_OSMESA) #elif defined(GLEW_EGL) #elif defined(_WIN32) else if (!strcmp(argv[p], "-pf") || !strcmp(argv[p], "-pixelformat")) { if (++p >= argc) return GL_TRUE; params->pixelformat = strtol(argv[p++], NULL, 0); } #elif !defined(__HAIKU__) && !defined(__APPLE__) || defined(GLEW_APPLE_GLX) else if (!strcmp(argv[p], "-display")) { if (++p >= argc) return GL_TRUE; params->display = argv[p++]; } else if (!strcmp(argv[p], "-visual")) { if (++p >= argc) return GL_TRUE; params->visual = (int)strtol(argv[p++], NULL, 0); } #endif else if (!strcmp(argv[p], "-experimental")) { params->experimental = 1; ++p; } else return GL_TRUE; } return GL_FALSE; } /* ------------------------------------------------------------------------ */ #if defined(GLEW_EGL) EGLDisplay display; EGLContext ctx; /* See: http://stackoverflow.com/questions/12662227/opengl-es2-0-offscreen-context-for-fbo-rendering */ GLboolean glewCreateContext (struct createParams *params) { EGLDeviceEXT devices[1]; EGLint numDevices; EGLSurface surface; EGLint configAttribs[] = { EGL_SURFACE_TYPE, EGL_WINDOW_BIT, EGL_RED_SIZE, 1, EGL_GREEN_SIZE, 1, EGL_BLUE_SIZE, 1, EGL_RENDERABLE_TYPE, EGL_OPENGL_BIT, EGL_NONE }; static const EGLint contextAttribs[] = { EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE }; static const EGLint pBufferAttribs[] = { EGL_WIDTH, 128, EGL_HEIGHT, 128, EGL_NONE }; EGLConfig config; EGLint numConfig; EGLBoolean pBuffer; PFNEGLQUERYDEVICESEXTPROC queryDevices = NULL; PFNEGLGETPLATFORMDISPLAYEXTPROC getPlatformDisplay = NULL; PFNEGLGETERRORPROC getError = NULL; PFNEGLGETDISPLAYPROC getDisplay = NULL; PFNEGLINITIALIZEPROC initialize = NULL; PFNEGLBINDAPIPROC bindAPI = NULL; PFNEGLCHOOSECONFIGPROC chooseConfig = NULL; PFNEGLCREATEWINDOWSURFACEPROC createWindowSurface = NULL; PFNEGLCREATECONTEXTPROC createContext = NULL; PFNEGLMAKECURRENTPROC makeCurrent = NULL; PFNEGLCREATEPBUFFERSURFACEPROC createPbufferSurface = NULL; (void) params; /* not used */ /* Load necessary entry points */ queryDevices = (PFNEGLQUERYDEVICESEXTPROC) eglGetProcAddress("eglQueryDevicesEXT"); getPlatformDisplay = (PFNEGLGETPLATFORMDISPLAYEXTPROC) eglGetProcAddress("eglGetPlatformDisplayEXT"); getError = (PFNEGLGETERRORPROC) eglGetProcAddress("eglGetError"); getDisplay = (PFNEGLGETDISPLAYPROC) eglGetProcAddress("eglGetDisplay"); initialize = (PFNEGLINITIALIZEPROC) eglGetProcAddress("eglInitialize"); bindAPI = (PFNEGLBINDAPIPROC) eglGetProcAddress("eglBindAPI"); chooseConfig = (PFNEGLCHOOSECONFIGPROC) eglGetProcAddress("eglChooseConfig"); createWindowSurface = (PFNEGLCREATEWINDOWSURFACEPROC) eglGetProcAddress("eglCreateWindowSurface"); createPbufferSurface = (PFNEGLCREATEPBUFFERSURFACEPROC) eglGetProcAddress("eglCreatePbufferSurface"); createContext = (PFNEGLCREATECONTEXTPROC) eglGetProcAddress("eglCreateContext"); makeCurrent = (PFNEGLMAKECURRENTPROC) eglGetProcAddress("eglMakeCurrent"); if (!getError || !getDisplay || !initialize || !bindAPI || !chooseConfig || !createWindowSurface || !createContext || !makeCurrent) return GL_TRUE; pBuffer = 0; display = EGL_NO_DISPLAY; if (queryDevices && getPlatformDisplay) { queryDevices(1, devices, &numDevices); if (numDevices==1) { /* Nvidia EGL doesn't need X11 for p-buffer surface */ display = getPlatformDisplay(EGL_PLATFORM_DEVICE_EXT, devices[0], 0); configAttribs[1] = EGL_PBUFFER_BIT; pBuffer = 1; } } if (display==EGL_NO_DISPLAY) { /* Fall-back to X11 surface, works on Mesa */ display = getDisplay(EGL_DEFAULT_DISPLAY); } if (display == EGL_NO_DISPLAY) return GL_TRUE; eglewInit(display); if (bindAPI(EGL_OPENGL_API) != EGL_TRUE) return GL_TRUE; if (chooseConfig(display, configAttribs, &config, 1, &numConfig) != EGL_TRUE || (numConfig != 1)) return GL_TRUE; ctx = createContext(display, config, EGL_NO_CONTEXT, pBuffer ? contextAttribs : NULL); if (NULL == ctx) return GL_TRUE; surface = EGL_NO_SURFACE; /* Create a p-buffer surface if possible */ if (pBuffer && createPbufferSurface) { surface = createPbufferSurface(display, config, pBufferAttribs); } /* Create a generic surface without a native window, if necessary */ if (surface==EGL_NO_SURFACE) { surface = createWindowSurface(display, config, (EGLNativeWindowType) NULL, NULL); } #if 0 if (surface == EGL_NO_SURFACE) return GL_TRUE; #endif if (makeCurrent(display, surface, surface, ctx) != EGL_TRUE) return GL_TRUE; return GL_FALSE; } void glewDestroyContext (void) { if (NULL != ctx) eglDestroyContext(display, ctx); } #elif defined(GLEW_OSMESA) OSMesaContext ctx; static const GLint osmFormat = GL_UNSIGNED_BYTE; static const GLint osmWidth = 640; static const GLint osmHeight = 480; static GLubyte *osmPixels = NULL; GLboolean glewCreateContext (struct createParams *params) { (void) params; /* not used */ ctx = OSMesaCreateContext(OSMESA_RGBA, NULL); if (NULL == ctx) return GL_TRUE; if (NULL == osmPixels) { osmPixels = (GLubyte *) calloc(osmWidth*osmHeight*4, 1); } if (!OSMesaMakeCurrent(ctx, osmPixels, osmFormat, osmWidth, osmHeight)) { return GL_TRUE; } return GL_FALSE; } void glewDestroyContext (void) { if (NULL != ctx) OSMesaDestroyContext(ctx); } #elif defined(_WIN32) HWND wnd = NULL; HDC dc = NULL; HGLRC rc = NULL; GLboolean glewCreateContext (struct createParams* params) { WNDCLASS wc; PIXELFORMATDESCRIPTOR pfd; /* register window class */ ZeroMemory(&wc, sizeof(WNDCLASS)); wc.hInstance = GetModuleHandle(NULL); wc.lpfnWndProc = DefWindowProc; wc.lpszClassName = "GLEW"; if (0 == RegisterClass(&wc)) return GL_TRUE; /* create window */ wnd = CreateWindow("GLEW", "GLEW", 0, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, GetModuleHandle(NULL), NULL); if (NULL == wnd) return GL_TRUE; /* get the device context */ dc = GetDC(wnd); if (NULL == dc) return GL_TRUE; /* find pixel format */ ZeroMemory(&pfd, sizeof(PIXELFORMATDESCRIPTOR)); if (params->pixelformat == -1) /* find default */ { pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR); pfd.nVersion = 1; pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL; params->pixelformat = ChoosePixelFormat(dc, &pfd); if (params->pixelformat == 0) return GL_TRUE; } /* set the pixel format for the dc */ if (FALSE == SetPixelFormat(dc, params->pixelformat, &pfd)) return GL_TRUE; /* create rendering context */ rc = wglCreateContext(dc); if (NULL == rc) return GL_TRUE; if (FALSE == wglMakeCurrent(dc, rc)) return GL_TRUE; if (params->major || params->profile || params->flags) { HGLRC oldRC = rc; int contextAttrs[20]; int i; wglewInit(); /* Intel HD 3000 has WGL_ARB_create_context, but not WGL_ARB_create_context_profile */ if (!wglewGetExtension("WGL_ARB_create_context")) return GL_TRUE; i = 0; if (params->major) { contextAttrs[i++] = WGL_CONTEXT_MAJOR_VERSION_ARB; contextAttrs[i++] = params->major; contextAttrs[i++] = WGL_CONTEXT_MINOR_VERSION_ARB; contextAttrs[i++] = params->minor; } if (params->profile) { contextAttrs[i++] = WGL_CONTEXT_PROFILE_MASK_ARB; contextAttrs[i++] = params->profile; } if (params->flags) { contextAttrs[i++] = WGL_CONTEXT_FLAGS_ARB; contextAttrs[i++] = params->flags; } contextAttrs[i++] = 0; rc = wglCreateContextAttribsARB(dc, 0, contextAttrs); if (NULL == rc) return GL_TRUE; if (!wglMakeCurrent(dc, rc)) return GL_TRUE; wglDeleteContext(oldRC); } return GL_FALSE; } void glewDestroyContext (void) { if (NULL != rc) wglMakeCurrent(NULL, NULL); if (NULL != rc) wglDeleteContext(rc); if (NULL != wnd && NULL != dc) ReleaseDC(wnd, dc); if (NULL != wnd) DestroyWindow(wnd); UnregisterClass("GLEW", GetModuleHandle(NULL)); } /* ------------------------------------------------------------------------ */ #elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX) #include #include CGLContextObj ctx, octx; GLboolean glewCreateContext (struct createParams *params) { CGLPixelFormatAttribute contextAttrs[20]; int i; CGLPixelFormatObj pf; GLint npix; CGLError error; i = 0; contextAttrs[i++] = kCGLPFAAccelerated; /* No software rendering */ /* MAC_OS_X_VERSION_10_7 == 1070 */ #if MAC_OS_X_VERSION_MIN_REQUIRED >= 1070 if (params->profile & GL_CONTEXT_CORE_PROFILE_BIT) { if ((params->major==3 && params->minor>=2) || params->major>3) { contextAttrs[i++] = kCGLPFAOpenGLProfile; /* OSX 10.7 Lion onwards */ contextAttrs[i++] = (CGLPixelFormatAttribute) kCGLOGLPVersion_3_2_Core; /* 3.2 Core Context */ } } #endif contextAttrs[i++] = 0; error = CGLChoosePixelFormat(contextAttrs, &pf, &npix); if (error) return GL_TRUE; error = CGLCreateContext(pf, NULL, &ctx); if (error) return GL_TRUE; CGLReleasePixelFormat(pf); octx = CGLGetCurrentContext(); error = CGLSetCurrentContext(ctx); if (error) return GL_TRUE; /* Needed for Regal on the Mac */ #if defined(GLEW_REGAL) && defined(__APPLE__) RegalMakeCurrent(ctx); #endif return GL_FALSE; } void glewDestroyContext (void) { CGLSetCurrentContext(octx); CGLReleaseContext(ctx); } /* ------------------------------------------------------------------------ */ #elif defined(__HAIKU__) GLboolean glewCreateContext (struct createParams *params) { /* TODO: Haiku: We need to call C++ code here */ (void) params; /* not used */ return GL_FALSE; } void glewDestroyContext (void) { /* TODO: Haiku: We need to call C++ code here */ } /* ------------------------------------------------------------------------ */ #else /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */ Display* dpy = NULL; XVisualInfo* vi = NULL; XVisualInfo* vis = NULL; GLXContext ctx = NULL; Window wnd = 0; Colormap cmap = 0; GLboolean glewCreateContext (struct createParams *params) { int attrib[] = { GLX_RGBA, GLX_DOUBLEBUFFER, None }; int erb, evb; XSetWindowAttributes swa; /* open display */ dpy = XOpenDisplay(params->display); if (NULL == dpy) return GL_TRUE; /* query for glx */ if (!glXQueryExtension(dpy, &erb, &evb)) return GL_TRUE; /* choose visual */ if (params->visual == -1) { vi = glXChooseVisual(dpy, DefaultScreen(dpy), attrib); if (NULL == vi) return GL_TRUE; params->visual = (int)XVisualIDFromVisual(vi->visual); } else { int n_vis, i; vis = XGetVisualInfo(dpy, 0, NULL, &n_vis); for (i=0; ivisual) vi = &vis[i]; } if (vi == NULL) return GL_TRUE; } /* create context */ ctx = glXCreateContext(dpy, vi, None, True); if (NULL == ctx) return GL_TRUE; /* create window */ /*wnd = XCreateSimpleWindow(dpy, RootWindow(dpy, vi->screen), 0, 0, 1, 1, 1, 0, 0);*/ cmap = XCreateColormap(dpy, RootWindow(dpy, vi->screen), vi->visual, AllocNone); swa.border_pixel = 0; swa.colormap = cmap; wnd = XCreateWindow(dpy, RootWindow(dpy, vi->screen), 0, 0, 1, 1, 0, vi->depth, InputOutput, vi->visual, CWBorderPixel | CWColormap, &swa); /* make context current */ if (!glXMakeCurrent(dpy, wnd, ctx)) return GL_TRUE; if (params->major || params->profile || params->flags) { GLXContext oldCtx = ctx; GLXFBConfig *FBConfigs; int FBConfigAttrs[] = { GLX_FBCONFIG_ID, 0, None }; int contextAttrs[20]; int nelems, i; glxewInit(); if (!glxewGetExtension("GLX_ARB_create_context")) return GL_TRUE; if (glXQueryContext(dpy, oldCtx, GLX_FBCONFIG_ID, &FBConfigAttrs[1])) return GL_TRUE; FBConfigs = glXChooseFBConfig(dpy, vi->screen, FBConfigAttrs, &nelems); if (nelems < 1) return GL_TRUE; i = 0; if (params->major) { contextAttrs[i++] = GLX_CONTEXT_MAJOR_VERSION_ARB; contextAttrs[i++] = params->major; contextAttrs[i++] = GLX_CONTEXT_MINOR_VERSION_ARB; contextAttrs[i++] = params->minor; } if (params->profile) { contextAttrs[i++] = GLX_CONTEXT_PROFILE_MASK_ARB; contextAttrs[i++] = params->profile; } if (params->flags) { contextAttrs[i++] = GLX_CONTEXT_FLAGS_ARB; contextAttrs[i++] = params->flags; } contextAttrs[i++] = None; ctx = glXCreateContextAttribsARB(dpy, *FBConfigs, NULL, True, contextAttrs); if (NULL == ctx) return GL_TRUE; if (!glXMakeCurrent(dpy, wnd, ctx)) return GL_TRUE; glXDestroyContext(dpy, oldCtx); XFree(FBConfigs); } return GL_FALSE; } void glewDestroyContext (void) { if (NULL != dpy && NULL != ctx) glXDestroyContext(dpy, ctx); if (NULL != dpy && 0 != wnd) XDestroyWindow(dpy, wnd); if (NULL != dpy && 0 != cmap) XFreeColormap(dpy, cmap); if (NULL != vis) XFree(vis); else if (NULL != vi) XFree(vi); if (NULL != dpy) XCloseDisplay(dpy); } #endif /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */ nigels-com-glew-285c35d/auto/src/glew_tail.h0000664000175000017500000000333215135005167021111 0ustar alastairalastair/* ------------------------------------------------------------------------- */ /* error codes */ #define GLEW_OK 0 #define GLEW_NO_ERROR 0 #define GLEW_ERROR_NO_GL_VERSION 1 /* missing GL version */ #define GLEW_ERROR_GL_VERSION_10_ONLY 2 /* Need at least OpenGL 1.1 */ #define GLEW_ERROR_GLX_VERSION_11_ONLY 3 /* Need at least GLX 1.2 */ #define GLEW_ERROR_NO_GLX_DISPLAY 4 /* Need GLX display for GLX support */ /* string codes */ #define GLEW_VERSION 1 #define GLEW_VERSION_MAJOR 2 #define GLEW_VERSION_MINOR 3 #define GLEW_VERSION_MICRO 4 /* ------------------------------------------------------------------------- */ /* GLEW version info */ /* VERSION GLEW_VERSION_STRING VERSION_MAJOR GLEW_VERSION_MAJOR_STRING VERSION_MINOR GLEW_VERSION_MINOR_STRING VERSION_MICRO GLEW_VERSION_MICRO_STRING */ /* API */ GLEWAPI GLenum GLEWAPIENTRY glewInit (void); GLEWAPI GLenum GLEWAPIENTRY glewContextInit (void); GLEWAPI GLboolean GLEWAPIENTRY glewIsSupported (const char *name); #define glewIsExtensionSupported(x) glewIsSupported(x) #ifndef GLEW_GET_VAR #define GLEW_GET_VAR(x) (*(const GLboolean*)&x) #endif #ifndef GLEW_GET_FUN #define GLEW_GET_FUN(x) x #endif GLEWAPI GLboolean glewExperimental; GLEWAPI GLboolean GLEWAPIENTRY glewGetExtension (const char *name); GLEWAPI const GLubyte * GLEWAPIENTRY glewGetErrorString (GLenum error); GLEWAPI const GLubyte * GLEWAPIENTRY glewGetString (GLenum name); #ifdef __cplusplus } #endif #ifdef GLEW_APIENTRY_DEFINED #undef GLEW_APIENTRY_DEFINED #undef APIENTRY #endif #ifdef GLEW_CALLBACK_DEFINED #undef GLEW_CALLBACK_DEFINED #undef CALLBACK #endif #ifdef GLEW_WINGDIAPI_DEFINED #undef GLEW_WINGDIAPI_DEFINED #undef WINGDIAPI #endif #undef GLAPI /* #undef GLEWAPI */ #endif /* __glew_h__ */ nigels-com-glew-285c35d/auto/src/glewinfo_head.c0000664000175000017500000000476315135005167021741 0ustar alastairalastair#include #include #include #include #if defined(GLEW_EGL) #include #elif defined(GLEW_OSMESA) #ifndef GLAPI #define GLAPI extern #endif #ifndef APIENTRY #define APIENTRY #endif #include #elif defined(_WIN32) #include #elif !defined(__APPLE__) && !defined(__HAIKU__) || defined(GLEW_APPLE_GLX) #include #endif #if defined(__APPLE__) #include #endif #ifdef GLEW_REGAL #include #endif static FILE* f; /* Command-line parameters for GL context creation */ struct createParams { #if defined(GLEW_OSMESA) #elif defined(GLEW_EGL) #elif defined(_WIN32) int pixelformat; #elif !defined(__APPLE__) && !defined(__HAIKU__) || defined(GLEW_APPLE_GLX) const char* display; int visual; #endif int major, minor; /* GL context version number */ /* https://www.opengl.org/registry/specs/ARB/glx_create_context.txt */ int profile; /* core = 1, compatibility = 2 */ int flags; /* debug = 1, forward compatible = 2 */ /* GLEW experimental mode */ int experimental; }; GLboolean glewCreateContext (struct createParams *params); GLboolean glewParseArgs (int argc, char** argv, struct createParams *); void glewDestroyContext (void); /* ------------------------------------------------------------------------- */ static GLboolean glewPrintExt (const char* name, GLboolean def1, GLboolean def2, GLboolean def3) { unsigned int i; fprintf(f, "\n%s:", name); for (i=0; i<62-strlen(name); i++) fprintf(f, " "); fprintf(f, "%s ", def1 ? "OK" : "MISSING"); if (def1 != def2) fprintf(f, "[%s] ", def2 ? "OK" : "MISSING"); if (def1 != def3) fprintf(f, "[%s]\n", def3 ? "OK" : "MISSING"); else fprintf(f, "\n"); for (i=0; i #ifdef GLEW_STATIC # ifdef _DEBUG # define FILENAME "glew32sd.dll" # else # define FILENAME "glew32s.dll" # endif #else # ifdef _DEBUG # define FILENAME "glew32d.dll" # else # define FILENAME "glew32.dll" # endif #endif ///////////////////////////////////////////////////////////////////////////// // // Version // VS_VERSION_INFO VERSIONINFO FILEVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0 PRODUCTVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK #ifdef _DEBUG FILEFLAGS VS_FF_DEBUG #else FILEFLAGS 0x0L #endif FILEOS VOS__WINDOWS32 #ifdef GLEW_STATIC FILETYPE VFT_STATIC_LIB #else FILETYPE VFT_DLL #endif FILESUBTYPE VFT2_UNKNOWN BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "040904b0" BEGIN VALUE "Comments", "The OpenGL Extension Wrangler Library\r\n" "Copyright (C) 2008-2025, Nigel Stewart \r\n" "Copyright (C) 2002-2008, Milan Ikits \r\n" "Copyright (C) 2002-2008, Marcelo E. Magallon \r\n" "Copyright (C) 2002, Lev Povalahev\r\n" "All rights reserved.\r\n" "\r\n" "Redistribution and use in source and binary forms, with or without \r\n" "modification, are permitted provided that the following conditions are met:\r\n" "\r\n" "* Redistributions of source code must retain the above copyright notice, \r\n" " this list of conditions and the following disclaimer.\r\n" "* Redistributions in binary form must reproduce the above copyright notice, \r\n" " this list of conditions and the following disclaimer in the documentation \r\n" " and/or other materials provided with the distribution.\r\n" "* The name of the author may be used to endorse or promote products \r\n" " derived from this software without specific prior written permission.\r\n" "\r\n" "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ''AS IS'' \r\n" "AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\n" "IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\n" "ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\n" "LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\n" "CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\n" "SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\n" "INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\n" "CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\n" "ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\n" "THE POSSIBILITY OF SUCH DAMAGE.\r\n" "\r\n" "\r\n" "Mesa 3-D graphics library\r\n" "\r\n" "Version: 7.0\r\n" "\r\n" "Copyright (C) 1999-2007 Brian Paul All Rights Reserved.\r\n" "\r\n" "Permission is hereby granted, free of charge, to any person obtaining a\r\n" "copy of this software and associated documentation files (the ''Software''),\r\n" "to deal in the Software without restriction, including without limitation\r\n" "the rights to use, copy, modify, merge, publish, distribute, sublicense,\r\n" "and/or sell copies of the Software, and to permit persons to whom the\r\n" "Software is furnished to do so, subject to the following conditions:\r\n" "\r\n" "The above copyright notice and this permission notice shall be included\r\n" "in all copies or substantial portions of the Software.\r\n" "\r\n" "THE SOFTWARE IS PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS\r\n" "OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n" "FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL\r\n" "BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r\n" "AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r\n" "CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n" "\r\n" "\r\n" "Copyright (c) 2007 The Khronos Group Inc.\r\n" "\r\n" "Permission is hereby granted, free of charge, to any person obtaining a\r\n" "copy of this software and/or associated documentation files (the\r\n" "''Materials''), to deal in the Materials without restriction, including\r\n" "without limitation the rights to use, copy, modify, merge, publish,\r\n" "distribute, sublicense, and/or sell copies of the Materials, and to\r\n" "permit persons to whom the Materials are furnished to do so, subject to\r\n" "the following conditions:\r\n" "\r\n" "The above copyright notice and this permission notice shall be included\r\n" "in all copies or substantial portions of the Materials.\r\n" "\r\n" "THE MATERIALS ARE PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND,\r\n" "EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\n" "MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\n" "IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\n" "CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\n" "TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\n" "MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\0" VALUE "CompanyName", "\0" VALUE "FileDescription", "The OpenGL Extension Wrangler Library\0" VALUE "FileVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0" VALUE "InternalName", "GLEW\0" VALUE "LegalCopyright", "(C) 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", FILENAME "\0" VALUE "PrivateBuild", "\0" VALUE "ProductName", "The OpenGL Extension Wrangler Library\0" VALUE "ProductVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0" VALUE "SpecialBuild", "\0" END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x409, 1200 END END nigels-com-glew-285c35d/auto/src/glew_str_egl.c0000664000175000017500000000050315135005167021607 0ustar alastairalastair } ret = (len == 0); } return ret; } #elif defined(GLEW_EGL) GLboolean eglewIsSupported (const char* name) { const GLubyte* pos = (const GLubyte*)name; GLuint len = _glewStrLen(pos); GLboolean ret = GL_TRUE; while (ret && len > 0) { if(_glewStrSame1(&pos, &len, (const GLubyte*)"EGL_", 4)) { nigels-com-glew-285c35d/auto/src/glxew_tail.h0000664000175000017500000000070715135005167021304 0ustar alastairalastair/* ------------------------------------------------------------------------ */ GLEWAPI GLenum GLEWAPIENTRY glxewInit (void); GLEWAPI GLboolean GLEWAPIENTRY glxewIsSupported (const char *name); #ifndef GLXEW_GET_VAR #define GLXEW_GET_VAR(x) (*(const GLboolean*)&x) #endif #ifndef GLXEW_GET_FUN #define GLXEW_GET_FUN(x) x #endif GLEWAPI GLboolean GLEWAPIENTRY glxewGetExtension (const char *name); #ifdef __cplusplus } #endif #endif /* __glxew_h__ */ nigels-com-glew-285c35d/auto/src/glew_license.h0000664000175000017500000000334415135005167021605 0ustar alastairalastair/* ** The OpenGL Extension Wrangler Library ** Copyright (C) 2008-2025, Nigel Stewart ** Copyright (C) 2002-2008, Milan Ikits ** Copyright (C) 2002-2008, Marcelo E. Magallon ** Copyright (C) 2002, Lev Povalahev ** All rights reserved. ** ** Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are met: ** ** * Redistributions of source code must retain the above copyright notice, ** this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright notice, ** this list of conditions and the following disclaimer in the documentation ** and/or other materials provided with the distribution. ** * The name of the author may be used to endorse or promote products ** derived from this software without specific prior written permission. ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF ** THE POSSIBILITY OF SUCH DAMAGE. */ nigels-com-glew-285c35d/auto/src/eglew_mid.h0000664000175000017500000000024315135005167021074 0ustar alastairalastair/* ------------------------------------------------------------------------- */ #define EGLEW_FUN_EXPORT GLEW_FUN_EXPORT #define EGLEW_VAR_EXPORT GLEW_VAR_EXPORT nigels-com-glew-285c35d/auto/src/glew_init_wgl.c0000664000175000017500000000317315135005167021772 0ustar alastairalastair/* ------------------------------------------------------------------------- */ static PFNWGLGETEXTENSIONSSTRINGARBPROC _wglewGetExtensionsStringARB = NULL; static PFNWGLGETEXTENSIONSSTRINGEXTPROC _wglewGetExtensionsStringEXT = NULL; GLboolean GLEWAPIENTRY wglewGetExtension (const char* name) { const GLubyte* start; const GLubyte* end; if (_wglewGetExtensionsStringARB == NULL) if (_wglewGetExtensionsStringEXT == NULL) return GL_FALSE; else start = (const GLubyte*)_wglewGetExtensionsStringEXT(); else start = (const GLubyte*)_wglewGetExtensionsStringARB(wglGetCurrentDC()); if (start == 0) return GL_FALSE; end = start + _glewStrLen(start); return _glewSearchExtension(name, start, end); } GLenum GLEWAPIENTRY wglewInit (void) { GLboolean crippled; const GLubyte* extStart; const GLubyte* extEnd; /* find wgl extension string query functions */ _wglewGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"wglGetExtensionsStringARB"); _wglewGetExtensionsStringEXT = (PFNWGLGETEXTENSIONSSTRINGEXTPROC)glewGetProcAddress((const GLubyte*)"wglGetExtensionsStringEXT"); /* query wgl extension string */ if (_wglewGetExtensionsStringARB == NULL) if (_wglewGetExtensionsStringEXT == NULL) extStart = (const GLubyte*)""; else extStart = (const GLubyte*)_wglewGetExtensionsStringEXT(); else extStart = (const GLubyte*)_wglewGetExtensionsStringARB(wglGetCurrentDC()); extEnd = extStart + _glewStrLen(extStart); /* initialize extensions */ crippled = _wglewGetExtensionsStringARB == NULL && _wglewGetExtensionsStringEXT == NULL; nigels-com-glew-285c35d/auto/src/glewinfo_wgl.c0000664000175000017500000000026215135005167021617 0ustar alastairalastair} /* ------------------------------------------------------------------------ */ #if defined(_WIN32) && !defined(GLEW_EGL) && !defined(GLEW_OSMESA) static void wglewInfo () { nigels-com-glew-285c35d/auto/src/glew_str_head.c0000664000175000017500000000040515135005167021742 0ustar alastairalastairGLboolean GLEWAPIENTRY glewIsSupported (const char* name) { const GLubyte* pos = (const GLubyte*)name; GLuint len = _glewStrLen(pos); GLboolean ret = GL_TRUE; while (ret && len > 0) { if (_glewStrSame1(&pos, &len, (const GLubyte*)"GL_", 3)) { nigels-com-glew-285c35d/auto/src/glew_init_tail.c0000664000175000017500000000471315135005167022133 0ustar alastairalastair/* ------------------------------------------------------------------------ */ const GLubyte * GLEWAPIENTRY glewGetErrorString (GLenum error) { static const GLubyte* _glewErrorString[] = { (const GLubyte*)"No error", (const GLubyte*)"Missing GL version", (const GLubyte*)"GL 1.1 and up are not supported", (const GLubyte*)"GLX 1.2 and up are not supported", (const GLubyte*)"No GLX display", (const GLubyte*)"Unknown error" }; const size_t max_error = sizeof(_glewErrorString)/sizeof(*_glewErrorString) - 1; return _glewErrorString[(size_t)error > max_error ? max_error : (size_t)error]; } const GLubyte * GLEWAPIENTRY glewGetString (GLenum name) { static const GLubyte* _glewString[] = { (const GLubyte*)NULL, (const GLubyte*)"GLEW_VERSION_STRING", (const GLubyte*)"GLEW_VERSION_MAJOR_STRING", (const GLubyte*)"GLEW_VERSION_MINOR_STRING", (const GLubyte*)"GLEW_VERSION_MICRO_STRING" }; const size_t max_string = sizeof(_glewString)/sizeof(*_glewString) - 1; return _glewString[(size_t)name > max_string ? 0 : (size_t)name]; } /* ------------------------------------------------------------------------ */ GLboolean glewExperimental = GL_FALSE; GLenum GLEWAPIENTRY glewInit (void) { GLenum r; #if defined(GLEW_EGL) PFNEGLGETCURRENTDISPLAYPROC getCurrentDisplay = NULL; #endif r = glewContextInit(); if ( r != 0 ) return r; #if defined(GLEW_EGL) getCurrentDisplay = (PFNEGLGETCURRENTDISPLAYPROC) glewGetProcAddress("eglGetCurrentDisplay"); return eglewInit(getCurrentDisplay()); #elif defined(GLEW_OSMESA) || defined(__ANDROID__) || defined(__native_client__) || defined(__HAIKU__) return r; #elif defined(_WIN32) return wglewInit(); #elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX) /* _UNIX */ return glxewInit(); #else return r; #endif /* _WIN32 */ } #if defined(_WIN32) && defined(GLEW_BUILD) && defined(__GNUC__) /* GCC requires a DLL entry point even without any standard library included. */ /* Types extracted from windows.h to avoid polluting the rest of the file. */ int __stdcall DllMainCRTStartup(void* instance, unsigned reason, void* reserved) { (void) instance; (void) reason; (void) reserved; return 1; } #endif #if defined(_WIN32) && defined(GLEW_BUILD) && defined(__clang__) /* Windows mingw clang requires a DLL entry point */ int __stdcall _DllMainCRTStartup(void* instance, unsigned reason, void* reserved) { (void) instance; (void) reason; (void) reserved; return 1; } #endif nigels-com-glew-285c35d/auto/src/glxew_head.h0000664000175000017500000000620315135005167021251 0ustar alastairalastair#ifndef __glxew_h__ #define __glxew_h__ #define __GLXEW_H__ #ifdef __glxext_h_ #error glxext.h included before glxew.h #endif #if defined(GLX_H) || defined(__GLX_glx_h__) || defined(__glx_h__) #error glx.h included before glxew.h #endif #define __glxext_h_ #define GLX_H #define __GLX_glx_h__ #define __glx_h__ #include #include #include #ifndef GLEW_INCLUDE # include #else # include GLEW_INCLUDE #endif #ifdef __cplusplus extern "C" { #endif /* ---------------------------- GLX_VERSION_1_0 --------------------------- */ #ifndef GLX_VERSION_1_0 #define GLX_VERSION_1_0 1 #define GLX_USE_GL 1 #define GLX_BUFFER_SIZE 2 #define GLX_LEVEL 3 #define GLX_RGBA 4 #define GLX_DOUBLEBUFFER 5 #define GLX_STEREO 6 #define GLX_AUX_BUFFERS 7 #define GLX_RED_SIZE 8 #define GLX_GREEN_SIZE 9 #define GLX_BLUE_SIZE 10 #define GLX_ALPHA_SIZE 11 #define GLX_DEPTH_SIZE 12 #define GLX_STENCIL_SIZE 13 #define GLX_ACCUM_RED_SIZE 14 #define GLX_ACCUM_GREEN_SIZE 15 #define GLX_ACCUM_BLUE_SIZE 16 #define GLX_ACCUM_ALPHA_SIZE 17 #define GLX_BAD_SCREEN 1 #define GLX_BAD_ATTRIBUTE 2 #define GLX_NO_EXTENSION 3 #define GLX_BAD_VISUAL 4 #define GLX_BAD_CONTEXT 5 #define GLX_BAD_VALUE 6 #define GLX_BAD_ENUM 7 typedef XID GLXDrawable; typedef XID GLXPixmap; #ifdef __sun typedef struct __glXContextRec *GLXContext; #else typedef struct __GLXcontextRec *GLXContext; #endif typedef unsigned int GLXVideoDeviceNV; extern Bool glXQueryExtension (Display *dpy, int *errorBase, int *eventBase); extern Bool glXQueryVersion (Display *dpy, int *major, int *minor); extern int glXGetConfig (Display *dpy, XVisualInfo *vis, int attrib, int *value); extern XVisualInfo* glXChooseVisual (Display *dpy, int screen, int *attribList); extern GLXPixmap glXCreateGLXPixmap (Display *dpy, XVisualInfo *vis, Pixmap pixmap); extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix); extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct); extern void glXDestroyContext (Display *dpy, GLXContext ctx); extern Bool glXIsDirect (Display *dpy, GLXContext ctx); extern void glXCopyContext (Display *dpy, GLXContext src, GLXContext dst, GLulong mask); extern Bool glXMakeCurrent (Display *dpy, GLXDrawable drawable, GLXContext ctx); extern GLXContext glXGetCurrentContext (void); extern GLXDrawable glXGetCurrentDrawable (void); extern void glXWaitGL (void); extern void glXWaitX (void); extern void glXSwapBuffers (Display *dpy, GLXDrawable drawable); extern void glXUseXFont (Font font, int first, int count, int listBase); #define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0) #endif /* GLX_VERSION_1_0 */ /* ---------------------------- GLX_VERSION_1_1 --------------------------- */ #ifndef GLX_VERSION_1_1 #define GLX_VERSION_1_1 #define GLX_VENDOR 0x1 #define GLX_VERSION 0x2 #define GLX_EXTENSIONS 0x3 extern const char* glXQueryExtensionsString (Display *dpy, int screen); extern const char* glXGetClientString (Display *dpy, int name); extern const char* glXQueryServerString (Display *dpy, int screen, int name); #define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1) #endif /* GLX_VERSION_1_1 */ nigels-com-glew-285c35d/auto/src/glew_str_tail.c0000664000175000017500000000010515135005167021767 0ustar alastairalastair } ret = (len == 0); } return ret; } #endif /* _WIN32 */ nigels-com-glew-285c35d/auto/doc/0000775000175000017500000000000015135005167016746 5ustar alastairalastairnigels-com-glew-285c35d/auto/doc/index.html0000664000175000017500000002027515135005167020751 0ustar alastairalastair

The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform. OpenGL core and extension functionality is exposed in a single header file. GLEW has been tested on a variety of operating systems, including Windows, Linux, Mac OS X, FreeBSD, Irix, and Solaris.

Downloads

GLEW is distributed as source and precompiled binaries.
The latest release is 2.3.1[01-10-2026]:

Source ZIP |  TGZ
Binaries Windows 32-bit and 64-bit

An up-to-date copy is also available using git:

  • github
    git clone https://github.com/nigels-com/glew.git glew
     

Supported Extensions

The latest release contains support for OpenGL 4.6, compatibility and forward-compatible contexts and the following extensions:

News

  • [01-03-2025] GLEW 2.3.1 minor bug fixe
  • [12-27-2025] GLEW 2.3.0 new extensions and minor bug fixes
  • [03-15-2020] GLEW 2.2.0 new extensions and minor bug fixes
  • [07-31-2017] GLEW 2.1.0 adds support for OpenGL 4.6, new extensions and minor bug fixes
  • [07-24-2016] GLEW 2.0.0 adds support for forward-compatible contexts, adds new extensions, OSMesa and EGL support, MX discontinued and minor bug fixes
  • [08-10-2015] GLEW 1.13.0 adds support for new extensions, fixes minor bugs
  • [26-01-2015] GLEW 1.12.0 fixes minor bugs and adds new extensions
  • [08-11-2014] GLEW 1.11.0 adds support for OpenGL 4.5, new extensions
  • [07-22-2013] GLEW 1.10.0 adds support for OpenGL 4.4, new extensions
  • [08-06-2012] GLEW 1.9.0 adds support for OpenGL 4.3, new extensions
  • [07-17-2012] GLEW 1.8.0 fixes minor bugs and adds new extensions
  • [08-26-2011] GLEW 1.7.0 adds support for OpenGL 4.2, new extensions, fixes bugs
  • [04-27-2011] GLEW 1.6.0 fixes minor bugs and adds eight new extensions
  • [01-31-2011] GLEW 1.5.8 fixes minor bugs and adds two new extensions
  • [11-03-2010] GLEW 1.5.7 fixes minor bugs and adds one new extension
  • [09-07-2010] GLEW 1.5.6 adds support for OpenGL 4.1, fixes bugs
  • [07-13-2010] GLEW 1.5.5 fixes minor bugs and adds new extensions
  • [04-21-2010] GLEW 1.5.4 adds support for OpenGL 3.3, OpenGL 4.0 and new extensions, fixes bugs
  • [02-28-2010] GLEW 1.5.3 fixes minor bugs and adds three new extensions
  • [12-31-2009] GLEW 1.5.2 adds support for OpenGL 3.1, OpenGL 3.2 and new extensions
  • [11-03-2008] GLEW 1.5.1 adds support for OpenGL 3.0 and 31 new extensions
  • [12-27-2007] GLEW 1.5.0 is released under less restrictive licenses
  • [04-27-2007] GLEW 1.4.0 is released
  • [03-08-2007] GLEW is included in the NVIDIA OpenGL SDK
  • [03-04-2007] GLEW 1.3.6 is released
  • [02-28-2007] Repository is migrated to SVN
  • [02-25-2007] GLEW is included in the OpenGL SDK
  • [11-21-2006] GLEW 1.3.5 adds OpenGL 2.1 and NVIDIA G80 extensions
  • [03-04-2006] GLEW 1.3.4 adds support for five new extensions
  • [05-16-2005] GLEW 1.3.3 is released
  • [03-16-2005] GLEW 1.3.2 adds support for GL_APPLE_pixel_buffer
  • [02-11-2005] gljava and sdljava provide a Java binding to OpenGL via GLEW
  • [02-02-2005] GLEW 1.3.1 adds support for GL_EXT_framebuffer_object
  • [01-04-2005] GLEW 1.3.0 adds core OpenGL 2.0 support plus many enhancements
  • [12-22-2004] GLEWpy Python wrapper announced
  • [12-12-2004] Mailing lists created on sourceforge
  • [12-06-2004] GLEW 1.2.5 adds new extensions and support for FreeBSD

Links

nigels-com-glew-285c35d/auto/doc/log.html0000664000175000017500000012706615135005167020431 0ustar alastairalastair

Change Log


  • 2.3.1 [01-24-2026]
    • 2.3.0 [12-27-2025]
      • New extensions:
        • GL_ARM_shader_core_properties
        • GL_EXT_EGL_image_storage_compression
        • GL_EXT_fragment_shading_rate
        • GL_EXT_framebuffer_blit_layers
        • GL_EXT_mesh_shader
        • GL_EXT_separate_depth_stencil
        • GL_EXT_shader_clock
        • GL_EXT_shader_realtime_clock
        • GL_EXT_shader_samples_identical
        • GL_EXT_shader_texture_samples
        • GL_EXT_texture_storage_compression
        • GL_HUAWEI_program_binary
        • GL_HUAWEI_shader_binary
        • GL_IMG_pvric_end_to_end_signature
        • GL_IMG_tile_region_protection
        • GL_MESA_bgra
        • GL_MESA_framebuffer_flip_x
        • GL_MESA_framebuffer_swap_xy
        • GL_MESA_texture_const_bandwidth
        • GL_NV_memory_object_sparse
        • GL_NV_primitive_shading_rate
        • GL_NV_timeline_semaphore
        • GL_NV_uniform_buffer_std430_layout
        • GL_QCOM_frame_extrapolation
        • GL_QCOM_motion_estimation
        • GL_QCOM_render_sRGB_R8_RG8
        • GL_QCOM_render_shared_exponent
        • GL_QCOM_shading_rate
        • GL_QCOM_texture_foveated2
        • GL_QCOM_texture_lod_bias
        • GL_QCOM_ycbcr_degamma
        • EGL_ANDROID_telemetry_hint
        • EGL_ANGLE_sync_control_rate
        • EGL_EXT_config_select_group
        • EGL_EXT_device_drm_render_node
        • EGL_EXT_device_persistent_id
        • EGL_EXT_device_query_name
        • EGL_EXT_display_alloc
        • EGL_EXT_explicit_device
        • EGL_EXT_gl_colorspace_bt2020_hlg
        • EGL_EXT_platform_xcb
        • EGL_EXT_present_opaque
        • EGL_EXT_query_reset_notification_strategy
        • EGL_EXT_surface_compression
        • EGL_NV_stream_consumer_eglimage
        • EGL_NV_stream_consumer_eglimage_use_scanout_attrib
        • EGL_QNX_image_native_buffer
        • EGL_QNX_platform_screen
        • GLX_EXT_get_drawable_type
      • Contributors:
        • Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, Anuraag Agrawal, Ari Pollak, Bertie Wheen, Bertrand Marc, Christian Rauch, Daniel Bernar, Danilo Spinella, Debian Janitor, Dmitry Kalinkin, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Helmut Grohne, ibbem, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, luz paz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Ondřej Nový, René Schwaiger, Ross Burton, Ryan Schmidt, SpaceIm, Tim Gates, Vanfanel, Vladimir Vukicevic, Xavier Bonaventura, Yaroslav Halchenko

    • 2.2.0 [03-15-20]
      • Bug fixes:
        • GL_EXT_semaphore constants
        • Some const pointer fixups in OpenGL API
        • Correction for GLEW_VERSION_4_5
        • Windows build updates and fixes
      • New extensions:
        • GL_AMD_framebuffer_multisample_advanced
        • GL_AMD_gpu_shader_half_float_fetch
        • GL_AMD_shader_image_load_store_lod
        • GL_ARM_texture_unnormalized_coordinates
        • GL_DMP_program_binary
        • GL_DMP_shader_binary
        • GL_EXT_EGL_image_external_wrap_modes
        • GL_EXT_EGL_image_storage
        • GL_EXT_EGL_sync
        • GL_EXT_clip_control
        • GL_EXT_depth_clamp
        • GL_EXT_disjoint_timer_query
        • GL_EXT_draw_transform_feedback
        • GL_EXT_multiview_tessellation_geometry_shader
        • GL_EXT_multiview_texture_multisample
        • GL_EXT_multiview_timer_query
        • GL_EXT_occlusion_query_boolean
        • GL_EXT_primitive_bounding_box
        • GL_EXT_protected_textures
        • GL_EXT_robustness
        • GL_EXT_shader_framebuffer_fetch_non_coherent
        • GL_EXT_static_vertex_array
        • GL_EXT_tessellation_point_size
        • GL_EXT_tessellation_shader
        • GL_EXT_texture_border_clamp
        • GL_EXT_texture_buffer
        • GL_EXT_texture_compression_s3tc_srgb
        • GL_EXT_texture_format_sRGB_override
        • GL_EXT_texture_mirror_clamp_to_edge
        • GL_EXT_texture_query_lod
        • GL_EXT_texture_shadow_lod
        • GL_FJ_shader_binary_GCCSO
        • GL_IMG_bindless_texture
        • GL_IMG_framebuffer_downsample
        • GL_IMG_multisampled_render_to_texture
        • GL_IMG_program_binary
        • GL_IMG_read_format
        • GL_IMG_shader_binary
        • GL_IMG_texture_compression_pvrtc
        • GL_IMG_texture_compression_pvrtc2
        • GL_IMG_texture_env_enhanced_fixed_function
        • GL_IMG_texture_filter_cubic
        • GL_INTEL_blackhole_render
        • GL_INTEL_shader_integer_functions2
        • GL_KHR_shader_subgroup
        • GL_MESA_framebuffer_flip_y
        • GL_MESA_program_binary_formats
        • GL_MESA_tile_raster_order
        • GL_NVX_gpu_multicast2
        • GL_NVX_progress_fence
        • GL_NV_compute_shader_derivatives
        • GL_NV_conservative_raster_pre_snap
        • GL_NV_conservative_raster_underestimation
        • GL_NV_depth_nonlinear
        • GL_NV_fragment_shader_barycentric
        • GL_NV_memory_attachment
        • GL_NV_mesh_shader
        • GL_NV_query_resource_tag
        • GL_NV_read_buffer
        • GL_NV_read_buffer_front
        • GL_NV_representative_fragment_test
        • GL_NV_scissor_exclusive
        • GL_NV_shader_subgroup_partitioned
        • GL_NV_shader_texture_footprint
        • GL_NV_shading_rate_image
        • GL_NV_vdpau_interop2
        • GL_OES_EGL_image
        • GL_OES_EGL_image_external
        • GL_OES_EGL_image_external_essl3
        • GL_OES_blend_equation_separate
        • GL_OES_blend_func_separate
        • GL_OES_blend_subtract
        • GL_OES_compressed_ETC1_RGB8_texture
        • GL_OES_compressed_paletted_texture
        • GL_OES_copy_image
        • GL_OES_depth24
        • GL_OES_depth32
        • GL_OES_depth_texture
        • GL_OES_depth_texture_cube_map
        • GL_OES_draw_buffers_indexed
        • GL_OES_draw_texture
        • GL_OES_element_index_uint
        • GL_OES_extended_matrix_palette
        • GL_OES_fbo_render_mipmap
        • GL_OES_fragment_precision_high
        • GL_OES_framebuffer_object
        • GL_OES_geometry_point_size
        • GL_OES_geometry_shader
        • GL_OES_get_program_binary
        • GL_OES_gpu_shader5
        • GL_OES_mapbuffer
        • GL_OES_matrix_get
        • GL_OES_matrix_palette
        • GL_OES_packed_depth_stencil
        • GL_OES_point_size_array
        • GL_OES_point_sprite
        • GL_OES_read_format
        • GL_OES_required_internalformat
        • GL_OES_rgb8_rgba8
        • GL_OES_sample_shading
        • GL_OES_sample_variables
        • GL_OES_shader_image_atomic
        • GL_OES_shader_io_blocks
        • GL_OES_shader_multisample_interpolation
        • GL_OES_single_precision
        • GL_OES_standard_derivatives
        • GL_OES_stencil1
        • GL_OES_stencil4
        • GL_OES_stencil8
        • GL_OES_surfaceless_context
        • GL_OES_tessellation_point_size
        • GL_OES_tessellation_shader
        • GL_OES_texture_3D
        • GL_OES_texture_border_clamp
        • GL_OES_texture_buffer
        • GL_OES_texture_compression_astc
        • GL_OES_texture_cube_map
        • GL_OES_texture_cube_map_array
        • GL_OES_texture_env_crossbar
        • GL_OES_texture_mirrored_repeat
        • GL_OES_texture_npot
        • GL_OES_texture_stencil8
        • GL_OES_texture_storage_multisample_2d_array
        • GL_OES_texture_view
        • GL_OES_vertex_array_object
        • GL_OES_vertex_half_float
        • GL_OES_vertex_type_10_10_10_2
        • GL_QCOM_YUV_texture_gather
        • GL_QCOM_shader_framebuffer_fetch_rate
        • GL_QCOM_texture_foveated
        • GL_QCOM_texture_foveated_subsampled_layout
        • GL_VIV_shader_binary
        • EGL_ANDROID_GLES_layers
        • EGL_ANDROID_get_frame_timestamps
        • EGL_ANDROID_get_native_client_buffer
        • EGL_ARM_image_format
        • EGL_EXT_bind_to_front
        • EGL_EXT_client_sync
        • EGL_EXT_compositor
        • EGL_EXT_gl_colorspace_display_p3
        • EGL_EXT_gl_colorspace_display_p3_linear
        • EGL_EXT_gl_colorspace_display_p3_passthrough
        • EGL_EXT_gl_colorspace_scrgb
        • EGL_EXT_image_gl_colorspace
        • EGL_EXT_image_implicit_sync_control
        • EGL_EXT_surface_CTA861_3_metadata
        • EGL_EXT_sync_reuse
        • EGL_KHR_display_reference
        • EGL_MESA_query_driver
        • EGL_NV_context_priority_realtime
        • EGL_NV_quadruple_buffer
        • EGL_NV_stream_dma
        • EGL_NV_stream_flush
        • EGL_NV_stream_origin
        • EGL_NV_triple_buffer
        • EGL_WL_bind_wayland_display
        • EGL_WL_create_wayland_buffer_from_image
        • GLX_EXT_context_priority
        • GLX_EXT_no_config_context
        • GLX_NV_multigpu_context
        • WGL_NV_multigpu_context
      • Contributors:
        • Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, Anuraag Agrawal, Ari Pollak, Bertie Wheen, Bertrand Marc, Christian Rauch, CiriUp, Daniel Bernar, Danilo Spinella, Debian Janitor, Deve, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Helmut Grohne, ibbem, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, luz paz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, Ondřej Nový, Paul Steinbrecher, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, SpaceIm, Stefan Zabka, Steve Robinson, TheVice, Tim Gates, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, wiranoid, Xavier Bonaventura, Yaroslav Halchenko

    • 2.1.0 [07-31-17]
      • Enhancements:
        • OpenGL 4.6 support added
        • Improved Mac OSX build support
        • Improved cmake build support
      • Bug fixes:
        • Resolved crash when glXGetCurrentDisplay() is NULL
        • CMake: only install PDB files with MSVC
        • wglGetProcAddress crash with NOGDI defined
        • Mac: using -Os rather than -O2
      • New extensions:
        • GL_AMD_gpu_shader_half_float
        • GL_AMD_shader_ballot
        • GL_ARB_gl_spirv
        • GL_EGL_KHR_context_flush_control
        • GL_INTEL_conservative_rasterization
        • GL_MESA_shader_integer_functions
        • GL_NVX_blend_equation_advanced_multi_draw_buffers
        • GL_NV_gpu_multicast
        • EGL_ARM_implicit_external_sync
        • EGL_EXT_gl_colorspace_bt2020_linear
        • EGL_EXT_gl_colorspace_bt2020_pq
        • EGL_EXT_gl_colorspace_scrgb_linear
        • EGL_EXT_image_dma_buf_import_modifiers
        • EGL_EXT_pixel_format_float
        • EGL_EXT_surface_SMPTE2086_metadata
        • EGL_KHR_context_flush_control
        • EGL_KHR_no_config_context
        • EGL_KHR_stream_attrib
        • EGL_MESA_platform_surfaceless
        • EGL_NV_stream_cross_display
        • EGL_NV_stream_cross_object
        • EGL_NV_stream_cross_partition
        • EGL_NV_stream_cross_process
        • EGL_NV_stream_cross_system
        • EGL_NV_stream_fifo_next
        • EGL_NV_stream_fifo_synchronous
        • EGL_NV_stream_frame_limits
        • EGL_NV_stream_remote
        • EGL_NV_stream_reset
        • EGL_NV_stream_socket
        • EGL_NV_stream_socket_inet
        • EGL_NV_stream_socket_unix
        • WGL_EXT_colorspace
      • Contributors:
        • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, Bertie Wheen, Bertrand Marc, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Helmut Grohne, ibbem, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, luz paz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Miguel Vera, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, Tan Li Boon, TheVice, Tim Gates, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, wiranoid, Xavier Bonaventura, Yaroslav Halchenko

    • 2.0.0 [07-24-16]
      • Enhancements:
        • Forward context support added
        • OSMesa support added
        • EGL support added
        • MX support discontinued
        • Improved cmake build support
      • New extensions:
        • GL_AMD_shader_explicit_vertex_parameter
        • GL_ARB_gl_spirv
        • GL_EGL_NV_robustness_video_memory_purge
        • GL_EXT_window_rectangles
        • GL_INTEL_conservative_rasterization
        • GL_KHR_texture_compression_astc_sliced_3d
        • GL_MESA_shader_integer_functions
        • GL_NVX_blend_equation_advanced_multi_draw_buffers
        • GL_NVX_linked_gpu_multicast
        • GL_NV_clip_space_w_scaling
        • GL_NV_command_list
        • GL_NV_conservative_raster_pre_snap_triangles
        • GL_NV_draw_vulkan_image
        • GL_NV_gpu_multicast
        • GL_NV_robustness_video_memory_purge
        • GL_NV_shader_atomic_float64
        • GL_NV_stereo_view_rendering
        • GL_NV_viewport_swizzle
        • GLX_EXT_libglvnd
        • GLX_NV_robustness_video_memory_purge
      • Contributors:
        • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, Bertie Wheen, Bertrand Marc, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Gyusun Yeom, Helmut Grohne, ibbem, Icy Defiance, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, Loufis, luz paz, Marcel Metz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Miguel Vera, Mischa Spiegelmock, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, stopiccot, Tamas Kenez, Tan Li Boon, TheVice, Tim Gates, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, Wes Tarro, wiranoid, Xavier Bonaventura, Yaroslav Halchenko

  • 1.13.0 [08-10-2015]
    • Enhancements:
      • glxewInit, wglewInit
      • glewinfo adds support for -version, -profile core|compatibility and -flag debug|forward parameters
      • Improved cmake build support
    • New extensions:
      • GL_ARB_ES3_2_compatibility
      • GL_ARB_fragment_shader_interlock
      • GL_ARB_gpu_shader_int64
      • GL_ARB_parallel_shader_compile
      • GL_ARB_post_depth_coverage
      • GL_ARB_sample_locations
      • GL_ARB_shader_atomic_counter_ops
      • GL_ARB_shader_ballot
      • GL_ARB_shader_clock
      • GL_ARB_shader_viewport_layer_array
      • GL_ARB_sparse_texture2
      • GL_ARB_sparse_texture_clamp
      • GL_ARB_texture_filter_minmax
      • GL_INTEL_framebuffer_CMAA
      • GL_KHR_no_error
      • GL_NV_conservative_raster_dilate
      • GL_OVR_multiview
      • GL_OVR_multiview2
    • Contributors:
      • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, BastiaanOlij, Bertie Wheen, Bertrand Marc, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Gyusun Yeom, Helmut Grohne, ibbem, Icy Defiance, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, Lauri Nurmi, Loufis, luz paz, Marcel Metz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Miguel Vera, Mischa Spiegelmock, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, stopiccot, Tamas Kenez, Tan Li Boon, TheVice, Tim Gates, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, Wes Tarro, wiranoid, xantares, Xavier Bonaventura, Yaroslav Halchenko, yy-yyaa

  • 1.12.0 [01-26-2015]
    • New extensions:
      • GL_EXT_polygon_offset_clamp
      • GL_EXT_post_depth_coverage
      • GL_EXT_raster_multisample
      • GL_EXT_sparse_texture2
      • GL_EXT_texture_filter_minmax
      • GL_NV_conservative_raster
      • GL_NV_fill_rectangle
      • GL_NV_fragment_coverage_to_color
      • GL_NV_fragment_shader_interlock
      • GL_NV_framebuffer_mixed_samples
      • GL_NV_geometry_shader_passthrough
      • GL_NV_internalformat_sample_query
      • GL_NV_sample_locations
      • GL_NV_sample_mask_override_coverage
      • GL_NV_shader_atomic_fp16_vector
      • GL_NV_uniform_buffer_unified_memory
      • GL_NV_viewport_array2
    • Contributors:
      • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, BastiaanOlij, Bertie Wheen, Bertrand Marc, BryceMehring, Carsten Neumann, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Frank Park, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Gyusun Yeom, Helmut Grohne, ibbem, Icy Defiance, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, Lauri Nurmi, Loufis, luz paz, Marcel Metz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Matthias Goldhoorn, Miguel Vera, Mischa Spiegelmock, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, omniavinco, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, stopiccot, Tamas Kenez, Tan Li Boon, TheVice, Tim Gates, Togo Nishigaki, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, Wes Tarro, wiranoid, xantares, Xavier Bonaventura, Yaroslav Halchenko, yy-yyaa

  • 1.11.0 [08-11-2014]
    • New features:
      • Support for OpenGL 4.5
    • New extensions:
      • GL_AMD_gcn_shader
      • GL_AMD_gpu_shader_int64
      • GL_AMD_occlusion_query_event
      • GL_AMD_shader_atomic_counter_ops
      • GL_AMD_shader_stencil_value_export
      • GL_AMD_transform_feedback4
      • GL_ARB_ES3_1_compatibility
      • GL_ARB_clip_control
      • GL_ARB_conditional_render_inverted
      • GL_ARB_cull_distance
      • GL_ARB_derivative_control
      • GL_ARB_direct_state_access
      • GL_ARB_get_texture_sub_image
      • GL_ARB_pipeline_statistics_query
      • GL_ARB_shader_texture_image_samples
      • GL_ARB_sparse_buffer
      • GL_ARB_texture_barrier
      • GL_ARB_transform_feedback_overflow_query
      • GL_EXT_debug_label
      • GL_EXT_shader_image_load_formatted
      • GL_EXT_shader_integer_mix
      • GL_INTEL_fragment_shader_ordering
      • GL_INTEL_performance_query
      • GL_KHR_blend_equation_advanced
      • GL_KHR_blend_equation_advanced_coherent
      • GL_KHR_context_flush_control
      • GL_KHR_robust_buffer_access_behavior
      • GL_KHR_robustness
      • GL_KHR_texture_compression_astc_hdr
      • GL_NV_bindless_multi_draw_indirect_count
      • GL_NV_shader_atomic_int64
      • GL_NV_shader_thread_group
      • GL_NV_shader_thread_shuffle
      • GL_REGAL_proc_address
      • GLX_ARB_context_flush_control
      • GLX_EXT_stereo_tree
      • GLX_MESA_query_renderer
      • GLX_NV_copy_buffer
      • GLX_NV_delay_before_swap
      • WGL_ARB_context_flush_control
      • WGL_NV_delay_before_swap
    • Contributors:
      • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, BastiaanOlij, Bertie Wheen, Bertrand Marc, BryceMehring, Carsten Neumann, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Dāvis, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Frank Park, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Gyusun Yeom, hasufell, Helmut Grohne, ibbem, Icy Defiance, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Keith Rosenberg, Kekschen, Kerby Geffrard, Lauri Nurmi, Loufis, luz paz, Marcel Metz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Matthias Goldhoorn, Miguel Vera, Mischa Spiegelmock, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, omniavinco, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, rconde, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, stopiccot, Tamas Kenez, Tan Li Boon, TheVice, Tim Gates, Togo Nishigaki, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, Wes Tarro, wiranoid, xantares, Xavier Bonaventura, Yaroslav Halchenko, yy-yyaa

  • 1.10.0 [07-22-2013]
    • New features:
      • Support for OpenGL 4.4
    • New extensions:
      • GL_AMD_interleaved_elements
      • GL_AMD_shader_trinary_minmax
      • GL_AMD_sparse_texture
      • GL_ANGLE_depth_texture
      • GL_ANGLE_framebuffer_blit
      • GL_ANGLE_framebuffer_multisample
      • GL_ANGLE_instanced_arrays
      • GL_ANGLE_pack_reverse_row_order
      • GL_ANGLE_program_binary
      • GL_ANGLE_texture_compression_dxt1
      • GL_ANGLE_texture_compression_dxt3
      • GL_ANGLE_texture_compression_dxt5
      • GL_ANGLE_texture_usage
      • GL_ANGLE_timer_query
      • GL_ANGLE_translated_shader_source
      • GL_ARB_bindless_texture
      • GL_ARB_buffer_storage
      • GL_ARB_clear_texture
      • GL_ARB_compute_variable_group_size
      • GL_ARB_enhanced_layouts
      • GL_ARB_indirect_parameters
      • GL_ARB_multi_bind
      • GL_ARB_query_buffer_object
      • GL_ARB_seamless_cubemap_per_texture
      • GL_ARB_shader_draw_parameters
      • GL_ARB_shader_group_vote
      • GL_ARB_sparse_texture
      • GL_ARB_texture_mirror_clamp_to_edge
      • GL_ARB_texture_stencil8
      • GL_ARB_vertex_type_10f_11f_11f_rev
      • GL_INTEL_map_texture
      • GL_NVX_conditional_render
      • GL_NV_bindless_multi_draw_indirect
      • GL_NV_blend_equation_advanced
      • GL_NV_compute_program5
      • GL_NV_deep_texture3D
      • GL_NV_draw_texture
      • GL_NV_shader_atomic_counters
      • GL_NV_shader_storage_buffer_object
      • GL_REGAL_ES1_0_compatibility
      • GL_REGAL_ES1_1_compatibility
      • GL_REGAL_enable
      • GLX_EXT_buffer_age
      • WGL_ARB_robustness_application_isolation
      • WGL_ARB_robustness_share_group_isolation
    • Bug fixes

  • 1.9.0 [08-06-2012]
    • New features:
    • New extensions:
      • GL_ARB_ES3_compatibility
      • GL_ARB_clear_buffer_object
      • GL_ARB_compute_shader
      • GL_ARB_copy_image
      • GL_ARB_explicit_uniform_location
      • GL_ARB_fragment_layer_viewport
      • GL_ARB_framebuffer_no_attachments
      • GL_ARB_internalformat_query2
      • GL_ARB_multi_draw_indirect
      • GL_ARB_program_interface_query
      • GL_ARB_robust_buffer_access_behavior
      • GL_ARB_robustness_application_isolation
      • GL_ARB_robustness_share_group_isolation
      • GL_ARB_shader_image_size
      • GL_ARB_shader_storage_buffer_object
      • GL_ARB_stencil_texturing
      • GL_ARB_texture_buffer_range
      • GL_ARB_texture_query_levels
      • GL_ARB_texture_storage_multisample
      • GL_ARB_texture_view
      • GL_ARB_vertex_attrib_binding
      • GL_EXT_debug_marker
      • GL_KHR_debug
      • GL_REGAL_error_string
      • GL_REGAL_extension_query
      • GL_REGAL_log
      • GLX_ARB_robustness_application_isolation
      • GLX_ARB_robustness_share_group_isolation
      • GLX_EXT_create_context_es_profile
      • WGL_EXT_create_context_es_profile
    • Bug fixes:
      • Not using GLU library for Makefile builds.

  • 1.8.0 [07-17-2012]
    • New extensions:
      • GL_AMD_pinned_memory
      • GL_AMD_query_buffer_object
      • GL_AMD_stencil_operation_extended
      • GL_AMD_vertex_shader_layer
      • GL_AMD_vertex_shader_viewport_index
      • GL_NV_bindless_texture
      • GL_NV_shader_atomic_float
      • GLX_EXT_swap_control_tear
      • WGL_EXT_swap_control_tear
      • WGL_NV_DX_interop2
    • Bug fixes:
      • MS Visual Studio 2010 projects added
      • GLX_NV_video_out replaces GLX_NV_video_output
      • ANSI C prototype for glewInit
      • Improved CentOS build support
      • Improved GL_ARB_gpu_shader_fp64 support
      • ARB_texture_compression_bptc and ARB_copy_buffer constants
      • Linux needs to define GLEW_STATIC for static library builds
      • Custom code generation problem resolved
      • GLEWAPIENTRY added to glew.h for calling convention customization
      • Correction for glPathStencilDepthOffsetNV
      • Resolve OSX gcc warnings
      • Added build support for NetBSD

  • 1.7.0 [08-26-2011]
    • New features:
      • Support for OpenGL 4.2
    • New extensions:
      • GL_AMD_multi_draw_indirect
      • GL_ARB_base_instance
      • GL_ARB_compressed_texture_pixel_storage
      • GL_ARB_conservative_depth
      • GL_ARB_internalformat_query
      • GL_ARB_map_buffer_alignment
      • GL_ARB_shader_atomic_counters
      • GL_ARB_shader_image_load_store
      • GL_ARB_shading_language_420pack
      • GL_ARB_shading_language_packing
      • GL_ARB_texture_storage
      • GL_ARB_transform_feedback_instanced
      • GL_EXT_framebuffer_multisample_blit_scaled
      • GL_NV_path_rendering
      • GL_NV_path_rendering
      • GLX_MESA_swap_control
    • Bug fixes:
      • const qualifiers for GL 1.4 MultiDrawArrays, MultiDrawElements
      • Add glGetGraphicsResetStatusARB to GL_ARB_robustness
      • Remove EXT suffix from GL_KTX_buffer_region entry points
      • Solaris needs inttypes.h
      • Add ERROR_INVALID_VERSION_ARB and ERROR_INVALID_PROFILE_ARB to WGL_ARB_create_context
      • Add GLX_MESA_swap_control
      • Set -install_name for OSX
      • Add 64-bit darwin build option (SYSTEM=darwin_x86-64)
      • Add GL_NV_path_rendering

  • 1.6.0 [04-27-2011]
    • New extensions:
      • GL_AMD_blend_minmax_factor
      • GL_AMD_sample_positions
      • GL_EXT_x11_sync_object
      • GL_NV_texture_multisample
      • GL_NV_video_capture
      • GLX_NV_video_capture
      • WGL_NV_DX_interop
      • WGL_NV_video_capture
    • Bug fixes:
      • Define GLEW_NO_GLU for no glu dependency.
      • mx suffix for GLEW MX libraries, build both libraries by default.
      • Cygwin build improvements
      • Soname of GLEWmx shared libraries
      • Query GL extension string only once
      • GLX_OML_sync_control no longer requires C99
      • glDraw*InstancedARB moved from GL_ARB_draw_instanced to GL_ARB_instanced_arrays
      • glFramebufferTextureLayerEXT moved from GL_EXT_geometry_shader4 to GL_EXT_texture_array
      • Fixes for BSD build

  • 1.5.8 [01-31-2011]
    • New extensions:
      • GL_AMD_depth_clamp_separate
      • GL_EXT_texture_sRGB_decode
    • Bug fixes:
      • Borland C++ fix for __int64
      • GL_DOUBLE_MATNxM enumerants for OpenGL 4.0
      • Correction to glGetTransformFeedbackVarying
      • Correction to glSecondaryColorPointer
      • Corrections to glGetVertexAttribPointerv and glGetShaderSource
      • Switched code repository from svn to git

  • 1.5.7 [11-03-2010]
    • New extension:
      • GL_NVX_gpu_memory_info
    • Bug fixes:
      • Improved mingw32 build support
      • Improved cygwin build support
      • glGetPointervEXT fix
      • Add GLEW_VERSION_1_2_1

  • 1.5.6 [09-07-2010]
    • New features:
      • Support for OpenGL 4.1
    • New extensions:
      • GL_ARB_ES2_compatibility
      • GL_ARB_cl_event
      • GL_ARB_debug_output
      • GL_ARB_get_program_binary
      • GL_ARB_robustness
      • GL_ARB_separate_shader_objects
      • GL_ARB_shader_precision
      • GL_ARB_shader_stencil_export
      • GL_ARB_vertex_attrib_64bit
      • GL_ARB_viewport_array
      • GLX_ARB_create_context_robustness
      • GLX_EXT_create_context_es2_profile
      • WGL_ARB_create_context_robustness
      • WGL_EXT_create_context_es2_profile

  • 1.5.5 [07-13-2010]
    • New extensions:
      • GL_AMD_debug_output
      • GL_AMD_name_gen_delete
      • GL_AMD_transform_feedback3_lines_triangles
      • GL_NV_multisample_coverage
      • GL_NV_vdpau_interop
      • GLX_AMD_gpu_association
      • GLX_NV_multisample_coverage
      • WGL_NV_multisample_coverage
    • Bug fixes:
      • Compilation issue with GLX_SGI_video_sync
      • OpenGL 4.0 double-precision uniform functions added
      • Constness of glPointParameterfvARB and glPointParameterfvEXT
      • Added glVertexAttribDivisor
      • Compilation issue with Nvidia GLX headers

  • 1.5.4 [04-21-2010]
    • New features:
      • Support for OpenGL 3.3
      • Support for OpenGL 4.0
    • New extensions:
      • GL_AMD_conservative_depth
      • GL_ARB_blend_func_extended
      • GL_ARB_draw_indirect
      • GL_ARB_explicit_attrib_location
      • GL_ARB_gpu_shader5
      • GL_ARB_gpu_shader_fp64
      • GL_ARB_occlusion_query2
      • GL_ARB_sampler_objects
      • GL_ARB_shader_bit_encoding
      • GL_ARB_shader_subroutine
      • GL_ARB_shading_language_include
      • GL_ARB_tessellation_shader
      • GL_ARB_texture_buffer_object_rgb32
      • GL_ARB_texture_compression_bptc
      • GL_ARB_texture_rgb10_a2ui
      • GL_ARB_texture_swizzle
      • GL_ARB_timer_query
      • GL_ARB_transform_feedback2
      • GL_ARB_transform_feedback3
      • GL_ARB_vertex_type_2_10_10_10_rev
      • GL_EXT_shader_image_load_store
      • GL_EXT_vertex_attrib_64bit
      • GL_NV_gpu_program5
      • GL_NV_gpu_program_fp64
      • GL_NV_gpu_shader5
      • GL_NV_tessellation_program5
      • GL_NV_vertex_attrib_integer_64bit
      • GLX_ARB_vertex_buffer_object
    • Bug fixes:
      • Parameter constness fix for glPointParameteriv and glPointParameterfv

  • 1.5.3 [02-28-2010]
    • New extensions:
      • GLX_INTEL_swap_event
      • GL_AMD_seamless_cubemap_per_texture
      • GL_AMD_shader_stencil_export
    • Bug fixes:
      • Correct version detection for GL 3.1 and 3.2
      • Missing 3.1 enumerants
      • Add glew.pc

  • 1.5.2 [12-31-2009]
    • New features:
      • Support for OpenGL 3.1
      • Support for OpenGL 3.2
    • New extensions:
      • GL_AMD_draw_buffers_blend
      • GL_AMD_performance_monitor
      • GL_AMD_texture_texture4
      • GL_AMD_vertex_shader_tessellator
      • GL_APPLE_aux_depth_stencil
      • GL_APPLE_object_purgeable
      • GL_APPLE_rgb_422
      • GL_APPLE_row_bytes
      • GL_APPLE_vertex_program_evaluators
      • GL_ARB_compatibility
      • GL_ARB_copy_buffer
      • GL_ARB_depth_clamp
      • GL_ARB_draw_buffers_blend
      • GL_ARB_draw_elements_base_vertex
      • GL_ARB_fragment_coord_conventions
      • GL_ARB_provoking_vertex
      • GL_ARB_sample_shading
      • GL_ARB_seamless_cube_map
      • GL_ARB_shader_texture_lod
      • GL_ARB_sync
      • GL_ARB_texture_cube_map_array
      • GL_ARB_texture_gather
      • GL_ARB_texture_multisample
      • GL_ARB_texture_query_lod
      • GL_ARB_uniform_buffer_object
      • GL_ARB_vertex_array_bgra
      • GL_ATI_meminfo
      • GL_EXT_provoking_vertex
      • GL_EXT_separate_shader_objects
      • GL_EXT_texture_snorm
      • GL_NV_copy_image
      • GL_NV_parameter_buffer_object2
      • GL_NV_shader_buffer_load
      • GL_NV_texture_barrier
      • GL_NV_transform_feedback2
      • GL_NV_vertex_buffer_unified_memory
      • WGL_AMD_gpu_association
      • WGL_ARB_create_context_profile
      • WGL_NV_copy_image
      • GLX_ARB_create_context_profile
      • GLX_EXT_swap_control
      • GLX_NV_copy_image
    • Bug fixes:
      • DOS line endings for windows .zip archives only.
      • glTransformFeedbackVaryings arguments.
      • Resource leak in glewinfo and visualinfo tools.
      • WIN32_LEAN_AND_MEAN preprocessor pollution.
      • Fixed version detection for GLEW_VERSION_2_1 and GLEW_VERSION_3_0.
      • MesaGLUT glut.h GLAPIENTRY dependency.
      • glFramebufferTextureLayer correction.
      • OSX compiler warnings resolved.
      • Cygwin linking to opengl32 by default, rather than X11 OpenGL.
      • SnowLeopard (OSX 10.6) gl.h detection.
      • Use $(STRIP) consistently.

  • 1.5.1 [11-03-2008]
    • New features:
      • Support for OpenGL 3.0
    • New extensions:
      • GL_ARB_depth_buffer_float
      • GL_ARB_draw_instance,
      • GL_ARB_framebuffer_object
      • GL_ARB_framebuffer_sRGB
      • GL_ARB_geometry_shader4
      • GL_ARB_half_float_pixel
      • GL_ARB_half_float_vertex
      • GL_ARB_instanced_arrays
      • GL_ARB_map_buffer_range
      • GL_ARB_texture_buffer_object
      • GL_ARB_texture_compression_rgtc
      • GL_ARB_vertex_array_object
      • GL_EXT_direct_state_access
      • GL_EXT_texture_swizzle
      • GL_EXT_transform_feedback
      • GL_EXT_vertex_array_bgra
      • GL_NV_conditional_render
      • GL_NV_explicit_multisample
      • GL_NV_present_video
      • GL_SGIS_point_line_texgen
      • GL_SGIX_convolution_accuracy
      • WGL_ARB_create_context
      • WGL_ARB_framebuffer_sRGB
      • WGL_NV_present_video
      • WGL_NV_swap_group
      • WGL_NV_video_output
      • GLX_ARB_create_context
      • GLX_ARB_framebuffer_sRGB
      • GLX_NV_present_video
      • GLX_NV_swap_group
      • GLX_NV_video_output
    • Bug fixes:
      • Licensing issues with documentation
      • Problems with long long and _MSC_VER on MINGW
      • Incorrect parameter for glGetUniformLocation
      • glewGetExtension fails on last entry
      • Incomplete GL_NV_texture_shader tokens
      • Scripting problems on Cygwin
      • Incorrect definition for GLint on OS X

  • 1.5.0 [12-27-2007]
    • New features:
      • Licensing change (BSD, Mesa 3-D, Khronos)
      • Switch to using registry on www.opengl.org
      • Support for major and minor version strings
    • New extensions:
      • GL_APPLE_flush_buffer_range
      • GL_GREMEDY_frame_terminator
      • GLX_EXT_texture_from_pixmap
    • Bug fixes:
      • Incorrect 64-bit type definitions
      • Do not strip static library on install
      • Missing tokens in GL_ATI_fragment_shader and WGL_{ARB,EXT}_make_current_read
      • Missing tokens in GL_VERSION_2_1
      • Missing functions in GL_VERSION_1_4
      • Incorrect parameter type for glXCopyContext

  • 1.4.0 [04-27-2007]
    • New features:
      • Extension variables are declared const to avoid possible corruption of their values
    • New extensions:
      • GL_NV_depth_range_unclamped
    • Bug fixes:
      • Incorrect tokens in GL_NV_transform_feedback and GL_NV_framebuffer_multisample_coverage
      • Incorrect function names in GL_EXT_gpu_program_parameters
      • Missing tokens in GL_EXT_framebuffer_multisample
      • GLEW_MX initialization problem for WGL_{ARB,EXT}_extensions_string

  • 1.3.6 [03-04-2007]
    • New extensions:
      • GL_ATI_shader_texture_lod
      • GL_EXT_gpu_program_parameters
      • GL_NV_geometry_shader4
      • WGL_NV_gpu_affinity
      • GLX_SGIX_hyperpipe
    • Bug fixes:
      • Missing include guards in glxew.h
      • Makefile and install problems for Cygwin builds
      • Install problem for Linux AMD64 builds
      • Incorrect token in GL_ATI_texture_compression_3dc
      • Missing tokens from GL_ATIX_point_sprites

  • 1.3.5 [11-21-2006]
    • New features:
      • Support for core OpenGL 2.1
      • Debug support for glewIsSupported
    • New extensions:
      • GL_EXT_bindable_uniform
      • GL_EXT_draw_buffers2
      • GL_EXT_draw_instanced
      • GL_EXT_framebuffer_sRGB
      • GL_EXT_geometry_shader4
      • GL_EXT_gpu_shader4
      • GL_EXT_packed_float
      • GL_EXT_texture_array
      • GL_EXT_texture_buffer_object
      • GL_EXT_texture_compression_latc
      • GL_EXT_texture_compression_rgtc
      • GL_EXT_texture_integer
      • GL_EXT_texture_shared_exponent
      • GL_EXT_timer_query
      • GL_NV_depth_buffer_float
      • GL_NV_fragment_program4
      • GL_NV_framebuffer_multisample_coverage
      • GL_NV_geometry_program4
      • GL_NV_gpu_program4
      • GL_NV_parameter_buffer_object
      • GL_NV_transform_feedback
      • GL_NV_vertex_program4
      • GL_OES_byte_coordinates
      • GL_OES_compressed_paletted_texture
      • GL_OES_read_format
      • GL_OES_single_precision
      • WGL_EXT_pixel_format_packed_float
      • WGL_EXT_framebuffer_sRGB
      • GLX_EXT_fbconfig_packed_float
      • GLX_EXT_framebuffer_sRGB
    • Bug fixes:
      • Wrong GLXContext definition on Solaris
      • Makefile problem for parallel builds

  • 1.3.4 [03-04-2006]
    • New extensions:
      • GL_EXT_framebuffer_blit
      • GL_EXT_framebuffer_multisample
      • GL_EXT_packed_depth_stencil
      • GL_MESAX_texture_stack
      • WGL_3DL_stereo_control
    • Bug fixes:
      • glBlendEquation missing from GL_ARB_imaging
      • Wrong APIENTRY definition for Cygwin
      • Incorrect OS X OpenGL types
      • Unix 64-bit installation patch

  • 1.3.3 [05-16-2005]
    • New feature:
      • Code generation option to split source into multiple files
    • Bug fixes:
      • OpenGL 2.0 core initialization problems
      • Wrong value for token GL_SHADER_TYPE
      • Missing tokens in GL_ATI_fragment_shader
      • Missing entry points in GL_ARB_transpose_matrix

  • 1.3.2 [03-16-2005]
    • New extension:
      • GL_APPLE_pixel_buffer
    • Bug fixes:
      • Missing OpenGL 2.0 entry points
      • Missing tokens in GL_SGIX_shadow
      • MinGW makefile problem
      • Check for incorrect OpenGL version string on SiS hardware
      • Documentation update to meet the HTML 4.01 Transitional specification

  • 1.3.1 [02-02-2005]
    • New features:
      • Consistent Unix and Windows versioning
    • New extensions:
      • GL_EXT_framebuffer_object
      • GL_ARB_pixel_buffer_object
    • Bug fixes:
      • Missing OpenGL 2.0 tokens
      • Incorrect typedefs (GLhandleARB and GLhalf)
      • Borland compiler problems

  • 1.3.0 [01-04-2005]
    • New features:
      • Support for core OpenGL 2.0
      • glewIsSupported provides efficient string-based extension checks
      • Custom code generation from a list of extensions
      • Makefile changes
    • New extensions:
      • WGL_ATI_render_texture_rectangle
    • Bug fixes:
      • Incorrect function signature in OpenGL 1.5 core

  • 1.2.5 [12-06-2004]
    • New extensions:
      • GL_ATI_texture_compression_3dc
      • GL_EXT_Cg_shader
      • GL_EXT_draw_range_elements
      • GL_KTX_buffer_region
    • Bug fixes:
      • OpenGL version detection bug
      • Problems with wxWindows and MinGW compilation
      • visualinfo compilation problem with GLEW_MX specified
      • Wrong token name in OpenGL 1.5 core
    • Support for FreeBSD

  • 1.2.4 [09-06-2004]
    • Added ARB_draw_buffers and ARB_texture_rectangle
    • Fixed bug in ARB_shader_objects
    • Replaced wglinfo with visualinfo

  • 1.2.3 [06-10-2004]
    • Added GL_NV_fragment_program2, GL_NV_fragment_program_option, GL_NV_vertex_program2_option, GL_NV_vertex_program3
    • Bug fix in GL_ARB_vertex_blend

  • 1.2.2 [05-08-2004]
    • Added GL_EXT_pixel_buffer_object, removed GL_NV_element_array
    • Fixed GLEW_MX problems
    • Bug fix in GL_EXT_texture_rectangle and wglinfo

  • 1.2.1 [03-18-2004]
    • Bug fix in OpenGL version query (early release of 1.2.0 contained this bug)
    • Bug fix in GL_ARB_shader_objects and temporary bug fix in GL_ARB_vertex_shader
    • Added flags on GDI support and multisampling to wglinfo

  • 1.2.0 [02-19-2004]
    • Added full OpenGL 1.5 support
    • Added support for multiple rendering contexts with different capabilities
    • Added command line flags to glewinfo for selecting displays and visuals
    • Added GLX_SGIS_multisample, GLX_SUN_video_resize, and GL_SUN_read_video_pixels
    • Added MinGW/MSYS support
    • Bug fixes in GL_ARB_shader_objects and the OS X build

  • 1.1.4 [12-15-2003]
    • Added GL_APPLE_float_pixels, GL_APPLE_texture_range, GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp, GLX_ATI_pixel_format_float, and GLX_ATI_render_texture
    • Bug fixes in GL_ATI_map_object_buffer and GL_ATI_fragment_shader

  • 1.1.3 [10-28-2003]
    • Added Solaris and Darwin support
    • Added GL_ARB_fragment_shader, GL_ARB_shader_objects, and GL_ARB_vertex_shader
    • Fixed bug in GL_WIN_swap_hint
    • Removed glewinfo's dependency on GLUT

  • 1.1.2 [09-15-2003]
    • Removed dependency on WGL_{ARB,EXT}_extensions_string to make GLEW run on Matrox cards
    • Added glewGetString for querying the GLEW version string

  • 1.1.1 [08-11-2003]
    • Added GLX_NV_float_buffer, GL_ARB_shading_language_100, and GL_ARB_texture_non_power_of_two
    • Fixed bug in GL_ARB_vertex_buffer_object
    • Minor updates in documentation

  • 1.1.0 [07-08-2003]
    • Added automatic code generation
    • Added almost every extension in the registry
    • Added separate namespace
    • Added Irix support
    • Updated documentation

  • 1.0.7 [06-29-2003]
    • Added GL_EXT_depth_bounds_test
    • Fixed typos

  • 1.0.6 [05-05-2003]
    • Added ARB_vertex_buffer_object and NV_half_float
    • Updated wglinfo
    • Temporary Linux bug fixes (problems with SDL and MESA)

  • 1.0.5 [02-17-2003]
    • Bug fixes
    • Added wglinfo
    • Updated documentation

  • 1.0.4 [02-02-2003]
    • Added NV_texture_expand_normal
    • Added mingw support
    • Updated documentation

  • 1.0.3 [01-09-2003]
    • Cleaned up ATI extensions
    • Changed function prototypes to match glext.h
    • Added EXT_texture3D
    • Fixed typos in ATI_vertex_attrib_array_object and ATI_draw_buffers

  • 1.0.2 [12-21-2002]
    • Added list of supported extensions to documentation
    • Added NV_half_float and NV_texgen_emboss

  • 1.0.1 [12-17-2002]
    • Bug fixes
    • Added glewGetExtension

  • 1.0.0 [12-12-2002]
    • Initial release

nigels-com-glew-285c35d/auto/doc/advanced.html0000664000175000017500000001135215135005167021403 0ustar alastairalastair

Automatic Code Generation

Starting from release 1.1.0, the source code and parts of the documentation are automatically generated from the extension specifications in a two-step process. In the first step, specification files from the OpenGL registry are downloaded and parsed. Skeleton descriptors are created for each extension. These descriptors contain all necessary information for creating the source code and documentation in a simple and compact format, including the name of the extension, url link to the specification, tokens, function declarations, typedefs and struct definitions. In the second step, the header files as well as the library and glewinfo source are generated from the descriptor files. The code generation scripts are located in the auto subdirectory.

The code generation scripts require GNU make, wget, and perl. On Windows, the simplest way to get access to these tools is to install Cygwin, but make sure that the root directory is mounted in binary mode. The makefile in the auto directory provides the following build targets:

make Create the source files from the descriptors.
If the descriptors do not exist, create them from the spec files.
If the spec files do not exist, download them from the OpenGL repository.
make clean Delete the source files.
make clobber Delete the source files and the descriptors.
make destroy Delete the source files, the descriptors, and the spec files.
make custom Create the source files for the extensions listed in auto/custom.txt.
See "Custom Code Generation" below for more details.

Adding a New Extension

To add a new extension, create a descriptor file for the extension in auto/core and rerun the code generation scripts by typing make clean; make in the auto directory.

The format of the descriptor file is given below. Items in brackets are optional.

<Extension Name>
[<URL of Specification File>]
    [<Token Name> <Token Value>]
    [<Token Name> <Token Value>]
    ...
    [<Typedef>]
    [<Typedef>]
    ...
    [<Function Signature>]
    [<Function Signature>]
    ...

Take a look at one of the files in auto/core for an example. Note that typedefs and function signatures should not be terminated with a semicolon.

Custom Code Generation

Starting from GLEW 1.3.0, it is possible to control which extensions to include in the library by specifying a list in auto/custom.txt. This is useful when you do not need all the extensions and would like to reduce the size of the source files. Type make clean; make custom in the auto directory to rerun the scripts with the custom list of extensions.

For example, the following is the list of extensions needed to get GLEW and the utilities to compile.

WGL_ARB_extensions_string
WGL_ARB_multisample
WGL_ARB_pixel_format
WGL_ARB_pbuffer
WGL_EXT_extensions_string
WGL_ATI_pixel_format_float
WGL_NV_float_buffer

Separate Namespace

To avoid name clashes when linking with libraries that include the same symbols, extension entry points are declared in a separate namespace (release 1.1.0 and up). This is achieved by aliasing OpenGL function names to their GLEW equivalents. For instance, glFancyFunction is simply an alias to glewFancyFunction. The separate namespace does not effect token and function pointer definitions.

Known Issues

GLEW requires GLX 1.2 for compatibility with GLUT.

nigels-com-glew-285c35d/auto/doc/credits.html0000664000175000017500000000021015135005167021262 0ustar alastairalastair

Author, copyright and licensing information on github.

nigels-com-glew-285c35d/auto/doc/basic.html0000664000175000017500000001215115135005167020715 0ustar alastairalastair

Initializing GLEW

First you need to create a valid OpenGL rendering context and call glewInit() to initialize the extension entry points. If glewInit() returns GLEW_OK, the initialization succeeded and you can use the available extensions as well as core OpenGL functionality. For example:

#include <GL/glew.h>
#include <GL/glut.h>
...
glutInit(&argc, argv);
glutCreateWindow("GLEW Test");
GLenum err = glewInit();
if (GLEW_OK != err)
{
  /* Problem: glewInit failed, something is seriously wrong. */
  fprintf(stderr, "Error: %s\n", glewGetErrorString(err));
  ...
}
fprintf(stdout, "Status: Using GLEW %s\n", glewGetString(GLEW_VERSION));

Checking for Extensions

Starting from GLEW 1.1.0, you can find out if a particular extension is available on your platform by querying globally defined variables of the form GLEW_{extension_name}:

if (GLEW_ARB_vertex_program)
{
  /* It is safe to use the ARB_vertex_program extension here. */
  glGenProgramsARB(...);
}

In GLEW 1.0.x, a global structure was used for this task. To ensure binary compatibility between releases, the struct was replaced with a set of variables.

You can also check for core OpenGL functionality. For example, to see if OpenGL 1.3 is supported, do the following:

if (GLEW_VERSION_1_3)
{
  /* Yay! OpenGL 1.3 is supported! */
}

In general, you can check if GLEW_{extension_name} or GLEW_VERSION_{version} is true or false.

It is also possible to perform extension checks from string input. Starting from the 1.3.0 release, use glewIsSupported to check if the required core or extension functionality is available:

if (glewIsSupported("GL_VERSION_1_4  GL_ARB_point_sprite"))
{
  /* Great, we have OpenGL 1.4 + point sprites. */
}

For extensions only, glewGetExtension provides a slower alternative (GLEW 1.0.x-1.2.x). Note that in the 1.3.0 release glewGetExtension was replaced with glewIsSupported.

if (glewGetExtension("GL_ARB_fragment_program"))
{
  /* Looks like ARB_fragment_program is supported. */
}

Experimental Drivers

GLEW obtains information on the supported extensions from the graphics driver. Experimental or pre-release drivers, however, might not report every available extension through the standard mechanism, in which case GLEW will report it unsupported. To circumvent this situation, the glewExperimental global switch can be turned on by setting it to GL_TRUE before calling glewInit(), which ensures that all extensions with valid entry points will be exposed.

Platform Specific Extensions

Platform specific extensions are separated into two header files: wglew.h and glxew.h, which define the available WGL and GLX extensions. To determine if a certain extension is supported, query WGLEW_{extension name} or GLXEW_{extension_name}. For example:

#include <GL/wglew.h>

if (WGLEW_ARB_pbuffer)
{
  /* OK, we can use pbuffers. */
}
else
{
  /* Sorry, pbuffers will not work on this platform. */
}

Alternatively, use wglewIsSupported or glxewIsSupported to check for extensions from a string:

if (wglewIsSupported("WGL_ARB_pbuffer"))
{
  /* OK, we can use pbuffers. */
}

Utilities

GLEW provides two command-line utilities: one for creating a list of available extensions and visuals; and another for verifying extension entry points.

visualinfo: extensions and visuals

visualinfo is an extended version of glxinfo. The Windows version creates a file called visualinfo.txt, which contains a list of available OpenGL, WGL, and GLU extensions as well as a table of visuals aka. pixel formats. Pbuffer and MRT capable visuals are also included. For additional usage information, type visualinfo -h.

glewinfo: extension verification utility

glewinfo allows you to verify the entry points for the extensions supported on your platform. The Windows version reports the results to a text file called glewinfo.txt. The Unix version prints the results to stdout.

Windows usage:

glewinfo [-pf <id>]

where <id> is the pixel format id for which the capabilities are displayed.

Unix usage:

glewinfo [-display <dpy>] [-visual <id>]

where <dpy> is the X11 display and <id> is the visual id for which the capabilities are displayed.

nigels-com-glew-285c35d/auto/doc/build.html0000664000175000017500000000420615135005167020735 0ustar alastairalastair

Building GLEW

Windows

A MS Visual Studio project is provided in the build/vc6 directory.

Pre-built shared and static libraries are also available for download.

Makefile

For platforms other than MS Windows, the provided Makefile is used.

Command-line variables

SYSTEMauto Target system to build: darwin, linux, solaris, etc.
For a full list of supported targets: ls config/Makefile.*
config.guess is used to auto detect, as necessary.
GLEW_DEST/usr Base directory for installation.

Make targets

allBuild everything.
glew.libBuild static and dynamic GLEW libraries.
glew.lib.mxBuild static and dynamic GLEWmx libraries.
glew.binBuild glewinfo and visualinfo utilities.
cleanDelete temporary and built files.
install.allInstall everything.
installInstall GLEW libraries.
install.mxInstall GLEWmx libraries.
install.binInstall glewinfo and visualinfo utilities.
uninstallDelete installed files.

Requirements

  • GNU make
  • perl
  • wget
  • GNU sed
  • gcc compiler
  • git
Ubuntu:
sudo apt-get install libXmu-dev libXi-dev libgl-dev dos2unix git wget
Fedora:
sudo yum install libXmu-devel libXi-devel libGL-devel dos2unix git wget
nigels-com-glew-285c35d/auto/doc/install.html0000664000175000017500000001151715135005167021307 0ustar alastairalastair

Installation

To use the shared library version of GLEW, you need to copy the headers and libraries into their destination directories. On Windows this typically boils down to copying:

bin/glew32.dll    to     %SystemRoot%/system32
lib/glew32.lib    to     {VC Root}/Lib
include/GL/glew.h    to     {VC Root}/Include/GL
include/GL/wglew.h    to     {VC Root}/Include/GL

where {VC Root} is the Visual C++ root directory, typically C:/Program Files/Microsoft Visual Studio/VC98 for Visual Studio 6.0 or C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK for Visual Studio .NET.

On Unix, typing make install will attempt to install GLEW into /usr/include/GL and /usr/lib. You can customize the installation target via the GLEW_DEST environment variable if you do not have write access to these directories.

Building Your Project with GLEW

There are two ways to build your project with GLEW.

Including the source files / project file

The simpler but less flexible way is to include glew.h and glew.c into your project. On Windows, you also need to define the GLEW_STATIC preprocessor token when building a static library or executable, and the GLEW_BUILD preprocessor token when building a dll. You also need to replace <GL/gl.h> and <GL/glu.h> with <glew.h> in your code and set the appropriate include flag (-I) to tell the compiler where to look for it. For example:

#include <glew.h>
#include <GL/glut.h>
<gl, glu, and glut functionality is available here>

Depending on where you put glew.h you may also need to change the include directives in glew.c. Note that if you are using GLEW together with GLUT, you have to include glew.h first. In addition, glew.h includes glu.h, so you do not need to include it separately.

On Windows, you also have the option of adding the supplied project file glew_static.dsp to your workspace (solution) and compile it together with your other projects. In this case you also need to change the GLEW_BUILD preprocessor constant to GLEW_STATIC when building a static library or executable, otherwise you get build errors.

Note that GLEW does not use the C runtime library, so it does not matter which version (single-threaded, multi-threaded or multi-threaded DLL) it is linked with (without debugging information). It is, however, always a good idea to compile all your projects including GLEW with the same C runtime settings.

Using GLEW as a shared library

Alternatively, you can use the provided project files / makefile to build a separate shared library you can link your projects with later. In this case the best practice is to install glew.h, glew32.lib, and glew32.dll / libGLEW.so to where the OpenGL equivalents gl.h, opengl32.lib, and opengl32.dll / libGL.so are located. Note that you need administrative privileges to do this. If you do not have administrator access and your system administrator will not do it for you, you can install GLEW into your own lib and include subdirectories and tell the compiler where to find it. Then you can just replace <GL/gl.h> with <GL/glew.h> in your program:

#include <GL/glew.h>
#include <GL/glut.h>
<gl, glu, and glut functionality is available here>

or:

#include <GL/glew.h>
<gl and glu functionality is available here>

Remember to link your project with glew32.lib, glu32.lib, and opengl32.lib on Windows and libGLEW.so, libGLU.so, and libGL.so on Unix (-lGLEW -lGLU -lGL).

It is important to keep in mind that glew.h includes neither windows.h nor gl.h. Also, GLEW will warn you by issuing a preprocessor error in case you have included gl.h, glext.h, or glATI.h before glew.h.

nigels-com-glew-285c35d/auto/core/0000775000175000017500000000000015135005167017131 5ustar alastairalastairnigels-com-glew-285c35d/auto/core/gl/0000775000175000017500000000000015135005167017533 5ustar alastairalastairnigels-com-glew-285c35d/auto/core/gl/GL_NV_depth_buffer_float0000664000175000017500000000065115135005167024267 0ustar alastairalastairGL_NV_depth_buffer_float http://developer.download.nvidia.com/opengl/specs/GL_NV_depth_buffer_float.txt GL_NV_depth_buffer_float GL_DEPTH_COMPONENT32F_NV 0x8DAB GL_DEPTH32F_STENCIL8_NV 0x8DAC GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV 0x8DAD GL_DEPTH_BUFFER_FLOAT_MODE_NV 0x8DAF void glDepthRangedNV (GLdouble zNear, GLdouble zFar) void glClearDepthdNV (GLdouble depth) void glDepthBoundsdNV (GLdouble zmin, GLdouble zmax) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_texture_rectangle0000664000175000017500000000042615135005167024306 0ustar alastairalastairGL_EXT_texture_rectangle http://developer.apple.com/opengl/extensions/ext_texture_rectangle.html GL_EXT_texture_rectangle GL_TEXTURE_RECTANGLE_EXT 0x84F5 GL_TEXTURE_BINDING_RECTANGLE_EXT 0x84F6 GL_PROXY_TEXTURE_RECTANGLE_EXT 0x84F7 GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT 0x84F8 nigels-com-glew-285c35d/auto/core/gl/GL_KTX_buffer_region0000664000175000017500000000072515135005167023406 0ustar alastairalastairGL_KTX_buffer_region GL_KTX_buffer_region GL_KTX_FRONT_REGION 0x0 GL_KTX_BACK_REGION 0x1 GL_KTX_Z_REGION 0x2 GL_KTX_STENCIL_REGION 0x3 GLuint glBufferRegionEnabled (void) GLuint glNewBufferRegion (GLenum region) void glDeleteBufferRegion (GLenum region) void glReadBufferRegion (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height) void glDrawBufferRegion (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest) nigels-com-glew-285c35d/auto/core/gl/GLX_SGIX_hyperpipe0000664000175000017500000000352715135005167023036 0ustar alastairalastairGLX_SGIX_hyperpipe http://oss.sgi.com/projects/ogl-sample/registry/SGIX/hyperpipe_group.txt GLX_SGIX_hyperpipe GLX_HYPERPIPE_ID_SGIX 0x8030 GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80 GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001 GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002 GLX_PIPE_RECT_SGIX 0x00000001 GLX_PIPE_RECT_LIMITS_SGIX 0x00000002 GLX_HYPERPIPE_STEREO_SGIX 0x00000003 GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004 GLX_BAD_HYPERPIPE_CONFIG_SGIX 91 GLX_BAD_HYPERPIPE_SGIX 92 typedef struct { char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; int networkId; } GLXHyperpipeNetworkSGIX; typedef struct { char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; int channel; unsigned int participationType; int timeSlice; } GLXHyperpipeConfigSGIX; typedef struct { char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; int srcXOrigin; int srcYOrigin; int srcWidth; int srcHeight; int destXOrigin; int destYOrigin; int destWidth; int destHeight; } GLXPipeRect; typedef struct { char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; int XOrigin; int YOrigin; int maxHeight; int maxWidth; } GLXPipeRectLimits; GLXHyperpipeNetworkSGIX * glXQueryHyperpipeNetworkSGIX (Display *dpy, int *npipes) int glXHyperpipeConfigSGIX (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId) GLXHyperpipeConfigSGIX * glXQueryHyperpipeConfigSGIX (Display *dpy, int hpId, int *npipes) int glXDestroyHyperpipeConfigSGIX (Display *dpy, int hpId) int glXBindHyperpipeSGIX (Display *dpy, int hpId) int glXQueryHyperpipeBestAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList) int glXHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList) int glXQueryHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_texture_shared_exponent0000664000175000017500000000036615135005167025533 0ustar alastairalastairGL_EXT_texture_shared_exponent http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_shared_exponent.txt GL_EXT_texture_shared_exponent GL_RGB9_E5_EXT 0x8C3D GL_UNSIGNED_INT_5_9_9_9_REV_EXT 0x8C3E GL_TEXTURE_SHARED_SIZE_EXT 0x8C3F nigels-com-glew-285c35d/auto/core/gl/GL_ATI_separate_stencil0000664000175000017500000000067315135005167024070 0ustar alastairalastairGL_ATI_separate_stencil http://www.opengl.org/registry/specs/ATI/separate_stencil.txt GL_ATI_separate_stencil GL_STENCIL_BACK_FUNC_ATI 0x8800 GL_STENCIL_BACK_FAIL_ATI 0x8801 GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802 GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803 void glStencilOpSeparateATI (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass) void glStencilFuncSeparateATI (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_texture_integer0000664000175000017500000000352315135005167024000 0ustar alastairalastairGL_EXT_texture_integer http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_integer.txt GL_EXT_texture_integer GL_RGBA32UI_EXT 0x8D70 GL_RGB32UI_EXT 0x8D71 GL_ALPHA32UI_EXT 0x8D72 GL_INTENSITY32UI_EXT 0x8D73 GL_LUMINANCE32UI_EXT 0x8D74 GL_LUMINANCE_ALPHA32UI_EXT 0x8D75 GL_RGBA16UI_EXT 0x8D76 GL_RGB16UI_EXT 0x8D77 GL_ALPHA16UI_EXT 0x8D78 GL_INTENSITY16UI_EXT 0x8D79 GL_LUMINANCE16UI_EXT 0x8D7A GL_LUMINANCE_ALPHA16UI_EXT 0x8D7B GL_RGBA8UI_EXT 0x8D7C GL_RGB8UI_EXT 0x8D7D GL_ALPHA8UI_EXT 0x8D7E GL_INTENSITY8UI_EXT 0x8D7F GL_LUMINANCE8UI_EXT 0x8D80 GL_LUMINANCE_ALPHA8UI_EXT 0x8D81 GL_RGBA32I_EXT 0x8D82 GL_RGB32I_EXT 0x8D83 GL_ALPHA32I_EXT 0x8D84 GL_INTENSITY32I_EXT 0x8D85 GL_LUMINANCE32I_EXT 0x8D86 GL_LUMINANCE_ALPHA32I_EXT 0x8D87 GL_RGBA16I_EXT 0x8D88 GL_RGB16I_EXT 0x8D89 GL_ALPHA16I_EXT 0x8D8A GL_INTENSITY16I_EXT 0x8D8B GL_LUMINANCE16I_EXT 0x8D8C GL_LUMINANCE_ALPHA16I_EXT 0x8D8D GL_RGBA8I_EXT 0x8D8E GL_RGB8I_EXT 0x8D8F GL_ALPHA8I_EXT 0x8D90 GL_INTENSITY8I_EXT 0x8D91 GL_LUMINANCE8I_EXT 0x8D92 GL_LUMINANCE_ALPHA8I_EXT 0x8D93 GL_RED_INTEGER_EXT 0x8D94 GL_GREEN_INTEGER_EXT 0x8D95 GL_BLUE_INTEGER_EXT 0x8D96 GL_ALPHA_INTEGER_EXT 0x8D97 GL_RGB_INTEGER_EXT 0x8D98 GL_RGBA_INTEGER_EXT 0x8D99 GL_BGR_INTEGER_EXT 0x8D9A GL_BGRA_INTEGER_EXT 0x8D9B GL_LUMINANCE_INTEGER_EXT 0x8D9C GL_LUMINANCE_ALPHA_INTEGER_EXT 0x8D9D GL_RGBA_INTEGER_MODE_EXT 0x8D9E void glTexParameterIivEXT (GLenum target, GLenum pname, const GLint *params) void glTexParameterIuivEXT (GLenum target, GLenum pname, const GLuint *params) void glGetTexParameterIivEXT (GLenum target, GLenum pname, GLint *params) void glGetTexParameterIuivEXT (GLenum target, GLenum pname, GLuint *params) void glClearColorIiEXT (GLint red, GLint green, GLint blue, GLint alpha) void glClearColorIuiEXT (GLuint red, GLuint green, GLuint blue, GLuint alpha) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_fog_coord0000664000175000017500000000120415135005167022516 0ustar alastairalastairGL_EXT_fog_coord http://oss.sgi.com/projects/ogl-sample/registry/EXT/fog_coord.txt GL_EXT_fog_coord GL_FOG_COORDINATE_SOURCE_EXT 0x8450 GL_FOG_COORDINATE_EXT 0x8451 GL_FRAGMENT_DEPTH_EXT 0x8452 GL_CURRENT_FOG_COORDINATE_EXT 0x8453 GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454 GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455 GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456 GL_FOG_COORDINATE_ARRAY_EXT 0x8457 void glFogCoordfEXT (GLfloat coord) void glFogCoordfvEXT (const GLfloat *coord) void glFogCoorddEXT (GLdouble coord) void glFogCoorddvEXT (const GLdouble *coord) void glFogCoordPointerEXT (GLenum type, GLsizei stride, const void *pointer) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_gpu_shader40000664000175000017500000000645215135005167022774 0ustar alastairalastairGL_EXT_gpu_shader4 http://developer.download.nvidia.com/opengl/specs/GL_EXT_gpu_shader4.txt GL_EXT_gpu_shader4 GL_SAMPLER_1D_ARRAY_EXT 0x8DC0 GL_SAMPLER_2D_ARRAY_EXT 0x8DC1 GL_SAMPLER_BUFFER_EXT 0x8DC2 GL_SAMPLER_1D_ARRAY_SHADOW_EXT 0x8DC3 GL_SAMPLER_2D_ARRAY_SHADOW_EXT 0x8DC4 GL_SAMPLER_CUBE_SHADOW_EXT 0x8DC5 GL_UNSIGNED_INT_VEC2_EXT 0x8DC6 GL_UNSIGNED_INT_VEC3_EXT 0x8DC7 GL_UNSIGNED_INT_VEC4_EXT 0x8DC8 GL_INT_SAMPLER_1D_EXT 0x8DC9 GL_INT_SAMPLER_2D_EXT 0x8DCA GL_INT_SAMPLER_3D_EXT 0x8DCB GL_INT_SAMPLER_CUBE_EXT 0x8DCC GL_INT_SAMPLER_2D_RECT_EXT 0x8DCD GL_INT_SAMPLER_1D_ARRAY_EXT 0x8DCE GL_INT_SAMPLER_2D_ARRAY_EXT 0x8DCF GL_INT_SAMPLER_BUFFER_EXT 0x8DD0 GL_UNSIGNED_INT_SAMPLER_1D_EXT 0x8DD1 GL_UNSIGNED_INT_SAMPLER_2D_EXT 0x8DD2 GL_UNSIGNED_INT_SAMPLER_3D_EXT 0x8DD3 GL_UNSIGNED_INT_SAMPLER_CUBE_EXT 0x8DD4 GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT 0x8DD5 GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT 0x8DD6 GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT 0x8DD7 GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8 GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT 0x88FD void glGetUniformuivEXT (GLuint program, GLint location, GLuint *params) void glBindFragDataLocationEXT (GLuint program, GLuint color, const GLchar *name) GLint glGetFragDataLocationEXT (GLuint program, const GLchar *name) void glUniform1uiEXT (GLint location, GLuint v0) void glUniform2uiEXT (GLint location, GLuint v0, GLuint v1) void glUniform3uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2) void glUniform4uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) void glUniform1uivEXT (GLint location, GLsizei count, const GLuint *value) void glUniform2uivEXT (GLint location, GLsizei count, const GLuint *value) void glUniform3uivEXT (GLint location, GLsizei count, const GLuint *value) void glUniform4uivEXT (GLint location, GLsizei count, const GLuint *value) void glVertexAttribI1iEXT (GLuint index, GLint x) void glVertexAttribI2iEXT (GLuint index, GLint x, GLint y) void glVertexAttribI3iEXT (GLuint index, GLint x, GLint y, GLint z) void glVertexAttribI4iEXT (GLuint index, GLint x, GLint y, GLint z, GLint w) void glVertexAttribI1uiEXT (GLuint index, GLuint x) void glVertexAttribI2uiEXT (GLuint index, GLuint x, GLuint y) void glVertexAttribI3uiEXT (GLuint index, GLuint x, GLuint y, GLuint z) void glVertexAttribI4uiEXT (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) void glVertexAttribI1ivEXT (GLuint index, const GLint *v) void glVertexAttribI2ivEXT (GLuint index, const GLint *v) void glVertexAttribI3ivEXT (GLuint index, const GLint *v) void glVertexAttribI4ivEXT (GLuint index, const GLint *v) void glVertexAttribI1uivEXT (GLuint index, const GLuint *v) void glVertexAttribI2uivEXT (GLuint index, const GLuint *v) void glVertexAttribI3uivEXT (GLuint index, const GLuint *v) void glVertexAttribI4uivEXT (GLuint index, const GLuint *v) void glVertexAttribI4bvEXT (GLuint index, const GLbyte *v) void glVertexAttribI4svEXT (GLuint index, const GLshort *v) void glVertexAttribI4ubvEXT (GLuint index, const GLubyte *v) void glVertexAttribI4usvEXT (GLuint index, const GLushort *v) void glVertexAttribIPointerEXT (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer) void glGetVertexAttribIivEXT (GLuint index, GLenum pname, GLint *params) void glGetVertexAttribIuivEXT (GLuint index, GLenum pname, GLuint *params) nigels-com-glew-285c35d/auto/core/gl/EGL_KHR_fence_sync0000664000175000017500000000031115135005167022760 0ustar alastairalastairEGL_KHR_fence_sync https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_KHR_fence_sync EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR 0x30F0 EGL_SYNC_CONDITION_KHR 0x30F8 EGL_SYNC_FENCE_KHR 0x30F9 nigels-com-glew-285c35d/auto/core/gl/EGL_VERSION_1_40000664000175000017500000000063015135005167021734 0ustar alastairalastairEGL_VERSION_1_4 https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_OPENGL_BIT 0x0008 EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200 EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400 EGL_MULTISAMPLE_RESOLVE 0x3099 EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A EGL_MULTISAMPLE_RESOLVE_BOX 0x309B EGL_OPENGL_API 0x30A2 EGL_DEFAULT_DISPLAY EGL_CAST(EGLNativeDisplayType,0) EGLContext eglGetCurrentContext ( void ) nigels-com-glew-285c35d/auto/core/gl/GLX_ATI_render_texture0000664000175000017500000000342515135005167023730 0ustar alastairalastairGLX_ATI_render_texture GLX_ATI_render_texture GLX_BIND_TO_TEXTURE_RGB_ATI 0x9800 GLX_BIND_TO_TEXTURE_RGBA_ATI 0x9801 GLX_TEXTURE_FORMAT_ATI 0x9802 GLX_TEXTURE_TARGET_ATI 0x9803 GLX_MIPMAP_TEXTURE_ATI 0x9804 GLX_TEXTURE_RGB_ATI 0x9805 GLX_TEXTURE_RGBA_ATI 0x9806 GLX_NO_TEXTURE_ATI 0x9807 GLX_TEXTURE_CUBE_MAP_ATI 0x9808 GLX_TEXTURE_1D_ATI 0x9809 GLX_TEXTURE_2D_ATI 0x980A GLX_MIPMAP_LEVEL_ATI 0x980B GLX_CUBE_MAP_FACE_ATI 0x980C GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810 GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811 GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812 GLX_FRONT_LEFT_ATI 0x9813 GLX_FRONT_RIGHT_ATI 0x9814 GLX_BACK_LEFT_ATI 0x9815 GLX_BACK_RIGHT_ATI 0x9816 GLX_AUX0_ATI 0x9817 GLX_AUX1_ATI 0x9818 GLX_AUX2_ATI 0x9819 GLX_AUX3_ATI 0x981A GLX_AUX4_ATI 0x981B GLX_AUX5_ATI 0x981C GLX_AUX6_ATI 0x981D GLX_AUX7_ATI 0x981E GLX_AUX8_ATI 0x981F GLX_AUX9_ATI 0x9820 GLX_BIND_TO_TEXTURE_LUMINANCE_ATI 0x9821 GLX_BIND_TO_TEXTURE_INTENSITY_ATI 0x9822 void glXBindTexImageATI (Display *dpy, GLXPbuffer pbuf, int buffer) void glXReleaseTexImageATI (Display *dpy, GLXPbuffer pbuf, int buffer) void glXDrawableAttribATI (Display *dpy, GLXDrawable draw, const int *attrib_list) nigels-com-glew-285c35d/auto/core/gl/GL_ATIX_texture_env_route0000664000175000017500000000035515135005167024456 0ustar alastairalastairGL_ATIX_texture_env_route http://www.ati.com/developer/sdk/RadeonSDK/Html/Info/ATIX_texture_env_route.txt GL_ATIX_texture_env_route GL_SECONDARY_COLOR_ATIX 0x8747 GL_TEXTURE_OUTPUT_RGB_ATIX 0x8748 GL_TEXTURE_OUTPUT_ALPHA_ATIX 0x8749 nigels-com-glew-285c35d/auto/core/gl/GL_EXT_external_buffer0000664000175000017500000000064415135005167023737 0ustar alastairalastairGL_EXT_external_buffer http://www.opengl.org/registry/specs/EXT/external_buffer.txt GL_EXT_external_buffer void glBufferStorageExternalEXT (GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags) void glNamedBufferStorageExternalEXT (GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags) typedef void* GLeglClientBufferEXTnigels-com-glew-285c35d/auto/core/gl/GL_VERSION_4_60000664000175000017500000000360315135005167021637 0ustar alastairalastairGL_VERSION_4_6 https://www.opengl.org/registry/doc/glspec46.compatibility.pdf GL_PARAMETER_BUFFER 0x80EE GL_PARAMETER_BUFFER_BINDING 0x80EF GL_VERTICES_SUBMITTED 0x82EE GL_PRIMITIVES_SUBMITTED 0x82EF GL_VERTEX_SHADER_INVOCATIONS 0x82F0 GL_TESS_CONTROL_SHADER_PATCHES 0x82F1 GL_TESS_EVALUATION_SHADER_INVOCATIONS 0x82F2 GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED 0x82F3 GL_FRAGMENT_SHADER_INVOCATIONS 0x82F4 GL_COMPUTE_SHADER_INVOCATIONS 0x82F5 GL_CLIPPING_INPUT_PRIMITIVES 0x82F6 GL_CLIPPING_OUTPUT_PRIMITIVES 0x82F7 GL_TRANSFORM_FEEDBACK_OVERFLOW 0x82EC GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW 0x82ED GL_POLYGON_OFFSET_CLAMP 0x8E1B GL_TEXTURE_MAX_ANISOTROPY 0x84FE GL_MAX_TEXTURE_MAX_ANISOTROPY 0x84FF GL_SHADER_BINARY_FORMAT_SPIR_V 0x9551 GL_SPIR_V_BINARY 0x9552 GL_CONTEXT_FLAG_NO_ERROR_BIT 0x00000008 GL_SPIR_V_EXTENSIONS 0x9553 GL_NUM_SPIR_V_EXTENSIONS 0x9554 void glMultiDrawArraysIndirectCount (GLenum mode, const GLvoid *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) void glMultiDrawElementsIndirectCount (GLenum mode, GLenum type, const GLvoid *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) void glSpecializeShader (GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue) nigels-com-glew-285c35d/auto/core/gl/GL_APPLE_pixel_buffer0000664000175000017500000000013115135005167023426 0ustar alastairalastairGL_APPLE_pixel_buffer GL_APPLE_pixel_buffer GL_MIN_PBUFFER_VIEWPORT_DIMS_APPLE 0x8A10 nigels-com-glew-285c35d/auto/core/gl/GL_NVX_gpu_memory_info0000664000175000017500000000056615135005167024000 0ustar alastairalastairGL_NVX_gpu_memory_info http://developer.download.nvidia.com/opengl/specs/GL_NVX_gpu_memory_info.txt GL_NVX_gpu_memory_info GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX 0x9047 GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX 0x9048 GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX 0x9049 GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX 0x904A GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX 0x904B nigels-com-glew-285c35d/auto/core/gl/GL_EXT_pixel_buffer_object0000664000175000017500000000043615135005167024563 0ustar alastairalastairGL_EXT_pixel_buffer_object http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_pixel_buffer_object.txt GL_EXT_pixel_buffer_object GL_PIXEL_PACK_BUFFER_EXT 0x88EB GL_PIXEL_UNPACK_BUFFER_EXT 0x88EC GL_PIXEL_PACK_BUFFER_BINDING_EXT 0x88ED GL_PIXEL_UNPACK_BUFFER_BINDING_EXT 0x88EF nigels-com-glew-285c35d/auto/core/gl/GL_ARB_draw_instanced0000664000175000017500000000015115135005167023506 0ustar alastairalastairGL_ARB_draw_instanced http://www.opengl.org/registry/specs/ARB/draw_instanced.txt GL_ARB_draw_instanced nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_3_10000664000175000017500000000256115135005167021633 0ustar alastairalastairGL_VERSION_3_1 https://www.opengl.org/registry/doc/glspec31.20090528.pdf GL_ARB_copy_buffer GL_SAMPLER_2D_RECT 0x8B63 GL_SAMPLER_2D_RECT_SHADOW 0x8B64 GL_SAMPLER_BUFFER 0x8DC2 GL_INT_SAMPLER_2D_RECT 0x8DCD GL_INT_SAMPLER_BUFFER 0x8DD0 GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5 GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8 GL_TEXTURE_BUFFER 0x8C2A GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B GL_TEXTURE_BINDING_BUFFER 0x8C2C GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D GL_TEXTURE_BUFFER_FORMAT 0x8C2E GL_TEXTURE_RECTANGLE 0x84F5 GL_TEXTURE_BINDING_RECTANGLE 0x84F6 GL_PROXY_TEXTURE_RECTANGLE 0x84F7 GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8 GL_RED_SNORM 0x8F90 GL_RG_SNORM 0x8F91 GL_RGB_SNORM 0x8F92 GL_RGBA_SNORM 0x8F93 GL_R8_SNORM 0x8F94 GL_RG8_SNORM 0x8F95 GL_RGB8_SNORM 0x8F96 GL_RGBA8_SNORM 0x8F97 GL_R16_SNORM 0x8F98 GL_RG16_SNORM 0x8F99 GL_RGB16_SNORM 0x8F9A GL_RGBA16_SNORM 0x8F9B GL_SIGNED_NORMALIZED 0x8F9C GL_PRIMITIVE_RESTART 0x8F9D GL_PRIMITIVE_RESTART_INDEX 0x8F9E GL_BUFFER_ACCESS_FLAGS 0x911F GL_BUFFER_MAP_LENGTH 0x9120 GL_BUFFER_MAP_OFFSET 0x9121 void glDrawArraysInstanced (GLenum mode, GLint first, GLsizei count, GLsizei primcount) void glDrawElementsInstanced (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount) void glTexBuffer (GLenum target, GLenum internalFormat, GLuint buffer) void glPrimitiveRestartIndex (GLuint buffer) nigels-com-glew-285c35d/auto/core/gl/GL_KHR_context_flush_control0000664000175000017500000000033715135005167025174 0ustar alastairalastairGL_KHR_context_flush_control https://www.khronos.org/registry/OpenGL/extensions/KHR/KHR_context_flush_control.txt GL_KHR_context_flush_control GL_CONTEXT_RELEASE_BEHAVIOR 0x82FB GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH 0x82FC nigels-com-glew-285c35d/auto/core/gl/GLX_EXT_scene_marker0000664000175000017500000000016715135005167023352 0ustar alastairalastairGLX_EXT_scene_marker https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_scene_marker.txt GLX_EXT_scene_marker nigels-com-glew-285c35d/auto/core/gl/GLX_SGIS_color_range0000664000175000017500000000017415135005167023311 0ustar alastairalastairGLX_SGIS_color_range https://www.khronos.org/registry/OpenGL/extensions/SGIS/GLX_SGIS_color_range.txt GLX_SGIS_color_range nigels-com-glew-285c35d/auto/core/gl/GL_EXT_geometry_shader40000664000175000017500000000231515135005167024026 0ustar alastairalastairGL_EXT_geometry_shader4 http://developer.download.nvidia.com/opengl/specs/GL_EXT_geometry_shader4.txt GL_EXT_geometry_shader4 GL_GEOMETRY_SHADER_EXT 0x8DD9 GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT 0x8DDD GL_MAX_VERTEX_VARYING_COMPONENTS_EXT 0x8DDE GL_MAX_VARYING_COMPONENTS_EXT 0x8B4B GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0 GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1 GL_GEOMETRY_VERTICES_OUT_EXT 0x8DDA GL_GEOMETRY_INPUT_TYPE_EXT 0x8DDB GL_GEOMETRY_OUTPUT_TYPE_EXT 0x8DDC GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29 GL_LINES_ADJACENCY_EXT 0xA GL_LINE_STRIP_ADJACENCY_EXT 0xB GL_TRIANGLES_ADJACENCY_EXT 0xC GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7 GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8 GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT 0x8DA9 GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT 0x8CD4 GL_PROGRAM_POINT_SIZE_EXT 0x8642 void glProgramParameteriEXT (GLuint program, GLenum pname, GLint value) void glFramebufferTextureEXT (GLenum target, GLenum attachment, GLuint texture, GLint level) void glFramebufferTextureFaceEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_texture_compression_rgtc0000664000175000017500000000050115135005167025714 0ustar alastairalastairGL_EXT_texture_compression_rgtc http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_compression_rgtc.txt GL_EXT_texture_compression_rgtc GL_COMPRESSED_RED_RGTC1_EXT 0x8DBB GL_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8DBC GL_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8DBD GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8DBE nigels-com-glew-285c35d/auto/core/gl/GL_ARB_multitexture0000664000175000017500000000617415135005167023307 0ustar alastairalastairGL_ARB_multitexture http://oss.sgi.com/projects/ogl-sample/registry/ARB/multitexture.txt GL_ARB_multitexture GL_TEXTURE0_ARB 0x84C0 GL_TEXTURE1_ARB 0x84C1 GL_TEXTURE2_ARB 0x84C2 GL_TEXTURE3_ARB 0x84C3 GL_TEXTURE4_ARB 0x84C4 GL_TEXTURE5_ARB 0x84C5 GL_TEXTURE6_ARB 0x84C6 GL_TEXTURE7_ARB 0x84C7 GL_TEXTURE8_ARB 0x84C8 GL_TEXTURE9_ARB 0x84C9 GL_TEXTURE10_ARB 0x84CA GL_TEXTURE11_ARB 0x84CB GL_TEXTURE12_ARB 0x84CC GL_TEXTURE13_ARB 0x84CD GL_TEXTURE14_ARB 0x84CE GL_TEXTURE15_ARB 0x84CF GL_TEXTURE16_ARB 0x84D0 GL_TEXTURE17_ARB 0x84D1 GL_TEXTURE18_ARB 0x84D2 GL_TEXTURE19_ARB 0x84D3 GL_TEXTURE20_ARB 0x84D4 GL_TEXTURE21_ARB 0x84D5 GL_TEXTURE22_ARB 0x84D6 GL_TEXTURE23_ARB 0x84D7 GL_TEXTURE24_ARB 0x84D8 GL_TEXTURE25_ARB 0x84D9 GL_TEXTURE26_ARB 0x84DA GL_TEXTURE27_ARB 0x84DB GL_TEXTURE28_ARB 0x84DC GL_TEXTURE29_ARB 0x84DD GL_TEXTURE30_ARB 0x84DE GL_TEXTURE31_ARB 0x84DF GL_ACTIVE_TEXTURE_ARB 0x84E0 GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 GL_MAX_TEXTURE_UNITS_ARB 0x84E2 void glActiveTextureARB (GLenum texture) void glClientActiveTextureARB (GLenum texture) void glMultiTexCoord1dARB (GLenum target, GLdouble s) void glMultiTexCoord1dvARB (GLenum target, const GLdouble *v) void glMultiTexCoord1fARB (GLenum target, GLfloat s) void glMultiTexCoord1fvARB (GLenum target, const GLfloat *v) void glMultiTexCoord1iARB (GLenum target, GLint s) void glMultiTexCoord1ivARB (GLenum target, const GLint *v) void glMultiTexCoord1sARB (GLenum target, GLshort s) void glMultiTexCoord1svARB (GLenum target, const GLshort *v) void glMultiTexCoord2dARB (GLenum target, GLdouble s, GLdouble t) void glMultiTexCoord2dvARB (GLenum target, const GLdouble *v) void glMultiTexCoord2fARB (GLenum target, GLfloat s, GLfloat t) void glMultiTexCoord2fvARB (GLenum target, const GLfloat *v) void glMultiTexCoord2iARB (GLenum target, GLint s, GLint t) void glMultiTexCoord2ivARB (GLenum target, const GLint *v) void glMultiTexCoord2sARB (GLenum target, GLshort s, GLshort t) void glMultiTexCoord2svARB (GLenum target, const GLshort *v) void glMultiTexCoord3dARB (GLenum target, GLdouble s, GLdouble t, GLdouble r) void glMultiTexCoord3dvARB (GLenum target, const GLdouble *v) void glMultiTexCoord3fARB (GLenum target, GLfloat s, GLfloat t, GLfloat r) void glMultiTexCoord3fvARB (GLenum target, const GLfloat *v) void glMultiTexCoord3iARB (GLenum target, GLint s, GLint t, GLint r) void glMultiTexCoord3ivARB (GLenum target, const GLint *v) void glMultiTexCoord3sARB (GLenum target, GLshort s, GLshort t, GLshort r) void glMultiTexCoord3svARB (GLenum target, const GLshort *v) void glMultiTexCoord4dARB (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q) void glMultiTexCoord4dvARB (GLenum target, const GLdouble *v) void glMultiTexCoord4fARB (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q) void glMultiTexCoord4fvARB (GLenum target, const GLfloat *v) void glMultiTexCoord4iARB (GLenum target, GLint s, GLint t, GLint r, GLint q) void glMultiTexCoord4ivARB (GLenum target, const GLint *v) void glMultiTexCoord4sARB (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q) void glMultiTexCoord4svARB (GLenum target, const GLshort *v) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_semaphore_win320000664000175000017500000000045115135005167023565 0ustar alastairalastairGL_EXT_semaphore_win32 http://www.opengl.org/registry/specs/EXT/external_objects_win32.txt GL_EXT_semaphore_win32 void glImportSemaphoreWin32HandleEXT (GLuint semaphore, GLenum handleType, void *handle) void glImportSemaphoreWin32NameEXT (GLuint semaphore, GLenum handleType, const void *name) nigels-com-glew-285c35d/auto/core/gl/GL_NV_framebuffer_multisample_coverage0000664000175000017500000000077615135005167027230 0ustar alastairalastairGL_NV_framebuffer_multisample_coverage http://developer.download.nvidia.com/opengl/specs/GL_NV_framebuffer_multisample_coverage.txt GL_NV_framebuffer_multisample_coverage GL_RENDERBUFFER_COVERAGE_SAMPLES_NV 0x8CAB GL_RENDERBUFFER_COLOR_SAMPLES_NV 0x8E10 GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV 0x8E11 GL_MULTISAMPLE_COVERAGE_MODES_NV 0x8E12 void glRenderbufferStorageMultisampleCoverageNV (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height) nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_4_20000664000175000017500000000063115135005167021631 0ustar alastairalastairGL_VERSION_4_2 https://www.opengl.org/registry/doc/glspec42.compatibility.20120427.pdf GL_COPY_READ_BUFFER_BINDING 0x8F36 GL_COPY_WRITE_BUFFER_BINDING 0x8F37 GL_TRANSFORM_FEEDBACK_ACTIVE 0x8E24 GL_TRANSFORM_FEEDBACK_PAUSED 0x8E23 GL_COMPRESSED_RGBA_BPTC_UNORM 0x8E8C GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM 0x8E8D GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT 0x8E8E GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT 0x8E8F nigels-com-glew-285c35d/auto/core/gl/GL_ARB_instanced_arrays0000664000175000017500000000064715135005167024064 0ustar alastairalastairGL_ARB_instanced_arrays http://www.opengl.org/registry/specs/ARB/instanced_arrays.txt GL_ARB_instanced_arrays GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB 0x88FE void glVertexAttribDivisorARB (GLuint index, GLuint divisor) void glDrawArraysInstancedARB (GLenum mode, GLint first, GLsizei count, GLsizei primcount) void glDrawElementsInstancedARB (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount) nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_1_2_10000664000175000017500000000013015135005167022040 0ustar alastairalastairGL_VERSION_1_2_1 http://www.opengl.org/documentation/specs/version1.2/opengl1.2.1.pdf nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_1_20000664000175000017500000000375015135005167021633 0ustar alastairalastairGL_VERSION_1_2 http://www.opengl.org/documentation/specs/version1.2/opengl1.2.1.pdf GL_UNSIGNED_BYTE_3_3_2 0x8032 GL_UNSIGNED_SHORT_4_4_4_4 0x8033 GL_UNSIGNED_SHORT_5_5_5_1 0x8034 GL_UNSIGNED_INT_8_8_8_8 0x8035 GL_UNSIGNED_INT_10_10_10_2 0x8036 GL_RESCALE_NORMAL 0x803A GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 GL_UNSIGNED_SHORT_5_6_5 0x8363 GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 GL_BGR 0x80E0 GL_BGRA 0x80E1 GL_MAX_ELEMENTS_VERTICES 0x80E8 GL_MAX_ELEMENTS_INDICES 0x80E9 GL_CLAMP_TO_EDGE 0x812F GL_TEXTURE_MIN_LOD 0x813A GL_TEXTURE_MAX_LOD 0x813B GL_TEXTURE_BASE_LEVEL 0x813C GL_TEXTURE_MAX_LEVEL 0x813D GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 GL_SINGLE_COLOR 0x81F9 GL_SEPARATE_SPECULAR_COLOR 0x81FA GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 GL_ALIASED_POINT_SIZE_RANGE 0x846D GL_ALIASED_LINE_WIDTH_RANGE 0x846E GL_PACK_SKIP_IMAGES 0x806B GL_PACK_IMAGE_HEIGHT 0x806C GL_UNPACK_SKIP_IMAGES 0x806D GL_UNPACK_IMAGE_HEIGHT 0x806E GL_TEXTURE_3D 0x806F GL_PROXY_TEXTURE_3D 0x8070 GL_TEXTURE_DEPTH 0x8071 GL_TEXTURE_WRAP_R 0x8072 GL_MAX_3D_TEXTURE_SIZE 0x8073 GL_TEXTURE_BINDING_3D 0x806A GL_MAX_ELEMENTS_VERTICES 0x80E8 GL_MAX_ELEMENTS_INDICES 0x80E9 void glDrawRangeElements (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices) void glTexImage3D (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels) void glTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels) void glCopyTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) nigels-com-glew-285c35d/auto/core/gl/GL_NV_vertex_program30000664000175000017500000000024215135005167023570 0ustar alastairalastairGL_NV_vertex_program3 http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_vertex_program3.txt GL_NV_vertex_program3 MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C nigels-com-glew-285c35d/auto/core/gl/GL_EXT_semaphore0000664000175000017500000000223015135005167022540 0ustar alastairalastairGL_EXT_semaphore http://www.opengl.org/registry/specs/EXT/external_objects.txt GL_EXT_semaphore GL_LAYOUT_GENERAL_EXT 0x958D GL_LAYOUT_COLOR_ATTACHMENT_EXT 0x958E GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT 0x958F GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT 0x9590 GL_LAYOUT_SHADER_READ_ONLY_EXT 0x9591 GL_LAYOUT_TRANSFER_SRC_EXT 0x9592 GL_LAYOUT_TRANSFER_DST_EXT 0x9593 GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT 0x9530 GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT 0x9531 void glDeleteSemaphoresEXT (GLsizei n, const GLuint* semaphores) void glGenSemaphoresEXT (GLsizei n, GLuint* semaphores) void glGetSemaphoreParameterui64vEXT (GLuint semaphore, GLenum pname, GLuint64* params) GLboolean glIsSemaphoreEXT (GLuint semaphore) void glSemaphoreParameterui64vEXT (GLuint semaphore, GLenum pname, const GLuint64* params) void glSignalSemaphoreEXT (GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *dstLayouts) void glWaitSemaphoreEXT (GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *srcLayouts) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_timer_query0000664000175000017500000000044415135005167023127 0ustar alastairalastairGL_EXT_timer_query http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_timer_query.txt GL_EXT_timer_query GL_TIME_ELAPSED_EXT 0x88BF void glGetQueryObjecti64vEXT (GLuint id, GLenum pname, GLint64EXT *params) void glGetQueryObjectui64vEXT (GLuint id, GLenum pname, GLuint64EXT *params) nigels-com-glew-285c35d/auto/core/gl/EGL_KHR_lock_surface30000664000175000017500000000172315135005167023377 0ustar alastairalastairEGL_KHR_lock_surface3 https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_KHR_lock_surface3 EGL_READ_SURFACE_BIT_KHR 0x0001 EGL_WRITE_SURFACE_BIT_KHR 0x0002 EGL_LOCK_SURFACE_BIT_KHR 0x0080 EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100 EGL_MATCH_FORMAT_KHR 0x3043 EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0 EGL_FORMAT_RGB_565_KHR 0x30C1 EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2 EGL_FORMAT_RGBA_8888_KHR 0x30C3 EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4 EGL_LOCK_USAGE_HINT_KHR 0x30C5 EGL_BITMAP_POINTER_KHR 0x30C6 EGL_BITMAP_PITCH_KHR 0x30C7 EGL_BITMAP_ORIGIN_KHR 0x30C8 EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9 EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD EGL_LOWER_LEFT_KHR 0x30CE EGL_UPPER_LEFT_KHR 0x30CF EGL_BITMAP_PIXEL_SIZE_KHR 0x3110 EGLBoolean eglQuerySurface64KHR (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR * value) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_depth_bounds_test0000664000175000017500000000036315135005167024277 0ustar alastairalastairGL_EXT_depth_bounds_test http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_depth_bounds_test.txt GL_EXT_depth_bounds_test GL_DEPTH_BOUNDS_TEST_EXT 0x8890 GL_DEPTH_BOUNDS_EXT 0x8891 void glDepthBoundsEXT (GLclampd zmin, GLclampd zmax) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_Cg_shader0000664000175000017500000000027715135005167022445 0ustar alastairalastairGL_EXT_Cg_shader http://download.nvidia.com/developer/GLSL/GLSL%20Release%20Notes%20for%20Release%2060.pdf GL_EXT_Cg_shader GL_CG_VERTEX_SHADER_EXT 0x890E GL_CG_FRAGMENT_SHADER_EXT 0x890F nigels-com-glew-285c35d/auto/core/gl/GL_APPLE_float_pixels0000664000175000017500000000105615135005167023454 0ustar alastairalastairGL_APPLE_float_pixels http://www.opengl.org/registry/specs/APPLE/float_pixels.txt GL_APPLE_float_pixels GL_HALF_APPLE 0x140B GL_COLOR_FLOAT_APPLE 0x8A0F GL_RGBA_FLOAT32_APPLE 0x8814 GL_RGB_FLOAT32_APPLE 0x8815 GL_ALPHA_FLOAT32_APPLE 0x8816 GL_INTENSITY_FLOAT32_APPLE 0x8817 GL_LUMINANCE_FLOAT32_APPLE 0x8818 GL_LUMINANCE_ALPHA_FLOAT32_APPLE 0x8819 GL_RGBA_FLOAT16_APPLE 0x881A GL_RGB_FLOAT16_APPLE 0x881B GL_ALPHA_FLOAT16_APPLE 0x881C GL_INTENSITY_FLOAT16_APPLE 0x881D GL_LUMINANCE_FLOAT16_APPLE 0x881E GL_LUMINANCE_ALPHA_FLOAT16_APPLE 0x881F nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_4_30000664000175000017500000000024615135005167021634 0ustar alastairalastairGL_VERSION_4_3 https://www.opengl.org/registry/doc/glspec43.compatibility.20130214.pdf GL_VERTEX_ATTRIB_ARRAY_LONG 0x874E GL_NUM_SHADING_LANGUAGE_VERSIONS 0x82E9 nigels-com-glew-285c35d/auto/core/gl/GL_NV_vertex_program2_option0000664000175000017500000000033515135005167025162 0ustar alastairalastairGL_NV_vertex_program2_option http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_vertex_program2_option.txt GL_NV_vertex_program2_option GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4 GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5 nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_4_40000664000175000017500000000031315135005167021630 0ustar alastairalastairGL_VERSION_4_4 https://www.opengl.org/registry/doc/glspec44.compatibility.pdf GL_MAX_VERTEX_ATTRIB_STRIDE 0x82E5 GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221 GL_TEXTURE_BUFFER_BINDING 0x8C2A nigels-com-glew-285c35d/auto/core/gl/EGL_KHR_image_base0000664000175000017500000000025415135005167022726 0ustar alastairalastairEGL_KHR_image_base https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_KHR_image_base EGL_IMAGE_PRESERVED_KHR 0x30D2 EGL_NO_IMAGE_KHR EGL_CAST(EGLImageKHR,0) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_scene_marker0000664000175000017500000000025515135005167023220 0ustar alastairalastairGL_EXT_scene_marker https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_scene_marker.txt GL_EXT_scene_marker void glBeginSceneEXT (void) void glEndSceneEXT (void) nigels-com-glew-285c35d/auto/core/gl/GL_ATI_texture_compression_3dc0000664000175000017500000000015615135005167025411 0ustar alastairalastairGL_ATI_texture_compression_3dc GL_ATI_texture_compression_3dc GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837 nigels-com-glew-285c35d/auto/core/gl/GL_ATI_map_object_buffer0000664000175000017500000000031415135005167024167 0ustar alastairalastairGL_ATI_map_object_buffer http://www.opengl.org/registry/specs/ATI/map_object_buffer.txt GL_ATI_map_object_buffer void * glMapObjectBufferATI (GLuint buffer) void glUnmapObjectBufferATI (GLuint buffer) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_debug_marker0000664000175000017500000000043115135005167023205 0ustar alastairalastairGL_EXT_debug_marker http://www.khronos.org/registry/gles/extensions/EXT/EXT_debug_marker.txt GL_EXT_debug_marker void glInsertEventMarkerEXT (GLsizei length, const GLchar* marker) void glPushGroupMarkerEXT (GLsizei length, const GLchar* marker) void glPopGroupMarkerEXT (void) nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_1_30000664000175000017500000001363315135005167021635 0ustar alastairalastairGL_VERSION_1_3 http://www.opengl.org/documentation/specs/version1.3/glspec13.pdf GL_TEXTURE0 0x84C0 GL_TEXTURE1 0x84C1 GL_TEXTURE2 0x84C2 GL_TEXTURE3 0x84C3 GL_TEXTURE4 0x84C4 GL_TEXTURE5 0x84C5 GL_TEXTURE6 0x84C6 GL_TEXTURE7 0x84C7 GL_TEXTURE8 0x84C8 GL_TEXTURE9 0x84C9 GL_TEXTURE10 0x84CA GL_TEXTURE11 0x84CB GL_TEXTURE12 0x84CC GL_TEXTURE13 0x84CD GL_TEXTURE14 0x84CE GL_TEXTURE15 0x84CF GL_TEXTURE16 0x84D0 GL_TEXTURE17 0x84D1 GL_TEXTURE18 0x84D2 GL_TEXTURE19 0x84D3 GL_TEXTURE20 0x84D4 GL_TEXTURE21 0x84D5 GL_TEXTURE22 0x84D6 GL_TEXTURE23 0x84D7 GL_TEXTURE24 0x84D8 GL_TEXTURE25 0x84D9 GL_TEXTURE26 0x84DA GL_TEXTURE27 0x84DB GL_TEXTURE28 0x84DC GL_TEXTURE29 0x84DD GL_TEXTURE30 0x84DE GL_TEXTURE31 0x84DF GL_ACTIVE_TEXTURE 0x84E0 GL_CLIENT_ACTIVE_TEXTURE 0x84E1 GL_MAX_TEXTURE_UNITS 0x84E2 GL_NORMAL_MAP 0x8511 GL_REFLECTION_MAP 0x8512 GL_TEXTURE_CUBE_MAP 0x8513 GL_TEXTURE_BINDING_CUBE_MAP 0x8514 GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A GL_PROXY_TEXTURE_CUBE_MAP 0x851B GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C GL_COMPRESSED_ALPHA 0x84E9 GL_COMPRESSED_LUMINANCE 0x84EA GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB GL_COMPRESSED_INTENSITY 0x84EC GL_COMPRESSED_RGB 0x84ED GL_COMPRESSED_RGBA 0x84EE GL_TEXTURE_COMPRESSION_HINT 0x84EF GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 GL_TEXTURE_COMPRESSED 0x86A1 GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 GL_MULTISAMPLE 0x809D GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E GL_SAMPLE_ALPHA_TO_ONE 0x809F GL_SAMPLE_COVERAGE 0x80A0 GL_SAMPLE_BUFFERS 0x80A8 GL_SAMPLES 0x80A9 GL_SAMPLE_COVERAGE_VALUE 0x80AA GL_SAMPLE_COVERAGE_INVERT 0x80AB GL_MULTISAMPLE_BIT 0x20000000 GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 GL_TRANSPOSE_COLOR_MATRIX 0x84E6 GL_COMBINE 0x8570 GL_COMBINE_RGB 0x8571 GL_COMBINE_ALPHA 0x8572 GL_SOURCE0_RGB 0x8580 GL_SOURCE1_RGB 0x8581 GL_SOURCE2_RGB 0x8582 GL_SOURCE0_ALPHA 0x8588 GL_SOURCE1_ALPHA 0x8589 GL_SOURCE2_ALPHA 0x858A GL_OPERAND0_RGB 0x8590 GL_OPERAND1_RGB 0x8591 GL_OPERAND2_RGB 0x8592 GL_OPERAND0_ALPHA 0x8598 GL_OPERAND1_ALPHA 0x8599 GL_OPERAND2_ALPHA 0x859A GL_RGB_SCALE 0x8573 GL_ADD_SIGNED 0x8574 GL_INTERPOLATE 0x8575 GL_SUBTRACT 0x84E7 GL_CONSTANT 0x8576 GL_PRIMARY_COLOR 0x8577 GL_PREVIOUS 0x8578 GL_DOT3_RGB 0x86AE GL_DOT3_RGBA 0x86AF GL_CLAMP_TO_BORDER 0x812D void glActiveTexture (GLenum texture) void glClientActiveTexture (GLenum texture) void glCompressedTexImage1D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data) void glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data) void glCompressedTexImage3D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data) void glCompressedTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data) void glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data) void glCompressedTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data) void glGetCompressedTexImage (GLenum target, GLint lod, void *img) void glLoadTransposeMatrixd (const GLdouble m[16]) void glLoadTransposeMatrixf (const GLfloat m[16]) void glMultTransposeMatrixd (const GLdouble m[16]) void glMultTransposeMatrixf (const GLfloat m[16]) void glMultiTexCoord1d (GLenum target, GLdouble s) void glMultiTexCoord1dv (GLenum target, const GLdouble *v) void glMultiTexCoord1f (GLenum target, GLfloat s) void glMultiTexCoord1fv (GLenum target, const GLfloat *v) void glMultiTexCoord1i (GLenum target, GLint s) void glMultiTexCoord1iv (GLenum target, const GLint *v) void glMultiTexCoord1s (GLenum target, GLshort s) void glMultiTexCoord1sv (GLenum target, const GLshort *v) void glMultiTexCoord2d (GLenum target, GLdouble s, GLdouble t) void glMultiTexCoord2dv (GLenum target, const GLdouble *v) void glMultiTexCoord2f (GLenum target, GLfloat s, GLfloat t) void glMultiTexCoord2fv (GLenum target, const GLfloat *v) void glMultiTexCoord2i (GLenum target, GLint s, GLint t) void glMultiTexCoord2iv (GLenum target, const GLint *v) void glMultiTexCoord2s (GLenum target, GLshort s, GLshort t) void glMultiTexCoord2sv (GLenum target, const GLshort *v) void glMultiTexCoord3d (GLenum target, GLdouble s, GLdouble t, GLdouble r) void glMultiTexCoord3dv (GLenum target, const GLdouble *v) void glMultiTexCoord3f (GLenum target, GLfloat s, GLfloat t, GLfloat r) void glMultiTexCoord3fv (GLenum target, const GLfloat *v) void glMultiTexCoord3i (GLenum target, GLint s, GLint t, GLint r) void glMultiTexCoord3iv (GLenum target, const GLint *v) void glMultiTexCoord3s (GLenum target, GLshort s, GLshort t, GLshort r) void glMultiTexCoord3sv (GLenum target, const GLshort *v) void glMultiTexCoord4d (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q) void glMultiTexCoord4dv (GLenum target, const GLdouble *v) void glMultiTexCoord4f (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q) void glMultiTexCoord4fv (GLenum target, const GLfloat *v) void glMultiTexCoord4i (GLenum target, GLint s, GLint t, GLint r, GLint q) void glMultiTexCoord4iv (GLenum target, const GLint *v) void glMultiTexCoord4s (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q) void glMultiTexCoord4sv (GLenum target, const GLshort *v) void glSampleCoverage (GLclampf value, GLboolean invert) nigels-com-glew-285c35d/auto/core/gl/GL_NV_vdpau_interop0000664000175000017500000000211515135005167023321 0ustar alastairalastairGL_NV_vdpau_interop http://www.opengl.org/registry/specs/NV/vdpau_interop.txt GL_NV_vdpau_interop GL_SURFACE_STATE_NV 0x86EB GL_SURFACE_REGISTERED_NV 0x86FD GL_SURFACE_MAPPED_NV 0x8700 GL_WRITE_DISCARD_NV 0x88BE void glVDPAUFiniNV (void) void glVDPAUGetSurfaceivNV (GLvdpauSurfaceNV surface, GLenum pname, GLsizei bufSize, GLsizei* length, GLint *values) void glVDPAUInitNV (const void* vdpDevice, const void*getProcAddress) void glVDPAUIsSurfaceNV (GLvdpauSurfaceNV surface) void glVDPAUMapSurfacesNV (GLsizei numSurfaces, const GLvdpauSurfaceNV* surfaces) GLvdpauSurfaceNV glVDPAURegisterOutputSurfaceNV (const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames) GLvdpauSurfaceNV glVDPAURegisterVideoSurfaceNV (const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames) void glVDPAUSurfaceAccessNV (GLvdpauSurfaceNV surface, GLenum access) void glVDPAUUnmapSurfacesNV (GLsizei numSurface, const GLvdpauSurfaceNV* surfaces) void glVDPAUUnregisterSurfaceNV (GLvdpauSurfaceNV surface) typedef GLintptr GLvdpauSurfaceNV nigels-com-glew-285c35d/auto/core/gl/EGL_EXT_device_base0000664000175000017500000000030215135005167023111 0ustar alastairalastairEGL_EXT_device_base https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_EXT_device_base EGL_BAD_DEVICE_EXT 0x322B EGL_DEVICE_EXT 0x322C EGL_NO_DEVICE_EXT EGL_CAST(EGLDeviceEXT,0) nigels-com-glew-285c35d/auto/core/gl/EGL_VERSION_1_00000664000175000017500000000661115135005167021735 0ustar alastairalastairEGL_VERSION_1_0 https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_FALSE 0 EGL_PBUFFER_BIT 0x0001 EGL_PIXMAP_BIT 0x0002 EGL_WINDOW_BIT 0x0004 EGL_SUCCESS 0x3000 EGL_NOT_INITIALIZED 0x3001 EGL_BAD_ACCESS 0x3002 EGL_BAD_ALLOC 0x3003 EGL_BAD_ATTRIBUTE 0x3004 EGL_BAD_CONFIG 0x3005 EGL_BAD_CONTEXT 0x3006 EGL_BAD_CURRENT_SURFACE 0x3007 EGL_BAD_DISPLAY 0x3008 EGL_BAD_MATCH 0x3009 EGL_BAD_NATIVE_PIXMAP 0x300A EGL_BAD_NATIVE_WINDOW 0x300B EGL_BAD_PARAMETER 0x300C EGL_BAD_SURFACE 0x300D EGL_BUFFER_SIZE 0x3020 EGL_ALPHA_SIZE 0x3021 EGL_BLUE_SIZE 0x3022 EGL_GREEN_SIZE 0x3023 EGL_RED_SIZE 0x3024 EGL_DEPTH_SIZE 0x3025 EGL_STENCIL_SIZE 0x3026 EGL_CONFIG_CAVEAT 0x3027 EGL_CONFIG_ID 0x3028 EGL_LEVEL 0x3029 EGL_MAX_PBUFFER_HEIGHT 0x302A EGL_MAX_PBUFFER_PIXELS 0x302B EGL_MAX_PBUFFER_WIDTH 0x302C EGL_NATIVE_RENDERABLE 0x302D EGL_NATIVE_VISUAL_ID 0x302E EGL_NATIVE_VISUAL_TYPE 0x302F EGL_SAMPLES 0x3031 EGL_SAMPLE_BUFFERS 0x3032 EGL_SURFACE_TYPE 0x3033 EGL_TRANSPARENT_TYPE 0x3034 EGL_TRANSPARENT_BLUE_VALUE 0x3035 EGL_TRANSPARENT_GREEN_VALUE 0x3036 EGL_TRANSPARENT_RED_VALUE 0x3037 EGL_NONE 0x3038 EGL_SLOW_CONFIG 0x3050 EGL_NON_CONFORMANT_CONFIG 0x3051 EGL_TRANSPARENT_RGB 0x3052 EGL_VENDOR 0x3053 EGL_VERSION 0x3054 EGL_EXTENSIONS 0x3055 EGL_HEIGHT 0x3056 EGL_WIDTH 0x3057 EGL_LARGEST_PBUFFER 0x3058 EGL_DRAW 0x3059 EGL_READ 0x305A EGL_CORE_NATIVE_ENGINE 0x305B EGL_TRUE 1 EGL_NO_CONTEXT EGL_CAST(EGLContext,0) EGL_NO_DISPLAY EGL_CAST(EGLDisplay,0) EGL_NO_SURFACE EGL_CAST(EGLSurface,0) EGL_DONT_CARE EGL_CAST(EGLint,-1) EGLBoolean eglChooseConfig (EGLDisplay dpy, const EGLint * attrib_list, EGLConfig * configs, EGLint config_size, EGLint * num_config) EGLBoolean eglCopyBuffers (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target) EGLContext eglCreateContext (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint * attrib_list) EGLSurface eglCreatePbufferSurface (EGLDisplay dpy, EGLConfig config, const EGLint * attrib_list) EGLSurface eglCreatePixmapSurface (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint * attrib_list) EGLSurface eglCreateWindowSurface (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint * attrib_list) EGLBoolean eglDestroyContext (EGLDisplay dpy, EGLContext ctx) EGLBoolean eglDestroySurface (EGLDisplay dpy, EGLSurface surface) EGLBoolean eglGetConfigAttrib (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint * value) EGLBoolean eglGetConfigs (EGLDisplay dpy, EGLConfig * configs, EGLint config_size, EGLint * num_config) EGLDisplay eglGetCurrentDisplay ( void ) EGLSurface eglGetCurrentSurface (EGLint readdraw) EGLDisplay eglGetDisplay (EGLNativeDisplayType display_id) EGLint eglGetError ( void ) EGLBoolean eglInitialize (EGLDisplay dpy, EGLint * major, EGLint * minor) EGLBoolean eglMakeCurrent (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx) EGLBoolean eglQueryContext (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint * value) const char * eglQueryString (EGLDisplay dpy, EGLint name) EGLBoolean eglQuerySurface (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint * value) EGLBoolean eglSwapBuffers (EGLDisplay dpy, EGLSurface surface) EGLBoolean eglTerminate (EGLDisplay dpy) EGLBoolean eglWaitGL ( void ) EGLBoolean eglWaitNative (EGLint engine) nigels-com-glew-285c35d/auto/core/gl/GL_NV_geometry_program40000664000175000017500000000045715135005167024117 0ustar alastairalastairGL_NV_geometry_program4 http://developer.download.nvidia.com/opengl/specs/GL_NV_geometry_program4.txt GL_NV_gpu_program4 GL_GEOMETRY_PROGRAM_NV 0x8C26 GL_MAX_PROGRAM_OUTPUT_VERTICES_NV 0x8C27 GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV 0x8C28 void glProgramVertexLimitNV (GLenum target, GLint limit) nigels-com-glew-285c35d/auto/core/gl/GL_NV_present_video0000664000175000017500000000202715135005167023312 0ustar alastairalastairGL_NV_present_video http://www.opengl.org/registry/specs/NV/present_video.txt GL_NV_present_video GL_FRAME_NV 0x8E26 GL_FIELDS_NV 0x8E27 GL_CURRENT_TIME_NV 0x8E28 GL_NUM_FILL_STREAMS_NV 0x8E29 GL_PRESENT_TIME_NV 0x8E2A GL_PRESENT_DURATION_NV 0x8E2B void glGetVideoi64vNV (GLuint video_slot, GLenum pname, GLint64EXT* params) void glGetVideoivNV (GLuint video_slot, GLenum pname, GLint* params) void glGetVideoui64vNV (GLuint video_slot, GLenum pname, GLuint64EXT* params) void glGetVideouivNV (GLuint video_slot, GLenum pname, GLuint* params) void glPresentFrameDualFillNV (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3) void glPresentFrameKeyedNV (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_texture_compression_latc0000664000175000017500000000053115135005167025703 0ustar alastairalastairGL_EXT_texture_compression_latc http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_compression_latc.txt GL_EXT_texture_compression_latc GL_COMPRESSED_LUMINANCE_LATC1_EXT 0x8C70 GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT 0x8C71 GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT 0x8C72 GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT 0x8C73 nigels-com-glew-285c35d/auto/core/gl/GL_APPLE_texture_range0000664000175000017500000000073415135005167023641 0ustar alastairalastairGL_APPLE_texture_range http://www.opengl.org/registry/specs/APPLE/texture_range.txt GL_APPLE_texture_range GL_TEXTURE_STORAGE_HINT_APPLE 0x85BC GL_STORAGE_PRIVATE_APPLE 0x85BD GL_STORAGE_CACHED_APPLE 0x85BE GL_STORAGE_SHARED_APPLE 0x85BF GL_TEXTURE_RANGE_LENGTH_APPLE 0x85B7 GL_TEXTURE_RANGE_POINTER_APPLE 0x85B8 void glTextureRangeAPPLE (GLenum target, GLsizei length, void *pointer) void glGetTexParameterPointervAPPLE (GLenum target, GLenum pname, void **params) nigels-com-glew-285c35d/auto/core/gl/GL_ARB_imaging0000664000175000017500000001234415135005167022143 0ustar alastairalastairGL_ARB_imaging GL_ARB_imaging GL_CONSTANT_COLOR 0x8001 GL_ONE_MINUS_CONSTANT_COLOR 0x8002 GL_CONSTANT_ALPHA 0x8003 GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 GL_BLEND_COLOR 0x8005 GL_FUNC_ADD 0x8006 GL_MIN 0x8007 GL_MAX 0x8008 GL_BLEND_EQUATION 0x8009 GL_FUNC_SUBTRACT 0x800A GL_FUNC_REVERSE_SUBTRACT 0x800B GL_CONVOLUTION_1D 0x8010 GL_CONVOLUTION_2D 0x8011 GL_SEPARABLE_2D 0x8012 GL_CONVOLUTION_BORDER_MODE 0x8013 GL_CONVOLUTION_FILTER_SCALE 0x8014 GL_CONVOLUTION_FILTER_BIAS 0x8015 GL_REDUCE 0x8016 GL_CONVOLUTION_FORMAT 0x8017 GL_CONVOLUTION_WIDTH 0x8018 GL_CONVOLUTION_HEIGHT 0x8019 GL_MAX_CONVOLUTION_WIDTH 0x801A GL_MAX_CONVOLUTION_HEIGHT 0x801B GL_POST_CONVOLUTION_RED_SCALE 0x801C GL_POST_CONVOLUTION_GREEN_SCALE 0x801D GL_POST_CONVOLUTION_BLUE_SCALE 0x801E GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F GL_POST_CONVOLUTION_RED_BIAS 0x8020 GL_POST_CONVOLUTION_GREEN_BIAS 0x8021 GL_POST_CONVOLUTION_BLUE_BIAS 0x8022 GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023 GL_HISTOGRAM 0x8024 GL_PROXY_HISTOGRAM 0x8025 GL_HISTOGRAM_WIDTH 0x8026 GL_HISTOGRAM_FORMAT 0x8027 GL_HISTOGRAM_RED_SIZE 0x8028 GL_HISTOGRAM_GREEN_SIZE 0x8029 GL_HISTOGRAM_BLUE_SIZE 0x802A GL_HISTOGRAM_ALPHA_SIZE 0x802B GL_HISTOGRAM_LUMINANCE_SIZE 0x802C GL_HISTOGRAM_SINK 0x802D GL_MINMAX 0x802E GL_MINMAX_FORMAT 0x802F GL_MINMAX_SINK 0x8030 GL_TABLE_TOO_LARGE 0x8031 GL_COLOR_MATRIX 0x80B1 GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4 GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5 GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6 GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7 GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8 GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9 GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB GL_COLOR_TABLE 0x80D0 GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1 GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2 GL_PROXY_COLOR_TABLE 0x80D3 GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4 GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5 GL_COLOR_TABLE_SCALE 0x80D6 GL_COLOR_TABLE_BIAS 0x80D7 GL_COLOR_TABLE_FORMAT 0x80D8 GL_COLOR_TABLE_WIDTH 0x80D9 GL_COLOR_TABLE_RED_SIZE 0x80DA GL_COLOR_TABLE_GREEN_SIZE 0x80DB GL_COLOR_TABLE_BLUE_SIZE 0x80DC GL_COLOR_TABLE_ALPHA_SIZE 0x80DD GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF GL_IGNORE_BORDER 0x8150 GL_CONSTANT_BORDER 0x8151 GL_WRAP_BORDER 0x8152 GL_REPLICATE_BORDER 0x8153 GL_CONVOLUTION_BORDER_COLOR 0x8154 void glColorTable (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *table) void glColorSubTable (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void *data) void glColorTableParameteriv (GLenum target, GLenum pname, const GLint *params) void glColorTableParameterfv (GLenum target, GLenum pname, const GLfloat *params) void glCopyColorSubTable (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width) void glCopyColorTable (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width) void glGetColorTable (GLenum target, GLenum format, GLenum type, void *table) void glGetColorTableParameterfv (GLenum target, GLenum pname, GLfloat *params) void glGetColorTableParameteriv (GLenum target, GLenum pname, GLint *params) void glHistogram (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink) void glResetHistogram (GLenum target) void glGetHistogram (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values) void glGetHistogramParameterfv (GLenum target, GLenum pname, GLfloat *params) void glGetHistogramParameteriv (GLenum target, GLenum pname, GLint *params) void glMinmax (GLenum target, GLenum internalformat, GLboolean sink) void glResetMinmax (GLenum target) void glGetMinmaxParameterfv (GLenum target, GLenum pname, GLfloat *params) void glGetMinmaxParameteriv (GLenum target, GLenum pname, GLint *params) void glConvolutionFilter1D (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *image) void glConvolutionFilter2D (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *image) void glConvolutionParameterf (GLenum target, GLenum pname, GLfloat params) void glConvolutionParameterfv (GLenum target, GLenum pname, const GLfloat *params) void glConvolutionParameteri (GLenum target, GLenum pname, GLint params) void glConvolutionParameteriv (GLenum target, GLenum pname, const GLint *params) void glCopyConvolutionFilter1D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width) void glCopyConvolutionFilter2D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height) void glGetConvolutionFilter (GLenum target, GLenum format, GLenum type, void *image) void glGetConvolutionParameterfv (GLenum target, GLenum pname, GLfloat *params) void glGetConvolutionParameteriv (GLenum target, GLenum pname, GLint *params) void glSeparableFilter2D (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *row, const void *column) void glGetSeparableFilter (GLenum target, GLenum format, GLenum type, void *row, void *column, void *span) void glGetMinmax (GLenum target, GLboolean reset, GLenum format, GLenum types, void *values) nigels-com-glew-285c35d/auto/core/gl/GL_NV_gpu_program40000664000175000017500000000311415135005167023050 0ustar alastairalastairGL_NV_gpu_program4 http://developer.download.nvidia.com/opengl/specs/GL_NV_gpu_program4.txt GL_NV_gpu_program4 GL_MIN_PROGRAM_TEXEL_OFFSET_NV 0x8904 GL_MAX_PROGRAM_TEXEL_OFFSET_NV 0x8905 GL_PROGRAM_ATTRIB_COMPONENTS_NV 0x8906 GL_PROGRAM_RESULT_COMPONENTS_NV 0x8907 GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV 0x8908 GL_MAX_PROGRAM_RESULT_COMPONENTS_NV 0x8909 GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV 0x8DA5 GL_MAX_PROGRAM_GENERIC_RESULTS_NV 0x8DA6 void glProgramLocalParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w) void glProgramLocalParameterI4ivNV (GLenum target, GLuint index, const GLint *params) void glProgramLocalParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params) void glProgramLocalParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) void glProgramLocalParameterI4uivNV (GLenum target, GLuint index, const GLuint *params) void glProgramLocalParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params) void glProgramEnvParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w) void glProgramEnvParameterI4ivNV (GLenum target, GLuint index, const GLint *params) void glProgramEnvParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params) void glProgramEnvParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) void glProgramEnvParameterI4uivNV (GLenum target, GLuint index, const GLuint *params) void glProgramEnvParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params) nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_4_00000664000175000017500000000157715135005167021641 0ustar alastairalastairGL_VERSION_4_0 https://www.opengl.org/registry/doc/glspec40.compatibility.20100311.pdf GL_SAMPLE_SHADING 0x8C36 GL_MIN_SAMPLE_SHADING_VALUE 0x8C37 GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5E GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5F GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS 0x8F9F GL_TEXTURE_CUBE_MAP_ARRAY 0x9009 GL_TEXTURE_BINDING_CUBE_MAP_ARRAY 0x900A GL_PROXY_TEXTURE_CUBE_MAP_ARRAY 0x900B GL_SAMPLER_CUBE_MAP_ARRAY 0x900C GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW 0x900D GL_INT_SAMPLER_CUBE_MAP_ARRAY 0x900E GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY 0x900F void glMinSampleShading (GLclampf value) void glBlendEquationSeparatei (GLuint buf, GLenum modeRGB, GLenum modeAlpha) void glBlendEquationi (GLuint buf, GLenum mode) void glBlendFuncSeparatei (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) void glBlendFunci (GLuint buf, GLenum src, GLenum dst) nigels-com-glew-285c35d/auto/core/gl/GL_NV_geometry_shader40000664000175000017500000000017415135005167023712 0ustar alastairalastairGL_NV_geometry_shader4 http://developer.download.nvidia.com/opengl/specs/GL_NV_geometry_shader4.txt GL_NV_geometry_shader4 nigels-com-glew-285c35d/auto/core/gl/GL_EXT_texture_buffer_object0000664000175000017500000000063215135005167025140 0ustar alastairalastairGL_EXT_texture_buffer_object http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_buffer_object.txt GL_EXT_texture_buffer_object GL_TEXTURE_BUFFER_EXT 0x8C2A GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D GL_TEXTURE_BUFFER_FORMAT_EXT 0x8C2E void glTexBufferEXT (GLenum target, GLenum internalformat, GLuint buffer) nigels-com-glew-285c35d/auto/core/gl/EGL_VERSION_1_30000664000175000017500000000070415135005167021735 0ustar alastairalastairEGL_VERSION_1_3 https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_OPENGL_ES2_BIT 0x0004 EGL_VG_COLORSPACE_LINEAR_BIT 0x0020 EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040 EGL_MATCH_NATIVE_PIXMAP 0x3041 EGL_CONFORMANT 0x3042 EGL_VG_COLORSPACE 0x3087 EGL_VG_ALPHA_FORMAT 0x3088 EGL_VG_COLORSPACE_sRGB 0x3089 EGL_VG_COLORSPACE_LINEAR 0x308A EGL_VG_ALPHA_FORMAT_NONPRE 0x308B EGL_VG_ALPHA_FORMAT_PRE 0x308C EGL_CONTEXT_CLIENT_VERSION 0x3098 nigels-com-glew-285c35d/auto/core/gl/EGL_VERSION_1_50000664000175000017500000000511115135005167021734 0ustar alastairalastairEGL_VERSION_1_5 https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT 0x00000001 EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT 0x00000002 EGL_OPENGL_ES3_BIT 0x00000040 EGL_SYNC_FLUSH_COMMANDS_BIT 0x0001 EGL_GL_COLORSPACE_SRGB 0x3089 EGL_GL_COLORSPACE_LINEAR 0x308A EGL_CONTEXT_MAJOR_VERSION 0x3098 EGL_CL_EVENT_HANDLE 0x309C EGL_GL_COLORSPACE 0x309D EGL_GL_TEXTURE_2D 0x30B1 EGL_GL_TEXTURE_3D 0x30B2 EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x30B3 EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x30B4 EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x30B5 EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x30B6 EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x30B7 EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x30B8 EGL_GL_RENDERBUFFER 0x30B9 EGL_GL_TEXTURE_LEVEL 0x30BC EGL_GL_TEXTURE_ZOFFSET 0x30BD EGL_IMAGE_PRESERVED 0x30D2 EGL_SYNC_PRIOR_COMMANDS_COMPLETE 0x30F0 EGL_SYNC_STATUS 0x30F1 EGL_SIGNALED 0x30F2 EGL_UNSIGNALED 0x30F3 EGL_TIMEOUT_EXPIRED 0x30F5 EGL_CONDITION_SATISFIED 0x30F6 EGL_SYNC_TYPE 0x30F7 EGL_SYNC_CONDITION 0x30F8 EGL_SYNC_FENCE 0x30F9 EGL_CONTEXT_MINOR_VERSION 0x30FB EGL_CONTEXT_OPENGL_PROFILE_MASK 0x30FD EGL_SYNC_CL_EVENT 0x30FE EGL_SYNC_CL_EVENT_COMPLETE 0x30FF EGL_CONTEXT_OPENGL_DEBUG 0x31B0 EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE 0x31B1 EGL_CONTEXT_OPENGL_ROBUST_ACCESS 0x31B2 EGL_CONTEXT_OPENGL_ROBUST_ACCESS 0x31B2 EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY 0x31BD EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY 0x31BD EGL_NO_RESET_NOTIFICATION 0x31BE EGL_LOSE_CONTEXT_ON_RESET 0x31BF EGL_FOREVER 0xFFFFFFFFFFFFFFFF EGL_NO_IMAGE EGL_CAST(EGLImage,0) EGL_NO_SYNC EGL_CAST(EGLSync,0) EGLint eglClientWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout) EGLImage eglCreateImage (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib * attrib_list) EGLSurface eglCreatePlatformPixmapSurface (EGLDisplay dpy, EGLConfig config, void * native_pixmap, const EGLAttrib * attrib_list) EGLSurface eglCreatePlatformWindowSurface (EGLDisplay dpy, EGLConfig config, void * native_window, const EGLAttrib * attrib_list) EGLSync eglCreateSync (EGLDisplay dpy, EGLenum type, const EGLAttrib * attrib_list) EGLBoolean eglDestroyImage (EGLDisplay dpy, EGLImage image) EGLBoolean eglDestroySync (EGLDisplay dpy, EGLSync sync) EGLDisplay eglGetPlatformDisplay (EGLenum platform, void * native_display, const EGLAttrib * attrib_list) EGLBoolean eglGetSyncAttrib (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib * value) EGLBoolean eglWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_memory_object_win320000664000175000017500000000132415135005167024440 0ustar alastairalastairGL_EXT_memory_object_win32 http://www.opengl.org/registry/specs/EXT/external_objects_win32.txt GL_EXT_memory_object_win32 GL_LUID_SIZE_EXT 8 GL_HANDLE_TYPE_OPAQUE_WIN32_EXT 0x9587 GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT 0x9588 GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT 0x9589 GL_HANDLE_TYPE_D3D12_RESOURCE_EXT 0x958A GL_HANDLE_TYPE_D3D11_IMAGE_EXT 0x958B GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT 0x958C GL_HANDLE_TYPE_D3D12_FENCE_EXT 0x9594 GL_D3D12_FENCE_VALUE_EXT 0x9595 GL_DEVICE_LUID_EXT 0x9599 GL_DEVICE_NODE_MASK_EXT 0x959A void glImportMemoryWin32HandleEXT (GLuint memory, GLuint64 size, GLenum handleType, void *handle) void glImportMemoryWin32NameEXT (GLuint memory, GLuint64 size, GLenum handleType, const void *name) nigels-com-glew-285c35d/auto/core/gl/GL_ARB_internalformat_query20000664000175000017500000000646515135005167025073 0ustar alastairalastairGL_ARB_internalformat_query2 http://www.opengl.org/registry/specs/ARB/internalformat_query2.txt GL_ARB_internalformat_query2 GL_INTERNALFORMAT_SUPPORTED 0x826F GL_INTERNALFORMAT_PREFERRED 0x8270 GL_INTERNALFORMAT_RED_SIZE 0x8271 GL_INTERNALFORMAT_GREEN_SIZE 0x8272 GL_INTERNALFORMAT_BLUE_SIZE 0x8273 GL_INTERNALFORMAT_ALPHA_SIZE 0x8274 GL_INTERNALFORMAT_DEPTH_SIZE 0x8275 GL_INTERNALFORMAT_STENCIL_SIZE 0x8276 GL_INTERNALFORMAT_SHARED_SIZE 0x8277 GL_INTERNALFORMAT_RED_TYPE 0x8278 GL_INTERNALFORMAT_GREEN_TYPE 0x8279 GL_INTERNALFORMAT_BLUE_TYPE 0x827A GL_INTERNALFORMAT_ALPHA_TYPE 0x827B GL_INTERNALFORMAT_DEPTH_TYPE 0x827C GL_INTERNALFORMAT_STENCIL_TYPE 0x827D GL_MAX_WIDTH 0x827E GL_MAX_HEIGHT 0x827F GL_MAX_DEPTH 0x8280 GL_MAX_LAYERS 0x8281 GL_MAX_COMBINED_DIMENSIONS 0x8282 GL_COLOR_COMPONENTS 0x8283 GL_DEPTH_COMPONENTS 0x8284 GL_STENCIL_COMPONENTS 0x8285 GL_COLOR_RENDERABLE 0x8286 GL_DEPTH_RENDERABLE 0x8287 GL_STENCIL_RENDERABLE 0x8288 GL_FRAMEBUFFER_RENDERABLE 0x8289 GL_FRAMEBUFFER_RENDERABLE_LAYERED 0x828A GL_FRAMEBUFFER_BLEND 0x828B GL_READ_PIXELS 0x828C GL_READ_PIXELS_FORMAT 0x828D GL_READ_PIXELS_TYPE 0x828E GL_TEXTURE_IMAGE_FORMAT 0x828F GL_TEXTURE_IMAGE_TYPE 0x8290 GL_GET_TEXTURE_IMAGE_FORMAT 0x8291 GL_GET_TEXTURE_IMAGE_TYPE 0x8292 GL_MIPMAP 0x8293 GL_MANUAL_GENERATE_MIPMAP 0x8294 GL_AUTO_GENERATE_MIPMAP 0x8295 GL_COLOR_ENCODING 0x8296 GL_SRGB_READ 0x8297 GL_SRGB_WRITE 0x8298 GL_SRGB_DECODE_ARB 0x8299 GL_FILTER 0x829A GL_VERTEX_TEXTURE 0x829B GL_TESS_CONTROL_TEXTURE 0x829C GL_TESS_EVALUATION_TEXTURE 0x829D GL_GEOMETRY_TEXTURE 0x829E GL_FRAGMENT_TEXTURE 0x829F GL_COMPUTE_TEXTURE 0x82A0 GL_TEXTURE_SHADOW 0x82A1 GL_TEXTURE_GATHER 0x82A2 GL_TEXTURE_GATHER_SHADOW 0x82A3 GL_SHADER_IMAGE_LOAD 0x82A4 GL_SHADER_IMAGE_STORE 0x82A5 GL_SHADER_IMAGE_ATOMIC 0x82A6 GL_IMAGE_TEXEL_SIZE 0x82A7 GL_IMAGE_COMPATIBILITY_CLASS 0x82A8 GL_IMAGE_PIXEL_FORMAT 0x82A9 GL_IMAGE_PIXEL_TYPE 0x82AA GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST 0x82AC GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST 0x82AD GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE 0x82AE GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE 0x82AF GL_TEXTURE_COMPRESSED_BLOCK_WIDTH 0x82B1 GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT 0x82B2 GL_TEXTURE_COMPRESSED_BLOCK_SIZE 0x82B3 GL_CLEAR_BUFFER 0x82B4 GL_TEXTURE_VIEW 0x82B5 GL_VIEW_COMPATIBILITY_CLASS 0x82B6 GL_FULL_SUPPORT 0x82B7 GL_CAVEAT_SUPPORT 0x82B8 GL_IMAGE_CLASS_4_X_32 0x82B9 GL_IMAGE_CLASS_2_X_32 0x82BA GL_IMAGE_CLASS_1_X_32 0x82BB GL_IMAGE_CLASS_4_X_16 0x82BC GL_IMAGE_CLASS_2_X_16 0x82BD GL_IMAGE_CLASS_1_X_16 0x82BE GL_IMAGE_CLASS_4_X_8 0x82BF GL_IMAGE_CLASS_2_X_8 0x82C0 GL_IMAGE_CLASS_1_X_8 0x82C1 GL_IMAGE_CLASS_11_11_10 0x82C2 GL_IMAGE_CLASS_10_10_10_2 0x82C3 GL_VIEW_CLASS_128_BITS 0x82C4 GL_VIEW_CLASS_96_BITS 0x82C5 GL_VIEW_CLASS_64_BITS 0x82C6 GL_VIEW_CLASS_48_BITS 0x82C7 GL_VIEW_CLASS_32_BITS 0x82C8 GL_VIEW_CLASS_24_BITS 0x82C9 GL_VIEW_CLASS_16_BITS 0x82CA GL_VIEW_CLASS_8_BITS 0x82CB GL_VIEW_CLASS_S3TC_DXT1_RGB 0x82CC GL_VIEW_CLASS_S3TC_DXT1_RGBA 0x82CD GL_VIEW_CLASS_S3TC_DXT3_RGBA 0x82CE GL_VIEW_CLASS_S3TC_DXT5_RGBA 0x82CF GL_VIEW_CLASS_RGTC1_RED 0x82D0 GL_VIEW_CLASS_RGTC2_RG 0x82D1 GL_VIEW_CLASS_BPTC_UNORM 0x82D2 GL_VIEW_CLASS_BPTC_FLOAT 0x82D3 void glGetInternalformati64v (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64* params) nigels-com-glew-285c35d/auto/core/gl/GL_NV_sample_locations0000664000175000017500000000135615135005167024004 0ustar alastairalastairGL_NV_sample_locations https://www.khronos.org/registry/OpenGL/extensions/NV/NV_sample_locations.txt GL_NV_sample_locations GL_SAMPLE_LOCATION_NV 0x8E50 GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV 0x933D GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV 0x933E GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV 0x933F GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV 0x9340 GL_PROGRAMMABLE_SAMPLE_LOCATION_NV 0x9341 GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV 0x9342 GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV 0x9343 void glFramebufferSampleLocationsfvNV (GLenum target, GLuint start, GLsizei count, const GLfloat* v) void glNamedFramebufferSampleLocationsfvNV (GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v) void glResolveDepthValuesNV (void) nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_2_00000664000175000017500000002064115135005167021630 0ustar alastairalastairGL_VERSION_2_0 http://www.opengl.org/documentation/specs/version2.0/glspec20.pdf GL_BLEND_EQUATION_RGB GL_BLEND_EQUATION GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622 GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623 GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624 GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625 GL_CURRENT_VERTEX_ATTRIB 0x8626 GL_VERTEX_PROGRAM_POINT_SIZE 0x8642 GL_VERTEX_PROGRAM_TWO_SIDE 0x8643 GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645 GL_STENCIL_BACK_FUNC 0x8800 GL_STENCIL_BACK_FAIL 0x8801 GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802 GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803 GL_MAX_DRAW_BUFFERS 0x8824 GL_DRAW_BUFFER0 0x8825 GL_DRAW_BUFFER1 0x8826 GL_DRAW_BUFFER2 0x8827 GL_DRAW_BUFFER3 0x8828 GL_DRAW_BUFFER4 0x8829 GL_DRAW_BUFFER5 0x882A GL_DRAW_BUFFER6 0x882B GL_DRAW_BUFFER7 0x882C GL_DRAW_BUFFER8 0x882D GL_DRAW_BUFFER9 0x882E GL_DRAW_BUFFER10 0x882F GL_DRAW_BUFFER11 0x8830 GL_DRAW_BUFFER12 0x8831 GL_DRAW_BUFFER13 0x8832 GL_DRAW_BUFFER14 0x8833 GL_DRAW_BUFFER15 0x8834 GL_BLEND_EQUATION_ALPHA 0x883D GL_POINT_SPRITE 0x8861 GL_COORD_REPLACE 0x8862 GL_MAX_VERTEX_ATTRIBS 0x8869 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A GL_MAX_TEXTURE_COORDS 0x8871 GL_MAX_TEXTURE_IMAGE_UNITS 0x8872 GL_FRAGMENT_SHADER 0x8B30 GL_VERTEX_SHADER 0x8B31 GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49 GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A GL_MAX_VARYING_FLOATS 0x8B4B GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D GL_SHADER_TYPE 0x8B4F GL_FLOAT_VEC2 0x8B50 GL_FLOAT_VEC3 0x8B51 GL_FLOAT_VEC4 0x8B52 GL_INT_VEC2 0x8B53 GL_INT_VEC3 0x8B54 GL_INT_VEC4 0x8B55 GL_BOOL 0x8B56 GL_BOOL_VEC2 0x8B57 GL_BOOL_VEC3 0x8B58 GL_BOOL_VEC4 0x8B59 GL_FLOAT_MAT2 0x8B5A GL_FLOAT_MAT3 0x8B5B GL_FLOAT_MAT4 0x8B5C GL_SAMPLER_1D 0x8B5D GL_SAMPLER_2D 0x8B5E GL_SAMPLER_3D 0x8B5F GL_SAMPLER_CUBE 0x8B60 GL_SAMPLER_1D_SHADOW 0x8B61 GL_SAMPLER_2D_SHADOW 0x8B62 GL_DELETE_STATUS 0x8B80 GL_COMPILE_STATUS 0x8B81 GL_LINK_STATUS 0x8B82 GL_VALIDATE_STATUS 0x8B83 GL_INFO_LOG_LENGTH 0x8B84 GL_ATTACHED_SHADERS 0x8B85 GL_ACTIVE_UNIFORMS 0x8B86 GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87 GL_SHADER_SOURCE_LENGTH 0x8B88 GL_ACTIVE_ATTRIBUTES 0x8B89 GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B GL_SHADING_LANGUAGE_VERSION 0x8B8C GL_CURRENT_PROGRAM 0x8B8D GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0 GL_LOWER_LEFT 0x8CA1 GL_UPPER_LEFT 0x8CA2 GL_STENCIL_BACK_REF 0x8CA3 GL_STENCIL_BACK_VALUE_MASK 0x8CA4 GL_STENCIL_BACK_WRITEMASK 0x8CA5 void glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha) void glDrawBuffers (GLsizei n, const GLenum* bufs) void glStencilOpSeparate (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass) void glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask) void glStencilMaskSeparate (GLenum face, GLuint mask) void glAttachShader (GLuint program, GLuint shader) void glBindAttribLocation (GLuint program, GLuint index, const GLchar* name) void glCompileShader (GLuint shader) GLuint glCreateProgram (void) GLuint glCreateShader (GLenum type) void glDeleteProgram (GLuint program) void glDeleteShader (GLuint shader) void glDetachShader (GLuint program, GLuint shader) void glDisableVertexAttribArray (GLuint index) void glEnableVertexAttribArray (GLuint index) void glGetActiveAttrib (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name) void glGetActiveUniform (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name) void glGetAttachedShaders (GLuint program, GLsizei maxCount, GLsizei* count, GLuint* shaders) GLint glGetAttribLocation (GLuint program, const GLchar* name) void glGetProgramiv (GLuint program, GLenum pname, GLint* param) void glGetProgramInfoLog (GLuint program, GLsizei bufSize, GLsizei* length, GLchar* infoLog) void glGetShaderiv (GLuint shader, GLenum pname, GLint* param) void glGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog) void glShaderSource (GLuint shader, GLsizei count, const GLchar *const* string, const GLint* length) GLint glGetUniformLocation (GLuint program, const GLchar* name) void glGetUniformfv (GLuint program, GLint location, GLfloat* params) void glGetUniformiv (GLuint program, GLint location, GLint* params) void glGetVertexAttribdv (GLuint index, GLenum pname, GLdouble* params) void glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params) void glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params) void glGetVertexAttribPointerv (GLuint index, GLenum pname, void** pointer) GLboolean glIsProgram (GLuint program) GLboolean glIsShader (GLuint shader) void glLinkProgram (GLuint program) void glGetShaderSource (GLuint obj, GLsizei maxLength, GLsizei* length, GLchar* source) void glUseProgram (GLuint program) void glUniform1f (GLint location, GLfloat v0) void glUniform1fv (GLint location, GLsizei count, const GLfloat* value) void glUniform1i (GLint location, GLint v0) void glUniform1iv (GLint location, GLsizei count, const GLint* value) void glUniform2f (GLint location, GLfloat v0, GLfloat v1) void glUniform2fv (GLint location, GLsizei count, const GLfloat* value) void glUniform2i (GLint location, GLint v0, GLint v1) void glUniform2iv (GLint location, GLsizei count, const GLint* value) void glUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2) void glUniform3fv (GLint location, GLsizei count, const GLfloat* value) void glUniform3i (GLint location, GLint v0, GLint v1, GLint v2) void glUniform3iv (GLint location, GLsizei count, const GLint* value) void glUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) void glUniform4fv (GLint location, GLsizei count, const GLfloat* value) void glUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3) void glUniform4iv (GLint location, GLsizei count, const GLint* value) void glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glValidateProgram (GLuint program) void glVertexAttrib1d (GLuint index, GLdouble x) void glVertexAttrib1dv (GLuint index, const GLdouble* v) void glVertexAttrib1f (GLuint index, GLfloat x) void glVertexAttrib1fv (GLuint index, const GLfloat* v) void glVertexAttrib1s (GLuint index, GLshort x) void glVertexAttrib1sv (GLuint index, const GLshort* v) void glVertexAttrib2d (GLuint index, GLdouble x, GLdouble y) void glVertexAttrib2dv (GLuint index, const GLdouble* v) void glVertexAttrib2f (GLuint index, GLfloat x, GLfloat y) void glVertexAttrib2fv (GLuint index, const GLfloat* v) void glVertexAttrib2s (GLuint index, GLshort x, GLshort y) void glVertexAttrib2sv (GLuint index, const GLshort* v) void glVertexAttrib3d (GLuint index, GLdouble x, GLdouble y, GLdouble z) void glVertexAttrib3dv (GLuint index, const GLdouble* v) void glVertexAttrib3f (GLuint index, GLfloat x, GLfloat y, GLfloat z) void glVertexAttrib3fv (GLuint index, const GLfloat* v) void glVertexAttrib3s (GLuint index, GLshort x, GLshort y, GLshort z) void glVertexAttrib3sv (GLuint index, const GLshort* v) void glVertexAttrib4Nbv (GLuint index, const GLbyte* v) void glVertexAttrib4Niv (GLuint index, const GLint* v) void glVertexAttrib4Nsv (GLuint index, const GLshort* v) void glVertexAttrib4Nub (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w) void glVertexAttrib4Nubv (GLuint index, const GLubyte* v) void glVertexAttrib4Nuiv (GLuint index, const GLuint* v) void glVertexAttrib4Nusv (GLuint index, const GLushort* v) void glVertexAttrib4bv (GLuint index, const GLbyte* v) void glVertexAttrib4d (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) void glVertexAttrib4dv (GLuint index, const GLdouble* v) void glVertexAttrib4f (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) void glVertexAttrib4fv (GLuint index, const GLfloat* v) void glVertexAttrib4iv (GLuint index, const GLint* v) void glVertexAttrib4s (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w) void glVertexAttrib4sv (GLuint index, const GLshort* v) void glVertexAttrib4ubv (GLuint index, const GLubyte* v) void glVertexAttrib4uiv (GLuint index, const GLuint* v) void glVertexAttrib4usv (GLuint index, const GLushort* v) void glVertexAttribPointer (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* pointer) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_texture_edge_clamp0000664000175000017500000000025415135005167024421 0ustar alastairalastairGL_EXT_texture_edge_clamp http://www.opengl.org/developers/documentation/Version1.2/1.2specs/texture_edge_clamp.txt GL_EXT_texture_edge_clamp GL_CLAMP_TO_EDGE_EXT 0x812F nigels-com-glew-285c35d/auto/core/gl/WGL_NV_gpu_affinity0000664000175000017500000000126215135005167023257 0ustar alastairalastairWGL_NV_gpu_affinity http://developer.download.nvidia.com/opengl/specs/WGL_nv_gpu_affinity.txt WGL_NV_gpu_affinity WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0 WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1 BOOL wglEnumGpusNV (UINT iGpuIndex, HGPUNV *phGpu) BOOL wglEnumGpuDevicesNV (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice) HDC wglCreateAffinityDCNV (const HGPUNV *phGpuList) BOOL wglEnumGpusFromAffinityDCNV (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu) BOOL wglDeleteDCNV (HDC hdc) DECLARE_HANDLE(HGPUNV); typedef struct _GPU_DEVICE { DWORD cb; CHAR DeviceName[32]; CHAR DeviceString[128]; DWORD Flags; RECT rcVirtualScreen; } GPU_DEVICE, *PGPU_DEVICE; nigels-com-glew-285c35d/auto/core/gl/GL_SGIX_shadow0000664000175000017500000000035215135005167022157 0ustar alastairalastairGL_SGIX_shadow http://oss.sgi.com/projects/ogl-sample/registry/SGIX/shadow.txt GL_SGIX_shadow GL_TEXTURE_COMPARE_SGIX 0x819A GL_TEXTURE_COMPARE_OPERATOR_SGIX 0x819B GL_TEXTURE_LEQUAL_R_SGIX 0x819C GL_TEXTURE_GEQUAL_R_SGIX 0x819D nigels-com-glew-285c35d/auto/core/gl/GLX_VERSION_1_30000664000175000017500000000665615135005167021774 0ustar alastairalastairGLX_VERSION_1_3 http://www.opengl.org/documentation/specs/glx/glx1.3.pdf GLX_VERSION_1_3 GLX_WINDOW_BIT 0x00000001 GLX_PIXMAP_BIT 0x00000002 GLX_PBUFFER_BIT 0x00000004 GLX_RGBA_BIT 0x00000001 GLX_COLOR_INDEX_BIT 0x00000002 GLX_PBUFFER_CLOBBER_MASK 0x08000000 GLX_FRONT_LEFT_BUFFER_BIT 0x00000001 GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002 GLX_BACK_LEFT_BUFFER_BIT 0x00000004 GLX_BACK_RIGHT_BUFFER_BIT 0x00000008 GLX_AUX_BUFFERS_BIT 0x00000010 GLX_DEPTH_BUFFER_BIT 0x00000020 GLX_STENCIL_BUFFER_BIT 0x00000040 GLX_ACCUM_BUFFER_BIT 0x00000080 GLX_CONFIG_CAVEAT 0x20 GLX_X_VISUAL_TYPE 0x22 GLX_TRANSPARENT_TYPE 0x23 GLX_TRANSPARENT_INDEX_VALUE 0x24 GLX_TRANSPARENT_RED_VALUE 0x25 GLX_TRANSPARENT_GREEN_VALUE 0x26 GLX_TRANSPARENT_BLUE_VALUE 0x27 GLX_TRANSPARENT_ALPHA_VALUE 0x28 GLX_DONT_CARE 0xFFFFFFFF GLX_NONE 0x8000 GLX_SLOW_CONFIG 0x8001 GLX_TRUE_COLOR 0x8002 GLX_DIRECT_COLOR 0x8003 GLX_PSEUDO_COLOR 0x8004 GLX_STATIC_COLOR 0x8005 GLX_GRAY_SCALE 0x8006 GLX_STATIC_GRAY 0x8007 GLX_TRANSPARENT_RGB 0x8008 GLX_TRANSPARENT_INDEX 0x8009 GLX_VISUAL_ID 0x800B GLX_SCREEN 0x800C GLX_NON_CONFORMANT_CONFIG 0x800D GLX_DRAWABLE_TYPE 0x8010 GLX_RENDER_TYPE 0x8011 GLX_X_RENDERABLE 0x8012 GLX_FBCONFIG_ID 0x8013 GLX_RGBA_TYPE 0x8014 GLX_COLOR_INDEX_TYPE 0x8015 GLX_MAX_PBUFFER_WIDTH 0x8016 GLX_MAX_PBUFFER_HEIGHT 0x8017 GLX_MAX_PBUFFER_PIXELS 0x8018 GLX_PRESERVED_CONTENTS 0x801B GLX_LARGEST_PBUFFER 0x801C GLX_WIDTH 0x801D GLX_HEIGHT 0x801E GLX_EVENT_MASK 0x801F GLX_DAMAGED 0x8020 GLX_SAVED 0x8021 GLX_WINDOW 0x8022 GLX_PBUFFER 0x8023 GLX_PBUFFER_HEIGHT 0x8040 GLX_PBUFFER_WIDTH 0x8041 GLXFBConfig* glXChooseFBConfig (Display *dpy, int screen, const int *attrib_list, int *nelements) GLXFBConfig* glXGetFBConfigs (Display *dpy, int screen, int *nelements) XVisualInfo* glXGetVisualFromFBConfig (Display *dpy, GLXFBConfig config) int glXGetFBConfigAttrib (Display *dpy, GLXFBConfig config, int attribute, int *value) GLXWindow glXCreateWindow (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list) void glXDestroyWindow (Display *dpy, GLXWindow win) GLXPixmap glXCreatePixmap (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list) void glXDestroyPixmap (Display *dpy, GLXPixmap pixmap) GLXPbuffer glXCreatePbuffer (Display *dpy, GLXFBConfig config, const int *attrib_list) void glXDestroyPbuffer (Display *dpy, GLXPbuffer pbuf) void glXQueryDrawable (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value) GLXContext glXCreateNewContext (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct) Bool glXMakeContextCurrent (Display *display, GLXDrawable draw, GLXDrawable read, GLXContext ctx) GLXDrawable glXGetCurrentReadDrawable (void) int glXQueryContext (Display *dpy, GLXContext ctx, int attribute, int *value) void glXSelectEvent (Display *dpy, GLXDrawable draw, unsigned long event_mask) void glXGetSelectedEvent (Display *dpy, GLXDrawable draw, unsigned long *event_mask) typedef XID GLXWindow typedef XID GLXPbuffer typedef XID GLXFBConfigID typedef struct __GLXFBConfigRec *GLXFBConfig typedef struct { int event_type; int draw_type; unsigned long serial; Bool send_event; Display *display; GLXDrawable drawable; unsigned int buffer_mask; unsigned int aux_buffer; int x, y; int width, height; int count; } GLXPbufferClobberEvent; typedef union __GLXEvent { GLXPbufferClobberEvent glxpbufferclobber; long pad[24]; } GLXEvent; nigels-com-glew-285c35d/auto/core/gl/GLX_ATI_pixel_format_float0000664000175000017500000000013315135005167024540 0ustar alastairalastairGLX_ATI_pixel_format_float GLX_ATI_pixel_format_float GLX_RGBA_FLOAT_ATI_BIT 0x00000100 nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_3_30000664000175000017500000000032115135005167021625 0ustar alastairalastairGL_VERSION_3_3 https://www.opengl.org/registry/doc/glspec33.compatibility.20100311.pdf GL_RGB10_A2UI 0x906F GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE void glVertexAttribDivisor (GLuint index, GLuint divisor) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_gpu_program_parameters0000664000175000017500000000054115135005167025325 0ustar alastairalastairGL_EXT_gpu_program_parameters http://developer.download.nvidia.com/opengl/specs/GL_EXT_gpu_program_parameters.txt GL_EXT_gpu_program_parameters void glProgramEnvParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat* params) void glProgramLocalParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat* params) nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_1_40000664000175000017500000000746415135005167021643 0ustar alastairalastairGL_VERSION_1_4 http://www.opengl.org/documentation/specs/version1.4/glspec14.pdf GL_GENERATE_MIPMAP 0x8191 GL_GENERATE_MIPMAP_HINT 0x8192 GL_DEPTH_COMPONENT16 0x81A5 GL_DEPTH_COMPONENT24 0x81A6 GL_DEPTH_COMPONENT32 0x81A7 GL_TEXTURE_DEPTH_SIZE 0x884A GL_DEPTH_TEXTURE_MODE 0x884B GL_TEXTURE_COMPARE_MODE 0x884C GL_TEXTURE_COMPARE_FUNC 0x884D GL_COMPARE_R_TO_TEXTURE 0x884E GL_FOG_COORDINATE_SOURCE 0x8450 GL_FOG_COORDINATE 0x8451 GL_FRAGMENT_DEPTH 0x8452 GL_CURRENT_FOG_COORDINATE 0x8453 GL_FOG_COORDINATE_ARRAY_TYPE 0x8454 GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455 GL_FOG_COORDINATE_ARRAY_POINTER 0x8456 GL_FOG_COORDINATE_ARRAY 0x8457 GL_POINT_SIZE_MIN 0x8126 GL_POINT_SIZE_MAX 0x8127 GL_POINT_FADE_THRESHOLD_SIZE 0x8128 GL_POINT_DISTANCE_ATTENUATION 0x8129 GL_COLOR_SUM 0x8458 GL_CURRENT_SECONDARY_COLOR 0x8459 GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D GL_SECONDARY_COLOR_ARRAY 0x845E GL_BLEND_DST_RGB 0x80C8 GL_BLEND_SRC_RGB 0x80C9 GL_BLEND_DST_ALPHA 0x80CA GL_BLEND_SRC_ALPHA 0x80CB GL_INCR_WRAP 0x8507 GL_DECR_WRAP 0x8508 GL_TEXTURE_FILTER_CONTROL 0x8500 GL_TEXTURE_LOD_BIAS 0x8501 GL_MAX_TEXTURE_LOD_BIAS 0x84FD GL_MIRRORED_REPEAT 0x8370 void glBlendEquation (GLenum mode) void glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) void glFogCoordf (GLfloat coord) void glFogCoordfv (const GLfloat *coord) void glFogCoordd (GLdouble coord) void glFogCoorddv (const GLdouble *coord) void glFogCoordPointer (GLenum type, GLsizei stride, const void *pointer) void glMultiDrawArrays (GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount) void glMultiDrawElements (GLenum mode, const GLsizei *count, GLenum type, const void *const* indices, GLsizei drawcount) void glPointParameteri (GLenum pname, GLint param) void glPointParameteriv (GLenum pname, const GLint *params) void glPointParameterf (GLenum pname, GLfloat param) void glPointParameterfv (GLenum pname, const GLfloat *params) void glSecondaryColor3b (GLbyte red, GLbyte green, GLbyte blue) void glSecondaryColor3bv (const GLbyte *v) void glSecondaryColor3d (GLdouble red, GLdouble green, GLdouble blue) void glSecondaryColor3dv (const GLdouble *v) void glSecondaryColor3f (GLfloat red, GLfloat green, GLfloat blue) void glSecondaryColor3fv (const GLfloat *v) void glSecondaryColor3i (GLint red, GLint green, GLint blue) void glSecondaryColor3iv (const GLint *v) void glSecondaryColor3s (GLshort red, GLshort green, GLshort blue) void glSecondaryColor3sv (const GLshort *v) void glSecondaryColor3ub (GLubyte red, GLubyte green, GLubyte blue) void glSecondaryColor3ubv (const GLubyte *v) void glSecondaryColor3ui (GLuint red, GLuint green, GLuint blue) void glSecondaryColor3uiv (const GLuint *v) void glSecondaryColor3us (GLushort red, GLushort green, GLushort blue) void glSecondaryColor3usv (const GLushort *v) void glSecondaryColorPointer (GLint size, GLenum type, GLsizei stride, const void *pointer) void glBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) void glWindowPos2d (GLdouble x, GLdouble y) void glWindowPos2f (GLfloat x, GLfloat y) void glWindowPos2i (GLint x, GLint y) void glWindowPos2s (GLshort x, GLshort y) void glWindowPos2dv (const GLdouble *p) void glWindowPos2fv (const GLfloat *p) void glWindowPos2iv (const GLint *p) void glWindowPos2sv (const GLshort *p) void glWindowPos3d (GLdouble x, GLdouble y, GLdouble z) void glWindowPos3f (GLfloat x, GLfloat y, GLfloat z) void glWindowPos3i (GLint x, GLint y, GLint z) void glWindowPos3s (GLshort x, GLshort y, GLshort z) void glWindowPos3dv (const GLdouble *p) void glWindowPos3fv (const GLfloat *p) void glWindowPos3iv (const GLint *p) void glWindowPos3sv (const GLshort *p) nigels-com-glew-285c35d/auto/core/gl/GL_ARB_vertex_attrib_64bit0000664000175000017500000000145415135005167024422 0ustar alastairalastairGL_ARB_vertex_attrib_64bit http://www.opengl.org/registry/specs/ARB/vertex_attrib_64bit.txt GL_ARB_vertex_attrib_64bit void glGetVertexAttribLdv (GLuint index, GLenum pname, GLdouble* params) void glVertexAttribL1d (GLuint index, GLdouble x) void glVertexAttribL1dv (GLuint index, const GLdouble* v) void glVertexAttribL2d (GLuint index, GLdouble x, GLdouble y) void glVertexAttribL2dv (GLuint index, const GLdouble* v) void glVertexAttribL3d (GLuint index, GLdouble x, GLdouble y, GLdouble z) void glVertexAttribL3dv (GLuint index, const GLdouble* v) void glVertexAttribL4d (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) void glVertexAttribL4dv (GLuint index, const GLdouble* v) void glVertexAttribLPointer (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_draw_range_elements0000664000175000017500000000050215135005167024562 0ustar alastairalastairGL_EXT_draw_range_elements http://oss.sgi.com/projects/ogl-sample/registry/EXT/draw_range_elements.txt GL_EXT_draw_range_elements GL_MAX_ELEMENTS_VERTICES_EXT 0x80E8 GL_MAX_ELEMENTS_INDICES_EXT 0x80E9 void glDrawRangeElementsEXT (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_secondary_color0000664000175000017500000000263715135005167023755 0ustar alastairalastairGL_EXT_secondary_color http://oss.sgi.com/projects/ogl-sample/registry/EXT/secondary_color.txt GL_EXT_secondary_color GL_COLOR_SUM_EXT 0x8458 GL_CURRENT_SECONDARY_COLOR_EXT 0x8459 GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D GL_SECONDARY_COLOR_ARRAY_EXT 0x845E void glSecondaryColor3bEXT (GLbyte red, GLbyte green, GLbyte blue) void glSecondaryColor3bvEXT (const GLbyte *v) void glSecondaryColor3dEXT (GLdouble red, GLdouble green, GLdouble blue) void glSecondaryColor3dvEXT (const GLdouble *v) void glSecondaryColor3fEXT (GLfloat red, GLfloat green, GLfloat blue) void glSecondaryColor3fvEXT (const GLfloat *v) void glSecondaryColor3iEXT (GLint red, GLint green, GLint blue) void glSecondaryColor3ivEXT (const GLint *v) void glSecondaryColor3sEXT (GLshort red, GLshort green, GLshort blue) void glSecondaryColor3svEXT (const GLshort *v) void glSecondaryColor3ubEXT (GLubyte red, GLubyte green, GLubyte blue) void glSecondaryColor3ubvEXT (const GLubyte *v) void glSecondaryColor3uiEXT (GLuint red, GLuint green, GLuint blue) void glSecondaryColor3uivEXT (const GLuint *v) void glSecondaryColor3usEXT (GLushort red, GLushort green, GLushort blue) void glSecondaryColor3usvEXT (const GLushort *v) void glSecondaryColorPointerEXT (GLint size, GLenum type, GLsizei stride, const void *pointer) nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_1_50000664000175000017500000000555215135005167021640 0ustar alastairalastairGL_VERSION_1_5 http://www.opengl.org/documentation/specs/version1.5/glspec15.pdf GL_BUFFER_SIZE 0x8764 GL_BUFFER_USAGE 0x8765 GL_QUERY_COUNTER_BITS 0x8864 GL_CURRENT_QUERY 0x8865 GL_QUERY_RESULT 0x8866 GL_QUERY_RESULT_AVAILABLE 0x8867 GL_ARRAY_BUFFER 0x8892 GL_ELEMENT_ARRAY_BUFFER 0x8893 GL_ARRAY_BUFFER_BINDING 0x8894 GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895 GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896 GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897 GL_COLOR_ARRAY_BUFFER_BINDING 0x8898 GL_INDEX_ARRAY_BUFFER_BINDING 0x8899 GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F GL_READ_ONLY 0x88B8 GL_WRITE_ONLY 0x88B9 GL_READ_WRITE 0x88BA GL_BUFFER_ACCESS 0x88BB GL_BUFFER_MAPPED 0x88BC GL_BUFFER_MAP_POINTER 0x88BD GL_STREAM_DRAW 0x88E0 GL_STREAM_READ 0x88E1 GL_STREAM_COPY 0x88E2 GL_STATIC_DRAW 0x88E4 GL_STATIC_READ 0x88E5 GL_STATIC_COPY 0x88E6 GL_DYNAMIC_DRAW 0x88E8 GL_DYNAMIC_READ 0x88E9 GL_DYNAMIC_COPY 0x88EA GL_SAMPLES_PASSED 0x8914 GL_FOG_COORD_SRC GL_FOG_COORDINATE_SOURCE GL_FOG_COORD GL_FOG_COORDINATE GL_CURRENT_FOG_COORD GL_CURRENT_FOG_COORDINATE GL_FOG_COORD_ARRAY_TYPE GL_FOG_COORDINATE_ARRAY_TYPE GL_FOG_COORD_ARRAY_STRIDE GL_FOG_COORDINATE_ARRAY_STRIDE GL_FOG_COORD_ARRAY_POINTER GL_FOG_COORDINATE_ARRAY_POINTER GL_FOG_COORD_ARRAY GL_FOG_COORDINATE_ARRAY GL_FOG_COORD_ARRAY_BUFFER_BINDING GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING GL_SRC0_RGB GL_SOURCE0_RGB GL_SRC1_RGB GL_SOURCE1_RGB GL_SRC2_RGB GL_SOURCE2_RGB GL_SRC0_ALPHA GL_SOURCE0_ALPHA GL_SRC1_ALPHA GL_SOURCE1_ALPHA GL_SRC2_ALPHA GL_SOURCE2_ALPHA void glGenQueries (GLsizei n, GLuint* ids) void glDeleteQueries (GLsizei n, const GLuint* ids) GLboolean glIsQuery (GLuint id) void glBeginQuery (GLenum target, GLuint id) void glEndQuery (GLenum target) void glGetQueryiv (GLenum target, GLenum pname, GLint* params) void glGetQueryObjectiv (GLuint id, GLenum pname, GLint* params) void glGetQueryObjectuiv (GLuint id, GLenum pname, GLuint* params) void glBindBuffer (GLenum target, GLuint buffer) void glDeleteBuffers (GLsizei n, const GLuint* buffers) void glGenBuffers (GLsizei n, GLuint* buffers) GLboolean glIsBuffer (GLuint buffer) void glBufferData (GLenum target, GLsizeiptr size, const void* data, GLenum usage) void glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const void* data) void glGetBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, void* data) void* glMapBuffer (GLenum target, GLenum access) GLboolean glUnmapBuffer (GLenum target) void glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params) void glGetBufferPointerv (GLenum target, GLenum pname, void** params) typedef ptrdiff_t GLsizeiptr typedef ptrdiff_t GLintptr nigels-com-glew-285c35d/auto/core/gl/GL_EXT_memory_object0000664000175000017500000000537615135005167023431 0ustar alastairalastairGL_EXT_memory_object http://www.opengl.org/registry/specs/EXT/external_objects.txt GL_EXT_memory_object GL_UUID_SIZE_EXT 16 GL_TEXTURE_TILING_EXT 0x9580 GL_DEDICATED_MEMORY_OBJECT_EXT 0x9581 GL_NUM_TILING_TYPES_EXT 0x9582 GL_TILING_TYPES_EXT 0x9583 GL_OPTIMAL_TILING_EXT 0x9584 GL_LINEAR_TILING_EXT 0x9585 GL_NUM_DEVICE_UUIDS_EXT 0x9596 GL_DEVICE_UUID_EXT 0x9597 GL_DRIVER_UUID_EXT 0x9598 GL_PROTECTED_MEMORY_OBJECT_EXT 0x959B void glBufferStorageMemEXT (GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset) void glCreateMemoryObjectsEXT (GLsizei n, GLuint* memoryObjects) void glDeleteMemoryObjectsEXT (GLsizei n, const GLuint* memoryObjects) void glGetMemoryObjectParameterivEXT (GLuint memoryObject, GLenum pname, GLint* params) void glGetUnsignedBytei_vEXT (GLenum target, GLuint index, GLubyte* data) void glGetUnsignedBytevEXT (GLenum pname, GLubyte* data) GLboolean glIsMemoryObjectEXT (GLuint memoryObject) void glMemoryObjectParameterivEXT (GLuint memoryObject, GLenum pname, const GLint* params) void glNamedBufferStorageMemEXT (GLuint buffer, GLsizeiptr size, GLuint memory, GLuint64 offset) void glTexStorageMem1DEXT (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset) void glTexStorageMem2DEXT (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset) void glTexStorageMem2DMultisampleEXT (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset) void glTexStorageMem3DEXT (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset) void glTexStorageMem3DMultisampleEXT (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset) void glTextureStorageMem1DEXT (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset) void glTextureStorageMem2DEXT (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset) void glTextureStorageMem2DMultisampleEXT (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset) void glTextureStorageMem3DEXT (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset) void glTextureStorageMem3DMultisampleEXT (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_texture_cube_map0000664000175000017500000000111615135005167024112 0ustar alastairalastairGL_EXT_texture_cube_map http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_texture_cube_map.txt GL_EXT_texture_cube_map GL_NORMAL_MAP_EXT 0x8511 GL_REFLECTION_MAP_EXT 0x8512 GL_TEXTURE_CUBE_MAP_EXT 0x8513 GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514 GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515 GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516 GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517 GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518 GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519 GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C nigels-com-glew-285c35d/auto/core/gl/GL_ATIX_point_sprites0000664000175000017500000000047715135005167023577 0ustar alastairalastairGL_ATIX_point_sprites http://www.ati.com/developer/atiopengl.pdf GL_ATIX_point_sprites GL_TEXTURE_POINT_MODE_ATIX 0x60B0 GL_TEXTURE_POINT_ONE_COORD_ATIX 0x60B1 GL_TEXTURE_POINT_SPRITE_ATIX 0x60B2 GL_POINT_SPRITE_CULL_MODE_ATIX 0x60B3 GL_POINT_SPRITE_CULL_CENTER_ATIX 0x60B4 GL_POINT_SPRITE_CULL_CLIP_ATIX 0x60B5 nigels-com-glew-285c35d/auto/core/gl/GL_ATI_envmap_bumpmap0000664000175000017500000000111515135005167023542 0ustar alastairalastairGL_ATI_envmap_bumpmap http://oss.sgi.com/projects/ogl-sample/registry/ATI/envmap_bumpmap.txt GL_ATI_envmap_bumpmap GL_BUMP_ROT_MATRIX_ATI 0x8775 GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776 GL_BUMP_NUM_TEX_UNITS_ATI 0x8777 GL_BUMP_TEX_UNITS_ATI 0x8778 GL_DUDV_ATI 0x8779 GL_DU8DV8_ATI 0x877A GL_BUMP_ENVMAP_ATI 0x877B GL_BUMP_TARGET_ATI 0x877C void glTexBumpParameterivATI (GLenum pname, GLint *param) void glTexBumpParameterfvATI (GLenum pname, GLfloat *param) void glGetTexBumpParameterivATI (GLenum pname, GLint *param) void glGetTexBumpParameterfvATI (GLenum pname, GLfloat *param) nigels-com-glew-285c35d/auto/core/gl/EGL_VERSION_1_20000664000175000017500000000223415135005167021734 0ustar alastairalastairEGL_VERSION_1_2 https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_OPENGL_ES_BIT 0x0001 EGL_OPENVG_BIT 0x0002 EGL_LUMINANCE_SIZE 0x303D EGL_ALPHA_MASK_SIZE 0x303E EGL_COLOR_BUFFER_TYPE 0x303F EGL_RENDERABLE_TYPE 0x3040 EGL_SINGLE_BUFFER 0x3085 EGL_RENDER_BUFFER 0x3086 EGL_COLORSPACE 0x3087 EGL_ALPHA_FORMAT 0x3088 EGL_COLORSPACE_sRGB 0x3089 EGL_COLORSPACE_LINEAR 0x308A EGL_ALPHA_FORMAT_NONPRE 0x308B EGL_ALPHA_FORMAT_PRE 0x308C EGL_CLIENT_APIS 0x308D EGL_RGB_BUFFER 0x308E EGL_LUMINANCE_BUFFER 0x308F EGL_HORIZONTAL_RESOLUTION 0x3090 EGL_VERTICAL_RESOLUTION 0x3091 EGL_PIXEL_ASPECT_RATIO 0x3092 EGL_SWAP_BEHAVIOR 0x3093 EGL_BUFFER_PRESERVED 0x3094 EGL_BUFFER_DESTROYED 0x3095 EGL_OPENVG_IMAGE 0x3096 EGL_CONTEXT_CLIENT_TYPE 0x3097 EGL_OPENGL_ES_API 0x30A0 EGL_OPENVG_API 0x30A1 EGL_DISPLAY_SCALING 10000 EGL_UNKNOWN EGL_CAST(EGLint,-1) EGLBoolean eglBindAPI (EGLenum api) EGLSurface eglCreatePbufferFromClientBuffer (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint * attrib_list) EGLenum eglQueryAPI ( void ) EGLBoolean eglReleaseThread ( void ) EGLBoolean eglWaitClient ( void ) nigels-com-glew-285c35d/auto/core/gl/GL_NV_fragment_program40000664000175000017500000000017215135005167024061 0ustar alastairalastairGL_NV_fragment_program4 http://developer.download.nvidia.com/opengl/specs/GL_NV_fragment_program4.txt GL_NV_gpu_program4 nigels-com-glew-285c35d/auto/core/gl/GL_NV_tessellation_program50000664000175000017500000000051615135005167024767 0ustar alastairalastairGL_NV_tessellation_program5 http://www.opengl.org/registry/specs/NV/tessellation_program5.txt GL_NV_gpu_program5 GL_MAX_PROGRAM_PATCH_ATTRIBS_NV 0x86D8 GL_TESS_CONTROL_PROGRAM_NV 0x891E GL_TESS_EVALUATION_PROGRAM_NV 0x891F GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV 0x8C74 GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV 0x8C75 nigels-com-glew-285c35d/auto/core/gl/GLX_VERSION_1_20000664000175000017500000000017715135005167021763 0ustar alastairalastairGLX_VERSION_1_2 http://www.opengl.org/documentation/specs/glx/glx1.2.ps GLX_VERSION_1_2 Display* glXGetCurrentDisplay (void) nigels-com-glew-285c35d/auto/core/gl/GL_ARB_robustness0000664000175000017500000000426215135005167022737 0ustar alastairalastairGL_ARB_robustness http://www.opengl.org/registry/specs/ARB/robustness.txt GL_ARB_robustness GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB 0x00000004 GL_LOSE_CONTEXT_ON_RESET_ARB 0x8252 GL_GUILTY_CONTEXT_RESET_ARB 0x8253 GL_INNOCENT_CONTEXT_RESET_ARB 0x8254 GL_UNKNOWN_CONTEXT_RESET_ARB 0x8255 GL_RESET_NOTIFICATION_STRATEGY_ARB 0x8256 GL_NO_RESET_NOTIFICATION_ARB 0x8261 GLenum glGetGraphicsResetStatusARB (void) void glGetnColorTableARB (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* table) void glGetnCompressedTexImageARB (GLenum target, GLint lod, GLsizei bufSize, void* img) void glGetnConvolutionFilterARB (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* image) void glGetnHistogramARB (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values) void glGetnMapdvARB (GLenum target, GLenum query, GLsizei bufSize, GLdouble* v) void glGetnMapfvARB (GLenum target, GLenum query, GLsizei bufSize, GLfloat* v) void glGetnMapivARB (GLenum target, GLenum query, GLsizei bufSize, GLint* v) void glGetnMinmaxARB (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values) void glGetnPixelMapfvARB (GLenum map, GLsizei bufSize, GLfloat* values) void glGetnPixelMapuivARB (GLenum map, GLsizei bufSize, GLuint* values) void glGetnPixelMapusvARB (GLenum map, GLsizei bufSize, GLushort* values) void glGetnPolygonStippleARB (GLsizei bufSize, GLubyte* pattern) void glGetnSeparableFilterARB (GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, void* row, GLsizei columnBufSize, void*column, void*span) void glGetnTexImageARB (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void* img) void glGetnUniformdvARB (GLuint program, GLint location, GLsizei bufSize, GLdouble* params) void glGetnUniformfvARB (GLuint program, GLint location, GLsizei bufSize, GLfloat* params) void glGetnUniformivARB (GLuint program, GLint location, GLsizei bufSize, GLint* params) void glGetnUniformuivARB (GLuint program, GLint location, GLsizei bufSize, GLuint* params) void glReadnPixelsARB (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void* data) nigels-com-glew-285c35d/auto/core/gl/GL_NV_fragment_program_option0000664000175000017500000000021715135005167025365 0ustar alastairalastairGL_NV_fragment_program_option http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_fragment_program_option.txt GL_NV_fragment_program_option nigels-com-glew-285c35d/auto/core/gl/GLX_NV_vertex_array_range0000664000175000017500000000042115135005167024457 0ustar alastairalastairGLX_NV_vertex_array_range http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_array_range.txt GLX_NV_vertex_array_range void * glXAllocateMemoryNV (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority) void glXFreeMemoryNV (void *pointer) nigels-com-glew-285c35d/auto/core/gl/GL_ARB_matrix_palette0000664000175000017500000000144115135005167023546 0ustar alastairalastairGL_ARB_matrix_palette http://oss.sgi.com/projects/ogl-sample/registry/ARB/matrix_palette.txt GL_ARB_matrix_palette GL_MATRIX_PALETTE_ARB 0x8840 GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841 GL_MAX_PALETTE_MATRICES_ARB 0x8842 GL_CURRENT_PALETTE_MATRIX_ARB 0x8843 GL_MATRIX_INDEX_ARRAY_ARB 0x8844 GL_CURRENT_MATRIX_INDEX_ARB 0x8845 GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846 GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847 GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848 GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849 void glCurrentPaletteMatrixARB (GLint index) void glMatrixIndexPointerARB (GLint size, GLenum type, GLsizei stride, void *pointer) void glMatrixIndexubvARB (GLint size, GLubyte *indices) void glMatrixIndexusvARB (GLint size, GLushort *indices) void glMatrixIndexuivARB (GLint size, GLuint *indices) nigels-com-glew-285c35d/auto/core/gl/GL_ATI_shader_texture_lod0000664000175000017500000000006615135005167024423 0ustar alastairalastairGL_ATI_shader_texture_lod GL_ATI_shader_texture_lod nigels-com-glew-285c35d/auto/core/gl/GL_EXT_packed_float0000664000175000017500000000034315135005167023174 0ustar alastairalastairGL_EXT_packed_float http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt GL_EXT_packed_float GL_R11F_G11F_B10F_EXT 0x8C3A GL_UNSIGNED_INT_10F_11F_11F_REV_EXT 0x8C3B GL_RGBA_SIGNED_COMPONENTS_EXT 0x8C3C nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_4_50000664000175000017500000000072615135005167021641 0ustar alastairalastairGL_VERSION_4_5 https://www.opengl.org/registry/doc/glspec45.compatibility.pdf GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT 0x00000004 GLenum glGetGraphicsResetStatus (void) void glGetnTexImage (GLenum tex, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid *pixels) void glGetnCompressedTexImage (GLenum target, GLint lod, GLsizei bufSize, GLvoid *pixels) void glGetnUniformdv (GLuint program, GLint location, GLsizei bufSize, GLdouble *params) nigels-com-glew-285c35d/auto/core/gl/GL_NV_transform_feedback0000664000175000017500000000374015135005167024266 0ustar alastairalastairGL_NV_transform_feedback http://developer.download.nvidia.com/opengl/specs/GL_NV_transform_feedback.txt GL_NV_transform_feedback GL_BACK_PRIMARY_COLOR_NV 0x8C77 GL_BACK_SECONDARY_COLOR_NV 0x8C78 GL_TEXTURE_COORD_NV 0x8C79 GL_CLIP_DISTANCE_NV 0x8C7A GL_VERTEX_ID_NV 0x8C7B GL_PRIMITIVE_ID_NV 0x8C7C GL_GENERIC_ATTRIB_NV 0x8C7D GL_TRANSFORM_FEEDBACK_ATTRIBS_NV 0x8C7E GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV 0x8C7F GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV 0x8C80 GL_ACTIVE_VARYINGS_NV 0x8C81 GL_ACTIVE_VARYING_MAX_LENGTH_NV 0x8C82 GL_TRANSFORM_FEEDBACK_VARYINGS_NV 0x8C83 GL_TRANSFORM_FEEDBACK_BUFFER_START_NV 0x8C84 GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV 0x8C85 GL_TRANSFORM_FEEDBACK_RECORD_NV 0x8C86 GL_PRIMITIVES_GENERATED_NV 0x8C87 GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV 0x8C88 GL_RASTERIZER_DISCARD_NV 0x8C89 GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV 0x8C8A GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV 0x8C8B GL_INTERLEAVED_ATTRIBS_NV 0x8C8C GL_SEPARATE_ATTRIBS_NV 0x8C8D GL_TRANSFORM_FEEDBACK_BUFFER_NV 0x8C8E GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV 0x8C8F void glBeginTransformFeedbackNV (GLenum primitiveMode) void glEndTransformFeedbackNV (void) void glTransformFeedbackAttribsNV (GLuint count, const GLint *attribs, GLenum bufferMode) void glBindBufferRangeNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) void glBindBufferOffsetNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset) void glBindBufferBaseNV (GLenum target, GLuint index, GLuint buffer) void glTransformFeedbackVaryingsNV (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode) void glActiveVaryingNV (GLuint program, const GLchar *name) GLint glGetVaryingLocationNV (GLuint program, const GLchar *name) void glGetActiveVaryingNV (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) void glGetTransformFeedbackVaryingNV (GLuint program, GLuint index, GLint *location) nigels-com-glew-285c35d/auto/core/gl/GL_NV_fragment_program20000664000175000017500000000047315135005167024063 0ustar alastairalastairGL_NV_fragment_program2 http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_fragment_program2.txt GL_NV_fragment_program2 GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4 GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5 GL_MAX_PROGRAM_IF_DEPTH_NV 0x88F6 GL_MAX_PROGRAM_LOOP_DEPTH_NV 0x88F7 GL_MAX_PROGRAM_LOOP_COUNT_NV 0x88F8 nigels-com-glew-285c35d/auto/core/gl/GL_EXT_draw_instanced0000664000175000017500000000051015135005167023541 0ustar alastairalastairGL_EXT_draw_instanced http://developer.download.nvidia.com/opengl/specs/GL_EXT_draw_instanced.txt GL_EXT_draw_instanced void glDrawArraysInstancedEXT (GLenum mode, GLint start, GLsizei count, GLsizei primcount) void glDrawElementsInstancedEXT (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount) nigels-com-glew-285c35d/auto/core/gl/GL_ARB_vertex_blend0000664000175000017500000000342615135005167023212 0ustar alastairalastairGL_ARB_vertex_blend http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_blend.txt GL_ARB_vertex_blend GL_MAX_VERTEX_UNITS_ARB 0x86A4 GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5 GL_WEIGHT_SUM_UNITY_ARB 0x86A6 GL_VERTEX_BLEND_ARB 0x86A7 GL_CURRENT_WEIGHT_ARB 0x86A8 GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9 GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC GL_WEIGHT_ARRAY_ARB 0x86AD GL_MODELVIEW0_ARB 0x1700 GL_MODELVIEW1_ARB 0x850A GL_MODELVIEW2_ARB 0x8722 GL_MODELVIEW3_ARB 0x8723 GL_MODELVIEW4_ARB 0x8724 GL_MODELVIEW5_ARB 0x8725 GL_MODELVIEW6_ARB 0x8726 GL_MODELVIEW7_ARB 0x8727 GL_MODELVIEW8_ARB 0x8728 GL_MODELVIEW9_ARB 0x8729 GL_MODELVIEW10_ARB 0x872A GL_MODELVIEW11_ARB 0x872B GL_MODELVIEW12_ARB 0x872C GL_MODELVIEW13_ARB 0x872D GL_MODELVIEW14_ARB 0x872E GL_MODELVIEW15_ARB 0x872F GL_MODELVIEW16_ARB 0x8730 GL_MODELVIEW17_ARB 0x8731 GL_MODELVIEW18_ARB 0x8732 GL_MODELVIEW19_ARB 0x8733 GL_MODELVIEW20_ARB 0x8734 GL_MODELVIEW21_ARB 0x8735 GL_MODELVIEW22_ARB 0x8736 GL_MODELVIEW23_ARB 0x8737 GL_MODELVIEW24_ARB 0x8738 GL_MODELVIEW25_ARB 0x8739 GL_MODELVIEW26_ARB 0x873A GL_MODELVIEW27_ARB 0x873B GL_MODELVIEW28_ARB 0x873C GL_MODELVIEW29_ARB 0x873D GL_MODELVIEW30_ARB 0x873E GL_MODELVIEW31_ARB 0x873F void glWeightbvARB (GLint size, GLbyte *weights) void glWeightsvARB (GLint size, GLshort *weights) void glWeightivARB (GLint size, GLint *weights) void glWeightfvARB (GLint size, GLfloat *weights) void glWeightdvARB (GLint size, GLdouble *weights) void glWeightubvARB (GLint size, GLubyte *weights) void glWeightusvARB (GLint size, GLushort *weights) void glWeightuivARB (GLint size, GLuint *weights) void glWeightPointerARB (GLint size, GLenum type, GLsizei stride, void *pointer) void glVertexBlendARB (GLint count) nigels-com-glew-285c35d/auto/core/gl/GL_SUN_read_video_pixels0000664000175000017500000000037715135005167024261 0ustar alastairalastairGL_SUN_read_video_pixels http://wwws.sun.com/software/graphics/opengl/extensions/gl_sun_read_video_pixels.txt GL_SUN_read_video_pixels void glReadVideoPixelsSUN (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels) nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_3_00000664000175000017500000001574115135005167021636 0ustar alastairalastairGL_VERSION_3_0 https://www.opengl.org/registry/doc/glspec30.20080923.pdf GL_ARB_framebuffer_object GL_ARB_map_buffer_range GL_ARB_uniform_buffer_object GL_ARB_vertex_array_object GL_COMPARE_REF_TO_TEXTURE GL_COMPARE_R_TO_TEXTURE_ARB GL_CLIP_DISTANCE0 GL_CLIP_PLANE0 GL_CLIP_DISTANCE1 GL_CLIP_PLANE1 GL_CLIP_DISTANCE2 GL_CLIP_PLANE2 GL_CLIP_DISTANCE3 GL_CLIP_PLANE3 GL_CLIP_DISTANCE4 GL_CLIP_PLANE4 GL_CLIP_DISTANCE5 GL_CLIP_PLANE5 GL_MAX_CLIP_DISTANCES GL_MAX_CLIP_PLANES GL_MAJOR_VERSION 0x821B GL_MINOR_VERSION 0x821C GL_NUM_EXTENSIONS 0x821D GL_CONTEXT_FLAGS 0x821E GL_DEPTH_BUFFER 0x8223 GL_STENCIL_BUFFER 0x8224 GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x0001 GL_RGBA32F 0x8814 GL_RGB32F 0x8815 GL_RGBA16F 0x881A GL_RGB16F 0x881B GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904 GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905 GL_CLAMP_VERTEX_COLOR 0x891A GL_CLAMP_FRAGMENT_COLOR 0x891B GL_CLAMP_READ_COLOR 0x891C GL_FIXED_ONLY 0x891D GL_MAX_VARYING_COMPONENTS GL_MAX_VARYING_FLOATS GL_TEXTURE_RED_TYPE 0x8C10 GL_TEXTURE_GREEN_TYPE 0x8C11 GL_TEXTURE_BLUE_TYPE 0x8C12 GL_TEXTURE_ALPHA_TYPE 0x8C13 GL_TEXTURE_LUMINANCE_TYPE 0x8C14 GL_TEXTURE_INTENSITY_TYPE 0x8C15 GL_TEXTURE_DEPTH_TYPE 0x8C16 GL_TEXTURE_1D_ARRAY 0x8C18 GL_PROXY_TEXTURE_1D_ARRAY 0x8C19 GL_TEXTURE_2D_ARRAY 0x8C1A GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D GL_R11F_G11F_B10F 0x8C3A GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B GL_RGB9_E5 0x8C3D GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E GL_TEXTURE_SHARED_SIZE 0x8C3F GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76 GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80 GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83 GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84 GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85 GL_PRIMITIVES_GENERATED 0x8C87 GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88 GL_RASTERIZER_DISCARD 0x8C89 GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B GL_INTERLEAVED_ATTRIBS 0x8C8C GL_SEPARATE_ATTRIBS 0x8C8D GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F GL_RGBA32UI 0x8D70 GL_RGB32UI 0x8D71 GL_RGBA16UI 0x8D76 GL_RGB16UI 0x8D77 GL_RGBA8UI 0x8D7C GL_RGB8UI 0x8D7D GL_RGBA32I 0x8D82 GL_RGB32I 0x8D83 GL_RGBA16I 0x8D88 GL_RGB16I 0x8D89 GL_RGBA8I 0x8D8E GL_RGB8I 0x8D8F GL_RED_INTEGER 0x8D94 GL_GREEN_INTEGER 0x8D95 GL_BLUE_INTEGER 0x8D96 GL_ALPHA_INTEGER 0x8D97 GL_RGB_INTEGER 0x8D98 GL_RGBA_INTEGER 0x8D99 GL_BGR_INTEGER 0x8D9A GL_BGRA_INTEGER 0x8D9B GL_SAMPLER_1D_ARRAY 0x8DC0 GL_SAMPLER_2D_ARRAY 0x8DC1 GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3 GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4 GL_SAMPLER_CUBE_SHADOW 0x8DC5 GL_UNSIGNED_INT_VEC2 0x8DC6 GL_UNSIGNED_INT_VEC3 0x8DC7 GL_UNSIGNED_INT_VEC4 0x8DC8 GL_INT_SAMPLER_1D 0x8DC9 GL_INT_SAMPLER_2D 0x8DCA GL_INT_SAMPLER_3D 0x8DCB GL_INT_SAMPLER_CUBE 0x8DCC GL_INT_SAMPLER_1D_ARRAY 0x8DCE GL_INT_SAMPLER_2D_ARRAY 0x8DCF GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1 GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2 GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3 GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4 GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6 GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7 GL_QUERY_WAIT 0x8E13 GL_QUERY_NO_WAIT 0x8E14 GL_QUERY_BY_REGION_WAIT 0x8E15 GL_QUERY_BY_REGION_NO_WAIT 0x8E16 void glColorMaski (GLuint buf, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) void glGetBooleani_v (GLenum pname, GLuint index, GLboolean* data) void glEnablei (GLenum cap, GLuint index) void glDisablei (GLenum cap, GLuint index) GLboolean glIsEnabledi (GLenum cap, GLuint index) void glBeginTransformFeedback (GLenum primitiveMode) void glEndTransformFeedback (void) void glTransformFeedbackVaryings (GLuint program, GLsizei count, const GLchar *const* varyings, GLenum bufferMode) void glGetTransformFeedbackVarying (GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name) void glClampColor (GLenum target, GLenum clamp) void glBeginConditionalRender (GLuint id, GLenum mode) void glEndConditionalRender (void) void glVertexAttribI1i (GLuint index, GLint v0) void glVertexAttribI2i (GLuint index, GLint v0, GLint v1) void glVertexAttribI3i (GLuint index, GLint v0, GLint v1, GLint v2) void glVertexAttribI4i (GLuint index, GLint v0, GLint v1, GLint v2, GLint v3) void glVertexAttribI1ui (GLuint index, GLuint v0) void glVertexAttribI2ui (GLuint index, GLuint v0, GLuint v1) void glVertexAttribI3ui (GLuint index, GLuint v0, GLuint v1, GLuint v2) void glVertexAttribI4ui (GLuint index, GLuint v0, GLuint v1, GLuint v2, GLuint v3) void glVertexAttribI1iv (GLuint index, const GLint* v0) void glVertexAttribI2iv (GLuint index, const GLint* v0) void glVertexAttribI3iv (GLuint index, const GLint* v0) void glVertexAttribI4iv (GLuint index, const GLint* v0) void glVertexAttribI1uiv (GLuint index, const GLuint* v0) void glVertexAttribI2uiv (GLuint index, const GLuint* v0) void glVertexAttribI3uiv (GLuint index, const GLuint* v0) void glVertexAttribI4uiv (GLuint index, const GLuint* v0) void glVertexAttribI4bv (GLuint index, const GLbyte* v0) void glVertexAttribI4sv (GLuint index, const GLshort* v0) void glVertexAttribI4ubv (GLuint index, const GLubyte* v0) void glVertexAttribI4usv (GLuint index, const GLushort* v0) void glVertexAttribIPointer (GLuint index, GLint size, GLenum type, GLsizei stride, const void*pointer) void glGetVertexAttribIiv (GLuint index, GLenum pname, GLint* params) void glGetVertexAttribIuiv (GLuint index, GLenum pname, GLuint* params) void glGetUniformuiv (GLuint program, GLint location, GLuint* params) void glBindFragDataLocation (GLuint program, GLuint colorNumber, const GLchar* name) GLint glGetFragDataLocation (GLuint program, const GLchar* name) void glUniform1ui (GLint location, GLuint v0) void glUniform2ui (GLint location, GLuint v0, GLuint v1) void glUniform3ui (GLint location, GLuint v0, GLuint v1, GLuint v2) void glUniform4ui (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) void glUniform1uiv (GLint location, GLsizei count, const GLuint* value) void glUniform2uiv (GLint location, GLsizei count, const GLuint* value) void glUniform3uiv (GLint location, GLsizei count, const GLuint* value) void glUniform4uiv (GLint location, GLsizei count, const GLuint* value) void glTexParameterIiv (GLenum target, GLenum pname, const GLint* params) void glTexParameterIuiv (GLenum target, GLenum pname, const GLuint* params) void glGetTexParameterIiv (GLenum target, GLenum pname, GLint* params) void glGetTexParameterIuiv (GLenum target, GLenum pname, GLuint* params) void glClearBufferiv (GLenum buffer, GLint drawBuffer, const GLint* value) void glClearBufferuiv (GLenum buffer, GLint drawBuffer, const GLuint* value) void glClearBufferfv (GLenum buffer, GLint drawBuffer, const GLfloat* value) void glClearBufferfi (GLenum buffer, GLint drawBuffer, GLfloat depth, GLint stencil) const GLubyte* glGetStringi (GLenum name, GLuint index) nigels-com-glew-285c35d/auto/core/gl/GL_NV_vertex_program40000664000175000017500000000024015135005167023567 0ustar alastairalastairGL_NV_vertex_program4 http://developer.download.nvidia.com/opengl/specs/GL_NV_vertex_program4.txt GL_NV_gpu_program4 GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV 0x88FD nigels-com-glew-285c35d/auto/core/gl/EGL_VERSION_1_10000664000175000017500000000142715135005167021736 0ustar alastairalastairEGL_VERSION_1_1 https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf EGL_CONTEXT_LOST 0x300E EGL_BIND_TO_TEXTURE_RGB 0x3039 EGL_BIND_TO_TEXTURE_RGBA 0x303A EGL_MIN_SWAP_INTERVAL 0x303B EGL_MAX_SWAP_INTERVAL 0x303C EGL_NO_TEXTURE 0x305C EGL_TEXTURE_RGB 0x305D EGL_TEXTURE_RGBA 0x305E EGL_TEXTURE_2D 0x305F EGL_TEXTURE_FORMAT 0x3080 EGL_TEXTURE_TARGET 0x3081 EGL_MIPMAP_TEXTURE 0x3082 EGL_MIPMAP_LEVEL 0x3083 EGL_BACK_BUFFER 0x3084 EGLBoolean eglBindTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer) EGLBoolean eglReleaseTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer) EGLBoolean eglSurfaceAttrib (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value) EGLBoolean eglSwapInterval (EGLDisplay dpy, EGLint interval) nigels-com-glew-285c35d/auto/core/gl/GLX_VERSION_1_40000664000175000017500000000031715135005167021761 0ustar alastairalastairGLX_VERSION_1_4 http://www.opengl.org/documentation/specs/glx/glx1.4.pdf GLX_VERSION_1_4 GLX_SAMPLE_BUFFERS 100000 GLX_SAMPLES 100001 extern void ( * glXGetProcAddress (const GLubyte *procName)) (void); nigels-com-glew-285c35d/auto/core/gl/GL_ATI_pn_triangles0000664000175000017500000000112415135005167023220 0ustar alastairalastairGL_ATI_pn_triangles http://www.opengl.org/registry/specs/ATI/pn_triangles.txt GL_ATI_pn_triangles GL_PN_TRIANGLES_ATI 0x87F0 GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1 GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2 GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3 GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4 GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5 GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6 GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7 GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8 void glPNTrianglesiATI (GLenum pname, GLint param) void glPNTrianglesfATI (GLenum pname, GLfloat param) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_memory_object_fd0000664000175000017500000000035515135005167024072 0ustar alastairalastairGL_EXT_memory_object_fd http://www.opengl.org/registry/specs/EXT/external_objects_fd.txt GL_EXT_memory_object_fd GL_HANDLE_TYPE_OPAQUE_FD_EXT 0x9586 void glImportMemoryFdEXT (GLuint memory, GLuint64 size, GLenum handleType, GLint fd) nigels-com-glew-285c35d/auto/core/gl/GL_ARB_separate_shader_objects0000664000175000017500000001415415135005167025374 0ustar alastairalastairGL_ARB_separate_shader_objects http://www.opengl.org/registry/specs/ARB/separate_shader_objects.txt GL_ARB_separate_shader_objects GL_VERTEX_SHADER_BIT 0x00000001 GL_FRAGMENT_SHADER_BIT 0x00000002 GL_GEOMETRY_SHADER_BIT 0x00000004 GL_TESS_CONTROL_SHADER_BIT 0x00000008 GL_TESS_EVALUATION_SHADER_BIT 0x00000010 GL_PROGRAM_SEPARABLE 0x8258 GL_ACTIVE_PROGRAM 0x8259 GL_PROGRAM_PIPELINE_BINDING 0x825A GL_ALL_SHADER_BITS 0xFFFFFFFF void glActiveShaderProgram (GLuint pipeline, GLuint program) void glBindProgramPipeline (GLuint pipeline) GLuint glCreateShaderProgramv (GLenum type, GLsizei count, const GLchar * const * strings) void glDeleteProgramPipelines (GLsizei n, const GLuint* pipelines) void glGenProgramPipelines (GLsizei n, GLuint* pipelines) void glGetProgramPipelineInfoLog (GLuint pipeline, GLsizei bufSize, GLsizei* length, GLchar *infoLog) void glGetProgramPipelineiv (GLuint pipeline, GLenum pname, GLint* params) GLboolean glIsProgramPipeline (GLuint pipeline) void glProgramUniform1d (GLuint program, GLint location, GLdouble x) void glProgramUniform1dv (GLuint program, GLint location, GLsizei count, const GLdouble* value) void glProgramUniform1f (GLuint program, GLint location, GLfloat x) void glProgramUniform1fv (GLuint program, GLint location, GLsizei count, const GLfloat* value) void glProgramUniform1i (GLuint program, GLint location, GLint x) void glProgramUniform1iv (GLuint program, GLint location, GLsizei count, const GLint* value) void glProgramUniform1ui (GLuint program, GLint location, GLuint x) void glProgramUniform1uiv (GLuint program, GLint location, GLsizei count, const GLuint* value) void glProgramUniform2d (GLuint program, GLint location, GLdouble x, GLdouble y) void glProgramUniform2dv (GLuint program, GLint location, GLsizei count, const GLdouble* value) void glProgramUniform2f (GLuint program, GLint location, GLfloat x, GLfloat y) void glProgramUniform2fv (GLuint program, GLint location, GLsizei count, const GLfloat* value) void glProgramUniform2i (GLuint program, GLint location, GLint x, GLint y) void glProgramUniform2iv (GLuint program, GLint location, GLsizei count, const GLint* value) void glProgramUniform2ui (GLuint program, GLint location, GLuint x, GLuint y) void glProgramUniform2uiv (GLuint program, GLint location, GLsizei count, const GLuint* value) void glProgramUniform3d (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z) void glProgramUniform3dv (GLuint program, GLint location, GLsizei count, const GLdouble* value) void glProgramUniform3f (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z) void glProgramUniform3fv (GLuint program, GLint location, GLsizei count, const GLfloat* value) void glProgramUniform3i (GLuint program, GLint location, GLint x, GLint y, GLint z) void glProgramUniform3iv (GLuint program, GLint location, GLsizei count, const GLint* value) void glProgramUniform3ui (GLuint program, GLint location, GLuint x, GLuint y, GLuint z) void glProgramUniform3uiv (GLuint program, GLint location, GLsizei count, const GLuint* value) void glProgramUniform4d (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w) void glProgramUniform4dv (GLuint program, GLint location, GLsizei count, const GLdouble* value) void glProgramUniform4f (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) void glProgramUniform4fv (GLuint program, GLint location, GLsizei count, const GLfloat* value) void glProgramUniform4i (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w) void glProgramUniform4iv (GLuint program, GLint location, GLsizei count, const GLint* value) void glProgramUniform4ui (GLuint program, GLint location, GLuint x, GLuint y, GLuint z, GLuint w) void glProgramUniform4uiv (GLuint program, GLint location, GLsizei count, const GLuint* value) void glProgramUniformMatrix2dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) void glProgramUniformMatrix2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glProgramUniformMatrix2x3dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) void glProgramUniformMatrix2x3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glProgramUniformMatrix2x4dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) void glProgramUniformMatrix2x4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glProgramUniformMatrix3dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) void glProgramUniformMatrix3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glProgramUniformMatrix3x2dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) void glProgramUniformMatrix3x2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glProgramUniformMatrix3x4dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) void glProgramUniformMatrix3x4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glProgramUniformMatrix4dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) void glProgramUniformMatrix4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glProgramUniformMatrix4x2dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) void glProgramUniformMatrix4x2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glProgramUniformMatrix4x3dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) void glProgramUniformMatrix4x3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) void glUseProgramStages (GLuint pipeline, GLbitfield stages, GLuint program) void glValidateProgramPipeline (GLuint pipeline) nigels-com-glew-285c35d/auto/core/gl/GLX_SUN_video_resize0000664000175000017500000000053615135005167023410 0ustar alastairalastairGLX_SUN_video_resize http://wwws.sun.com/software/graphics/opengl/extensions/glx_sun_video_resize.txt GLX_SUN_video_resize GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD GLX_VIDEO_RESIZE_SUN 0x8171 int glXVideoResizeSUN (Display* display, GLXDrawable window, float factor) int glXGetVideoResizeSUN (Display* display, GLXDrawable window, float* factor) nigels-com-glew-285c35d/auto/core/gl/GL_ATIX_texture_env_combine30000664000175000017500000000031115135005167025007 0ustar alastairalastairGL_ATIX_texture_env_combine3 http://www.ati.com/developer/atiopengl.pdf GL_ATIX_texture_env_combine3 GL_MODULATE_ADD_ATIX 0x8744 GL_MODULATE_SIGNED_ADD_ATIX 0x8745 GL_MODULATE_SUBTRACT_ATIX 0x8746 nigels-com-glew-285c35d/auto/core/gl/GL_NV_parameter_buffer_object0000664000175000017500000000135015135005167025301 0ustar alastairalastairGL_NV_parameter_buffer_object http://developer.download.nvidia.com/opengl/specs/GL_NV_parameter_buffer_object.txt GL_NV_parameter_buffer_object GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV 0x8DA2 GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV 0x8DA3 GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV 0x8DA4 GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV 0x8DA0 GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV 0x8DA1 void glProgramBufferParametersfvNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params) void glProgramBufferParametersIivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params) void glProgramBufferParametersIuivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params) nigels-com-glew-285c35d/auto/core/gl/GL_ATI_vertex_streams0000664000175000017500000000653715135005167023623 0ustar alastairalastairGL_ATI_vertex_streams http://www.opengl.org/registry/specs/ATI/vertex_streams.txt GL_ATI_vertex_streams GL_MAX_VERTEX_STREAMS_ATI 0x876B GL_VERTEX_SOURCE_ATI 0x876C GL_VERTEX_STREAM0_ATI 0x876D GL_VERTEX_STREAM1_ATI 0x876E GL_VERTEX_STREAM2_ATI 0x876F GL_VERTEX_STREAM3_ATI 0x8770 GL_VERTEX_STREAM4_ATI 0x8771 GL_VERTEX_STREAM5_ATI 0x8772 GL_VERTEX_STREAM6_ATI 0x8773 GL_VERTEX_STREAM7_ATI 0x8774 void glClientActiveVertexStreamATI (GLenum stream) void glVertexBlendEnviATI (GLenum pname, GLint param) void glVertexBlendEnvfATI (GLenum pname, GLfloat param) void glVertexStream1sATI (GLenum stream, GLshort x) void glVertexStream1svATI (GLenum stream, const GLshort *coords) void glVertexStream1iATI (GLenum stream, GLint x) void glVertexStream1ivATI (GLenum stream, const GLint *coords) void glVertexStream1fATI (GLenum stream, GLfloat x) void glVertexStream1fvATI (GLenum stream, const GLfloat *coords) void glVertexStream1dATI (GLenum stream, GLdouble x) void glVertexStream1dvATI (GLenum stream, const GLdouble *coords) void glVertexStream2sATI (GLenum stream, GLshort x, GLshort y) void glVertexStream2svATI (GLenum stream, const GLshort *coords) void glVertexStream2iATI (GLenum stream, GLint x, GLint y) void glVertexStream2ivATI (GLenum stream, const GLint *coords) void glVertexStream2fATI (GLenum stream, GLfloat x, GLfloat y) void glVertexStream2fvATI (GLenum stream, const GLfloat *coords) void glVertexStream2dATI (GLenum stream, GLdouble x, GLdouble y) void glVertexStream2dvATI (GLenum stream, const GLdouble *coords) void glVertexStream3sATI (GLenum stream, GLshort x, GLshort y, GLshort z) void glVertexStream3svATI (GLenum stream, const GLshort *coords) void glVertexStream3iATI (GLenum stream, GLint x, GLint y, GLint z) void glVertexStream3ivATI (GLenum stream, const GLint *coords) void glVertexStream3fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z) void glVertexStream3fvATI (GLenum stream, const GLfloat *coords) void glVertexStream3dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z) void glVertexStream3dvATI (GLenum stream, const GLdouble *coords) void glVertexStream4sATI (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w) void glVertexStream4svATI (GLenum stream, const GLshort *coords) void glVertexStream4iATI (GLenum stream, GLint x, GLint y, GLint z, GLint w) void glVertexStream4ivATI (GLenum stream, const GLint *coords) void glVertexStream4fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w) void glVertexStream4fvATI (GLenum stream, const GLfloat *coords) void glVertexStream4dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w) void glVertexStream4dvATI (GLenum stream, const GLdouble *coords) void glNormalStream3bATI (GLenum stream, GLbyte x, GLbyte y, GLbyte z) void glNormalStream3bvATI (GLenum stream, const GLbyte *coords) void glNormalStream3sATI (GLenum stream, GLshort x, GLshort y, GLshort z) void glNormalStream3svATI (GLenum stream, const GLshort *coords) void glNormalStream3iATI (GLenum stream, GLint x, GLint y, GLint z) void glNormalStream3ivATI (GLenum stream, const GLint *coords) void glNormalStream3fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z) void glNormalStream3fvATI (GLenum stream, const GLfloat *coords) void glNormalStream3dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z) void glNormalStream3dvATI (GLenum stream, const GLdouble *coords) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_texture_array0000664000175000017500000000102615135005167023455 0ustar alastairalastairGL_EXT_texture_array http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_array.txt GL_EXT_texture_array GL_TEXTURE_1D_ARRAY_EXT 0x8C18 GL_PROXY_TEXTURE_1D_ARRAY_EXT 0x8C19 GL_TEXTURE_2D_ARRAY_EXT 0x8C1A GL_PROXY_TEXTURE_2D_ARRAY_EXT 0x8C1B GL_TEXTURE_BINDING_1D_ARRAY_EXT 0x8C1C GL_TEXTURE_BINDING_2D_ARRAY_EXT 0x8C1D GL_MAX_ARRAY_TEXTURE_LAYERS_EXT 0x88FF GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT 0x884E void glFramebufferTextureLayerEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) nigels-com-glew-285c35d/auto/core/gl/GL_ATIX_vertex_shader_output_point_size0000664000175000017500000000023615135005167027414 0ustar alastairalastairGL_ATIX_vertex_shader_output_point_size http://www.ati.com/developer/atiopengl.pdf GL_ATIX_vertex_shader_output_point_size GL_OUTPUT_POINT_SIZE_ATIX 0x610E nigels-com-glew-285c35d/auto/core/gl/GL_NV_gpu_program50000664000175000017500000000061015135005167023047 0ustar alastairalastairGL_NV_gpu_program5 http://www.opengl.org/registry/specs/NV/gpu_program5.txt GL_NV_gpu_program5 GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV 0x8E5A GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5B GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5C GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV 0x8E5D GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV 0x8E5E GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV 0x8E5F nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_4_10000664000175000017500000000013015135005167021622 0ustar alastairalastairGL_VERSION_4_1 https://www.opengl.org/registry/doc/glspec41.compatibility.20100725.pdf nigels-com-glew-285c35d/auto/core/gl/GL_EXT_semaphore_fd0000664000175000017500000000026715135005167023221 0ustar alastairalastairGL_EXT_semaphore_fd http://www.opengl.org/registry/specs/EXT/external_objects_fd.txt GL_EXT_semaphore_fd void glImportSemaphoreFdEXT (GLuint semaphore, GLenum handleType, GLint fd) nigels-com-glew-285c35d/auto/core/gl/GL_NV_depth_range_unclamped0000664000175000017500000000033615135005167024755 0ustar alastairalastairGL_NV_depth_range_unclamped GL_NV_depth_range_unclamped GL_SAMPLE_COUNT_BITS_NV 0x8864 GL_CURRENT_SAMPLE_COUNT_QUERY_NV 0x8865 GL_QUERY_RESULT_NV 0x8866 GL_QUERY_RESULT_AVAILABLE_NV 0x8867 GL_SAMPLE_COUNT_NV 0x8914 nigels-com-glew-285c35d/auto/core/gl/GL_EXT_vertex_shader0000664000175000017500000001421415135005167023425 0ustar alastairalastairGL_EXT_vertex_shader http://oss.sgi.com/projects/ogl-sample/registry/EXT/vertex_shader.txt GL_EXT_vertex_shader GL_VERTEX_SHADER_EXT 0x8780 GL_VERTEX_SHADER_BINDING_EXT 0x8781 GL_OP_INDEX_EXT 0x8782 GL_OP_NEGATE_EXT 0x8783 GL_OP_DOT3_EXT 0x8784 GL_OP_DOT4_EXT 0x8785 GL_OP_MUL_EXT 0x8786 GL_OP_ADD_EXT 0x8787 GL_OP_MADD_EXT 0x8788 GL_OP_FRAC_EXT 0x8789 GL_OP_MAX_EXT 0x878A GL_OP_MIN_EXT 0x878B GL_OP_SET_GE_EXT 0x878C GL_OP_SET_LT_EXT 0x878D GL_OP_CLAMP_EXT 0x878E GL_OP_FLOOR_EXT 0x878F GL_OP_ROUND_EXT 0x8790 GL_OP_EXP_BASE_2_EXT 0x8791 GL_OP_LOG_BASE_2_EXT 0x8792 GL_OP_POWER_EXT 0x8793 GL_OP_RECIP_EXT 0x8794 GL_OP_RECIP_SQRT_EXT 0x8795 GL_OP_SUB_EXT 0x8796 GL_OP_CROSS_PRODUCT_EXT 0x8797 GL_OP_MULTIPLY_MATRIX_EXT 0x8798 GL_OP_MOV_EXT 0x8799 GL_OUTPUT_VERTEX_EXT 0x879A GL_OUTPUT_COLOR0_EXT 0x879B GL_OUTPUT_COLOR1_EXT 0x879C GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0 GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1 GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2 GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3 GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4 GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5 GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6 GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7 GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8 GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9 GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0 GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1 GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2 GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3 GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4 GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5 GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6 GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7 GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8 GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9 GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC GL_OUTPUT_FOG_EXT 0x87BD GL_SCALAR_EXT 0x87BE GL_VECTOR_EXT 0x87BF GL_MATRIX_EXT 0x87C0 GL_VARIANT_EXT 0x87C1 GL_INVARIANT_EXT 0x87C2 GL_LOCAL_CONSTANT_EXT 0x87C3 GL_LOCAL_EXT 0x87C4 GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5 GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6 GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7 GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8 GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9 GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CC GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CD GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0 GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1 GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2 GL_VERTEX_SHADER_LOCALS_EXT 0x87D3 GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4 GL_X_EXT 0x87D5 GL_Y_EXT 0x87D6 GL_Z_EXT 0x87D7 GL_W_EXT 0x87D8 GL_NEGATIVE_X_EXT 0x87D9 GL_NEGATIVE_Y_EXT 0x87DA GL_NEGATIVE_Z_EXT 0x87DB GL_NEGATIVE_W_EXT 0x87DC GL_ZERO_EXT 0x87DD GL_ONE_EXT 0x87DE GL_NEGATIVE_ONE_EXT 0x87DF GL_NORMALIZED_RANGE_EXT 0x87E0 GL_FULL_RANGE_EXT 0x87E1 GL_CURRENT_VERTEX_EXT 0x87E2 GL_MVP_MATRIX_EXT 0x87E3 GL_VARIANT_VALUE_EXT 0x87E4 GL_VARIANT_DATATYPE_EXT 0x87E5 GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6 GL_VARIANT_ARRAY_TYPE_EXT 0x87E7 GL_VARIANT_ARRAY_EXT 0x87E8 GL_VARIANT_ARRAY_POINTER_EXT 0x87E9 GL_INVARIANT_VALUE_EXT 0x87EA GL_INVARIANT_DATATYPE_EXT 0x87EB GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED void glBeginVertexShaderEXT (void) void glEndVertexShaderEXT (void) void glBindVertexShaderEXT (GLuint id) GLuint glGenVertexShadersEXT (GLuint range) void glDeleteVertexShaderEXT (GLuint id) void glShaderOp1EXT (GLenum op, GLuint res, GLuint arg1) void glShaderOp2EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2) void glShaderOp3EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3) void glSwizzleEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW) void glWriteMaskEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW) void glInsertComponentEXT (GLuint res, GLuint src, GLuint num) void glExtractComponentEXT (GLuint res, GLuint src, GLuint num) GLuint glGenSymbolsEXT (GLenum dataType, GLenum storageType, GLenum range, GLuint components) void glSetInvariantEXT (GLuint id, GLenum type, void *addr) void glSetLocalConstantEXT (GLuint id, GLenum type, void *addr) void glVariantbvEXT (GLuint id, GLbyte *addr) void glVariantsvEXT (GLuint id, GLshort *addr) void glVariantivEXT (GLuint id, GLint *addr) void glVariantfvEXT (GLuint id, GLfloat *addr) void glVariantdvEXT (GLuint id, GLdouble *addr) void glVariantubvEXT (GLuint id, GLubyte *addr) void glVariantusvEXT (GLuint id, GLushort *addr) void glVariantuivEXT (GLuint id, GLuint *addr) void glVariantPointerEXT (GLuint id, GLenum type, GLuint stride, void *addr) void glEnableVariantClientStateEXT (GLuint id) void glDisableVariantClientStateEXT (GLuint id) GLuint glBindLightParameterEXT (GLenum light, GLenum value) GLuint glBindMaterialParameterEXT (GLenum face, GLenum value) GLuint glBindTexGenParameterEXT (GLenum unit, GLenum coord, GLenum value) GLuint glBindTextureUnitParameterEXT (GLenum unit, GLenum value) GLuint glBindParameterEXT (GLenum value) GLboolean glIsVariantEnabledEXT (GLuint id, GLenum cap) void glGetVariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data) void glGetVariantIntegervEXT (GLuint id, GLenum value, GLint *data) void glGetVariantFloatvEXT (GLuint id, GLenum value, GLfloat *data) void glGetVariantPointervEXT (GLuint id, GLenum value, void **data) void glGetInvariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data) void glGetInvariantIntegervEXT (GLuint id, GLenum value, GLint *data) void glGetInvariantFloatvEXT (GLuint id, GLenum value, GLfloat *data) void glGetLocalConstantBooleanvEXT (GLuint id, GLenum value, GLboolean *data) void glGetLocalConstantIntegervEXT (GLuint id, GLenum value, GLint *data) void glGetLocalConstantFloatvEXT (GLuint id, GLenum value, GLfloat *data) nigels-com-glew-285c35d/auto/core/gl/GL_WIN_swap_hint0000664000175000017500000000031215135005167022545 0ustar alastairalastairGL_WIN_swap_hint http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/glfunc01_16zy.asp GL_WIN_swap_hint void glAddSwapHintRectWIN (GLint x, GLint y, GLsizei width, GLsizei height) nigels-com-glew-285c35d/auto/core/gl/GL_EXT_bindable_uniform0000664000175000017500000000110015135005167024047 0ustar alastairalastairGL_EXT_bindable_uniform http://developer.download.nvidia.com/opengl/specs/GL_EXT_bindable_uniform.txt GL_EXT_bindable_uniform GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT 0x8DE2 GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT 0x8DE3 GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT 0x8DE4 GL_MAX_BINDABLE_UNIFORM_SIZE_EXT 0x8DED GL_UNIFORM_BUFFER_BINDING_EXT 0x8DEF GL_UNIFORM_BUFFER_EXT 0x8DEE void glUniformBufferEXT (GLuint program, GLint location, GLuint buffer) GLint glGetUniformBufferSizeEXT (GLuint program, GLint location) GLintptr glGetUniformOffsetEXT (GLuint program, GLint location) nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_3_20000664000175000017500000000234315135005167021632 0ustar alastairalastairGL_VERSION_3_2 https://www.opengl.org/registry/doc/glspec32.compatibility.20091207.pdf GL_ARB_draw_elements_base_vertex GL_ARB_provoking_vertex GL_ARB_sync GL_ARB_texture_multisample GL_CONTEXT_CORE_PROFILE_BIT 0x00000001 GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002 GL_LINES_ADJACENCY 0x000A GL_LINE_STRIP_ADJACENCY 0x000B GL_TRIANGLES_ADJACENCY 0x000C GL_TRIANGLE_STRIP_ADJACENCY 0x000D GL_PROGRAM_POINT_SIZE 0x8642 GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29 GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7 GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8 GL_GEOMETRY_SHADER 0x8DD9 GL_GEOMETRY_VERTICES_OUT 0x8916 GL_GEOMETRY_INPUT_TYPE 0x8917 GL_GEOMETRY_OUTPUT_TYPE 0x8918 GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0 GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1 GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122 GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123 GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124 GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125 GL_CONTEXT_PROFILE_MASK 0x9126 void glGetInteger64i_v (GLenum pname, GLuint index, GLint64 * data) void glGetBufferParameteri64v (GLenum target, GLenum value, GLint64 * data) void glFramebufferTexture (GLenum target, GLenum attachment, GLuint texture, GLint level) nigels-com-glew-285c35d/auto/core/gl/GLX_ARB_get_proc_address0000664000175000017500000000030515135005167024161 0ustar alastairalastairGLX_ARB_get_proc_address http://oss.sgi.com/projects/ogl-sample/registry/ARB/get_proc_address.txt GLX_ARB_get_proc_address extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void); nigels-com-glew-285c35d/auto/core/gl/GL_EXT_framebuffer_sRGB0000664000175000017500000000030715135005167023721 0ustar alastairalastairGL_EXT_framebuffer_sRGB http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt GL_EXT_framebuffer_sRGB GL_FRAMEBUFFER_SRGB_EXT 0x8DB9 GL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x8DBA nigels-com-glew-285c35d/auto/core/gl/GL_VERSION_2_10000664000175000017500000000246315135005167021633 0ustar alastairalastairGL_VERSION_2_1 http://www.opengl.org/documentation/specs/version2.1/glspec21.pdf GL_CURRENT_RASTER_SECONDARY_COLOR 0x845F GL_PIXEL_PACK_BUFFER 0x88EB GL_PIXEL_UNPACK_BUFFER 0x88EC GL_PIXEL_PACK_BUFFER_BINDING 0x88ED GL_PIXEL_UNPACK_BUFFER_BINDING 0x88EF GL_FLOAT_MAT2x3 0x8B65 GL_FLOAT_MAT2x4 0x8B66 GL_FLOAT_MAT3x2 0x8B67 GL_FLOAT_MAT3x4 0x8B68 GL_FLOAT_MAT4x2 0x8B69 GL_FLOAT_MAT4x3 0x8B6A GL_SRGB 0x8C40 GL_SRGB8 0x8C41 GL_SRGB_ALPHA 0x8C42 GL_SRGB8_ALPHA8 0x8C43 GL_SLUMINANCE_ALPHA 0x8C44 GL_SLUMINANCE8_ALPHA8 0x8C45 GL_SLUMINANCE 0x8C46 GL_SLUMINANCE8 0x8C47 GL_COMPRESSED_SRGB 0x8C48 GL_COMPRESSED_SRGB_ALPHA 0x8C49 GL_COMPRESSED_SLUMINANCE 0x8C4A GL_COMPRESSED_SLUMINANCE_ALPHA 0x8C4B void glUniformMatrix2x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) void glUniformMatrix3x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) void glUniformMatrix2x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) void glUniformMatrix4x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) void glUniformMatrix3x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) void glUniformMatrix4x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) nigels-com-glew-285c35d/auto/Makefile0000664000175000017500000003721515135005167017651 0ustar alastairalastair## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002-2008, Milan Ikits ## ## This program is distributed under the terms and conditions of the GNU ## General Public License Version 2 as published by the Free Software ## Foundation or, at your option, any later version. include ../config/version #GLEW_SPLIT_SOURCE = yes SHELL = bash PYTHON ?= python EXT = extensions/gl CORE = core/gl REPO_OPENGL ?= https://github.com/KhronosGroup/OpenGL-Registry.git REPO_EGL ?= https://github.com/KhronosGroup/EGL-Registry.git REPO_GLFIXES ?= https://github.com/nigels-com/glfixes BIN = bin SRC = src BLACKLIST = blacklist GL_CORE_SPEC := $(CORE)/GL_VERSION* GLX_CORE_SPEC := $(CORE)/GLX_VERSION* EGL_CORE_SPEC := $(CORE)/EGL_VERSION* ifeq (custom,$(MAKECMDGOALS)) #GL_CORE_SPEC := $(shell grep GL_VERSION custom.txt | perl -pi -e "s=^=$(CORE)/=g;") GL_EXT_SPEC := $(shell grep "^[ \t]*GL_" custom.txt | grep -v GL_VERSION | perl -pi -e "s=^=$(EXT)/=g;") WGL_EXT_SPEC := $(shell grep "^[ \t]*WGL_" custom.txt | perl -pi -e "s=^=$(EXT)/=g;") #GLX_CORE_SPEC := $(shell grep GLX_VERSION custom.txt | perl -pi -e "s=^=$(CORE)/=g;") GLX_EXT_SPEC := $(shell grep "^[ \t]*GLX_" custom.txt | grep -v GLX_VERSION | perl -pi -e "s=^=$(EXT)/=g;") EGL_EXT_SPEC := $(shell grep "^[ \t]*EGL_" custom.txt | grep -v EGL_VERSION | perl -pi -e "s=^=$(EXT)/=g;") else GL_EXT_SPEC := $(EXT)/GL_* WGL_EXT_SPEC := $(EXT)/WGL_* GLX_EXT_SPEC := $(EXT)/GLX_* EGL_EXT_SPEC := $(EXT)/EGL_* endif PARSE_SPEC = parse_spec.pl SYSTEM = $(strip $(shell uname -s)) TOP = .. I.DEST = $(TOP)/include/GL S.DEST = $(TOP)/src D.DEST = $(TOP)/doc B.DEST = $(TOP)/build I.TARGETS = \ $(I.DEST)/glew.h \ $(I.DEST)/wglew.h \ $(I.DEST)/glxew.h \ $(I.DEST)/eglew.h ifeq (yes,$(GLEW_SPLIT_SOURCE)) S.TARGETS = \ $(S.DEST)/glew_def.c \ $(S.DEST)/glew_init.c \ $(S.DEST)/glew_str.c \ $(S.DEST)/glewinfo.c else S.TARGETS = \ $(S.DEST)/glew.c \ $(S.DEST)/glewinfo.c endif D.TARGETS = \ $(D.DEST)/index.html \ $(D.DEST)/install.html \ $(D.DEST)/basic.html \ $(D.DEST)/advanced.html \ $(D.DEST)/build.html \ $(D.DEST)/credits.html \ $(D.DEST)/log.html \ $(D.DEST)/glew.html \ $(D.DEST)/wglew.html \ $(D.DEST)/glxew.html \ $(D.DEST)/eglew.html B.TARGETS = \ $(B.DEST)/glew.rc \ $(B.DEST)/glewinfo.rc \ $(B.DEST)/visualinfo.rc all custom: $(I.TARGETS) $(S.TARGETS) $(D.TARGETS) $(B.TARGETS) ext: $(EXT)/.dummy OpenGL-Registry/.dummy: @echo "--------------------------------------------------------------------" @echo "Downloading OpenGL-Registry" @echo "--------------------------------------------------------------------" git clone --depth=1 $(REPO_OPENGL) OpenGL-Registry git clone --depth=1 --branch glew $(REPO_GLFIXES) glfixes touch $@ EGL-Registry/.dummy: @echo "--------------------------------------------------------------------" @echo "Downloading EGL-Registry" @echo "--------------------------------------------------------------------" git clone --depth=1 $(REPO_EGL) EGL-Registry touch $@ $(EXT)/.dummy: OpenGL-Registry/.dummy EGL-Registry/.dummy @echo "--------------------------------------------------------------------" @echo "OpenGL descriptors" @echo "--------------------------------------------------------------------" rm -rf $(EXT) cp -r glfixes/gl/specs/ANGLE OpenGL-Registry/extensions cp -r glfixes/gl/specs/REGAL OpenGL-Registry/extensions $(BIN)/update_ext.sh $(EXT) OpenGL-Registry/extensions $(BLACKLIST) @echo "--------------------------------------------------------------------" @echo "WGL descriptors" @echo "--------------------------------------------------------------------" rm -f $(EXT)/WGL_* $(PYTHON) $(BIN)/parse_xml.py OpenGL-Registry/xml/wgl.xml --api wgl --extensions extensions/gl @echo "--------------------------------------------------------------------" @echo "GLX descriptors" @echo "--------------------------------------------------------------------" rm -f $(EXT)/GLX_* $(PYTHON) $(BIN)/parse_xml.py OpenGL-Registry/xml/glx.xml --api glx --extensions extensions/gl @echo "--------------------------------------------------------------------" @echo "EGL descriptors" @echo "--------------------------------------------------------------------" $(PYTHON) $(BIN)/parse_xml.py EGL-Registry/api/egl.xml --api egl --extensions extensions/gl @echo "--------------------------------------------------------------------" @echo "filter descriptors" @echo "--------------------------------------------------------------------" $(BIN)/filter_gl_ext.sh $(EXT) ifeq ($(patsubst Darwin%,Darwin,$(SYSTEM)), Darwin) find $(CORE) -maxdepth 1 -type f | grep -v VERSION | grep -v "~" | \ xargs -J % cp % $(EXT) else find $(CORE) -maxdepth 1 -type f | grep -v VERSION | grep -v "~" | \ xargs -I % -n 1 cp % $(EXT) endif touch $@ $(I.DEST)/glew.h: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating glew.h" @echo "--------------------------------------------------------------------" test -d $(I.DEST) || mkdir -p $(I.DEST) cp -f $(SRC)/glew_license.h $@ cat $(SRC)/mesa_license.h >> $@ cat $(SRC)/khronos_license.h >> $@ cat $(SRC)/glew_head.h >> $@ $(BIN)/make_header.pl GLAPIENTRY GL $(GL_CORE_SPEC) >> $@ $(BIN)/make_header.pl GLAPIENTRY GL $(GL_EXT_SPEC) >> $@ echo -e "/* ------------------------------------------------------------------------- */\n\n" >> $@ $(BIN)/make_struct_fun.pl GLEW_FUN_EXPORT $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@ $(BIN)/make_struct_var.pl GLEW_VAR_EXPORT $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@ perl -e "s/GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2;/GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_1;\nGLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2;/" -pi $@ cat $(SRC)/glew_tail.h >> $@ perl -e "s/GLEW_VERSION_STRING/$(GLEW_VERSION)/g" -pi $@ perl -e "s/GLEW_VERSION_MAJOR_STRING/$(GLEW_MAJOR)/g" -pi $@ perl -e "s/GLEW_VERSION_MINOR_STRING/$(GLEW_MINOR)/g" -pi $@ perl -e "s/GLEW_VERSION_MICRO_STRING/$(GLEW_MICRO)/g" -pi $@ rm -f $@.bak $(I.DEST)/wglew.h: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating wglew.h" @echo "--------------------------------------------------------------------" cp -f $(SRC)/glew_license.h $@ cat $(SRC)/khronos_license.h >> $@ cat $(SRC)/wglew_head.h >> $@ $(BIN)/make_header.pl WINAPI WGL $(WGL_EXT_SPEC) >> $@ cat $(SRC)/wglew_mid.h >> $@ $(BIN)/make_struct_fun.pl WGLEW_FUN_EXPORT $(WGL_EXT_SPEC) >> $@ $(BIN)/make_struct_var.pl WGLEW_VAR_EXPORT $(WGL_EXT_SPEC) >> $@ cat $(SRC)/wglew_tail.h >> $@ $(I.DEST)/glxew.h: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating glxew.h" @echo "--------------------------------------------------------------------" cp -f $(SRC)/glew_license.h $@ cat $(SRC)/mesa_license.h >> $@ cat $(SRC)/khronos_license.h >> $@ cat $(SRC)/glxew_head.h >> $@ $(BIN)/make_header.pl "" GLX $(GLX_CORE_SPEC) >> $@ $(BIN)/make_header.pl "" GLX $(GLX_EXT_SPEC) >> $@ cat $(SRC)/glxew_mid.h >> $@ $(BIN)/make_struct_fun.pl GLXEW_FUN_EXPORT $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@ $(BIN)/make_struct_var.pl GLXEW_VAR_EXPORT $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@ perl -e "s/GLXEW_VAR_EXPORT GLboolean __GLXEW_VERSION_1_2;/GLXEW_VAR_EXPORT GLboolean __GLXEW_VERSION_1_0;\nGLXEW_VAR_EXPORT GLboolean __GLXEW_VERSION_1_1;\nGLXEW_VAR_EXPORT GLboolean __GLXEW_VERSION_1_2;/" -pi $@ cat $(SRC)/glxew_tail.h >> $@ $(I.DEST)/eglew.h: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating eglew.h" @echo "--------------------------------------------------------------------" cp -f $(SRC)/glew_license.h $@ cat $(SRC)/mesa_license.h >> $@ cat $(SRC)/khronos_license.h >> $@ cat $(SRC)/eglew_head.h >> $@ $(BIN)/make_header.pl "" EGL $(EGL_CORE_SPEC) >> $@ $(BIN)/make_header.pl "" EGL $(EGL_EXT_SPEC) >> $@ cat $(SRC)/eglew_mid.h >> $@ $(BIN)/make_struct_fun.pl EGLEW_FUN_EXPORT $(EGL_CORE_SPEC) $(EGL_EXT_SPEC) >> $@ $(BIN)/make_struct_var.pl EGLEW_VAR_EXPORT $(EGL_CORE_SPEC) $(EGL_EXT_SPEC) >> $@ cat $(SRC)/eglew_tail.h >> $@ $(S.DEST)/glew.c: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating glew.c" @echo "--------------------------------------------------------------------" cp -f $(SRC)/glew_license.h $@ cat $(SRC)/glew_head.c >> $@ $(BIN)/make_def_fun.pl GL $(GL_CORE_SPEC) >> $@ $(BIN)/make_def_fun.pl GL $(GL_EXT_SPEC) >> $@ echo -e "\nGLboolean __GLEW_VERSION_1_1 = GL_FALSE;" >> $@ $(BIN)/make_def_var.pl GL $(GL_CORE_SPEC) >> $@ $(BIN)/make_def_var.pl GL $(GL_EXT_SPEC) >> $@ echo -e "\nstatic const char * _glewExtensionLookup[] = {" >> $@; $(BIN)/make_index.pl $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@ echo -e " NULL\n};\n\n" >> $@; $(BIN)/make_enable_index.pl $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@ $(BIN)/make_initd.pl GL $(GL_CORE_SPEC) >> $@ $(BIN)/make_initd.pl GL $(GL_EXT_SPEC) >> $@ echo -e "" >> $@; $(BIN)/make_init.pl GL $(GL_CORE_SPEC) >> $@ $(BIN)/make_init.pl GL $(GL_EXT_SPEC) >> $@ cat $(SRC)/glew_init_gl.c >> $@ $(BIN)/make_list.pl $(GL_CORE_SPEC) | grep -v '\"GL_VERSION' >> $@ $(BIN)/make_list.pl $(GL_EXT_SPEC) >> $@ $(BIN)/make_list2.pl $(GL_EXT_SPEC) >> $@ echo -e "\n return GLEW_OK;\n}\n" >> $@ echo -e "\n#if defined(GLEW_OSMESA)" >> $@ echo -e "\n#elif defined(GLEW_EGL)" >> $@ $(BIN)/make_def_fun.pl EGL $(EGL_CORE_SPEC) >> $@ $(BIN)/make_def_fun.pl EGL $(EGL_EXT_SPEC) >> $@ $(BIN)/make_def_var.pl EGL $(EGL_CORE_SPEC) >> $@ $(BIN)/make_def_var.pl EGL $(EGL_EXT_SPEC) >> $@ $(BIN)/make_init.pl EGL $(EGL_CORE_SPEC) >> $@ $(BIN)/make_init.pl EGL $(EGL_EXT_SPEC) >> $@ cat $(SRC)/glew_init_egl.c >> $@ $(BIN)/make_list.pl $(EGL_CORE_SPEC) >> $@ $(BIN)/make_list.pl $(EGL_EXT_SPEC) >> $@ echo -e "\n return GLEW_OK;\n}" >> $@ echo -e "\n#elif defined(_WIN32)" >> $@ $(BIN)/make_def_fun.pl WGL $(WGL_EXT_SPEC) >> $@ $(BIN)/make_def_var.pl WGL $(WGL_EXT_SPEC) >> $@ $(BIN)/make_init.pl WGL $(WGL_EXT_SPEC) >> $@ cat $(SRC)/glew_init_wgl.c >> $@ $(BIN)/make_list.pl $(WGL_EXT_SPEC) >> $@ echo -e "\n return GLEW_OK;\n}" >> $@; echo -e "\n#elif !defined(__ANDROID__) && !defined(__native_client__) && !defined(__HAIKU__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))" >> $@ $(BIN)/make_def_fun.pl GLX $(GLX_CORE_SPEC) >> $@ $(BIN)/make_def_fun.pl GLX $(GLX_EXT_SPEC) >> $@ echo -e "\nGLboolean __GLXEW_VERSION_1_0 = GL_FALSE;" >> $@ echo -e "GLboolean __GLXEW_VERSION_1_1 = GL_FALSE;" >> $@ $(BIN)/make_def_var.pl GLX $(GLX_CORE_SPEC) >> $@ $(BIN)/make_def_var.pl GLX $(GLX_EXT_SPEC) >> $@ $(BIN)/make_init.pl GLX $(GLX_CORE_SPEC) >> $@ $(BIN)/make_init.pl GLX $(GLX_EXT_SPEC) >> $@ cat $(SRC)/glew_init_glx.c >> $@ $(BIN)/make_list.pl $(CORE)/GLX_VERSION_1_3 | grep -v '\"GLX_VERSION' >> $@ $(BIN)/make_list.pl $(GLX_EXT_SPEC) >> $@ echo -e "\n return GLEW_OK;\n}" >> $@ echo -e "\n#endif /* !defined(__ANDROID__) && !defined(__native_client__) && !defined(__HAIKU__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) */\n" >> $@; cat $(SRC)/glew_init_tail.c >> $@ cat $(SRC)/glew_str_head.c >> $@ $(BIN)/make_str.pl $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@ cat $(SRC)/glew_str_wgl.c >> $@ $(BIN)/make_str.pl $(WGL_EXT_SPEC) >> $@ cat $(SRC)/glew_str_glx.c >> $@ $(BIN)/make_str.pl $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@ cat $(SRC)/glew_str_egl.c >> $@ $(BIN)/make_str.pl $(EGL_CORE_SPEC) $(EGL_EXT_SPEC) >> $@ cat $(SRC)/glew_str_tail.c >> $@ perl -e "s/GLEW_VERSION_STRING/$(GLEW_VERSION)/g" -pi $@ perl -e "s/GLEW_VERSION_MAJOR_STRING/$(GLEW_MAJOR)/g" -pi $@ perl -e "s/GLEW_VERSION_MINOR_STRING/$(GLEW_MINOR)/g" -pi $@ perl -e "s/GLEW_VERSION_MICRO_STRING/$(GLEW_MICRO)/g" -pi $@ perl -e "s/GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader\(\);/{ GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader(); _glewInit_GL_ARB_vertex_program(); }/g" -pi $@ perl -e "s/\(\(glColorSubTable = /((glBlendEquation = (PFNGLBLENDEQUATIONPROC)glewGetProcAddress((const GLubyte*)\"glBlendEquation\")) == NULL) || r;\n r = ((glColorSubTable = /g" -pi $@ rm -f $@.bak $(S.DEST)/glewinfo.c: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating glewinfo.c" @echo "--------------------------------------------------------------------" cp -f $(SRC)/glew_license.h $@ cat $(SRC)/glewinfo_head.c >> $@ $(BIN)/make_info.pl $(GL_CORE_SPEC) >> $@ $(BIN)/make_info.pl $(GL_EXT_SPEC) >> $@ echo -e "#if defined(GLEW_EGL)\n" >> $@ $(BIN)/make_info.pl $(EGL_CORE_SPEC) >> $@ $(BIN)/make_info.pl $(EGL_EXT_SPEC) >> $@ echo -e "#elif _WIN32\n" >> $@ $(BIN)/make_info.pl $(WGL_EXT_SPEC) >> $@ echo -e "#else /* _UNIX */\n" >> $@ $(BIN)/make_info.pl $(GLX_CORE_SPEC) >> $@ $(BIN)/make_info.pl $(GLX_EXT_SPEC) >> $@ echo -e "#endif /* _WIN32 */\n" >> $@ cat $(SRC)/glewinfo_gl.c >> $@ $(BIN)/make_info_list.pl $(GL_CORE_SPEC) >> $@ $(BIN)/make_info_list.pl $(GL_EXT_SPEC) >> $@ cat $(SRC)/glewinfo_wgl.c >> $@ $(BIN)/make_info_list.pl $(WGL_EXT_SPEC) >> $@ cat $(SRC)/glewinfo_glx.c >> $@ $(BIN)/make_info_list.pl $(GLX_CORE_SPEC) >> $@ $(BIN)/make_info_list.pl $(GLX_EXT_SPEC) >> $@ cat $(SRC)/glewinfo_egl.c >> $@ $(BIN)/make_info_list.pl $(EGL_CORE_SPEC) >> $@ $(BIN)/make_info_list.pl $(EGL_EXT_SPEC) >> $@ cat $(SRC)/glewinfo_tail.c >> $@ perl -e 's/"glColorSubTable"/"glBlendEquation", glBlendEquation == NULL);\n glewInfoFunc(fi, "glColorSubTable"/g' -pi $@ rm -f $@.bak # Update documentation $(D.DEST)/%.html: doc/%.html @echo "--------------------------------------------------------------------" @echo "Creating $(@F)" @echo "--------------------------------------------------------------------" cat $(SRC)/header.html $< $(SRC)/footer.html | \ perl -pe 's#(.*)#\1#' > $@ $(D.DEST)/glew.html: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating glew.html" @echo "--------------------------------------------------------------------" cp -f $(SRC)/header.html $@ echo -e "

Supported OpenGL Extensions

\n" >> $@ $(BIN)/make_html.pl $(GL_EXT_SPEC) >> $@ cat $(SRC)/footer.html >> $@ perl -i -pe 's#(.*)#\1#' $@ $(D.DEST)/wglew.html: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating wglew.html" @echo "--------------------------------------------------------------------" cp -f $(SRC)/header.html $@ echo -e "

Supported WGL Extensions

\n" >> $@ $(BIN)/make_html.pl $(WGL_EXT_SPEC) >> $@ cat $(SRC)/footer.html >> $@ perl -i -pe 's#(.*)#\1#' $@ $(D.DEST)/glxew.html: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating glxew.html" @echo "--------------------------------------------------------------------" cp -f $(SRC)/header.html $@ echo -e "

Supported GLX Extensions

\n" >> $@ $(BIN)/make_html.pl $(GLX_EXT_SPEC) >> $@ cat $(SRC)/footer.html >> $@ perl -i -pe 's#(.*)#\1#' $@ $(D.DEST)/eglew.html: $(EXT)/.dummy @echo "--------------------------------------------------------------------" @echo "Creating eglew.html" @echo "--------------------------------------------------------------------" cp -f $(SRC)/header.html $@ echo -e "

Supported EGL Extensions

\n" >> $@ $(BIN)/make_html.pl $(EGL_EXT_SPEC) >> $@ cat $(SRC)/footer.html >> $@ perl -i -pe 's#(.*)#\1#' $@ $(B.DEST)/%.rc: src/%.rc $(EXT)/.dummy perl -e "s/GLEW_MAJOR/$(GLEW_MAJOR)/g;s/GLEW_MINOR/$(GLEW_MINOR)/g;s/GLEW_MICRO/$(GLEW_MICRO)/g;" -p $< > $@ clean: rm -rf $(I.TARGETS) $(S.TARGETS) $(D.TARGETS) $(B.TARGETS) clobber: clean rm -rf $(EXT) destroy: clobber rm -rf registry nigels-com-glew-285c35d/doc/0000775000175000017500000000000015135005167015776 5ustar alastairalastairnigels-com-glew-285c35d/doc/index.html0000664000175000017500000003072315135005167020000 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform. OpenGL core and extension functionality is exposed in a single header file. GLEW has been tested on a variety of operating systems, including Windows, Linux, Mac OS X, FreeBSD, Irix, and Solaris.

Downloads

GLEW is distributed as source and precompiled binaries.
The latest release is 2.3.1[01-10-2026]:

Source ZIP |  TGZ
Binaries Windows 32-bit and 64-bit

An up-to-date copy is also available using git:

  • github
    git clone https://github.com/nigels-com/glew.git glew
     

Supported Extensions

The latest release contains support for OpenGL 4.6, compatibility and forward-compatible contexts and the following extensions:

News

  • [01-03-2025] GLEW 2.3.1 minor bug fixe
  • [12-27-2025] GLEW 2.3.0 new extensions and minor bug fixes
  • [03-15-2020] GLEW 2.2.0 new extensions and minor bug fixes
  • [07-31-2017] GLEW 2.1.0 adds support for OpenGL 4.6, new extensions and minor bug fixes
  • [07-24-2016] GLEW 2.0.0 adds support for forward-compatible contexts, adds new extensions, OSMesa and EGL support, MX discontinued and minor bug fixes
  • [08-10-2015] GLEW 1.13.0 adds support for new extensions, fixes minor bugs
  • [26-01-2015] GLEW 1.12.0 fixes minor bugs and adds new extensions
  • [08-11-2014] GLEW 1.11.0 adds support for OpenGL 4.5, new extensions
  • [07-22-2013] GLEW 1.10.0 adds support for OpenGL 4.4, new extensions
  • [08-06-2012] GLEW 1.9.0 adds support for OpenGL 4.3, new extensions
  • [07-17-2012] GLEW 1.8.0 fixes minor bugs and adds new extensions
  • [08-26-2011] GLEW 1.7.0 adds support for OpenGL 4.2, new extensions, fixes bugs
  • [04-27-2011] GLEW 1.6.0 fixes minor bugs and adds eight new extensions
  • [01-31-2011] GLEW 1.5.8 fixes minor bugs and adds two new extensions
  • [11-03-2010] GLEW 1.5.7 fixes minor bugs and adds one new extension
  • [09-07-2010] GLEW 1.5.6 adds support for OpenGL 4.1, fixes bugs
  • [07-13-2010] GLEW 1.5.5 fixes minor bugs and adds new extensions
  • [04-21-2010] GLEW 1.5.4 adds support for OpenGL 3.3, OpenGL 4.0 and new extensions, fixes bugs
  • [02-28-2010] GLEW 1.5.3 fixes minor bugs and adds three new extensions
  • [12-31-2009] GLEW 1.5.2 adds support for OpenGL 3.1, OpenGL 3.2 and new extensions
  • [11-03-2008] GLEW 1.5.1 adds support for OpenGL 3.0 and 31 new extensions
  • [12-27-2007] GLEW 1.5.0 is released under less restrictive licenses
  • [04-27-2007] GLEW 1.4.0 is released
  • [03-08-2007] GLEW is included in the NVIDIA OpenGL SDK
  • [03-04-2007] GLEW 1.3.6 is released
  • [02-28-2007] Repository is migrated to SVN
  • [02-25-2007] GLEW is included in the OpenGL SDK
  • [11-21-2006] GLEW 1.3.5 adds OpenGL 2.1 and NVIDIA G80 extensions
  • [03-04-2006] GLEW 1.3.4 adds support for five new extensions
  • [05-16-2005] GLEW 1.3.3 is released
  • [03-16-2005] GLEW 1.3.2 adds support for GL_APPLE_pixel_buffer
  • [02-11-2005] gljava and sdljava provide a Java binding to OpenGL via GLEW
  • [02-02-2005] GLEW 1.3.1 adds support for GL_EXT_framebuffer_object
  • [01-04-2005] GLEW 1.3.0 adds core OpenGL 2.0 support plus many enhancements
  • [12-22-2004] GLEWpy Python wrapper announced
  • [12-12-2004] Mailing lists created on sourceforge
  • [12-06-2004] GLEW 1.2.5 adds new extensions and support for FreeBSD

Links

nigels-com-glew-285c35d/doc/glew.html0000664000175000017500000051523415135005167017634 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Supported OpenGL Extensions

1 3DFX_multisample
2 3DFX_tbuffer
3 3DFX_texture_compression_FXT1

4 AMD_blend_minmax_factor
5 AMD_compressed_3DC_texture
6 AMD_compressed_ATC_texture
7 AMD_conservative_depth
8 AMD_debug_output
9 AMD_depth_clamp_separate
10 AMD_draw_buffers_blend
11 AMD_framebuffer_multisample_advanced
12 AMD_framebuffer_sample_positions
13 AMD_gcn_shader
14 AMD_gpu_shader_half_float
15 AMD_gpu_shader_half_float_fetch
16 AMD_gpu_shader_int16
17 AMD_gpu_shader_int64
18 AMD_interleaved_elements
19 AMD_multi_draw_indirect
20 AMD_name_gen_delete
21 AMD_occlusion_query_event
22 AMD_performance_monitor
23 AMD_pinned_memory
24 AMD_program_binary_Z400
25 AMD_query_buffer_object
26 AMD_sample_positions
27 AMD_seamless_cubemap_per_texture
28 AMD_shader_atomic_counter_ops
29 AMD_shader_ballot
30 AMD_shader_explicit_vertex_parameter
31 AMD_shader_image_load_store_lod
32 AMD_shader_stencil_export
33 AMD_shader_stencil_value_export
34 AMD_shader_trinary_minmax
35 AMD_sparse_texture
36 AMD_stencil_operation_extended
37 AMD_texture_gather_bias_lod
38 AMD_texture_texture4
39 AMD_transform_feedback3_lines_triangles
40 AMD_transform_feedback4
41 AMD_vertex_shader_layer
42 AMD_vertex_shader_tessellator
43 AMD_vertex_shader_viewport_index

44 ANDROID_extension_pack_es31a

45 ANGLE_depth_texture
46 ANGLE_framebuffer_blit
47 ANGLE_framebuffer_multisample
48 ANGLE_instanced_arrays
49 ANGLE_pack_reverse_row_order
50 ANGLE_program_binary
51 ANGLE_texture_compression_dxt1
52 ANGLE_texture_compression_dxt3
53 ANGLE_texture_compression_dxt5
54 ANGLE_texture_usage
55 ANGLE_timer_query
56 ANGLE_translated_shader_source

57 APPLE_aux_depth_stencil
58 APPLE_client_storage
59 APPLE_clip_distance
60 APPLE_color_buffer_packed_float
61 APPLE_copy_texture_levels
62 APPLE_element_array
63 APPLE_fence
64 APPLE_float_pixels
65 APPLE_flush_buffer_range
66 APPLE_framebuffer_multisample
67 APPLE_object_purgeable
68 APPLE_pixel_buffer
69 APPLE_rgb_422
70 APPLE_row_bytes
71 APPLE_specular_vector
72 APPLE_sync
73 APPLE_texture_2D_limited_npot
74 APPLE_texture_format_BGRA8888
75 APPLE_texture_max_level
76 APPLE_texture_packed_float
77 APPLE_texture_range
78 APPLE_transform_hint
79 APPLE_vertex_array_object
80 APPLE_vertex_array_range
81 APPLE_vertex_program_evaluators
82 APPLE_ycbcr_422

83 ARB_ES2_compatibility
84 ARB_ES3_1_compatibility
85 ARB_ES3_2_compatibility
86 ARB_ES3_compatibility
87 ARB_arrays_of_arrays
88 ARB_base_instance
89 ARB_bindless_texture
90 ARB_blend_func_extended
91 ARB_buffer_storage
92 ARB_cl_event
93 ARB_clear_buffer_object
94 ARB_clear_texture
95 ARB_clip_control
96 ARB_color_buffer_float
97 ARB_compatibility
98 ARB_compressed_texture_pixel_storage
99 ARB_compute_shader
100 ARB_compute_variable_group_size
101 ARB_conditional_render_inverted
102 ARB_conservative_depth
103 ARB_copy_buffer
104 ARB_copy_image
105 ARB_cull_distance
106 ARB_debug_output
107 ARB_depth_buffer_float
108 ARB_depth_clamp
109 ARB_depth_texture
110 ARB_derivative_control
111 ARB_direct_state_access
112 ARB_draw_buffers
113 ARB_draw_buffers_blend
114 ARB_draw_elements_base_vertex
115 ARB_draw_indirect
116 ARB_draw_instanced
117 ARB_enhanced_layouts
118 ARB_explicit_attrib_location
119 ARB_explicit_uniform_location
120 ARB_fragment_coord_conventions
121 ARB_fragment_layer_viewport
122 ARB_fragment_program
123 ARB_fragment_program_shadow
124 ARB_fragment_shader
125 ARB_fragment_shader_interlock
126 ARB_framebuffer_no_attachments
127 ARB_framebuffer_object
128 ARB_framebuffer_sRGB
129 ARB_geometry_shader4
130 ARB_get_program_binary
131 ARB_get_texture_sub_image
132 ARB_gl_spirv
133 ARB_gpu_shader5
134 ARB_gpu_shader_fp64
135 ARB_gpu_shader_int64
136 ARB_half_float_pixel
137 ARB_half_float_vertex
138 ARB_imaging
139 ARB_indirect_parameters
140 ARB_instanced_arrays
141 ARB_internalformat_query
142 ARB_internalformat_query2
143 ARB_invalidate_subdata
144 ARB_map_buffer_alignment
145 ARB_map_buffer_range
146 ARB_matrix_palette
147 ARB_multi_bind
148 ARB_multi_draw_indirect
149 ARB_multisample
150 ARB_multitexture
151 ARB_occlusion_query
152 ARB_occlusion_query2
153 ARB_parallel_shader_compile
154 ARB_pipeline_statistics_query
155 ARB_pixel_buffer_object
156 ARB_point_parameters
157 ARB_point_sprite
158 ARB_polygon_offset_clamp
159 ARB_post_depth_coverage
160 ARB_program_interface_query
161 ARB_provoking_vertex
162 ARB_query_buffer_object
163 ARB_robust_buffer_access_behavior
164 ARB_robustness
165 ARB_robustness_application_isolation
166 ARB_robustness_share_group_isolation
167 ARB_sample_locations
168 ARB_sample_shading
169 ARB_sampler_objects
170 ARB_seamless_cube_map
171 ARB_seamless_cubemap_per_texture
172 ARB_separate_shader_objects
173 ARB_shader_atomic_counter_ops
174 ARB_shader_atomic_counters
175 ARB_shader_ballot
176 ARB_shader_bit_encoding
177 ARB_shader_clock
178 ARB_shader_draw_parameters
179 ARB_shader_group_vote
180 ARB_shader_image_load_store
181 ARB_shader_image_size
182 ARB_shader_objects
183 ARB_shader_precision
184 ARB_shader_stencil_export
185 ARB_shader_storage_buffer_object
186 ARB_shader_subroutine
187 ARB_shader_texture_image_samples
188 ARB_shader_texture_lod
189 ARB_shader_viewport_layer_array
190 ARB_shading_language_100
191 ARB_shading_language_420pack
192 ARB_shading_language_include
193 ARB_shading_language_packing
194 ARB_shadow
195 ARB_shadow_ambient
196 ARB_sparse_buffer
197 ARB_sparse_texture
198 ARB_sparse_texture2
199 ARB_sparse_texture_clamp
200 ARB_spirv_extensions
201 ARB_stencil_texturing
202 ARB_sync
203 ARB_tessellation_shader
204 ARB_texture_barrier
205 ARB_texture_border_clamp
206 ARB_texture_buffer_object
207 ARB_texture_buffer_object_rgb32
208 ARB_texture_buffer_range
209 ARB_texture_compression
210 ARB_texture_compression_bptc
211 ARB_texture_compression_rgtc
212 ARB_texture_cube_map
213 ARB_texture_cube_map_array
214 ARB_texture_env_add
215 ARB_texture_env_combine
216 ARB_texture_env_crossbar
217 ARB_texture_env_dot3
218 ARB_texture_filter_anisotropic
219 ARB_texture_filter_minmax
220 ARB_texture_float
221 ARB_texture_gather
222 ARB_texture_mirror_clamp_to_edge
223 ARB_texture_mirrored_repeat
224 ARB_texture_multisample
225 ARB_texture_non_power_of_two
226 ARB_texture_query_levels
227 ARB_texture_query_lod
228 ARB_texture_rectangle
229 ARB_texture_rg
230 ARB_texture_rgb10_a2ui
231 ARB_texture_stencil8
232 ARB_texture_storage
233 ARB_texture_storage_multisample
234 ARB_texture_swizzle
235 ARB_texture_view
236 ARB_timer_query
237 ARB_transform_feedback2
238 ARB_transform_feedback3
239 ARB_transform_feedback_instanced
240 ARB_transform_feedback_overflow_query
241 ARB_transpose_matrix
242 ARB_uniform_buffer_object
243 ARB_vertex_array_bgra
244 ARB_vertex_array_object
245 ARB_vertex_attrib_64bit
246 ARB_vertex_attrib_binding
247 ARB_vertex_blend
248 ARB_vertex_buffer_object
249 ARB_vertex_program
250 ARB_vertex_shader
251 ARB_vertex_type_10f_11f_11f_rev
252 ARB_vertex_type_2_10_10_10_rev
253 ARB_viewport_array
254 ARB_window_pos

255 ARM_mali_program_binary
256 ARM_mali_shader_binary
257 ARM_rgba8
258 ARM_shader_core_properties
259 ARM_shader_framebuffer_fetch
260 ARM_shader_framebuffer_fetch_depth_stencil
261 ARM_texture_unnormalized_coordinates

262 ATIX_point_sprites
263 ATIX_texture_env_combine3
264 ATIX_texture_env_route
265 ATIX_vertex_shader_output_point_size

266 ATI_draw_buffers
267 ATI_element_array
268 ATI_envmap_bumpmap
269 ATI_fragment_shader
270 ATI_map_object_buffer
271 ATI_meminfo
272 ATI_pn_triangles
273 ATI_separate_stencil
274 ATI_shader_texture_lod
275 ATI_text_fragment_shader
276 ATI_texture_compression_3dc
277 ATI_texture_env_combine3
278 ATI_texture_float
279 ATI_texture_mirror_once
280 ATI_vertex_array_object
281 ATI_vertex_attrib_array_object
282 ATI_vertex_streams

283 DMP_program_binary
284 DMP_shader_binary

285 EXT_422_pixels
286 EXT_Cg_shader
287 EXT_EGL_image_array
288 EXT_EGL_image_external_wrap_modes
289 EXT_EGL_image_storage
290 EXT_EGL_image_storage_compression
291 EXT_EGL_sync
292 EXT_YUV_target
293 EXT_abgr
294 EXT_base_instance
295 EXT_bgra
296 EXT_bindable_uniform
297 EXT_blend_color
298 EXT_blend_equation_separate
299 EXT_blend_func_extended
300 EXT_blend_func_separate
301 EXT_blend_logic_op
302 EXT_blend_minmax
303 EXT_blend_subtract
304 EXT_buffer_storage
305 EXT_clear_texture
306 EXT_clip_control
307 EXT_clip_cull_distance
308 EXT_clip_volume_hint
309 EXT_cmyka
310 EXT_color_buffer_float
311 EXT_color_buffer_half_float
312 EXT_color_subtable
313 EXT_compiled_vertex_array
314 EXT_compressed_ETC1_RGB8_sub_texture
315 EXT_conservative_depth
316 EXT_convolution
317 EXT_coordinate_frame
318 EXT_copy_image
319 EXT_copy_texture
320 EXT_cull_vertex
321 EXT_debug_label
322 EXT_debug_marker
323 EXT_depth_bounds_test
324 EXT_depth_clamp
325 EXT_direct_state_access
326 EXT_discard_framebuffer
327 EXT_disjoint_timer_query
328 EXT_draw_buffers
329 EXT_draw_buffers2
330 EXT_draw_buffers_indexed
331 EXT_draw_elements_base_vertex
332 EXT_draw_instanced
333 EXT_draw_range_elements
334 EXT_draw_transform_feedback
335 EXT_external_buffer
336 EXT_float_blend
337 EXT_fog_coord
338 EXT_frag_depth
339 EXT_fragment_lighting
340 EXT_fragment_shading_rate
341 EXT_fragment_shading_rate_attachment
342 EXT_fragment_shading_rate_primitive
343 EXT_framebuffer_blit
344 EXT_framebuffer_blit_layers
345 EXT_framebuffer_multisample
346 EXT_framebuffer_multisample_blit_scaled
347 EXT_framebuffer_object
348 EXT_framebuffer_sRGB
349 EXT_geometry_point_size
350 EXT_geometry_shader
351 EXT_geometry_shader4
352 EXT_gpu_program_parameters
353 EXT_gpu_shader4
354 EXT_gpu_shader5
355 EXT_histogram
356 EXT_index_array_formats
357 EXT_index_func
358 EXT_index_material
359 EXT_index_texture
360 EXT_instanced_arrays
361 EXT_light_texture
362 EXT_map_buffer_range
363 EXT_memory_object
364 EXT_memory_object_fd
365 EXT_memory_object_win32
366 EXT_mesh_shader
367 EXT_misc_attribute
368 EXT_multi_draw_arrays
369 EXT_multi_draw_indirect
370 EXT_multiple_textures
371 EXT_multisample
372 EXT_multisample_compatibility
373 EXT_multisampled_render_to_texture
374 EXT_multisampled_render_to_texture2
375 EXT_multiview_draw_buffers
376 EXT_multiview_tessellation_geometry_shader
377 EXT_multiview_texture_multisample
378 EXT_multiview_timer_query
379 EXT_occlusion_query_boolean
380 EXT_packed_depth_stencil
381 EXT_packed_float
382 EXT_packed_pixels
383 EXT_paletted_texture
384 EXT_pixel_buffer_object
385 EXT_pixel_transform
386 EXT_pixel_transform_color_table
387 EXT_point_parameters
388 EXT_polygon_offset
389 EXT_polygon_offset_clamp
390 EXT_post_depth_coverage
391 EXT_primitive_bounding_box
392 EXT_protected_textures
393 EXT_provoking_vertex
394 EXT_pvrtc_sRGB
395 EXT_raster_multisample
396 EXT_read_format_bgra
397 EXT_render_snorm
398 EXT_rescale_normal
399 EXT_robustness
400 EXT_sRGB
401 EXT_sRGB_write_control
402 EXT_scene_marker
403 EXT_secondary_color
404 EXT_semaphore
405 EXT_semaphore_fd
406 EXT_semaphore_win32
407 EXT_separate_depth_stencil
408 EXT_separate_shader_objects
409 EXT_separate_specular_color
410 EXT_shader_clock
411 EXT_shader_framebuffer_fetch
412 EXT_shader_framebuffer_fetch_non_coherent
413 EXT_shader_group_vote
414 EXT_shader_image_load_formatted
415 EXT_shader_image_load_store
416 EXT_shader_implicit_conversions
417 EXT_shader_integer_mix
418 EXT_shader_io_blocks
419 EXT_shader_non_constant_global_initializers
420 EXT_shader_pixel_local_storage
421 EXT_shader_pixel_local_storage2
422 EXT_shader_realtime_clock
423 EXT_shader_samples_identical
424 EXT_shader_texture_lod
425 EXT_shader_texture_samples
426 EXT_shadow_funcs
427 EXT_shadow_samplers
428 EXT_shared_texture_palette
429 EXT_sparse_texture
430 EXT_sparse_texture2
431 EXT_static_vertex_array
432 EXT_stencil_clear_tag
433 EXT_stencil_two_side
434 EXT_stencil_wrap
435 EXT_subtexture
436 EXT_tessellation_point_size
437 EXT_tessellation_shader
438 EXT_texture
439 EXT_texture3D
440 EXT_texture_array
441 EXT_texture_border_clamp
442 EXT_texture_buffer
443 EXT_texture_buffer_object
444 EXT_texture_compression_astc_decode_mode
445 EXT_texture_compression_astc_decode_mode_rgb9e5
446 EXT_texture_compression_bptc
447 EXT_texture_compression_dxt1
448 EXT_texture_compression_latc
449 EXT_texture_compression_rgtc
450 EXT_texture_compression_s3tc
451 EXT_texture_compression_s3tc_srgb
452 EXT_texture_cube_map
453 EXT_texture_cube_map_array
454 EXT_texture_edge_clamp
455 EXT_texture_env
456 EXT_texture_env_add
457 EXT_texture_env_combine
458 EXT_texture_env_dot3
459 EXT_texture_filter_anisotropic
460 EXT_texture_filter_minmax
461 EXT_texture_format_BGRA8888
462 EXT_texture_format_sRGB_override
463 EXT_texture_integer
464 EXT_texture_lod_bias
465 EXT_texture_mirror_clamp
466 EXT_texture_mirror_clamp_to_edge
467 EXT_texture_norm16
468 EXT_texture_object
469 EXT_texture_perturb_normal
470 EXT_texture_query_lod
471 EXT_texture_rectangle
472 EXT_texture_rg
473 EXT_texture_sRGB
474 EXT_texture_sRGB_R8
475 EXT_texture_sRGB_RG8
476 EXT_texture_sRGB_decode
477 EXT_texture_shadow_lod
478 EXT_texture_shared_exponent
479 EXT_texture_snorm
480 EXT_texture_storage
481 EXT_texture_storage_compression
482 EXT_texture_swizzle
483 EXT_texture_type_2_10_10_10_REV
484 EXT_texture_view
485 EXT_timer_query
486 EXT_transform_feedback
487 EXT_unpack_subimage
488 EXT_vertex_array
489 EXT_vertex_array_bgra
490 EXT_vertex_array_setXXX
491 EXT_vertex_attrib_64bit
492 EXT_vertex_shader
493 EXT_vertex_weighting
494 EXT_win32_keyed_mutex
495 EXT_window_rectangles
496 EXT_x11_sync_object

497 FJ_shader_binary_GCCSO

498 GREMEDY_frame_terminator
499 GREMEDY_string_marker

500 HP_convolution_border_modes
501 HP_image_transform
502 HP_occlusion_test
503 HP_texture_lighting

504 HUAWEI_program_binary
505 HUAWEI_shader_binary

506 IBM_cull_vertex
507 IBM_multimode_draw_arrays
508 IBM_rasterpos_clip
509 IBM_static_data
510 IBM_texture_mirrored_repeat
511 IBM_vertex_array_lists

512 IMG_bindless_texture
513 IMG_framebuffer_downsample
514 IMG_multisampled_render_to_texture
515 IMG_program_binary
516 IMG_pvric_end_to_end_signature
517 IMG_read_format
518 IMG_shader_binary
519 IMG_texture_compression_pvrtc
520 IMG_texture_compression_pvrtc2
521 IMG_texture_env_enhanced_fixed_function
522 IMG_texture_filter_cubic
523 IMG_tile_region_protection

524 INGR_color_clamp
525 INGR_interlace_read

526 INTEL_blackhole_render
527 INTEL_conservative_rasterization
528 INTEL_fragment_shader_ordering
529 INTEL_framebuffer_CMAA
530 INTEL_map_texture
531 INTEL_parallel_arrays
532 INTEL_performance_query
533 INTEL_shader_integer_functions2
534 INTEL_texture_scissor

535 KHR_blend_equation_advanced
536 KHR_blend_equation_advanced_coherent
537 KHR_context_flush_control
538 KHR_debug
539 KHR_no_error
540 KHR_parallel_shader_compile
541 KHR_robust_buffer_access_behavior
542 KHR_robustness
543 KHR_shader_subgroup
544 KHR_texture_compression_astc_hdr
545 KHR_texture_compression_astc_ldr
546 KHR_texture_compression_astc_sliced_3d

547 KTX_buffer_region

548 MESAX_texture_stack

549 MESA_bgra
550 MESA_framebuffer_flip_x
551 MESA_framebuffer_flip_y
552 MESA_framebuffer_swap_xy
553 MESA_pack_invert
554 MESA_program_binary_formats
555 MESA_resize_buffers
556 MESA_shader_integer_functions
557 MESA_texture_const_bandwidth
558 MESA_tile_raster_order
559 MESA_window_pos
560 MESA_ycbcr_texture

561 NVX_blend_equation_advanced_multi_draw_buffers
562 NVX_conditional_render
563 NVX_gpu_memory_info
564 NVX_gpu_multicast2
565 NVX_linked_gpu_multicast
566 NVX_progress_fence

567 NV_3dvision_settings
568 NV_EGL_stream_consumer_external
569 NV_alpha_to_coverage_dither_control
570 NV_bgr
571 NV_bindless_multi_draw_indirect
572 NV_bindless_multi_draw_indirect_count
573 NV_bindless_texture
574 NV_blend_equation_advanced
575 NV_blend_equation_advanced_coherent
576 NV_blend_minmax_factor
577 NV_blend_square
578 NV_clip_space_w_scaling
579 NV_command_list
580 NV_compute_program5
581 NV_compute_shader_derivatives
582 NV_conditional_render
583 NV_conservative_raster
584 NV_conservative_raster_dilate
585 NV_conservative_raster_pre_snap
586 NV_conservative_raster_pre_snap_triangles
587 NV_conservative_raster_underestimation
588 NV_copy_buffer
589 NV_copy_depth_to_color
590 NV_copy_image
591 NV_deep_texture3D
592 NV_depth_buffer_float
593 NV_depth_clamp
594 NV_depth_nonlinear
595 NV_depth_range_unclamped
596 NV_draw_buffers
597 NV_draw_instanced
598 NV_draw_texture
599 NV_draw_vulkan_image
600 NV_evaluators
601 NV_explicit_attrib_location
602 NV_explicit_multisample
603 NV_fbo_color_attachments
604 NV_fence
605 NV_fill_rectangle
606 NV_float_buffer
607 NV_fog_distance
608 NV_fragment_coverage_to_color
609 NV_fragment_program
610 NV_fragment_program2
611 NV_fragment_program4
612 NV_fragment_program_option
613 NV_fragment_shader_barycentric
614 NV_fragment_shader_interlock
615 NV_framebuffer_blit
616 NV_framebuffer_mixed_samples
617 NV_framebuffer_multisample
618 NV_framebuffer_multisample_coverage
619 NV_generate_mipmap_sRGB
620 NV_geometry_program4
621 NV_geometry_shader4
622 NV_geometry_shader_passthrough
623 NV_gpu_multicast
624 NV_gpu_program4
625 NV_gpu_program5
626 NV_gpu_program5_mem_extended
627 NV_gpu_program_fp64
628 NV_gpu_shader5
629 NV_half_float
630 NV_image_formats
631 NV_instanced_arrays
632 NV_internalformat_sample_query
633 NV_light_max_exponent
634 NV_memory_attachment
635 NV_memory_object_sparse
636 NV_mesh_shader
637 NV_multisample_coverage
638 NV_multisample_filter_hint
639 NV_non_square_matrices
640 NV_occlusion_query
641 NV_pack_subimage
642 NV_packed_depth_stencil
643 NV_packed_float
644 NV_packed_float_linear
645 NV_parameter_buffer_object
646 NV_parameter_buffer_object2
647 NV_path_rendering
648 NV_path_rendering_shared_edge
649 NV_pixel_buffer_object
650 NV_pixel_data_range
651 NV_platform_binary
652 NV_point_sprite
653 NV_polygon_mode
654 NV_present_video
655 NV_primitive_restart
656 NV_primitive_shading_rate
657 NV_query_resource_tag
658 NV_read_buffer
659 NV_read_buffer_front
660 NV_read_depth
661 NV_read_depth_stencil
662 NV_read_stencil
663 NV_register_combiners
664 NV_register_combiners2
665 NV_representative_fragment_test
666 NV_robustness_video_memory_purge
667 NV_sRGB_formats
668 NV_sample_locations
669 NV_sample_mask_override_coverage
670 NV_scissor_exclusive
671 NV_shader_atomic_counters
672 NV_shader_atomic_float
673 NV_shader_atomic_float64
674 NV_shader_atomic_fp16_vector
675 NV_shader_atomic_int64
676 NV_shader_buffer_load
677 NV_shader_noperspective_interpolation
678 NV_shader_storage_buffer_object
679 NV_shader_subgroup_partitioned
680 NV_shader_texture_footprint
681 NV_shader_thread_group
682 NV_shader_thread_shuffle
683 NV_shading_rate_image
684 NV_shadow_samplers_array
685 NV_shadow_samplers_cube
686 NV_stereo_view_rendering
687 NV_tessellation_program5
688 NV_texgen_emboss
689 NV_texgen_reflection
690 NV_texture_array
691 NV_texture_barrier
692 NV_texture_border_clamp
693 NV_texture_compression_latc
694 NV_texture_compression_s3tc
695 NV_texture_compression_s3tc_update
696 NV_texture_compression_vtc
697 NV_texture_env_combine4
698 NV_texture_expand_normal
699 NV_texture_multisample
700 NV_texture_npot_2D_mipmap
701 NV_texture_rectangle
702 NV_texture_rectangle_compressed
703 NV_texture_shader
704 NV_texture_shader2
705 NV_texture_shader3
706 NV_timeline_semaphore
707 NV_transform_feedback
708 NV_transform_feedback2
709 NV_uniform_buffer_std430_layout
710 NV_uniform_buffer_unified_memory
711 NV_vdpau_interop
712 NV_vdpau_interop2
713 NV_vertex_array_range
714 NV_vertex_array_range2
715 NV_vertex_attrib_integer_64bit
716 NV_vertex_buffer_unified_memory
717 NV_vertex_program
718 NV_vertex_program1_1
719 NV_vertex_program2
720 NV_vertex_program2_option
721 NV_vertex_program3
722 NV_vertex_program4
723 NV_video_capture
724 NV_viewport_array
725 NV_viewport_array2
726 NV_viewport_swizzle

727 OES_EGL_image
728 OES_EGL_image_external
729 OES_EGL_image_external_essl3
730 OES_blend_equation_separate
731 OES_blend_func_separate
732 OES_blend_subtract
733 OES_byte_coordinates
734 OES_compressed_ETC1_RGB8_texture
735 OES_compressed_paletted_texture
736 OES_copy_image
737 OES_depth24
738 OES_depth32
739 OES_depth_texture
740 OES_depth_texture_cube_map
741 OES_draw_buffers_indexed
742 OES_draw_texture
743 OES_element_index_uint
744 OES_extended_matrix_palette
745 OES_fbo_render_mipmap
746 OES_fragment_precision_high
747 OES_framebuffer_object
748 OES_geometry_point_size
749 OES_geometry_shader
750 OES_get_program_binary
751 OES_gpu_shader5
752 OES_mapbuffer
753 OES_matrix_get
754 OES_matrix_palette
755 OES_packed_depth_stencil
756 OES_point_size_array
757 OES_point_sprite
758 OES_read_format
759 OES_required_internalformat
760 OES_rgb8_rgba8
761 OES_sample_shading
762 OES_sample_variables
763 OES_shader_image_atomic
764 OES_shader_io_blocks
765 OES_shader_multisample_interpolation
766 OES_single_precision
767 OES_standard_derivatives
768 OES_stencil1
769 OES_stencil4
770 OES_stencil8
771 OES_surfaceless_context
772 OES_tessellation_point_size
773 OES_tessellation_shader
774 OES_texture_3D
775 OES_texture_border_clamp
776 OES_texture_buffer
777 OES_texture_compression_astc
778 OES_texture_cube_map
779 OES_texture_cube_map_array
780 OES_texture_env_crossbar
781 OES_texture_mirrored_repeat
782 OES_texture_npot
783 OES_texture_stencil8
784 OES_texture_storage_multisample_2d_array
785 OES_texture_view
786 OES_vertex_array_object
787 OES_vertex_half_float
788 OES_vertex_type_10_10_10_2

789 OML_interlace
790 OML_resample
791 OML_subsample

792 OVR_multiview
793 OVR_multiview2
794 OVR_multiview_multisampled_render_to_texture

795 PGI_misc_hints
796 PGI_vertex_hints

797 QCOM_YUV_texture_gather
798 QCOM_alpha_test
799 QCOM_binning_control
800 QCOM_driver_control
801 QCOM_extended_get
802 QCOM_extended_get2
803 QCOM_frame_extrapolation
804 QCOM_framebuffer_foveated
805 QCOM_motion_estimation
806 QCOM_perfmon_global_mode
807 QCOM_render_sRGB_R8_RG8
808 QCOM_render_shared_exponent
809 QCOM_shader_framebuffer_fetch_noncoherent
810 QCOM_shader_framebuffer_fetch_rate
811 QCOM_shading_rate
812 QCOM_texture_foveated
813 QCOM_texture_foveated2
814 QCOM_texture_foveated_subsampled_layout
815 QCOM_texture_lod_bias
816 QCOM_tiled_rendering
817 QCOM_writeonly_rendering
818 QCOM_ycbcr_degamma

819 REGAL_ES1_0_compatibility
820 REGAL_ES1_1_compatibility
821 REGAL_enable
822 REGAL_error_string
823 REGAL_extension_query
824 REGAL_log
825 REGAL_proc_address

826 REND_screen_coordinates

827 S3_s3tc

828 SGIS_clip_band_hint
829 SGIS_color_range
830 SGIS_detail_texture
831 SGIS_fog_function
832 SGIS_generate_mipmap
833 SGIS_line_texgen
834 SGIS_multisample
835 SGIS_multitexture
836 SGIS_pixel_texture
837 SGIS_point_line_texgen
838 SGIS_shared_multisample
839 SGIS_sharpen_texture
840 SGIS_texture4D
841 SGIS_texture_border_clamp
842 SGIS_texture_edge_clamp
843 SGIS_texture_filter4
844 SGIS_texture_lod
845 SGIS_texture_select

846 SGIX_async
847 SGIX_async_histogram
848 SGIX_async_pixel
849 SGIX_bali_g_instruments
850 SGIX_bali_r_instruments
851 SGIX_bali_timer_instruments
852 SGIX_blend_alpha_minmax
853 SGIX_blend_cadd
854 SGIX_blend_cmultiply
855 SGIX_calligraphic_fragment
856 SGIX_clipmap
857 SGIX_color_matrix_accuracy
858 SGIX_color_table_index_mode
859 SGIX_complex_polar
860 SGIX_convolution_accuracy
861 SGIX_cube_map
862 SGIX_cylinder_texgen
863 SGIX_datapipe
864 SGIX_decimation
865 SGIX_depth_pass_instrument
866 SGIX_depth_texture
867 SGIX_dvc
868 SGIX_flush_raster
869 SGIX_fog_blend
870 SGIX_fog_factor_to_alpha
871 SGIX_fog_layers
872 SGIX_fog_offset
873 SGIX_fog_patchy
874 SGIX_fog_scale
875 SGIX_fog_texture
876 SGIX_fragment_lighting_space
877 SGIX_fragment_specular_lighting
878 SGIX_fragments_instrument
879 SGIX_framezoom
880 SGIX_icc_texture
881 SGIX_igloo_interface
882 SGIX_image_compression
883 SGIX_impact_pixel_texture
884 SGIX_instrument_error
885 SGIX_interlace
886 SGIX_ir_instrument1
887 SGIX_line_quality_hint
888 SGIX_list_priority
889 SGIX_mpeg1
890 SGIX_mpeg2
891 SGIX_nonlinear_lighting_pervertex
892 SGIX_nurbs_eval
893 SGIX_occlusion_instrument
894 SGIX_packed_6bytes
895 SGIX_pixel_texture
896 SGIX_pixel_texture_bits
897 SGIX_pixel_texture_lod
898 SGIX_pixel_tiles
899 SGIX_polynomial_ffd
900 SGIX_quad_mesh
901 SGIX_reference_plane
902 SGIX_resample
903 SGIX_scalebias_hint
904 SGIX_shadow
905 SGIX_shadow_ambient
906 SGIX_slim
907 SGIX_spotlight_cutoff
908 SGIX_sprite
909 SGIX_subdiv_patch
910 SGIX_subsample
911 SGIX_tag_sample_buffer
912 SGIX_texture_add_env
913 SGIX_texture_coordinate_clamp
914 SGIX_texture_lod_bias
915 SGIX_texture_mipmap_anisotropic
916 SGIX_texture_multi_buffer
917 SGIX_texture_phase
918 SGIX_texture_range
919 SGIX_texture_scale_bias
920 SGIX_texture_supersample
921 SGIX_vector_ops
922 SGIX_vertex_array_object
923 SGIX_vertex_preclip
924 SGIX_vertex_preclip_hint
925 SGIX_ycrcb
926 SGIX_ycrcb_subsample
927 SGIX_ycrcba

928 SGI_color_matrix
929 SGI_color_table
930 SGI_complex
931 SGI_complex_type
932 SGI_fft
933 SGI_texture_color_table

934 SUNX_constant_data

935 SUN_convolution_border_modes
936 SUN_global_alpha
937 SUN_mesh_array
938 SUN_read_video_pixels
939 SUN_slice_accum
940 SUN_triangle_list
941 SUN_vertex

942 VIV_shader_binary

943 WIN_phong_shading
944 WIN_scene_markerXXX
945 WIN_specular_fog
946 WIN_swap_hint
nigels-com-glew-285c35d/doc/glew.css0000664000175000017500000000544715135005167017460 0ustar alastairalastairh1 { color: black; font: 23px "Verdana", "Arial", "Helvetica", sans-serif; font-weight: bold; text-align: center; margin-top: 12px; margin-bottom: 18px; } h2 { color: black; font: 18px "Verdana", "Arial", "Helvetica", sans-serif; font-weight: bold; text-align: left; padding-top: 0px; padding-bottom: 0px; margin-top: 18px; margin-bottom: 12px; } h3 { color: black; font: 17px "Verdana", "Arial", "Helvetica", sans-serif; text-align: left; padding-top: 0px; padding-bottom: 0px; margin-top: 12px; margin-bottom: 12px; } small { font: 8pt "Verdana", "Arial", "Helvetica", sans-serif; } body { color: black; font: 10pt "Verdana", "Arial", "Helvetica", sans-serif; text-align: left; } td { color: black; font: 10pt "Verdana", "Arial", "Helvetica", sans-serif; } tt { color: rgb(0,120,0); } /* color: maroon; */ td.num { color: lightgrey; font: 10pt "Verdana", "Arial", "Helvetica", sans-serif; text-align: right; } blockquote { color: rgb(0,120,0); background: #f0f0f0; text-align: left; margin-left: 40px; margin-right: 40px; margin-bottom: 6px; padding-bottom: 0px; margin-top: 0px; padding-top: 0px; border-top: 0px; border-width: 0px; } pre { color: rgb(0,120,0); background: #f0f0f0; text-align: left; margin-left: 40px; margin-right: 40px; margin-bottom: 6px; padding-bottom: 0px; margin-top: 0px; padding-top: 0px; border-top: 0px; border-width: 0px; } p { color: black; font: 10pt "Verdana", "Arial", "Helvetica", sans-serif; text-align: left; margin-bottom: 0px; padding-bottom: 6px; margin-top: 0px; padding-top: 0px; } p.right { color: black; font: 10pt "Verdana", "Arial", "Helvetica", sans-serif; text-align: right; margin-bottom: 0px; padding-bottom: 6px; margin-top: 0px; padding-top: 0px; } p.pre { color: rgb(0,120,0); font: 10pt "Courier New", "Courier", monospace; background: #f0f0f0; text-align: left; margin-top: 0px; margin-bottom: 6px; margin-left: 40px; margin-right: 40px; padding-top: 0px; padding-bottom: 6px; padding-left: 6px; padding-right: 6px; border-top: 0px; border-width: 0px; } a:link { color: rgb(0,0,139); text-decoration: none; } a:visited { color: rgb(220,20,60); text-decoration: none; } a:hover { color: rgb(220,20,60); text-decoration: underline; background: "#e8e8e8"; } ul { list-style-type: disc; text-align: left; margin-left: 40px; margin-top: 0px; padding-top: 0px; margin-bottom: 0px; padding-bottom: 3px; } ul.none { list-style-type: none; } ol { text-align: left; margin-left: 40px; margin-top: 0px; padding-top: 0px; margin-bottom: 0px; padding-bottom: 12px; } hr { color: maroon; background-color: maroon; height: 1px; border: 0px; width: 80%; } nigels-com-glew-285c35d/doc/glxew.html0000664000175000017500000003653115135005167020022 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Supported GLX Extensions

1 3DFX_multisample

2 AMD_gpu_association

3 ARB_context_flush_control
4 ARB_create_context
5 ARB_create_context_no_error
6 ARB_create_context_profile
7 ARB_create_context_robustness
8 ARB_fbconfig_float
9 ARB_framebuffer_sRGB
10 ARB_get_proc_address
11 ARB_multisample
12 ARB_robustness_application_isolation
13 ARB_robustness_share_group_isolation
14 ARB_vertex_buffer_object

15 ATI_pixel_format_float
16 ATI_render_texture

17 EXT_buffer_age
18 EXT_context_priority
19 EXT_create_context_es2_profile
20 EXT_create_context_es_profile
21 EXT_fbconfig_packed_float
22 EXT_framebuffer_sRGB
23 EXT_get_drawable_type
24 EXT_import_context
25 EXT_libglvnd
26 EXT_no_config_context
27 EXT_scene_marker
28 EXT_stereo_tree
29 EXT_swap_control
30 EXT_swap_control_tear
31 EXT_texture_from_pixmap
32 EXT_visual_info
33 EXT_visual_rating

34 INTEL_swap_event

35 MESA_agp_offset
36 MESA_copy_sub_buffer
37 MESA_pixmap_colormap
38 MESA_query_renderer
39 MESA_release_buffers
40 MESA_set_3dfx_mode
41 MESA_swap_control

42 NV_copy_buffer
43 NV_copy_image
44 NV_delay_before_swap
45 NV_float_buffer
46 NV_multigpu_context
47 NV_multisample_coverage
48 NV_present_video
49 NV_robustness_video_memory_purge
50 NV_swap_group
51 NV_vertex_array_range
52 NV_video_capture
53 NV_video_out

54 OML_swap_method
55 OML_sync_control

56 SGIS_blended_overlay
57 SGIS_color_range
58 SGIS_multisample
59 SGIS_shared_multisample

60 SGIX_fbconfig
61 SGIX_hyperpipe
62 SGIX_pbuffer
63 SGIX_swap_barrier
64 SGIX_swap_group
65 SGIX_video_resize
66 SGIX_visual_select_group

67 SGI_cushion
68 SGI_make_current_read
69 SGI_swap_control
70 SGI_video_sync

71 SUN_get_transparent_index
72 SUN_video_resize
nigels-com-glew-285c35d/doc/log.html0000664000175000017500000013751615135005167017462 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Change Log


  • 2.3.1 [01-24-2026]
    • 2.3.0 [12-27-2025]
      • New extensions:
        • GL_ARM_shader_core_properties
        • GL_EXT_EGL_image_storage_compression
        • GL_EXT_fragment_shading_rate
        • GL_EXT_framebuffer_blit_layers
        • GL_EXT_mesh_shader
        • GL_EXT_separate_depth_stencil
        • GL_EXT_shader_clock
        • GL_EXT_shader_realtime_clock
        • GL_EXT_shader_samples_identical
        • GL_EXT_shader_texture_samples
        • GL_EXT_texture_storage_compression
        • GL_HUAWEI_program_binary
        • GL_HUAWEI_shader_binary
        • GL_IMG_pvric_end_to_end_signature
        • GL_IMG_tile_region_protection
        • GL_MESA_bgra
        • GL_MESA_framebuffer_flip_x
        • GL_MESA_framebuffer_swap_xy
        • GL_MESA_texture_const_bandwidth
        • GL_NV_memory_object_sparse
        • GL_NV_primitive_shading_rate
        • GL_NV_timeline_semaphore
        • GL_NV_uniform_buffer_std430_layout
        • GL_QCOM_frame_extrapolation
        • GL_QCOM_motion_estimation
        • GL_QCOM_render_sRGB_R8_RG8
        • GL_QCOM_render_shared_exponent
        • GL_QCOM_shading_rate
        • GL_QCOM_texture_foveated2
        • GL_QCOM_texture_lod_bias
        • GL_QCOM_ycbcr_degamma
        • EGL_ANDROID_telemetry_hint
        • EGL_ANGLE_sync_control_rate
        • EGL_EXT_config_select_group
        • EGL_EXT_device_drm_render_node
        • EGL_EXT_device_persistent_id
        • EGL_EXT_device_query_name
        • EGL_EXT_display_alloc
        • EGL_EXT_explicit_device
        • EGL_EXT_gl_colorspace_bt2020_hlg
        • EGL_EXT_platform_xcb
        • EGL_EXT_present_opaque
        • EGL_EXT_query_reset_notification_strategy
        • EGL_EXT_surface_compression
        • EGL_NV_stream_consumer_eglimage
        • EGL_NV_stream_consumer_eglimage_use_scanout_attrib
        • EGL_QNX_image_native_buffer
        • EGL_QNX_platform_screen
        • GLX_EXT_get_drawable_type
      • Contributors:
        • Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, Anuraag Agrawal, Ari Pollak, Bertie Wheen, Bertrand Marc, Christian Rauch, Daniel Bernar, Danilo Spinella, Debian Janitor, Dmitry Kalinkin, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Helmut Grohne, ibbem, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, luz paz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Ondřej Nový, René Schwaiger, Ross Burton, Ryan Schmidt, SpaceIm, Tim Gates, Vanfanel, Vladimir Vukicevic, Xavier Bonaventura, Yaroslav Halchenko

    • 2.2.0 [03-15-20]
      • Bug fixes:
        • GL_EXT_semaphore constants
        • Some const pointer fixups in OpenGL API
        • Correction for GLEW_VERSION_4_5
        • Windows build updates and fixes
      • New extensions:
        • GL_AMD_framebuffer_multisample_advanced
        • GL_AMD_gpu_shader_half_float_fetch
        • GL_AMD_shader_image_load_store_lod
        • GL_ARM_texture_unnormalized_coordinates
        • GL_DMP_program_binary
        • GL_DMP_shader_binary
        • GL_EXT_EGL_image_external_wrap_modes
        • GL_EXT_EGL_image_storage
        • GL_EXT_EGL_sync
        • GL_EXT_clip_control
        • GL_EXT_depth_clamp
        • GL_EXT_disjoint_timer_query
        • GL_EXT_draw_transform_feedback
        • GL_EXT_multiview_tessellation_geometry_shader
        • GL_EXT_multiview_texture_multisample
        • GL_EXT_multiview_timer_query
        • GL_EXT_occlusion_query_boolean
        • GL_EXT_primitive_bounding_box
        • GL_EXT_protected_textures
        • GL_EXT_robustness
        • GL_EXT_shader_framebuffer_fetch_non_coherent
        • GL_EXT_static_vertex_array
        • GL_EXT_tessellation_point_size
        • GL_EXT_tessellation_shader
        • GL_EXT_texture_border_clamp
        • GL_EXT_texture_buffer
        • GL_EXT_texture_compression_s3tc_srgb
        • GL_EXT_texture_format_sRGB_override
        • GL_EXT_texture_mirror_clamp_to_edge
        • GL_EXT_texture_query_lod
        • GL_EXT_texture_shadow_lod
        • GL_FJ_shader_binary_GCCSO
        • GL_IMG_bindless_texture
        • GL_IMG_framebuffer_downsample
        • GL_IMG_multisampled_render_to_texture
        • GL_IMG_program_binary
        • GL_IMG_read_format
        • GL_IMG_shader_binary
        • GL_IMG_texture_compression_pvrtc
        • GL_IMG_texture_compression_pvrtc2
        • GL_IMG_texture_env_enhanced_fixed_function
        • GL_IMG_texture_filter_cubic
        • GL_INTEL_blackhole_render
        • GL_INTEL_shader_integer_functions2
        • GL_KHR_shader_subgroup
        • GL_MESA_framebuffer_flip_y
        • GL_MESA_program_binary_formats
        • GL_MESA_tile_raster_order
        • GL_NVX_gpu_multicast2
        • GL_NVX_progress_fence
        • GL_NV_compute_shader_derivatives
        • GL_NV_conservative_raster_pre_snap
        • GL_NV_conservative_raster_underestimation
        • GL_NV_depth_nonlinear
        • GL_NV_fragment_shader_barycentric
        • GL_NV_memory_attachment
        • GL_NV_mesh_shader
        • GL_NV_query_resource_tag
        • GL_NV_read_buffer
        • GL_NV_read_buffer_front
        • GL_NV_representative_fragment_test
        • GL_NV_scissor_exclusive
        • GL_NV_shader_subgroup_partitioned
        • GL_NV_shader_texture_footprint
        • GL_NV_shading_rate_image
        • GL_NV_vdpau_interop2
        • GL_OES_EGL_image
        • GL_OES_EGL_image_external
        • GL_OES_EGL_image_external_essl3
        • GL_OES_blend_equation_separate
        • GL_OES_blend_func_separate
        • GL_OES_blend_subtract
        • GL_OES_compressed_ETC1_RGB8_texture
        • GL_OES_compressed_paletted_texture
        • GL_OES_copy_image
        • GL_OES_depth24
        • GL_OES_depth32
        • GL_OES_depth_texture
        • GL_OES_depth_texture_cube_map
        • GL_OES_draw_buffers_indexed
        • GL_OES_draw_texture
        • GL_OES_element_index_uint
        • GL_OES_extended_matrix_palette
        • GL_OES_fbo_render_mipmap
        • GL_OES_fragment_precision_high
        • GL_OES_framebuffer_object
        • GL_OES_geometry_point_size
        • GL_OES_geometry_shader
        • GL_OES_get_program_binary
        • GL_OES_gpu_shader5
        • GL_OES_mapbuffer
        • GL_OES_matrix_get
        • GL_OES_matrix_palette
        • GL_OES_packed_depth_stencil
        • GL_OES_point_size_array
        • GL_OES_point_sprite
        • GL_OES_read_format
        • GL_OES_required_internalformat
        • GL_OES_rgb8_rgba8
        • GL_OES_sample_shading
        • GL_OES_sample_variables
        • GL_OES_shader_image_atomic
        • GL_OES_shader_io_blocks
        • GL_OES_shader_multisample_interpolation
        • GL_OES_single_precision
        • GL_OES_standard_derivatives
        • GL_OES_stencil1
        • GL_OES_stencil4
        • GL_OES_stencil8
        • GL_OES_surfaceless_context
        • GL_OES_tessellation_point_size
        • GL_OES_tessellation_shader
        • GL_OES_texture_3D
        • GL_OES_texture_border_clamp
        • GL_OES_texture_buffer
        • GL_OES_texture_compression_astc
        • GL_OES_texture_cube_map
        • GL_OES_texture_cube_map_array
        • GL_OES_texture_env_crossbar
        • GL_OES_texture_mirrored_repeat
        • GL_OES_texture_npot
        • GL_OES_texture_stencil8
        • GL_OES_texture_storage_multisample_2d_array
        • GL_OES_texture_view
        • GL_OES_vertex_array_object
        • GL_OES_vertex_half_float
        • GL_OES_vertex_type_10_10_10_2
        • GL_QCOM_YUV_texture_gather
        • GL_QCOM_shader_framebuffer_fetch_rate
        • GL_QCOM_texture_foveated
        • GL_QCOM_texture_foveated_subsampled_layout
        • GL_VIV_shader_binary
        • EGL_ANDROID_GLES_layers
        • EGL_ANDROID_get_frame_timestamps
        • EGL_ANDROID_get_native_client_buffer
        • EGL_ARM_image_format
        • EGL_EXT_bind_to_front
        • EGL_EXT_client_sync
        • EGL_EXT_compositor
        • EGL_EXT_gl_colorspace_display_p3
        • EGL_EXT_gl_colorspace_display_p3_linear
        • EGL_EXT_gl_colorspace_display_p3_passthrough
        • EGL_EXT_gl_colorspace_scrgb
        • EGL_EXT_image_gl_colorspace
        • EGL_EXT_image_implicit_sync_control
        • EGL_EXT_surface_CTA861_3_metadata
        • EGL_EXT_sync_reuse
        • EGL_KHR_display_reference
        • EGL_MESA_query_driver
        • EGL_NV_context_priority_realtime
        • EGL_NV_quadruple_buffer
        • EGL_NV_stream_dma
        • EGL_NV_stream_flush
        • EGL_NV_stream_origin
        • EGL_NV_triple_buffer
        • EGL_WL_bind_wayland_display
        • EGL_WL_create_wayland_buffer_from_image
        • GLX_EXT_context_priority
        • GLX_EXT_no_config_context
        • GLX_NV_multigpu_context
        • WGL_NV_multigpu_context
      • Contributors:
        • Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, Anuraag Agrawal, Ari Pollak, Bertie Wheen, Bertrand Marc, Christian Rauch, CiriUp, Daniel Bernar, Danilo Spinella, Debian Janitor, Deve, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Helmut Grohne, ibbem, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, luz paz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, Ondřej Nový, Paul Steinbrecher, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, SpaceIm, Stefan Zabka, Steve Robinson, TheVice, Tim Gates, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, wiranoid, Xavier Bonaventura, Yaroslav Halchenko

    • 2.1.0 [07-31-17]
      • Enhancements:
        • OpenGL 4.6 support added
        • Improved Mac OSX build support
        • Improved cmake build support
      • Bug fixes:
        • Resolved crash when glXGetCurrentDisplay() is NULL
        • CMake: only install PDB files with MSVC
        • wglGetProcAddress crash with NOGDI defined
        • Mac: using -Os rather than -O2
      • New extensions:
        • GL_AMD_gpu_shader_half_float
        • GL_AMD_shader_ballot
        • GL_ARB_gl_spirv
        • GL_EGL_KHR_context_flush_control
        • GL_INTEL_conservative_rasterization
        • GL_MESA_shader_integer_functions
        • GL_NVX_blend_equation_advanced_multi_draw_buffers
        • GL_NV_gpu_multicast
        • EGL_ARM_implicit_external_sync
        • EGL_EXT_gl_colorspace_bt2020_linear
        • EGL_EXT_gl_colorspace_bt2020_pq
        • EGL_EXT_gl_colorspace_scrgb_linear
        • EGL_EXT_image_dma_buf_import_modifiers
        • EGL_EXT_pixel_format_float
        • EGL_EXT_surface_SMPTE2086_metadata
        • EGL_KHR_context_flush_control
        • EGL_KHR_no_config_context
        • EGL_KHR_stream_attrib
        • EGL_MESA_platform_surfaceless
        • EGL_NV_stream_cross_display
        • EGL_NV_stream_cross_object
        • EGL_NV_stream_cross_partition
        • EGL_NV_stream_cross_process
        • EGL_NV_stream_cross_system
        • EGL_NV_stream_fifo_next
        • EGL_NV_stream_fifo_synchronous
        • EGL_NV_stream_frame_limits
        • EGL_NV_stream_remote
        • EGL_NV_stream_reset
        • EGL_NV_stream_socket
        • EGL_NV_stream_socket_inet
        • EGL_NV_stream_socket_unix
        • WGL_EXT_colorspace
      • Contributors:
        • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, Bertie Wheen, Bertrand Marc, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Helmut Grohne, ibbem, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, luz paz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Miguel Vera, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, Tan Li Boon, TheVice, Tim Gates, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, wiranoid, Xavier Bonaventura, Yaroslav Halchenko

    • 2.0.0 [07-24-16]
      • Enhancements:
        • Forward context support added
        • OSMesa support added
        • EGL support added
        • MX support discontinued
        • Improved cmake build support
      • New extensions:
        • GL_AMD_shader_explicit_vertex_parameter
        • GL_ARB_gl_spirv
        • GL_EGL_NV_robustness_video_memory_purge
        • GL_EXT_window_rectangles
        • GL_INTEL_conservative_rasterization
        • GL_KHR_texture_compression_astc_sliced_3d
        • GL_MESA_shader_integer_functions
        • GL_NVX_blend_equation_advanced_multi_draw_buffers
        • GL_NVX_linked_gpu_multicast
        • GL_NV_clip_space_w_scaling
        • GL_NV_command_list
        • GL_NV_conservative_raster_pre_snap_triangles
        • GL_NV_draw_vulkan_image
        • GL_NV_gpu_multicast
        • GL_NV_robustness_video_memory_purge
        • GL_NV_shader_atomic_float64
        • GL_NV_stereo_view_rendering
        • GL_NV_viewport_swizzle
        • GLX_EXT_libglvnd
        • GLX_NV_robustness_video_memory_purge
      • Contributors:
        • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, Bertie Wheen, Bertrand Marc, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Gyusun Yeom, Helmut Grohne, ibbem, Icy Defiance, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, Loufis, luz paz, Marcel Metz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Miguel Vera, Mischa Spiegelmock, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, stopiccot, Tamas Kenez, Tan Li Boon, TheVice, Tim Gates, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, Wes Tarro, wiranoid, Xavier Bonaventura, Yaroslav Halchenko

  • 1.13.0 [08-10-2015]
    • Enhancements:
      • glxewInit, wglewInit
      • glewinfo adds support for -version, -profile core|compatibility and -flag debug|forward parameters
      • Improved cmake build support
    • New extensions:
      • GL_ARB_ES3_2_compatibility
      • GL_ARB_fragment_shader_interlock
      • GL_ARB_gpu_shader_int64
      • GL_ARB_parallel_shader_compile
      • GL_ARB_post_depth_coverage
      • GL_ARB_sample_locations
      • GL_ARB_shader_atomic_counter_ops
      • GL_ARB_shader_ballot
      • GL_ARB_shader_clock
      • GL_ARB_shader_viewport_layer_array
      • GL_ARB_sparse_texture2
      • GL_ARB_sparse_texture_clamp
      • GL_ARB_texture_filter_minmax
      • GL_INTEL_framebuffer_CMAA
      • GL_KHR_no_error
      • GL_NV_conservative_raster_dilate
      • GL_OVR_multiview
      • GL_OVR_multiview2
    • Contributors:
      • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, BastiaanOlij, Bertie Wheen, Bertrand Marc, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Gyusun Yeom, Helmut Grohne, ibbem, Icy Defiance, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, Lauri Nurmi, Loufis, luz paz, Marcel Metz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Miguel Vera, Mischa Spiegelmock, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, stopiccot, Tamas Kenez, Tan Li Boon, TheVice, Tim Gates, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, Wes Tarro, wiranoid, xantares, Xavier Bonaventura, Yaroslav Halchenko, yy-yyaa

  • 1.12.0 [01-26-2015]
    • New extensions:
      • GL_EXT_polygon_offset_clamp
      • GL_EXT_post_depth_coverage
      • GL_EXT_raster_multisample
      • GL_EXT_sparse_texture2
      • GL_EXT_texture_filter_minmax
      • GL_NV_conservative_raster
      • GL_NV_fill_rectangle
      • GL_NV_fragment_coverage_to_color
      • GL_NV_fragment_shader_interlock
      • GL_NV_framebuffer_mixed_samples
      • GL_NV_geometry_shader_passthrough
      • GL_NV_internalformat_sample_query
      • GL_NV_sample_locations
      • GL_NV_sample_mask_override_coverage
      • GL_NV_shader_atomic_fp16_vector
      • GL_NV_uniform_buffer_unified_memory
      • GL_NV_viewport_array2
    • Contributors:
      • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, BastiaanOlij, Bertie Wheen, Bertrand Marc, BryceMehring, Carsten Neumann, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Frank Park, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Gyusun Yeom, Helmut Grohne, ibbem, Icy Defiance, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Kekschen, Kerby Geffrard, Lauri Nurmi, Loufis, luz paz, Marcel Metz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Matthias Goldhoorn, Miguel Vera, Mischa Spiegelmock, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, omniavinco, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, stopiccot, Tamas Kenez, Tan Li Boon, TheVice, Tim Gates, Togo Nishigaki, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, Wes Tarro, wiranoid, xantares, Xavier Bonaventura, Yaroslav Halchenko, yy-yyaa

  • 1.11.0 [08-11-2014]
    • New features:
      • Support for OpenGL 4.5
    • New extensions:
      • GL_AMD_gcn_shader
      • GL_AMD_gpu_shader_int64
      • GL_AMD_occlusion_query_event
      • GL_AMD_shader_atomic_counter_ops
      • GL_AMD_shader_stencil_value_export
      • GL_AMD_transform_feedback4
      • GL_ARB_ES3_1_compatibility
      • GL_ARB_clip_control
      • GL_ARB_conditional_render_inverted
      • GL_ARB_cull_distance
      • GL_ARB_derivative_control
      • GL_ARB_direct_state_access
      • GL_ARB_get_texture_sub_image
      • GL_ARB_pipeline_statistics_query
      • GL_ARB_shader_texture_image_samples
      • GL_ARB_sparse_buffer
      • GL_ARB_texture_barrier
      • GL_ARB_transform_feedback_overflow_query
      • GL_EXT_debug_label
      • GL_EXT_shader_image_load_formatted
      • GL_EXT_shader_integer_mix
      • GL_INTEL_fragment_shader_ordering
      • GL_INTEL_performance_query
      • GL_KHR_blend_equation_advanced
      • GL_KHR_blend_equation_advanced_coherent
      • GL_KHR_context_flush_control
      • GL_KHR_robust_buffer_access_behavior
      • GL_KHR_robustness
      • GL_KHR_texture_compression_astc_hdr
      • GL_NV_bindless_multi_draw_indirect_count
      • GL_NV_shader_atomic_int64
      • GL_NV_shader_thread_group
      • GL_NV_shader_thread_shuffle
      • GL_REGAL_proc_address
      • GLX_ARB_context_flush_control
      • GLX_EXT_stereo_tree
      • GLX_MESA_query_renderer
      • GLX_NV_copy_buffer
      • GLX_NV_delay_before_swap
      • WGL_ARB_context_flush_control
      • WGL_NV_delay_before_swap
    • Contributors:
      • Abdo Roig-Maranges, Alastair McKinstry, Alessio Treglia, Alexey Tereshenkov, Amaya Rodrigo Sastre, anatoly techtonik, Anuraag Agrawal, Ari Pollak, BastiaanOlij, Bertie Wheen, Bertrand Marc, BryceMehring, Carsten Neumann, Christian Rauch, CiriUp, Claudio, Daniel Bernar, Danilo Margarido, Danilo Spinella, Dāvis, Debian Janitor, Deve, Dillon Cower, dimitri, Dmitry Kalinkin, Eonfge, Fabrizio Regalli, Frank Park, Gianfranco Costamagna, G'lek Tarssza, grahamreeds, Gyusun Yeom, hasufell, Helmut Grohne, ibbem, Icy Defiance, jasjuang, Jean-Christophe Fillion-Robin, Jelmer Vernooij, Joost Yervante Damad, Jose Santiago, Julian Squires, Julien Schueller, Keith Rosenberg, Kekschen, Kerby Geffrard, Lauri Nurmi, Loufis, luz paz, Marcel Metz, Marcelo E. Magallon, Marvin Schmidt, Matteo F. Vescovi, Matthias Bentrup, Matthias Goldhoorn, Miguel Vera, Mischa Spiegelmock, Ned Loynd, Nicolas Caramelli, Nigel Stewart, NoamDev, Olli Kallioinen, omniavinco, Ondřej Nový, Paul Steinbrecher, Rashad Kanavath, rconde, Rene, René Schwaiger, Ross Burton, Ryan Schmidt, Shanee, SpaceIm, Stefan Zabka, Steve Robinson, stopiccot, Tamas Kenez, Tan Li Boon, TheVice, Tim Gates, Togo Nishigaki, Valentin Sarthou, Vanfanel, Vladimir Vukicevic, Wes Tarro, wiranoid, xantares, Xavier Bonaventura, Yaroslav Halchenko, yy-yyaa

  • 1.10.0 [07-22-2013]
    • New features:
      • Support for OpenGL 4.4
    • New extensions:
      • GL_AMD_interleaved_elements
      • GL_AMD_shader_trinary_minmax
      • GL_AMD_sparse_texture
      • GL_ANGLE_depth_texture
      • GL_ANGLE_framebuffer_blit
      • GL_ANGLE_framebuffer_multisample
      • GL_ANGLE_instanced_arrays
      • GL_ANGLE_pack_reverse_row_order
      • GL_ANGLE_program_binary
      • GL_ANGLE_texture_compression_dxt1
      • GL_ANGLE_texture_compression_dxt3
      • GL_ANGLE_texture_compression_dxt5
      • GL_ANGLE_texture_usage
      • GL_ANGLE_timer_query
      • GL_ANGLE_translated_shader_source
      • GL_ARB_bindless_texture
      • GL_ARB_buffer_storage
      • GL_ARB_clear_texture
      • GL_ARB_compute_variable_group_size
      • GL_ARB_enhanced_layouts
      • GL_ARB_indirect_parameters
      • GL_ARB_multi_bind
      • GL_ARB_query_buffer_object
      • GL_ARB_seamless_cubemap_per_texture
      • GL_ARB_shader_draw_parameters
      • GL_ARB_shader_group_vote
      • GL_ARB_sparse_texture
      • GL_ARB_texture_mirror_clamp_to_edge
      • GL_ARB_texture_stencil8
      • GL_ARB_vertex_type_10f_11f_11f_rev
      • GL_INTEL_map_texture
      • GL_NVX_conditional_render
      • GL_NV_bindless_multi_draw_indirect
      • GL_NV_blend_equation_advanced
      • GL_NV_compute_program5
      • GL_NV_deep_texture3D
      • GL_NV_draw_texture
      • GL_NV_shader_atomic_counters
      • GL_NV_shader_storage_buffer_object
      • GL_REGAL_ES1_0_compatibility
      • GL_REGAL_ES1_1_compatibility
      • GL_REGAL_enable
      • GLX_EXT_buffer_age
      • WGL_ARB_robustness_application_isolation
      • WGL_ARB_robustness_share_group_isolation
    • Bug fixes

  • 1.9.0 [08-06-2012]
    • New features:
    • New extensions:
      • GL_ARB_ES3_compatibility
      • GL_ARB_clear_buffer_object
      • GL_ARB_compute_shader
      • GL_ARB_copy_image
      • GL_ARB_explicit_uniform_location
      • GL_ARB_fragment_layer_viewport
      • GL_ARB_framebuffer_no_attachments
      • GL_ARB_internalformat_query2
      • GL_ARB_multi_draw_indirect
      • GL_ARB_program_interface_query
      • GL_ARB_robust_buffer_access_behavior
      • GL_ARB_robustness_application_isolation
      • GL_ARB_robustness_share_group_isolation
      • GL_ARB_shader_image_size
      • GL_ARB_shader_storage_buffer_object
      • GL_ARB_stencil_texturing
      • GL_ARB_texture_buffer_range
      • GL_ARB_texture_query_levels
      • GL_ARB_texture_storage_multisample
      • GL_ARB_texture_view
      • GL_ARB_vertex_attrib_binding
      • GL_EXT_debug_marker
      • GL_KHR_debug
      • GL_REGAL_error_string
      • GL_REGAL_extension_query
      • GL_REGAL_log
      • GLX_ARB_robustness_application_isolation
      • GLX_ARB_robustness_share_group_isolation
      • GLX_EXT_create_context_es_profile
      • WGL_EXT_create_context_es_profile
    • Bug fixes:
      • Not using GLU library for Makefile builds.

  • 1.8.0 [07-17-2012]
    • New extensions:
      • GL_AMD_pinned_memory
      • GL_AMD_query_buffer_object
      • GL_AMD_stencil_operation_extended
      • GL_AMD_vertex_shader_layer
      • GL_AMD_vertex_shader_viewport_index
      • GL_NV_bindless_texture
      • GL_NV_shader_atomic_float
      • GLX_EXT_swap_control_tear
      • WGL_EXT_swap_control_tear
      • WGL_NV_DX_interop2
    • Bug fixes:
      • MS Visual Studio 2010 projects added
      • GLX_NV_video_out replaces GLX_NV_video_output
      • ANSI C prototype for glewInit
      • Improved CentOS build support
      • Improved GL_ARB_gpu_shader_fp64 support
      • ARB_texture_compression_bptc and ARB_copy_buffer constants
      • Linux needs to define GLEW_STATIC for static library builds
      • Custom code generation problem resolved
      • GLEWAPIENTRY added to glew.h for calling convention customization
      • Correction for glPathStencilDepthOffsetNV
      • Resolve OSX gcc warnings
      • Added build support for NetBSD

  • 1.7.0 [08-26-2011]
    • New features:
      • Support for OpenGL 4.2
    • New extensions:
      • GL_AMD_multi_draw_indirect
      • GL_ARB_base_instance
      • GL_ARB_compressed_texture_pixel_storage
      • GL_ARB_conservative_depth
      • GL_ARB_internalformat_query
      • GL_ARB_map_buffer_alignment
      • GL_ARB_shader_atomic_counters
      • GL_ARB_shader_image_load_store
      • GL_ARB_shading_language_420pack
      • GL_ARB_shading_language_packing
      • GL_ARB_texture_storage
      • GL_ARB_transform_feedback_instanced
      • GL_EXT_framebuffer_multisample_blit_scaled
      • GL_NV_path_rendering
      • GL_NV_path_rendering
      • GLX_MESA_swap_control
    • Bug fixes:
      • const qualifiers for GL 1.4 MultiDrawArrays, MultiDrawElements
      • Add glGetGraphicsResetStatusARB to GL_ARB_robustness
      • Remove EXT suffix from GL_KTX_buffer_region entry points
      • Solaris needs inttypes.h
      • Add ERROR_INVALID_VERSION_ARB and ERROR_INVALID_PROFILE_ARB to WGL_ARB_create_context
      • Add GLX_MESA_swap_control
      • Set -install_name for OSX
      • Add 64-bit darwin build option (SYSTEM=darwin_x86-64)
      • Add GL_NV_path_rendering

  • 1.6.0 [04-27-2011]
    • New extensions:
      • GL_AMD_blend_minmax_factor
      • GL_AMD_sample_positions
      • GL_EXT_x11_sync_object
      • GL_NV_texture_multisample
      • GL_NV_video_capture
      • GLX_NV_video_capture
      • WGL_NV_DX_interop
      • WGL_NV_video_capture
    • Bug fixes:
      • Define GLEW_NO_GLU for no glu dependency.
      • mx suffix for GLEW MX libraries, build both libraries by default.
      • Cygwin build improvements
      • Soname of GLEWmx shared libraries
      • Query GL extension string only once
      • GLX_OML_sync_control no longer requires C99
      • glDraw*InstancedARB moved from GL_ARB_draw_instanced to GL_ARB_instanced_arrays
      • glFramebufferTextureLayerEXT moved from GL_EXT_geometry_shader4 to GL_EXT_texture_array
      • Fixes for BSD build

  • 1.5.8 [01-31-2011]
    • New extensions:
      • GL_AMD_depth_clamp_separate
      • GL_EXT_texture_sRGB_decode
    • Bug fixes:
      • Borland C++ fix for __int64
      • GL_DOUBLE_MATNxM enumerants for OpenGL 4.0
      • Correction to glGetTransformFeedbackVarying
      • Correction to glSecondaryColorPointer
      • Corrections to glGetVertexAttribPointerv and glGetShaderSource
      • Switched code repository from svn to git

  • 1.5.7 [11-03-2010]
    • New extension:
      • GL_NVX_gpu_memory_info
    • Bug fixes:
      • Improved mingw32 build support
      • Improved cygwin build support
      • glGetPointervEXT fix
      • Add GLEW_VERSION_1_2_1

  • 1.5.6 [09-07-2010]
    • New features:
      • Support for OpenGL 4.1
    • New extensions:
      • GL_ARB_ES2_compatibility
      • GL_ARB_cl_event
      • GL_ARB_debug_output
      • GL_ARB_get_program_binary
      • GL_ARB_robustness
      • GL_ARB_separate_shader_objects
      • GL_ARB_shader_precision
      • GL_ARB_shader_stencil_export
      • GL_ARB_vertex_attrib_64bit
      • GL_ARB_viewport_array
      • GLX_ARB_create_context_robustness
      • GLX_EXT_create_context_es2_profile
      • WGL_ARB_create_context_robustness
      • WGL_EXT_create_context_es2_profile

  • 1.5.5 [07-13-2010]
    • New extensions:
      • GL_AMD_debug_output
      • GL_AMD_name_gen_delete
      • GL_AMD_transform_feedback3_lines_triangles
      • GL_NV_multisample_coverage
      • GL_NV_vdpau_interop
      • GLX_AMD_gpu_association
      • GLX_NV_multisample_coverage
      • WGL_NV_multisample_coverage
    • Bug fixes:
      • Compilation issue with GLX_SGI_video_sync
      • OpenGL 4.0 double-precision uniform functions added
      • Constness of glPointParameterfvARB and glPointParameterfvEXT
      • Added glVertexAttribDivisor
      • Compilation issue with Nvidia GLX headers

  • 1.5.4 [04-21-2010]
    • New features:
      • Support for OpenGL 3.3
      • Support for OpenGL 4.0
    • New extensions:
      • GL_AMD_conservative_depth
      • GL_ARB_blend_func_extended
      • GL_ARB_draw_indirect
      • GL_ARB_explicit_attrib_location
      • GL_ARB_gpu_shader5
      • GL_ARB_gpu_shader_fp64
      • GL_ARB_occlusion_query2
      • GL_ARB_sampler_objects
      • GL_ARB_shader_bit_encoding
      • GL_ARB_shader_subroutine
      • GL_ARB_shading_language_include
      • GL_ARB_tessellation_shader
      • GL_ARB_texture_buffer_object_rgb32
      • GL_ARB_texture_compression_bptc
      • GL_ARB_texture_rgb10_a2ui
      • GL_ARB_texture_swizzle
      • GL_ARB_timer_query
      • GL_ARB_transform_feedback2
      • GL_ARB_transform_feedback3
      • GL_ARB_vertex_type_2_10_10_10_rev
      • GL_EXT_shader_image_load_store
      • GL_EXT_vertex_attrib_64bit
      • GL_NV_gpu_program5
      • GL_NV_gpu_program_fp64
      • GL_NV_gpu_shader5
      • GL_NV_tessellation_program5
      • GL_NV_vertex_attrib_integer_64bit
      • GLX_ARB_vertex_buffer_object
    • Bug fixes:
      • Parameter constness fix for glPointParameteriv and glPointParameterfv

  • 1.5.3 [02-28-2010]
    • New extensions:
      • GLX_INTEL_swap_event
      • GL_AMD_seamless_cubemap_per_texture
      • GL_AMD_shader_stencil_export
    • Bug fixes:
      • Correct version detection for GL 3.1 and 3.2
      • Missing 3.1 enumerants
      • Add glew.pc

  • 1.5.2 [12-31-2009]
    • New features:
      • Support for OpenGL 3.1
      • Support for OpenGL 3.2
    • New extensions:
      • GL_AMD_draw_buffers_blend
      • GL_AMD_performance_monitor
      • GL_AMD_texture_texture4
      • GL_AMD_vertex_shader_tessellator
      • GL_APPLE_aux_depth_stencil
      • GL_APPLE_object_purgeable
      • GL_APPLE_rgb_422
      • GL_APPLE_row_bytes
      • GL_APPLE_vertex_program_evaluators
      • GL_ARB_compatibility
      • GL_ARB_copy_buffer
      • GL_ARB_depth_clamp
      • GL_ARB_draw_buffers_blend
      • GL_ARB_draw_elements_base_vertex
      • GL_ARB_fragment_coord_conventions
      • GL_ARB_provoking_vertex
      • GL_ARB_sample_shading
      • GL_ARB_seamless_cube_map
      • GL_ARB_shader_texture_lod
      • GL_ARB_sync
      • GL_ARB_texture_cube_map_array
      • GL_ARB_texture_gather
      • GL_ARB_texture_multisample
      • GL_ARB_texture_query_lod
      • GL_ARB_uniform_buffer_object
      • GL_ARB_vertex_array_bgra
      • GL_ATI_meminfo
      • GL_EXT_provoking_vertex
      • GL_EXT_separate_shader_objects
      • GL_EXT_texture_snorm
      • GL_NV_copy_image
      • GL_NV_parameter_buffer_object2
      • GL_NV_shader_buffer_load
      • GL_NV_texture_barrier
      • GL_NV_transform_feedback2
      • GL_NV_vertex_buffer_unified_memory
      • WGL_AMD_gpu_association
      • WGL_ARB_create_context_profile
      • WGL_NV_copy_image
      • GLX_ARB_create_context_profile
      • GLX_EXT_swap_control
      • GLX_NV_copy_image
    • Bug fixes:
      • DOS line endings for windows .zip archives only.
      • glTransformFeedbackVaryings arguments.
      • Resource leak in glewinfo and visualinfo tools.
      • WIN32_LEAN_AND_MEAN preprocessor pollution.
      • Fixed version detection for GLEW_VERSION_2_1 and GLEW_VERSION_3_0.
      • MesaGLUT glut.h GLAPIENTRY dependency.
      • glFramebufferTextureLayer correction.
      • OSX compiler warnings resolved.
      • Cygwin linking to opengl32 by default, rather than X11 OpenGL.
      • SnowLeopard (OSX 10.6) gl.h detection.
      • Use $(STRIP) consistently.

  • 1.5.1 [11-03-2008]
    • New features:
      • Support for OpenGL 3.0
    • New extensions:
      • GL_ARB_depth_buffer_float
      • GL_ARB_draw_instance,
      • GL_ARB_framebuffer_object
      • GL_ARB_framebuffer_sRGB
      • GL_ARB_geometry_shader4
      • GL_ARB_half_float_pixel
      • GL_ARB_half_float_vertex
      • GL_ARB_instanced_arrays
      • GL_ARB_map_buffer_range
      • GL_ARB_texture_buffer_object
      • GL_ARB_texture_compression_rgtc
      • GL_ARB_vertex_array_object
      • GL_EXT_direct_state_access
      • GL_EXT_texture_swizzle
      • GL_EXT_transform_feedback
      • GL_EXT_vertex_array_bgra
      • GL_NV_conditional_render
      • GL_NV_explicit_multisample
      • GL_NV_present_video
      • GL_SGIS_point_line_texgen
      • GL_SGIX_convolution_accuracy
      • WGL_ARB_create_context
      • WGL_ARB_framebuffer_sRGB
      • WGL_NV_present_video
      • WGL_NV_swap_group
      • WGL_NV_video_output
      • GLX_ARB_create_context
      • GLX_ARB_framebuffer_sRGB
      • GLX_NV_present_video
      • GLX_NV_swap_group
      • GLX_NV_video_output
    • Bug fixes:
      • Licensing issues with documentation
      • Problems with long long and _MSC_VER on MINGW
      • Incorrect parameter for glGetUniformLocation
      • glewGetExtension fails on last entry
      • Incomplete GL_NV_texture_shader tokens
      • Scripting problems on Cygwin
      • Incorrect definition for GLint on OS X

  • 1.5.0 [12-27-2007]
    • New features:
      • Licensing change (BSD, Mesa 3-D, Khronos)
      • Switch to using registry on www.opengl.org
      • Support for major and minor version strings
    • New extensions:
      • GL_APPLE_flush_buffer_range
      • GL_GREMEDY_frame_terminator
      • GLX_EXT_texture_from_pixmap
    • Bug fixes:
      • Incorrect 64-bit type definitions
      • Do not strip static library on install
      • Missing tokens in GL_ATI_fragment_shader and WGL_{ARB,EXT}_make_current_read
      • Missing tokens in GL_VERSION_2_1
      • Missing functions in GL_VERSION_1_4
      • Incorrect parameter type for glXCopyContext

  • 1.4.0 [04-27-2007]
    • New features:
      • Extension variables are declared const to avoid possible corruption of their values
    • New extensions:
      • GL_NV_depth_range_unclamped
    • Bug fixes:
      • Incorrect tokens in GL_NV_transform_feedback and GL_NV_framebuffer_multisample_coverage
      • Incorrect function names in GL_EXT_gpu_program_parameters
      • Missing tokens in GL_EXT_framebuffer_multisample
      • GLEW_MX initialization problem for WGL_{ARB,EXT}_extensions_string

  • 1.3.6 [03-04-2007]
    • New extensions:
      • GL_ATI_shader_texture_lod
      • GL_EXT_gpu_program_parameters
      • GL_NV_geometry_shader4
      • WGL_NV_gpu_affinity
      • GLX_SGIX_hyperpipe
    • Bug fixes:
      • Missing include guards in glxew.h
      • Makefile and install problems for Cygwin builds
      • Install problem for Linux AMD64 builds
      • Incorrect token in GL_ATI_texture_compression_3dc
      • Missing tokens from GL_ATIX_point_sprites

  • 1.3.5 [11-21-2006]
    • New features:
      • Support for core OpenGL 2.1
      • Debug support for glewIsSupported
    • New extensions:
      • GL_EXT_bindable_uniform
      • GL_EXT_draw_buffers2
      • GL_EXT_draw_instanced
      • GL_EXT_framebuffer_sRGB
      • GL_EXT_geometry_shader4
      • GL_EXT_gpu_shader4
      • GL_EXT_packed_float
      • GL_EXT_texture_array
      • GL_EXT_texture_buffer_object
      • GL_EXT_texture_compression_latc
      • GL_EXT_texture_compression_rgtc
      • GL_EXT_texture_integer
      • GL_EXT_texture_shared_exponent
      • GL_EXT_timer_query
      • GL_NV_depth_buffer_float
      • GL_NV_fragment_program4
      • GL_NV_framebuffer_multisample_coverage
      • GL_NV_geometry_program4
      • GL_NV_gpu_program4
      • GL_NV_parameter_buffer_object
      • GL_NV_transform_feedback
      • GL_NV_vertex_program4
      • GL_OES_byte_coordinates
      • GL_OES_compressed_paletted_texture
      • GL_OES_read_format
      • GL_OES_single_precision
      • WGL_EXT_pixel_format_packed_float
      • WGL_EXT_framebuffer_sRGB
      • GLX_EXT_fbconfig_packed_float
      • GLX_EXT_framebuffer_sRGB
    • Bug fixes:
      • Wrong GLXContext definition on Solaris
      • Makefile problem for parallel builds

  • 1.3.4 [03-04-2006]
    • New extensions:
      • GL_EXT_framebuffer_blit
      • GL_EXT_framebuffer_multisample
      • GL_EXT_packed_depth_stencil
      • GL_MESAX_texture_stack
      • WGL_3DL_stereo_control
    • Bug fixes:
      • glBlendEquation missing from GL_ARB_imaging
      • Wrong APIENTRY definition for Cygwin
      • Incorrect OS X OpenGL types
      • Unix 64-bit installation patch

  • 1.3.3 [05-16-2005]
    • New feature:
      • Code generation option to split source into multiple files
    • Bug fixes:
      • OpenGL 2.0 core initialization problems
      • Wrong value for token GL_SHADER_TYPE
      • Missing tokens in GL_ATI_fragment_shader
      • Missing entry points in GL_ARB_transpose_matrix

  • 1.3.2 [03-16-2005]
    • New extension:
      • GL_APPLE_pixel_buffer
    • Bug fixes:
      • Missing OpenGL 2.0 entry points
      • Missing tokens in GL_SGIX_shadow
      • MinGW makefile problem
      • Check for incorrect OpenGL version string on SiS hardware
      • Documentation update to meet the HTML 4.01 Transitional specification

  • 1.3.1 [02-02-2005]
    • New features:
      • Consistent Unix and Windows versioning
    • New extensions:
      • GL_EXT_framebuffer_object
      • GL_ARB_pixel_buffer_object
    • Bug fixes:
      • Missing OpenGL 2.0 tokens
      • Incorrect typedefs (GLhandleARB and GLhalf)
      • Borland compiler problems

  • 1.3.0 [01-04-2005]
    • New features:
      • Support for core OpenGL 2.0
      • glewIsSupported provides efficient string-based extension checks
      • Custom code generation from a list of extensions
      • Makefile changes
    • New extensions:
      • WGL_ATI_render_texture_rectangle
    • Bug fixes:
      • Incorrect function signature in OpenGL 1.5 core

  • 1.2.5 [12-06-2004]
    • New extensions:
      • GL_ATI_texture_compression_3dc
      • GL_EXT_Cg_shader
      • GL_EXT_draw_range_elements
      • GL_KTX_buffer_region
    • Bug fixes:
      • OpenGL version detection bug
      • Problems with wxWindows and MinGW compilation
      • visualinfo compilation problem with GLEW_MX specified
      • Wrong token name in OpenGL 1.5 core
    • Support for FreeBSD

  • 1.2.4 [09-06-2004]
    • Added ARB_draw_buffers and ARB_texture_rectangle
    • Fixed bug in ARB_shader_objects
    • Replaced wglinfo with visualinfo

  • 1.2.3 [06-10-2004]
    • Added GL_NV_fragment_program2, GL_NV_fragment_program_option, GL_NV_vertex_program2_option, GL_NV_vertex_program3
    • Bug fix in GL_ARB_vertex_blend

  • 1.2.2 [05-08-2004]
    • Added GL_EXT_pixel_buffer_object, removed GL_NV_element_array
    • Fixed GLEW_MX problems
    • Bug fix in GL_EXT_texture_rectangle and wglinfo

  • 1.2.1 [03-18-2004]
    • Bug fix in OpenGL version query (early release of 1.2.0 contained this bug)
    • Bug fix in GL_ARB_shader_objects and temporary bug fix in GL_ARB_vertex_shader
    • Added flags on GDI support and multisampling to wglinfo

  • 1.2.0 [02-19-2004]
    • Added full OpenGL 1.5 support
    • Added support for multiple rendering contexts with different capabilities
    • Added command line flags to glewinfo for selecting displays and visuals
    • Added GLX_SGIS_multisample, GLX_SUN_video_resize, and GL_SUN_read_video_pixels
    • Added MinGW/MSYS support
    • Bug fixes in GL_ARB_shader_objects and the OS X build

  • 1.1.4 [12-15-2003]
    • Added GL_APPLE_float_pixels, GL_APPLE_texture_range, GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp, GLX_ATI_pixel_format_float, and GLX_ATI_render_texture
    • Bug fixes in GL_ATI_map_object_buffer and GL_ATI_fragment_shader

  • 1.1.3 [10-28-2003]
    • Added Solaris and Darwin support
    • Added GL_ARB_fragment_shader, GL_ARB_shader_objects, and GL_ARB_vertex_shader
    • Fixed bug in GL_WIN_swap_hint
    • Removed glewinfo's dependency on GLUT

  • 1.1.2 [09-15-2003]
    • Removed dependency on WGL_{ARB,EXT}_extensions_string to make GLEW run on Matrox cards
    • Added glewGetString for querying the GLEW version string

  • 1.1.1 [08-11-2003]
    • Added GLX_NV_float_buffer, GL_ARB_shading_language_100, and GL_ARB_texture_non_power_of_two
    • Fixed bug in GL_ARB_vertex_buffer_object
    • Minor updates in documentation

  • 1.1.0 [07-08-2003]
    • Added automatic code generation
    • Added almost every extension in the registry
    • Added separate namespace
    • Added Irix support
    • Updated documentation

  • 1.0.7 [06-29-2003]
    • Added GL_EXT_depth_bounds_test
    • Fixed typos

  • 1.0.6 [05-05-2003]
    • Added ARB_vertex_buffer_object and NV_half_float
    • Updated wglinfo
    • Temporary Linux bug fixes (problems with SDL and MESA)

  • 1.0.5 [02-17-2003]
    • Bug fixes
    • Added wglinfo
    • Updated documentation

  • 1.0.4 [02-02-2003]
    • Added NV_texture_expand_normal
    • Added mingw support
    • Updated documentation

  • 1.0.3 [01-09-2003]
    • Cleaned up ATI extensions
    • Changed function prototypes to match glext.h
    • Added EXT_texture3D
    • Fixed typos in ATI_vertex_attrib_array_object and ATI_draw_buffers

  • 1.0.2 [12-21-2002]
    • Added list of supported extensions to documentation
    • Added NV_half_float and NV_texgen_emboss

  • 1.0.1 [12-17-2002]
    • Bug fixes
    • Added glewGetExtension

  • 1.0.0 [12-12-2002]
    • Initial release

nigels-com-glew-285c35d/doc/glew.txt0000664000175000017500000000322215135005167017474 0ustar alastairalastairThe OpenGL Extension Wrangler Library Copyright (C) 2008-2016, Nigel Stewart Copyright (C) 2002-2008, Milan Ikits Copyright (C) 2002-2008, Marcelo E. Magallon Copyright (C) 2002, Lev Povalahev All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * The name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. nigels-com-glew-285c35d/doc/gpl.txt0000664000175000017500000004310515135005167017324 0ustar alastairalastair GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. nigels-com-glew-285c35d/doc/eglew.html0000664000175000017500000011047515135005167017777 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Supported EGL Extensions

1 EGL_ANDROID_GLES_layers

2 EGL_ANDROID_blob_cache

3 EGL_ANDROID_create_native_client_buffer

4 EGL_ANDROID_framebuffer_target

5 EGL_ANDROID_front_buffer_auto_refresh

6 EGL_ANDROID_get_frame_timestamps

7 EGL_ANDROID_get_native_client_buffer

8 EGL_ANDROID_image_native_buffer

9 EGL_ANDROID_native_fence_sync

10 EGL_ANDROID_presentation_time

11 EGL_ANDROID_recordable

12 EGL_ANDROID_telemetry_hint

13 EGL_ANGLE_d3d_share_handle_client_buffer

14 EGL_ANGLE_device_d3d

15 EGL_ANGLE_query_surface_pointer

16 EGL_ANGLE_surface_d3d_texture_2d_share_handle

17 EGL_ANGLE_sync_control_rate

18 EGL_ANGLE_window_fixed_size

19 EGL_ARM_image_format

20 EGL_ARM_implicit_external_sync

21 EGL_ARM_pixmap_multisample_discard

22 EGL_EXT_bind_to_front

23 EGL_EXT_buffer_age

24 EGL_EXT_client_extensions

25 EGL_EXT_client_sync

26 EGL_EXT_compositor

27 EGL_EXT_config_select_group

28 EGL_EXT_create_context_robustness

29 EGL_EXT_device_base

30 EGL_EXT_device_drm

31 EGL_EXT_device_drm_render_node

32 EGL_EXT_device_enumeration

33 EGL_EXT_device_openwf

34 EGL_EXT_device_persistent_id

35 EGL_EXT_device_query

36 EGL_EXT_device_query_name

37 EGL_EXT_display_alloc

38 EGL_EXT_explicit_device

39 EGL_EXT_gl_colorspace_bt2020_hlg

40 EGL_EXT_gl_colorspace_bt2020_linear

41 EGL_EXT_gl_colorspace_bt2020_pq

42 EGL_EXT_gl_colorspace_display_p3

43 EGL_EXT_gl_colorspace_display_p3_linear

44 EGL_EXT_gl_colorspace_display_p3_passthrough

45 EGL_EXT_gl_colorspace_scrgb

46 EGL_EXT_gl_colorspace_scrgb_linear

47 EGL_EXT_image_dma_buf_import

48 EGL_EXT_image_dma_buf_import_modifiers

49 EGL_EXT_image_gl_colorspace

50 EGL_EXT_image_implicit_sync_control

51 EGL_EXT_multiview_window

52 EGL_EXT_output_base

53 EGL_EXT_output_drm

54 EGL_EXT_output_openwf

55 EGL_EXT_pixel_format_float

56 EGL_EXT_platform_base

57 EGL_EXT_platform_device

58 EGL_EXT_platform_wayland

59 EGL_EXT_platform_x11

60 EGL_EXT_platform_xcb

61 EGL_EXT_present_opaque

62 EGL_EXT_protected_content

63 EGL_EXT_protected_surface

64 EGL_EXT_query_reset_notification_strategy

65 EGL_EXT_stream_consumer_egloutput

66 EGL_EXT_surface_CTA861_3_metadata

67 EGL_EXT_surface_SMPTE2086_metadata

68 EGL_EXT_surface_compression

69 EGL_EXT_swap_buffers_with_damage

70 EGL_EXT_sync_reuse

71 EGL_EXT_yuv_surface

72 EGL_HI_clientpixmap

73 EGL_HI_colorformats

74 EGL_IMG_context_priority

75 EGL_IMG_image_plane_attribs

76 EGL_KHR_cl_event

77 EGL_KHR_cl_event2

78 EGL_KHR_client_get_all_proc_addresses

79 EGL_KHR_config_attribs

80 EGL_KHR_context_flush_control

81 EGL_KHR_create_context

82 EGL_KHR_create_context_no_error

83 EGL_KHR_debug

84 EGL_KHR_display_reference

85 EGL_KHR_fence_sync

86 EGL_KHR_get_all_proc_addresses

87 EGL_KHR_gl_colorspace

88 EGL_KHR_gl_renderbuffer_image

89 EGL_KHR_gl_texture_2D_image

90 EGL_KHR_gl_texture_3D_image

91 EGL_KHR_gl_texture_cubemap_image

92 EGL_KHR_image

93 EGL_KHR_image_base

94 EGL_KHR_image_pixmap

95 EGL_KHR_lock_surface

96 EGL_KHR_lock_surface2

97 EGL_KHR_lock_surface3

98 EGL_KHR_mutable_render_buffer

99 EGL_KHR_no_config_context

100 EGL_KHR_partial_update

101 EGL_KHR_platform_android

102 EGL_KHR_platform_gbm

103 EGL_KHR_platform_wayland

104 EGL_KHR_platform_x11

105 EGL_KHR_reusable_sync

106 EGL_KHR_stream

107 EGL_KHR_stream_attrib

108 EGL_KHR_stream_consumer_gltexture

109 EGL_KHR_stream_cross_process_fd

110 EGL_KHR_stream_fifo

111 EGL_KHR_stream_producer_aldatalocator

112 EGL_KHR_stream_producer_eglsurface

113 EGL_KHR_surfaceless_context

114 EGL_KHR_swap_buffers_with_damage

115 EGL_KHR_vg_parent_image

116 EGL_KHR_wait_sync

117 EGL_MESA_drm_image

118 EGL_MESA_image_dma_buf_export

119 EGL_MESA_platform_gbm

120 EGL_MESA_platform_surfaceless

121 EGL_MESA_query_driver

122 EGL_NOK_swap_region

123 EGL_NOK_swap_region2

124 EGL_NOK_texture_from_pixmap

125 EGL_NV_3dvision_surface

126 EGL_NV_context_priority_realtime

127 EGL_NV_coverage_sample

128 EGL_NV_coverage_sample_resolve

129 EGL_NV_cuda_event

130 EGL_NV_depth_nonlinear

131 EGL_NV_device_cuda

132 EGL_NV_native_query

133 EGL_NV_post_convert_rounding

134 EGL_NV_post_sub_buffer

135 EGL_NV_quadruple_buffer

136 EGL_NV_robustness_video_memory_purge

137 EGL_NV_stream_consumer_eglimage

138 EGL_NV_stream_consumer_eglimage_use_scanout_attrib

139 EGL_NV_stream_consumer_gltexture_yuv

140 EGL_NV_stream_cross_display

141 EGL_NV_stream_cross_object

142 EGL_NV_stream_cross_partition

143 EGL_NV_stream_cross_process

144 EGL_NV_stream_cross_system

145 EGL_NV_stream_dma

146 EGL_NV_stream_fifo_next

147 EGL_NV_stream_fifo_synchronous

148 EGL_NV_stream_flush

149 EGL_NV_stream_frame_limits

150 EGL_NV_stream_metadata

151 EGL_NV_stream_origin

152 EGL_NV_stream_remote

153 EGL_NV_stream_reset

154 EGL_NV_stream_socket

155 EGL_NV_stream_socket_inet

156 EGL_NV_stream_socket_unix

157 EGL_NV_stream_sync

158 EGL_NV_sync

159 EGL_NV_system_time

160 EGL_NV_triple_buffer

161 EGL_QNX_image_native_buffer

162 EGL_QNX_platform_screen

163 EGL_TIZEN_image_native_buffer

164 EGL_TIZEN_image_native_surface

165 EGL_WL_bind_wayland_display

166 EGL_WL_create_wayland_buffer_from_image
nigels-com-glew-285c35d/doc/github.png0000664000175000017500000000230315135005167017764 0ustar alastairalastairPNG  IHDRFn;bKGD̿ pHYs  tIME +67TIDATH[]>9g.YNm$cVMKR#Ji/RQ%* /PAKJ+{mJcMg\Ιp9s:wZ[|m*d{s 9No9ߤbG)QrNzb>#3's1]^Ls$'ZLkWb/x=ގ{,EYU3c+kJ}X$C2' T1;!,x_EW\̋()uRVj >_i/VrJ1m˔pe|ϼ,}x"s-\_^(ؙr݆1EL3՗\\ϻ;ްvƃjѴ.Ϭio)̴5׻ΰLqOzlʊbv;Uٮaܞ""AShƐ )ߍӛkEE yL.˄JnzAt[Vᾦ: Мzxĸ!OevlI QS^Ų!׺}aS7sm53=8^#=;k"~e`U25e]/ZT\&>B1><ԋ; VhȊifu^?c253Q8w~)O˫(*i{5ufmv|r }'cl};e^ݍ3cH.?Ř/ @]{ۢ1:n~2V/[t |~UUQn]C2ZJ];=뽈rHxuѲ]K] ㅓj!^FՈE]8aeq`u֎ qL*Q N>_r_L8N̦ͧĨ[]c_1li&&՝J'Kn2r+66Ŗ67䞷h]wFIENDB`nigels-com-glew-285c35d/doc/advanced.html0000664000175000017500000002177515135005167020445 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Automatic Code Generation

Starting from release 1.1.0, the source code and parts of the documentation are automatically generated from the extension specifications in a two-step process. In the first step, specification files from the OpenGL registry are downloaded and parsed. Skeleton descriptors are created for each extension. These descriptors contain all necessary information for creating the source code and documentation in a simple and compact format, including the name of the extension, url link to the specification, tokens, function declarations, typedefs and struct definitions. In the second step, the header files as well as the library and glewinfo source are generated from the descriptor files. The code generation scripts are located in the auto subdirectory.

The code generation scripts require GNU make, wget, and perl. On Windows, the simplest way to get access to these tools is to install Cygwin, but make sure that the root directory is mounted in binary mode. The makefile in the auto directory provides the following build targets:

make Create the source files from the descriptors.
If the descriptors do not exist, create them from the spec files.
If the spec files do not exist, download them from the OpenGL repository.
make clean Delete the source files.
make clobber Delete the source files and the descriptors.
make destroy Delete the source files, the descriptors, and the spec files.
make custom Create the source files for the extensions listed in auto/custom.txt.
See "Custom Code Generation" below for more details.

Adding a New Extension

To add a new extension, create a descriptor file for the extension in auto/core and rerun the code generation scripts by typing make clean; make in the auto directory.

The format of the descriptor file is given below. Items in brackets are optional.

<Extension Name>
[<URL of Specification File>]
    [<Token Name> <Token Value>]
    [<Token Name> <Token Value>]
    ...
    [<Typedef>]
    [<Typedef>]
    ...
    [<Function Signature>]
    [<Function Signature>]
    ...

Take a look at one of the files in auto/core for an example. Note that typedefs and function signatures should not be terminated with a semicolon.

Custom Code Generation

Starting from GLEW 1.3.0, it is possible to control which extensions to include in the library by specifying a list in auto/custom.txt. This is useful when you do not need all the extensions and would like to reduce the size of the source files. Type make clean; make custom in the auto directory to rerun the scripts with the custom list of extensions.

For example, the following is the list of extensions needed to get GLEW and the utilities to compile.

WGL_ARB_extensions_string
WGL_ARB_multisample
WGL_ARB_pixel_format
WGL_ARB_pbuffer
WGL_EXT_extensions_string
WGL_ATI_pixel_format_float
WGL_NV_float_buffer

Separate Namespace

To avoid name clashes when linking with libraries that include the same symbols, extension entry points are declared in a separate namespace (release 1.1.0 and up). This is achieved by aliasing OpenGL function names to their GLEW equivalents. For instance, glFancyFunction is simply an alias to glewFancyFunction. The separate namespace does not effect token and function pointer definitions.

Known Issues

GLEW requires GLX 1.2 for compatibility with GLUT.

nigels-com-glew-285c35d/doc/credits.html0000664000175000017500000001066715135005167020333 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Author, copyright and licensing information on github.

nigels-com-glew-285c35d/doc/basic.html0000664000175000017500000002257715135005167017762 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Initializing GLEW

First you need to create a valid OpenGL rendering context and call glewInit() to initialize the extension entry points. If glewInit() returns GLEW_OK, the initialization succeeded and you can use the available extensions as well as core OpenGL functionality. For example:

#include <GL/glew.h>
#include <GL/glut.h>
...
glutInit(&argc, argv);
glutCreateWindow("GLEW Test");
GLenum err = glewInit();
if (GLEW_OK != err)
{
  /* Problem: glewInit failed, something is seriously wrong. */
  fprintf(stderr, "Error: %s\n", glewGetErrorString(err));
  ...
}
fprintf(stdout, "Status: Using GLEW %s\n", glewGetString(GLEW_VERSION));

Checking for Extensions

Starting from GLEW 1.1.0, you can find out if a particular extension is available on your platform by querying globally defined variables of the form GLEW_{extension_name}:

if (GLEW_ARB_vertex_program)
{
  /* It is safe to use the ARB_vertex_program extension here. */
  glGenProgramsARB(...);
}

In GLEW 1.0.x, a global structure was used for this task. To ensure binary compatibility between releases, the struct was replaced with a set of variables.

You can also check for core OpenGL functionality. For example, to see if OpenGL 1.3 is supported, do the following:

if (GLEW_VERSION_1_3)
{
  /* Yay! OpenGL 1.3 is supported! */
}

In general, you can check if GLEW_{extension_name} or GLEW_VERSION_{version} is true or false.

It is also possible to perform extension checks from string input. Starting from the 1.3.0 release, use glewIsSupported to check if the required core or extension functionality is available:

if (glewIsSupported("GL_VERSION_1_4  GL_ARB_point_sprite"))
{
  /* Great, we have OpenGL 1.4 + point sprites. */
}

For extensions only, glewGetExtension provides a slower alternative (GLEW 1.0.x-1.2.x). Note that in the 1.3.0 release glewGetExtension was replaced with glewIsSupported.

if (glewGetExtension("GL_ARB_fragment_program"))
{
  /* Looks like ARB_fragment_program is supported. */
}

Experimental Drivers

GLEW obtains information on the supported extensions from the graphics driver. Experimental or pre-release drivers, however, might not report every available extension through the standard mechanism, in which case GLEW will report it unsupported. To circumvent this situation, the glewExperimental global switch can be turned on by setting it to GL_TRUE before calling glewInit(), which ensures that all extensions with valid entry points will be exposed.

Platform Specific Extensions

Platform specific extensions are separated into two header files: wglew.h and glxew.h, which define the available WGL and GLX extensions. To determine if a certain extension is supported, query WGLEW_{extension name} or GLXEW_{extension_name}. For example:

#include <GL/wglew.h>

if (WGLEW_ARB_pbuffer)
{
  /* OK, we can use pbuffers. */
}
else
{
  /* Sorry, pbuffers will not work on this platform. */
}

Alternatively, use wglewIsSupported or glxewIsSupported to check for extensions from a string:

if (wglewIsSupported("WGL_ARB_pbuffer"))
{
  /* OK, we can use pbuffers. */
}

Utilities

GLEW provides two command-line utilities: one for creating a list of available extensions and visuals; and another for verifying extension entry points.

visualinfo: extensions and visuals

visualinfo is an extended version of glxinfo. The Windows version creates a file called visualinfo.txt, which contains a list of available OpenGL, WGL, and GLU extensions as well as a table of visuals aka. pixel formats. Pbuffer and MRT capable visuals are also included. For additional usage information, type visualinfo -h.

glewinfo: extension verification utility

glewinfo allows you to verify the entry points for the extensions supported on your platform. The Windows version reports the results to a text file called glewinfo.txt. The Unix version prints the results to stdout.

Windows usage:

glewinfo [-pf <id>]

where <id> is the pixel format id for which the capabilities are displayed.

Unix usage:

glewinfo [-display <dpy>] [-visual <id>]

where <dpy> is the X11 display and <id> is the visual id for which the capabilities are displayed.

nigels-com-glew-285c35d/doc/ogl_sm.jpg0000664000175000017500000000312115135005167017755 0ustar alastairalastairJFIFddDucky<&Adobed O       #D !0!1q"AQa2# 0SB3P!1AQaq 0 SL;bzj(U NbKSǼce57|g/vtmܮcߝy5 OaymH 5L?y/n΃jaSV2Be<셜n筏+"ނ[&2|ӽ#@I\96.AlY)T]U6lpU]JP NեHm\?7?7?QVH}a'Wo"Wtм>t!I@ۍ`r4w 9Q0ċ鷒sG( |Hi4Z|٤"ؑk AFWNlFc4V1eF_3MncۦQ3ЉAmkQn␇l4{ kjnn9-l?bg*yh/l0ɻٞ-_w%Ǘ_?![k_iՃc-2tJh ?"k{6ۘ)-`]W U Fi׉H7sBH/ EYSVS)z?5,Z+)unhZFG, Dr03/lP%]*}uIz?;`@^?uN40}O?!|k>Ee6D<˄~H+̨>?! GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Supported WGL Extensions

1 3DFX_multisample

2 3DL_stereo_control

3 AMD_gpu_association

4 ARB_buffer_region
5 ARB_context_flush_control
6 ARB_create_context
7 ARB_create_context_no_error
8 ARB_create_context_profile
9 ARB_create_context_robustness
10 ARB_extensions_string
11 ARB_framebuffer_sRGB
12 ARB_make_current_read
13 ARB_multisample
14 ARB_pbuffer
15 ARB_pixel_format
16 ARB_pixel_format_float
17 ARB_render_texture
18 ARB_robustness_application_isolation
19 ARB_robustness_share_group_isolation

20 ATI_pixel_format_float
21 ATI_render_texture_rectangle

22 EXT_colorspace
23 EXT_create_context_es2_profile
24 EXT_create_context_es_profile
25 EXT_depth_float
26 EXT_display_color_table
27 EXT_extensions_string
28 EXT_framebuffer_sRGB
29 EXT_make_current_read
30 EXT_multisample
31 EXT_pbuffer
32 EXT_pixel_format
33 EXT_pixel_format_packed_float
34 EXT_swap_control
35 EXT_swap_control_tear

36 I3D_digital_video_control
37 I3D_gamma
38 I3D_genlock
39 I3D_image_buffer
40 I3D_swap_frame_lock
41 I3D_swap_frame_usage

42 NV_DX_interop
43 NV_DX_interop2
44 NV_copy_image
45 NV_delay_before_swap
46 NV_float_buffer
47 NV_gpu_affinity
48 NV_multigpu_context
49 NV_multisample_coverage
50 NV_present_video
51 NV_render_depth_texture
52 NV_render_texture_rectangle
53 NV_swap_group
54 NV_vertex_array_range
55 NV_video_capture
56 NV_video_output

57 OML_sync_control
nigels-com-glew-285c35d/doc/build.html0000664000175000017500000001463415135005167017773 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Building GLEW

Windows

A MS Visual Studio project is provided in the build/vc6 directory.

Pre-built shared and static libraries are also available for download.

Makefile

For platforms other than MS Windows, the provided Makefile is used.

Command-line variables

SYSTEMauto Target system to build: darwin, linux, solaris, etc.
For a full list of supported targets: ls config/Makefile.*
config.guess is used to auto detect, as necessary.
GLEW_DEST/usr Base directory for installation.

Make targets

allBuild everything.
glew.libBuild static and dynamic GLEW libraries.
glew.lib.mxBuild static and dynamic GLEWmx libraries.
glew.binBuild glewinfo and visualinfo utilities.
cleanDelete temporary and built files.
install.allInstall everything.
installInstall GLEW libraries.
install.mxInstall GLEWmx libraries.
install.binInstall glewinfo and visualinfo utilities.
uninstallDelete installed files.

Requirements

  • GNU make
  • perl
  • wget
  • GNU sed
  • gcc compiler
  • git
Ubuntu:
sudo apt-get install libXmu-dev libXi-dev libgl-dev dos2unix git wget
Fedora:
sudo yum install libXmu-devel libXi-devel libGL-devel dos2unix git wget
nigels-com-glew-285c35d/doc/khronos.txt0000664000175000017500000000206715135005167020227 0ustar alastairalastairCopyright (c) 2007 The Khronos Group Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and/or associated documentation files (the "Materials"), to deal in the Materials without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Materials, and to permit persons to whom the Materials are furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Materials. THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. nigels-com-glew-285c35d/doc/install.html0000664000175000017500000002214315135005167020334 0ustar alastairalastair GLEW: The OpenGL Extension Wrangler Library
Latest Release: 2.3.1

GLEW Logo

Download
Usage
Building
Installation
Source Generation
Change Log

GitHub
Issues
Pull Requests

SourceForge Page

Last Update: 01-24-2026
OpenGL Logo
GitHub Logo

The OpenGL Extension Wrangler Library (GLEW)

Installation

To use the shared library version of GLEW, you need to copy the headers and libraries into their destination directories. On Windows this typically boils down to copying:

bin/glew32.dll    to     %SystemRoot%/system32
lib/glew32.lib    to     {VC Root}/Lib
include/GL/glew.h    to     {VC Root}/Include/GL
include/GL/wglew.h    to     {VC Root}/Include/GL

where {VC Root} is the Visual C++ root directory, typically C:/Program Files/Microsoft Visual Studio/VC98 for Visual Studio 6.0 or C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK for Visual Studio .NET.

On Unix, typing make install will attempt to install GLEW into /usr/include/GL and /usr/lib. You can customize the installation target via the GLEW_DEST environment variable if you do not have write access to these directories.

Building Your Project with GLEW

There are two ways to build your project with GLEW.

Including the source files / project file

The simpler but less flexible way is to include glew.h and glew.c into your project. On Windows, you also need to define the GLEW_STATIC preprocessor token when building a static library or executable, and the GLEW_BUILD preprocessor token when building a dll. You also need to replace <GL/gl.h> and <GL/glu.h> with <glew.h> in your code and set the appropriate include flag (-I) to tell the compiler where to look for it. For example:

#include <glew.h>
#include <GL/glut.h>
<gl, glu, and glut functionality is available here>

Depending on where you put glew.h you may also need to change the include directives in glew.c. Note that if you are using GLEW together with GLUT, you have to include glew.h first. In addition, glew.h includes glu.h, so you do not need to include it separately.

On Windows, you also have the option of adding the supplied project file glew_static.dsp to your workspace (solution) and compile it together with your other projects. In this case you also need to change the GLEW_BUILD preprocessor constant to GLEW_STATIC when building a static library or executable, otherwise you get build errors.

Note that GLEW does not use the C runtime library, so it does not matter which version (single-threaded, multi-threaded or multi-threaded DLL) it is linked with (without debugging information). It is, however, always a good idea to compile all your projects including GLEW with the same C runtime settings.

Using GLEW as a shared library

Alternatively, you can use the provided project files / makefile to build a separate shared library you can link your projects with later. In this case the best practice is to install glew.h, glew32.lib, and glew32.dll / libGLEW.so to where the OpenGL equivalents gl.h, opengl32.lib, and opengl32.dll / libGL.so are located. Note that you need administrative privileges to do this. If you do not have administrator access and your system administrator will not do it for you, you can install GLEW into your own lib and include subdirectories and tell the compiler where to find it. Then you can just replace <GL/gl.h> with <GL/glew.h> in your program:

#include <GL/glew.h>
#include <GL/glut.h>
<gl, glu, and glut functionality is available here>

or:

#include <GL/glew.h>
<gl and glu functionality is available here>

Remember to link your project with glew32.lib, glu32.lib, and opengl32.lib on Windows and libGLEW.so, libGLU.so, and libGL.so on Unix (-lGLEW -lGLU -lGL).

It is important to keep in mind that glew.h includes neither windows.h nor gl.h. Also, GLEW will warn you by issuing a preprocessor error in case you have included gl.h, glext.h, or glATI.h before glew.h.

nigels-com-glew-285c35d/doc/mesa.txt0000664000175000017500000000211715135005167017465 0ustar alastairalastairMesa 3-D graphics library Version: 7.0 Copyright (C) 1999-2007 Brian Paul All Rights Reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. nigels-com-glew-285c35d/doc/glew.png0000664000175000017500000002212215135005167017441 0ustar alastairalastairPNG  IHDRaKS~ pHYs  gAMA|Q cHRMz%u0`:o_F#IDATxb?׏~}~2310r21p/ ~c`dbWB.9@ B{xn>K珊wHQσX6ɰFQ*5sirv:O ѷ_]? !,z4F0?ï ?~,*&N#g_wmfx-($j)#K43370AUE!a ɫ/I# %'?<4#0}F phC Na pT, lX0#(E;}գ,?q񑚱)T|331pa?9 FJmNvV$&"`1&ff, d234r?@#>~xs^^&&֌"F# ߿D0z7f62jVV&LLߣLa" Y€b9||OZx hF_?eoFF*գ@6 ?߀_~u``d3ERRX510 p3;D0W\?=? $Z!LJ|z hFȼs9A?#Dl["%HMH a_U~#>+fc%2fe&# Ό&F&f^/]_0Ϗ?Ǐ_e>vga`ab"&!A\0#%"X6KbwFD`l(ӧW'0XعyŤ wɣX0C\F$x##0?:-L@8o9Y]_t򇉏GLCJQ X6|ܾo12 Lo"B@l Q5t`?F h?)#F@7<50@V+40OF.^ )E.?_ٿK`YJ^*x8`=2FT)>dL ^~d0=}v_ss2cw1@^Dr2"r&xk; 8VRbB.Wq` \Pe{t_??2*Pغ 0˝[9߲sx:9i  _da88"cCÓ P+V_AU|4Q ߺ#$)\;KVHbDsgDmHDLQ_߽|# fffP?'h K;Br۷yhMo^,``bgWu䀕(< +W *2 :ᢚ@q}xSX3~*׏xY?{qOF߽2'x;\A(iI(P}ƈwt _P9/YPpGAl`  u;Ff6NN_O^>i$:W1A?BxS=dǯ_Vj@8zy!`3$C@)vy| O!%/еl\?z4nsGpЂ: +U ![~ŒC&LsT j{%G1[84E1sʷ<}rnFޘFKڳjBU `l>&`Brx !JQBZ޿(sC H<w`/`/l_lҟ_C[@`dafgr1|93r 0a8a _ 3119- It `N l3GrX//.§ϟZm]#=[WNNgFFH:L2!@|x&#"1Xja SH%h xki)?( @%3Ezf `fafecj O{=Aa}#َ%oHRr/<5``g{@\ A  T4Z:YX @ p kfvƝx3MvZe<(\nAKإ ڢ@W5u}(GemY45iUXB-ґc"eyuB'0r(#ױ1d=m6ޏ5 4%z=&_>î "\I{\\r J %D n|>ڤy3U2֧܏|d>eZX){IfM~ٰ̓.rk!b*{"5 $\CƦ &]JF쬈5\Y`V!ʜ 8­x ecE /$‘ uz _z?b VhZ'B q"{`۷T2: "R,GaPBPP* 1 >t+7113ge' 駞R}<+ bF';b3ȃ,A)ѓdD4 mHh0hAXYX4nO6Nvh‚r hˆ\?F`L``v q_{gPgO^7۷/_>aT1Eh}DT!7 tAjRCk`dɪZ -a?a)$!ꞝ.)Rh`fTgb?hM 0GeGvNA~h?_|+$"|=#CLjFb Ɉh2& ܵp{* P H/Y%E\ܠ0 ÎLH=^?8b̬@m?3~xx#_ga@٥8^:IuN{:YmcN!CMuW%xcXiKӸy7kAcCqZ5`U+ R peu^8ݣFL :oS|TSCrBJsu;;.'e3)'X *$@ʛ iipD߿XZؼ9 h< &`vB / hd0H0E700>gab#h ח/_Cs?O89TE|\@g9Aa'P 2^vnqE<<&&GFb 1`wcB#TaTwl\&` Rc1!U=YР3+ ?&?~o`Y @#U1(/UЂXJ}Om|˟\G*!A,@0ky )5PO4v##^pYQl~7vp<<{6Y?`Q J`$ 3,쁭 p% CZ@Os0ځ`߁Fڰ Go=z/M@bR\H6L#d7!X! )3"&>̈5-pҀ gߠd,N.YH?`1@0E$0 f&`TcKKȅ?~7@.P*ʲv[_3$B{I]iQITM0i(GpmLA<& F@ݽLR3;xI69gs lL˃|ZiXPS;)cŚ xspN4JS3(YSGWT#[ UZYWzhE=FuI!ű8674F,W1޼z˳\3Ġ`!LH8Y8ݛ}xw>}Vg@̬<"bJ*2R10zW|\,ꙑ_POXD@x$E0 &&`GwyW=o_"_=+ԻaiTX~ƣf@,|b_0ΫGi.!3L B,\ѣyqƯo?@A:v!535 0Sc~`c^`rLe`ppKKKz1ۭkN^T.``'J*-.)_XB|F"f2Tj}yEwO] /rv.p 0:yugbi lrsqɼ|/\|٧iq )f&n^>232*ȝg'i陙-(*̅>s#hkv/LbV7dq !yH[:vz;_y X1@A`I `AP,0PBSTfǏoKJɊ36%u×O>y]{n>`_޿g ~ͭi@޻.N 𔂚j#uѧGA:,llǖ->a f#[ A)'70hOݾTl'!70|5A$)).",3KȠP%K`6># ݛǎs(Z01> h@6(]! ,PjthDLn?p vEX~nhnx9bVb/tb_EMMmPj&V{n>GKޑ~`/E[P4 R#Lϟ?~|ۗз01J#]Zeڋɥc^g@6 ;"#u0@gԁ$ok*>ʌԍ!998]YAF 02ε˯S2S26cVӷo߁Fl/ ߿70l~SPH@T\ϟϝq yP40TxԘh3 ZB<@й7^Z.nLFL! u9S2 #l Õ9>bF.AZHG G?{!0P$tEFY^ 'QE߿_={z? , ly̓# Rbfd}zʃfel% %l;u[~` LL"/%ۻ׮+}`:U.ٹ ¿?մB۾ @(ad];m6vN$?D! # J珇/}0XXFӧJ±fl`M4dt_yJij\n&Àq )`Z ЦdTMfW^2i^duʶ :>d%Mj?4 .Nt)M߿~ OgAe̫"@@@X֌޽y#^4 k2 uƞcTr{䚕/_ f1`(|),b22ҿWXFĉ}Z}jr'i77f0n;xdF?b@rcB.1 , +0\|"O_M[_XT 8/\!"MRSϯ_e@k벏JjyJHa߾uzg`2/q1`r"{~p7 T "!!*.. *ewa$nPadfcR$xeYy&0EQf_GԀH[˫5޼z|i+?70` ]c$G?b^ؤz}߾X9DĀ1v^^.n>`?\(0!$ `V6&Y89DAtc |+~2@ كW7L(c$WD~w?}MfZ" l܂ܢB,@A&VV`3./eDI0~SYrM"_c,ĉGZBON 3h HYcz 4 %iI+:#Ҫ @?~VRwde!p@>o勧/fZҼFf`6 Q oV7 Lf@IЅB% #R[gΘMH[Qǖ D"LO=+vvpG(Qpd@Lh0!9O01` Gπ2[[QW {sk~}ss{ f+PH4VF 71pD֤8%1 -CNlJ2 $G .^;0c@C K6C W,l#V,l8 /Z00` ؿ㐑Q&ih H>ϟn*7?` ъaBn @i0`/M "eJZK *`ׯϿX Ռ@d Rl&te` uQQ#nȳ_}WNFLD9Z^>}v\ ,K54,,@=F(}KDL"rrLa *5On}yuGV ҍȀRB#qwPg {F>bjX(l))&/&)DD~ك/o|76l 4v%%i T.xn|??:#|?R? yD$UD3u?~>~뻟_^1ealMz 3,lD9 2[o`&nAEAIy~A15@\?`W<WnN`wnaaq9^A > >؏Ծbp% E d9y8ٹy@kxYrN~'IENDB`nigels-com-glew-285c35d/doc/new.png0000664000175000017500000000223415135005167017276 0ustar alastairalastairPNG  IHDR ,y pHYs  gAMA|Q cHRMz%u0`:o_FPLTE ^^NNoo--==WIDATxb`30D@,@6 3 L9~Obb`Ǐ,1p0PONe`'_bf``c#3?f?,~0#Fn .bbf twV& L p00f` &ڟ\  H|T? @軿@CY f ^  )?hi9aIENDB`nigels-com-glew-285c35d/LICENSE.txt0000664000175000017500000000732515135005167017063 0ustar alastairalastairThe OpenGL Extension Wrangler Library Copyright (C) 2002-2007, Milan Ikits Copyright (C) 2002-2007, Marcelo E. Magallon Copyright (C) 2002, Lev Povalahev All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * The name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Mesa 3-D graphics library Version: 7.0 Copyright (C) 1999-2007 Brian Paul All Rights Reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Copyright (c) 2007 The Khronos Group Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and/or associated documentation files (the "Materials"), to deal in the Materials without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Materials, and to permit persons to whom the Materials are furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Materials. THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. nigels-com-glew-285c35d/.gitignore0000664000175000017500000000057115135005167017224 0ustar alastairalastair*.pc /src/*.c /include/GL/*.h /build/vc6/*.rc /build/*.rc /build/*/*.sdf /build/*/*.suo /build/*/*.db /build/*/*.vcxproj.user /build/*/.vs/ /build/*/tmp/ /build/cmake/CMakeFiles/ /build/cmake/CMakeCache.txt /build/cmake/cmake_install.cmake /build/cmake/Makefile /auto/extensions /auto/registry /bin /lib /tmp /out .DS_Store* auto/EGL-Registry auto/OpenGL-Registry auto/glfixes nigels-com-glew-285c35d/.lgtm.yml0000664000175000017500000000035115135005167016774 0ustar alastairalastairextraction: cpp: prepare: packages: - "build-essential" - "libxmu-dev" - "libxi-dev" - "libgl-dev" index: build_command: - "cd auto; make all -j8; cd .." - "make all -j8" nigels-com-glew-285c35d/glew.pc.in0000664000175000017500000000040415135005167017116 0ustar alastairalastairprefix=@prefix@ exec_prefix=${prefix} libdir=@libdir@ includedir=${prefix}/include Name: glew Description: The OpenGL Extension Wrangler library Version: @version@ Cflags: -I${includedir} @cflags@ Libs: -L${libdir} -l@libname@ @libgl@ Requires: @requireslib@ nigels-com-glew-285c35d/Makefile0000664000175000017500000002731215135005167016676 0ustar alastairalastair#!gmake ## The OpenGL Extension Wrangler Library ## Copyright (C) 2002-2008, Milan Ikits ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002, Lev Povalahev ## All rights reserved. ## ## Redistribution and use in source and binary forms, with or without ## modification, are permitted provided that the following conditions are met: ## ## * Redistributions of source code must retain the above copyright notice, ## this list of conditions and the following disclaimer. ## * Redistributions in binary form must reproduce the above copyright notice, ## this list of conditions and the following disclaimer in the documentation ## and/or other materials provided with the distribution. ## * The name of the author may be used to endorse or promote products ## derived from this software without specific prior written permission. ## ## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" ## AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ## ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE ## LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR ## CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF ## SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS ## INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN ## CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ## ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF ## THE POSSIBILITY OF SUCH DAMAGE. include config/version SHELL = /bin/sh SYSTEM ?= $(shell config/config.guess | cut -d - -f 3 | sed -e 's/\.//g' -e 's/[0-9]\{1,\}.*//') SYSTEM.SUPPORTED = $(shell test -f config/Makefile.$(SYSTEM) && echo 1) ifeq ($(SYSTEM.SUPPORTED), 1) include config/Makefile.$(SYSTEM) else $(error "Platform '$(SYSTEM)' not supported") endif GLEW_PREFIX ?= /usr/local GLEW_DEST ?= /usr/local BINDIR ?= $(GLEW_DEST)/bin LIBDIR ?= $(GLEW_DEST)/lib INCDIR ?= $(GLEW_DEST)/include/GL PKGDIR ?= $(GLEW_DEST)/lib/pkgconfig ifneq ($(GLEW_NO_GLU), -DGLEW_NO_GLU) LIBGLU = glu endif DIST_NAME ?= glew-$(GLEW_VERSION) DIST_SRC_ZIP ?= $(shell pwd)/$(DIST_NAME).zip DIST_SRC_TGZ ?= $(shell pwd)/$(DIST_NAME).tgz DIST_WIN32 ?= $(shell pwd)/$(DIST_NAME)-win32.zip DIST_DIR := $(shell mktemp -d /tmp/glew.XXXXXX)/$(DIST_NAME) # To disable stripping of linked binaries either: # - use STRIP= on gmake command-line # - edit this makefile to set STRIP to the empty string # # To disable symlinks: # - use LN= on gmake command-line AR ?= ar ARFLAGS ?= cr INSTALL ?= install STRIP ?= strip RM ?= rm -f LN ?= ln -sf UNIX2DOS ?= unix2dos -q DOS2UNIX ?= dos2unix -q ifneq (,$(filter debug,$(MAKECMDGOALS))) OPT = -g STRIP := else OPT = $(POPT) endif INCLUDE = -Iinclude CFLAGS = $(OPT) $(WARN) $(INCLUDE) $(CFLAGS.EXTRA) all debug: glew.lib glew.bin # GLEW shared and static libraries LIB.LDFLAGS := $(LDFLAGS.EXTRA) $(LDFLAGS.GL) LIB.LIBS := $(GL_LDFLAGS) LIB.SHARED.DIR ?= lib LIB.SRCS := src/glew.c LIB.SRCS.NAMES := $(notdir $(LIB.SRCS)) LIB.OBJS := $(addprefix tmp/$(SYSTEM)/default/static/,$(LIB.SRCS.NAMES)) LIB.OBJS := $(LIB.OBJS:.c=.o) LIB.SOBJS := $(addprefix tmp/$(SYSTEM)/default/shared/,$(LIB.SRCS.NAMES)) LIB.SOBJS := $(LIB.SOBJS:.c=.o) glew.lib: glew.lib.shared glew.lib.static glew.lib.shared: lib $(LIB.SHARED.DIR) $(LIB.SHARED.DIR)/$(LIB.SHARED) glew.pc glew.lib.static: lib lib/$(LIB.STATIC) glew.pc .PHONY: glew.lib glew.lib.shared glew.lib.static lib: mkdir lib lib/$(LIB.STATIC): $(LIB.OBJS) ifneq ($(AR),) $(AR) $(ARFLAGS) $@ $^ else ifneq ($(LIBTOOL),) $(LIBTOOL) $@ $^ endif ifneq ($(STRIP),) $(STRIP) -x $@ endif $(LIB.SHARED.DIR)/$(LIB.SHARED): $(LIB.SOBJS) $(LD) $(LDFLAGS.SO) -o $@ $^ $(LIB.LDFLAGS) $(LIB.LIBS) ifneq ($(LN),) $(LN) $(LIB.SHARED) $(LIB.SHARED.DIR)/$(LIB.SONAME) $(LN) $(LIB.SHARED) $(LIB.SHARED.DIR)/$(LIB.DEVLNK) endif ifneq ($(STRIP),) $(STRIP) -x $@ endif tmp/$(SYSTEM)/default/static/glew.o: src/glew.c include/GL/glew.h include/GL/wglew.h include/GL/glxew.h @mkdir -p $(dir $@) $(CC) -DGLEW_NO_GLU -DGLEW_STATIC $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< tmp/$(SYSTEM)/default/shared/glew.o: src/glew.c include/GL/glew.h include/GL/wglew.h include/GL/glxew.h @mkdir -p $(dir $@) $(CC) -DGLEW_NO_GLU -DGLEW_BUILD $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< # Force re-write of glew.pc, GLEW_DEST can vary .PHONY: glew.pc glew.pc: glew.pc.in sed \ -e "s|@prefix@|$(GLEW_PREFIX)|g" \ -e "s|@libdir@|$(LIBDIR)|g" \ -e "s|@exec_prefix@|$(BINDIR)|g" \ -e "s|@includedir@|$(INCDIR)|g" \ -e "s|@version@|$(GLEW_VERSION)|g" \ -e "s|@cflags@||g" \ -e "s|@libname@|$(NAME)|g" \ -e "s|@libgl@|$(LDFLAGS.GL)|g" \ -e "s|@requireslib@|$(LIBGLU)|g" \ < $< > $@ # GLEW utility programs BIN.LIBS = -Llib $(LDFLAGS.DYNAMIC) -l$(NAME) $(LDFLAGS.EXTRA) $(LDFLAGS.GL) GLEWINFO.BIN := glewinfo$(BIN.SUFFIX) GLEWINFO.BIN.SRC := src/glewinfo.c GLEWINFO.BIN.OBJ := $(addprefix tmp/$(SYSTEM)/default/shared/,$(notdir $(GLEWINFO.BIN.SRC))) GLEWINFO.BIN.OBJ := $(GLEWINFO.BIN.OBJ:.c=.o) VISUALINFO.BIN := visualinfo$(BIN.SUFFIX) VISUALINFO.BIN.SRC := src/visualinfo.c VISUALINFO.BIN.OBJ := $(addprefix tmp/$(SYSTEM)/default/shared/,$(notdir $(VISUALINFO.BIN.SRC))) VISUALINFO.BIN.OBJ := $(VISUALINFO.BIN.OBJ:.c=.o) # Don't build glewinfo or visualinfo for NaCL, yet. ifneq ($(filter nacl%,$(SYSTEM)),) glew.bin: glew.lib else glew.bin: glew.lib bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) endif bin/$(GLEWINFO.BIN): $(GLEWINFO.BIN.OBJ) $(LIB.SHARED.DIR)/$(LIB.SHARED) @mkdir -p $(dir $@) $(CC) $(CFLAGS) -o $@ $(GLEWINFO.BIN.OBJ) $(BIN.LIBS) ifneq ($(STRIP),) $(STRIP) -x $@ endif bin/$(VISUALINFO.BIN): $(VISUALINFO.BIN.OBJ) $(LIB.SHARED.DIR)/$(LIB.SHARED) @mkdir -p $(dir $@) $(CC) $(CFLAGS) -o $@ $(VISUALINFO.BIN.OBJ) $(BIN.LIBS) ifneq ($(STRIP),) $(STRIP) -x $@ endif $(GLEWINFO.BIN.OBJ): $(GLEWINFO.BIN.SRC) include/GL/glew.h include/GL/wglew.h include/GL/glxew.h @mkdir -p $(dir $@) $(CC) -DGLEW_NO_GLU $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< $(VISUALINFO.BIN.OBJ): $(VISUALINFO.BIN.SRC) include/GL/glew.h include/GL/wglew.h include/GL/glxew.h @mkdir -p $(dir $@) $(CC) -DGLEW_NO_GLU $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< # Install targets install.all: install install.bin install: install.include install.lib install.pkgconfig install.lib: glew.lib $(INSTALL) -d -m 0755 "$(DESTDIR)$(LIBDIR)" # runtime ifeq ($(filter-out mingw% cygwin,$(SYSTEM)),) $(INSTALL) -d -m 0755 "$(DESTDIR)$(BINDIR)" $(INSTALL) -m 0755 $(LIB.SHARED.DIR)/$(LIB.SHARED) "$(DESTDIR)$(BINDIR)/" else $(INSTALL) -m 0644 $(LIB.SHARED.DIR)/$(LIB.SHARED) "$(DESTDIR)$(LIBDIR)/" endif ifneq ($(LN),) $(LN) $(LIB.SHARED) "$(DESTDIR)$(LIBDIR)/$(LIB.SONAME)" endif # development files ifeq ($(filter-out mingw% cygwin,$(SYSTEM)),) $(INSTALL) -m 0644 lib/$(LIB.DEVLNK) "$(DESTDIR)$(LIBDIR)/" endif ifneq ($(LN),) $(LN) $(LIB.SHARED) "$(DESTDIR)$(LIBDIR)/$(LIB.DEVLNK)" endif $(INSTALL) -m 0644 lib/$(LIB.STATIC) "$(DESTDIR)$(LIBDIR)/" install.bin: glew.bin $(INSTALL) -d -m 0755 "$(DESTDIR)$(BINDIR)" $(INSTALL) -m 0755 bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) "$(DESTDIR)$(BINDIR)/" install.include: $(INSTALL) -d -m 0755 "$(DESTDIR)$(INCDIR)" $(INSTALL) -m 0644 include/GL/eglew.h "$(DESTDIR)$(INCDIR)/" $(INSTALL) -m 0644 include/GL/wglew.h "$(DESTDIR)$(INCDIR)/" $(INSTALL) -m 0644 include/GL/glew.h "$(DESTDIR)$(INCDIR)/" $(INSTALL) -m 0644 include/GL/glxew.h "$(DESTDIR)$(INCDIR)/" $(INSTALL) -m 0644 include/GL/eglew.h "$(DESTDIR)$(INCDIR)/" install.pkgconfig: glew.pc $(INSTALL) -d -m 0755 "$(DESTDIR)$(PKGDIR)" $(INSTALL) -d -m 0755 "$(DESTDIR)$(PKGDIR)" $(INSTALL) -m 0644 glew.pc "$(DESTDIR)$(PKGDIR)/" uninstall: $(RM) "$(DESTDIR)$(INCDIR)/eglew.h" $(RM) "$(DESTDIR)$(INCDIR)/wglew.h" $(RM) "$(DESTDIR)$(INCDIR)/glew.h" $(RM) "$(DESTDIR)$(INCDIR)/glxew.h" $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.DEVLNK)" ifeq ($(filter-out mingw% cygwin,$(SYSTEM)),) $(RM) "$(DESTDIR)$(BINDIR)/$(LIB.SHARED)" else $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.SONAME)" $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.SHARED)" endif $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.STATIC)" $(RM) "$(DESTDIR)$(BINDIR)/$(GLEWINFO.BIN)" "$(DESTDIR)$(BINDIR)/$(VISUALINFO.BIN)" clean: $(RM) -r tmp/ $(RM) -r lib/ $(RM) -r bin/ $(RM) glew.pc distclean: clean find . -name \*~ | xargs $(RM) find . -name .\*.sw\? | xargs $(RM) # Distributions dist-win32: $(RM) -r $(DIST_DIR) mkdir -p $(DIST_DIR) cp -a include $(DIST_DIR) cp -a doc $(DIST_DIR) cp -a *.txt $(DIST_DIR) cp -a bin $(DIST_DIR) cp -a lib $(DIST_DIR) $(RM) -f $(DIST_DIR)/bin/*/*/*.pdb $(DIST_DIR)/bin/*/*/*.exp $(RM) -f $(DIST_DIR)/bin/*/*/glewinfo-*.exe $(DIST_DIR)/bin/*/*/visualinfo-*.exe $(RM) -f $(DIST_DIR)/lib/*/*/*.pdb $(DIST_DIR)/lib/*/*/*.exp $(UNIX2DOS) $(DIST_DIR)/include/GL/*.h $(UNIX2DOS) $(DIST_DIR)/doc/*.txt $(UNIX2DOS) $(DIST_DIR)/doc/*.html $(UNIX2DOS) $(DIST_DIR)/*.txt rm -f $(DIST_WIN32) cd $(DIST_DIR)/.. && zip -rq9 $(DIST_WIN32) $(DIST_NAME) $(RM) -r $(DIST_DIR) dist-src: $(RM) -r $(DIST_DIR) mkdir -p $(DIST_DIR) mkdir -p $(DIST_DIR)/bin mkdir -p $(DIST_DIR)/lib cp -a auto $(DIST_DIR) $(RM) -Rf $(DIST_DIR)/auto/registry $(RM) -Rf $(DIST_DIR)/auto/glfixes $(RM) -Rf $(DIST_DIR)/auto/OpenGL-Registry $(RM) -Rf $(DIST_DIR)/auto/EGL-Registry cp -a build $(DIST_DIR) cp -a config $(DIST_DIR) cp -a src $(DIST_DIR) cp -a doc $(DIST_DIR) cp -a include $(DIST_DIR) cp -a *.md $(DIST_DIR) cp -a *.txt $(DIST_DIR) cp -a Makefile $(DIST_DIR) cp -a glew.pc.in $(DIST_DIR) find $(DIST_DIR) -name '*.o' | xargs $(RM) -r find $(DIST_DIR) -name '*~' | xargs $(RM) -r find $(DIST_DIR) -name CVS -o -name .cvsignore | xargs $(RM) -r find $(DIST_DIR) -name .svn | xargs $(RM) -r find $(DIST_DIR) -name "*.patch" | xargs $(RM) -r $(DOS2UNIX) $(DIST_DIR)/Makefile $(DOS2UNIX) $(DIST_DIR)/auto/Makefile $(DOS2UNIX) $(DIST_DIR)/config/* $(UNIX2DOS) $(DIST_DIR)/auto/core/* $(UNIX2DOS) $(DIST_DIR)/auto/extensions/* find $(DIST_DIR) -name '*.h' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.c' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.md' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.txt' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.html' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.css' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.sh' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.pl' | xargs $(UNIX2DOS) find $(DIST_DIR) -name 'Makefile' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.in' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.pm' | xargs $(UNIX2DOS) find $(DIST_DIR) -name '*.rc' | xargs $(UNIX2DOS) rm -f $(DIST_SRC_ZIP) cd $(DIST_DIR)/.. && zip -rq9 $(DIST_SRC_ZIP) $(DIST_NAME) $(DOS2UNIX) $(DIST_DIR)/Makefile $(DOS2UNIX) $(DIST_DIR)/auto/Makefile $(DOS2UNIX) $(DIST_DIR)/config/* $(DOS2UNIX) $(DIST_DIR)/auto/core/* $(DOS2UNIX) $(DIST_DIR)/auto/extensions/* find $(DIST_DIR) -name '*.h' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.c' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.md' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.txt' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.html' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.css' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.sh' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.pl' | xargs $(DOS2UNIX) find $(DIST_DIR) -name 'Makefile' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.in' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.pm' | xargs $(DOS2UNIX) find $(DIST_DIR) -name '*.rc' | xargs $(DOS2UNIX) rm -f $(DIST_SRC_TGZ) cd $(DIST_DIR)/.. && env GZIP=-9 tar czf $(DIST_SRC_TGZ) $(DIST_NAME) $(RM) -r $(DIST_DIR) extensions: $(MAKE) -C auto .PHONY: clean distclean tardist dist-win32 dist-src nigels-com-glew-285c35d/.gitea/0000775000175000017500000000000015135005167016400 5ustar alastairalastairnigels-com-glew-285c35d/.gitea/workflows/0000775000175000017500000000000015135005167020435 5ustar alastairalastairnigels-com-glew-285c35d/.gitea/workflows/linux-cmake.yaml0000664000175000017500000000260015135005167023534 0ustar alastairalastairname: Ubuntu Linux cmake Build on: [push] jobs: build: runs-on: ubuntu-latest strategy: matrix: flavour: [ "-DCMAKE_BUILD_TYPE=Debug -DGLEW_X11=Y -DGLEW_EGL=N -DBUILD_SHARED_LIBS=N", "-DCMAKE_BUILD_TYPE=Debug -DGLEW_X11=N -DGLEW_EGL=Y -DBUILD_SHARED_LIBS=N", "-DCMAKE_BUILD_TYPE=Debug -DGLEW_X11=Y -DGLEW_EGL=N -DBUILD_SHARED_LIBS=Y", "-DCMAKE_BUILD_TYPE=Debug -DGLEW_X11=N -DGLEW_EGL=Y -DBUILD_SHARED_LIBS=Y", "-DCMAKE_BUILD_TYPE=Release -DGLEW_X11=Y -DGLEW_EGL=N -DBUILD_SHARED_LIBS=N", "-DCMAKE_BUILD_TYPE=Release -DGLEW_X11=N -DGLEW_EGL=Y -DBUILD_SHARED_LIBS=N", "-DCMAKE_BUILD_TYPE=Release -DGLEW_X11=Y -DGLEW_EGL=N -DBUILD_SHARED_LIBS=Y", "-DCMAKE_BUILD_TYPE=Release -DGLEW_X11=N -DGLEW_EGL=Y -DBUILD_SHARED_LIBS=Y", ] steps: - name: Install Dependencies run: | apt update apt install -y cmake ninja-build libxmu-dev libxi-dev libgl-dev libegl1-mesa-dev dos2unix - name: Git Checkout uses: actions/checkout@v4 - name: Generate Code run: | make -C auto clobber make extensions make dist-src - name: Build Binaries run: | mkdir build_ cmake build/cmake -B build_ -G Ninja --fresh ${{ matrix.flavour }} cmake --build build_ rm -Rf build_ nigels-com-glew-285c35d/.gitea/workflows/linux-clang.yaml0000664000175000017500000000111615135005167023541 0ustar alastairalastairname: Ubuntu Linux clang Build on: [push] jobs: build: runs-on: ubuntu-latest steps: - name: Install Dependencies run: | apt update apt install -y clang libxmu-dev libxi-dev libgl-dev libegl1-mesa-dev dos2unix - name: Git Checkout uses: actions/checkout@v4 - name: Generate Code run: | make -C auto clobber make extensions make dist-src - name: Build Binaries run: | make clean && SYSTEM=linux-clang make make clean && SYSTEM=linux-clang-egl make nigels-com-glew-285c35d/.gitea/workflows/linux-gcc.yaml0000664000175000017500000000110615135005167023210 0ustar alastairalastairname: Ubuntu Linux gcc Build on: [push] jobs: build: runs-on: ubuntu-latest steps: - name: Install Dependencies run: | apt update apt install -y libxmu-dev libxi-dev libgl-dev libegl1-mesa-dev dos2unix - name: Git Checkout uses: actions/checkout@v4 - name: Generate Code run: | make -C auto clobber make extensions make dist-src - name: Build Binaries run: | make clean && SYSTEM=linux make make clean && SYSTEM=linux-egl make nigels-com-glew-285c35d/.gitea/workflows/linux-mingw.yaml0000664000175000017500000000104015135005167023572 0ustar alastairalastairname: Ubuntu Linux gcc cross-build on: [push] jobs: build: runs-on: ubuntu-latest steps: - name: Install Dependencies run: | apt update apt install -y mingw-w64 dos2unix - name: Git Checkout uses: actions/checkout@v4 - name: Generate Code run: | make -C auto clobber make extensions make dist-src - name: Build Binaries run: | make clean && SYSTEM=linux-mingw32 make make clean && SYSTEM=linux-mingw64 make nigels-com-glew-285c35d/config/0000775000175000017500000000000015135005167016476 5ustar alastairalastairnigels-com-glew-285c35d/config/Makefile.flatpak-320000664000175000017500000000141315135005167022000 0ustar alastairalastairNAME = $(GLEW_NAME) CC = /usr/lib/sdk/toolchain-i386/bin/i686-unknown-linux-gnu-gcc -m32 -L/lib/i386-linux-gnu LD = /usr/lib/sdk/toolchain-i386/bin/i686-unknown-linux-gnu-gcc -m32 -L/lib/i386-linux-gnu LDFLAGS.EXTRA += -m32 LDFLAGS.EXTRA += -L/lib/i386-linux-gnu LIBDIR = $(GLEW_DEST)/lib32 LDFLAGS.GL = -lGL -lX11 LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic WARN += -Wall -W WARN += -Wshadow WARN += -pedantic POPT = -O2 CFLAGS.EXTRA += -m32 CFLAGS.EXTRA += -fPIC CFLAGS.EXTRA += -Wcast-qual CFLAGS.EXTRA += -ansi -pedantic CFLAGS.EXTRA += -fno-stack-protector BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -m32 -shared -Wl,-soname=$(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.linux-egl-glvnd0000664000175000017500000000016215135005167023150 0ustar alastairalastairinclude config/Makefile.linux LDFLAGS.GL = -lEGL -lOpenGL CFLAGS.EXTRA += -DGLEW_EGL GLEW_NO_GLU = -DGLEW_NO_GLU nigels-com-glew-285c35d/config/Makefile.linux-mingw64-clang0000664000175000017500000000164315135005167023653 0ustar alastairalastair# For cross-compiling from Linux to Windows 64-bit using LLVM MinGW # https://github.com/mstorsjo/llvm-mingw # # Ubuntu/Debian: # $ make SYSTEM=linux-mingw64-clang # # Note: It is likely necessary to configure LDFLAGS.GL to reflect the location # of the Windows link libraries NAME := glew32 HOST := x86_64-w64-mingw32 GLEW_DEST ?= /usr/local/$(HOST) CC := $(HOST)-clang LD := $(HOST)-ld LN := STRIP := LDFLAGS.GL = -L/opt/llvm-mingw-20250613-msvcrt-ubuntu-22.04-x86_64/x86_64-w64-mingw32/lib -lopengl32 -lgdi32 -luser32 -lkernel32 -lmsvcrt CFLAGS.EXTRA += -fno-stack-protector -Wno-cast-function-type WARN = -Wall -W POPT = -O2 BIN.SUFFIX = .exe LIB.SONAME = lib$(NAME).dll LIB.DEVLNK = lib$(NAME).dll.a # for mingw this is the dll import lib LIB.SHARED = $(NAME).dll LIB.STATIC = lib$(NAME).a # the static lib will be broken LDFLAGS.SO = -shared --out-implib lib/$(LIB.DEVLNK) nigels-com-glew-285c35d/config/Makefile.cygming0000664000175000017500000000126215135005167021573 0ustar alastairalastairNAME = glew32 GLEW_DEST = /usr BINDIR = /usr/bin LIBDIR = /usr/lib/mingw INCDIR = /usr/include/mingw/GL # use gcc for linking, with ld it does not work CC := gcc -mno-cygwin LD := gcc -mno-cygwin LN := LDFLAGS.GL = -lopengl32 -lgdi32 -luser32 -lkernel32 LDFLAGS.EXTRA = -L$(LIBDIR) CFLAGS.EXTRA += -fno-builtin -fno-stack-protector LDFLAGS.EXTRA += -nostdlib WARN = -Wall -W POPT = -O2 BIN.SUFFIX = .exe LIB.SONAME = lib$(NAME).dll LIB.DEVLNK = lib$(NAME).dll.a # for mingw this is the dll import lib LIB.SHARED = $(NAME).dll LIB.STATIC = lib$(NAME).a # the static lib will be broken LDFLAGS.SO = -shared -Wl,-soname,$(LIB.SONAME) -Wl,--out-implib,lib/$(LIB.DEVLNK) nigels-com-glew-285c35d/config/Makefile.darwin-arm640000664000175000017500000000147515135005167022357 0ustar alastairalastairGLEW_DEST = /usr/local NAME = $(GLEW_NAME) CC = cc LD = cc CFLAGS.EXTRA += -arch arm64 CFLAGS.EXTRA += -dynamic -fno-common CFLAGS.EXTRA += -pedantic CFLAGS.EXTRA += -fPIC LDFLAGS.EXTRA = -arch arm64 ifneq (undefined, $(origin GLEW_APPLE_GLX)) CFLAGS.EXTRA += -std=c99 CFLAGS.EXTRA += -I/usr/X11R6/include -D'GLEW_APPLE_GLX' LDFLAGS.GL = -L/usr/X11R6/lib -lGL -lX11 else CFLAGS.EXTRA += -std=c89 GLEW_NO_GLU = -DGLEW_NO_GLU LDFLAGS.GL = -framework OpenGL endif LDFLAGS.STATIC = LDFLAGS.DYNAMIC = WARN = -Wall -W POPT = -Os BIN.SUFFIX = LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) nigels-com-glew-285c35d/config/Makefile.linux-egl0000664000175000017500000000012215135005167022034 0ustar alastairalastairinclude config/Makefile.linux LDFLAGS.GL = -lEGL -lGL CFLAGS.EXTRA += -DGLEW_EGL nigels-com-glew-285c35d/config/Makefile.linux0000664000175000017500000000155115135005167021276 0ustar alastairalastairNAME = $(GLEW_NAME) CC = cc LD = cc M_ARCH ?= $(shell uname -m) ARCH64 = false ifeq (x86_64,${M_ARCH}) ARCH64 = true endif ifeq (ppc64,${M_ARCH}) ARCH64 = true endif ifeq (e2k,${M_ARCH}) ARCH64 = true endif ifeq (${ARCH64},true) LDFLAGS.EXTRA = -L/usr/X11R6/lib64 -L/usr/lib64 LIBDIR = $(GLEW_DEST)/lib64 else LDFLAGS.EXTRA = -L/usr/X11R6/lib -L/usr/lib LIBDIR = $(GLEW_DEST)/lib endif LDFLAGS.GL = -lGL -lX11 LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic NAME = GLEW WARN += -Wall -W WARN += -Wshadow WARN += -pedantic POPT = -O2 CFLAGS.EXTRA += -fPIC CFLAGS.EXTRA += -Wcast-qual CFLAGS.EXTRA += -ansi -pedantic CFLAGS.EXTRA += -fno-stack-protector BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.nacl-640000664000175000017500000000124315135005167021301 0ustar alastairalastairNAME = $(REGAL_NAME) M_PREFIX = i686 M_NAME ?= $(shell uname -s) ifeq (Linux,${M_NAME}) M_PREFIX = i686 endif CC = $(M_PREFIX)-nacl-gcc CXX = $(M_PREFIX)-nacl-g++ LD = $(M_PREFIX)-nacl-ld STRIP ?= EXT.DYNAMIC = so LDFLAGS.EXTRA = LIBDIR = CFLAGS.EXTRA += -fPIC CFLAGS.EXTRA += -m64 LDFLAGS.EXTRA += -melf64_nacl LDFLAGS.GL = LDFLAGS.GLU = -lRegalGLU LDFLAGS.GLUT = -lRegalGLUT LDFLAGS.STATIC = LDFLAGS.DYNAMIC = -shared WARN = -Wall -W -Wno-unused-parameter POPT = -O2 BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.solaris0000664000175000017500000000052115135005167021607 0ustar alastairalastairNAME = $(GLEW_NAME) CC = cc LD = ld CFLAGS.EXTRA = -I/usr/openwin/include -Kpic LDFLAGS.SO = -G LDFLAGS.EXTRA = -L/usr/openwin/lib LDFLAGS.GL = -lGL -lX11 NAME = GLEW BIN.SUFFIX = POPT = -xO2 LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a nigels-com-glew-285c35d/config/version0000664000175000017500000000027315135005167020110 0ustar alastairalastairGLEW_MAJOR = 2 GLEW_MINOR = 3 GLEW_MICRO = 1 GLEW_VERSION = $(GLEW_MAJOR).$(GLEW_MINOR).$(GLEW_MICRO) GLEW_NAME = GLEW SO_MAJOR = $(GLEW_MAJOR).$(GLEW_MINOR) SO_VERSION = $(GLEW_VERSION) nigels-com-glew-285c35d/config/Makefile.mingw-win320000664000175000017500000000016215135005167022215 0ustar alastairalastairinclude config/Makefile.mingw POPT := -march=i686 -mtune=generic -O2 CFLAGS.EXTRA += -m32 LDFLAGS.EXTRA += -m32 nigels-com-glew-285c35d/config/Makefile.linux-mingw320000664000175000017500000000142715135005167022564 0ustar alastairalastair# For cross-compiling from Linux to Windows 32-bit using mingw32 # http://mingw-w64.org/ # # Ubuntu/Debian: # $ sudo apt install mingw-w64 # $ make SYSTEM=linux-mingw32 NAME := glew32 HOST := i686-w64-mingw32 GLEW_DEST ?= /usr/local/$(HOST) CC := $(HOST)-gcc LD := $(HOST)-ld LN := STRIP := LDFLAGS.GL = -L/usr/$(HOST)/lib -lopengl32 -lgdi32 -luser32 -lkernel32 CFLAGS.EXTRA += -fno-builtin -fno-stack-protector -Wno-cast-function-type WARN = -Wall -W POPT = -O2 BIN.SUFFIX = .exe LIB.SONAME = lib$(NAME).dll LIB.DEVLNK = lib$(NAME).dll.a # for mingw this is the dll import lib LIB.SHARED = $(NAME).dll LIB.STATIC = lib$(NAME).a # the static lib will be broken LDFLAGS.SO = -nostdlib -shared -soname $(LIB.SONAME) --out-implib lib/$(LIB.DEVLNK) nigels-com-glew-285c35d/config/Makefile.linux-clang0000664000175000017500000000144315135005167022360 0ustar alastairalastairNAME = $(GLEW_NAME) CC = clang LD = clang M_ARCH ?= $(shell uname -m) ARCH64 = false ifeq (x86_64,${M_ARCH}) ARCH64 = true endif ifeq (ppc64,${M_ARCH}) ARCH64 = true endif ifeq (${ARCH64},true) LDFLAGS.EXTRA = -L/usr/X11R6/lib64 -L/usr/lib64 LIBDIR = $(GLEW_DEST)/lib64 else LDFLAGS.EXTRA = -L/usr/X11R6/lib -L/usr/lib LIBDIR = $(GLEW_DEST)/lib endif LDFLAGS.GL = -lGL -lX11 LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic NAME = GLEW WARN = -Wall -W POPT = -O2 CFLAGS.EXTRA += -fPIC CFLAGS.EXTRA += -Wcast-qual CFLAGS.EXTRA += -std=c89 -pedantic CFLAGS.EXTRA += -fno-stack-protector BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME) nigels-com-glew-285c35d/config/config.guess0000775000175000017500000014324215135005167021024 0ustar alastairalastair#! /bin/sh # Attempt to guess a canonical system name. # Copyright 1992-2025 Free Software Foundation, Inc. # shellcheck disable=SC2006,SC2268 # see below for rationale timestamp='2025-07-10' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see . # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that # program. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # # Originally written by Per Bothner; maintained since 2000 by Ben Elliston. # # You can get the latest version of this script from: # https://git.savannah.gnu.org/cgit/config.git/plain/config.guess # # Please send patches to . # The "shellcheck disable" line above the timestamp inhibits complaints # about features and limitations of the classic Bourne shell that were # superseded or lifted in POSIX. However, this script identifies a wide # variety of pre-POSIX systems that do not have POSIX shells at all, and # even some reasonably current systems (Solaris 10 as case-in-point) still # have a pre-POSIX /bin/sh. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] Output the configuration name of the system '$me' is run on. Options: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. Copyright 1992-2025 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try '$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" >&2 exit 1 ;; * ) break ;; esac done if test $# != 0; then echo "$me: too many arguments$help" >&2 exit 1 fi # Just in case it came from the environment. GUESS= # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a # headache to deal with in a portable fashion. # Historically, 'CC_FOR_BUILD' used to be named 'HOST_CC'. We still # use 'HOST_CC' if defined, but it is deprecated. # Portable tmp directory creation inspired by the Autoconf team. tmp= # shellcheck disable=SC2172 trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 set_cc_for_build() { # prevent multiple calls if $tmp is already set test "$tmp" && return 0 : "${TMPDIR=/tmp}" # shellcheck disable=SC2039,SC3028 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } dummy=$tmp/dummy case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in ,,) echo "int x;" > "$dummy.c" for driver in cc gcc c17 c99 c89 ; do if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then CC_FOR_BUILD=$driver break fi done if test x"$CC_FOR_BUILD" = x ; then CC_FOR_BUILD=no_compiler_found fi ;; ,,*) CC_FOR_BUILD=$CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;; esac } # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) if test -f /.attbin/uname ; then PATH=$PATH:/.attbin ; export PATH fi UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown case $UNAME_SYSTEM in Linux|GNU|GNU/*) LIBC=unknown set_cc_for_build cat <<-EOF > "$dummy.c" #if defined(__ANDROID__) LIBC=android #else #include #if defined(__UCLIBC__) LIBC=uclibc #elif defined(__dietlibc__) LIBC=dietlibc #elif defined(__GLIBC__) LIBC=gnu #elif defined(__LLVM_LIBC__) LIBC=llvm #else #include /* First heuristic to detect musl libc. */ #ifdef __DEFINED_va_list LIBC=musl #endif #endif #endif EOF cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` eval "$cc_set_libc" # Second heuristic to detect musl libc. if [ "$LIBC" = unknown ] && command -v ldd >/dev/null && ldd --version 2>&1 | grep -q ^musl; then LIBC=musl fi # If the system lacks a compiler, then just pick glibc. # We could probably try harder. if [ "$LIBC" = unknown ]; then LIBC=gnu fi ;; esac # Note: order is significant - the case branches are not exclusive. case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward # compatibility and a consistent mechanism for selecting the # object file format. # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ /sbin/sysctl -n hw.machine_arch 2>/dev/null || \ /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \ echo unknown)` case $UNAME_MACHINE_ARCH in aarch64eb) machine=aarch64_be-unknown ;; armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-unknown ;; earmv*) arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` machine=${arch}${endian}-unknown ;; *) machine=$UNAME_MACHINE_ARCH-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently (or will in the future) and ABI. case $UNAME_MACHINE_ARCH in earm*) os=netbsdelf ;; arm*|i386|m68k|ns32k|sh3*|sparc|vax) set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? os=netbsd else os=netbsdelf fi ;; *) os=netbsd ;; esac # Determine ABI tags. case $UNAME_MACHINE_ARCH in earm*) expr='s/^earmv[0-9]/-eabi/;s/eb$//' abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` ;; esac # The OS release # Debian GNU/NetBSD machines have a different userland, and # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. case $UNAME_VERSION in Debian*) release='-gnu' ;; *) release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. GUESS=$machine-${os}${release}${abi-} ;; *:Bitrig:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE ;; *:SecBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'` GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE ;; *:LibertyBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE ;; *:MidnightBSD:*:*) GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE ;; *:ekkoBSD:*:*) GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE ;; *:SolidBSD:*:*) GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE ;; *:OS108:*:*) GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE ;; macppc:MirBSD:*:*) GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE ;; *:MirBSD:*:*) GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE ;; *:Sortix:*:*) GUESS=$UNAME_MACHINE-unknown-sortix ;; *:Twizzler:*:*) GUESS=$UNAME_MACHINE-unknown-twizzler ;; *:Redox:*:*) GUESS=$UNAME_MACHINE-unknown-redox ;; mips:OSF1:*.*) GUESS=mips-dec-osf1 ;; alpha:OSF1:*:*) # Reset EXIT trap before exiting to avoid spurious non-zero exit code. trap '' 0 case $UNAME_RELEASE in *4.0) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ;; *5.*) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on # OSF/1 and Tru64 systems produced since 1995. I hope that # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` case $ALPHA_CPU_TYPE in "EV4 (21064)") UNAME_MACHINE=alpha ;; "EV4.5 (21064)") UNAME_MACHINE=alpha ;; "LCA4 (21066/21068)") UNAME_MACHINE=alpha ;; "EV5 (21164)") UNAME_MACHINE=alphaev5 ;; "EV5.6 (21164A)") UNAME_MACHINE=alphaev56 ;; "EV5.6 (21164PC)") UNAME_MACHINE=alphapca56 ;; "EV5.7 (21164PC)") UNAME_MACHINE=alphapca57 ;; "EV6 (21264)") UNAME_MACHINE=alphaev6 ;; "EV6.7 (21264A)") UNAME_MACHINE=alphaev67 ;; "EV6.8CB (21264C)") UNAME_MACHINE=alphaev68 ;; "EV6.8AL (21264B)") UNAME_MACHINE=alphaev68 ;; "EV6.8CX (21264D)") UNAME_MACHINE=alphaev68 ;; "EV6.9A (21264/EV69A)") UNAME_MACHINE=alphaev69 ;; "EV7 (21364)") UNAME_MACHINE=alphaev7 ;; "EV7.9 (21364A)") UNAME_MACHINE=alphaev79 ;; esac # A Pn.n version is a patched version. # A Vn.n version is a released version. # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` GUESS=$UNAME_MACHINE-dec-osf$OSF_REL ;; Amiga*:UNIX_System_V:4.0:*) GUESS=m68k-unknown-sysv4 ;; *:[Aa]miga[Oo][Ss]:*:*) GUESS=$UNAME_MACHINE-unknown-amigaos ;; *:[Mm]orph[Oo][Ss]:*:*) GUESS=$UNAME_MACHINE-unknown-morphos ;; *:OS/390:*:*) GUESS=i370-ibm-openedition ;; *:z/VM:*:*) GUESS=s390-ibm-zvmoe ;; *:OS400:*:*) GUESS=powerpc-ibm-os400 ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) GUESS=arm-acorn-riscix$UNAME_RELEASE ;; arm*:riscos:*:*|arm*:RISCOS:*:*) GUESS=arm-unknown-riscos ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) GUESS=hppa1.1-hitachi-hiuxmpp ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. case `(/bin/universe) 2>/dev/null` in att) GUESS=pyramid-pyramid-sysv3 ;; *) GUESS=pyramid-pyramid-bsd ;; esac ;; NILE*:*:*:dcosx) GUESS=pyramid-pyramid-svr4 ;; DRS?6000:unix:4.0:6*) GUESS=sparc-icl-nx6 ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in sparc) GUESS=sparc-icl-nx7 ;; esac ;; s390x:SunOS:*:*) SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL ;; sun4H:SunOS:5.*:*) SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=sparc-hal-solaris2$SUN_REL ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=sparc-sun-solaris2$SUN_REL ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) GUESS=i386-pc-auroraux$UNAME_RELEASE ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) set_cc_for_build SUN_ARCH=i386 # If there is a compiler, see if it is configured for 64-bit objects. # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. # This test works for both compilers. if test "$CC_FOR_BUILD" != no_compiler_found; then if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then SUN_ARCH=x86_64 fi fi SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=$SUN_ARCH-pc-solaris2$SUN_REL ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=sparc-sun-solaris3$SUN_REL ;; sun4*:SunOS:*:*) case `/usr/bin/arch -k` in Series*|S4*) UNAME_RELEASE=`uname -v` ;; esac # Japanese Language versions have a version number like '4.1.3-JL'. SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'` GUESS=sparc-sun-sunos$SUN_REL ;; sun3*:SunOS:*:*) GUESS=m68k-sun-sunos$UNAME_RELEASE ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 case `/bin/arch` in sun3) GUESS=m68k-sun-sunos$UNAME_RELEASE ;; sun4) GUESS=sparc-sun-sunos$UNAME_RELEASE ;; esac ;; aushp:SunOS:*:*) GUESS=sparc-auspex-sunos$UNAME_RELEASE ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) GUESS=m68k-atari-mint$UNAME_RELEASE ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) GUESS=m68k-atari-mint$UNAME_RELEASE ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) GUESS=m68k-atari-mint$UNAME_RELEASE ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) GUESS=m68k-milan-mint$UNAME_RELEASE ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) GUESS=m68k-hades-mint$UNAME_RELEASE ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) GUESS=m68k-unknown-mint$UNAME_RELEASE ;; m68k:machten:*:*) GUESS=m68k-apple-machten$UNAME_RELEASE ;; powerpc:machten:*:*) GUESS=powerpc-apple-machten$UNAME_RELEASE ;; RISC*:Mach:*:*) GUESS=mips-dec-mach_bsd4.3 ;; RISC*:ULTRIX:*:*) GUESS=mips-dec-ultrix$UNAME_RELEASE ;; VAX*:ULTRIX*:*:*) GUESS=vax-dec-ultrix$UNAME_RELEASE ;; 2020:CLIX:*:* | 2430:CLIX:*:*) GUESS=clipper-intergraph-clix$UNAME_RELEASE ;; mips:*:*:UMIPS | mips:*:*:RISCos) set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #ifdef __cplusplus #include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { #endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_SVR4) printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); #endif #endif exit (-1); } EOF $CC_FOR_BUILD -o "$dummy" "$dummy.c" && dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && SYSTEM_NAME=`"$dummy" "$dummyarg"` && { echo "$SYSTEM_NAME"; exit; } GUESS=mips-mips-riscos$UNAME_RELEASE ;; Motorola:PowerMAX_OS:*:*) GUESS=powerpc-motorola-powermax ;; Motorola:*:4.3:PL8-*) GUESS=powerpc-harris-powermax ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) GUESS=powerpc-harris-powermax ;; Night_Hawk:Power_UNIX:*:*) GUESS=powerpc-harris-powerunix ;; m88k:CX/UX:7*:*) GUESS=m88k-harris-cxux7 ;; m88k:*:4*:R4*) GUESS=m88k-motorola-sysv4 ;; m88k:*:3*:R3*) GUESS=m88k-motorola-sysv3 ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110 then if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \ test "$TARGET_BINARY_INTERFACE"x = x then GUESS=m88k-dg-dgux$UNAME_RELEASE else GUESS=m88k-dg-dguxbcs$UNAME_RELEASE fi else GUESS=i586-dg-dgux$UNAME_RELEASE fi ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) GUESS=m88k-dolphin-sysv3 ;; M88*:*:R3*:*) # Delta 88k system running SVR3 GUESS=m88k-motorola-sysv3 ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) GUESS=m88k-tektronix-sysv3 ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) GUESS=m68k-tektronix-bsd ;; *:IRIX*:*:*) IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'` GUESS=mips-sgi-irix$IRIX_REL ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. GUESS=romp-ibm-aix # uname -m gives an 8 hex-code CPU id ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) GUESS=i386-ibm-aix ;; ia64:AIX:*:*) if test -x /usr/bin/oslevel ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=$UNAME_VERSION.$UNAME_RELEASE fi GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #include int main () { if (!__power_pc()) exit(1); puts("powerpc-ibm-aix3.2.5"); exit(0); } EOF if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` then GUESS=$SYSTEM_NAME else GUESS=rs6000-ibm-aix3.2.5 fi elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then GUESS=rs6000-ibm-aix3.2.4 else GUESS=rs6000-ibm-aix3.2 fi ;; *:AIX:*:[4567]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi if test -x /usr/bin/lslpp ; then IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \ awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` else IBM_REV=$UNAME_VERSION.$UNAME_RELEASE fi GUESS=$IBM_ARCH-ibm-aix$IBM_REV ;; *:AIX:*:*) GUESS=rs6000-ibm-aix ;; ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) GUESS=romp-ibm-bsd4.4 ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and GUESS=romp-ibm-bsd$UNAME_RELEASE # 4.3 with uname added to ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) GUESS=rs6000-bull-bosx ;; DPX/2?00:B.O.S.:*:*) GUESS=m68k-bull-sysv3 ;; 9000/[34]??:4.3bsd:1.*:*) GUESS=m68k-hp-bsd ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) GUESS=m68k-hp-bsd4.4 ;; 9000/[34678]??:HP-UX:*:*) HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` case $UNAME_MACHINE in 9000/31?) HP_ARCH=m68000 ;; 9000/[34]??) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) if test -x /usr/bin/getconf; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` case $sc_cpu_version in 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 case $sc_kernel_bits in 32) HP_ARCH=hppa2.0n ;; 64) HP_ARCH=hppa2.0w ;; '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 esac ;; esac fi if test "$HP_ARCH" = ""; then set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #define _HPUX_SOURCE #include #include int main () { #if defined(_SC_KERNEL_BITS) long bits = sysconf(_SC_KERNEL_BITS); #endif long cpu = sysconf (_SC_CPU_VERSION); switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0"); break; case CPU_PA_RISC1_1: puts ("hppa1.1"); break; case CPU_PA_RISC2_0: #if defined(_SC_KERNEL_BITS) switch (bits) { case 64: puts ("hppa2.0w"); break; case 32: puts ("hppa2.0n"); break; default: puts ("hppa2.0"); break; } break; #else /* !defined(_SC_KERNEL_BITS) */ puts ("hppa2.0"); break; #endif default: puts ("hppa1.0"); break; } exit (0); } EOF (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac if test "$HP_ARCH" = hppa2.0w then set_cc_for_build # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler # generating 64-bit code. GNU and HP use different nomenclature: # # $ CC_FOR_BUILD=cc ./config.guess # => hppa2.0w-hp-hpux11.23 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess # => hppa64-hp-hpux11.23 if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | grep -q __LP64__ then HP_ARCH=hppa2.0w else HP_ARCH=hppa64 fi fi GUESS=$HP_ARCH-hp-hpux$HPUX_REV ;; ia64:HP-UX:*:*) HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` GUESS=ia64-hp-hpux$HPUX_REV ;; 3050*:HI-UX:*:*) set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #include int main () { long cpu = sysconf (_SC_CPU_VERSION); /* The order matters, because CPU_IS_HP_MC68K erroneously returns true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct results, however. */ if (CPU_IS_PA_RISC (cpu)) { switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; default: puts ("hppa-hitachi-hiuxwe2"); break; } } else if (CPU_IS_HP_MC68K (cpu)) puts ("m68k-hitachi-hiuxwe2"); else puts ("unknown-hitachi-hiuxwe2"); exit (0); } EOF $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && { echo "$SYSTEM_NAME"; exit; } GUESS=unknown-hitachi-hiuxwe2 ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) GUESS=hppa1.1-hp-bsd ;; 9000/8??:4.3bsd:*:*) GUESS=hppa1.0-hp-bsd ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) GUESS=hppa1.0-hp-mpeix ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) GUESS=hppa1.1-hp-osf ;; hp8??:OSF1:*:*) GUESS=hppa1.0-hp-osf ;; i*86:OSF1:*:*) if test -x /usr/sbin/sysversion ; then GUESS=$UNAME_MACHINE-unknown-osf1mk else GUESS=$UNAME_MACHINE-unknown-osf1 fi ;; parisc*:Lites*:*:*) GUESS=hppa1.1-hp-lites ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) GUESS=c1-convex-bsd ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) GUESS=c34-convex-bsd ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) GUESS=c38-convex-bsd ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) GUESS=c4-convex-bsd ;; CRAY*Y-MP:*:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=ymp-cray-unicos$CRAY_REL ;; CRAY*[A-Z]90:*:*:*) echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' exit ;; CRAY*TS:*:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=t90-cray-unicos$CRAY_REL ;; CRAY*T3E:*:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=alphaev5-cray-unicosmk$CRAY_REL ;; CRAY*SV1:*:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=sv1-cray-unicos$CRAY_REL ;; *:UNICOS/mp:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=craynv-cray-unicosmp$CRAY_REL ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE ;; sparc*:BSD/OS:*:*) GUESS=sparc-unknown-bsdi$UNAME_RELEASE ;; *:BSD/OS:*:*) GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE ;; arm:FreeBSD:*:*) UNAME_PROCESSOR=`uname -p` set_cc_for_build if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi else FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf fi ;; *:FreeBSD:*:*) UNAME_PROCESSOR=`uname -p` case $UNAME_PROCESSOR in amd64) UNAME_PROCESSOR=x86_64 ;; i386) UNAME_PROCESSOR=i586 ;; esac FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL ;; i*:CYGWIN*:*) GUESS=$UNAME_MACHINE-pc-cygwin ;; *:MINGW64*:*) GUESS=$UNAME_MACHINE-pc-mingw64 ;; *:MINGW*:*) GUESS=$UNAME_MACHINE-pc-mingw32 ;; *:MSYS*:*) GUESS=$UNAME_MACHINE-pc-msys ;; i*:PW*:*) GUESS=$UNAME_MACHINE-pc-pw32 ;; *:SerenityOS:*:*) GUESS=$UNAME_MACHINE-pc-serenity ;; *:Interix*:*) case $UNAME_MACHINE in x86) GUESS=i586-pc-interix$UNAME_RELEASE ;; authenticamd | genuineintel | EM64T) GUESS=x86_64-unknown-interix$UNAME_RELEASE ;; IA64) GUESS=ia64-unknown-interix$UNAME_RELEASE ;; esac ;; i*:UWIN*:*) GUESS=$UNAME_MACHINE-pc-uwin ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) GUESS=x86_64-pc-cygwin ;; prep*:SunOS:5.*:*) SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=powerpcle-unknown-solaris2$SUN_REL ;; *:GNU:*:*) # the GNU system GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'` GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'` GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL ;; *:GNU/*:*:*) # other systems with GNU libc and userland GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"` GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC ;; x86_64:[Mm]anagarm:*:*|i?86:[Mm]anagarm:*:*) GUESS="$UNAME_MACHINE-pc-managarm-mlibc" ;; *:[Mm]anagarm:*:*) GUESS="$UNAME_MACHINE-unknown-managarm-mlibc" ;; *:Minix:*:*) GUESS=$UNAME_MACHINE-unknown-minix ;; aarch64:Linux:*:*) set_cc_for_build CPU=$UNAME_MACHINE LIBCABI=$LIBC if test "$CC_FOR_BUILD" != no_compiler_found; then ABI=64 sed 's/^ //' << EOF > "$dummy.c" #ifdef __ARM_EABI__ #ifdef __ARM_PCS_VFP ABI=eabihf #else ABI=eabi #endif #endif EOF cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'` eval "$cc_set_abi" case $ABI in eabi | eabihf) CPU=armv8l; LIBCABI=$LIBC$ABI ;; esac fi GUESS=$CPU-unknown-linux-$LIBCABI ;; aarch64_be:Linux:*:*) UNAME_MACHINE=aarch64_be GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; PCA57) UNAME_MACHINE=alphapca56 ;; EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC=gnulibc1 ; fi GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; arm*:Linux:*:*) set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then GUESS=$UNAME_MACHINE-unknown-linux-$LIBC else if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi else GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf fi fi ;; avr32*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; cris:Linux:*:*) GUESS=$UNAME_MACHINE-axis-linux-$LIBC ;; crisv32:Linux:*:*) GUESS=$UNAME_MACHINE-axis-linux-$LIBC ;; e2k:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; frv:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; hexagon:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; i*86:Linux:*:*) GUESS=$UNAME_MACHINE-pc-linux-$LIBC ;; ia64:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; k1om:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; kvx:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; kvx:cos:*:*) GUESS=$UNAME_MACHINE-unknown-cos ;; kvx:mbr:*:*) GUESS=$UNAME_MACHINE-unknown-mbr ;; loongarch32:Linux:*:* | loongarch64:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; m32r*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; m68*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; mips:Linux:*:* | mips64:Linux:*:*) set_cc_for_build IS_GLIBC=0 test x"${LIBC}" = xgnu && IS_GLIBC=1 sed 's/^ //' << EOF > "$dummy.c" #undef CPU #undef mips #undef mipsel #undef mips64 #undef mips64el #if ${IS_GLIBC} && defined(_ABI64) LIBCABI=gnuabi64 #else #if ${IS_GLIBC} && defined(_ABIN32) LIBCABI=gnuabin32 #else LIBCABI=${LIBC} #endif #endif #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 CPU=mipsisa64r6 #else #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 CPU=mipsisa32r6 #else #if defined(__mips64) CPU=mips64 #else CPU=mips #endif #endif #endif #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) MIPS_ENDIAN=el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) MIPS_ENDIAN= #else MIPS_ENDIAN= #endif #endif EOF cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'` eval "$cc_set_vars" test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; } ;; mips64el:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; openrisc*:Linux:*:*) GUESS=or1k-unknown-linux-$LIBC ;; or32:Linux:*:* | or1k*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; padre:Linux:*:*) GUESS=sparc-unknown-linux-$LIBC ;; parisc64:Linux:*:* | hppa64:Linux:*:*) GUESS=hppa64-unknown-linux-$LIBC ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;; PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;; *) GUESS=hppa-unknown-linux-$LIBC ;; esac ;; ppc64:Linux:*:*) GUESS=powerpc64-unknown-linux-$LIBC ;; ppc:Linux:*:*) GUESS=powerpc-unknown-linux-$LIBC ;; ppc64le:Linux:*:*) GUESS=powerpc64le-unknown-linux-$LIBC ;; ppcle:Linux:*:*) GUESS=powerpcle-unknown-linux-$LIBC ;; riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; s390:Linux:*:* | s390x:Linux:*:*) GUESS=$UNAME_MACHINE-ibm-linux-$LIBC ;; sh64*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; sh*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; sparc:Linux:*:* | sparc64:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; tile*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; vax:Linux:*:*) GUESS=$UNAME_MACHINE-dec-linux-$LIBC ;; x86_64:Linux:*:*) set_cc_for_build CPU=$UNAME_MACHINE LIBCABI=$LIBC if test "$CC_FOR_BUILD" != no_compiler_found; then ABI=64 sed 's/^ //' << EOF > "$dummy.c" #ifdef __i386__ ABI=x86 #else #ifdef __ILP32__ ABI=x32 #endif #endif EOF cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'` eval "$cc_set_abi" case $ABI in x86) CPU=i686 ;; x32) LIBCABI=${LIBC}x32 ;; esac fi GUESS=$CPU-pc-linux-$LIBCABI ;; xtensa*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. GUESS=i386-sequent-sysv4 ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION ;; i*86:OS/2:*:*) # If we were able to find 'uname', then EMX Unix compatibility # is probably installed. GUESS=$UNAME_MACHINE-pc-os2-emx ;; i*86:XTS-300:*:STOP) GUESS=$UNAME_MACHINE-unknown-stop ;; i*86:atheos:*:*) GUESS=$UNAME_MACHINE-unknown-atheos ;; i*86:syllable:*:*) GUESS=$UNAME_MACHINE-pc-syllable ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) GUESS=i386-unknown-lynxos$UNAME_RELEASE ;; i*86:*DOS:*:*) GUESS=$UNAME_MACHINE-pc-msdosdjgpp ;; i*86:*:4.*:*) UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL else GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL fi ;; i*86:*:5:[678]*) # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL else GUESS=$UNAME_MACHINE-pc-sysv32 fi ;; pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i586. # Note: whatever this is, it MUST be the same as what config.sub # prints for the "djgpp" host, or else GDB configure will decide that # this is a cross-build. GUESS=i586-pc-msdosdjgpp ;; Intel:Mach:3*:*) GUESS=i386-pc-mach3 ;; paragon:*:*:*) GUESS=i860-intel-osf1 ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then GUESS=i860-stardent-sysv$UNAME_RELEASE # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. GUESS=i860-unknown-sysv$UNAME_RELEASE # Unknown i860-SVR4 fi ;; mini*:CTIX:SYS*5:*) # "miniframe" GUESS=m68010-convergent-sysv ;; mc68k:UNIX:SYSTEM5:3.51m) GUESS=m68k-convergent-sysv ;; M680?0:D-NIX:5.3:*) GUESS=m68k-diab-dnix ;; M68*:*:R3V[5678]*:*) test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; NCR*:*:4.2:* | MPRAS*:*:4.2:*) OS_REL='.3' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) GUESS=m68k-unknown-lynxos$UNAME_RELEASE ;; mc68030:UNIX_System_V:4.*:*) GUESS=m68k-atari-sysv4 ;; TSUNAMI:LynxOS:2.*:*) GUESS=sparc-unknown-lynxos$UNAME_RELEASE ;; rs6000:LynxOS:2.*:*) GUESS=rs6000-unknown-lynxos$UNAME_RELEASE ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) GUESS=powerpc-unknown-lynxos$UNAME_RELEASE ;; SM[BE]S:UNIX_SV:*:*) GUESS=mips-dde-sysv$UNAME_RELEASE ;; RM*:ReliantUNIX-*:*:*) GUESS=mips-sni-sysv4 ;; RM*:SINIX-*:*:*) GUESS=mips-sni-sysv4 ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` GUESS=$UNAME_MACHINE-sni-sysv4 else GUESS=ns32k-sni-sysv fi ;; PENTIUM:*:4.0*:*) # Unisys 'ClearPath HMP IX 4000' SVR4/MP effort # says GUESS=i586-unisys-sysv4 ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm GUESS=hppa1.1-stratus-sysv4 ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. GUESS=i860-stratus-sysv4 ;; i*86:VOS:*:*) # From Paul.Green@stratus.com. GUESS=$UNAME_MACHINE-stratus-vos ;; *:VOS:*:*) # From Paul.Green@stratus.com. GUESS=hppa1.1-stratus-vos ;; mc68*:A/UX:*:*) GUESS=m68k-apple-aux$UNAME_RELEASE ;; news*:NEWS-OS:6*:*) GUESS=mips-sony-newsos6 ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if test -d /usr/nec; then GUESS=mips-nec-sysv$UNAME_RELEASE else GUESS=mips-unknown-sysv$UNAME_RELEASE fi ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. GUESS=powerpc-be-beos ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. GUESS=powerpc-apple-beos ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. GUESS=i586-pc-beos ;; BePC:Haiku:*:*) # Haiku running on Intel PC compatible. GUESS=i586-pc-haiku ;; ppc:Haiku:*:*) # Haiku running on Apple PowerPC GUESS=powerpc-apple-haiku ;; *:Haiku:*:*) # Haiku modern gcc (not bound by BeOS compat) GUESS=$UNAME_MACHINE-unknown-haiku ;; SX-4:SUPER-UX:*:*) GUESS=sx4-nec-superux$UNAME_RELEASE ;; SX-5:SUPER-UX:*:*) GUESS=sx5-nec-superux$UNAME_RELEASE ;; SX-6:SUPER-UX:*:*) GUESS=sx6-nec-superux$UNAME_RELEASE ;; SX-7:SUPER-UX:*:*) GUESS=sx7-nec-superux$UNAME_RELEASE ;; SX-8:SUPER-UX:*:*) GUESS=sx8-nec-superux$UNAME_RELEASE ;; SX-8R:SUPER-UX:*:*) GUESS=sx8r-nec-superux$UNAME_RELEASE ;; SX-ACE:SUPER-UX:*:*) GUESS=sxace-nec-superux$UNAME_RELEASE ;; Power*:Rhapsody:*:*) GUESS=powerpc-apple-rhapsody$UNAME_RELEASE ;; *:Rhapsody:*:*) GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE ;; arm64:Darwin:*:*) GUESS=aarch64-apple-darwin$UNAME_RELEASE ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` case $UNAME_PROCESSOR in unknown) UNAME_PROCESSOR=powerpc ;; esac if command -v xcode-select > /dev/null 2> /dev/null && \ ! xcode-select --print-path > /dev/null 2> /dev/null ; then # Avoid executing cc if there is no toolchain installed as # cc will be a stub that puts up a graphical alert # prompting the user to install developer tools. CC_FOR_BUILD=no_compiler_found else set_cc_for_build fi if test "$CC_FOR_BUILD" != no_compiler_found; then if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then case $UNAME_PROCESSOR in i386) UNAME_PROCESSOR=x86_64 ;; powerpc) UNAME_PROCESSOR=powerpc64 ;; esac fi # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_PPC >/dev/null then UNAME_PROCESSOR=powerpc fi elif test "$UNAME_PROCESSOR" = i386 ; then # uname -m returns i386 or x86_64 UNAME_PROCESSOR=$UNAME_MACHINE fi GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = x86; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE ;; *:QNX:*:4*) GUESS=i386-pc-qnx ;; NEO-*:NONSTOP_KERNEL:*:*) GUESS=neo-tandem-nsk$UNAME_RELEASE ;; NSE-*:NONSTOP_KERNEL:*:*) GUESS=nse-tandem-nsk$UNAME_RELEASE ;; NSR-*:NONSTOP_KERNEL:*:*) GUESS=nsr-tandem-nsk$UNAME_RELEASE ;; NSV-*:NONSTOP_KERNEL:*:*) GUESS=nsv-tandem-nsk$UNAME_RELEASE ;; NSX-*:NONSTOP_KERNEL:*:*) GUESS=nsx-tandem-nsk$UNAME_RELEASE ;; *:NonStop-UX:*:*) GUESS=mips-compaq-nonstopux ;; BS2000:POSIX*:*:*) GUESS=bs2000-siemens-sysv ;; DS/*:UNIX_System_V:*:*) GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. if test "${cputype-}" = 386; then UNAME_MACHINE=i386 elif test "x${cputype-}" != x; then UNAME_MACHINE=$cputype fi GUESS=$UNAME_MACHINE-unknown-plan9 ;; *:TOPS-10:*:*) GUESS=pdp10-unknown-tops10 ;; *:TENEX:*:*) GUESS=pdp10-unknown-tenex ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) GUESS=pdp10-dec-tops20 ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) GUESS=pdp10-xkl-tops20 ;; *:TOPS-20:*:*) GUESS=pdp10-unknown-tops20 ;; *:ITS:*:*) GUESS=pdp10-unknown-its ;; SEI:*:*:SEIUX) GUESS=mips-sei-seiux$UNAME_RELEASE ;; *:DragonFly:*:*) DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` case $UNAME_MACHINE in A*) GUESS=alpha-dec-vms ;; I*) GUESS=ia64-dec-vms ;; V*) GUESS=vax-dec-vms ;; esac ;; *:XENIX:*:SysV) GUESS=i386-pc-xenix ;; i*86:skyos:*:*) SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'` GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL ;; i*86:rdos:*:*) GUESS=$UNAME_MACHINE-pc-rdos ;; i*86:Fiwix:*:*) GUESS=$UNAME_MACHINE-pc-fiwix ;; *:AROS:*:*) GUESS=$UNAME_MACHINE-unknown-aros ;; x86_64:VMkernel:*:*) GUESS=$UNAME_MACHINE-unknown-esx ;; amd64:Isilon\ OneFS:*:*) GUESS=x86_64-unknown-onefs ;; *:Unleashed:*:*) GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE ;; x86_64:[Ii]ronclad:*:*|i?86:[Ii]ronclad:*:*) GUESS=$UNAME_MACHINE-pc-ironclad-mlibc ;; *:[Ii]ronclad:*:*) GUESS=$UNAME_MACHINE-unknown-ironclad-mlibc ;; esac # Do we have a guess based on uname results? if test "x$GUESS" != x; then echo "$GUESS" exit fi # No uname command or uname output not recognized. set_cc_for_build cat > "$dummy.c" < #include #endif #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) #if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) #include #if defined(_SIZE_T_) || defined(SIGLOST) #include #endif #endif #endif int main () { #if defined (sony) #if defined (MIPSEB) /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, I don't know.... */ printf ("mips-sony-bsd\n"); exit (0); #else #include printf ("m68k-sony-newsos%s\n", #ifdef NEWSOS4 "4" #else "" #endif ); exit (0); #endif #endif #if defined (NeXT) #if !defined (__ARCHITECTURE__) #define __ARCHITECTURE__ "m68k" #endif int version; version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; if (version < 4) printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); else printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); exit (0); #endif #if defined (MULTIMAX) || defined (n16) #if defined (UMAXV) printf ("ns32k-encore-sysv\n"); exit (0); #else #if defined (CMU) printf ("ns32k-encore-mach\n"); exit (0); #else printf ("ns32k-encore-bsd\n"); exit (0); #endif #endif #endif #if defined (__386BSD__) printf ("i386-pc-bsd\n"); exit (0); #endif #if defined (sequent) #if defined (i386) printf ("i386-sequent-dynix\n"); exit (0); #endif #if defined (ns32000) printf ("ns32k-sequent-dynix\n"); exit (0); #endif #endif #if defined (_SEQUENT_) struct utsname un; uname(&un); if (strncmp(un.version, "V2", 2) == 0) { printf ("i386-sequent-ptx2\n"); exit (0); } if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ printf ("i386-sequent-ptx1\n"); exit (0); } printf ("i386-sequent-ptx\n"); exit (0); #endif #if defined (vax) #if !defined (ultrix) #include #if defined (BSD) #if BSD == 43 printf ("vax-dec-bsd4.3\n"); exit (0); #else #if BSD == 199006 printf ("vax-dec-bsd4.3reno\n"); exit (0); #else printf ("vax-dec-bsd\n"); exit (0); #endif #endif #else printf ("vax-dec-bsd\n"); exit (0); #endif #else #if defined(_SIZE_T_) || defined(SIGLOST) struct utsname un; uname (&un); printf ("vax-dec-ultrix%s\n", un.release); exit (0); #else printf ("vax-dec-ultrix\n"); exit (0); #endif #endif #endif #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) #if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) #if defined(_SIZE_T_) || defined(SIGLOST) struct utsname *un; uname (&un); printf ("mips-dec-ultrix%s\n", un.release); exit (0); #else printf ("mips-dec-ultrix\n"); exit (0); #endif #endif #endif #if defined (alliant) && defined (i860) printf ("i860-alliant-bsd\n"); exit (0); #endif exit (1); } EOF $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` && { echo "$SYSTEM_NAME"; exit; } # Apollos put the system type in the environment. test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; } echo "$0: unable to guess system type" >&2 case $UNAME_MACHINE:$UNAME_SYSTEM in mips:Linux | mips64:Linux) # If we got here on MIPS GNU/Linux, output extra information. cat >&2 <&2 <&2 </dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` /bin/uname -X = `(/bin/uname -X) 2>/dev/null` hostinfo = `(hostinfo) 2>/dev/null` /bin/universe = `(/bin/universe) 2>/dev/null` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` /bin/arch = `(/bin/arch) 2>/dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` UNAME_MACHINE = "$UNAME_MACHINE" UNAME_RELEASE = "$UNAME_RELEASE" UNAME_SYSTEM = "$UNAME_SYSTEM" UNAME_VERSION = "$UNAME_VERSION" EOF fi exit 1 # Local variables: # eval: (add-hook 'before-save-hook 'time-stamp nil t) # time-stamp-start: "timestamp='" # time-stamp-format: "%Y-%02m-%02d" # time-stamp-end: "'" # End: nigels-com-glew-285c35d/config/Makefile.msys-win640000664000175000017500000000014515135005167022075 0ustar alastairalastairinclude config/Makefile.msys POPT := -mtune=generic -O2 CFLAGS.EXTRA += -m64 LDFLAGS.EXTRA += -m64 nigels-com-glew-285c35d/config/Makefile.freebsd0000664000175000017500000000074115135005167021551 0ustar alastairalastair# As of FreeBSD12 X11 is in /usr/local NAME = $(GLEW_NAME) CC = cc LD = ld LDFLAGS.EXTRA = -L/usr/local/lib LDFLAGS.GL = -lGL -lX11 LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic CFLAGS.EXTRA += -I/usr/local/include -fPIC NAME = GLEW WARN = -Wall -W POPT = -O2 BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -soname $(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.darwin-ppc0000664000175000017500000000161215135005167022201 0ustar alastairalastair# Note: Mac PPC is obsolete but the configuration # is here for reference. GLEW_DEST = /usr/local NAME = $(GLEW_NAME) CC = cc LD = cc CFLAGS.EXTRA += -arch ppc CFLAGS.EXTRA += -dynamic -fno-common CFLAGS.EXTRA += -pedantic CFLAGS.EXTRA += -fPIC LDFLAGS.EXTRA = -arch ppc ifneq (undefined, $(origin GLEW_APPLE_GLX)) CFLAGS.EXTRA += -std=c99 CFLAGS.EXTRA += -I/usr/X11R6/include -D'GLEW_APPLE_GLX' LDFLAGS.GL = -L/usr/X11R6/lib -lGL -lX11 else CFLAGS.EXTRA += -std=c89 GLEW_NO_GLU = -DGLEW_NO_GLU LDFLAGS.GL = -framework OpenGL endif LDFLAGS.STATIC = LDFLAGS.DYNAMIC = WARN = -Wall -W POPT = -Os BIN.SUFFIX = LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) nigels-com-glew-285c35d/config/Makefile.irix0000664000175000017500000000061715135005167021114 0ustar alastairalastairNAME = $(GLEW_NAME) CC = cc LD = ld ABI = -64# -n32 CC += $(ABI) LD += $(ABI) LDFLAGS.EXTRA = LDFLAGS.GL = -lGL -lXext -lX11 NAME = GLEW WARN = -fullwarn -woff 1110,1498 POPT = -O2 -OPT:Olimit=0 BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -soname $(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.darwin0000664000175000017500000000142515135005167021423 0ustar alastairalastairGLEW_DEST = /usr/local NAME = $(GLEW_NAME) CC = cc LD = cc CFLAGS.EXTRA += -dynamic -fno-common CFLAGS.EXTRA += -pedantic CFLAGS.EXTRA += -fPIC LDFLAGS.EXTRA = ifneq (undefined, $(origin GLEW_APPLE_GLX)) CFLAGS.EXTRA += -std=c99 CFLAGS.EXTRA += -I/usr/X11R6/include -D'GLEW_APPLE_GLX' LDFLAGS.GL = -L/usr/X11R6/lib -lGL -lX11 else CFLAGS.EXTRA += -std=c89 GLEW_NO_GLU = -DGLEW_NO_GLU LDFLAGS.GL = -framework OpenGL endif LDFLAGS.STATIC = LDFLAGS.DYNAMIC = WARN = -Wall -W POPT = -Os BIN.SUFFIX = LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) nigels-com-glew-285c35d/config/Makefile.solaris-gcc0000664000175000017500000000060315135005167022342 0ustar alastairalastairNAME = $(GLEW_NAME) CC = gcc LD = ld CFLAGS.EXTRA = -I/usr/openwin/include -fPIC LDFLAGS.SO = -G LDFLAGS.EXTRA = -L/usr/openwin/lib LDFLAGS.GL = -lGL -lX11 NAME = GLEW BIN.SUFFIX = POPT = -O2 LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.cygwin0000664000175000017500000000104515135005167021435 0ustar alastairalastairNAME = GLEW GLEW_DEST ?= /usr # use gcc for linking, with ld it does not work CC := cc LD := cc LN := CFLAGS.EXTRA += -D_WIN32 LDFLAGS.EXTRA = LIBDIR = $(GLEW_DEST)/lib LDFLAGS.GL = -lOpenGL32 -mwindows LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic WARN = -Wall -W POPT = -O2 BIN.SUFFIX = .exe LIB.SONAME = cyg$(NAME)-$(GLEW_MAJOR)-$(GLEW_MINOR).dll LIB.DEVLNK = lib$(NAME).dll.a LIB.SHARED = cyg$(NAME)-$(GLEW_MAJOR)-$(GLEW_MINOR).dll LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -Wl,--out-implib,lib/$(LIB.DEVLNK) nigels-com-glew-285c35d/config/Makefile.linux-clang-egl0000664000175000017500000000013015135005167023115 0ustar alastairalastairinclude config/Makefile.linux-clang LDFLAGS.GL = -lEGL -lGL CFLAGS.EXTRA += -DGLEW_EGL nigels-com-glew-285c35d/config/Makefile.linux-osmesa0000664000175000017500000000015315135005167022560 0ustar alastairalastairinclude config/Makefile.linux LDFLAGS.GL = -lOSMesa CFLAGS.EXTRA += -DGLEW_OSMESA -Wno-cast-function-type nigels-com-glew-285c35d/config/Makefile.gnu0000664000175000017500000000065015135005167020727 0ustar alastairalastairNAME = $(GLEW_NAME) CC = cc LD = cc LDFLAGS.EXTRA = -L/usr/X11R6/lib LDFLAGS.GL = -lGL -lX11 LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic NAME = GLEW WARN = -Wall -W POPT = -O2 CFLAGS.EXTRA += -fPIC BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.netbsd0000664000175000017500000000071415135005167021416 0ustar alastairalastairNAME = $(GLEW_NAME) CC = cc LD = ld LDFLAGS.EXTRA = -L/usr/X11R7/lib -R /usr/X11R7/lib LDFLAGS.GL = -lGL -lX11 LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic CFLAGS.EXTRA += -I/usr/X11R7/include -fPIC NAME = GLEW WARN = -Wall -W POPT = -O2 BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -soname $(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.darwin-x86_640000664000175000017500000000147715135005167022366 0ustar alastairalastairGLEW_DEST = /usr/local NAME = $(GLEW_NAME) CC = cc LD = cc CFLAGS.EXTRA += -arch x86_64 CFLAGS.EXTRA += -dynamic -fno-common CFLAGS.EXTRA += -pedantic CFLAGS.EXTRA += -fPIC LDFLAGS.EXTRA = -arch x86_64 ifneq (undefined, $(origin GLEW_APPLE_GLX)) CFLAGS.EXTRA += -std=c99 CFLAGS.EXTRA += -I/usr/X11R6/include -D'GLEW_APPLE_GLX' LDFLAGS.GL = -L/usr/X11R6/lib -lGL -lX11 else CFLAGS.EXTRA += -std=c89 GLEW_NO_GLU = -DGLEW_NO_GLU LDFLAGS.GL = -framework OpenGL endif LDFLAGS.STATIC = LDFLAGS.DYNAMIC = WARN = -Wall -W POPT = -Os BIN.SUFFIX = LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) nigels-com-glew-285c35d/config/Makefile.openbsd0000664000175000017500000000067515135005167021577 0ustar alastairalastairNAME = $(GLEW_NAME) CC = cc LD = ld LDFLAGS.EXTRA = -L/usr/X11R6/lib LDFLAGS.GL = -lGLU -lGL -lX11 -lm LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic CFLAGS.EXTRA += -I/usr/X11R6/include NAME = GLEW WARN = -Wall -W POPT = -O2 BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -soname $(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.msys0000664000175000017500000000120215135005167021123 0ustar alastairalastairNAME = glew32 # use gcc for linking, with ld it does not work CC := gcc LD := gcc LN := CFLAGS.EXTRA += -D_WIN32 LDFLAGS.GL = -lopengl32 -lgdi32 -luser32 -lkernel32 LDFLAGS.EXTRA = CFLAGS.EXTRA += -fno-builtin -fno-stack-protector LIBDIR = $(GLEW_DEST)/bin WARN += -Wall -W WARN += -Wno-cast-function-type POPT = -O2 BIN.SUFFIX = .exe LIB.SONAME = lib$(NAME).dll LIB.DEVLNK = lib$(NAME).dll.a # for mingw this is the dll import lib LIB.SHARED = $(NAME).dll LIB.SHARED.DIR = bin LIB.STATIC = lib$(NAME).a # the static lib will be broken LDFLAGS.SO = -shared -Wl,-soname,$(LIB.SONAME) -Wl,--out-implib,lib/$(LIB.DEVLNK) nigels-com-glew-285c35d/config/Makefile.mingw0000664000175000017500000000111615135005167021255 0ustar alastairalastairNAME = glew32 # use gcc for linking, with ld it does not work CC := gcc -fno-builtin LD := gcc LN := LDFLAGS.GL = -lopengl32 -lgdi32 -luser32 -lkernel32 LDFLAGS.EXTRA = -L/mingw/lib CFLAGS.EXTRA += -fno-builtin -fno-stack-protector LDFLAGS.EXTRA += -nostdlib WARN = -Wall -W POPT = -O2 BIN.SUFFIX = .exe LIB.SONAME = lib$(NAME).dll LIB.DEVLNK = lib$(NAME).dll.a # for mingw this is the dll import lib LIB.SHARED = $(NAME).dll LIB.STATIC = lib$(NAME).a # the static lib will be broken LDFLAGS.SO = -shared -Wl,-soname,$(LIB.SONAME) -Wl,--out-implib,lib/$(LIB.DEVLNK) nigels-com-glew-285c35d/config/Makefile.kfreebsd0000664000175000017500000000065015135005167021723 0ustar alastairalastairNAME = $(GLEW_NAME) CC = cc LD = cc LDFLAGS.EXTRA = -L/usr/X11R6/lib LDFLAGS.GL = -lGL -lX11 LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic NAME = GLEW WARN = -Wall -W POPT = -O2 CFLAGS.EXTRA += -fPIC BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -Wl,-soname $(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.darwin-gcc60000664000175000017500000000170015135005167022237 0ustar alastairalastair# For building with Brew gcc: # $ brew install gcc GLEW_DEST = /usr/local NAME = $(GLEW_NAME) CC = gcc-6 LD = gcc-6 CFLAGS.EXTRA += -dynamic -fno-common CFLAGS.EXTRA += -fPIC # Lots of warnings with -pedantic # warning: ISO C forbids conversion of object pointer to function pointer type #CFLAGS.EXTRA += -pedantic LDFLAGS.EXTRA = ifneq (undefined, $(origin GLEW_APPLE_GLX)) CFLAGS.EXTRA += -std=c99 CFLAGS.EXTRA += -I/usr/X11R6/include -D'GLEW_APPLE_GLX' LDFLAGS.GL = -L/usr/X11R6/lib -lGL -lX11 else CFLAGS.EXTRA += -std=c89 GLEW_NO_GLU = -DGLEW_NO_GLU LDFLAGS.GL = -framework OpenGL endif LDFLAGS.STATIC = LDFLAGS.DYNAMIC = WARN = -Wall -W POPT = -Os BIN.SUFFIX = LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) nigels-com-glew-285c35d/config/Makefile.darwin-universal0000664000175000017500000000167315135005167023436 0ustar alastairalastair# # Needs to be clang toolchain for universal: -arch x86_64 -arch arm64 # GLEW_DEST = /usr/local NAME = $(GLEW_NAME) CC = cc LD = cc AR = LIBTOOL = libtool -static -o STRIP = CFLAGS.EXTRA = -dynamic -fno-common CFLAGS.EXTRA += -pedantic CFLAGS.EXTRA += -fPIC CFLAGS.EXTRA += -arch x86_64 -arch arm64 LDFLAGS.EXTRA = -arch x86_64 -arch arm64 ifneq (undefined, $(origin GLEW_APPLE_GLX)) CFLAGS.EXTRA += -std=c99 CFLAGS.EXTRA += -I/usr/X11R6/include -D'GLEW_APPLE_GLX' LDFLAGS.GL = -L/usr/X11R6/lib -lGL -lX11 else CFLAGS.EXTRA += -std=c89 GLEW_NO_GLU = -DGLEW_NO_GLU LDFLAGS.GL = -framework OpenGL endif LDFLAGS.DYNAMIC = WARN = -Wall -W POPT = -Os BIN.SUFFIX = LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) nigels-com-glew-285c35d/config/Makefile.haiku0000664000175000017500000000054115135005167021236 0ustar alastairalastairNAME = $(GLEW_NAME) CC = cc LD = cc LDFLAGS.GL = -lGL LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic NAME = GLEW WARN = -Wall -W POPT = -O2 BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.msys-win320000664000175000017500000000016115135005167022066 0ustar alastairalastairinclude config/Makefile.msys POPT := -march=i686 -mtune=generic -O2 CFLAGS.EXTRA += -m32 LDFLAGS.EXTRA += -m32 nigels-com-glew-285c35d/config/Makefile.nacl-320000664000175000017500000000124115135005167021272 0ustar alastairalastairNAME = $(REGAL_NAME) M_PREFIX = i686 M_NAME ?= $(shell uname -s) ifeq (Linux,${M_NAME}) M_PREFIX = i686 endif CC = $(M_PREFIX)-nacl-gcc CXX = $(M_PREFIX)-nacl-g++ LD = $(M_PREFIX)-nacl-ld STRIP ?= EXT.DYNAMIC = so LDFLAGS.EXTRA = LIBDIR = CFLAGS.EXTRA += -fPIC CFLAGS.EXTRA += -m32 LDFLAGS.EXTRA += -melf_nacl LDFLAGS.GL = LDFLAGS.GLU = -lRegalGLU LDFLAGS.GLUT = -lRegalGLUT LDFLAGS.STATIC = LDFLAGS.DYNAMIC = -shared WARN = -Wall -W -Wno-unused-parameter POPT = -O2 BIN.SUFFIX = LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a LDFLAGS.SO = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME) nigels-com-glew-285c35d/config/Makefile.fedora-mingw320000664000175000017500000000053615135005167022665 0ustar alastairalastair# For cross-compiling from Linux to Windows x86 using mingw32 # http://www.mingw.org/ # # $ make SYSTEM=fedora-mingw32 include config/Makefile.linux-mingw32 CC := i686-pc-mingw32-gcc LD := i686-pc-mingw32-ld LDFLAGS.GL += -L/usr/i686-pc-mingw32/sys-root/mingw/lib CFLAGS.EXTRA += -fno-builtin -fno-stack-protector LDFLAGS.EXTRA += -nostdlib nigels-com-glew-285c35d/config/Makefile.linux-mingw640000664000175000017500000000143115135005167022564 0ustar alastairalastair# For cross-compiling from Linux to Windows 64-bit using mingw64 # http://mingw-w64.org/ # # Ubuntu/Debian: # $ sudo apt install mingw-w64 # $ make SYSTEM=linux-mingw64 NAME := glew32 HOST := x86_64-w64-mingw32 GLEW_DEST ?= /usr/local/$(HOST) CC := $(HOST)-gcc LD := $(HOST)-ld LN := STRIP := LDFLAGS.GL = -L/usr/$(HOST)/lib -lopengl32 -lgdi32 -luser32 -lkernel32 CFLAGS.EXTRA += -fno-builtin -fno-stack-protector -Wno-cast-function-type WARN = -Wall -W POPT = -O2 BIN.SUFFIX = .exe LIB.SONAME = lib$(NAME).dll LIB.DEVLNK = lib$(NAME).dll.a # for mingw this is the dll import lib LIB.SHARED = $(NAME).dll LIB.STATIC = lib$(NAME).a # the static lib will be broken LDFLAGS.SO = -nostdlib -shared -soname $(LIB.SONAME) --out-implib lib/$(LIB.DEVLNK) nigels-com-glew-285c35d/config/Makefile.cygwin-x110000664000175000017500000000100215135005167022035 0ustar alastairalastairNAME = GLEW GLEW_DEST ?= /usr # use gcc for linking, with ld it does not work CC := cc LD := cc LN := LDFLAGS.EXTRA = LIBDIR = $(GLEW_DEST)/lib LDFLAGS.GL = -lGL -lX11 LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic WARN = -Wall -W POPT = -O2 BIN.SUFFIX = .exe LIB.SONAME = cyg$(NAME)-$(GLEW_MAJOR)-$(GLEW_MINOR).dll LIB.DEVLNK = lib$(NAME).dll.a LIB.SHARED = cyg$(NAME)-$(GLEW_MAJOR)-$(GLEW_MINOR).dll LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -shared -Wl,--out-implib,lib/$(LIB.DEVLNK)