On 02/08/2014 08:03 AM, Emil Velikov wrote: > Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> > --- > src/egl/main/Makefile.am | 2 + > src/egl/main/egl-symbols-check | 109 > +++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 111 insertions(+) > create mode 100755 src/egl/main/egl-symbols-check > > diff --git a/src/egl/main/Makefile.am b/src/egl/main/Makefile.am > index 46e890a..7d9748f 100644 > --- a/src/egl/main/Makefile.am > +++ b/src/egl/main/Makefile.am > @@ -124,3 +124,5 @@ egl_HEADERS = \ > $(top_srcdir)/include/EGL/egl.h \ > $(top_srcdir)/include/EGL/eglmesaext.h \ > $(top_srcdir)/include/EGL/eglplatform.h > + > +TESTS = egl-symbols-check > \ No newline at end of file
Perhaps add a newline? :) > diff --git a/src/egl/main/egl-symbols-check b/src/egl/main/egl-symbols-check > new file mode 100755 > index 0000000..fc69369 > --- /dev/null > +++ b/src/egl/main/egl-symbols-check > @@ -0,0 +1,109 @@ > +#!/bin/bash > + > +# XXX: the private _egl* symbols are exported for egl backends like > egl_gallium > + > +FUNCS=$(nm -D --defined-only ${1-.libs/libEGL.so} | grep -o "T .*" | cut -c > 3- | while read func; do > +( grep -q "^$func$" || echo $func ) <<EOF > +eglBindAPI > +eglBindTexImage > +eglBindWaylandDisplayWL > +eglChooseConfig > +eglChooseModeMESA > +eglClientWaitSyncKHR Are we supposed to export extension functions? I thought that's what eglGetProcAddress was for... I'd swear there was an "implementer's guide" or some such from Khronos that gave some guidance here. > +eglCopyBuffers > +eglCopyContextMESA > +eglCreateContext > +eglCreateDRMImageMESA > +eglCreateImageKHR > +eglCreatePbufferFromClientBuffer > +eglCreatePbufferSurface > +eglCreatePixmapSurface > +eglCreateScreenSurfaceMESA > +eglCreateSyncKHR > +eglCreateWaylandBufferFromImageWL > +eglCreateWindowSurface > +eglDestroyContext > +eglDestroyImageKHR > +eglDestroySurface > +eglDestroySyncKHR > +eglExportDRMImageMESA > +eglGetConfigAttrib > +eglGetConfigs > +eglGetCurrentContext > +eglGetCurrentDisplay > +eglGetCurrentSurface > +eglGetDisplay > +eglGetDRMDisplayMESA > +eglGetError > +eglGetModeAttribMESA > +eglGetModesMESA > +eglGetProcAddress > +eglGetScreensMESA > +eglGetSyncAttribKHR > +eglInitialize > +eglMakeCurrent > +eglPostSubBufferNV > +eglQueryAPI > +eglQueryContext > +eglQueryModeStringMESA > +eglQueryScreenMESA > +eglQueryScreenModeMESA > +eglQueryScreenSurfaceMESA > +eglQueryString > +eglQuerySurface > +eglQueryWaylandBufferWL > +eglReleaseTexImage > +eglReleaseThread > +eglScreenPositionMESA > +eglShowScreenSurfaceMESA > +eglSignalSyncKHR > +eglSurfaceAttrib > +eglSwapBuffers > +eglSwapBuffersRegionNOK > +eglSwapBuffersWithDamageEXT > +eglSwapInterval > +eglTerminate > +eglUnbindWaylandDisplayWL > +eglWaitClient > +eglWaitGL > +eglWaitNative > +_eglBindContext > +_eglBindTexImage > +_eglCheckResource > +_eglCleanupDisplay > +_eglCompareConfigs > +_eglDestroyArray > +_eglError > +_eglFilterArray > +_eglFilterConfigArray > +_eglGetAPIContext > +_eglGetCurrentContext > +_eglGetCurrentThread > +_eglGetResource > +_eglInitConfig > +_eglInitContext > +_eglInitDriverFallbacks > +_eglInitImage > +_eglInitScreen > +_eglInitSurface > +_eglInitSync > +_eglLinkConfig > +_eglLinkScreen > +_eglLog > +_eglMatchConfig > +_eglParseConfigAttribList > +_eglParseImageAttribList > +_eglPutResource > +_eglReleaseDisplayResources > +_eglSearchPathForEach > +_eglSetLogLevel > +_eglSetLogProc > +_eglValidateConfig > +_fini > +_init > +EOF > +done) > + > +test ! -n "$FUNCS" || echo $FUNCS > +test ! -n "$FUNCS" > + > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev