DEADSOFTWARE

Fix hard-float build
authormittorn <mittorn@sibmail.com>
Sun, 14 Jun 2015 12:57:04 +0000 (19:57 +0700)
committermittorn <mittorn@sibmail.com>
Sun, 14 Jun 2015 12:57:04 +0000 (19:57 +0700)
GL/glesinterface.h
nanogl.cpp

index 81ceb0f5199608859a760b90f50fb543d6939535..e6e2d45e9eda468487e71f584ae68ea6055f010e 100644 (file)
@@ -27,188 +27,190 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
         #pragma softfp_linkage
     #endif
 #endif
+
+#define S __attribute__((pcs("aapcs")))
+
 struct GlESInterface
     {
 
-    int (*eglChooseConfig) (int dpy, const int *attrib_list, int *configs, int config_size, int *num_config);
-       int (*eglCopyBuffers) (int dpy, int surface, void* target);
-    int (*eglCreateContext) (int dpy, int config, int share_list, const int *attrib_list);
-    int (*eglCreatePbufferSurface) (int dpy, int config, const int *attrib_list);
-    int (*eglCreatePixmapSurface) (int dpy, int config, void* pixmap, const int *attrib_list);
-    int (*eglCreateWindowSurface) (int dpy, int config, void* window, const int *attrib_list);
-    int (*eglDestroyContext) (int dpy, int ctx);
-    int (*eglDestroySurface) (int dpy, int surface);
-    int (*eglGetConfigAttrib) (int dpy, int config, int attribute, int *value);
-    int (*eglGetConfigs) (int dpy, int *configs, int config_size, int *num_config);
-    int (*eglGetCurrentContext) (void);
-    int (*eglGetCurrentDisplay) (void);
-    int (*eglGetCurrentSurface) (int readdraw);
-    int (*eglGetDisplay) (int display);
-    int (*eglGetError) (void);
-
-    void (*(*eglGetProcAddress) (const char *procname))(...);
-
-    int (*eglInitialize) (int dpy, int *major, int *minor);
-    int (*eglMakeCurrent) (int dpy, int draw, int read, int ctx);
-    int (*eglQueryContext) (int dpy, int ctx, int attribute, int *value);
-    const char * (*eglQueryString) (int dpy, int name);
-    int (*eglQuerySurface) (int dpy, int surface, int attribute, int *value);
-    int (*eglSwapBuffers) (int dpy, int draw);
-    int (*eglTerminate) (int dpy);
-    int (*eglWaitGL) (void);
-    int (*eglWaitNative) (int engine); 
-
-    void (*glActiveTexture) (unsigned int texture);
-    void (*glAlphaFunc) (unsigned int func, float ref);
-    void (*glAlphaFuncx) (unsigned int func, int ref);
-    void (*glBindTexture) (unsigned int target, unsigned int texture);
-    void (*glBlendFunc) (unsigned int sfactor, unsigned int dfactor);
-    void (*glClear) (unsigned int mask);
-    void (*glClearColor) (float red, float green, float blue, float alpha);
-    void (*glClearColorx) (int red, int green, int blue, int alpha);
-    void (*glClearDepthf) (float depth);
-    void (*glClearDepthx) (int depth);
-    void (*glClearStencil) (int s);
-    void (*glClientActiveTexture) (unsigned int texture);
-    void (*glColor4f) (float red, float green, float blue, float alpha);
-    void (*glColor4x) (int red, int green, int blue, int alpha);    
-    void (*glColorMask) (unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha);
-    void (*glColorPointer) (int size, unsigned int type, int stride, const void *pointer);
-       void (*glCompressedTexImage2D) (unsigned int target, int level, unsigned int internalformat, int width, int height, int border, int imageSize, const void *data);
-       void (*glCompressedTexSubImage2D) (unsigned int target, int level, int xoffset, int yoffset, int width, int height, unsigned int format, int imageSize, const void *data);
-       void (*glCopyTexImage2D) (unsigned int target, int level, unsigned int internalformat, int x, int y, int width, int height, int border);
-       void (*glCopyTexSubImage2D) (unsigned int target, int level, int xoffset, int yoffset, int x, int y, int width, int height);
-       void (*glCullFace) (unsigned int mode);
-    void (*glDeleteTextures) (int n, const unsigned int *textures);
-    void (*glDepthFunc) (unsigned int func);
-    void (*glDepthMask) (unsigned char flag);
-    void (*glDepthRangef) (float zNear, float zFar);
-    void (*glDepthRangex) (int zNear, int zFar);
-    void (*glDisable) (unsigned int cap);
-    void (*glDisableClientState) (unsigned int array);
-    void (*glDrawArrays) (unsigned int mode, int first, int count);
-    void (*glDrawElements) (unsigned int mode, int count, unsigned int type, const void *indices);
-    void (*glEnable) (unsigned int cap);
-    void (*glEnableClientState) (unsigned int array);
-    void (*glFinish) (void);
-    void (*glFlush) (void);
-    void (*glFogf) (unsigned int pname, float param);
-       void (*glFogfv) (unsigned int pname, const float *params);
-    void (*glFogx) (unsigned int pname, int param);
-    void (*glFogxv) (unsigned int pname, const int *params);
-    void (*glFrontFace) (unsigned int mode);
-    void (*glFrustumf) (float left, float right, float bottom, float top, float zNear, float zFar);
-       void (*glFrustumx) (int left, int right, int bottom, int top, int zNear, int zFar);
-    void (*glGenTextures) (int n, unsigned int *textures);
-    unsigned int (*glGetError) (void);
-       void (*glGetIntegerv) (unsigned int pname, int *params);
-    const unsigned char * (*glGetString) (unsigned int name);
-    void (*glHint) (unsigned int target, unsigned int mode);
-       void (*glLightModelf) (unsigned int pname, float param);
-    void (*glLightModelfv) (unsigned int pname, const float *params);
-    void (*glLightModelx) (unsigned int pname, int param);
-    void (*glLightModelxv) (unsigned int pname, const int *params);
-    void (*glLightf) (unsigned int light, unsigned int pname, float param);
-    void (*glLightfv) (unsigned int light, unsigned int pname, const float *params);
-    void (*glLightx) (unsigned int light, unsigned int pname, int param);
-    void (*glLightxv) (unsigned int light, unsigned int pname, const int *params);
-    void (*glLineWidth) (float width);
-    void (*glLineWidthx) (int width);
-    void (*glLoadIdentity) (void);
-    void (*glLoadMatrixf) (const float *m);
-    void (*glLoadMatrixx) (const int *m);
-    void (*glLogicOp) (unsigned int opcode);
-    void (*glMaterialf) (unsigned int face, unsigned int pname, float param);     
-    void (*glMaterialfv) (unsigned int face, unsigned int pname, const float *params);
-    void (*glMaterialx) (unsigned int face, unsigned int pname, int param);
-    void (*glMaterialxv) (unsigned int face, unsigned int pname, const int *params);
-    void (*glMatrixMode) (unsigned int mode);
-    void (*glMultMatrixf) (const float *m);
-    void (*glMultMatrixx) (const int *m);
-    void (*glMultiTexCoord4f) (unsigned int target, float s, float t, float r, float q);  
-    void (*glMultiTexCoord4x) (unsigned int target, int s, int t, int r, int q);
-    void (*glNormal3f) (float nx, float ny, float nz);
-    void (*glNormal3x) (int nx, int ny, int nz);
-    void (*glNormalPointer) (unsigned int type, int stride, const void *pointer);
-    void (*glOrthof) (float left, float right, float bottom, float top, float zNear, float zFar);
-    void (*glOrthox) (int left, int right, int bottom, int top, int zNear, int zFar);
-    void (*glPixelStorei) (unsigned int pname, int param);
-    void (*glPointSize) (float size);
-    void (*glPointSizex) (int size);
-    void (*glPolygonOffset) (float factor, float units);
-    void (*glPolygonOffsetx) (int factor, int units);
-    void (*glPopMatrix) (void);
-    void (*glPushMatrix) (void);
-    unsigned int (*glQueryMatrixxOES) (int mantissa[16], int exponent[16]);
-    void (*glReadPixels) (int x, int y, int width, int height, unsigned int format, unsigned int type, void *pixels);
-    void (*glRotatef) (float angle, float x, float y, float z);
-    void (*glRotatex) (int angle, int x, int y, int z);
-    void (*glSampleCoverage) (float value, unsigned char invert);
-    void (*glSampleCoveragex) (int value, unsigned char invert);
-    void (*glScalef) (float x, float y, float z);
-    void (*glScalex) (int x, int y, int z);
-    void (*glScissor) (int x, int y, int width, int height);
-    void (*glShadeModel) (unsigned int mode);
-    void (*glStencilFunc) (unsigned int func, int ref, unsigned int mask);
-    void (*glStencilMask) (unsigned int mask);
-    void (*glStencilOp) (unsigned int fail, unsigned int zfail, unsigned int zpass);
-    void (*glTexCoordPointer) (int size, unsigned int type, int stride, const void *pointer);
-    void (*glTexEnvf) (unsigned int target, unsigned int pname, float param);
-    void (*glTexEnvfv) (unsigned int target, unsigned int pname, const float *params);
-    void (*glTexEnvx) (unsigned int target, unsigned int pname, int param);
-    void (*glTexEnvxv) (unsigned int target, unsigned int pname, const int *params);
-    void (*glTexImage2D) (unsigned int target, int level, int internalformat, int width, int height, int border, unsigned int format, unsigned int type, const void *pixels);
-    void (*glTexParameterf) (unsigned int target, unsigned int pname, float param);
-    void (*glTexParameterx) (unsigned int target, unsigned int pname, int param);
-    void (*glTexSubImage2D) (unsigned int target, int level, int xoffset, int yoffset, int width, int height, unsigned int format, unsigned int type, const void *pixels);
-    void (*glTranslatef) (float x, float y, float z);
-    void (*glTranslatex) (int x, int y, int z);
-    void (*glVertexPointer) (int size, unsigned int type, int stride, const void *pointer);
-    void (*glViewport) (int x, int y, int width, int height);
-    int (*eglSwapInterval) (int dpy, int interval);
-    void (*glBindBuffer) (unsigned int target, unsigned int buffer);
-    void (*glBufferData) (unsigned int target, int size, const void *data, unsigned int usage);
-    void (*glBufferSubData) (unsigned int target, int offset,int size, const void *data);
-    void (*glClipPlanef) (unsigned int plane, const float *equation);
-    void (*glClipPlanex) (unsigned int plane, const int *equation);
-    void (*glColor4ub) (unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha);
-    void (*glDeleteBuffers) (int n, const unsigned int *buffers);
-    void (*glGenBuffers) (int n, unsigned int *buffers);
-    void (*glGetBooleanv) (unsigned int pname, unsigned char *params);
-    void (*glGetBufferParameteriv) (unsigned int target, unsigned int pname, int *params);
-    void (*glGetClipPlanef) (unsigned int pname, float eqn[4]);
-    void (*glGetClipPlanex) (unsigned int pname, int eqn[4]);
-    void (*glGetFixedv) (unsigned int pname, int *params);
-    void (*glGetFloatv) (unsigned int pname, float *params);
-    void (*glGetLightfv) (unsigned int light, unsigned int pname, float *params);
-    void (*glGetLightxv) (unsigned int light, unsigned int pname, int *params);
-    void (*glGetMaterialfv) (unsigned int face, unsigned int pname, float *params);
-    void (*glGetMaterialxv) (unsigned int face, unsigned int pname, int *params);
-    void (*glGetPointerv) (unsigned int pname, void **params);
-    void (*glGetTexEnvfv) (unsigned int env, unsigned int pname, float *params);
-    void (*glGetTexEnviv) (unsigned int env, unsigned int pname, int *params);
-    void (*glGetTexEnvxv) (unsigned int env, unsigned int pname, int *params); 
-    void (*glGetTexParameterfv) (unsigned int target, unsigned int pname, float *params);
-    void (*glGetTexParameteriv) (unsigned int target, unsigned int pname, int *params);
-    void (*glGetTexParameterxv) (unsigned int target, unsigned int pname, int *params);
-    unsigned char (*glIsBuffer) (unsigned int buffer);
-    unsigned char (*glIsEnabled) (unsigned int cap);
-    unsigned char (*glIsTexture) (unsigned int texture);
-    void (*glPointParameterf) (unsigned int pname, float param);
-    void (*glPointParameterfv) (unsigned int pname, const float *params);      
-    void (*glPointParameterx) (unsigned int pname, int param);
-    void (*glPointParameterxv) (unsigned int pname, const int *params);
-    void (*glPointSizePointerOES) (unsigned int type, int stride, const void *pointer);
-    void (*glTexEnvi) (unsigned int target, unsigned int pname, int param);
-    void (*glTexEnviv) (unsigned int target, unsigned int pname, const int *params);
-    void (*glTexParameterfv) (unsigned int target, unsigned int pname, const float *params);
-    void (*glTexParameteri) (unsigned int target, unsigned int pname, int param);
-    void (*glTexParameteriv) (unsigned int target, unsigned int pname, const int *params);
-    void (*glTexParameterxv) (unsigned int target, unsigned int pname, const int *params);
-
-    int (*eglBindTexImage) (int dpy, int surface, int buffer);
-    int (*eglReleaseTexImage) (int dpy, int surface, int buffer);
-    int (*eglSurfaceAttrib) (int dpy, int surface, int attribute, int value);
+    int (*eglChooseConfig) (int dpy, const int *attrib_list, int *configs, int config_size, int *num_config) S;
+       int (*eglCopyBuffers) (int dpy, int surface, void* target) S;
+    int (*eglCreateContext) (int dpy, int config, int share_list, const int *attrib_list) S;
+    int (*eglCreatePbufferSurface) (int dpy, int config, const int *attrib_list) S;
+    int (*eglCreatePixmapSurface) (int dpy, int config, void* pixmap, const int *attrib_list) S;
+    int (*eglCreateWindowSurface) (int dpy, int config, void* window, const int *attrib_list) S;
+    int (*eglDestroyContext) (int dpy, int ctx) S;
+    int (*eglDestroySurface) (int dpy, int surface) S;
+    int (*eglGetConfigAttrib) (int dpy, int config, int attribute, int *value) S;
+    int (*eglGetConfigs) (int dpy, int *configs, int config_size, int *num_config) S;
+    int (*eglGetCurrentContext) (void) S;
+    int (*eglGetCurrentDisplay) (void) S;
+    int (*eglGetCurrentSurface) (int readdraw) S;
+    int (*eglGetDisplay) (int display) S;
+    int (*eglGetError) (void) S;
+
+    void (*(*eglGetProcAddress) (const char *procname))(...) S;
+
+    int (*eglInitialize) (int dpy, int *major, int *minor) S;
+    int (*eglMakeCurrent) (int dpy, int draw, int read, int ctx) S;
+    int (*eglQueryContext) (int dpy, int ctx, int attribute, int *value) S;
+    const char * (*eglQueryString) (int dpy, int name) S;
+    int (*eglQuerySurface) (int dpy, int surface, int attribute, int *value) S;
+    int (*eglSwapBuffers) (int dpy, int draw) S;
+    int (*eglTerminate) (int dpy) S;
+    int (*eglWaitGL) (void) S;
+    int (*eglWaitNative) (int engine) S;
+    void (*glActiveTexture) (unsigned int texture) S;
+    void (*glAlphaFunc) (unsigned int func, float ref) S;
+    void (*glAlphaFuncx) (unsigned int func, int ref) S;
+    void (*glBindTexture) (unsigned int target, unsigned int texture) S;
+    void (*glBlendFunc) (unsigned int sfactor, unsigned int dfactor) S;
+    void (*glClear) (unsigned int mask) S;
+    void (*glClearColor) (float red, float green, float blue, float alpha) S;
+    void (*glClearColorx) (int red, int green, int blue, int alpha) S;
+    void (*glClearDepthf) (float depth) S;
+    void (*glClearDepthx) (int depth) S;
+    void (*glClearStencil) (int s) S;
+    void (*glClientActiveTexture) (unsigned int texture) S;
+    void (*glColor4f) (float red, float green, float blue, float alpha) S;
+    void (*glColor4x) (int red, int green, int blue, int alpha) S;
+    void (*glColorMask) (unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha) S;
+    void (*glColorPointer) (int size, unsigned int type, int stride, const void *pointer) S;
+       void (*glCompressedTexImage2D) (unsigned int target, int level, unsigned int internalformat, int width, int height, int border, int imageSize, const void *data) S;
+       void (*glCompressedTexSubImage2D) (unsigned int target, int level, int xoffset, int yoffset, int width, int height, unsigned int format, int imageSize, const void *data) S;
+       void (*glCopyTexImage2D) (unsigned int target, int level, unsigned int internalformat, int x, int y, int width, int height, int border) S;
+       void (*glCopyTexSubImage2D) (unsigned int target, int level, int xoffset, int yoffset, int x, int y, int width, int height) S;
+       void (*glCullFace) (unsigned int mode) S;
+    void (*glDeleteTextures) (int n, const unsigned int *textures) S;
+    void (*glDepthFunc) (unsigned int func) S;
+    void (*glDepthMask) (unsigned char flag) S;
+    void (*glDepthRangef) (float zNear, float zFar) S;
+    void (*glDepthRangex) (int zNear, int zFar) S;
+    void (*glDisable) (unsigned int cap) S;
+    void (*glDisableClientState) (unsigned int array) S;
+    void (*glDrawArrays) (unsigned int mode, int first, int count) S;
+    void (*glDrawElements) (unsigned int mode, int count, unsigned int type, const void *indices) S;
+    void (*glEnable) (unsigned int cap) S;
+    void (*glEnableClientState) (unsigned int array) S;
+    void (*glFinish) (void) S;
+    void (*glFlush) (void) S;
+    void (*glFogf) (unsigned int pname, float param) S;
+       void (*glFogfv) (unsigned int pname, const float *params) S;
+    void (*glFogx) (unsigned int pname, int param) S;
+    void (*glFogxv) (unsigned int pname, const int *params) S;
+    void (*glFrontFace) (unsigned int mode) S;
+    void (*glFrustumf) (float left, float right, float bottom, float top, float zNear, float zFar) S;
+       void (*glFrustumx) (int left, int right, int bottom, int top, int zNear, int zFar) S;
+    void (*glGenTextures) (int n, unsigned int *textures) S;
+    unsigned int (*glGetError) (void) S;
+       void (*glGetIntegerv) (unsigned int pname, int *params) S;
+    const unsigned char * (*glGetString) (unsigned int name) S;
+    void (*glHint) (unsigned int target, unsigned int mode) S;
+       void (*glLightModelf) (unsigned int pname, float param) S;
+    void (*glLightModelfv) (unsigned int pname, const float *params) S;
+    void (*glLightModelx) (unsigned int pname, int param) S;
+    void (*glLightModelxv) (unsigned int pname, const int *params) S;
+    void (*glLightf) (unsigned int light, unsigned int pname, float param) S;
+    void (*glLightfv) (unsigned int light, unsigned int pname, const float *params) S;
+    void (*glLightx) (unsigned int light, unsigned int pname, int param) S;
+    void (*glLightxv) (unsigned int light, unsigned int pname, const int *params) S;
+    void (*glLineWidth) (float width) S;
+    void (*glLineWidthx) (int width) S;
+    void (*glLoadIdentity) (void) S;
+    void (*glLoadMatrixf) (const float *m) S;
+    void (*glLoadMatrixx) (const int *m) S;
+    void (*glLogicOp) (unsigned int opcode) S;
+    void (*glMaterialf) (unsigned int face, unsigned int pname, float param) S;
+    void (*glMaterialfv) (unsigned int face, unsigned int pname, const float *params) S;
+    void (*glMaterialx) (unsigned int face, unsigned int pname, int param) S;
+    void (*glMaterialxv) (unsigned int face, unsigned int pname, const int *params) S;
+    void (*glMatrixMode) (unsigned int mode) S;
+    void (*glMultMatrixf) (const float *m) S;
+    void (*glMultMatrixx) (const int *m) S;
+    void (*glMultiTexCoord4f) (unsigned int target, float s, float t, float r, float q) S;
+    void (*glMultiTexCoord4x) (unsigned int target, int s, int t, int r, int q) S;
+    void (*glNormal3f) (float nx, float ny, float nz) S;
+    void (*glNormal3x) (int nx, int ny, int nz) S;
+    void (*glNormalPointer) (unsigned int type, int stride, const void *pointer) S;
+    void (*glOrthof) (float left, float right, float bottom, float top, float zNear, float zFar) S;
+    void (*glOrthox) (int left, int right, int bottom, int top, int zNear, int zFar) S;
+    void (*glPixelStorei) (unsigned int pname, int param) S;
+    void (*glPointSize) (float size) S;
+    void (*glPointSizex) (int size) S;
+    void (*glPolygonOffset) (float factor, float units) S;
+    void (*glPolygonOffsetx) (int factor, int units) S;
+    void (*glPopMatrix) (void) S;
+    void (*glPushMatrix) (void) S;
+    unsigned int (*glQueryMatrixxOES) (int mantissa[16], int exponent[16]) S;
+    void (*glReadPixels) (int x, int y, int width, int height, unsigned int format, unsigned int type, void *pixels) S;
+    void (*glRotatef) (float angle, float x, float y, float z) S;
+    void (*glRotatex) (int angle, int x, int y, int z) S;
+    void (*glSampleCoverage) (float value, unsigned char invert) S;
+    void (*glSampleCoveragex) (int value, unsigned char invert) S;
+    void (*glScalef) (float x, float y, float z) S;
+    void (*glScalex) (int x, int y, int z) S;
+    void (*glScissor) (int x, int y, int width, int height) S;
+    void (*glShadeModel) (unsigned int mode) S;
+    void (*glStencilFunc) (unsigned int func, int ref, unsigned int mask) S;
+    void (*glStencilMask) (unsigned int mask) S;
+    void (*glStencilOp) (unsigned int fail, unsigned int zfail, unsigned int zpass) S;
+    void (*glTexCoordPointer) (int size, unsigned int type, int stride, const void *pointer) S;
+    void (*glTexEnvf) (unsigned int target, unsigned int pname, float param) S;
+    void (*glTexEnvfv) (unsigned int target, unsigned int pname, const float *params) S;
+    void (*glTexEnvx) (unsigned int target, unsigned int pname, int param) S;
+    void (*glTexEnvxv) (unsigned int target, unsigned int pname, const int *params) S;
+    void (*glTexImage2D) (unsigned int target, int level, int internalformat, int width, int height, int border, unsigned int format, unsigned int type, const void *pixels) S;
+    void (*glTexParameterf) (unsigned int target, unsigned int pname, float param) S;
+    void (*glTexParameterx) (unsigned int target, unsigned int pname, int param) S;
+    void (*glTexSubImage2D) (unsigned int target, int level, int xoffset, int yoffset, int width, int height, unsigned int format, unsigned int type, const void *pixels) S;
+    void (*glTranslatef) (float x, float y, float z) S;
+    void (*glTranslatex) (int x, int y, int z) S;
+    void (*glVertexPointer) (int size, unsigned int type, int stride, const void *pointer) S;
+    void (*glViewport) (int x, int y, int width, int height) S;
+    int (*eglSwapInterval) (int dpy, int interval) S;
+    void (*glBindBuffer) (unsigned int target, unsigned int buffer) S;
+    void (*glBufferData) (unsigned int target, int size, const void *data, unsigned int usage) S;
+    void (*glBufferSubData) (unsigned int target, int offset,int size, const void *data) S;
+    void (*glClipPlanef) (unsigned int plane, const float *equation) S;
+    void (*glClipPlanex) (unsigned int plane, const int *equation) S;
+    void (*glColor4ub) (unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha) S;
+    void (*glDeleteBuffers) (int n, const unsigned int *buffers) S;
+    void (*glGenBuffers) (int n, unsigned int *buffers) S;
+    void (*glGetBooleanv) (unsigned int pname, unsigned char *params) S;
+    void (*glGetBufferParameteriv) (unsigned int target, unsigned int pname, int *params) S;
+    void (*glGetClipPlanef) (unsigned int pname, float eqn[4]) S;
+    void (*glGetClipPlanex) (unsigned int pname, int eqn[4]) S;
+    void (*glGetFixedv) (unsigned int pname, int *params) S;
+    void (*glGetFloatv) (unsigned int pname, float *params) S;
+    void (*glGetLightfv) (unsigned int light, unsigned int pname, float *params) S;
+    void (*glGetLightxv) (unsigned int light, unsigned int pname, int *params) S;
+    void (*glGetMaterialfv) (unsigned int face, unsigned int pname, float *params) S;
+    void (*glGetMaterialxv) (unsigned int face, unsigned int pname, int *params) S;
+    void (*glGetPointerv) (unsigned int pname, void **params) S;
+    void (*glGetTexEnvfv) (unsigned int env, unsigned int pname, float *params) S;
+    void (*glGetTexEnviv) (unsigned int env, unsigned int pname, int *params) S;
+    void (*glGetTexEnvxv) (unsigned int env, unsigned int pname, int *params) S;
+    void (*glGetTexParameterfv) (unsigned int target, unsigned int pname, float *params) S;
+    void (*glGetTexParameteriv) (unsigned int target, unsigned int pname, int *params) S;
+    void (*glGetTexParameterxv) (unsigned int target, unsigned int pname, int *params) S;
+    unsigned char (*glIsBuffer) (unsigned int buffer) S;
+    unsigned char (*glIsEnabled) (unsigned int cap) S;
+    unsigned char (*glIsTexture) (unsigned int texture) S;
+    void (*glPointParameterf) (unsigned int pname, float param) S;
+    void (*glPointParameterfv) (unsigned int pname, const float *params) S;
+    void (*glPointParameterx) (unsigned int pname, int param) S;
+    void (*glPointParameterxv) (unsigned int pname, const int *params) S;
+    void (*glPointSizePointerOES) (unsigned int type, int stride, const void *pointer) S;
+    void (*glTexEnvi) (unsigned int target, unsigned int pname, int param) S;
+    void (*glTexEnviv) (unsigned int target, unsigned int pname, const int *params) S;
+    void (*glTexParameterfv) (unsigned int target, unsigned int pname, const float *params) S;
+    void (*glTexParameteri) (unsigned int target, unsigned int pname, int param) S;
+    void (*glTexParameteriv) (unsigned int target, unsigned int pname, const int *params) S;
+    void (*glTexParameterxv) (unsigned int target, unsigned int pname, const int *params) S;
+
+    int (*eglBindTexImage) (int dpy, int surface, int buffer) S;
+    int (*eglReleaseTexImage) (int dpy, int surface, int buffer) S;
+    int (*eglSurfaceAttrib) (int dpy, int surface, int attribute, int value) S;
 
     };
 #if !defined (__WINS__)
index 5add36a367bda8220013657d37844bc3bfb0f861..9130cecc1edfdca1da94048b5c359efc85ab7f9f 100644 (file)
@@ -72,6 +72,20 @@ static void gl_unimplemented() {
 
 void *nanoGL_GetProcAddress(const char *name)
 {
+#if defined(__MULTITEXTURE_SUPPORT__)
+       if (!strcmp(procname, "glMultiTexCoord2fARB"))
+       {
+               return (void*)&glMultiTexCoord2fARB;
+       }
+       else if (!strcmp(procname, "glActiveTextureARB"))
+       {
+               return (void*)&glActiveTexture;
+       }
+       else if (!strcmp(procname, "glClientActiveTextureARB"))
+       {
+               return (void*)&glClientActiveTexture;
+       }
+#endif
        return dlsym(glesLib, name);
 }