mirror of
https://github.com/Perlmint/glew-cmake.git
synced 2024-11-30 10:27:09 +00:00
added support for GL_ARB_vertex_shader, GL_ARB_fragment_shader, and GL_ARB_shader_objects
git-svn-id: https://glew.svn.sourceforge.net/svnroot/glew/trunk/glew@132 783a27ee-832a-0410-bc00-9f386506c6dd
This commit is contained in:
parent
c3bf8d8370
commit
32a42fe06a
@ -45,7 +45,7 @@ my %typemap = (
|
|||||||
ushort => "GLushort",
|
ushort => "GLushort",
|
||||||
DMbuffer => "void *",
|
DMbuffer => "void *",
|
||||||
|
|
||||||
# ARB VBO introduces this, no idea how to handle it properly. The spec
|
# ARB VBO introduces these, no idea how to handle them properly. The spec
|
||||||
# file babbles about how great this will be on 64 bit systems, but doesn't
|
# file babbles about how great this will be on 64 bit systems, but doesn't
|
||||||
# actually say how to define this nor how to detect that this has been
|
# actually say how to define this nor how to detect that this has been
|
||||||
# defined (i.e., is this tied to the VBO spec or not?). For now I'll just
|
# defined (i.e., is this tied to the VBO spec or not?). For now I'll just
|
||||||
@ -54,6 +54,11 @@ my %typemap = (
|
|||||||
sizeiptrARB => "GLsizeiptrARB",
|
sizeiptrARB => "GLsizeiptrARB",
|
||||||
intptrARB => "GLintptrARB",
|
intptrARB => "GLintptrARB",
|
||||||
|
|
||||||
|
# ARB shader objects introduces these, charARB is at least 8 bits,
|
||||||
|
# handleARB is at least 32 bits
|
||||||
|
charARB => "GLcharARB",
|
||||||
|
handleARB => "GLhandleARB",
|
||||||
|
|
||||||
# GLX 1.3 defines new types which might not be available at compile time
|
# GLX 1.3 defines new types which might not be available at compile time
|
||||||
|
|
||||||
#GLXFBConfig => "void*",
|
#GLXFBConfig => "void*",
|
||||||
|
@ -17,10 +17,10 @@ if [ ! -d $1 ] ; then
|
|||||||
grep -v EXT $1/GL_NV_texture_compression_vtc > tmp; \
|
grep -v EXT $1/GL_NV_texture_compression_vtc > tmp; \
|
||||||
mv tmp $1/GL_NV_texture_compression_vtc
|
mv tmp $1/GL_NV_texture_compression_vtc
|
||||||
# remove duplicates from GL_ARB_vertex_program and GL_ARB_fragment_program
|
# remove duplicates from GL_ARB_vertex_program and GL_ARB_fragment_program
|
||||||
grep -v -f $1/GL_ARB_vertex_program $1/GL_ARB_fragment_program > tmp; \
|
grep -v -F -f $1/GL_ARB_vertex_program $1/GL_ARB_fragment_program > tmp; \
|
||||||
mv tmp $1/GL_ARB_fragment_program
|
mv tmp $1/GL_ARB_fragment_program
|
||||||
# remove duplicates from GLX_EXT_visual_rating and GLX_EXT_visual_info
|
# remove duplicates from GLX_EXT_visual_rating and GLX_EXT_visual_info
|
||||||
grep -v -f $1/GLX_EXT_visual_info $1/GLX_EXT_visual_rating > tmp; \
|
grep -v -F -f $1/GLX_EXT_visual_info $1/GLX_EXT_visual_rating > tmp; \
|
||||||
mv tmp $1/GLX_EXT_visual_rating
|
mv tmp $1/GLX_EXT_visual_rating
|
||||||
# fix GL_NV_occlusion_query and GL_HP_occlusion_test
|
# fix GL_NV_occlusion_query and GL_HP_occlusion_test
|
||||||
grep -v '_HP' $1/GL_NV_occlusion_query > tmp; \
|
grep -v '_HP' $1/GL_NV_occlusion_query > tmp; \
|
||||||
@ -55,4 +55,37 @@ if [ ! -d $1 ] ; then
|
|||||||
echo -e "\tDECLARE_HANDLE(HPBUFFEREXT);" >> $1/WGL_EXT_pbuffer
|
echo -e "\tDECLARE_HANDLE(HPBUFFEREXT);" >> $1/WGL_EXT_pbuffer
|
||||||
# get rid of GL_SUN_multi_draw_arrays
|
# get rid of GL_SUN_multi_draw_arrays
|
||||||
rm -f $1/GL_SUN_multi_draw_arrays
|
rm -f $1/GL_SUN_multi_draw_arrays
|
||||||
|
# change variable names in GL_ARB_vertex_shader
|
||||||
|
sed -i -e 's/v0/x/g' $1/GL_ARB_vertex_shader
|
||||||
|
sed -i -e 's/v1/y/g' $1/GL_ARB_vertex_shader
|
||||||
|
sed -i -e 's/v2/z/g' $1/GL_ARB_vertex_shader
|
||||||
|
sed -i -e 's/v3/w/g' $1/GL_ARB_vertex_shader
|
||||||
|
# remove triplicates in GL_ARB_shader_objects, GL_ARB_fragment_shader,
|
||||||
|
# and GL_ARB_vertex_shader
|
||||||
|
grep -v -F -f $1/GL_ARB_shader_objects $1/GL_ARB_fragment_shader > tmp; \
|
||||||
|
mv tmp $1/GL_ARB_fragment_shader
|
||||||
|
grep -v -F -f $1/GL_ARB_shader_objects $1/GL_ARB_vertex_shader > tmp; \
|
||||||
|
mv tmp $1/GL_ARB_vertex_shader
|
||||||
|
# remove duplicates in GL_ARB_vertex_program and GL_ARB_vertex_shader
|
||||||
|
grep -v -F -f $1/GL_ARB_vertex_program $1/GL_ARB_vertex_shader > tmp; \
|
||||||
|
mv tmp $1/GL_ARB_vertex_shader
|
||||||
|
# remove triplicates in GL_ARB_fragment_program, GL_ARB_fragment_shader,
|
||||||
|
# and GL_ARB_vertex_shader
|
||||||
|
grep -v -F -f $1/GL_ARB_fragment_program $1/GL_ARB_fragment_shader > tmp; \
|
||||||
|
mv tmp $1/GL_ARB_fragment_shader
|
||||||
|
grep -v -F -f $1/GL_ARB_fragment_program $1/GL_ARB_vertex_shader > tmp; \
|
||||||
|
mv tmp $1/GL_ARB_vertex_shader
|
||||||
|
# fix bugs in GL_ARB_vertex_shader
|
||||||
|
grep -v "GL_FLOAT" $1/GL_ARB_vertex_shader > tmp; \
|
||||||
|
mv tmp $1/GL_ARB_vertex_shader
|
||||||
|
sed -i -e 's/handle /GLhandleARB /g' $1/GL_ARB_vertex_shader
|
||||||
|
# fix bugs in GL_ARB_shader_objects
|
||||||
|
grep -v "GL_FLOAT" $1/GL_ARB_shader_objects > tmp; \
|
||||||
|
mv tmp $1/GL_ARB_shader_objects
|
||||||
|
grep -v "GL_INT" $1/GL_ARB_shader_objects > tmp; \
|
||||||
|
mv tmp $1/GL_ARB_shader_objects
|
||||||
|
# add typedefs to GL_ARB_shader_objects
|
||||||
|
echo -e "\ttypedef char GLcharARB" >> $1/GL_ARB_shader_objects
|
||||||
|
echo -e "\ttypedef int GLhandleARB" >> $1/GL_ARB_shader_objects
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -39,13 +39,15 @@
|
|||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
# define glewGetProcAddress(name) wglGetProcAddress(name)
|
# define glewGetProcAddress(name) wglGetProcAddress(name)
|
||||||
#else
|
#else
|
||||||
#ifdef __APPLE__
|
# ifdef __APPLE__
|
||||||
# define glewGetProcAddress(name) NSGLGetProcAddress(name)
|
# define glewGetProcAddress(name) NSGLGetProcAddress(name)
|
||||||
#else
|
# else
|
||||||
#ifdef __sgi
|
# ifdef __sgi
|
||||||
# define glewGetProcAddress(name) dlGetProcAddress(name)
|
# define glewGetProcAddress(name) dlGetProcAddress(name)
|
||||||
#else /* __linux */
|
# else /* __linux */
|
||||||
# define glewGetProcAddress(name) (*glXGetProcAddressARB)(name)
|
# define glewGetProcAddress(name) (*glXGetProcAddressARB)(name)
|
||||||
|
# endif
|
||||||
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
|
Loading…
Reference in New Issue
Block a user