ABI-check: Use more portable bash invocation.
[mesa.git] / src / mapi / es2api / ABI-check
1 #!/usr/bin/env bash
2
3 # Print defined gl.* functions not in GL ES 3.0 or in
4 # (FIXME, none of these should be part of the ABI)
5 # GL_EXT_multi_draw_arrays
6 # GL_OES_EGL_image
7
8 FUNCS=$(nm -D --defined-only ${1-.libs/libGLESv2.so.2} | grep -o 'T gl.*' | cut -c 3- | while read func; do
9 ( grep -q "^$func$" || echo $func ) <<EOF
10 glActiveTexture
11 glAttachShader
12 glBeginQuery
13 glBeginTransformFeedback
14 glBindAttribLocation
15 glBindBuffer
16 glBindBufferBase
17 glBindBufferRange
18 glBindFramebuffer
19 glBindRenderbuffer
20 glBindSampler
21 glBindTexture
22 glBindTransformFeedback
23 glBindVertexArray
24 glBlendColor
25 glBlendEquation
26 glBlendEquationSeparate
27 glBlendFunc
28 glBlendFuncSeparate
29 glBlitFramebuffer
30 glBufferData
31 glBufferSubData
32 glCheckFramebufferStatus
33 glClear
34 glClearBufferfi
35 glClearBufferfv
36 glClearBufferiv
37 glClearBufferuiv
38 glClearColor
39 glClearDepthf
40 glClearStencil
41 glClientWaitSync
42 glColorMask
43 glCompileShader
44 glCompressedTexImage2D
45 glCompressedTexImage3D
46 glCompressedTexSubImage2D
47 glCompressedTexSubImage3D
48 glCopyBufferSubData
49 glCopyTexImage2D
50 glCopyTexSubImage2D
51 glCopyTexSubImage3D
52 glCreateProgram
53 glCreateShader
54 glCullFace
55 glDeleteBuffers
56 glDeleteFramebuffers
57 glDeleteProgram
58 glDeleteQueries
59 glDeleteRenderbuffers
60 glDeleteSamplers
61 glDeleteShader
62 glDeleteSync
63 glDeleteTextures
64 glDeleteTransformFeedbacks
65 glDeleteVertexArrays
66 glDepthFunc
67 glDepthMask
68 glDepthRangef
69 glDetachShader
70 glDisable
71 glDisableVertexAttribArray
72 glDrawArrays
73 glDrawArraysInstanced
74 glDrawBuffers
75 glDrawElements
76 glDrawElementsInstanced
77 glDrawRangeElements
78 glEGLImageTargetRenderbufferStorageOES
79 glEGLImageTargetTexture2DOES
80 glEnable
81 glEnableVertexAttribArray
82 glEndQuery
83 glEndTransformFeedback
84 glFenceSync
85 glFinish
86 glFlush
87 glFlushMappedBufferRange
88 glFramebufferRenderbuffer
89 glFramebufferTexture2D
90 glFramebufferTextureLayer
91 glFrontFace
92 glGenBuffers
93 glGenerateMipmap
94 glGenFramebuffers
95 glGenQueries
96 glGenRenderbuffers
97 glGenSamplers
98 glGenTextures
99 glGenTransformFeedbacks
100 glGenVertexArrays
101 glGetActiveAttrib
102 glGetActiveUniform
103 glGetActiveUniformBlockiv
104 glGetActiveUniformBlockName
105 glGetActiveUniformsiv
106 glGetAttachedShaders
107 glGetAttribLocation
108 glGetBooleanv
109 glGetBufferParameteri64v
110 glGetBufferParameteriv
111 glGetBufferPointerv
112 glGetError
113 glGetFloatv
114 glGetFragDataLocation
115 glGetFramebufferAttachmentParameteriv
116 glGetInteger64i_v
117 glGetInteger64v
118 glGetIntegeri_v
119 glGetIntegerv
120 glGetInternalformativ
121 glGetProgramBinary
122 glGetProgramInfoLog
123 glGetProgramiv
124 glGetQueryiv
125 glGetQueryObjectuiv
126 glGetRenderbufferParameteriv
127 glGetSamplerParameterfv
128 glGetSamplerParameteriv
129 glGetShaderInfoLog
130 glGetShaderiv
131 glGetShaderPrecisionFormat
132 glGetShaderSource
133 glGetString
134 glGetStringi
135 glGetSynciv
136 glGetTexParameterfv
137 glGetTexParameteriv
138 glGetTransformFeedbackVarying
139 glGetUniformBlockIndex
140 glGetUniformfv
141 glGetUniformIndices
142 glGetUniformiv
143 glGetUniformLocation
144 glGetUniformuiv
145 glGetVertexAttribfv
146 glGetVertexAttribIiv
147 glGetVertexAttribIuiv
148 glGetVertexAttribiv
149 glGetVertexAttribPointerv
150 glHint
151 glInvalidateFramebuffer
152 glInvalidateSubFramebuffer
153 glIsBuffer
154 glIsEnabled
155 glIsFramebuffer
156 glIsProgram
157 glIsQuery
158 glIsRenderbuffer
159 glIsSampler
160 glIsShader
161 glIsSync
162 glIsTexture
163 glIsTransformFeedback
164 glIsVertexArray
165 glLineWidth
166 glLinkProgram
167 glMapBufferRange
168 glMultiDrawArraysEXT
169 glMultiDrawElementsEXT
170 glPauseTransformFeedback
171 glPixelStorei
172 glPolygonOffset
173 glProgramBinary
174 glProgramParameteri
175 glReadBuffer
176 glReadPixels
177 glReleaseShaderCompiler
178 glRenderbufferStorage
179 glRenderbufferStorageMultisample
180 glResumeTransformFeedback
181 glSampleCoverage
182 glSamplerParameterf
183 glSamplerParameterfv
184 glSamplerParameteri
185 glSamplerParameteriv
186 glScissor
187 glShaderBinary
188 glShaderSource
189 glStencilFunc
190 glStencilFuncSeparate
191 glStencilMask
192 glStencilMaskSeparate
193 glStencilOp
194 glStencilOpSeparate
195 glTexImage2D
196 glTexImage3D
197 glTexParameterf
198 glTexParameterfv
199 glTexParameteri
200 glTexParameteriv
201 glTexStorage2D
202 glTexStorage3D
203 glTexSubImage2D
204 glTexSubImage3D
205 glTransformFeedbackVaryings
206 glUniform1f
207 glUniform1fv
208 glUniform1i
209 glUniform1iv
210 glUniform1ui
211 glUniform1uiv
212 glUniform2f
213 glUniform2fv
214 glUniform2i
215 glUniform2iv
216 glUniform2ui
217 glUniform2uiv
218 glUniform3f
219 glUniform3fv
220 glUniform3i
221 glUniform3iv
222 glUniform3ui
223 glUniform3uiv
224 glUniform4f
225 glUniform4fv
226 glUniform4i
227 glUniform4iv
228 glUniform4ui
229 glUniform4uiv
230 glUniformBlockBinding
231 glUniformMatrix2fv
232 glUniformMatrix2x3fv
233 glUniformMatrix2x4fv
234 glUniformMatrix3fv
235 glUniformMatrix3x2fv
236 glUniformMatrix3x4fv
237 glUniformMatrix4fv
238 glUniformMatrix4x2fv
239 glUniformMatrix4x3fv
240 glUnmapBuffer
241 glUseProgram
242 glValidateProgram
243 glVertexAttrib1f
244 glVertexAttrib1fv
245 glVertexAttrib2f
246 glVertexAttrib2fv
247 glVertexAttrib3f
248 glVertexAttrib3fv
249 glVertexAttrib4f
250 glVertexAttrib4fv
251 glVertexAttribDivisor
252 glVertexAttribI4i
253 glVertexAttribI4iv
254 glVertexAttribI4ui
255 glVertexAttribI4uiv
256 glVertexAttribIPointer
257 glVertexAttribPointer
258 glViewport
259 glWaitSync
260 EOF
261 done)
262
263 test ! -n "$FUNCS" || echo $FUNCS
264 test ! -n "$FUNCS"