apple: Dead code removal

Now that we're using glapi, all of this is no longer needed.

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
This commit is contained in:
Jeremy Huddleston 2011-06-07 19:35:09 -07:00
parent e157f381f2
commit 3871e74733
25 changed files with 1 additions and 52228 deletions

View file

@ -367,15 +367,7 @@ GALLIUM_FILES = \
APPLE_DRI_FILES = \
$(DIRECTORY)/src/glx/apple/Makefile \
$(DIRECTORY)/src/glx/apple/*.[ch] \
$(DIRECTORY)/src/glx/apple/*.tcl \
$(DIRECTORY)/src/glx/apple/apple_exports.list \
$(DIRECTORY)/src/glx/apple/GL_aliases \
$(DIRECTORY)/src/glx/apple/GL_extensions \
$(DIRECTORY)/src/glx/apple/GL_noop \
$(DIRECTORY)/src/glx/apple/GL_promoted \
$(DIRECTORY)/src/glx/apple/specs/*.spec \
$(DIRECTORY)/src/glx/apple/specs/*.tm
$(DIRECTORY)/src/glx/apple/*.[ch]
DRI_FILES = \
$(DIRECTORY)/include/GL/internal/dri_interface.h \

View file

@ -1,3 +0,0 @@
exports.list
stage.[1234]

View file

@ -1,10 +0,0 @@
#GL_EXT_texture_object
alias AreTexturesResidentEXT AreTexturesResident
alias BindTextureEXT BindTexture
alias DeleteTexturesEXT DeleteTextures
alias GenTexturesEXT GenTextures
alias IsTextureEXT IsTexture
alias PrioritizeTexturesEXT PrioritizeTextures
# Due to type conflicts, we handle this differently
#alias TexImage3DEXT TexImage3D

View file

@ -1,106 +0,0 @@
extension ARB_transpose_matrix
extension ARB_vertex_program
extension ARB_vertex_blend
extension ARB_window_pos
extension ARB_shader_objects
extension ARB_vertex_shader
extension ARB_shading_language_100
extension ARB_imaging
extension ARB_point_parameters
extension ARB_texture_env_crossbar
extension ARB_texture_border_clamp
extension ARB_multitexture
extension ARB_texture_env_add
extension ARB_texture_cube_map
extension ARB_texture_env_dot3
extension ARB_multisample
extension ARB_texture_env_combine
extension ARB_texture_compression
extension ARB_texture_mirrored_repeat
extension ARB_shadow
extension ARB_depth_texture
extension ARB_shadow_ambient
extension ARB_fragment_program
extension ARB_fragment_program_shadow
extension ARB_fragment_shader
extension ARB_occlusion_query
extension ARB_point_sprite
extension ARB_texture_non_power_of_two
extension ARB_vertex_buffer_object
extension ARB_pixel_buffer_object
extension ARB_draw_buffers
extension ARB_shader_texture_lod
extension ARB_texture_rectangle
extension ARB_texture_float
extension ARB_half_float_pixel
extension EXT_multi_draw_arrays
extension EXT_clip_volume_hint
extension EXT_rescale_normal
extension EXT_draw_range_elements
extension EXT_fog_coord
extension EXT_gpu_program_parameters
extension EXT_geometry_shader4
#The gl.spec has the wrong arguments for GetTransformFeedbackVaryingEXT
#extension EXT_transform_feedback
extension EXT_compiled_vertex_array
extension EXT_framebuffer_object
extension EXT_framebuffer_blit
extension EXT_framebuffer_multisample
extension EXT_texture_rectangle
extension EXT_texture_env_add
extension EXT_blend_color
extension EXT_blend_minmax
extension EXT_blend_subtract
extension EXT_texture_lod_bias
extension EXT_abgr
extension EXT_bgra
extension EXT_stencil_wrap
extension EXT_texture_filter_anisotropic
extension EXT_separate_specular_color
extension EXT_secondary_color
extension EXT_blend_func_separate
extension EXT_shadow_funcs
extension EXT_stencil_two_side
extension EXT_texture_compression_s3tc
extension EXT_texture_compression_dxt1
extension EXT_texture_sRGB
extension EXT_blend_equation_separate
extension EXT_texture_mirror_clamp
extension EXT_packed_depth_stencil
extension APPLE_client_storage
extension APPLE_specular_vector
extension APPLE_transform_hint
extension APPLE_packed_pixels
#The gl.spec has different argument types for this:
#extension APPLE_fence
extension APPLE_vertex_array_object
extension APPLE_vertex_program_evaluators
extension APPLE_element_array
extension APPLE_flush_render
extension APPLE_aux_depth_stencil
extension APPLE_flush_buffer_range
extension APPLE_ycbcr_422
#The gl.spec has different argument types for this:
#extension APPLE_vertex_array_range
extension APPLE_texture_range
extension APPLE_float_pixels
extension APPLE_pixel_buffer
extension APPLE_object_purgeable
#The OpenGL framework has moved this to the core OpenGL, and eliminated EXT_convolution listing.
#extension EXT_convolution
#Leopard supports these according to nm.
#Applications should use the GL_EXTENSIONS list to determine capabilities.
extension EXT_paletted_texture
extension APPLE_fence
extension NV_vertex_program4
extension EXT_draw_buffers2
extension EXT_gpu_shader4
extension ATI_pn_triangles
extension NV_register_combiners
extension EXT_depth_bounds_test

View file

@ -1,15 +0,0 @@
#These are for compatibility with the old libGL.
noop SGI_color_table
noop EXT_convolution
noop EXT_cull_vertex
noop NV_fence
noop SGIS_detail_texture
noop SGIX_fragment_lighting
noop SGIX_flush_raster
noop EXT_vertex_array
noop SGIX_instruments
noop EXT_histogram
noop NV_vertex_program
noop PGI_misc_hints
noop SGIS_multisample
noop EXT_multisample

View file

@ -1,4 +0,0 @@
promoted MESA_window_pos
promoted ARB_window_pos
promoted EXT_copy_texture
promoted ARB_vertex_program

View file

@ -1,18 +0,0 @@
A lot of the code is automatically generated.
The following are generated based on specs/gl.spec and specs/enum.spec (from OpenGL.org):
apple_xgl_api.h
apple_xgl_api.c
exports.list
include/GL/gl.h
include/GL/glext.h (includes the OpenGL framework glext.h)
The gen_code.tcl script is what executes the various gen_*.tcl scripts to produce those.
You will need Tcl 8.5 for the gen_code.tcl script.
The tests/ directory contains some tests that are built in testbuilds.
The tests built in testbuilds don't require installation of the library.

View file

@ -1,8 +0,0 @@
The design of most of this code is such that we extend the GLX structures
with a void * named apple.
The GLX functions that need to do Apple-specific things are passed
&s->apple in order to initialize the private structures.
Thus when updating, just run a diff against glxext.c or glxcmds.c, and
manually merge from there as needed.

View file

@ -1,623 +0,0 @@
_glAccum
_glAlphaFunc
_glAreTexturesResident
_glArrayElement
_glBegin
_glBindTexture
_glBitmap
_glBlendColor
_glBlendEquation
_glBlendEquationSeparate
_glBlendFunc
_glCallList
_glCallLists
_glClear
_glClearAccum
_glClearColor
_glClearDepth
_glClearIndex
_glClearStencil
_glClipPlane
_glColor3b
_glColor3bv
_glColor3d
_glColor3dv
_glColor3f
_glColor3fv
_glColor3i
_glColor3iv
_glColor3s
_glColor3sv
_glColor3ub
_glColor3ubv
_glColor3ui
_glColor3uiv
_glColor3us
_glColor3usv
_glColor4b
_glColor4bv
_glColor4d
_glColor4dv
_glColor4f
_glColor4fv
_glColor4i
_glColor4iv
_glColor4s
_glColor4sv
_glColor4ub
_glColor4ubv
_glColor4ui
_glColor4uiv
_glColor4us
_glColor4usv
_glColorMask
_glColorMaterial
_glColorPointer
_glColorSubTable
_glColorTable
_glColorTableParameterfv
_glColorTableParameteriv
_glConvolutionFilter1D
_glConvolutionFilter2D
_glConvolutionParameterf
_glConvolutionParameterfv
_glConvolutionParameteri
_glConvolutionParameteriv
_glCopyColorSubTable
_glCopyColorTable
_glCopyConvolutionFilter1D
_glCopyConvolutionFilter2D
_glCopyPixels
_glCopyTexImage1D
_glCopyTexImage2D
_glCopyTexSubImage1D
_glCopyTexSubImage2D
_glCopyTexSubImage3D
_glCullFace
_glDeleteLists
_glDeleteTextures
_glDepthFunc
_glDepthMask
_glDepthRange
_glDisable
_glDisableClientState
_glDrawArrays
_glDrawBuffer
_glDrawElements
_glDrawPixels
_glDrawRangeElements
_glEdgeFlag
_glEdgeFlagPointer
_glEdgeFlagv
_glEnable
_glEnableClientState
_glEnd
_glEndList
_glEvalCoord1d
_glEvalCoord1dv
_glEvalCoord1f
_glEvalCoord1fv
_glEvalCoord2d
_glEvalCoord2dv
_glEvalCoord2f
_glEvalCoord2fv
_glEvalMesh1
_glEvalMesh2
_glEvalPoint1
_glEvalPoint2
_glFeedbackBuffer
_glFinish
_glFlush
_glFogf
_glFogfv
_glFogi
_glFogiv
_glFrontFace
_glFrustum
_glGenLists
_glGenTextures
_glGetBooleanv
_glGetClipPlane
_glGetColorTable
_glGetColorTableParameterfv
_glGetColorTableParameteriv
_glGetConvolutionFilter
_glGetConvolutionParameterfv
_glGetConvolutionParameteriv
_glGetDoublev
_glGetError
_glGetFloatv
_glGetHistogram
_glGetHistogramParameterfv
_glGetHistogramParameteriv
_glGetIntegerv
_glGetLightfv
_glGetLightiv
_glGetMapdv
_glGetMapfv
_glGetMapiv
_glGetMaterialfv
_glGetMaterialiv
_glGetMinmax
_glGetMinmaxParameterfv
_glGetMinmaxParameteriv
_glGetPixelMapfv
_glGetPixelMapuiv
_glGetPixelMapusv
_glGetPointerv
_glGetPolygonStipple
_glGetSeparableFilter
_glGetString
_glGetTexEnvfv
_glGetTexEnviv
_glGetTexGendv
_glGetTexGenfv
_glGetTexGeniv
_glGetTexImage
_glGetTexLevelParameterfv
_glGetTexLevelParameteriv
_glGetTexParameterfv
_glGetTexParameteriv
_glHint
_glHistogram
_glIndexMask
_glIndexPointer
_glIndexd
_glIndexdv
_glIndexf
_glIndexfv
_glIndexi
_glIndexiv
_glIndexs
_glIndexsv
_glIndexub
_glIndexubv
_glInitNames
_glInterleavedArrays
_glIsEnabled
_glIsList
_glIsTexture
_glLightModelf
_glLightModelfv
_glLightModeli
_glLightModeliv
_glLightf
_glLightfv
_glLighti
_glLightiv
_glLineStipple
_glLineWidth
_glListBase
_glLoadIdentity
_glLoadMatrixd
_glLoadMatrixf
_glLoadName
_glLogicOp
_glMap1d
_glMap1f
_glMap2d
_glMap2f
_glMapGrid1d
_glMapGrid1f
_glMapGrid2d
_glMapGrid2f
_glMaterialf
_glMaterialfv
_glMateriali
_glMaterialiv
_glMatrixMode
_glMinmax
_glMultMatrixd
_glMultMatrixf
_glNewList
_glNormal3b
_glNormal3bv
_glNormal3d
_glNormal3dv
_glNormal3f
_glNormal3fv
_glNormal3i
_glNormal3iv
_glNormal3s
_glNormal3sv
_glNormalPointer
_glOrtho
_glPassThrough
_glPixelMapfv
_glPixelMapuiv
_glPixelMapusv
_glPixelStoref
_glPixelStorei
_glPixelTransferf
_glPixelTransferi
_glPixelZoom
_glPointSize
_glPolygonMode
_glPolygonOffset
_glPolygonStipple
_glPopAttrib
_glPopClientAttrib
_glPopMatrix
_glPopName
_glPrioritizeTextures
_glPushAttrib
_glPushClientAttrib
_glPushMatrix
_glPushName
_glRasterPos2d
_glRasterPos2dv
_glRasterPos2f
_glRasterPos2fv
_glRasterPos2i
_glRasterPos2iv
_glRasterPos2s
_glRasterPos2sv
_glRasterPos3d
_glRasterPos3dv
_glRasterPos3f
_glRasterPos3fv
_glRasterPos3i
_glRasterPos3iv
_glRasterPos3s
_glRasterPos3sv
_glRasterPos4d
_glRasterPos4dv
_glRasterPos4f
_glRasterPos4fv
_glRasterPos4i
_glRasterPos4iv
_glRasterPos4s
_glRasterPos4sv
_glReadBuffer
_glReadPixels
_glRectd
_glRectdv
_glRectf
_glRectfv
_glRecti
_glRectiv
_glRects
_glRectsv
_glRenderMode
_glResetHistogram
_glResetMinmax
_glRotated
_glRotatef
_glScaled
_glScalef
_glScissor
_glSelectBuffer
_glSeparableFilter2D
_glShadeModel
_glStencilFunc
_glStencilMask
_glStencilOp
_glTexCoord1d
_glTexCoord1dv
_glTexCoord1f
_glTexCoord1fv
_glTexCoord1i
_glTexCoord1iv
_glTexCoord1s
_glTexCoord1sv
_glTexCoord2d
_glTexCoord2dv
_glTexCoord2f
_glTexCoord2fv
_glTexCoord2i
_glTexCoord2iv
_glTexCoord2s
_glTexCoord2sv
_glTexCoord3d
_glTexCoord3dv
_glTexCoord3f
_glTexCoord3fv
_glTexCoord3i
_glTexCoord3iv
_glTexCoord3s
_glTexCoord3sv
_glTexCoord4d
_glTexCoord4dv
_glTexCoord4f
_glTexCoord4fv
_glTexCoord4i
_glTexCoord4iv
_glTexCoord4s
_glTexCoord4sv
_glTexCoordPointer
_glTexEnvf
_glTexEnvfv
_glTexEnvi
_glTexEnviv
_glTexGend
_glTexGendv
_glTexGenf
_glTexGenfv
_glTexGeni
_glTexGeniv
_glTexImage1D
_glTexImage2D
_glTexImage3D
_glTexParameterf
_glTexParameterfv
_glTexParameteri
_glTexParameteriv
_glTexSubImage1D
_glTexSubImage2D
_glTexSubImage3D
_glTranslated
_glTranslatef
_glVertex2d
_glVertex2dv
_glVertex2f
_glVertex2fv
_glVertex2i
_glVertex2iv
_glVertex2s
_glVertex2sv
_glVertex3d
_glVertex3dv
_glVertex3f
_glVertex3fv
_glVertex3i
_glVertex3iv
_glVertex3s
_glVertex3sv
_glVertex4d
_glVertex4dv
_glVertex4f
_glVertex4fv
_glVertex4i
_glVertex4iv
_glVertex4s
_glVertex4sv
_glVertexPointer
_glViewport
_glSampleCoverage
_glSamplePass
_glLoadTransposeMatrixf
_glLoadTransposeMatrixd
_glMultTransposeMatrixf
_glMultTransposeMatrixd
_glCompressedTexImage3D
_glCompressedTexImage2D
_glCompressedTexImage1D
_glCompressedTexSubImage3D
_glCompressedTexSubImage2D
_glCompressedTexSubImage1D
_glGetCompressedTexImage
_glActiveTexture
_glClientActiveTexture
_glMultiTexCoord1d
_glMultiTexCoord1dv
_glMultiTexCoord1f
_glMultiTexCoord1fv
_glMultiTexCoord1i
_glMultiTexCoord1iv
_glMultiTexCoord1s
_glMultiTexCoord1sv
_glMultiTexCoord2d
_glMultiTexCoord2dv
_glMultiTexCoord2f
_glMultiTexCoord2fv
_glMultiTexCoord2i
_glMultiTexCoord2iv
_glMultiTexCoord2s
_glMultiTexCoord2sv
_glMultiTexCoord3d
_glMultiTexCoord3dv
_glMultiTexCoord3f
_glMultiTexCoord3fv
_glMultiTexCoord3i
_glMultiTexCoord3iv
_glMultiTexCoord3s
_glMultiTexCoord3sv
_glMultiTexCoord4d
_glMultiTexCoord4dv
_glMultiTexCoord4f
_glMultiTexCoord4fv
_glMultiTexCoord4i
_glMultiTexCoord4iv
_glMultiTexCoord4s
_glMultiTexCoord4sv
_glFogCoordf
_glFogCoordfv
_glFogCoordd
_glFogCoorddv
_glFogCoordPointer
_glSecondaryColor3b
_glSecondaryColor3bv
_glSecondaryColor3d
_glSecondaryColor3dv
_glSecondaryColor3f
_glSecondaryColor3fv
_glSecondaryColor3i
_glSecondaryColor3iv
_glSecondaryColor3s
_glSecondaryColor3sv
_glSecondaryColor3ub
_glSecondaryColor3ubv
_glSecondaryColor3ui
_glSecondaryColor3uiv
_glSecondaryColor3us
_glSecondaryColor3usv
_glSecondaryColorPointer
_glPointParameterf
_glPointParameterfv
_glPointParameteri
_glPointParameteriv
_glBlendFuncSeparate
_glMultiDrawArrays
_glMultiDrawElements
_glWindowPos2d
_glWindowPos2dv
_glWindowPos2f
_glWindowPos2fv
_glWindowPos2i
_glWindowPos2iv
_glWindowPos2s
_glWindowPos2sv
_glWindowPos3d
_glWindowPos3dv
_glWindowPos3f
_glWindowPos3fv
_glWindowPos3i
_glWindowPos3iv
_glWindowPos3s
_glWindowPos3sv
_glGenQueries
_glDeleteQueries
_glIsQuery
_glBeginQuery
_glEndQuery
_glGetQueryiv
_glGetQueryObjectiv
_glGetQueryObjectuiv
_glBindBuffer
_glDeleteBuffers
_glGenBuffers
_glIsBuffer
_glBufferData
_glBufferSubData
_glGetBufferSubData
_glMapBuffer
_glUnmapBuffer
_glGetBufferParameteriv
_glGetBufferPointerv
_glDrawBuffers
_glVertexAttrib1d
_glVertexAttrib1dv
_glVertexAttrib1f
_glVertexAttrib1fv
_glVertexAttrib1s
_glVertexAttrib1sv
_glVertexAttrib2d
_glVertexAttrib2dv
_glVertexAttrib2f
_glVertexAttrib2fv
_glVertexAttrib2s
_glVertexAttrib2sv
_glVertexAttrib3d
_glVertexAttrib3dv
_glVertexAttrib3f
_glVertexAttrib3fv
_glVertexAttrib3s
_glVertexAttrib3sv
_glVertexAttrib4Nbv
_glVertexAttrib4Niv
_glVertexAttrib4Nsv
_glVertexAttrib4Nub
_glVertexAttrib4Nubv
_glVertexAttrib4Nuiv
_glVertexAttrib4Nusv
_glVertexAttrib4bv
_glVertexAttrib4d
_glVertexAttrib4dv
_glVertexAttrib4f
_glVertexAttrib4fv
_glVertexAttrib4iv
_glVertexAttrib4s
_glVertexAttrib4sv
_glVertexAttrib4ubv
_glVertexAttrib4uiv
_glVertexAttrib4usv
_glVertexAttribPointer
_glEnableVertexAttribArray
_glDisableVertexAttribArray
_glGetVertexAttribdv
_glGetVertexAttribfv
_glGetVertexAttribiv
_glGetVertexAttribPointerv
_glDeleteShader
_glDetachShader
_glCreateShader
_glShaderSource
_glCompileShader
_glCreateProgram
_glAttachShader
_glLinkProgram
_glUseProgram
_glDeleteProgram
_glValidateProgram
_glUniform1f
_glUniform2f
_glUniform3f
_glUniform4f
_glUniform1i
_glUniform2i
_glUniform3i
_glUniform4i
_glUniform1fv
_glUniform2fv
_glUniform3fv
_glUniform4fv
_glUniform1iv
_glUniform2iv
_glUniform3iv
_glUniform4iv
_glUniformMatrix2fv
_glUniformMatrix3fv
_glUniformMatrix4fv
_glIsShader
_glIsProgram
_glGetShaderiv
_glGetProgramiv
_glGetAttachedShaders
_glGetShaderInfoLog
_glGetProgramInfoLog
_glGetUniformLocation
_glGetActiveUniform
_glGetUniformfv
_glGetUniformiv
_glGetShaderSource
_glBindAttribLocation
_glGetActiveAttrib
_glGetAttribLocation
_glStencilFuncSeparate
_glStencilOpSeparate
_glStencilMaskSeparate
_glUniformMatrix2x3fv
_glUniformMatrix3x2fv
_glUniformMatrix2x4fv
_glUniformMatrix4x2fv
_glUniformMatrix3x4fv
_glUniformMatrix4x3fv
_glXChooseVisual
_glXCreateContext
_glXDestroyContext
_glXMakeCurrent
_glXCopyContext
_glXSwapBuffers
_glXCreateGLXPixmap
_glXDestroyGLXPixmap
_glXQueryExtension
_glXQueryVersion
_glXIsDirect
_glXGetConfig
_glXGetCurrentContext
_glXGetCurrentDrawable
_glXWaitGL
_glXWaitX
_glXUseXFont
_glXQueryExtensionsString
_glXQueryServerString
_glXGetClientString
_glXGetCurrentDisplay
_glXChooseFBConfig
_glXGetFBConfigAttrib
_glXGetFBConfigs
_glXGetVisualFromFBConfig
_glXCreateWindow
_glXDestroyWindow
_glXCreatePixmap
_glXDestroyPixmap
_glXCreatePbuffer
_glXDestroyPbuffer
_glXQueryDrawable
_glXCreateNewContext
_glXMakeContextCurrent
_glXGetCurrentReadDrawable
_glXQueryContext
_glXSelectEvent
_glXGetSelectedEvent
_glXGetProcAddress

View file

@ -1,86 +0,0 @@
package require Tcl 8.5
set license {
/*
Copyright (c) 2008, 2009 Apple Inc.
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 THE ABOVE LISTED COPYRIGHT
HOLDER(S) 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.
Except as contained in this notice, the name(s) of the above
copyright holders shall not be used in advertising or otherwise to
promote the sale, use or other dealings in this Software without
prior written authorization.
*/
}
set this_script [info script]
proc main {argc argv} {
if {2 != $argc} {
puts stderr "syntax is: [set ::this_script] serialized-array-file output.h"
return 1
}
set fd [open [lindex $argv 0] r]
array set api [read $fd]
close $fd
set fd [open [lindex $argv 1] w]
puts $fd "/* This file was automatically generated by [set ::this_script]. */"
puts $fd $::license
puts $fd "
#ifndef APPLE_XGL_API_H
#define APPLE_XGL_API_H
"
puts $fd "struct apple_xgl_api \{"
set sorted [lsort -dictionary [array names api]]
foreach f $sorted {
set attr $api($f)
set pstr ""
if {[dict exists $attr alias_for] || [dict exists $attr noop]} {
#Skip this function.
continue
}
foreach p [dict get $attr parameters] {
append pstr "[lindex $p 0] [lindex $p 1], "
}
set pstr [string trimright $pstr ", "]
puts $fd "\t[dict get $attr return] (*[set f])([set pstr]);"
}
puts $fd "\};"
puts $fd "void apple_xgl_init_direct(void);
#endif /*APPLE_XGL_API_H*/
"
return 0
}
exit [main $::argc $::argv]

View file

@ -1,212 +0,0 @@
package require Tcl 8.5
set license {
/*
Copyright (c) 2008, 2009 Apple Inc.
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 THE ABOVE LISTED COPYRIGHT
HOLDER(S) 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.
Except as contained in this notice, the name(s) of the above
copyright holders shall not be used in advertising or otherwise to
promote the sale, use or other dealings in this Software without
prior written authorization.
*/
}
set gl_license {
/*
** License Applicability. Except to the extent portions of this file are
** made subject to an alternative license as permitted in the SGI Free
** Software License B, Version 1.1 (the "License"), the contents of this
** file are subject only to the provisions of the License. You may not use
** this file except in compliance with the License. You may obtain a copy
** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
**
** http://oss.sgi.com/projects/FreeB
**
** Note that, as provided in the License, the Software is distributed on an
** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
**
** Original Code. The Original Code is: OpenGL Sample Implementation,
** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
** Copyright in any portions created by third parties is as indicated
** elsewhere herein. All Rights Reserved.
**
** Additional Notice Provisions: This software was created using the
** OpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has
** not been independently verified as being compliant with the OpenGL(R)
** version 1.2.1 Specification.
*/
}
set init_code {
static void *glsym(void *handle, const char *name) {
void *sym = dlsym(handle, name);
if(NULL == sym) {
fprintf(stderr, "Error: symbol not found: '%s'. "
"Error information: %s\n",
name, dlerror());
abort();
}
return sym;
}
}
set dlopen_code {
#ifndef LIBGLNAME
#define LIBGLNAME "/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib"
#endif LIBGLNAME
(void)dlerror(); /*drain dlerror()*/
handle = dlopen(LIBGLNAME, RTLD_LAZY);
if(NULL == handle) {
fprintf(stderr, "error: unable to dlopen "
LIBGLNAME " :" "%s\n", dlerror());
abort();
}
}
set this_script [info script]
proc main {argc argv} {
if {2 != $argc} {
puts stderr "syntax is: [set ::this_script] serialized-array-file output.c"
return 1
}
set fd [open [lindex $argv 0] r]
array set api [read $fd]
close $fd
set fd [open [lindex $argv 1] w]
puts $fd "/* This file was automatically generated by [set ::this_script]. */"
puts $fd $::license
puts $fd {
#define GL_GLEXT_PROTOTYPES
#include <GL/gl.h>
#include <dlfcn.h>
#include "glxclient.h"
#include "apple_xgl_api.h"
#include "apple_glx_context.h"
}
puts $fd "struct apple_xgl_api __ogl_framework_api;"
set sorted [lsort -dictionary [array names api]]
set exclude [list DrawBuffer DrawBuffers DrawBuffersARB]
#These are special to glXMakeContextCurrent.
#See also: apple_xgl_api_read.c.
lappend exclude ReadPixels CopyPixels CopyColorTable
#This is excluded to work with surface updates.
lappend exclude Viewport
foreach f $sorted {
if {$f in $exclude} {
continue
}
set attr $api($f)
set pstr ""
foreach p [dict get $attr parameters] {
append pstr "[lindex $p 0] [lindex $p 1], "
}
set pstr [string trimright $pstr ", "]
if {![string length $pstr]} {
set pstr void
}
set callvars ""
foreach p [dict get $attr parameters] {
append callvars "[lindex $p end], "
}
set callvars [string trimright $callvars ", "]
set return ""
if {"void" ne [dict get $attr return]} {
set return "return "
}
if {[dict exists $attr noop]} {
if {"void" eq [dict get $attr return]} {
set body "/*noop*/"
} else {
set body "return 0; /*noop*/"
}
} elseif {[dict exists $attr alias_for]} {
set alias [dict get $attr alias_for]
set body "[set return] gl[set alias]([set callvars]);"
} else {
set body "[set return]__ogl_framework_api.[set f]([set callvars]);"
}
puts $fd "GLAPI [dict get $attr return] APIENTRY __apple_gl[set f]([set pstr]) \{\n\t$body\n\}"
}
puts $fd $::init_code
puts $fd "void apple_xgl_init_direct(void) \{"
puts $fd "\tvoid *handle;"
puts $fd $::dlopen_code
foreach f $sorted {
set attr $api($f)
puts $attr
puts $f
if {[dict exists $attr alias_for] || [dict exists $attr noop]} {
#Function f is an alias_for another, so we shouldn't try
#to load it.
continue
}
puts $fd "\t__ogl_framework_api.$f = glsym(handle, \"gl$f\");"
}
puts $fd "\}\n"
close $fd
return 0
}
exit [main $::argc $::argv]

View file

@ -1,50 +0,0 @@
if 0 {
Copyright (c) 2008 Apple Inc.
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 THE ABOVE LISTED COPYRIGHT
HOLDER(S) 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.
Except as contained in this notice, the name(s) of the above
copyright holders shall not be used in advertising or otherwise to
promote the sale, use or other dealings in this Software without
prior written authorization.
}
package require Tcl 8.5
proc main {} {
set tclsh [info nameofexecutable]
puts TYPES
exec $tclsh ./gen_types.tcl stage.1
puts DEFS
exec $tclsh ./gen_defs.tcl specs/enum.spec stage.2
puts FUNCS
exec $tclsh ./gen_funcs.tcl specs/gl.spec stage.3 stage.4
puts HEADER
exec $tclsh ./gen_api_header.tcl stage.4 apple_xgl_api.h
puts "C API"
exec $tclsh ./gen_api_library.tcl stage.4 apple_xgl_api.c
puts "EXPORTS"
exec $tclsh ./gen_exports.tcl stage.4 exports.list
return 0
}
exit [main]

View file

@ -1,67 +0,0 @@
#This parses and generates #defines from an enum.spec type of file.
proc main {argc argv} {
if {2 != $argc} {
puts stderr "syntax is: [info script] input.spec output.h"
exit 1
}
set fd [open [lindex $argv 0] r]
set data [read $fd]
close $fd
set fd [open [lindex $argv 1] w]
set state ""
puts $fd "#define GL_VERSION_1_1 1"
puts $fd "#define GL_VERSION_1_2 1"
puts $fd "#define GL_VERSION_1_3 1"
puts $fd "#define GL_VERSION_1_4 1"
puts $fd "#define GL_VERSION_1_5 1"
puts $fd "#define GL_VERSION_2_0 1"
#puts $fd "#define GL_VERSION_3_0 1"
set mask ""
array set ar {}
foreach line [split $data \n] {
if {[regexp {^\S*#.*} $line] > 0} {
#puts COMMENT:$line
set state ""
} elseif {"enum" eq $state} {
if {[string match "\t*" $line]} {
if {[regexp {^\tuse.*} $line] > 0} {
lassign [split [string trim $line]] use usemask def
set usemask [string trim $usemask]
set def [string trim $def]
puts $fd "/* GL_$def */"
} else {
lassign [split [string trim $line] =] def value
set def [string trim $def]
set value [string trim $value]
#Trim out the data like: 0x0B00 # 4 F
set value [lindex [split $value] 0]
puts $fd "#define GL_$def $value"
#Save this association with the value.
set d $ar($mask)
dict set d $def $value
set ar($mask) $d
}
} else {
set state ""
}
} elseif {[string match "* enum:*" $line]} {
lassign [split $line] mask _
puts $fd "\n/*[string trim $mask]*/"
set ar($mask) [dict create]
set state enum
}
}
close $fd
}
main $::argc $::argv

View file

@ -1,131 +0,0 @@
if 0 {
Copyright (c) 2008, 2009 Apple Inc.
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 THE ABOVE LISTED COPYRIGHT
HOLDER(S) 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.
Except as contained in this notice, the name(s) of the above
copyright holders shall not be used in advertising or otherwise to
promote the sale, use or other dealings in this Software without
prior written authorization.
}
package require Tcl 8.5
proc main {argc argv} {
if {2 != $argc} {
puts stderr "syntax is: [info script] serialized-array-file export.list"
return 1
}
set fd [open [lindex $argv 0] r]
array set api [read $fd]
close $fd
#Start with 1.0
set glxlist [list \
glXChooseVisual glXCreateContext glXDestroyContext \
glXMakeCurrent glXCopyContext glXSwapBuffers \
glXCreateGLXPixmap glXDestroyGLXPixmap \
glXQueryExtension glXQueryVersion \
glXIsDirect glXGetConfig \
glXGetCurrentContext glXGetCurrentDrawable \
glXWaitGL glXWaitX glXUseXFont]
#GLX 1.1 and later
lappend glxlist glXQueryExtensionsString glXQueryServerString \
glXGetClientString
#GLX 1.2 and later
lappend glxlist glXGetCurrentDisplay
#GLX 1.3 and later
lappend glxlist glXChooseFBConfig glXGetFBConfigAttrib \
glXGetFBConfigs glXGetVisualFromFBConfig \
glXCreateWindow glXDestroyWindow \
glXCreatePixmap glXDestroyPixmap \
glXCreatePbuffer glXDestroyPbuffer \
glXQueryDrawable glXCreateNewContext \
glXMakeContextCurrent glXGetCurrentReadDrawable \
glXQueryContext glXSelectEvent glXGetSelectedEvent
#GLX 1.4 and later
lappend glxlist glXGetProcAddress
#Extensions
lappend glxlist glXGetProcAddressARB
#Old extensions we don't support and never really have, but need for
#symbol compatibility. See also: glx_empty.c
lappend glxlist glXSwapIntervalSGI glXSwapIntervalMESA \
glXGetSwapIntervalMESA glXBeginFrameTrackingMESA \
glXEndFrameTrackingMESA glXGetFrameUsageMESA \
glXQueryFrameTrackingMESA glXGetVideoSyncSGI \
glXWaitVideoSyncSGI glXJoinSwapGroupSGIX \
glXBindSwapBarrierSGIX glXQueryMaxSwapBarriersSGIX \
glXGetSyncValuesOML glXSwapBuffersMscOML \
glXWaitForMscOML glXWaitForSbcOML \
glXReleaseBuffersMESA \
glXCreateGLXPixmapMESA glXCopySubBufferMESA \
glXQueryGLXPbufferSGIX glXCreateGLXPbufferSGIX \
glXDestroyGLXPbufferSGIX glXSelectEventSGIX \
glXGetSelectedEventSGIX
#These are for GLX_SGIX_fbconfig, which isn't implemented, because
#we have the GLX 1.3 GLXFBConfig functions which are in the standard spec.
#It should be possible to support these to some extent.
#The old libGL somewhat supported the GLXFBConfigSGIX code, but lacked
#pbuffer, and pixmap support.
#We mainly just need these stubs for linking with apps, because for
#some reason the OpenGL site suggests using the latest glxext.h,
#and glxext.h defines all GLX extensions, which doesn't seem right for
#compile-time capability detection.
#See also: http://www.mesa3d.org/brianp/sig97/exten.htm#Compile
#which conflicts with: the ABI registry from what I saw on opengl.org.
#By disabling some of the #defines in glxext.h we break some software,
#and by enabling them without the symbols we break others (in Mesa).
#I think a lot of OpenGL-based programs have issues one way or another.
#It seems that even Mesa developers are confused on this issue, because
#Mesa-7.3/progs/xdemos/glxgears_fbconfig.c has comments about breakage
#in some comments.
lappend glxlist glXGetFBConfigAttribSGIX \
glXChooseFBConfigSGIX \
glXGetVisualFromFBConfigSGIX \
glXCreateGLXPixmapWithConfigSGIX \
glXCreateContextWithConfigSGIX \
glXGetFBConfigFromVisualSGIX
set fd [open [lindex $argv 1] w]
foreach f [lsort -dictionary [array names api]] {
puts $fd _gl$f
}
foreach f [lsort -dictionary $glxlist] {
puts $fd _$f
}
close $fd
return 0
}
exit [main $::argc $::argv]

View file

@ -1,735 +0,0 @@
package require Tcl 8.5
#input is specs/gl.spec
set license {
/*
Copyright (c) 2008, 2009 Apple Inc.
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 THE ABOVE LISTED COPYRIGHT
HOLDER(S) 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.
Except as contained in this notice, the name(s) of the above
copyright holders shall not be used in advertising or otherwise to
promote the sale, use or other dealings in this Software without
prior written authorization.
*/
}
proc extension name {
global extensions
set extensions($name) 1
}
proc alias {from to} {
global aliases
set aliases($from) $to
}
proc promoted name {
global promoted
set promoted($name) 1
}
proc noop name {
global noop
set noop($name) 1
}
set dir [file dirname [info script]]
source [file join $dir GL_extensions]
source [file join $dir GL_aliases]
source [file join $dir GL_promoted]
source [file join $dir GL_noop]
proc is-extension-supported? name {
global extensions
return [info exists extensions($name)]
}
# This is going to need to be updated for future OpenGL versions:
# cat specs/gl.tm | grep -v '^#' | awk -F, '{sub(/[ \t]+/, ""); print " "$1 " \"" $4 "\""}'
# then change void from "*" to "void"
#
# TextureComponentCount is GLenum in SL for everything
# It is GLint in mesa, but is GLenum for glTexImage3DEXT
array set typemap {
AccumOp "GLenum"
AlphaFunction "GLenum"
AttribMask "GLbitfield"
BeginMode "GLenum"
BinormalPointerTypeEXT "GLenum"
BlendEquationMode "GLenum"
BlendEquationModeEXT "GLenum"
BlendFuncSeparateParameterEXT "GLenum"
BlendingFactorDest "GLenum"
BlendingFactorSrc "GLenum"
Boolean "GLboolean"
BooleanPointer "GLboolean*"
Char "GLchar"
CharPointer "GLchar*"
CheckedFloat32 "GLfloat"
CheckedInt32 "GLint"
ClampColorTargetARB "GLenum"
ClampColorModeARB "GLenum"
ClampedColorF "GLclampf"
ClampedFloat32 "GLclampf"
ClampedFloat64 "GLclampd"
ClampedStencilValue "GLint"
ClearBufferMask "GLbitfield"
ClientAttribMask "GLbitfield"
ClipPlaneName "GLenum"
ColorB "GLbyte"
ColorD "GLdouble"
ColorF "GLfloat"
ColorI "GLint"
ColorIndexValueD "GLdouble"
ColorIndexValueF "GLfloat"
ColorIndexValueI "GLint"
ColorIndexValueS "GLshort"
ColorIndexValueUB "GLubyte"
ColorMaterialParameter "GLenum"
ColorPointerType "GLenum"
ColorS "GLshort"
ColorTableParameterPName "GLenum"
ColorTableParameterPNameSGI "GLenum"
ColorTableTarget "GLenum"
ColorTableTargetSGI "GLenum"
ColorUB "GLubyte"
ColorUI "GLuint"
ColorUS "GLushort"
CombinerBiasNV "GLenum"
CombinerComponentUsageNV "GLenum"
CombinerMappingNV "GLenum"
CombinerParameterNV "GLenum"
CombinerPortionNV "GLenum"
CombinerRegisterNV "GLenum"
CombinerScaleNV "GLenum"
CombinerStageNV "GLenum"
CombinerVariableNV "GLenum"
CompressedTextureARB "GLvoid"
ControlPointNV "GLvoid"
ControlPointTypeNV "GLenum"
ConvolutionParameter "GLenum"
ConvolutionParameterEXT "GLenum"
ConvolutionTarget "GLenum"
ConvolutionTargetEXT "GLenum"
CoordD "GLdouble"
CoordF "GLfloat"
CoordI "GLint"
CoordS "GLshort"
CullFaceMode "GLenum"
CullParameterEXT "GLenum"
DepthFunction "GLenum"
DrawBufferMode "GLenum"
DrawBufferName "GLint"
DrawElementsType "GLenum"
ElementPointerTypeATI "GLenum"
EnableCap "GLenum"
ErrorCode "GLenum"
EvalMapsModeNV "GLenum"
EvalTargetNV "GLenum"
FeedbackElement "GLfloat"
FeedbackType "GLenum"
FenceNV "GLuint"
FenceConditionNV "GLenum"
FenceParameterNameNV "GLenum"
FfdMaskSGIX "GLbitfield"
FfdTargetSGIX "GLenum"
Float32 "GLfloat"
Float32Pointer "GLfloat*"
Float64 "GLdouble"
Float64Pointer "GLdouble*"
FogParameter "GLenum"
FogPointerTypeEXT "GLenum"
FogPointerTypeIBM "GLenum"
FragmentLightModelParameterSGIX "GLenum"
FragmentLightNameSGIX "GLenum"
FragmentLightParameterSGIX "GLenum"
FramebufferAttachment "GLenum"
FramebufferTarget "GLenum"
FrontFaceDirection "GLenum"
FunctionPointer "_GLfuncptr"
GetColorTableParameterPName "GLenum"
GetColorTableParameterPNameSGI "GLenum"
GetConvolutionParameterPName "GLenum"
GetHistogramParameterPName "GLenum"
GetHistogramParameterPNameEXT "GLenum"
GetMapQuery "GLenum"
GetMinmaxParameterPName "GLenum"
GetMinmaxParameterPNameEXT "GLenum"
GetPName "GLenum"
GetPointervPName "GLenum"
GetTextureParameter "GLenum"
HintMode "GLenum"
HintTarget "GLenum"
HintTargetPGI "GLenum"
HistogramTarget "GLenum"
HistogramTargetEXT "GLenum"
IglooFunctionSelectSGIX "GLenum"
IglooParameterSGIX "GLvoid"
ImageTransformPNameHP "GLenum"
ImageTransformTargetHP "GLenum"
IndexFunctionEXT "GLenum"
IndexMaterialParameterEXT "GLenum"
IndexPointerType "GLenum"
Int16 "GLshort"
Int32 "GLint"
Int8 "GLbyte"
InterleavedArrayFormat "GLenum"
LightEnvParameterSGIX "GLenum"
LightModelParameter "GLenum"
LightName "GLenum"
LightParameter "GLenum"
LightTextureModeEXT "GLenum"
LightTexturePNameEXT "GLenum"
LineStipple "GLushort"
List "GLuint"
ListMode "GLenum"
ListNameType "GLenum"
ListParameterName "GLenum"
LogicOp "GLenum"
MapAttribParameterNV "GLenum"
MapParameterNV "GLenum"
MapTarget "GLenum"
MapTargetNV "GLenum"
MapTypeNV "GLenum"
MaskedColorIndexValueF "GLfloat"
MaskedColorIndexValueI "GLuint"
MaskedStencilValue "GLuint"
MaterialFace "GLenum"
MaterialParameter "GLenum"
MatrixIndexPointerTypeARB "GLenum"
MatrixMode "GLenum"
MatrixTransformNV "GLenum"
MeshMode1 "GLenum"
MeshMode2 "GLenum"
MinmaxTarget "GLenum"
MinmaxTargetEXT "GLenum"
NormalPointerType "GLenum"
NurbsCallback "GLenum"
NurbsObj "GLUnurbs*"
NurbsProperty "GLenum"
NurbsTrim "GLenum"
OcclusionQueryParameterNameNV "GLenum"
PixelCopyType "GLenum"
PixelFormat "GLenum"
PixelInternalFormat "GLenum"
PixelMap "GLenum"
PixelStoreParameter "GLenum"
PixelTexGenModeSGIX "GLenum"
PixelTexGenParameterNameSGIS "GLenum"
PixelTransferParameter "GLenum"
PixelTransformPNameEXT "GLenum"
PixelTransformTargetEXT "GLenum"
PixelType "GLenum"
PointParameterNameARB "GLenum"
PolygonMode "GLenum"
ProgramNV "GLuint"
ProgramCharacterNV "GLubyte"
ProgramParameterNV "GLenum"
ProgramParameterPName "GLenum"
QuadricCallback "GLenum"
QuadricDrawStyle "GLenum"
QuadricNormal "GLenum"
QuadricObj "GLUquadric*"
QuadricOrientation "GLenum"
ReadBufferMode "GLenum"
RenderbufferTarget "GLenum"
RenderingMode "GLenum"
ReplacementCodeSUN "GLuint"
ReplacementCodeTypeSUN "GLenum"
SamplePassARB "GLenum"
SamplePatternEXT "GLenum"
SamplePatternSGIS "GLenum"
SecondaryColorPointerTypeIBM "GLenum"
SelectName "GLuint"
SeparableTarget "GLenum"
SeparableTargetEXT "GLenum"
ShadingModel "GLenum"
SizeI "GLsizei"
SpriteParameterNameSGIX "GLenum"
StencilFunction "GLenum"
StencilFaceDirection "GLenum"
StencilOp "GLenum"
StencilValue "GLint"
String "const GLubyte *"
StringName "GLenum"
TangentPointerTypeEXT "GLenum"
TessCallback "GLenum"
TessContour "GLenum"
TessProperty "GLenum"
TesselatorObj "GLUtesselator*"
TexCoordPointerType "GLenum"
Texture "GLuint"
TextureComponentCount "GLint"
TextureCoordName "GLenum"
TextureEnvParameter "GLenum"
TextureEnvTarget "GLenum"
TextureFilterSGIS "GLenum"
TextureGenParameter "GLenum"
TextureNormalModeEXT "GLenum"
TextureParameterName "GLenum"
TextureTarget "GLenum"
TextureUnit "GLenum"
UInt16 "GLushort"
UInt32 "GLuint"
UInt8 "GLubyte"
VertexAttribEnum "GLenum"
VertexAttribEnumNV "GLenum"
VertexAttribPointerTypeNV "GLenum"
VertexPointerType "GLenum"
VertexWeightPointerTypeEXT "GLenum"
Void "GLvoid"
VoidPointer "GLvoid*"
ConstVoidPointer "GLvoid* const"
WeightPointerTypeARB "GLenum"
WinCoord "GLint"
void "void"
ArrayObjectPNameATI "GLenum"
ArrayObjectUsageATI "GLenum"
ConstFloat32 "GLfloat"
ConstInt32 "GLint"
ConstUInt32 "GLuint"
ConstVoid "GLvoid"
DataTypeEXT "GLenum"
FragmentOpATI "GLenum"
GetTexBumpParameterATI "GLenum"
GetVariantValueEXT "GLenum"
ParameterRangeEXT "GLenum"
PreserveModeATI "GLenum"
ProgramFormatARB "GLenum"
ProgramTargetARB "GLenum"
ProgramTarget "GLenum"
ProgramPropertyARB "GLenum"
ProgramStringPropertyARB "GLenum"
ScalarType "GLenum"
SwizzleOpATI "GLenum"
TexBumpParameterATI "GLenum"
VariantCapEXT "GLenum"
VertexAttribPointerPropertyARB "GLenum"
VertexAttribPointerTypeARB "GLenum"
VertexAttribPropertyARB "GLenum"
VertexShaderCoordOutEXT "GLenum"
VertexShaderOpEXT "GLenum"
VertexShaderParameterEXT "GLenum"
VertexShaderStorageTypeEXT "GLenum"
VertexShaderTextureUnitParameter "GLenum"
VertexShaderWriteMaskEXT "GLenum"
VertexStreamATI "GLenum"
PNTrianglesPNameATI "GLenum"
BufferOffset "GLintptr"
BufferSize "GLsizeiptr"
BufferAccessARB "GLenum"
BufferOffsetARB "GLintptrARB"
BufferPNameARB "GLenum"
BufferPointerNameARB "GLenum"
BufferSizeARB "GLsizeiptrARB"
BufferTargetARB "GLenum"
BufferUsageARB "GLenum"
ObjectTypeAPPLE "GLenum"
VertexArrayPNameAPPLE "GLenum"
DrawBufferModeATI "GLenum"
Half16NV "GLhalfNV"
PixelDataRangeTargetNV "GLenum"
TypeEnum "GLenum"
GLbitfield "GLbitfield"
GLenum "GLenum"
Int64 "GLint64"
UInt64 "GLuint64"
handleARB "GLhandleARB"
charARB "GLcharARB"
charPointerARB "GLcharARB*"
sync "GLsync"
Int64EXT "GLint64EXT"
UInt64EXT "GLuint64EXT"
FramebufferAttachment "GLenum"
FramebufferAttachmentParameterName "GLenum"
Framebuffer "GLuint"
FramebufferStatus "GLenum"
FramebufferTarget "GLenum"
GetFramebufferParameter "GLenum"
Intptr "GLintptr"
ProgramFormat "GLenum"
ProgramProperty "GLenum"
ProgramStringProperty "GLenum"
ProgramTarget "GLenum"
Renderbuffer "GLuint"
RenderbufferParameterName "GLenum"
Sizeiptr "GLsizeiptr"
TextureInternalFormat "GLenum"
VertexBufferObjectAccess "GLenum"
VertexBufferObjectParameter "GLenum"
VertexBufferObjectUsage "GLenum"
BufferAccessMask "GLbitfield"
GetMultisamplePNameNV "GLenum"
SampleMaskNV "GLbitfield"
}
proc psplit s {
set r [list]
set token ""
foreach c [split $s ""] {
if {[string is space -strict $c]} {
if {[string length $token]} {
lappend r $token
}
set token ""
} else {
append token $c
}
}
if {[string length $token]} {
lappend r $token
}
return $r
}
proc is-extension? str {
#Check if the trailing name of the function is NV, or EXT, and so on.
if {[string is upper [string index $str end]]
&& [string is upper [string index $str end-1]]} {
return 1
}
return 0
}
proc parse {data arvar} {
upvar 1 $arvar ar
set state ""
set name ""
foreach line [split $data \n] {
if {"attr" eq $state} {
if {[string match "\t*" $line]} {
set plist [psplit [lindex [split $line "#"] 0]]
#puts PLIST:$plist
set master $ar($name)
set param [dict get $master parameters]
switch -- [llength $plist] {
1 {
dict set master [lindex $plist 0] ""
}
2 {
#standard key, value pair
set key [lindex $plist 0]
set value [lindex $plist 1]
dict set master $key $value
}
default {
set key [lindex $plist 0]
#puts PLIST:$plist
if {"param" eq $key} {
lappend param [list [lindex $plist 1] [lindex $plist 2] [lindex $plist 3] [lindex $plist 4]]
} else {
dict set master $key [lrange $plist 1 end]
}
}
}
dict set master parameters $param
set ar($name) $master
} else {
set state ""
}
} elseif {[regexp {^([A-Z_a-z0-9]+)\((.*)\)\S*} $line all name argv] > 0} {
#puts "MATCH:$name ARGV:$argv"
#Trim the spaces in the elements.
set newargv [list]
foreach a [split $argv ,] {
lappend newargv [string trim $a]
}
set d [dict create name $name arguments $newargv \
parameters [dict create]]
set ar($name) $d
set state attr
}
}
}
#This returns true if the category is valid for an extension.
proc is-valid-category? c {
set clist [list display-list drawing drawing-control feedback framebuf misc modeling pixel-op pixel-rw state-req xform VERSION_1_0 VERSION_1_0_DEPRECATED VERSION_1_1 VERSION_1_1_DEPRECATED VERSION_1_2 VERSION_1_2_DEPRECATED VERSION_1_3 VERSION_1_3_DEPRECATED VERSION_1_4 VERSION_1_4_DEPRECATED VERSION_1_5 VERSION_2_0 VERSION_2_1 VERSION_3_0 VERSION_3_0_DEPRECATED VERSION_3_1 VERSION_3_2]
set result [expr {$c in $clist}]
if {!$result} {
set result [is-extension-supported? $c]
}
return $result
}
proc translate-parameters {func parameters} {
global typemap
set newparams [list]
foreach p $parameters {
set var [lindex $p 0]
set ptype [lindex $p 1]
if {![info exists typemap($ptype)]} {
set ::missingTypes($ptype) $func
continue
}
set type $typemap($ptype)
if {"array" eq [lindex $p 3]} {
if {"in" eq [lindex $p 2]} {
set final_type "const $type *"
} else {
set final_type "$type *"
}
} else {
set final_type $type
}
lappend newparams [list $final_type $var]
}
return $newparams
}
proc api-new-entry {info func} {
global typemap
set master [dict create]
set rettype [dict get $info return]
if {![info exists typemap($rettype)]} {
set ::missingTypes($rettype) $func
} else {
dict set master return $typemap($rettype)
}
dict set master parameters [translate-parameters $func \
[dict get $info parameters]]
return $master
}
proc main {argc argv} {
global extensions typemap aliases promoted noop
set fd [open [lindex $argv 0] r]
set data [read $fd]
close $fd
array set ar {}
parse $data ar
array set newapi {}
array set missingTypes {}
foreach {key value} [array get ar] {
puts "KEY:$key VALUE:$value"
set category [dict get $value category]
#Invalidate any of the extensions and things not in the spec we support.
set valid [is-valid-category? $category]
puts VALID:$valid
if {!$valid} {
continue
}
puts "VALID:$key"
if {"BlitFramebuffer" eq $key} {
#This was promoted to an ARB extension after Leopard it seems.
set key BlitFramebufferEXT
}
if {"ARB_framebuffer_object" eq $category} {
#This wasn't an ARB extension in Leopard either.
if {![string match *EXT $key]} {
append key EXT
}
}
set newapi($key) [api-new-entry $value $key]
}
#Now iterate and support as many aliases as we can for promoted functions
#based on if the newapi contains the function.
foreach {func value} [array get ar] {
if {![info exists promoted([dict get $value category])]} {
continue
}
if {[dict exists $value alias]} {
#We have an alias. Let's see if we have the implementation.
set alias [dict get $value alias]
if {[info exists newapi($alias)] && ![info exists newapi($func)]} {
#We have an implementing function available.
puts "HAVE:$key ALIAS:$alias"
set master [api-new-entry $value $func]
dict set master alias_for $alias
set newapi($func) $master
}
}
}
parray noop
#Now handle the no-op compatibility categories.
foreach {func value} [array get ar] {
if {[info exists noop([dict get $value category])]} {
if {[info exists newapi($func)]} {
puts stderr "$func shouldn't be a noop"
exit 1
}
set master [api-new-entry $value $func]
dict set master noop 1
set newapi($func) $master
}
}
parray newapi
if {[array size ::missingTypes]} {
parray ::missingTypes
return 1
}
foreach {from to} [array get aliases] {
set d $newapi($to)
dict set d alias_for $to
set newapi($from) $d
}
#Iterate the nm output and set each symbol in an associative array.
array set validapi {}
foreach line [split [exec nm -j -g /System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib] \n] {
set fn [string trim $line]
#Only match the _gl functions.
if {[string match _gl* $fn]} {
set finalfn [string range $fn 3 end]
puts FINALFN:$finalfn
set validapi($finalfn) $finalfn
}
}
puts "Correcting the API functions to match the OpenGL framework."
#parray validapi
#Iterate the newapi and unset any members that the
#libGL.dylib doesn't support, assuming they aren't no-ops.
foreach fn [array names newapi] {
if {![info exists validapi($fn)]} {
puts "WARNING: libGL.dylib lacks support for: $fn"
if {[dict exists $newapi($fn) noop]
&& [dict get $newapi($fn) noop]} {
#This is no-op, so we should skip it.
continue
}
#Is the function an alias for another in libGL?
if {[dict exists $newapi($fn) alias_for]} {
set alias [dict get $newapi($fn) alias_for]
if {![info exists validapi($alias)]} {
puts "WARNING: alias function doesn't exist for $fn."
puts "The alias is $alias."
puts "unsetting $fn"
unset newapi($fn)
}
} else {
puts "unsetting $fn"
unset newapi($fn)
}
}
}
#Now print a warning about any symbols that libGL supports that we don't.
foreach fn [array names validapi] {
if {![info exists newapi($fn)]} {
puts "AppleSGLX is missing $fn"
}
}
puts "NOW GENERATING:[lindex $::argv 1]"
set fd [open [lindex $::argv 1] w]
set sorted [lsort -dictionary [array names newapi]]
foreach f $sorted {
set attr $newapi($f)
set pstr ""
foreach p [dict get $attr parameters] {
append pstr "[lindex $p 0] [lindex $p 1], "
}
set pstr [string trimright $pstr ", "]
puts $fd "[dict get $attr return] gl[set f]($pstr); "
}
close $fd
if {$::argc == 3} {
puts "NOW GENERATING:[lindex $::argv 2]"
#Dump the array as a serialized list.
set fd [open [lindex $::argv 2] w]
puts $fd [array get newapi]
close $fd
}
return 0
}
exit [main $::argc $::argv]

View file

@ -1,32 +0,0 @@
proc main {argc argv} {
if {1 != $argc} {
puts stderr "syntax is: [info script] output.h"
exit 1
}
set fd [open [lindex $argv 0] w]
puts $fd "
/*OpenGL primitive typedefs*/
typedef unsigned int GLenum;
typedef unsigned char GLboolean;
typedef unsigned int GLbitfield;
typedef signed char GLbyte;
typedef short GLshort;
typedef int GLint;
typedef int GLsizei;
typedef unsigned char GLubyte;
typedef unsigned short GLushort;
typedef unsigned int GLuint;
typedef float GLfloat;
typedef float GLclampf;
typedef double GLdouble;
typedef double GLclampd;
typedef void GLvoid;
typedef long GLintptr;
typedef long GLsizeiptr;
"
}
main $::argc $::argv

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -1,328 +0,0 @@
AccumOp,*,*, GLenum,*,*
AlphaFunction,*,*, GLenum,*,*
AttribMask,*,*, GLbitfield,*,*
BeginMode,*,*, GLenum,*,*
BinormalPointerTypeEXT,*,*, GLenum,*,*
BlendEquationMode,*,*, GLenum,*,*
BlendEquationModeEXT,*,*, GLenum,*,*
BlendFuncSeparateParameterEXT,*,*, GLenum,*,*
BlendingFactorDest,*,*, GLenum,*,*
BlendingFactorSrc,*,*, GLenum,*,*
Boolean,*,*, GLboolean,*,*
BooleanPointer,*,*, GLboolean*,*,*
Char,*,*, GLchar,*,*
CharPointer,*,*, GLchar*,*,*
CheckedFloat32,*,*, GLfloat,*,*
CheckedInt32,*,*, GLint,*,*
ClampColorTargetARB,*,*, GLenum,*,*
ClampColorModeARB,*,*, GLenum,*,*
ClampedColorF,*,*, GLclampf,*,*
ClampedFloat32,*,*, GLclampf,*,*
ClampedFloat64,*,*, GLclampd,*,*
ClampedStencilValue,*,*, GLint,*,*
ClearBufferMask,*,*, GLbitfield,*,*
ClientAttribMask,*,*, GLbitfield,*,*
ClipPlaneName,*,*, GLenum,*,*
ColorB,*,*, GLbyte,*,*
ColorD,*,*, GLdouble,*,*
ColorF,*,*, GLfloat,*,*
ColorI,*,*, GLint,*,*
ColorIndexValueD,*,*, GLdouble,*,*
ColorIndexValueF,*,*, GLfloat,*,*
ColorIndexValueI,*,*, GLint,*,*
ColorIndexValueS,*,*, GLshort,*,*
ColorIndexValueUB,*,*, GLubyte,*,*
ColorMaterialParameter,*,*, GLenum,*,*
ColorPointerType,*,*, GLenum,*,*
ColorS,*,*, GLshort,*,*
ColorTableParameterPName,*,*, GLenum,*,*
ColorTableParameterPNameSGI,*,*, GLenum,*,*
ColorTableTarget,*,*, GLenum,*,*
ColorTableTargetSGI,*,*, GLenum,*,*
ColorUB,*,*, GLubyte,*,*
ColorUI,*,*, GLuint,*,*
ColorUS,*,*, GLushort,*,*
CombinerBiasNV,*,*, GLenum,*,*
CombinerComponentUsageNV,*,*, GLenum,*,*
CombinerMappingNV,*,*, GLenum,*,*
CombinerParameterNV,*,*, GLenum,*,*
CombinerPortionNV,*,*, GLenum,*,*
CombinerRegisterNV,*,*, GLenum,*,*
CombinerScaleNV,*,*, GLenum,*,*
CombinerStageNV,*,*, GLenum,*,*
CombinerVariableNV,*,*, GLenum,*,*
CompressedTextureARB,*,*, GLvoid,*,*
ControlPointNV,*,*, GLvoid,*,*
ControlPointTypeNV,*,*, GLenum,*,*
ConvolutionParameter,*,*, GLenum,*,*
ConvolutionParameterEXT,*,*, GLenum,*,*
ConvolutionTarget,*,*, GLenum,*,*
ConvolutionTargetEXT,*,*, GLenum,*,*
CoordD,*,*, GLdouble,*,*
CoordF,*,*, GLfloat,*,*
CoordI,*,*, GLint,*,*
CoordS,*,*, GLshort,*,*
CullFaceMode,*,*, GLenum,*,*
CullParameterEXT,*,*, GLenum,*,*
DepthFunction,*,*, GLenum,*,*
DrawBufferMode,*,*, GLenum,*,*
DrawBufferName,*,*, GLint,*,*
DrawElementsType,*,*, GLenum,*,*
ElementPointerTypeATI,*,*, GLenum,*,*
EnableCap,*,*, GLenum,*,*
ErrorCode,*,*, GLenum,*,*
EvalMapsModeNV,*,*, GLenum,*,*
EvalTargetNV,*,*, GLenum,*,*
FeedbackElement,*,*, GLfloat,*,*
FeedbackType,*,*, GLenum,*,*
FenceNV,*,*, GLuint,*,*
FenceConditionNV,*,*, GLenum,*,*
FenceParameterNameNV,*,*, GLenum,*,*
FfdMaskSGIX,*,*, GLbitfield,*,*
FfdTargetSGIX,*,*, GLenum,*,*
Float32,*,*, GLfloat,*,*
Float32Pointer,*,*, GLfloat*,*,*
Float64,*,*, GLdouble,*,*
Float64Pointer,*,*, GLdouble*,*,*
FogParameter,*,*, GLenum,*,*
FogPointerTypeEXT,*,*, GLenum,*,*
FogPointerTypeIBM,*,*, GLenum,*,*
FragmentLightModelParameterSGIX,*,*,GLenum,*,*
FragmentLightNameSGIX,*,*, GLenum,*,*
FragmentLightParameterSGIX,*,*, GLenum,*,*
FramebufferAttachment,*,*, GLenum,*,*
FramebufferTarget,*,*, GLenum,*,*
FrontFaceDirection,*,*, GLenum,*,*
FunctionPointer,*,*, _GLfuncptr,*,*
GetColorTableParameterPName,*,*, GLenum,*,*
GetColorTableParameterPNameSGI,*,*, GLenum,*,*
GetConvolutionParameterPName,*,*, GLenum,*,*
GetHistogramParameterPName,*,*, GLenum,*,*
GetHistogramParameterPNameEXT,*,*, GLenum,*,*
GetMapQuery,*,*, GLenum,*,*
GetMinmaxParameterPName,*,*, GLenum,*,*
GetMinmaxParameterPNameEXT,*,*, GLenum,*,*
GetPName,*,*, GLenum,*,*
GetPointervPName,*,*, GLenum,*,*
GetTextureParameter,*,*, GLenum,*,*
HintMode,*,*, GLenum,*,*
HintTarget,*,*, GLenum,*,*
HintTargetPGI,*,*, GLenum,*,*
HistogramTarget,*,*, GLenum,*,*
HistogramTargetEXT,*,*, GLenum,*,*
IglooFunctionSelectSGIX,*,*, GLenum,*,*
IglooParameterSGIX,*,*, GLvoid,*,*
ImageTransformPNameHP,*,*, GLenum,*,*
ImageTransformTargetHP,*,*, GLenum,*,*
IndexFunctionEXT,*,*, GLenum,*,*
IndexMaterialParameterEXT,*,*, GLenum,*,*
IndexPointerType,*,*, GLenum,*,*
Int16,*,*, GLshort,*,*
Int32,*,*, GLint,*,*
Int8,*,*, GLbyte,*,*
InterleavedArrayFormat,*,*, GLenum,*,*
LightEnvParameterSGIX,*,*, GLenum,*,*
LightModelParameter,*,*, GLenum,*,*
LightName,*,*, GLenum,*,*
LightParameter,*,*, GLenum,*,*
LightTextureModeEXT,*,*, GLenum,*,*
LightTexturePNameEXT,*,*, GLenum,*,*
LineStipple,*,*, GLushort,*,*
List,*,*, GLuint,*,*
ListMode,*,*, GLenum,*,*
ListNameType,*,*, GLenum,*,*
ListParameterName,*,*, GLenum,*,*
LogicOp,*,*, GLenum,*,*
MapAttribParameterNV,*,*, GLenum,*,*
MapParameterNV,*,*, GLenum,*,*
MapTarget,*,*, GLenum,*,*
MapTargetNV,*,*, GLenum,*,*
MapTypeNV,*,*, GLenum,*,*
MaskedColorIndexValueF,*,*, GLfloat,*,*
MaskedColorIndexValueI,*,*, GLuint,*,*
MaskedStencilValue,*,*, GLuint,*,*
MaterialFace,*,*, GLenum,*,*
MaterialParameter,*,*, GLenum,*,*
MatrixIndexPointerTypeARB,*,*, GLenum,*,*
MatrixMode,*,*, GLenum,*,*
MatrixTransformNV,*,*, GLenum,*,*
MeshMode1,*,*, GLenum,*,*
MeshMode2,*,*, GLenum,*,*
MinmaxTarget,*,*, GLenum,*,*
MinmaxTargetEXT,*,*, GLenum,*,*
NormalPointerType,*,*, GLenum,*,*
NurbsCallback,*,*, GLenum,*,*
NurbsObj,*,*, GLUnurbs*,*,*
NurbsProperty,*,*, GLenum,*,*
NurbsTrim,*,*, GLenum,*,*
OcclusionQueryParameterNameNV,*,*, GLenum,*,*
PixelCopyType,*,*, GLenum,*,*
PixelFormat,*,*, GLenum,*,*
PixelInternalFormat,*,*, GLenum,*,*
PixelMap,*,*, GLenum,*,*
PixelStoreParameter,*,*, GLenum,*,*
PixelTexGenModeSGIX,*,*, GLenum,*,*
PixelTexGenParameterNameSGIS,*,*, GLenum,*,*
PixelTransferParameter,*,*, GLenum,*,*
PixelTransformPNameEXT,*,*, GLenum,*,*
PixelTransformTargetEXT,*,*, GLenum,*,*
PixelType,*,*, GLenum,*,*
PointParameterNameARB,*,*, GLenum,*,*
PolygonMode,*,*, GLenum,*,*
ProgramNV,*,*, GLuint,*,*
ProgramCharacterNV,*,*, GLubyte,*,*
ProgramParameterNV,*,*, GLenum,*,*
ProgramParameterPName,*,*, GLenum,*,*
QuadricCallback,*,*, GLenum,*,*
QuadricDrawStyle,*,*, GLenum,*,*
QuadricNormal,*,*, GLenum,*,*
QuadricObj,*,*, GLUquadric*,*,*
QuadricOrientation,*,*, GLenum,*,*
ReadBufferMode,*,*, GLenum,*,*
RenderbufferTarget,*,*, GLenum,*,*
RenderingMode,*,*, GLenum,*,*
ReplacementCodeSUN,*,*, GLuint,*,*
ReplacementCodeTypeSUN,*,*, GLenum,*,*
SamplePassARB,*,*, GLenum,*,*
SamplePatternEXT,*,*, GLenum,*,*
SamplePatternSGIS,*,*, GLenum,*,*
SecondaryColorPointerTypeIBM,*,*, GLenum,*,*
SelectName,*,*, GLuint,*,*
SeparableTarget,*,*, GLenum,*,*
SeparableTargetEXT,*,*, GLenum,*,*
ShadingModel,*,*, GLenum,*,*
SizeI,*,*, GLsizei,*,*
SpriteParameterNameSGIX,*,*, GLenum,*,*
StencilFunction,*,*, GLenum,*,*
StencilFaceDirection,*,*, GLenum,*,*
StencilOp,*,*, GLenum,*,*
StencilValue,*,*, GLint,*,*
String,*,*, const GLubyte *,*,*
StringName,*,*, GLenum,*,*
TangentPointerTypeEXT,*,*, GLenum,*,*
TessCallback,*,*, GLenum,*,*
TessContour,*,*, GLenum,*,*
TessProperty,*,*, GLenum,*,*
TesselatorObj,*,*, GLUtesselator*,*,*
TexCoordPointerType,*,*, GLenum,*,*
Texture,*,*, GLuint,*,*
TextureComponentCount,*,*, GLint,*,*
TextureCoordName,*,*, GLenum,*,*
TextureEnvParameter,*,*, GLenum,*,*
TextureEnvTarget,*,*, GLenum,*,*
TextureFilterSGIS,*,*, GLenum,*,*
TextureGenParameter,*,*, GLenum,*,*
TextureNormalModeEXT,*,*, GLenum,*,*
TextureParameterName,*,*, GLenum,*,*
TextureTarget,*,*, GLenum,*,*
TextureUnit,*,*, GLenum,*,*
UInt16,*,*, GLushort,*,*
UInt32,*,*, GLuint,*,*
UInt8,*,*, GLubyte,*,*
VertexAttribEnum,*,*, GLenum,*,*
VertexAttribEnumNV,*,*, GLenum,*,*
VertexAttribPointerTypeNV,*,*, GLenum,*,*
VertexPointerType,*,*, GLenum,*,*
VertexWeightPointerTypeEXT,*,*, GLenum,*,*
Void,*,*, GLvoid,*,*
VoidPointer,*,*, GLvoid*,*,*
ConstVoidPointer,*,*, GLvoid* const,*,*
WeightPointerTypeARB,*,*, GLenum,*,*
WinCoord,*,*, GLint,*,*
void,*,*, *,*,*
ArrayObjectPNameATI,*,*, GLenum,*,*
ArrayObjectUsageATI,*,*, GLenum,*,*,
ConstFloat32,*,*, GLfloat,*,*
ConstInt32,*,*, GLint,*,*
ConstUInt32,*,*, GLuint,*,*
ConstVoid,*,*, GLvoid,*,*
DataTypeEXT,*,*, GLenum,*,*
FragmentOpATI,*,*, GLenum,*,*
GetTexBumpParameterATI,*,*, GLenum,*,*
GetVariantValueEXT,*,*, GLenum,*,*
ParameterRangeEXT,*,*, GLenum,*,*
PreserveModeATI,*,*, GLenum,*,*
ProgramFormatARB,*,*, GLenum,*,*
ProgramTargetARB,*,*, GLenum,*,*
ProgramTarget,*,*, GLenum,*,*
ProgramPropertyARB,*,*, GLenum,*,*
ProgramStringPropertyARB,*,*, GLenum,*,*
ScalarType,*,*, GLenum,*,*
SwizzleOpATI,*,*, GLenum,*,*
TexBumpParameterATI,*,*, GLenum,*,*
VariantCapEXT,*,*, GLenum,*,*
VertexAttribPointerPropertyARB,*,*, GLenum,*,*
VertexAttribPointerTypeARB,*,*, GLenum,*,*
VertexAttribPropertyARB,*,*, GLenum,*,*
VertexShaderCoordOutEXT,*,*, GLenum,*,*
VertexShaderOpEXT,*,*, GLenum,*,*
VertexShaderParameterEXT,*,*, GLenum,*,*
VertexShaderStorageTypeEXT,*,*, GLenum,*,*
VertexShaderTextureUnitParameter,*,*, GLenum,*,*
VertexShaderWriteMaskEXT,*,*, GLenum,*,*
VertexStreamATI,*,*, GLenum,*,*
PNTrianglesPNameATI,*,*, GLenum,*,*
# ARB_vertex_buffer_object types and core equivalents for new types
BufferOffset,*,*, GLintptr,*,*
BufferSize,*,*, GLsizeiptr,*,*
BufferAccessARB,*,*, GLenum,*,*
BufferOffsetARB,*,*, GLintptrARB,*,*
BufferPNameARB,*,*, GLenum,*,*
BufferPointerNameARB,*,*, GLenum,*,*
BufferSizeARB,*,*, GLsizeiptrARB,*,*
BufferTargetARB,*,*, GLenum,*,*
BufferUsageARB,*,*, GLenum,*,*
# APPLE_fence
ObjectTypeAPPLE,*,*, GLenum,*,*
# APPLE_vertex_array_range
VertexArrayPNameAPPLE,*,*, GLenum,*,*
# ATI_draw_buffers
DrawBufferModeATI,*,*, GLenum,*,*
# NV_half
Half16NV,*,*, GLhalfNV,*,*
# NV_pixel_data_range
PixelDataRangeTargetNV,*,*, GLenum,*,*
# Generic types for as-yet-unspecified enums
TypeEnum,*,*, GLenum,*,*
GLbitfield,*,*, GLbitfield,*,*
GLenum,*,*, GLenum,*,*
Int64,*,*, GLint64,*,*
UInt64,*,*, GLuint64,*,*
# Object handle & data pointers
handleARB,*,*, GLhandleARB,*,*
charARB,*,*, GLcharARB,*,*
charPointerARB,*,*, GLcharARB*,*,*
sync,*,*, GLsync,*,*,
# EXT_timer_query
Int64EXT,*,*, GLint64EXT,*,*
UInt64EXT,*,*, GLuint64EXT,*,*
# EXT_direct_state_access
FramebufferAttachmentParameterName,*,*, GLenum,*,*
Framebuffer,*,*, GLuint,*,*
FramebufferStatus,*,*, GLenum,*,*
GetFramebufferParameter,*,*, GLenum,*,*
Intptr,*,*, GLintptr,*,*
ProgramFormat,*,*, GLenum,*,*
ProgramProperty,*,*, GLenum,*,*
ProgramStringProperty,*,*, GLenum,*,*
Renderbuffer,*,*, GLuint,*,*
RenderbufferParameterName,*,*, GLenum,*,*
Sizeiptr,*,*, GLsizeiptr,*,*
TextureInternalFormat,*,*, GLenum,*,*
VertexBufferObjectAccess,*,*, GLenum,*,*
VertexBufferObjectParameter,*,*, GLenum,*,*
VertexBufferObjectUsage,*,*, GLenum,*,*
# ARB_map_buffer_range
BufferAccessMask,*,*, GLbitfield,*,*
# NV_explicit_multisample
GetMultisamplePNameNV,*,*, GLenum,*,*
SampleMaskNV,*,*, GLbitfield,*,*
# ARB_debug_output
GLDEBUGPROCARB,*,*, GLDEBUGPROCARB,*,*
# AMD_debug_output
GLDEBUGPROCAMD,*,*, GLDEBUGPROCAMD,*,*
# NV_vdpau_interop
vdpauSurfaceNV,*,*, GLvdpauSurfaceNV,*,*,
# External API types
cl_context,*,*, struct _cl_context *,*,*
cl_event,*,*, struct _cl_event *,*,*

View file

@ -1,602 +0,0 @@
# Copyright (c) 1991-2005 Silicon Graphics, Inc. All Rights Reserved.
# Copyright (c) 2006-2010 The Khronos Group, Inc.
#
# This document is licensed under the SGI Free Software B License Version
# 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
#
# $Revision: 10796 $ on $Date: 2010-03-19 17:31:10 -0700 (Fri, 19 Mar 2010) $
required-props:
param: retval retained
dlflags: notlistable handcode nop
glxflags: client-handcode server-handcode
glxvendorglx: *
vectorequiv: *
category: pixel-rw bgn-end display-list drawing drawing-control feedback framebuf misc modeling pixel-op pixel-rw state-req xform glx glxopcode
glxopcode: *
###############################################################################
#
# GLX1.0 commands
#
###############################################################################
Render()
return void
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 1
RenderLarge()
return void
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 2
CreateContext(gc_id, screen, visual, share_list)
return void
param gc_id Int32 in value
param screen Int32 in value
param visual Int32 in value
param share_list Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxopcode 3
DestroyContext(context)
return void
param context Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxopcode 4
MakeCurrent(drawable, context)
return void
param drawable Int32 in value
param context Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxopcode 5
IsDirect(dpy, context)
return void
param dpy Int32 in value
param context Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxopcode 6
QueryVersion(major, minor)
return void
param major Int32 out reference
param minor Int32 out reference
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 7
WaitGL(context)
return void
param context Int32 in value
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 8
WaitX()
return void
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 9
CopyContext(source, dest, mask)
return void
param source Int32 in value
param dest Int32 in value
param mask Int32 in value
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 10
SwapBuffers(drawable)
return void
param drawable Int32 in value
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 11
UseXFont(font, first, count, list_base)
return void
param font Int32 in value
param first Int32 in value
param count Int32 in value
param list_base Int32 in value
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 12
CreateGLXPixmap(visual, pixmap, glxpixmap)
return void
param visual Int32 in value
param pixmap Int32 in value
param glxpixmap Int32 in value
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 13
GetVisualConfigs()
return void
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 14
DestroyGLXPixmap(pixmap)
return void
param pixmap Int32 in value
glxflags client-handcode
category glx
dlflags notlistable
glxopcode 15
VendorPrivate()
return void
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxopcode 16
VendorPrivateWithReply()
return void
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxopcode 17
###############################################################################
#
# GLX1.1 commands
#
###############################################################################
QueryExtensionsString(screen)
return void
param screen Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxopcode 18
QueryServerString(screen, name)
return void
param screen Int32 in value
param name Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxopcode 19
ClientInfo()
return void
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxopcode 20
###############################################################################
#
# GLX1.3 commands
#
###############################################################################
GetFBConfigs()
return void
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxopcode 21
CreatePixmap(config, pixmap, glxpixmap)
return void
param config Int32 in value
param pixmap Int32 in value
param glxpixmap Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 22
DestroyPixmap(glxpixmap)
return void
param glxpixmap Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 23
CreateNewContext(config, render_type, share_list, direct)
return void
param config Int32 in value
param render_type Int32 in value
param share_list Int32 in value
param direct Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 24
QueryContext()
return void
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 25
MakeContextCurrent(drawable, readdrawable, context)
return void
param drawable Int32 in value
param readdrawable Int32 in value
param context Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 26
CreatePbuffer(config, pbuffer)
return void
param config Int32 in value
param pbuffer Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 27
DestroyPbuffer(pbuffer)
return void
param pbuffer Int32 in value
dlflags notlistable
glxflags client-handcode
category glx
glxopcode 28
GetDrawableAttributes(drawable)
return void
param drawable Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 29
ChangeDrawableAttributes(drawable)
return void
param drawable Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 30
CreateWindow(config, window, glxwindow)
return void
param config Int32 in value
param window Int32 in value
param glxwindow Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 31
DestroyWindow(glxwindow)
return void
param glxwindow Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxopcode 32
###############################################################################
#
# IRIX5.3 extension commands
#
###############################################################################
###############################################################################
#
# SGI_swap_control extension commands
#
###############################################################################
SwapIntervalSGI()
return void
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65536
###############################################################################
#
# IRIX5.3-PATCH154 extension commands
#
###############################################################################
###############################################################################
#
# SGI_make_current_read extension commands
#
###############################################################################
MakeCurrentReadSGI(drawable, readdrawable, context)
return void
param drawable Int32 in value
param readdrawable Int32 in value
param context Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65537
###############################################################################
#
# SGIX_video_source extension commands
#
###############################################################################
CreateGLXVideoSourceSGIX(dpy, screen, server, path, class, node)
return void
param dpy Int32 in value
param screen Int32 in value
param server Int32 in value
param path Int32 in value
param class Int32 in value
param node Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65538
DestroyGLXVideoSourceSGIX(dpy, glxvideosource)
return void
param dpy Int32 in value
param glxvideosource Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65539
###############################################################################
#
# IRIX6.2 extension commands
#
###############################################################################
###############################################################################
#
# EXT_import_context extension commands
#
###############################################################################
QueryContextInfoEXT()
return void
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxvendorglx 1024
###############################################################################
#
# SGIX_fbconfig extension commands
#
###############################################################################
GetFBConfigsSGIX()
return void
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxvendorglx 65540
CreateContextWithConfigSGIX(gc_id, screen, config, share_list)
return void
param gc_id Int32 in value
param screen Int32 in value
param config Int32 in value
param share_list Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65541
CreateGLXPixmapWithConfigSGIX(config, pixmap, glxpixmap)
return void
param config Int32 in value
param pixmap Int32 in value
param glxpixmap Int32 in value
category glx
dlflags notlistable
glxflags client-handcode server-handcode
glxvendorglx 65542
###############################################################################
#
# SGIX_pbuffer extension commands
#
###############################################################################
CreateGLXPbufferSGIX(config, pbuffer)
return void
param config Int32 in value
param pbuffer Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxvendorglx 65543
DestroyGLXPbufferSGIX(pbuffer)
return void
param pbuffer Int32 in value
dlflags notlistable
glxflags client-handcode
category glx
glxvendorglx 65544
ChangeDrawableAttributesSGIX(drawable)
return void
param drawable Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxvendorglx 65545
GetDrawableAttributesSGIX(drawable)
return void
param drawable Int32 in value
dlflags notlistable
glxflags client-handcode server-handcode
category glx
glxvendorglx 65546
###############################################################################
#
# SGIX_swap_group extension commands
#
###############################################################################
JoinSwapGroupSGIX(window,group)
return void
param window Int32 in value
param group Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65547
###############################################################################
#
# SGIX_swap_barrier extension commands
#
###############################################################################
BindSwapBarrierSGIX(window,barrier)
return void
param window Int32 in value
param barrier Int32 in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65548
QueryMaxSwapBarriersSGIX()
return void
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65549
###############################################################################
#
# SGIX_hyperpipe extension commands
#
###############################################################################
QueryHyperpipeNetworkSGIX(dpy, npipes)
return GLXHyperpipeNetworkPointer
param dpy Display out reference
param npipes int out reference
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65550
HyperpipeConfigSGIX(dpy, networkId, npipes, cfg, hpId)
return int
param dpy Display out reference
param networkId int in value
param npipes int in value
param cfg GLXHyperpipeConfig in array[npipes]
param hpId int out reference
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65552
QueryHyperpipeConfigSGIX(dpy, hpId, npipes)
return GLXHyperpipeConfigPointer
param dpy Display out reference
param hpId int in value
param npipes int out reference
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65551
DestroyHyperpipeConfigSGIX(dpy, hpId)
return int
param dpy Display out reference
param hpId int in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx 65553
BindHyperpipeSGIX(dpy, hpId)
return int
param dpy Display out reference
param hpId int in value
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx ???
QueryHyperpipeBestAttribSGIX(dpy, timeSlice, attrib, size, attribList, returnAttribList)
return int
param dpy Display out reference
param timeSlice int in value
param attrib int in value
param size int in value
param attribList Void in array[size]
param returnAttribList Void out array[size]
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx ???
HyperpipeAttribSGIX(dpy, timeSlice, attrib, size, attribList)
return int
param dpy Display out reference
param timeSlice int in value
param attrib int in value
param size int in value
param attribList void in array[size]
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx ???
QueryHyperpipeAttribSGIX(dpy, timeSlice, attrib, size, returnAttribList)
return int
param dpy Display out reference
param timeSlice int in value
param attrib int in value
param size int in value
param returnAttribList void in array[size]
glxflags client-handcode server-handcode
category glx
dlflags notlistable
glxvendorglx ???

View file

@ -1,479 +0,0 @@
# Copyright (c) 1991-2005 Silicon Graphics, Inc. All Rights Reserved.
# Copyright (c) 2006-2010 The Khronos Group, Inc.
#
# This document is licensed under the SGI Free Software B License Version
# 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
#
# $Revision: 12183 $ on $Date: 2010-08-06 02:53:05 -0700 (Fri, 06 Aug 2010) $
# This is the GLX enumerant registry.
#
# It is an extremely important file. Do not mess with it unless
# you know what you're doing and have permission to do so.
#
# Rules for modification are the same as the rules for the OpenGL
# enumerant registry (gl.spec). Basically, don't modify this
# file unless you're the Khronos API Registrar.
Extensions define:
VERSION_1_1 = 1
VERSION_1_2 = 1
VERSION_1_3 = 1
VERSION_1_4 = 1
SGIS_multisample = 1
EXT_visual_info = 1
SGI_swap_control = 1
SGI_video_sync = 1
SGI_make_current_read = 1
SGIX_video_source = 1
EXT_visual_rating = 1
EXT_import_context = 1
SGIX_fbconfig = 1
SGIX_pbuffer = 1
SGI_cushion = 1
SGIX_video_resize = 1
SGIX_dmbuffer = 1
SGIX_swap_group = 1
SGIX_swap_barrier = 1
SGIS_blended_overlay = 1
SGIS_shared_multisample = 1
SUN_get_transparent_index = 1
3DFX_multisample = 1
MESA_copy_sub_buffer = 1
MESA_pixmap_colormap = 1
MESA_release_buffers = 1
MESA_set_3dfx_mode = 1
SGIX_visual_select_group = 1
SGIX_hyperpipe = 1
GLXStringName enum:
VENDOR = 0x1
VERSION = 0x2
EXTENSIONS = 0x3
GLXErrorCode enum:
BAD_SCREEN = 1
BAD_ATTRIBUTE = 2
NO_EXTENSION = 3
BAD_VISUAL = 4
BAD_CONTEXT = 5
BAD_VALUE = 6
BAD_ENUM = 7
BAD_HYPERPIPE_CONFIG_SGIX = 91 # SGIX_hyperpipe
BAD_HYPERPIPE_SGIX = 92 # "
# Reserved bits in bitfields of various purposes
GLXDrawableTypeMask enum:
WINDOW_BIT = 0x00000001 # DRAWABLE_TYPE value
PIXMAP_BIT = 0x00000002 # "
PBUFFER_BIT = 0x00000004 # "
WINDOW_BIT_SGIX = 0x00000001 # DRAWABLE_TYPE_SGIX value
PIXMAP_BIT_SGIX = 0x00000002 # "
PBUFFER_BIT_SGIX = 0x00000004 # "
GLXRenderTypeMask enum:
RGBA_BIT = 0x00000001 # RENDER_TYPE value
COLOR_INDEX_BIT = 0x00000002 # "
RGBA_BIT_SGIX = 0x00000001 # RENDER_TYPE_SGIX value
COLOR_INDEX_BIT_SGIX = 0x00000002 # "
RGBA_FLOAT_BIT_ARB = 0x00000004 # RENDER_TYPE value (from ARB_fbconfig_float)
RGBA_UNSIGNED_FLOAT_BIT_EXT = 0x00000008 # RENDER_TYPE value (from EXT_fbconfig_packed_float)
GLXSyncType enum:
SYNC_FRAME_SGIX = 0x00000000 # ChannelRectSyncSGIX synctype
SYNC_SWAP_SGIX = 0x00000001 # "
GLXEventMask enum:
PBUFFER_CLOBBER_MASK = 0x08000000 # SelectEvent mask
BUFFER_CLOBBER_MASK_SGIX = 0x08000000 # SelectEventSGIX mask
BUFFER_SWAP_COMPLETE_INTEL_MASK = 0x04000000 # SelectEvent mask (for GLX_INTEL_swap_event)
GLXPbufferClobberMask enum:
FRONT_LEFT_BUFFER_BIT = 0x00000001 # PbufferClobberEvent mask
FRONT_RIGHT_BUFFER_BIT = 0x00000002 # "
BACK_LEFT_BUFFER_BIT = 0x00000004 # "
BACK_RIGHT_BUFFER_BIT = 0x00000008 # "
AUX_BUFFERS_BIT = 0x00000010 # "
DEPTH_BUFFER_BIT = 0x00000020 # "
STENCIL_BUFFER_BIT = 0x00000040 # "
ACCUM_BUFFER_BIT = 0x00000080 # "
FRONT_LEFT_BUFFER_BIT_SGIX = 0x00000001 # BufferClobberEventSGIX mask
FRONT_RIGHT_BUFFER_BIT_SGIX = 0x00000002 # "
BACK_LEFT_BUFFER_BIT_SGIX = 0x00000004 # "
BACK_RIGHT_BUFFER_BIT_SGIX = 0x00000008 # "
AUX_BUFFERS_BIT_SGIX = 0x00000010 # "
DEPTH_BUFFER_BIT_SGIX = 0x00000020 # "
STENCIL_BUFFER_BIT_SGIX = 0x00000040 # "
ACCUM_BUFFER_BIT_SGIX = 0x00000080 # "
SAMPLE_BUFFERS_BIT_SGIX = 0x00000100 # "
GLXHyperpipeTypeMask enum:
HYPERPIPE_DISPLAY_PIPE_SGIX = 0x00000001 # SGIX_hyperpipe
HYPERPIPE_RENDER_PIPE_SGIX = 0x00000002 # "
GLXHyperpipeAttrib enum:
PIPE_RECT_SGIX = 0x00000001 # SGIX_hyperpipe
PIPE_RECT_LIMITS_SGIX = 0x00000002 # "
HYPERPIPE_STEREO_SGIX = 0x00000003 # "
HYPERPIPE_PIXEL_AVERAGE_SGIX = 0x00000004 # "
GLXHyperpipeMisc enum:
HYPERPIPE_PIPE_NAME_LENGTH_SGIX = 80 # SGIX_hyperpipe
GLXBindToTextureTargetMask enum:
TEXTURE_1D_BIT_EXT = 0x00000001 # EXT_texture_from_pixmap
TEXTURE_2D_BIT_EXT = 0x00000002
TEXTURE_RECTANGLE_BIT_EXT = 0x00000004
# CONTEXT_FLAGS_ARB bits (shared with WGL and GL)
GLXContextFlags enum:
CONTEXT_DEBUG_BIT_ARB = 0x00000001 # ARB_create_context
CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = 0x00000002 # ARB_create_context
CONTEXT_ROBUST_ACCESS_BIT_ARB = 0x00000004 # ARB_create_context_robustness
# CONTEXT_PROFILE_MASK_ARB bits
GLXContextProfileMask enum:
CONTEXT_CORE_PROFILE_BIT_ARB = 0x00000001 # ARB_create_context_profile
CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = 0x00000002 # ARB_create_context_profile
CONTEXT_ES2_PROFILE_BIT_EXT = 0x00000004 # EXT_create_context_es2_profile
GLXAttribute enum:
USE_GL = 1 # Visual attributes
BUFFER_SIZE = 2 # "
LEVEL = 3 # "
RGBA = 4 # "
DOUBLEBUFFER = 5 # "
STEREO = 6 # "
AUX_BUFFERS = 7 # "
RED_SIZE = 8 # "
GREEN_SIZE = 9 # "
BLUE_SIZE = 10 # "
ALPHA_SIZE = 11 # "
DEPTH_SIZE = 12 # "
STENCIL_SIZE = 13 # "
ACCUM_RED_SIZE = 14 # "
ACCUM_GREEN_SIZE = 15 # "
ACCUM_BLUE_SIZE = 16 # "
ACCUM_ALPHA_SIZE = 17 # "
CONFIG_CAVEAT = 0x20 # "
X_VISUAL_TYPE = 0x22 # "
TRANSPARENT_TYPE = 0x23 # "
TRANSPARENT_INDEX_VALUE = 0x24 # "
TRANSPARENT_RED_VALUE = 0x25 # "
TRANSPARENT_GREEN_VALUE = 0x26 # "
TRANSPARENT_BLUE_VALUE = 0x27 # "
TRANSPARENT_ALPHA_VALUE = 0x28 # "
DONT_CARE = 0xFFFFFFFF # may be specified for ChooseFBConfig attributes
NONE = 0x8000 # several attribute values
SLOW_CONFIG = 0x8001 # CONFIG_CAVEAT attribute value
TRUE_COLOR = 0x8002 # X_VISUAL_TYPE attribute value
DIRECT_COLOR = 0x8003 # "
PSEUDO_COLOR = 0x8004 # "
STATIC_COLOR = 0x8005 # "
GRAY_SCALE = 0x8006 # "
STATIC_GRAY = 0x8007 # "
TRANSPARENT_RGB = 0x8008 # TRANSPARENT_TYPE attribute value
TRANSPARENT_INDEX = 0x8009 # "
VISUAL_ID = 0x800B # Context attribute
SCREEN = 0x800C # "
NON_CONFORMANT_CONFIG = 0x800D # CONFIG_CAVEAT attribute value
DRAWABLE_TYPE = 0x8010 # FBConfig attribute
RENDER_TYPE = 0x8011 # "
X_RENDERABLE = 0x8012 # "
FBCONFIG_ID = 0x8013 # "
RGBA_TYPE = 0x8014 # CreateNewContext render_type value
COLOR_INDEX_TYPE = 0x8015 # "
MAX_PBUFFER_WIDTH = 0x8016 # FBConfig attribute
MAX_PBUFFER_HEIGHT = 0x8017 # "
MAX_PBUFFER_PIXELS = 0x8018 # "
PRESERVED_CONTENTS = 0x801B # CreateGLXPbuffer attribute
LARGEST_PBUFFER = 0x801C # "
WIDTH = 0x801D # Drawable attribute
HEIGHT = 0x801E # "
EVENT_MASK = 0x801F # "
DAMAGED = 0x8020 # PbufferClobber event_type value
SAVED = 0x8021 # "
WINDOW = 0x8022 # PbufferClobber draw_type value
PBUFFER = 0x8023 # "
PBUFFER_HEIGHT = 0x8040 # CreateGLXPbuffer attribute
PBUFFER_WIDTH = 0x8041 # "
VISUAL_CAVEAT_EXT = 0x20 # Visual attribute
X_VISUAL_TYPE_EXT = 0x22 # "
TRANSPARENT_TYPE_EXT = 0x23 # "
TRANSPARENT_INDEX_VALUE_EXT = 0x24 # "
TRANSPARENT_RED_VALUE_EXT = 0x25 # "
TRANSPARENT_GREEN_VALUE_EXT = 0x26 # "
TRANSPARENT_BLUE_VALUE_EXT = 0x27 # "
TRANSPARENT_ALPHA_VALUE_EXT = 0x28 # "
NONE_EXT = 0x8000 # several EXT attribute values
SLOW_VISUAL_EXT = 0x8001 # VISUAL_CAVEAT_EXT attribute value
TRUE_COLOR_EXT = 0x8002 # X_VISUAL_TYPE_EXT attribute value
DIRECT_COLOR_EXT = 0x8003 # "
PSEUDO_COLOR_EXT = 0x8004 # "
STATIC_COLOR_EXT = 0x8005 # "
GRAY_SCALE_EXT = 0x8006 # "
STATIC_GRAY_EXT = 0x8007 # "
TRANSPARENT_RGB_EXT = 0x8008 # TRANSPARENT_TYPE_EXT attribute value
TRANSPARENT_INDEX_EXT = 0x8009 # "
SHARE_CONTEXT_EXT = 0x800A # QueryContextInfoEXT attribute
VISUAL_ID_EXT = 0x800B # "
SCREEN_EXT = 0x800C # "
NON_CONFORMANT_VISUAL_EXT = 0x800D # VISUAL_CAVEAT_EXT attribute value
DRAWABLE_TYPE_SGIX = 0x8010 # FBConfigSGIX attribute
RENDER_TYPE_SGIX = 0x8011 # "
X_RENDERABLE_SGIX = 0x8012 # "
FBCONFIG_ID_SGIX = 0x8013 # "
RGBA_TYPE_SGIX = 0x8014 # CreateContextWithConfigSGIX render_type value
COLOR_INDEX_TYPE_SGIX = 0x8015 # "
MAX_PBUFFER_WIDTH_SGIX = 0x8016 # FBConfigSGIX attribute
MAX_PBUFFER_HEIGHT_SGIX = 0x8017 # "
MAX_PBUFFER_PIXELS_SGIX = 0x8018 # "
OPTIMAL_PBUFFER_WIDTH_SGIX = 0x8019 # "
OPTIMAL_PBUFFER_HEIGHT_SGIX = 0x801A # "
PRESERVED_CONTENTS_SGIX = 0x801B # PbufferSGIX attribute
LARGEST_PBUFFER_SGIX = 0x801C # "
WIDTH_SGIX = 0x801D # "
HEIGHT_SGIX = 0x801E # "
EVENT_MASK_SGIX = 0x801F # "
DAMAGED_SGIX = 0x8020 # BufferClobberSGIX event_type value
SAVED_SGIX = 0x8021 # "
WINDOW_SGIX = 0x8022 # BufferClobberSGIX draw_type value
PBUFFER_SGIX = 0x8023 # "
DIGITAL_MEDIA_PBUFFER_SGIX = 0x8024 # PbufferSGIX attribute
BLENDED_RGBA_SGIS = 0x8025 # TRANSPARENT_TYPE_EXT attribute value
MULTISAMPLE_SUB_RECT_WIDTH_SGIS = 0x8026 # Visual attribute (shared_multisample)
MULTISAMPLE_SUB_RECT_HEIGHT_SGIS = 0x8027 # "
VISUAL_SELECT_GROUP_SGIX = 0x8028 # Visual attribute (visual_select_group)
HYPERPIPE_ID_SGIX = 0x8030 # Associated hyperpipe ID (SGIX_hyperpipe)
SAMPLE_BUFFERS_SGIS = 100000 # Visual attribute (SGIS_multisample)
SAMPLES_SGIS = 100001 # "
SAMPLE_BUFFERS_ARB = 100000 # Visual attribute (ARB_multisample - alias of SGIS_multisample)
SAMPLES_ARB = 100001 # "
SAMPLE_BUFFERS = 100000 # Visual attribute (GLX 1.4 core - alias of SGIS_multisample)
SAMPLES = 100001 # "
COVERAGE_SAMPLES_NV = 100001 # Visual attribute (NV_multisample_coverage - reuse SAMPLES_ARB)
###############################################################################
# AMD: 0x1F00-0x1F02 (additional; see below; equivalent to corresponding WGL/GL tokens)
###############################################################################
# ARB: 0x2070-0x209F
# Shared with WGL, synchronize create_context_* enums with wglenum.spec!
# Also includes a bitmask - see ContextFlags above
# ARB_create_context enum:
CONTEXT_MAJOR_VERSION_ARB = 0x2091
CONTEXT_MINOR_VERSION_ARB = 0x2092
# 0x2093 used for WGL_CONTEXT_LAYER_PLANE_ARB
CONTEXT_FLAGS_ARB = 0x2094
# 0x2095 collides with WGL_ERROR_INVALID_VERSION_ARB!
CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB = 0x2095
# 0x2096 used for WGL_ERROR_INVALID_PROFILE_ARB
# ARB_future_use: 0x2097-0x209F
###############################################################################
# NVIDIA: 0x20A0 - 0x219F (shared with WGL)
# NV_float_buffer enum:
FLOAT_COMPONENTS_NV = 0x20B0
# EXT_fbconfig_packed_float enum:
RGBA_UNSIGNED_FLOAT_TYPE_EXT = 0x20B1
# ARB_framebuffer_sRGB enum:
FRAMEBUFFER_SRGB_CAPABLE_ARB = 0x20B2
# EXT_framebuffer_sRGB enum:
FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x20B2
# NV_multisample_coverage enum:
COLOR_SAMPLES_NV = 0x20B3
# NV_future_use: 0x20B4-0x20B8
# ARB_fbconfig_float enum:
RGBA_FLOAT_TYPE_ARB = 0x20B9
# NV_future_use: 0x20BA-0x20C2
# NV_video_out enum:
VIDEO_OUT_COLOR_NV = 0x20C3
VIDEO_OUT_ALPHA_NV = 0x20C4
VIDEO_OUT_DEPTH_NV = 0x20C5
VIDEO_OUT_COLOR_AND_ALPHA_NV = 0x20C6
VIDEO_OUT_COLOR_AND_DEPTH_NV = 0x20C7
VIDEO_OUT_FRAME_NV = 0x20C8
VIDEO_OUT_FIELD_1_NV = 0x20C9
VIDEO_OUT_FIELD_2_NV = 0x20CA
VIDEO_OUT_STACKED_FIELDS_1_2_NV = 0x20CB
VIDEO_OUT_STACKED_FIELDS_2_1_NV = 0x20CC
# NV_video_capture enum:
DEVICE_ID_NV = 0x20CD
UNIQUE_ID_NV = 0x20CE
NUM_VIDEO_CAPTURE_SLOTS_NV = 0x20CF
# EXT_texture_from_pixmap enum:
BIND_TO_TEXTURE_RGB_EXT = 0x20D0
BIND_TO_TEXTURE_RGBA_EXT = 0x20D1
BIND_TO_MIPMAP_TEXTURE_EXT = 0x20D2
BIND_TO_TEXTURE_TARGETS_EXT = 0x20D3
Y_INVERTED_EXT = 0x20D4
TEXTURE_FORMAT_EXT = 0x20D5
TEXTURE_TARGET_EXT = 0x20D6
MIPMAP_TEXTURE_EXT = 0x20D7
TEXTURE_FORMAT_NONE_EXT = 0x20D8
TEXTURE_FORMAT_RGB_EXT = 0x20D9
TEXTURE_FORMAT_RGBA_EXT = 0x20DA
TEXTURE_1D_EXT = 0x20DB
TEXTURE_2D_EXT = 0x20DC
TEXTURE_RECTANGLE_EXT = 0x20DD
FRONT_LEFT_EXT = 0x20DE
FRONT_RIGHT_EXT = 0x20DF
BACK_LEFT_EXT = 0x20E0
BACK_RIGHT_EXT = 0x20E1
FRONT_EXT = GLX_FRONT_LEFT_EXT
BACK_EXT = GLX_BACK_LEFT_EXT
AUX0_EXT = 0x20E2
AUX1_EXT = 0x20E3
AUX2_EXT = 0x20E4
AUX3_EXT = 0x20E5
AUX4_EXT = 0x20E6
AUX5_EXT = 0x20E7
AUX6_EXT = 0x20E8
AUX7_EXT = 0x20E9
AUX8_EXT = 0x20EA
AUX9_EXT = 0x20EB
# NV_future_use: 0x20EC-0x20EF
NV_present_video enum:
NUM_VIDEO_SLOTS_NV = 0x20F0
EXT_swap_control enum:
SWAP_INTERVAL_EXT = 0x20F1
MAX_SWAP_INTERVAL_EXT = 0x20F2
# NV_future_use: 0x20F3-0x219F
###############################################################################
# AMD: 0x21A0-0x21AF
# Shared with WGL, synchronize with wglenum.spec!
# WGL extensions: 0x21A0-0x21A1
GLX_AMD_gpu_association enum:
GPU_VENDOR_AMD = 0x1F00
GPU_RENDERER_STRING_AMD = 0x1F01
GPU_OPENGL_VERSION_STRING_AMD = 0x1F02
GPU_FASTEST_TARGET_GPUS_AMD = 0x21A2
GPU_RAM_AMD = 0x21A3
GPU_CLOCK_AMD = 0x21A4
GPU_NUM_PIPES_AMD = 0x21A5
GPU_NUM_SIMD_AMD = 0x21A6
GPU_NUM_RB_AMD = 0x21A7
GPU_NUM_SPI_AMD = 0x21A8
# AMD_future_use: 0x21A9-0x21AF
###############################################################################
# MESA (not in a reserved block)
# MESA_set_3dfx_mode enum:
# 3DFX_WINDOW_MODE_MESA = 0x1
# 3DFX_FULLSCREEN_MODE_MESA = 0x2
###############################################################################
# SGI_future_use: 0x8029-0x802F
# SGIX_hyperpipe adds attribute name HYPERPIPE_ID_SGIX = 0x8030
# SGI_future_use: 0x8031-0x803F
###############################################################################
# ARB_future_use: 0x8042-0x804F
###############################################################################
# 3DFX: 0x8050-0x805F
# 3DFX_multisample enum:
# SAMPLE_BUFFERS_3DFX = 0x8050
# SAMPLES_3DFX = 0x8051
###############################################################################
# OML: 0x8060-0x806F
# OML_swap_method enum:
# SWAP_METHOD_OML = 0x8060
# SWAP_EXCHANGE_OML = 0x8061
# SWAP_COPY_OML = 0x8062
# SWAP_UNDEFINED_OML = 0x8063
# OML_future_use: 0x8064-0x806F
###############################################################################
# NVIDIA: 0x8070 - 0x816F
NVIDIA_future_use: 0x8070-0x816F
###############################################################################
# SUN: 0x8170 - 0x817F
SUN_future_use: 0x8170-0x817F
###############################################################################
# INTEL: 0x8180 - 0x818F
# INTEL_swap_event: 0x8180-0x8182
# EXCHANGE_COMPLETE_INTEL = 0x8180
# COPY_COMPLETE_INTEL = 0x8181
# FLIP_COMPLETE_INTEL = 0x8182
INTEL_future_use: 0x8183-0x818F
###############################################################################
### Please remember that new GLX enum allocations must be obtained by request
### to the Khronos API Registrar (see comments at the top of this file)
### File requests in the Khronos Bugzilla, OpenGL project, Registry component.
### Also note that some GLX enum values are shared with GL and WGL, and
### new ranges should be allocated with such overlaps in mind.
###############################################################################
# Any_vendor_future_use: 0x8190-0x824F
###############################################################################
# ARB: 0x8250-0x826F
# No additional values should be used from this range, which includes
# the range used by GL_ARB_robustness rounded up to multiples of 16.
# Also includes a bitmask - see ContextFlags above
# All values are shared with GLX and GL
GLX_ARB_create_context_robustness enum:
LOSE_CONTEXT_ON_RESET_ARB = 0x8252 # shared with GL_ARB_robustness
CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256 # shared with GL_ARB_robustness
NO_RESET_NOTIFICATION_ARB = 0x8261 # shared with GL_ARB_robustness
# Any_vendor_future_use: 0x8270-0x9125
# Also includes a bitmask - see ContextProfileMask above
# All values are shared with GLX and GL
ARB_create_context_profile enum:
CONTEXT_PROFILE_MASK_ARB = 0x9126
# Any_vendor_future_use: 0x9127-0xFFFF
#
# This range must be the last range in the file. To generate a new
# range, allocate multiples of 16 from the beginning of the first
# Any_vendor_future_use range and update glxenum.spec, glxenumext.spec,
# and extensions.reserved.

View file

@ -1,565 +0,0 @@
# Copyright (c) 1991-2005 Silicon Graphics, Inc. All Rights Reserved.
# Copyright (c) 2006-2010 The Khronos Group, Inc.
#
# This document is licensed under the SGI Free Software B License Version
# 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
#
# $Revision: 12183 $ on $Date: 2010-08-06 02:53:05 -0700 (Fri, 06 Aug 2010) $
# List of GLX enumerants for glxext.h header
#
# This is NOT the master GLX enumerant registry (glxenum.spec).
#
# Unlike glxenum.spec, glxenumext.spec is
# (1) In order by extension number.
# (2) Includes only GLX extensions and GLX 1.3/1.4 core enumerants,
# since it's assumed all <glx.h> today support at least GLX 1.2.
# (3) Has no 'Extensions' section, since enums are always
# conditionally protected against multiple definition
# by glextenum.pl.
# (4) Is processed by glextenum.pl, which has evolved
# from enum.pl - should merge back into one script.
# glxext.h version number - this should be automatically updated,
# when changing either enum or template spec files.
passthru:
passthru: /* Header file version number, required by OpenGL ABI for Linux */
passthru: /* glxext.h last updated 2010/08/06 */
passthru: /* Current version at http://www.opengl.org/registry/ */
passthru: #define GLX_GLXEXT_VERSION 32
###############################################################################
#
# GLX 1.3 enums
#
###############################################################################
VERSION_1_3 enum:
WINDOW_BIT = 0x00000001 # DRAWABLE_TYPE value
PIXMAP_BIT = 0x00000002 # "
PBUFFER_BIT = 0x00000004 # "
RGBA_BIT = 0x00000001 # RENDER_TYPE value
COLOR_INDEX_BIT = 0x00000002 # "
PBUFFER_CLOBBER_MASK = 0x08000000 # SelectEvent mask
FRONT_LEFT_BUFFER_BIT = 0x00000001 # PbufferClobberEvent mask
FRONT_RIGHT_BUFFER_BIT = 0x00000002 # "
BACK_LEFT_BUFFER_BIT = 0x00000004 # "
BACK_RIGHT_BUFFER_BIT = 0x00000008 # "
AUX_BUFFERS_BIT = 0x00000010 # "
DEPTH_BUFFER_BIT = 0x00000020 # "
STENCIL_BUFFER_BIT = 0x00000040 # "
ACCUM_BUFFER_BIT = 0x00000080 # "
CONFIG_CAVEAT = 0x20 # "
X_VISUAL_TYPE = 0x22 # "
TRANSPARENT_TYPE = 0x23 # "
TRANSPARENT_INDEX_VALUE = 0x24 # "
TRANSPARENT_RED_VALUE = 0x25 # "
TRANSPARENT_GREEN_VALUE = 0x26 # "
TRANSPARENT_BLUE_VALUE = 0x27 # "
TRANSPARENT_ALPHA_VALUE = 0x28 # "
DONT_CARE = 0xFFFFFFFF # may be specified for ChooseFBConfig attributes
NONE = 0x8000 # several attribute values
SLOW_CONFIG = 0x8001 # CONFIG_CAVEAT attribute value
TRUE_COLOR = 0x8002 # X_VISUAL_TYPE attribute value
DIRECT_COLOR = 0x8003 # "
PSEUDO_COLOR = 0x8004 # "
STATIC_COLOR = 0x8005 # "
GRAY_SCALE = 0x8006 # "
STATIC_GRAY = 0x8007 # "
TRANSPARENT_RGB = 0x8008 # TRANSPARENT_TYPE attribute value
TRANSPARENT_INDEX = 0x8009 # "
VISUAL_ID = 0x800B # Context attribute
SCREEN = 0x800C # "
NON_CONFORMANT_CONFIG = 0x800D # CONFIG_CAVEAT attribute value
DRAWABLE_TYPE = 0x8010 # FBConfig attribute
RENDER_TYPE = 0x8011 # "
X_RENDERABLE = 0x8012 # "
FBCONFIG_ID = 0x8013 # "
RGBA_TYPE = 0x8014 # CreateNewContext render_type value
COLOR_INDEX_TYPE = 0x8015 # "
MAX_PBUFFER_WIDTH = 0x8016 # FBConfig attribute
MAX_PBUFFER_HEIGHT = 0x8017 # "
MAX_PBUFFER_PIXELS = 0x8018 # "
PRESERVED_CONTENTS = 0x801B # CreateGLXPbuffer attribute
LARGEST_PBUFFER = 0x801C # "
WIDTH = 0x801D # Drawable attribute
HEIGHT = 0x801E # "
EVENT_MASK = 0x801F # "
DAMAGED = 0x8020 # PbufferClobber event_type value
SAVED = 0x8021 # "
WINDOW = 0x8022 # PbufferClobber draw_type value
PBUFFER = 0x8023 # "
PBUFFER_HEIGHT = 0x8040 # CreateGLXPbuffer attribute
PBUFFER_WIDTH = 0x8041 # "
###############################################################################
#
# GLX 1.4 enums
#
###############################################################################
VERSION_1_4 enum:
SAMPLE_BUFFERS = 100000
SAMPLES = 100001
###############################################################################
#
# ARB GLX extensions, in ARB extension order
#
###############################################################################
###############################################################################
# No new tokens
# ARB Extension #2
ARB_get_proc_address enum:
###############################################################################
# ARB Extension #5
ARB_multisample enum:
SAMPLE_BUFFERS_ARB = 100000
SAMPLES_ARB = 100001
###############################################################################
# ARB Extension #28
ARB_vertex_buffer_object enum:
CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB = 0x2095
###############################################################################
# ARB Extension #39
ARB_fbconfig_float enum:
RGBA_FLOAT_TYPE_ARB = 0x20B9
RGBA_FLOAT_BIT_ARB = 0x00000004
###############################################################################
# ARB Extension #46
ARB_framebuffer_sRGB enum:
FRAMEBUFFER_SRGB_CAPABLE_ARB = 0x20B2
###############################################################################
# ARB Extension #56
ARB_create_context enum:
CONTEXT_DEBUG_BIT_ARB = 0x00000001
CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = 0x00000002
CONTEXT_MAJOR_VERSION_ARB = 0x2091
CONTEXT_MINOR_VERSION_ARB = 0x2092
CONTEXT_FLAGS_ARB = 0x2094
###############################################################################
# ARB Extension #75
ARB_create_context_profile enum:
CONTEXT_CORE_PROFILE_BIT_ARB = 0x00000001
CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = 0x00000002
CONTEXT_PROFILE_MASK_ARB = 0x9126
###############################################################################
# ARB Extension #101
# All values are shared with GLX and GL
ARB_create_context_robustness enum:
CONTEXT_ROBUST_ACCESS_BIT_ARB = 0x00000004
LOSE_CONTEXT_ON_RESET_ARB = 0x8252
CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256
NO_RESET_NOTIFICATION_ARB = 0x8261
###############################################################################
#
# non-ARB GLX extensions, in registry order
#
###############################################################################
###############################################################################
# Unfortunately, the SGIS_multisample specification and the IRIX
# implementation are inconsistent; the spec assigns enums as follows.
# ARB_multisample reuses these enums with ARB suffixes, and it can't
# be changed at this point. So in the interest of supporting both
# extensions on non-IRIX platforms, the SGIS enums will be defined
# here as originally specified.
# Extension #25
SGIS_multisample enum:
SAMPLE_BUFFERS_SGIS = 100000
SAMPLES_SGIS = 100001
###############################################################################
# Extension #28
EXT_visual_info enum:
X_VISUAL_TYPE_EXT = 0x22
TRANSPARENT_TYPE_EXT = 0x23
TRANSPARENT_INDEX_VALUE_EXT = 0x24
TRANSPARENT_RED_VALUE_EXT = 0x25
TRANSPARENT_GREEN_VALUE_EXT = 0x26
TRANSPARENT_BLUE_VALUE_EXT = 0x27
TRANSPARENT_ALPHA_VALUE_EXT = 0x28
NONE_EXT = 0x8000
TRUE_COLOR_EXT = 0x8002
DIRECT_COLOR_EXT = 0x8003
PSEUDO_COLOR_EXT = 0x8004
STATIC_COLOR_EXT = 0x8005
GRAY_SCALE_EXT = 0x8006
STATIC_GRAY_EXT = 0x8007
TRANSPARENT_RGB_EXT = 0x8008
TRANSPARENT_INDEX_EXT = 0x8009
###############################################################################
# No new tokens
# Extension #40
SGI_swap_control enum:
###############################################################################
# No new tokens
# Extension #41
SGI_video_sync enum:
###############################################################################
# No new tokens
# Extension #42
SGI_make_current_read enum:
###############################################################################
# No new tokens
# Extension #43
SGIX_video_source enum:
###############################################################################
# Extension #44
EXT_visual_rating enum:
VISUAL_CAVEAT_EXT = 0x20
SLOW_VISUAL_EXT = 0x8001
NON_CONFORMANT_VISUAL_EXT = 0x800D
use EXT_visual_info NONE_EXT
###############################################################################
# Extension #47
EXT_import_context enum:
SHARE_CONTEXT_EXT = 0x800A
VISUAL_ID_EXT = 0x800B
SCREEN_EXT = 0x800C
###############################################################################
# Extension #49
SGIX_fbconfig enum:
WINDOW_BIT_SGIX = 0x00000001
PIXMAP_BIT_SGIX = 0x00000002
RGBA_BIT_SGIX = 0x00000001
COLOR_INDEX_BIT_SGIX = 0x00000002
DRAWABLE_TYPE_SGIX = 0x8010
RENDER_TYPE_SGIX = 0x8011
X_RENDERABLE_SGIX = 0x8012
FBCONFIG_ID_SGIX = 0x8013
RGBA_TYPE_SGIX = 0x8014
COLOR_INDEX_TYPE_SGIX = 0x8015
use EXT_import_context SCREEN_EXT
###############################################################################
# Extension #50
SGIX_pbuffer enum:
PBUFFER_BIT_SGIX = 0x00000004
BUFFER_CLOBBER_MASK_SGIX = 0x08000000
FRONT_LEFT_BUFFER_BIT_SGIX = 0x00000001
FRONT_RIGHT_BUFFER_BIT_SGIX = 0x00000002
BACK_LEFT_BUFFER_BIT_SGIX = 0x00000004
BACK_RIGHT_BUFFER_BIT_SGIX = 0x00000008
AUX_BUFFERS_BIT_SGIX = 0x00000010
DEPTH_BUFFER_BIT_SGIX = 0x00000020
STENCIL_BUFFER_BIT_SGIX = 0x00000040
ACCUM_BUFFER_BIT_SGIX = 0x00000080
SAMPLE_BUFFERS_BIT_SGIX = 0x00000100
MAX_PBUFFER_WIDTH_SGIX = 0x8016
MAX_PBUFFER_HEIGHT_SGIX = 0x8017
MAX_PBUFFER_PIXELS_SGIX = 0x8018
OPTIMAL_PBUFFER_WIDTH_SGIX = 0x8019
OPTIMAL_PBUFFER_HEIGHT_SGIX = 0x801A
PRESERVED_CONTENTS_SGIX = 0x801B
LARGEST_PBUFFER_SGIX = 0x801C
WIDTH_SGIX = 0x801D
HEIGHT_SGIX = 0x801E
EVENT_MASK_SGIX = 0x801F
DAMAGED_SGIX = 0x8020
SAVED_SGIX = 0x8021
WINDOW_SGIX = 0x8022
PBUFFER_SGIX = 0x8023
###############################################################################
# Extension #62
SGI_cushion enum:
# CUSHION_BUFFERS_SGI ????
###############################################################################
# Extension #83
SGIX_video_resize enum:
SYNC_FRAME_SGIX = 0x00000000
SYNC_SWAP_SGIX = 0x00000001
###############################################################################
# Extension #86
SGIX_dmbuffer enum:
DIGITAL_MEDIA_PBUFFER_SGIX = 0x8024
###############################################################################
# No new tokens
# Extension #91
SGIX_swap_group enum:
###############################################################################
# No new tokens
# Extension #92
SGIX_swap_barrier enum:
###############################################################################
# Extension #142
SGIS_blended_overlay enum:
BLENDED_RGBA_SGIS = 0x8025
###############################################################################
# Extension #143
SGIS_shared_multisample enum:
MULTISAMPLE_SUB_RECT_WIDTH_SGIS = 0x8026
MULTISAMPLE_SUB_RECT_HEIGHT_SGIS = 0x8027
###############################################################################
# No new tokens
# Extension #183
SUN_get_transparent_index enum:
###############################################################################
# Extension #207
3DFX_multisample enum:
SAMPLE_BUFFERS_3DFX = 0x8050
SAMPLES_3DFX = 0x8051
###############################################################################
# No new tokens
# Extension #215
MESA_copy_sub_buffer enum:
###############################################################################
# No new tokens
# Extension #216
MESA_pixmap_colormap enum:
###############################################################################
# No new tokens
# Extension #217
MESA_release_buffers enum:
###############################################################################
# Extension #218
MESA_set_3dfx_mode enum:
3DFX_WINDOW_MODE_MESA = 0x1
3DFX_FULLSCREEN_MODE_MESA = 0x2
###############################################################################
# Extension #234
SGIX_visual_select_group enum:
VISUAL_SELECT_GROUP_SGIX = 0x8028
###############################################################################
# Extension #237
OML_swap_method enum:
SWAP_METHOD_OML = 0x8060
SWAP_EXCHANGE_OML = 0x8061
SWAP_COPY_OML = 0x8062
SWAP_UNDEFINED_OML = 0x8063
###############################################################################
# No new tokens
# Extension #238
OML_sync_control enum:
###############################################################################
# Extension #281
NV_float_buffer enum:
FLOAT_COMPONENTS_NV = 0x20B0
###############################################################################
# Extension #307
SGIX_hyperpipe enum:
HYPERPIPE_PIPE_NAME_LENGTH_SGIX = 80
BAD_HYPERPIPE_CONFIG_SGIX = 91
BAD_HYPERPIPE_SGIX = 92
HYPERPIPE_DISPLAY_PIPE_SGIX = 0x00000001
HYPERPIPE_RENDER_PIPE_SGIX = 0x00000002
PIPE_RECT_SGIX = 0x00000001
PIPE_RECT_LIMITS_SGIX = 0x00000002
HYPERPIPE_STEREO_SGIX = 0x00000003
HYPERPIPE_PIXEL_AVERAGE_SGIX = 0x00000004
HYPERPIPE_ID_SGIX = 0x8030
###############################################################################
# No new tokens
# Extension #308
MESA_agp_offset enum:
###############################################################################
# Extension #328
EXT_fbconfig_packed_float enum:
RGBA_UNSIGNED_FLOAT_TYPE_EXT = 0x20B1
RGBA_UNSIGNED_FLOAT_BIT_EXT = 0x00000008
###############################################################################
# Extension #337
EXT_framebuffer_sRGB enum:
FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x20B2
###############################################################################
# Extension #344
EXT_texture_from_pixmap enum:
TEXTURE_1D_BIT_EXT = 0x00000001
TEXTURE_2D_BIT_EXT = 0x00000002
TEXTURE_RECTANGLE_BIT_EXT = 0x00000004
BIND_TO_TEXTURE_RGB_EXT = 0x20D0
BIND_TO_TEXTURE_RGBA_EXT = 0x20D1
BIND_TO_MIPMAP_TEXTURE_EXT = 0x20D2
BIND_TO_TEXTURE_TARGETS_EXT = 0x20D3
Y_INVERTED_EXT = 0x20D4
TEXTURE_FORMAT_EXT = 0x20D5
TEXTURE_TARGET_EXT = 0x20D6
MIPMAP_TEXTURE_EXT = 0x20D7
TEXTURE_FORMAT_NONE_EXT = 0x20D8
TEXTURE_FORMAT_RGB_EXT = 0x20D9
TEXTURE_FORMAT_RGBA_EXT = 0x20DA
TEXTURE_1D_EXT = 0x20DB
TEXTURE_2D_EXT = 0x20DC
TEXTURE_RECTANGLE_EXT = 0x20DD
FRONT_LEFT_EXT = 0x20DE
FRONT_RIGHT_EXT = 0x20DF
BACK_LEFT_EXT = 0x20E0
BACK_RIGHT_EXT = 0x20E1
FRONT_EXT = GLX_FRONT_LEFT_EXT
BACK_EXT = GLX_BACK_LEFT_EXT
AUX0_EXT = 0x20E2
AUX1_EXT = 0x20E3
AUX2_EXT = 0x20E4
AUX3_EXT = 0x20E5
AUX4_EXT = 0x20E6
AUX5_EXT = 0x20E7
AUX6_EXT = 0x20E8
AUX7_EXT = 0x20E9
AUX8_EXT = 0x20EA
AUX9_EXT = 0x20EB
###############################################################################
# Extension #347
NV_present_video enum:
NUM_VIDEO_SLOTS_NV = 0x20F0
###############################################################################
# Extension #348
NV_video_out enum:
VIDEO_OUT_COLOR_NV = 0x20C3
VIDEO_OUT_ALPHA_NV = 0x20C4
VIDEO_OUT_DEPTH_NV = 0x20C5
VIDEO_OUT_COLOR_AND_ALPHA_NV = 0x20C6
VIDEO_OUT_COLOR_AND_DEPTH_NV = 0x20C7
VIDEO_OUT_FRAME_NV = 0x20C8
VIDEO_OUT_FIELD_1_NV = 0x20C9
VIDEO_OUT_FIELD_2_NV = 0x20CA
VIDEO_OUT_STACKED_FIELDS_1_2_NV = 0x20CB
VIDEO_OUT_STACKED_FIELDS_2_1_NV = 0x20CC
###############################################################################
# No new tokens
# Extension #350
NV_swap_group enum:
###############################################################################
# Extension #374
NV_video_capture enum:
DEVICE_ID_NV = 0x20CD
UNIQUE_ID_NV = 0x20CE
NUM_VIDEO_CAPTURE_SLOTS_NV = 0x20CF
###############################################################################
# Extension #375
EXT_swap_control enum:
SWAP_INTERVAL_EXT = 0x20F1
MAX_SWAP_INTERVAL_EXT = 0x20F2
###############################################################################
# No new tokens
# Extension #376
NV_copy_image enum:
###############################################################################
# Extension #384
INTEL_swap_event enum:
BUFFER_SWAP_COMPLETE_INTEL_MASK = 0x04000000
EXCHANGE_COMPLETE_INTEL = 0x8180
COPY_COMPLETE_INTEL = 0x8181
FLIP_COMPLETE_INTEL = 0x8182
###############################################################################
# Extension #393
NV_multisample_coverage enum:
COVERAGE_SAMPLES_NV = 100001
COLOR_SAMPLES_NV = 0x20B3
###############################################################################
# Extension #398
AMD_gpu_association enum:
GPU_VENDOR_AMD = 0x1F00
GPU_RENDERER_STRING_AMD = 0x1F01
GPU_OPENGL_VERSION_STRING_AMD = 0x1F02
GPU_FASTEST_TARGET_GPUS_AMD = 0x21A2
GPU_RAM_AMD = 0x21A3
GPU_CLOCK_AMD = 0x21A4
GPU_NUM_PIPES_AMD = 0x21A5
GPU_NUM_SIMD_AMD = 0x21A6
GPU_NUM_RB_AMD = 0x21A7
GPU_NUM_SPI_AMD = 0x21A8
###############################################################################
# Extension #399
# All values are shared with WGL and GL
EXT_create_context_es2_profile enum:
CONTEXT_ES2_PROFILE_BIT_EXT = 0x00000004

File diff suppressed because it is too large Load diff

View file

@ -1,4 +0,0 @@
for f in enum.spec enumext.spec gl.spec gl.tm glx.spec glxenum.spec glxenumext.spec glxext.spec ; do
curl -LO http://www.opengl.org/registry/api/$f
done