#!/bin/sh set -eu # Print defined gl.* functions not in GL ES 1.1 or in # (FIXME, none of these should be part of the ABI) # GL_EXT_multi_draw_arrays # GL_OES_EGL_image # or in extensions that are part of the ES 1.1 extension pack. # (see http://www.khronos.org/registry/gles/specs/1.1/opengles_spec_1_1_extension_pack.pdf) case "$(uname)" in Darwin) LIB=${1-es1api/.libs/libGLESv1_CM.dylib} ;; CYGWIN*) LIB=${1-es1api/.libs/cygGLESv1_CM-1.dll} ;; *) LIB=${1-es1api/.libs/libGLESv1_CM.so.1} ;; esac if ! [ -f "$LIB" ] then exit 1 fi FUNCS=$(nm -D --defined-only $LIB | grep -o 'T gl.*' | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF glActiveTexture glAlphaFunc glAlphaFuncx glBindBuffer glBindTexture glBlendFunc glBufferData glBufferSubData glClear glClearColor glClearColorx glClearDepthf glClearDepthx glClearStencil glClientActiveTexture glClipPlanef glClipPlanex glColor4f glColor4ub glColor4x glColorMask glColorPointer glCompressedTexImage2D glCompressedTexSubImage2D glCopyTexImage2D glCopyTexSubImage2D glCullFace glDeleteBuffers glDeleteTextures glDepthFunc glDepthMask glDepthRangef glDepthRangex glDisable glDisableClientState glDrawArrays glDrawElements glEGLImageTargetRenderbufferStorageOES glEGLImageTargetTexture2DOES glEnable glEnableClientState glFinish glFlush glFogf glFogfv glFogx glFogxv glFrontFace glFrustumf glFrustumx glGenBuffers glGenTextures glGetBooleanv glGetBufferParameteriv glGetClipPlanef glGetClipPlanex glGetError glGetFixedv glGetFloatv glGetIntegerv glGetLightfv glGetLightxv glGetMaterialfv glGetMaterialxv glGetPointerv glGetString glGetTexEnvfv glGetTexEnviv glGetTexEnvxv glGetTexParameterfv glGetTexParameteriv glGetTexParameterxv glHint glIsBuffer glIsEnabled glIsTexture glLightf glLightfv glLightModelf glLightModelfv glLightModelx glLightModelxv glLightx glLightxv glLineWidth glLineWidthx glLoadIdentity glLoadMatrixf glLoadMatrixx glLogicOp glMaterialf glMaterialfv glMaterialx glMaterialxv glMatrixMode glMultiDrawArraysEXT glMultiDrawElementsEXT glMultiTexCoord4f glMultiTexCoord4x glMultMatrixf glMultMatrixx glNormal3f glNormal3x glNormalPointer glOrthof glOrthox glPixelStorei glPointParameterf glPointParameterfv glPointParameterx glPointParameterxv glPointSize glPointSizePointerOES glPointSizex glPolygonOffset glPolygonOffsetx glPopMatrix glPushMatrix glReadPixels glRotatef glRotatex glSampleCoverage glSampleCoveragex glScalef glScalex glScissor glShadeModel glStencilFunc glStencilMask glStencilOp glTexCoordPointer glTexEnvf glTexEnvfv glTexEnvi glTexEnviv glTexEnvx glTexEnvxv glTexImage2D glTexParameterf glTexParameterfv glTexParameteri glTexParameteriv glTexParameterx glTexParameterxv glTexSubImage2D glTranslatef glTranslatex glVertexPointer glViewport EOF done) test ! -n "$FUNCS" || echo $FUNCS test ! -n "$FUNCS"