diff options
author | Sven Gothel <[email protected]> | 2010-08-24 02:39:14 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2010-08-24 02:39:14 +0200 |
commit | ca119c97340caf325cd682c5fdbe8f794a35ac0e (patch) | |
tree | 3ad60aff37fe6e6167db14c3f3f4fcbf36e6a535 /make/config/jogl/make-glextension-depignore.sh | |
parent | 8d55c437547a697b7d0bd4dd81b6669209cf912f (diff) |
Add OpenGL 3.3, 4.0 and 4.1 language mapping.
- Update header:
- GL/glext.h to khronos 2010-08-03
- GL3/gl3.h to khronos 2010-08-03
- Move platform code to
GL/glplatform.h
GL3/glplatform.h
- Unify 64bit typedefs: gl-64bit-types.h
- Move GL 3.[123] and 4.[01] complete subsumed extension
enums and functions into their extension spec and just reference them.
This ensures proper extension availability
via lower OpenGL profiles, hence a proper GL2GL3 interface.
- GL3/GL4 cleanup:
- make-glextension-depignore.sh:
determine required GL version for extensions
for proper positioning, ie GL2GL3 or GL3 or GL4
via gluegen IgnoreExtension commands.
- use ARB_ES2_compatibility for common GL2ES2 methods,
if available
- consolidated gl2-gl4 subsumed extension to gl-common.cfg
- Missing GL3/GL4 Functions:
glMultiDrawElementsBaseVertex
glDebugMessageCallbackARB
glDebugMessageCallbackAMD
- TODO (new feature integration):
- ARB_ES2_compatibility / ARB_get_program_binary for com/jogamp/opengl/util/glsl, ie
- store binaries com/jogamp/opengl/util/glsl/sdk/CompileShader*
- query supported binary formats (enums ?)
- optional prio binaries
- ARB_ES2_compatibility, if available GLES2/GL2ES12 would be available
- ARB_separate_shader_objects for com/jogamp/opengl/util/glsl, ie
- swizzle vertex/fragment shader in programs
- ..
Diffstat (limited to 'make/config/jogl/make-glextension-depignore.sh')
-rw-r--r-- | make/config/jogl/make-glextension-depignore.sh | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/make/config/jogl/make-glextension-depignore.sh b/make/config/jogl/make-glextension-depignore.sh new file mode 100644 index 000000000..98db66a84 --- /dev/null +++ b/make/config/jogl/make-glextension-depignore.sh @@ -0,0 +1,70 @@ +#!/bin/bash + +thisdir=`pwd` +registry=/data/docs/ComputerIT/3D_AV_GFX/gl/registry/specs +classdirpos=9 +dirdep=$thisdir/tmp_glext_dep + +gl3ignores=$thisdir/gl-if-gl3-ignores.cfg +gl4ignores=$thisdir/gl-if-gl4-ignores.cfg + +rm -rf $dirdep +mkdir -p $dirdep + +cd $registry + +# We allow OpenGL 3.0 within GL2 +grep -RIl "^[ \t]*OpenGL 3\.[1234] is required" . > $dirdep/ext-req-3_x.txt +grep -RIl "^[ \t]*OpenGL 3\.[1234] and GLSL .* are required" . >> $dirdep/ext-req-3_x.txt +grep -RIl "^[ \t]*OpenGL 4\.. is required" . > $dirdep/ext-req-4_x.txt +grep -RIl "^[ \t]*OpenGL 4\.. and GLSL .* are required" . >> $dirdep/ext-req-4_x.txt + +cd $thisdir + +function dump_ignore_ext() { + infile=$1 + for i in `cat $infile` ; do + class=`echo $i | awk -F '/' ' { print \$2 } ' ` + extname="GL_"$class"_"`basename $i .txt` + echo IgnoreExtension $extname + done +} + +function dump_ignore_header() { + echo "#" + echo "# Generated Configuration File" + echo "# Use make-glextension-depignore.sh to update!" + echo "#" + echo +} + +function dump_ignore_ext_gl3() { + echo "#" + echo "# OpenGL 3.x dependencies" + echo "#" + echo "# We allow GL_VERSION_3_0 within GL2" + echo "IgnoreExtension GL_VERSION_3_1" + echo "IgnoreExtension GL_VERSION_3_2" + echo "IgnoreExtension GL_VERSION_3_3" + echo "IgnoreExtension GL_VERSION_3_4" + dump_ignore_ext $dirdep/ext-req-3_x.txt + echo +} + +function dump_ignore_ext_gl4() { + echo "#" + echo "# OpenGL 4.x dependencies" + echo "#" + echo "IgnoreExtension GL_VERSION_4_0" + echo "IgnoreExtension GL_VERSION_4_1" + echo "IgnoreExtension GL_VERSION_4_2" + dump_ignore_ext $dirdep/ext-req-4_x.txt + echo +} + +dump_ignore_header > $gl3ignores +dump_ignore_ext_gl3 >> $gl3ignores + +dump_ignore_header > $gl4ignores +dump_ignore_ext_gl4 >> $gl4ignores + |