SET(COREGL_VERSION_MINOR 0)
SET(EGL_VERSION_MAJOR 1)
SET(EGL_VERSION_MINOR 4)
+SET(GLES1_VERSION_MAJOR 1)
+SET(GLES1_VERSION_MINOR 1)
SET(GLES2_VERSION_MAJOR 2)
SET(GLES2_VERSION_MINOR 0)
SET(COREGL_VERSION "${COREGL_VERSION_MAJOR}.${COREGL_VERSION_MINOR}")
SET(EGL_VERSION "${EGL_VERSION_MAJOR}.${EGL_VERSION_MINOR}")
+SET(GLES1_VERSION "${GLES1_VERSION_MAJOR}.${GLES1_VERSION_MINOR}")
SET(GLES2_VERSION "${GLES2_VERSION_MAJOR}.${GLES2_VERSION_MINOR}")
SET(BUILD_ARCH "$ENV{RPM_ARCH}")
SET(EGL_SRCS_common
src/wraps/coregl_egl.c
)
+
+#################################################################
+# Build gles1 Library
+# ------------------------------
+SET(GLES1 "GLESv1_CM")
+SET(GLES1_SRCS_common
+ src/wraps/coregl_gl1.c
+ src/wraps/coregl_gl_common.c
+)
+
#################################################################
# Build gles2 Library
# ------------------------------
SET(GLES2 "GLESv2")
SET(GLES2_SRCS_common
- src/wraps/coregl_gl.c
+ src/wraps/coregl_gl2.c
+ src/wraps/coregl_gl_common.c
)
#SET(HEADERS_common src/coregl_export.h src/coregl_fastpath.h src/coregl_fastpath_state.h src/coregl.h src/coregl_internal.h src/coregl_thread_pthread.h src/coregl_wrappath.h)
#SET_TARGET_PROPERTIES(${COREGL} PROPERTIES COMPILE_FLAGS ${EXTRA_CFLAGS_common})
TARGET_LINK_LIBRARIES(${EGL} ${pkg_common_LDFLAGS} ${dlog_LIBRARIES} "-ldl -g -O2 -fvisibility=hidden -Wall -std=c99 -lpthread")
+ADD_LIBRARY(${GLES1} SHARED ${GLES1_SRCS_common})
+SET_TARGET_PROPERTIES(${GLES1} PROPERTIES SOVERSION ${GLES1_VERSION_MAJOR})
+SET_TARGET_PROPERTIES(${GLES1} PROPERTIES VERSION ${GLES1_VERSION})
+#SET_TARGET_PROPERTIES(${COREGL} PROPERTIES COMPILE_FLAGS ${EXTRA_CFLAGS_common})
+TARGET_LINK_LIBRARIES(${GLES1} ${pkg_common_LDFLAGS} ${dlog_LIBRARIES} "-ldl -g -O2 -fvisibility=hidden -Wall -std=c99 -lpthread")
+
ADD_LIBRARY(${GLES2} SHARED ${GLES2_SRCS_common})
SET_TARGET_PROPERTIES(${GLES2} PROPERTIES SOVERSION ${GLES2_VERSION_MAJOR})
SET_TARGET_PROPERTIES(${GLES2} PROPERTIES VERSION ${GLES2_VERSION})
INSTALL(TARGETS ${COREGL} DESTINATION lib COMPONENT RuntimeLibraries)
INSTALL(TARGETS ${EGL} DESTINATION lib COMPONENT RuntimeLibraries)
+INSTALL(TARGETS ${GLES1} DESTINATION lib COMPONENT RuntimeLibraries)
INSTALL(TARGETS ${GLES2} DESTINATION lib COMPONENT RuntimeLibraries)
#FOREACH(hfile ${HEADERS_common})
EGL_MAJOR = 1
EGL_MINOR = 4
+GLESv1_MAJOR = 1
+GLESv1_MINOR = 1
+
GLESv2_MAJOR = 2
GLESv2_MINOR = 0
WRAP_EGL = libEGL.so
+WRAP_GLES1 = libGLESv1_CM.so
WRAP_GLES2 = libGLESv2.so
OUTPUT_BIN = $(BIN).$(COREGL_MAJOR).$(COREGL_MINOR)
OUTPUT_WRAP_EGL = $(WRAP_EGL).$(EGL_MAJOR).$(EGL_MINOR)
+OUTPUT_WRAP_GLES1 = $(WRAP_GLES1).$(GLESv1_MAJOR).$(GLESv1_MINOR)
OUTPUT_WRAP_GLES2 = $(WRAP_GLES2).$(GLESv2_MAJOR).$(GLESv2_MINOR)
OBJECTS = $(SOURCES:.c=.o)
-all : $(OUTPUT_BIN) $(OUTPUT_WRAP_EGL) $(OUTPUT_WRAP_GLES2)
+all : $(OUTPUT_BIN) $(OUTPUT_WRAP_EGL) $(OUTPUT_WRAP_GLES1) $(OUTPUT_WRAP_GLES2)
cp src/headers/egl.h include/EGL/def_egl.h
cp src/headers/gl.h include/GLES3/def_gl.h
cp src/headers/sym_egl.h include/EGL/sym_egl.h
- cp src/headers/sym_gl.h include/GLES3/sym_gl.h
+ cp src/headers/sym_gl1.h include/GLES3/sym_gl1.h
+ cp src/headers/sym_gl2.h include/GLES3/sym_gl2.h
$(OUTPUT_BIN) : $(OBJECTS)
@mkdir -p lib
ln -sf $(OUTPUT_WRAP_EGL) lib/$(WRAP_EGL).$(EGL_MAJOR)
ln -sf $(WRAP_EGL).$(EGL_MAJOR) lib/$(WRAP_EGL)
+$(OUTPUT_WRAP_GLES1) :
+ @mkdir -p lib
+ $(CC) -shared -o lib/$(OUTPUT_WRAP_GLES1) src/wraps/coregl_gl1.c src/wraps/coregl_gl_common.c $(CFLAGS) $(LDFLAGS)
+ ln -sf $(OUTPUT_WRAP_GLES1) lib/$(WRAP_GLES1).$(GLESv1_MAJOR)
+ ln -sf $(WRAP_GLES1).$(GLESv1_MAJOR) lib/$(WRAP_GLES1)
+
$(OUTPUT_WRAP_GLES2) :
@mkdir -p lib
- $(CC) -shared -o lib/$(OUTPUT_WRAP_GLES2) src/wraps/coregl_gl.c $(CFLAGS) $(LDFLAGS)
+ $(CC) -shared -o lib/$(OUTPUT_WRAP_GLES2) src/wraps/coregl_gl2.c src/wraps/coregl_gl_common.c $(CFLAGS) $(LDFLAGS)
ln -sf $(OUTPUT_WRAP_GLES2) lib/$(WRAP_GLES2).$(GLESv2_MAJOR)
ln -sf $(WRAP_GLES2).$(GLESv2_MAJOR) lib/$(WRAP_GLES2)
ln -sf libCOREGL.so.4 %{buildroot}%{_libdir}/libCOREGL.so
cp libEGL.so.1.4 %{buildroot}%{_libdir}/
cp libGLESv2.so.2.0 %{buildroot}%{_libdir}/
+cp libGLESv1_CM.so.1.1 %{buildroot}%{_libdir}/
%else
ln -sf driver/libEGL.so.1.4 %{buildroot}%{_libdir}/libEGL.so.1.4
ln -sf driver/libGLESv2.so.2.0 %{buildroot}%{_libdir}/libGLESv2.so.2.0
+ln -sf driver/libGLESv1_CM.so.1.1 %{buildroot}%{_libdir}/libGLESv1_CM.so.1.1
%endif
ln -sf libEGL.so.1.4 %{buildroot}%{_libdir}/libEGL.so.1
ln -sf libEGL.so.1 %{buildroot}%{_libdir}/libEGL.so
ln -sf libGLESv2.so.2.0 %{buildroot}%{_libdir}/libGLESv2.so.2
ln -sf libGLESv2.so.2 %{buildroot}%{_libdir}/libGLESv2.so
-ln -sf libGLESv2.so %{buildroot}%{_libdir}/libGLESv1_CM.so.1.1
+ln -sf libGLESv1_CM.so.1.1 %{buildroot}%{_libdir}/libGLESv1_CM.so.1
+ln -sf libGLESv1_CM.so.1 %{buildroot}%{_libdir}/libGLESv1_CM.so
# devel pkg
mkdir -p %{buildroot}%{_includedir}
#include "coregl_export.h"
void *egl_lib_handle;
-void *glv1_lib_handle;
-void *glv2_lib_handle;
+void *gl_lib_handle;
-int driver_gl_version = COREGL_GLAPI_2;
+int driver_gl_version = 0;
static int api_gl_version = COREGL_GLAPI_2;
#ifndef _COREGL_VENDOR_EGL_LIB_PATH
}
#define FINDGLSYM(libhandle, getproc, dst, sym) \
- if(api_gl_version <= driver_gl_version) { \
+ if(api_gl_version <= driver_gl_version) { \
if (!dst || (void *)dst == (void *)_sym_missing) \
if (getproc) dst = (__typeof__(dst))getproc(sym); \
if (!dst || (void *)dst == (void *)_sym_missing) \
dst = (__typeof__(dst))dlsym(libhandle, sym); \
- if (!dst) dst = (__typeof__(dst))_sym_missing;\
+ if (!dst) dst = (__typeof__(dst))_sym_missing; \
}
#define FINDEGLSYM(libhandle, getproc, dst, sym) { \
static int
_glue_sym_init(void)
{
-
-#define _COREGL_START_API(version) api_gl_version = version;
-#define _COREGL_END_API(version) api_gl_version = COREGL_GLAPI_2;
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) \
FINDEGLSYM(egl_lib_handle, _sym_eglGetProcAddress, _sym_##FUNC_NAME, #FUNC_NAME);
#define _COREGL_EXT_SYMBOL_ALIAS(FUNC_NAME, ALIAS_NAME) \
#undef _COREGL_EXT_SYMBOL_ALIAS
#undef _COREGL_SYMBOL
-#undef _COREGL_START_API
-#undef _COREGL_END_API
return 1;
}
#define _COREGL_START_API(version) api_gl_version = version;
#define _COREGL_END_API(version) api_gl_version = COREGL_GLAPI_2;
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) \
- if(glv2_lib_handle) { \
- FINDGLSYM(glv2_lib_handle, _sym_eglGetProcAddress, _sym_##FUNC_NAME, #FUNC_NAME);\
- } \
- else { \
- FINDGLSYM(glv1_lib_handle, _sym_eglGetProcAddress, _sym_##FUNC_NAME, #FUNC_NAME);\
- }
+ FINDGLSYM(gl_lib_handle, _sym_eglGetProcAddress, _sym_##FUNC_NAME, #FUNC_NAME);
#define _COREGL_EXT_SYMBOL_ALIAS(FUNC_NAME, ALIAS_NAME) \
- if(glv2_lib_handle) { \
- FINDGLSYM(glv2_lib_handle, _sym_eglGetProcAddress, _sym_##ALIAS_NAME, #FUNC_NAME);\
- } \
- else { \
- FINDGLSYM(glv1_lib_handle, _sym_eglGetProcAddress, _sym_##ALIAS_NAME, #FUNC_NAME);\
- }
+ FINDGLSYM(gl_lib_handle, _sym_eglGetProcAddress, _sym_##ALIAS_NAME, #FUNC_NAME);
-#include "headers/sym_gl.h"
+#include "headers/sym_gl1.h"
+#include "headers/sym_gl2.h"
+#include "headers/sym_gl_common.h"
#undef _COREGL_EXT_SYMBOL_ALIAS
#undef _COREGL_SYMBOL
COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL)\E[0m\n");
}
+COREGL_API void set_driver_gl_version(int version)
+{
+ driver_gl_version = version;
+}
+
static int
_gl_lib_init(void)
{
if (!egl_lib_handle) {
COREGL_ERR("\E[40;31;1m%s\E[0m\n\n", dlerror());
COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n",
- _COREGL_VENDOR_EGL_LIB_PATH);
+ _COREGL_VENDOR_EGL_LIB_PATH);
return 0;
}
// test for invalid linking egl
if (dlsym(egl_lib_handle, "coregl_symbol_exported")) {
COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n",
- _COREGL_VENDOR_EGL_LIB_PATH);
+ _COREGL_VENDOR_EGL_LIB_PATH);
return 0;
}
// use gl_lib handle for GL symbols
- glv1_lib_handle = dlopen(_COREGL_VENDOR_GLV1_LIB_PATH, RTLD_LAZY | RTLD_LOCAL);
- if(!glv1_lib_handle) {
- COREGL_ERR("\E[40;31;1m%s\E[0m\n\n", dlerror());
- COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n",
- _COREGL_VENDOR_GLV1_LIB_PATH);
- }
- else {
- driver_gl_version = COREGL_GLAPI_1;
- // test for invalid linking gl
- if (dlsym(glv1_lib_handle, "coregl_symbol_exported")) {
+ if (driver_gl_version == COREGL_GLAPI_1) {
+ gl_lib_handle = dlopen(_COREGL_VENDOR_GLV1_LIB_PATH, RTLD_LAZY | RTLD_LOCAL);
+ if(!gl_lib_handle) {
+ COREGL_ERR("\E[40;31;1m%s\E[0m\n\n", dlerror());
COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n",
- _COREGL_VENDOR_GLV1_LIB_PATH);
- return 0;
- }
- }
-
- glv2_lib_handle = dlopen(_COREGL_VENDOR_GLV2_LIB_PATH, RTLD_LAZY | RTLD_LOCAL);
- if (!glv2_lib_handle) {
- COREGL_ERR("\E[40;31;1m%s\E[0m\n\n", dlerror());
- COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n",
- _COREGL_VENDOR_GLV2_LIB_PATH);
- if(!glv1_lib_handle) {
- return 0;
+ _COREGL_VENDOR_GLV1_LIB_PATH);
}
else {
+ // test for invalid linking gl
+ if (dlsym(gl_lib_handle, "coregl_symbol_exported")) {
+ COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n",
+ _COREGL_VENDOR_GLV1_LIB_PATH);
+ return 0;
+ }
COREGL_LOG("[CoreGL] Driver GL version 1.1 \n");
}
}
- else {
- driver_gl_version = COREGL_GLAPI_2;
- // test for invalid linking gl
- if (dlsym(glv2_lib_handle, "coregl_symbol_exported")) {
+ else if (driver_gl_version == COREGL_GLAPI_2) {
+ gl_lib_handle = dlopen(_COREGL_VENDOR_GLV2_LIB_PATH, RTLD_LAZY | RTLD_LOCAL);
+ if (!gl_lib_handle) {
+ COREGL_ERR("\E[40;31;1m%s\E[0m\n\n", dlerror());
COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n",
- _COREGL_VENDOR_GLV2_LIB_PATH);
- return 0;
+ _COREGL_VENDOR_GLV2_LIB_PATH);
}
-
- // test for a GLES 3.0 symbol
- if (dlsym(glv2_lib_handle, "glBindProgramPipeline")) {
- COREGL_LOG("[CoreGL] Driver GL version 3.1 \n");
- driver_gl_version = COREGL_GLAPI_31;
- } else if (dlsym(glv2_lib_handle, "glReadBuffer")) {
- COREGL_LOG("[CoreGL] Driver GL version 3.0 \n");
- driver_gl_version = COREGL_GLAPI_3;
- } else {
- COREGL_LOG("[CoreGL] Driver GL version 2.0 \n");
+ else {
+ // test for invalid linking gl
+ if (dlsym(gl_lib_handle, "coregl_symbol_exported")) {
+ COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n",
+ _COREGL_VENDOR_GLV2_LIB_PATH);
+ return 0;
+ }
+
+ // test for a GLES 3.0 symbol
+ if (dlsym(gl_lib_handle, "glBindProgramPipeline")) {
+ COREGL_LOG("[CoreGL] Driver GL version 3.1 \n");
+ driver_gl_version = COREGL_GLAPI_31;
+ } else if (dlsym(gl_lib_handle, "glReadBuffer")) {
+ COREGL_LOG("[CoreGL] Driver GL version 3.0 \n");
+ driver_gl_version = COREGL_GLAPI_3;
+ } else {
+ COREGL_LOG("[CoreGL] Driver GL version 2.0 \n");
+ }
}
}
- //------------------------------------------------//
-
if (!_glue_sym_init()) return 0;
if (!_gl_sym_init()) return 0;
_gl_lib_deinit(void)
{
if (egl_lib_handle) dlclose(egl_lib_handle);
- if (glv1_lib_handle) dlclose(glv1_lib_handle);
- if (glv2_lib_handle) dlclose(glv2_lib_handle);
+ if (gl_lib_handle) dlclose(gl_lib_handle);
return 1;
}
{
#define _COREGL_START_API(version) api_gl_version = version;
#define _COREGL_END_API(version) api_gl_version = COREGL_GLAPI_2;
+
#define OVERRIDE(f) \
- if(api_gl_version<=driver_gl_version) COREGL_OVERRIDE_API(ovr_, f, _sym_)
+ COREGL_OVERRIDE_API(ovr_, f, _sym_)
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) OVERRIDE(FUNC_NAME);
# include "headers/sym_egl.h"
#undef _COREGL_SYMBOL
+#undef OVERRIDE
+#define OVERRIDE(f) \
+ if(api_gl_version<=driver_gl_version) COREGL_OVERRIDE_API(ovr_, f, _sym_)
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) OVERRIDE(FUNC_NAME);
-# include "headers/sym_gl.h"
+if(driver_gl_version == COREGL_GLAPI_1) {
+ #include "headers/sym_gl1.h"
+ #include "headers/sym_gl_common.h"
+}
+else if(driver_gl_version >= COREGL_GLAPI_2) {
+ #include "headers/sym_gl2.h"
+ #include "headers/sym_gl_common.h"
+}
#undef _COREGL_SYMBOL
#undef OVERRIDE
{
ovr_glVertexPointer(size, type, stride, pointer);
}
+
+/* Khronos GLES 1.1 CTS requires glPointSizePointerOES as shared library symbol.*/
+void
+coregl_api_glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ ovr_glPointSizePointerOES(type, stride, pointer);
+}
/* Ending of OpenGL ES 1.1*/
void
#define COREGL_GLAPI_3 3
#define COREGL_GLAPI_2 2
#define COREGL_GLAPI_1 1
+#define COREGL_GLAPI_1_2_COMMON 1
#define _COREGL_INT_INIT_VALUE -3
+++ /dev/null
-#include "coregl_internal.h"
-#include "coregl_export.h"
-
-#include <stdlib.h>
-
-void
-init_overrides()
-{
-#define C_ORD(f) COREGL_OVERRIDE_API(ovr_, f, _sym_)
-
-#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) C_ORD(FUNC_NAME);
-# include "headers/sym_egl.h"
-#undef _COREGL_SYMBOL
-
-#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) C_ORD(FUNC_NAME);
-# include "headers/sym_gl.h"
-#undef _COREGL_SYMBOL
-
-#undef C_ORD
-}
-
// Include all symbols
-#include "sym_gl.h"
+#include "sym_gl1.h"
+#include "sym_gl2.h"
+#include "sym_gl_common.h"
#include "sym_egl.h"
--- /dev/null
+// Defult use-case for exporting symbols
+#ifndef _COREGL_SYMBOL
+#define _COREGL_SYMBOL_NOT_DEFINED
+#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) COREGL_API extern RET_TYPE FUNC_NAME PARAM_LIST;
+#endif
+#ifndef _COREGL_EXT_SYMBOL
+#define _COREGL_EXT_SYMBOL_NOT_DEFINED
+#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
+#endif
+#ifndef _COREGL_EXT_SYMBOL_ALIAS
+#define _COREGL_EXT_SYMBOL_ALIAS_NOT_DEFINED
+#define _COREGL_EXT_SYMBOL_ALIAS(FUNC_NAME, ALIAS_NAME)
+#endif
+#ifndef _COREGL_FASTPATH_SUPPORTED_EXTENSION
+#define _COREGL_FASTPATH_SUPPORTED_EXTENSION_NOT_DEFINED
+#define _COREGL_FASTPATH_SUPPORTED_EXTENSION(NAME, MINVER, MAXVER)
+#endif
+#ifndef _COREGL_EXT_SYMBOL_FASTPATH_PASS
+#define _COREGL_EXT_SYMBOL_FASTPATH_PASS_NOT_DEFINED
+#define _COREGL_EXT_SYMBOL_FASTPATH_PASS(FUNC_NAME)
+#endif
+#ifndef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK
+#define _COREGL_EXT_SYMBOL_FASTPATH_BLOCK_NOT_DEFINED
+#define _COREGL_EXT_SYMBOL_FASTPATH_BLOCK(FUNC_NAME)
+#endif
+
+#ifndef _COREGL_START_API
+#define _COREGL_START_API(VERSION)
+#define _COREGL_START_API_DEFINED_INSIDE
+#endif
+
+#ifndef _COREGL_END_API
+#define _COREGL_END_API(VERSION)
+#define _COREGL_END_API_DEFINED_INSIDE
+#endif
+
+_COREGL_START_API(COREGL_GLAPI_1)
+_COREGL_SYMBOL(void, glAlphaFunc, (GLenum func, GLclampf ref))
+_COREGL_SYMBOL(void, glClipPlanef, (GLenum plane, const GLfloat *equation))
+_COREGL_SYMBOL(void, glColor4f, (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha))
+_COREGL_SYMBOL(void, glFogf, (GLenum pname, GLfloat param))
+_COREGL_SYMBOL(void, glFogfv, (GLenum pname, const GLfloat *params))
+_COREGL_SYMBOL(void, glFrustumf, (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar))
+_COREGL_SYMBOL(void, glGetClipPlanef, (GLenum pname, GLfloat eqn[4]))
+_COREGL_SYMBOL(void, glGetLightfv, (GLenum light, GLenum pname, GLfloat *params))
+_COREGL_SYMBOL(void, glGetMaterialfv, (GLenum face, GLenum pname, GLfloat *params))
+_COREGL_SYMBOL(void, glGetTexEnvfv, (GLenum env, GLenum pname, GLfloat *params))
+_COREGL_SYMBOL(void, glLightModelf, (GLenum pname, GLfloat param))
+_COREGL_SYMBOL(void, glLightModelfv, (GLenum pname, const GLfloat *params))
+_COREGL_SYMBOL(void, glLightf, (GLenum light, GLenum pname, GLfloat param))
+_COREGL_SYMBOL(void, glLightfv, (GLenum light, GLenum pname, const GLfloat *params))
+_COREGL_SYMBOL(void, glLoadMatrixf, (const GLfloat *m))
+_COREGL_SYMBOL(void, glMaterialf, (GLenum face, GLenum pname, GLfloat param))
+_COREGL_SYMBOL(void, glMaterialfv, (GLenum face, GLenum pname, const GLfloat *params))
+_COREGL_SYMBOL(void, glMultMatrixf, (const GLfloat *m))
+_COREGL_SYMBOL(void, glMultiTexCoord4f, (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q))
+_COREGL_SYMBOL(void, glNormal3f, (GLfloat nx, GLfloat ny, GLfloat nz))
+_COREGL_SYMBOL(void, glOrthof, (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar))
+_COREGL_SYMBOL(void, glPointParameterf, (GLenum pname, GLfloat param))
+_COREGL_SYMBOL(void, glPointParameterfv, (GLenum pname, const GLfloat *params))
+_COREGL_SYMBOL(void, glPointSize, (GLfloat size))
+_COREGL_SYMBOL(void, glRotatef, (GLfloat angle, GLfloat x, GLfloat y, GLfloat z))
+_COREGL_SYMBOL(void, glScalef, (GLfloat x, GLfloat y, GLfloat z))
+_COREGL_SYMBOL(void, glTexEnvf, (GLenum target, GLenum pname, GLfloat param))
+_COREGL_SYMBOL(void, glTexEnvfv, (GLenum target, GLenum pname, const GLfloat *params))
+_COREGL_SYMBOL(void, glTranslatef, (GLfloat x, GLfloat y, GLfloat z))
+_COREGL_SYMBOL(void, glAlphaFuncx, (GLenum func, GLclampx ref))
+_COREGL_SYMBOL(void, glClearColorx, (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha))
+_COREGL_SYMBOL(void, glClearDepthx, (GLclampx depth))
+_COREGL_SYMBOL(void, glClientActiveTexture, (GLenum texture))
+_COREGL_SYMBOL(void, glClipPlanex, (GLenum plane, const GLfixed *equation))
+_COREGL_SYMBOL(void, glColor4ub, (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha))
+_COREGL_SYMBOL(void, glColor4x, (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha))
+_COREGL_SYMBOL(void, glColorPointer, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
+_COREGL_SYMBOL(void, glDepthRangex, (GLclampx zNear, GLclampx zFar))
+_COREGL_SYMBOL(void, glDisableClientState, (GLenum array))
+_COREGL_SYMBOL(void, glEnableClientState, (GLenum array))
+_COREGL_SYMBOL(void, glFogx, (GLenum pname, GLfixed param))
+_COREGL_SYMBOL(void, glFogxv, (GLenum pname, const GLfixed *params))
+_COREGL_SYMBOL(void, glFrustumx, (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar))
+_COREGL_SYMBOL(void, glGetClipPlanex, (GLenum pname, GLfixed eqn[4]))
+_COREGL_SYMBOL(void, glGetFixedv, (GLenum pname, GLfixed *params))
+_COREGL_SYMBOL(void, glGetLightxv, (GLenum light, GLenum pname, GLfixed *params))
+_COREGL_SYMBOL(void, glGetMaterialxv, (GLenum face, GLenum pname, GLfixed *params))
+_COREGL_SYMBOL(void, glGetTexEnviv, (GLenum env, GLenum pname, GLint *params))
+_COREGL_SYMBOL(void, glGetTexEnvxv, (GLenum env, GLenum pname, GLfixed *params))
+_COREGL_SYMBOL(void, glGetTexParameterxv, (GLenum target, GLenum pname, GLfixed *params))
+_COREGL_SYMBOL(void, glLightModelx, (GLenum pname, GLfixed param))
+_COREGL_SYMBOL(void, glLightModelxv, (GLenum pname, const GLfixed *params))
+_COREGL_SYMBOL(void, glLightx, (GLenum light, GLenum pname, GLfixed param))
+_COREGL_SYMBOL(void, glLightxv, (GLenum light, GLenum pname, const GLfixed *params))
+_COREGL_SYMBOL(void, glLineWidthx, (GLfixed width))
+_COREGL_SYMBOL(void, glLoadIdentity, (void))
+_COREGL_SYMBOL(void, glLoadMatrixx, (const GLfixed *m))
+_COREGL_SYMBOL(void, glLogicOp, (GLenum opcode))
+_COREGL_SYMBOL(void, glMaterialx, (GLenum face, GLenum pname, GLfixed param))
+_COREGL_SYMBOL(void, glMaterialxv, (GLenum face, GLenum pname, const GLfixed *params))
+_COREGL_SYMBOL(void, glMatrixMode, (GLenum mode))
+_COREGL_SYMBOL(void, glMultMatrixx, (const GLfixed *m))
+_COREGL_SYMBOL(void, glMultiTexCoord4x, (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q))
+_COREGL_SYMBOL(void, glNormal3x, (GLfixed nx, GLfixed ny, GLfixed nz))
+_COREGL_SYMBOL(void, glNormalPointer, (GLenum type, GLsizei stride, const GLvoid *pointer))
+_COREGL_SYMBOL(void, glOrthox, (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar))
+_COREGL_SYMBOL(void, glPointParameterx, (GLenum pname, GLfixed param))
+_COREGL_SYMBOL(void, glPointParameterxv, (GLenum pname, const GLfixed *params))
+_COREGL_SYMBOL(void, glPointSizex, (GLfixed size))
+_COREGL_SYMBOL(void, glPolygonOffsetx, (GLfixed factor, GLfixed units))
+_COREGL_SYMBOL(void, glPopMatrix, (void))
+_COREGL_SYMBOL(void, glPushMatrix, (void))
+_COREGL_SYMBOL(void, glRotatex, (GLfixed angle, GLfixed x, GLfixed y, GLfixed z) )
+_COREGL_SYMBOL(void, glSampleCoveragex, (GLclampx value, GLboolean invert))
+_COREGL_SYMBOL(void, glScalex, (GLfixed x, GLfixed y, GLfixed z))
+_COREGL_SYMBOL(void, glShadeModel, (GLenum mode))
+_COREGL_SYMBOL(void, glTexCoordPointer, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
+_COREGL_SYMBOL(void, glTexEnvi, (GLenum target, GLenum pname, GLint param))
+_COREGL_SYMBOL(void, glTexEnvx, (GLenum target, GLenum pname, GLfixed param))
+_COREGL_SYMBOL(void, glTexEnviv, (GLenum target, GLenum pname, const GLint *params))
+_COREGL_SYMBOL(void, glTexEnvxv, (GLenum target, GLenum pname, const GLfixed *params))
+_COREGL_SYMBOL(void, glTexParameterx, (GLenum target, GLenum pname, GLfixed param))
+_COREGL_SYMBOL(void, glTexParameterxv, (GLenum target, GLenum pname, const GLfixed *params))
+_COREGL_SYMBOL(void, glTranslatex, (GLfixed x, GLfixed y, GLfixed z))
+_COREGL_SYMBOL(void, glVertexPointer, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
+/* Khronos GLES 1.1 CTS requires glPointSizePointerOES as shared library symbol.*/
+_COREGL_SYMBOL(void, glPointSizePointerOES, (GLenum type, GLsizei stride, const GLvoid *pointer))
+
+//OpenGL ES 1.1 extensions
+_COREGL_EXT_SYMBOL(void, glDrawTexsOES, (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height))
+_COREGL_EXT_SYMBOL(void, glDrawTexiOES, (GLint x, GLint y, GLint z, GLint width, GLint height))
+_COREGL_EXT_SYMBOL(void, glDrawTexxOES, (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height))
+_COREGL_EXT_SYMBOL(void, glDrawTexsvOES, (const GLshort *coords))
+_COREGL_EXT_SYMBOL(void, glDrawTexivOES, (const GLint *coords))
+_COREGL_EXT_SYMBOL(void, glDrawTexxvOES, (const GLfixed *coords))
+_COREGL_EXT_SYMBOL(void, glDrawTexfOES, (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height))
+_COREGL_EXT_SYMBOL(void, glDrawTexfvOES, (const GLfloat *coords))
+_COREGL_EXT_SYMBOL(void, glCurrentPaletteMatrixOES, (GLuint matrixpaletteindex))
+_COREGL_EXT_SYMBOL(void, glLoadPaletteFromModelViewMatrixOES, (void))
+_COREGL_EXT_SYMBOL(void, glMatrixIndexPointerOES, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
+_COREGL_EXT_SYMBOL(void, glWeightPointerOES, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
+_COREGL_EXT_SYMBOL(GLbitfield, glQueryMatrixxOES, (GLfixed mantissa[16], GLint exponent[16]))
+_COREGL_EXT_SYMBOL(void, glTexGenfOES, (GLenum coord, GLenum pname, GLfloat param))
+_COREGL_EXT_SYMBOL(void, glTexGenfvOES, (GLenum coord, GLenum pname, const GLfloat *params))
+_COREGL_EXT_SYMBOL(void, glTexGeniOES, (GLenum coord, GLenum pname, GLint param))
+_COREGL_EXT_SYMBOL(void, glTexGenivOES, (GLenum coord, GLenum pname, const GLint *params))
+_COREGL_EXT_SYMBOL(void, glTexGenxOES, (GLenum coord, GLenum pname, GLfixed param))
+_COREGL_EXT_SYMBOL(void, glTexGenxvOES, (GLenum coord, GLenum pname, const GLfixed *params))
+_COREGL_EXT_SYMBOL(void, glGetTexGenfvOES, (GLenum coord, GLenum pname, GLfloat *params))
+_COREGL_EXT_SYMBOL(void, glGetTexGenivOES, (GLenum coord, GLenum pname, GLint *params))
+_COREGL_EXT_SYMBOL(void, glGetTexGenxvOES, (GLenum coord, GLenum pname, GLfixed *params))
+_COREGL_EXT_SYMBOL(void, glClipPlanefIMG, (GLenum, const GLfloat *))
+_COREGL_EXT_SYMBOL(void, glClipPlanexIMG, (GLenum, const GLfixed *))
+_COREGL_END_API(COREGL_GLAPI_1)
+
+#ifdef _COREGL_EXT_SYMBOL_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL
+#endif
+
+#ifdef _COREGL_SYMBOL_NOT_DEFINED
+#undef _COREGL_SYMBOL_NOT_DEFINED
+#undef _COREGL_SYMBOL
+#endif
+
+#ifdef _COREGL_EXT_SYMBOL_ALIAS_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_ALIAS_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_ALIAS
+#endif
+
+#ifdef _COREGL_FASTPATH_SUPPORTED_EXTENSION_NOT_DEFINED
+#undef _COREGL_FASTPATH_SUPPORTED_EXTENSION_NOT_DEFINED
+#undef _COREGL_FASTPATH_SUPPORTED_EXTENSION
+#endif
+
+#ifdef _COREGL_EXT_SYMBOL_FASTPATH_PASS_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_FASTPATH_PASS_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_FASTPATH_PASS
+#endif
+
+#ifdef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK
+#endif
+
+#ifdef _COREGL_START_API_DEFINED_INSIDE
+#undef _COREGL_START_API
+#undef _COREGL_START_API_DEFINED_INSIDE
+#endif
+
+#ifdef _COREGL_END_API_DEFINED_INSIDE
+#undef _COREGL_END_API
+#undef _COREGL_END_API_DEFINED_INSIDE
+#endif
-
-/*
- * gl3.h last updated on $Date: 2013-02-12 14:37:24 -0800 (Tue, 12 Feb 2013) $
- */
-
// Defult use-case for exporting symbols
#ifndef _COREGL_SYMBOL
#define _COREGL_SYMBOL_NOT_DEFINED
#ifndef _COREGL_START_API
#define _COREGL_START_API(VERSION)
+#define _COREGL_START_API_DEFINED_INSIDE
#endif
#ifndef _COREGL_END_API
#define _COREGL_END_API(VERSION)
+#define _COREGL_END_API_DEFINED_INSIDE
#endif
-_COREGL_START_API(COREGL_GLAPI_1)
-_COREGL_SYMBOL(void, glAlphaFunc, (GLenum func, GLclampf ref))
-_COREGL_SYMBOL(void, glClipPlanef, (GLenum plane, const GLfloat *equation))
-_COREGL_SYMBOL(void, glColor4f, (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha))
-_COREGL_SYMBOL(void, glFogf, (GLenum pname, GLfloat param))
-_COREGL_SYMBOL(void, glFogfv, (GLenum pname, const GLfloat *params))
-_COREGL_SYMBOL(void, glFrustumf, (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar))
-_COREGL_SYMBOL(void, glGetClipPlanef, (GLenum pname, GLfloat eqn[4]))
-_COREGL_SYMBOL(void, glGetLightfv, (GLenum light, GLenum pname, GLfloat *params))
-_COREGL_SYMBOL(void, glGetMaterialfv, (GLenum face, GLenum pname, GLfloat *params))
-_COREGL_SYMBOL(void, glGetTexEnvfv, (GLenum env, GLenum pname, GLfloat *params))
-_COREGL_SYMBOL(void, glLightModelf, (GLenum pname, GLfloat param))
-_COREGL_SYMBOL(void, glLightModelfv, (GLenum pname, const GLfloat *params))
-_COREGL_SYMBOL(void, glLightf, (GLenum light, GLenum pname, GLfloat param))
-_COREGL_SYMBOL(void, glLightfv, (GLenum light, GLenum pname, const GLfloat *params))
-_COREGL_SYMBOL(void, glLoadMatrixf, (const GLfloat *m))
-_COREGL_SYMBOL(void, glMaterialf, (GLenum face, GLenum pname, GLfloat param))
-_COREGL_SYMBOL(void, glMaterialfv, (GLenum face, GLenum pname, const GLfloat *params))
-_COREGL_SYMBOL(void, glMultMatrixf, (const GLfloat *m))
-_COREGL_SYMBOL(void, glMultiTexCoord4f, (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q))
-_COREGL_SYMBOL(void, glNormal3f, (GLfloat nx, GLfloat ny, GLfloat nz))
-_COREGL_SYMBOL(void, glOrthof, (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar))
-_COREGL_SYMBOL(void, glPointParameterf, (GLenum pname, GLfloat param))
-_COREGL_SYMBOL(void, glPointParameterfv, (GLenum pname, const GLfloat *params))
-_COREGL_SYMBOL(void, glPointSize, (GLfloat size))
-_COREGL_SYMBOL(void, glRotatef, (GLfloat angle, GLfloat x, GLfloat y, GLfloat z))
-_COREGL_SYMBOL(void, glScalef, (GLfloat x, GLfloat y, GLfloat z))
-_COREGL_SYMBOL(void, glTexEnvf, (GLenum target, GLenum pname, GLfloat param))
-_COREGL_SYMBOL(void, glTexEnvfv, (GLenum target, GLenum pname, const GLfloat *params))
-_COREGL_SYMBOL(void, glTranslatef, (GLfloat x, GLfloat y, GLfloat z))
-_COREGL_SYMBOL(void, glAlphaFuncx, (GLenum func, GLclampx ref))
-_COREGL_SYMBOL(void, glClearColorx, (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha))
-_COREGL_SYMBOL(void, glClearDepthx, (GLclampx depth))
-_COREGL_SYMBOL(void, glClientActiveTexture, (GLenum texture))
-_COREGL_SYMBOL(void, glClipPlanex, (GLenum plane, const GLfixed *equation))
-_COREGL_SYMBOL(void, glColor4ub, (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha))
-_COREGL_SYMBOL(void, glColor4x, (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha))
-_COREGL_SYMBOL(void, glColorPointer, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
-_COREGL_SYMBOL(void, glDepthRangex, (GLclampx zNear, GLclampx zFar))
-_COREGL_SYMBOL(void, glDisableClientState, (GLenum array))
-_COREGL_SYMBOL(void, glEnableClientState, (GLenum array))
-_COREGL_SYMBOL(void, glFogx, (GLenum pname, GLfixed param))
-_COREGL_SYMBOL(void, glFogxv, (GLenum pname, const GLfixed *params))
-_COREGL_SYMBOL(void, glFrustumx, (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar))
-_COREGL_SYMBOL(void, glGetClipPlanex, (GLenum pname, GLfixed eqn[4]))
-_COREGL_SYMBOL(void, glGetFixedv, (GLenum pname, GLfixed *params))
-_COREGL_SYMBOL(void, glGetLightxv, (GLenum light, GLenum pname, GLfixed *params))
-_COREGL_SYMBOL(void, glGetMaterialxv, (GLenum face, GLenum pname, GLfixed *params))
-_COREGL_SYMBOL(void, glGetTexEnviv, (GLenum env, GLenum pname, GLint *params))
-_COREGL_SYMBOL(void, glGetTexEnvxv, (GLenum env, GLenum pname, GLfixed *params))
-_COREGL_SYMBOL(void, glGetTexParameterxv, (GLenum target, GLenum pname, GLfixed *params))
-_COREGL_SYMBOL(void, glLightModelx, (GLenum pname, GLfixed param))
-_COREGL_SYMBOL(void, glLightModelxv, (GLenum pname, const GLfixed *params))
-_COREGL_SYMBOL(void, glLightx, (GLenum light, GLenum pname, GLfixed param))
-_COREGL_SYMBOL(void, glLightxv, (GLenum light, GLenum pname, const GLfixed *params))
-_COREGL_SYMBOL(void, glLineWidthx, (GLfixed width))
-_COREGL_SYMBOL(void, glLoadIdentity, (void))
-_COREGL_SYMBOL(void, glLoadMatrixx, (const GLfixed *m))
-_COREGL_SYMBOL(void, glLogicOp, (GLenum opcode))
-_COREGL_SYMBOL(void, glMaterialx, (GLenum face, GLenum pname, GLfixed param))
-_COREGL_SYMBOL(void, glMaterialxv, (GLenum face, GLenum pname, const GLfixed *params))
-_COREGL_SYMBOL(void, glMatrixMode, (GLenum mode))
-_COREGL_SYMBOL(void, glMultMatrixx, (const GLfixed *m))
-_COREGL_SYMBOL(void, glMultiTexCoord4x, (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q))
-_COREGL_SYMBOL(void, glNormal3x, (GLfixed nx, GLfixed ny, GLfixed nz))
-_COREGL_SYMBOL(void, glNormalPointer, (GLenum type, GLsizei stride, const GLvoid *pointer))
-_COREGL_SYMBOL(void, glOrthox, (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar))
-_COREGL_SYMBOL(void, glPointParameterx, (GLenum pname, GLfixed param))
-_COREGL_SYMBOL(void, glPointParameterxv, (GLenum pname, const GLfixed *params))
-_COREGL_SYMBOL(void, glPointSizex, (GLfixed size))
-_COREGL_SYMBOL(void, glPolygonOffsetx, (GLfixed factor, GLfixed units))
-_COREGL_SYMBOL(void, glPopMatrix, (void))
-_COREGL_SYMBOL(void, glPushMatrix, (void))
-_COREGL_SYMBOL(void, glRotatex, (GLfixed angle, GLfixed x, GLfixed y, GLfixed z) )
-_COREGL_SYMBOL(void, glSampleCoveragex, (GLclampx value, GLboolean invert))
-_COREGL_SYMBOL(void, glScalex, (GLfixed x, GLfixed y, GLfixed z))
-_COREGL_SYMBOL(void, glShadeModel, (GLenum mode))
-_COREGL_SYMBOL(void, glTexCoordPointer, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
-_COREGL_SYMBOL(void, glTexEnvi, (GLenum target, GLenum pname, GLint param))
-_COREGL_SYMBOL(void, glTexEnvx, (GLenum target, GLenum pname, GLfixed param))
-_COREGL_SYMBOL(void, glTexEnviv, (GLenum target, GLenum pname, const GLint *params))
-_COREGL_SYMBOL(void, glTexEnvxv, (GLenum target, GLenum pname, const GLfixed *params))
-_COREGL_SYMBOL(void, glTexParameterx, (GLenum target, GLenum pname, GLfixed param))
-_COREGL_SYMBOL(void, glTexParameterxv, (GLenum target, GLenum pname, const GLfixed *params))
-_COREGL_SYMBOL(void, glTranslatex, (GLfixed x, GLfixed y, GLfixed z))
-_COREGL_SYMBOL(void, glVertexPointer, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
-
-//OpenGL ES 1.1 extensions
-_COREGL_EXT_SYMBOL(void, glPointSizePointerOES, (GLenum type, GLsizei stride, const GLvoid *pointer))
-_COREGL_EXT_SYMBOL(void, glDrawTexsOES, (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height))
-_COREGL_EXT_SYMBOL(void, glDrawTexiOES, (GLint x, GLint y, GLint z, GLint width, GLint height))
-_COREGL_EXT_SYMBOL(void, glDrawTexxOES, (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height))
-_COREGL_EXT_SYMBOL(void, glDrawTexsvOES, (const GLshort *coords))
-_COREGL_EXT_SYMBOL(void, glDrawTexivOES, (const GLint *coords))
-_COREGL_EXT_SYMBOL(void, glDrawTexxvOES, (const GLfixed *coords))
-_COREGL_EXT_SYMBOL(void, glDrawTexfOES, (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height))
-_COREGL_EXT_SYMBOL(void, glDrawTexfvOES, (const GLfloat *coords))
-_COREGL_EXT_SYMBOL(void, glCurrentPaletteMatrixOES, (GLuint matrixpaletteindex))
-_COREGL_EXT_SYMBOL(void, glLoadPaletteFromModelViewMatrixOES, (void))
-_COREGL_EXT_SYMBOL(void, glMatrixIndexPointerOES, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
-_COREGL_EXT_SYMBOL(void, glWeightPointerOES, (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer))
-_COREGL_EXT_SYMBOL(GLbitfield, glQueryMatrixxOES, (GLfixed mantissa[16], GLint exponent[16]))
-_COREGL_EXT_SYMBOL(void, glTexGenfOES, (GLenum coord, GLenum pname, GLfloat param))
-_COREGL_EXT_SYMBOL(void, glTexGenfvOES, (GLenum coord, GLenum pname, const GLfloat *params))
-_COREGL_EXT_SYMBOL(void, glTexGeniOES, (GLenum coord, GLenum pname, GLint param))
-_COREGL_EXT_SYMBOL(void, glTexGenivOES, (GLenum coord, GLenum pname, const GLint *params))
-_COREGL_EXT_SYMBOL(void, glTexGenxOES, (GLenum coord, GLenum pname, GLfixed param))
-_COREGL_EXT_SYMBOL(void, glTexGenxvOES, (GLenum coord, GLenum pname, const GLfixed *params))
-_COREGL_EXT_SYMBOL(void, glGetTexGenfvOES, (GLenum coord, GLenum pname, GLfloat *params))
-_COREGL_EXT_SYMBOL(void, glGetTexGenivOES, (GLenum coord, GLenum pname, GLint *params))
-_COREGL_EXT_SYMBOL(void, glGetTexGenxvOES, (GLenum coord, GLenum pname, GLfixed *params))
-_COREGL_EXT_SYMBOL(void, glRenderbufferStorageMultisampleAPPLE, (GLenum, GLsizei, GLenum, GLsizei, GLsizei))
-_COREGL_EXT_SYMBOL(void, glResolveMultisampleFramebufferAPPLE, (void))
-_COREGL_EXT_SYMBOL(void, glMultiDrawArraysEXT, (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount))
-_COREGL_EXT_SYMBOL(void, glMultiDrawElementsEXT, (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount))
-_COREGL_EXT_SYMBOL(void, glClipPlanefIMG, (GLenum, const GLfloat *))
-_COREGL_EXT_SYMBOL(void, glClipPlanexIMG, (GLenum, const GLfixed *))
-_COREGL_EXT_SYMBOL(void, glRenderbufferStorageMultisampleIMG, (GLenum, GLsizei, GLenum, GLsizei, GLsizei))
-_COREGL_EXT_SYMBOL(void, glFramebufferTexture2DMultisampleIMG, (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei))
-_COREGL_END_API(COREGL_GLAPI_1)
-
/* OpenGL ES 2.0 */
-_COREGL_SYMBOL(void, glActiveTexture, (GLenum texture))
+_COREGL_START_API(COREGL_GLAPI_2)
_COREGL_SYMBOL(void, glAttachShader, (GLuint program, GLuint shader))
_COREGL_SYMBOL(void, glBindAttribLocation, (GLuint program, GLuint index,
const char *name))
-_COREGL_SYMBOL(void, glBindBuffer, (GLenum target, GLuint buffer))
_COREGL_SYMBOL(void, glBindFramebuffer, (GLenum target, GLuint framebuffer))
_COREGL_SYMBOL(void, glBindRenderbuffer, (GLenum target, GLuint renderbuffer))
-_COREGL_SYMBOL(void, glBindTexture, (GLenum target, GLuint texture))
+
_COREGL_SYMBOL(void, glBlendColor, (GLclampf red, GLclampf green, GLclampf blue,
GLclampf alpha))
_COREGL_SYMBOL(void, glBlendEquation, ( GLenum mode ))
_COREGL_SYMBOL(void, glBlendEquationSeparate, (GLenum modeRGB,
GLenum modeAlpha))
-_COREGL_SYMBOL(void, glBlendFunc, (GLenum sfactor, GLenum dfactor))
_COREGL_SYMBOL(void, glBlendFuncSeparate, (GLenum srcRGB, GLenum dstRGB,
GLenum srcAlpha, GLenum dstAlpha))
-_COREGL_SYMBOL(void, glBufferData, (GLenum target, GLsizeiptr size,
- const void *data, GLenum usage))
-_COREGL_SYMBOL(void, glBufferSubData, (GLenum target, GLintptr offset,
- GLsizeiptr size, const void *data))
_COREGL_SYMBOL(GLenum, glCheckFramebufferStatus, (GLenum target))
-_COREGL_SYMBOL(void, glClear, (GLbitfield mask))
-_COREGL_SYMBOL(void, glClearColor, (GLclampf red, GLclampf green, GLclampf blue,
- GLclampf alpha))
-_COREGL_SYMBOL(void, glClearDepthf, (GLclampf depth))
-_COREGL_SYMBOL(void, glClearStencil, (GLint s))
-_COREGL_SYMBOL(void, glColorMask, (GLboolean red, GLboolean green,
- GLboolean blue, GLboolean alpha))
_COREGL_SYMBOL(void, glCompileShader, (GLuint shader))
-_COREGL_SYMBOL(void, glCompressedTexImage2D, (GLenum target, GLint level,
- GLenum internalformat, GLsizei width, GLsizei height, GLint border,
- GLsizei imageSize, const void *data))
-_COREGL_SYMBOL(void, glCompressedTexSubImage2D, (GLenum target, GLint level,
- GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format,
- GLsizei imageSize, const void *data))
-_COREGL_SYMBOL(void, glCopyTexImage2D, (GLenum target, GLint level,
- GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height,
- GLint border))
-_COREGL_SYMBOL(void, glCopyTexSubImage2D, (GLenum target, GLint level,
- GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height))
_COREGL_SYMBOL(GLuint, glCreateProgram, (void))
_COREGL_SYMBOL(GLuint, glCreateShader, (GLenum type))
-_COREGL_SYMBOL(void, glCullFace, (GLenum mode))
-_COREGL_SYMBOL(void, glDeleteBuffers, (GLsizei n, const GLuint *buffers))
_COREGL_SYMBOL(void, glDeleteFramebuffers, (GLsizei n,
const GLuint *framebuffers))
_COREGL_SYMBOL(void, glDeleteProgram, (GLuint program))
_COREGL_SYMBOL(void, glDeleteRenderbuffers, (GLsizei n,
const GLuint *renderbuffers))
_COREGL_SYMBOL(void, glDeleteShader, (GLuint shader))
-_COREGL_SYMBOL(void, glDeleteTextures, (GLsizei n, const GLuint *textures))
-_COREGL_SYMBOL(void, glDepthFunc, (GLenum func))
-_COREGL_SYMBOL(void, glDepthMask, (GLboolean flag))
-_COREGL_SYMBOL(void, glDepthRangef, (GLclampf zNear, GLclampf zFar))
_COREGL_SYMBOL(void, glDetachShader, (GLuint program, GLuint shader))
-_COREGL_SYMBOL(void, glDisable, (GLenum cap))
_COREGL_SYMBOL(void, glDisableVertexAttribArray, (GLuint index))
-_COREGL_SYMBOL(void, glDrawArrays, (GLenum mode, GLint first, GLsizei count))
-_COREGL_SYMBOL(void, glDrawElements, (GLenum mode, GLsizei count, GLenum type,
- const void *indices))
-_COREGL_SYMBOL(void, glEnable, (GLenum cap))
_COREGL_SYMBOL(void, glEnableVertexAttribArray, (GLuint index))
-_COREGL_SYMBOL(void, glFinish, (void))
-_COREGL_SYMBOL(void, glFlush, (void))
_COREGL_SYMBOL(void, glFramebufferRenderbuffer, (GLenum target,
GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer))
_COREGL_SYMBOL(void, glFramebufferTexture2D, (GLenum target, GLenum attachment,
GLenum textarget, GLuint texture, GLint level))
-_COREGL_SYMBOL(void, glFrontFace, (GLenum mode))
-_COREGL_SYMBOL(void, glGenBuffers, (GLsizei n, GLuint *buffers))
_COREGL_SYMBOL(void, glGenerateMipmap, (GLenum target))
_COREGL_SYMBOL(void, glGenFramebuffers, (GLsizei n, GLuint *framebuffers))
_COREGL_SYMBOL(void, glGenRenderbuffers, (GLsizei n, GLuint *renderbuffers))
-_COREGL_SYMBOL(void, glGenTextures, (GLsizei n, GLuint *textures))
_COREGL_SYMBOL(void, glGetActiveAttrib, (GLuint program, GLuint index,
GLsizei bufsize, GLsizei *length, GLint *size, GLenum *type, char *name))
_COREGL_SYMBOL(void, glGetActiveUniform, (GLuint program, GLuint index,
_COREGL_SYMBOL(void, glGetAttachedShaders, (GLuint program, GLsizei maxcount,
GLsizei *count, GLuint *shaders))
_COREGL_SYMBOL(int, glGetAttribLocation, (GLuint program, const char *name))
-_COREGL_SYMBOL(void, glGetBooleanv, (GLenum pname, GLboolean *params))
-_COREGL_SYMBOL(void, glGetBufferParameteriv, (GLenum target, GLenum pname,
- GLint *params))
-_COREGL_SYMBOL(GLenum, glGetError, (void))
-_COREGL_SYMBOL(void, glGetFloatv, (GLenum pname, GLfloat *params))
_COREGL_SYMBOL(void, glGetFramebufferAttachmentParameteriv, (GLenum target,
GLenum attachment, GLenum pname, GLint *params))
-_COREGL_SYMBOL(void, glGetIntegerv, (GLenum pname, GLint *params))
_COREGL_SYMBOL(void, glGetProgramiv, (GLuint program, GLenum pname,
GLint *params))
_COREGL_SYMBOL(void, glGetProgramInfoLog, (GLuint program, GLsizei bufsize,
GLenum precisiontype, GLint *range, GLint *precision))
_COREGL_SYMBOL(void, glGetShaderSource, (GLuint shader, GLsizei bufsize,
GLsizei *length, char *source))
-_COREGL_SYMBOL(const GLubyte *, glGetString, (GLenum name))
-_COREGL_SYMBOL(void, glGetTexParameterfv, (GLenum target, GLenum pname,
- GLfloat *params))
-_COREGL_SYMBOL(void, glGetTexParameteriv, (GLenum target, GLenum pname,
- GLint *params))
_COREGL_SYMBOL(void, glGetUniformfv, (GLuint program, GLint location,
GLfloat *params))
_COREGL_SYMBOL(void, glGetUniformiv, (GLuint program, GLint location,
GLint *params))
_COREGL_SYMBOL(void, glGetVertexAttribPointerv, (GLuint index, GLenum pname,
void **pointer))
-_COREGL_SYMBOL(void, glHint, (GLenum target, GLenum mode))
-_COREGL_SYMBOL(GLboolean, glIsBuffer, (GLuint buffer))
-_COREGL_SYMBOL(GLboolean, glIsEnabled, (GLenum cap))
_COREGL_SYMBOL(GLboolean, glIsFramebuffer, (GLuint framebuffer))
_COREGL_SYMBOL(GLboolean, glIsProgram, (GLuint program))
_COREGL_SYMBOL(GLboolean, glIsRenderbuffer, (GLuint renderbuffer))
_COREGL_SYMBOL(GLboolean, glIsShader, (GLuint shader))
-_COREGL_SYMBOL(GLboolean, glIsTexture, (GLuint texture))
-_COREGL_SYMBOL(void, glLineWidth, (GLfloat width))
_COREGL_SYMBOL(void, glLinkProgram, (GLuint program))
-_COREGL_SYMBOL(void, glPixelStorei, (GLenum pname, GLint param))
-_COREGL_SYMBOL(void, glPolygonOffset, (GLfloat factor, GLfloat units))
-_COREGL_SYMBOL(void, glReadPixels, (GLint x, GLint y, GLsizei width,
- GLsizei height, GLenum format, GLenum type, void *pixels))
_COREGL_SYMBOL(void, glReleaseShaderCompiler, (void))
_COREGL_SYMBOL(void, glRenderbufferStorage, (GLenum target,
GLenum internalformat, GLsizei width, GLsizei height))
-_COREGL_SYMBOL(void, glSampleCoverage, (GLclampf value, GLboolean invert))
-_COREGL_SYMBOL(void, glScissor, (GLint x, GLint y, GLsizei width,
- GLsizei height))
_COREGL_SYMBOL(void, glShaderBinary, (GLsizei n, const GLuint *shaders,
GLenum binaryformat, const void *binary, GLsizei length))
_COREGL_SYMBOL(void, glShaderSource, (GLuint shader, GLsizei count,
const char **string, const GLint *length))
-_COREGL_SYMBOL(void, glStencilFunc, (GLenum func, GLint ref, GLuint mask))
_COREGL_SYMBOL(void, glStencilFuncSeparate, (GLenum face, GLenum func,
GLint ref, GLuint mask))
-_COREGL_SYMBOL(void, glStencilMask, (GLuint mask))
_COREGL_SYMBOL(void, glStencilMaskSeparate, (GLenum face, GLuint mask))
-_COREGL_SYMBOL(void, glStencilOp, (GLenum fail, GLenum zfail, GLenum zpass))
_COREGL_SYMBOL(void, glStencilOpSeparate, (GLenum face, GLenum fail,
GLenum zfail, GLenum zpass))
-_COREGL_SYMBOL(void, glTexImage2D, (GLenum target, GLint level,
- GLint internalformat, GLsizei width, GLsizei height, GLint border,
- GLenum format, GLenum type, const void *pixels))
-_COREGL_SYMBOL(void, glTexParameterf, (GLenum target, GLenum pname,
- GLfloat param))
-_COREGL_SYMBOL(void, glTexParameterfv, (GLenum target, GLenum pname,
- const GLfloat *params))
-_COREGL_SYMBOL(void, glTexParameteri, (GLenum target, GLenum pname,
- GLint param))
-_COREGL_SYMBOL(void, glTexParameteriv, (GLenum target, GLenum pname,
- const GLint *params))
-_COREGL_SYMBOL(void, glTexSubImage2D, (GLenum target, GLint level,
- GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format,
- GLenum type, const void *pixels))
_COREGL_SYMBOL(void, glUniform1f, (GLint location, GLfloat x))
_COREGL_SYMBOL(void, glUniform1fv, (GLint location, GLsizei count,
const GLfloat *v))
_COREGL_SYMBOL(void, glVertexAttrib4fv, (GLuint index, const GLfloat *values))
_COREGL_SYMBOL(void, glVertexAttribPointer, (GLuint index, GLint size,
GLenum type, GLboolean normalized, GLsizei stride, const void *pointer))
-_COREGL_SYMBOL(void, glViewport, (GLint x, GLint y, GLsizei width,
- GLsizei height))
-_COREGL_SYMBOL(void, glGetPointerv, (GLenum pname, GLvoid **params))
-
_COREGL_EXT_SYMBOL(void, glBindFramebufferOES, (GLenum target,
GLuint framebuffer))
_COREGL_EXT_SYMBOL(void, glBindRenderbufferOES, (GLenum target,
GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height,
GLsizei depth, GLboolean fixedsamplelocations))
_COREGL_EXT_SYMBOL(void, glTranslatexOES, (GLfixed x, GLfixed y, GLfixed z))
+_COREGL_END_API(COREGL_GLAPI_2)
+
/* OpenGL ES 3.0 */
_COREGL_START_API(COREGL_GLAPI_3)
_COREGL_SYMBOL(void, glReadBuffer, (GLenum mode))
_COREGL_EXT_SYMBOL(void, glGenQueriesEXT, (GLsizei n, GLuint *ids))
_COREGL_EXT_SYMBOL(GLboolean, glIsQueryEXT, (GLuint id))
_COREGL_EXT_SYMBOL(void, glEndQueryEXT, (GLenum target))
-_COREGL_EXT_SYMBOL(void, glBindVertexArrayOES, (GLuint array))
-_COREGL_EXT_SYMBOL(void, glDeleteVertexArraysOES, (GLsizei n,
- GLuint const *arrays))
-_COREGL_EXT_SYMBOL(GLboolean, glIsVertexArrayOES, (GLuint array))
-_COREGL_EXT_SYMBOL(void, glGenVertexArraysOES, (GLsizei n, GLuint *arrays))
-_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_EXT_multisampled_render_to_texture",
- 2.0, -1)
-_COREGL_EXT_SYMBOL(void, glRenderbufferStorageMultisampleEXT, (GLenum target,
- GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height))
-_COREGL_EXT_SYMBOL(void, glFramebufferTexture2DMultisampleEXT, (GLenum target,
- GLenum attachment, GLenum textarget, GLuint texture, GLint level,
- GLsizei samples))
-
-_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_EXT_discard_framebuffer", 1.0, -1)
-_COREGL_EXT_SYMBOL(void, glDiscardFramebufferEXT, (GLenum target,
- GLsizei numAttachments, const GLenum *attachments))
_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_OES_texture_3D", 2.0, -1)
_COREGL_EXT_SYMBOL(void, glTexImage3DOES, (GLenum target, GLint level,
const GLvoid *data))
-_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_OES_mapbuffer", 1.1, -1)
-_COREGL_EXT_SYMBOL(void, glGetBufferPointervOES, (GLenum target, GLenum pname,
- GLvoid **params))
-_COREGL_EXT_SYMBOL(void *, glMapBufferOES, (GLenum target, GLenum access))
-_COREGL_EXT_SYMBOL(GLboolean, glUnmapBufferOES, (GLenum target))
-
/*
_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_ANGLE_framebuffer_blit", 1.1, -1)
_COREGL_EXT_SYMBOL(void, glBlitFramebufferANGLE, (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter))
_COREGL_EXT_SYMBOL_FASTPATH_PASS(glEndPerfMonitorAMD)
_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetPerfMonitorCounterDataAMD)
-_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_NV_fence", -1, -1)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glDeleteFencesNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGenFencesNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glIsFenceNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glTestFenceNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetFenceivNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glFinishFenceNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glSetFenceNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glSetFenceNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glTestFenceNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glFinishFenceNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGenFencesNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glDeleteFencesNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glIsFenceNV)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetFenceivNV)
-
-_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_QCOM_driver_control", 1.0, -1)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetDriverControlsQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetDriverControlStringQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glEnableDriverControlQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glDisableDriverControlQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glStartTilingQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glEndTilingQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetDriverControlsQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetDriverControlStringQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glEnableDriverControlQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glDisableDriverControlQCOM)
-
-_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_QCOM_tiled_rendering", 1.0, -1)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glStartTilingQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_PASS(glEndTilingQCOM)
-
_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetTexLevelParameterfv)
_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetTexLevelParameteriv)
//_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_QCOM_writeonly_rendering", 1.0, -1)
-// QCOM_extended_get
-//_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_QCOM_extended_get", 1.0, -1)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetTexturesQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetBuffersQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetRenderbuffersQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetFramebuffersQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetTexLevelParameterivQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtTexObjectStateOverrideiQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetTexSubImageQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetBufferPointervQCOM)
-
-// QCOM_extended_get2
-//_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_QCOM_extended_get2", 1.0, -1)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetShadersQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetProgramsQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtIsProgramBinaryQCOM)
-_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetProgramBinarySourceQCOM)
-
// ES3 Invalid usages
_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glBlitFramebuffer)
-
-
#ifdef _COREGL_EXT_SYMBOL_NOT_DEFINED
#undef _COREGL_EXT_SYMBOL_NOT_DEFINED
#undef _COREGL_EXT_SYMBOL
#undef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK
#endif
-#ifdef _COREGL_START_API
+#ifdef _COREGL_START_API_DEFINED_INSIDE
#undef _COREGL_START_API
+#undef _COREGL_START_API_DEFINED_INSIDE
#endif
-#ifdef _COREGL_END_API
+#ifdef _COREGL_END_API_DEFINED_INSIDE
#undef _COREGL_END_API
+#undef _COREGL_END_API_DEFINED_INSIDE
#endif
--- /dev/null
+// Defult use-case for exporting symbols
+#ifndef _COREGL_SYMBOL
+#define _COREGL_SYMBOL_NOT_DEFINED
+#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) COREGL_API extern RET_TYPE FUNC_NAME PARAM_LIST;
+#endif
+#ifndef _COREGL_EXT_SYMBOL
+#define _COREGL_EXT_SYMBOL_NOT_DEFINED
+#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
+#endif
+#ifndef _COREGL_EXT_SYMBOL_ALIAS
+#define _COREGL_EXT_SYMBOL_ALIAS_NOT_DEFINED
+#define _COREGL_EXT_SYMBOL_ALIAS(FUNC_NAME, ALIAS_NAME)
+#endif
+#ifndef _COREGL_FASTPATH_SUPPORTED_EXTENSION
+#define _COREGL_FASTPATH_SUPPORTED_EXTENSION_NOT_DEFINED
+#define _COREGL_FASTPATH_SUPPORTED_EXTENSION(NAME, MINVER, MAXVER)
+#endif
+#ifndef _COREGL_EXT_SYMBOL_FASTPATH_PASS
+#define _COREGL_EXT_SYMBOL_FASTPATH_PASS_NOT_DEFINED
+#define _COREGL_EXT_SYMBOL_FASTPATH_PASS(FUNC_NAME)
+#endif
+#ifndef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK
+#define _COREGL_EXT_SYMBOL_FASTPATH_BLOCK_NOT_DEFINED
+#define _COREGL_EXT_SYMBOL_FASTPATH_BLOCK(FUNC_NAME)
+#endif
+
+#ifndef _COREGL_START_API
+#define _COREGL_START_API(VERSION)
+#define _COREGL_START_API_DEFINED_INSIDE
+#endif
+
+#ifndef _COREGL_END_API
+#define _COREGL_END_API(VERSION)
+#define _COREGL_END_API_DEFINED_INSIDE
+#endif
+
+_COREGL_START_API(COREGL_GLAPI_1_2_COMMON)
+_COREGL_SYMBOL(void, glActiveTexture, (GLenum texture))
+_COREGL_SYMBOL(void, glClearColor, (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha))
+_COREGL_SYMBOL(void, glClearDepthf, (GLclampf depth))
+_COREGL_SYMBOL(void, glDepthRangef, (GLclampf zNear, GLclampf zFar))
+_COREGL_SYMBOL(void, glGetFloatv, (GLenum pname, GLfloat *params))
+_COREGL_SYMBOL(void, glGetTexParameterfv, (GLenum target, GLenum pname, GLfloat *params))
+_COREGL_SYMBOL(void, glLineWidth, (GLfloat width))
+_COREGL_SYMBOL(void, glPolygonOffset, (GLfloat factor, GLfloat units))
+_COREGL_SYMBOL(void, glTexParameterf, (GLenum target, GLenum pname, GLfloat param))
+_COREGL_SYMBOL(void, glTexParameterfv, (GLenum target, GLenum pname, const GLfloat *params))
+_COREGL_SYMBOL(void, glBindBuffer, (GLenum target, GLuint buffer))
+_COREGL_SYMBOL(void, glBindTexture, (GLenum target, GLuint texture))
+_COREGL_SYMBOL(void, glBlendFunc, (GLenum sfactor, GLenum dfactor))
+_COREGL_SYMBOL(void, glBufferData, (GLenum target, GLsizeiptr size,
+ const void *data, GLenum usage))
+_COREGL_SYMBOL(void, glBufferSubData, (GLenum target, GLintptr offset,
+ GLsizeiptr size, const void *data))
+_COREGL_SYMBOL(void, glClear, (GLbitfield mask))
+_COREGL_SYMBOL(void, glClearStencil, (GLint s))
+_COREGL_SYMBOL(void, glColorMask, (GLboolean red, GLboolean green,
+ GLboolean blue, GLboolean alpha))
+_COREGL_SYMBOL(void, glCompressedTexImage2D, (GLenum target, GLint level,
+ GLenum internalformat, GLsizei width, GLsizei height, GLint border,
+ GLsizei imageSize, const void *data))
+_COREGL_SYMBOL(void, glCompressedTexSubImage2D, (GLenum target, GLint level,
+ GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format,
+ GLsizei imageSize, const void *data))
+_COREGL_SYMBOL(void, glCopyTexImage2D, (GLenum target, GLint level,
+ GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border))
+_COREGL_SYMBOL(void, glCopyTexSubImage2D, (GLenum target, GLint level,
+ GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height))
+_COREGL_SYMBOL(void, glCullFace, (GLenum mode))
+_COREGL_SYMBOL(void, glDeleteBuffers, (GLsizei n, const GLuint *buffers))
+_COREGL_SYMBOL(void, glDeleteTextures, (GLsizei n, const GLuint *textures))
+_COREGL_SYMBOL(void, glDepthFunc, (GLenum func))
+_COREGL_SYMBOL(void, glDepthMask, (GLboolean flag))
+_COREGL_SYMBOL(void, glDisable, (GLenum cap))
+_COREGL_SYMBOL(void, glDrawArrays, (GLenum mode, GLint first, GLsizei count))
+_COREGL_SYMBOL(void, glDrawElements, (GLenum mode, GLsizei count, GLenum type,
+ const void *indices))
+_COREGL_SYMBOL(void, glEnable, (GLenum cap))
+_COREGL_SYMBOL(void, glFinish, (void))
+_COREGL_SYMBOL(void, glFlush, (void))
+_COREGL_SYMBOL(void, glFrontFace, (GLenum mode))
+_COREGL_SYMBOL(void, glGetBooleanv, (GLenum pname, GLboolean *params))
+_COREGL_SYMBOL(void, glGetBufferParameteriv, (GLenum target, GLenum pname,
+ GLint *params))
+_COREGL_SYMBOL(void, glGenBuffers, (GLsizei n, GLuint *buffers))
+_COREGL_SYMBOL(void, glGenTextures, (GLsizei n, GLuint *textures))
+_COREGL_SYMBOL(GLenum, glGetError, (void))
+_COREGL_SYMBOL(void, glGetIntegerv, (GLenum pname, GLint *params))
+_COREGL_SYMBOL(void, glGetPointerv, (GLenum pname, GLvoid **params))
+_COREGL_SYMBOL(const GLubyte *, glGetString, (GLenum name))
+_COREGL_SYMBOL(void, glGetTexParameteriv, (GLenum target, GLenum pname,
+ GLint *params))
+_COREGL_SYMBOL(void, glHint, (GLenum target, GLenum mode))
+_COREGL_SYMBOL(GLboolean, glIsBuffer, (GLuint buffer))
+_COREGL_SYMBOL(GLboolean, glIsEnabled, (GLenum cap))
+_COREGL_SYMBOL(GLboolean, glIsTexture, (GLuint texture))
+_COREGL_SYMBOL(void, glPixelStorei, (GLenum pname, GLint param))
+_COREGL_SYMBOL(void, glReadPixels, (GLint x, GLint y, GLsizei width,
+ GLsizei height, GLenum format, GLenum type, void *pixels))
+_COREGL_SYMBOL(void, glSampleCoverage, (GLclampf value, GLboolean invert))
+_COREGL_SYMBOL(void, glScissor, (GLint x, GLint y, GLsizei width,
+ GLsizei height))
+_COREGL_SYMBOL(void, glStencilFunc, (GLenum func, GLint ref, GLuint mask))
+_COREGL_SYMBOL(void, glStencilMask, (GLuint mask))
+_COREGL_SYMBOL(void, glStencilOp, (GLenum fail, GLenum zfail, GLenum zpass))
+_COREGL_SYMBOL(void, glTexImage2D, (GLenum target, GLint level,
+ GLint internalformat, GLsizei width, GLsizei height, GLint border,
+ GLenum format, GLenum type, const void *pixels))
+_COREGL_SYMBOL(void, glTexParameteri, (GLenum target, GLenum pname,
+ GLint param))
+_COREGL_SYMBOL(void, glTexParameteriv, (GLenum target, GLenum pname,
+ const GLint *params))
+_COREGL_SYMBOL(void, glTexSubImage2D, (GLenum target, GLint level,
+ GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format,
+ GLenum type, const void *pixels))
+_COREGL_SYMBOL(void, glViewport, (GLint x, GLint y, GLsizei width, GLsizei height))
+
+/* extensions */
+_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_OES_mapbuffer", 1.1, -1)
+_COREGL_EXT_SYMBOL(void, glGetBufferPointervOES, (GLenum target, GLenum pname,
+ GLvoid **params))
+_COREGL_EXT_SYMBOL(void *, glMapBufferOES, (GLenum target, GLenum access))
+_COREGL_EXT_SYMBOL(GLboolean, glUnmapBufferOES, (GLenum target))
+
+_COREGL_EXT_SYMBOL(void, glBindVertexArrayOES, (GLuint array))
+_COREGL_EXT_SYMBOL(void, glDeleteVertexArraysOES, (GLsizei n,
+ GLuint const *arrays))
+_COREGL_EXT_SYMBOL(void, glGenVertexArraysOES, (GLsizei n, GLuint *arrays))
+_COREGL_EXT_SYMBOL(GLboolean, glIsVertexArrayOES, (GLuint array))
+_COREGL_EXT_SYMBOL(void, glRenderbufferStorageMultisampleAPPLE, (GLenum, GLsizei, GLenum, GLsizei, GLsizei))
+_COREGL_EXT_SYMBOL(void, glResolveMultisampleFramebufferAPPLE, (void))
+
+_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_EXT_discard_framebuffer", 1.0, -1)
+_COREGL_EXT_SYMBOL(void, glDiscardFramebufferEXT, (GLenum target,
+ GLsizei numAttachments, const GLenum *attachments))
+_COREGL_EXT_SYMBOL(void, glMultiDrawArraysEXT, (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount))
+_COREGL_EXT_SYMBOL(void, glMultiDrawElementsEXT, (GLenum mode, const GLsizei *count, GLenum type,
+ const void *const*indices, GLsizei primcount))
+
+_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_EXT_multisampled_render_to_texture",
+ 2.0, -1)
+_COREGL_EXT_SYMBOL(void, glRenderbufferStorageMultisampleEXT, (GLenum target,
+ GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height))
+_COREGL_EXT_SYMBOL(void, glFramebufferTexture2DMultisampleEXT, (GLenum target,
+ GLenum attachment, GLenum textarget, GLuint texture, GLint level,
+ GLsizei samples))
+_COREGL_EXT_SYMBOL(void, glRenderbufferStorageMultisampleIMG, (GLenum, GLsizei, GLenum, GLsizei, GLsizei))
+_COREGL_EXT_SYMBOL(void, glFramebufferTexture2DMultisampleIMG, (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei))
+
+_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_NV_fence", -1, -1)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glDeleteFencesNV)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGenFencesNV)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glIsFenceNV)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glTestFenceNV)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetFenceivNV)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glFinishFenceNV)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glSetFenceNV)
+
+_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_QCOM_driver_control", 1.0, -1)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetDriverControlsQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glGetDriverControlStringQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glEnableDriverControlQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glDisableDriverControlQCOM)
+
+_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_QCOM_tiled_rendering", 1.0, -1)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glStartTilingQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_PASS(glEndTilingQCOM)
+
+// QCOM_extended_get
+//_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_QCOM_extended_get", 1.0, -1)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetTexturesQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetBuffersQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetRenderbuffersQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetFramebuffersQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetTexLevelParameterivQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtTexObjectStateOverrideiQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetTexSubImageQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetBufferPointervQCOM)
+
+// QCOM_extended_get2
+//_COREGL_FASTPATH_SUPPORTED_EXTENSION("GL_QCOM_extended_get2", 1.0, -1)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetShadersQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetProgramsQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtIsProgramBinaryQCOM)
+_COREGL_EXT_SYMBOL_FASTPATH_BLOCK(glExtGetProgramBinarySourceQCOM)
+_COREGL_END_API(COREGL_GLAPI_1_2_COMMON)
+
+
+#ifdef _COREGL_EXT_SYMBOL_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL
+#endif
+
+#ifdef _COREGL_SYMBOL_NOT_DEFINED
+#undef _COREGL_SYMBOL_NOT_DEFINED
+#undef _COREGL_SYMBOL
+#endif
+
+#ifdef _COREGL_EXT_SYMBOL_ALIAS_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_ALIAS_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_ALIAS
+#endif
+
+#ifdef _COREGL_FASTPATH_SUPPORTED_EXTENSION_NOT_DEFINED
+#undef _COREGL_FASTPATH_SUPPORTED_EXTENSION_NOT_DEFINED
+#undef _COREGL_FASTPATH_SUPPORTED_EXTENSION
+#endif
+
+#ifdef _COREGL_EXT_SYMBOL_FASTPATH_PASS_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_FASTPATH_PASS_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_FASTPATH_PASS
+#endif
+
+#ifdef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK_NOT_DEFINED
+#undef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK
+#endif
+
+#ifdef _COREGL_START_API_DEFINED_INSIDE
+#undef _COREGL_START_API
+#undef _COREGL_START_API_DEFINED_INSIDE
+#endif
+
+#ifdef _COREGL_END_API_DEFINED_INSIDE
+#undef _COREGL_END_API
+#undef _COREGL_END_API_DEFINED_INSIDE
+#endif
{
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) COREGL_INIT_ORIGINAL(_orig_appopt_, FUNC_NAME);
#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
-# include "../../headers/sym_gl.h"
+# include "../../headers/sym_gl1.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
#undef _COREGL_EXT_SYMBOL
#undef _COREGL_SYMBOL
}
init_export();
// Step 2 : User Define Modules : Sequence is important! (Last module's API is called first)
- fastpath_apply_overrides();
+ if(driver_gl_version > COREGL_GLAPI_1) {
+ fastpath_apply_overrides();
+ }
appopt_apply_overrides();
// Step 3 : Common Wrapping Modules
- tracepath_apply_overrides();
+ if(driver_gl_version > COREGL_GLAPI_1) {
+ tracepath_apply_overrides();
+ }
}
void
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) RET_TYPE (*_orig_fastpath_##FUNC_NAME) PARAM_LIST = NULL;
-#include "../../headers/sym.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
+# include "../../headers/sym_egl.h"
#undef _COREGL_SYMBOL
Fastpath_Opt_Flag fp_opt = FP_UNKNOWN_PATH;
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) \
if(api_gl_version <= driver_gl_version) COREGL_INIT_ORIGINAL(_orig_fastpath_, FUNC_NAME);
-# include "../../headers/sym_gl.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
#undef _COREGL_SYMBOL
#undef _COREGL_START_API
#undef _COREGL_END_API
if (debug_nofp != 1) {
- if (driver_gl_version >= COREGL_GLAPI_1) {
- COREGL_OVERRIDE(fastpath_, glClientActiveTexture);
- COREGL_OVERRIDE(fastpath_, glSampleCoveragex);
- COREGL_OVERRIDE(fastpath_, glVertexPointer);
- }
-
COREGL_OVERRIDE(fastpath_, glGetError);
COREGL_OVERRIDE(fastpath_, glGetString);
#include "../../coregl_export.h"
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) extern RET_TYPE (*_orig_fastpath_##FUNC_NAME) PARAM_LIST;
-# include "../../headers/sym.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
+# include "../../headers/sym_egl.h"
#undef _COREGL_SYMBOL
// Symbol definition for fastpath
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) extern RET_TYPE (fastpath_##FUNC_NAME) PARAM_LIST;
-# include "../../headers/sym.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
+# include "../../headers/sym_egl.h"
#undef _COREGL_SYMBOL
#define COREGL_FASTPATH_TRACE_ALL
}
#include "../../headers/sym_egl.h"
-#include "../../headers/sym_gl.h"
+#include "../../headers/sym_gl1.h"
+#include "../../headers/sym_gl2.h"
+#include "../../headers/sym_gl_common.h"
#undef _COREGL_SYMBOL
#undef _COREGL_EXT_SYMBOL_ALIAS
}
#include "../../headers/sym_egl.h"
-#include "../../headers/sym_gl.h"
+#include "../../headers/sym_gl1.h"
+#include "../../headers/sym_gl2.h"
+#include "../../headers/sym_gl_common.h"
#undef _COREGL_EXT_SYMBOL_FASTPATH_PASS
#undef _COREGL_EXT_SYMBOL_FASTPATH_BLOCK
gl_extension_count++; \
}
-# include "../../headers/sym_gl.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
#undef _COREGL_FASTPATH_SUPPORTED_EXTENSION
#undef _COREGL_SYMBOL
AST(mutex_unlock(&extension_check_mutex) == 1);
}
-void
-fastpath_glClientActiveTexture (GLenum texture)
-{
- DEFINE_FASTPAH_GL_FUNC();
- _COREGL_FASTPATH_FUNC_BEGIN();
- INIT_FASTPATH_GL_FUNC();
-
- CURR_STATE_COMPARE(gl_client_active_texture, texture) {
- IF_GL_SUCCESS(_orig_fastpath_glClientActiveTexture(texture)) {
- current_ctx->_tex_flag1 |= _TEX_FLAG1_BIT_gl_client_active_texture;
- current_ctx->gl_client_active_texture[0] = texture;
- }
- }
- goto finish;
-
-finish:
- _COREGL_FASTPATH_FUNC_END();
-}
-
-void
-fastpath_glSampleCoveragex(GLclampx value, GLboolean invert)
-{
- DEFINE_FASTPAH_GL_FUNC();
- _COREGL_FASTPATH_FUNC_BEGIN();
- INIT_FASTPATH_GL_FUNC();
-
- if ((current_ctx->gl_sample_coverage_value[0] != value) ||
- (current_ctx->gl_sample_coverage_invert[0] != invert)) {
- IF_GL_SUCCESS(_orig_fastpath_glSampleCoveragex(value, invert)) {
- current_ctx->_misc_flag1 |=
- _MISC_FLAG1_BIT_gl_sample_coverage_value |
- _MISC_FLAG1_BIT_gl_sample_coverage_invert;
-
- current_ctx->gl_sample_coverage_value[0] = value;
- current_ctx->gl_sample_coverage_invert[0] = invert;
- }
- }
- goto finish;
-
-finish:
- _COREGL_FASTPATH_FUNC_END();
-}
-
-void
-fastpath_glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- DEFINE_FASTPAH_GL_FUNC();
- _COREGL_FASTPATH_FUNC_BEGIN();
- INIT_FASTPATH_GL_FUNC();
-
- _orig_fastpath_glVertexPointer(size, type, stride, pointer);
-
- goto finish;
-
-finish:
- _COREGL_FASTPATH_FUNC_END();
-}
-
GLenum
fastpath_glGetError(void)
{
#ifndef _COREGL_START_API
#define _COREGL_START_API(version)
+#define _COREGL_START_API_DEFINED_INSIDE
#endif
#ifndef _COREGL_END_API
#define _COREGL_END_API(version)
+#define _COREGL_END_API_DEFINED_INSIDE
#endif
_sym_glGetBooleanv(GL_TRANSFORM_FEEDBACK_PAUSED, (GLboolean *)value);)
_COREGL_END_API(COREGL_GLAPI_3)
+#ifdef _COREGL_START_API_DEFINED_INSIDE
+#undef _COREGL_START_API
+#undef _COREGL_START_API_DEFINED_INSIDE
+#endif
+
+#ifdef _COREGL_END_API_DEFINED_INSIDE
+#undef _COREGL_END_API
+#undef _COREGL_END_API_DEFINED_INSIDE
+#endif
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) RET_TYPE (*_orig_tracepath_##FUNC_NAME) PARAM_LIST = NULL;
-#include "../../headers/sym.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
+# include "../../headers/sym_egl.h"
#undef _COREGL_SYMBOL
#define TIMEVAL_INIT { 0, 0 }
#define _COREGL_END_API(version) api_gl_version = COREGL_GLAPI_2;
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) \
if(api_gl_version <= driver_gl_version) COREGL_INIT_ORIGINAL(_orig_tracepath_, FUNC_NAME);
-# include "../../headers/sym_gl.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
#undef _COREGL_SYMBOL
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) \
if(api_gl_version <= driver_gl_version) COREGL_OVERRIDE(tracepath_, FUNC_NAME);
-# include "../../headers/sym_gl.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
#undef _COREGL_SYMBOL
#undef _COREGL_START_API
#undef _COREGL_END_API
#include "../../coregl_export.h"
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) extern RET_TYPE (*_orig_tracepath_##FUNC_NAME) PARAM_LIST;
-# include "../../headers/sym.h"
+# include "../../headers/sym_egl.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
#undef _COREGL_SYMBOL
// Symbol definition for tracepath
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) extern RET_TYPE (tracepath_##FUNC_NAME) PARAM_LIST;
-# include "../../headers/sym.h"
+# include "../../headers/sym_egl.h"
+# include "../../headers/sym_gl2.h"
+# include "../../headers/sym_gl_common.h"
#undef _COREGL_SYMBOL
#define MAX_TRACE_NAME_LENGTH 256
}
#include "../../headers/sym_egl.h"
-#include "../../headers/sym_gl.h"
+#include "../../headers/sym_gl1.h"
+#include "../../headers/sym_gl2.h"
#undef _COREGL_SYMBOL
#undef _COREGL_EXT_SYMBOL_ALIAS
}
#endif // COREGL_TRACEPATH_TRACE_SURFACE_INFO
-
-/* Beginning of OpenGL ES 1.1*/
-void
-tracepath_glAlphaFunc(GLenum func, GLclampf ref)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glAlphaFunc(func, ref);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glClipPlanef(GLenum plane, const GLfloat *equation)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glClipPlanef(plane, equation);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glColor4f(red, green, blue, alpha);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glFogf(GLenum pname, GLfloat param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glFogf(pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glFogfv(GLenum pname, const GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glFogfv(pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glFrustumf(left, right, bottom, top, zNear, zFar);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetClipPlanef(GLenum pname, GLfloat eqn[4])
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetClipPlanef(pname, eqn);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetLightfv(light, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetMaterialfv(face, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetTexEnvfv(GLenum env, GLenum pname, GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetTexEnvfv(env, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLightModelf(GLenum pname, GLfloat param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLightModelf(pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLightModelfv(GLenum pname, const GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLightModelfv(pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLightf(GLenum light, GLenum pname, GLfloat param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLightf(light, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLightfv(GLenum light, GLenum pname, const GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLightfv(light, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLoadMatrixf(const GLfloat *m)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLoadMatrixf(m);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMaterialf(GLenum face, GLenum pname, GLfloat param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMaterialf(face, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMaterialfv(face, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMultMatrixf(const GLfloat *m)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMultMatrixf(m);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMultiTexCoord4f(target, s, t, r, q);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glNormal3f(nx, ny, nz);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glOrthof(left, right, bottom, top, zNear, zFar);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glPointParameterf(GLenum pname, GLfloat param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPointParameterf(pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glPointParameterfv(GLenum pname, const GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPointParameterfv(pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glPointSize(GLfloat size)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPointSize(size);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glRotatef(angle, x, y, z);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glScalef(GLfloat x, GLfloat y, GLfloat z)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glScalef(x, y, z);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexEnvf(GLenum target, GLenum pname, GLfloat param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexEnvf(target, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexEnvfv(target, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTranslatef(GLfloat x, GLfloat y, GLfloat z)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTranslatef(x, y, z);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glAlphaFuncx(GLenum func, GLclampx ref)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glAlphaFuncx(func, ref);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glClearColorx(red, green, blue, alpha);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glClearDepthx(GLclampx depth)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glClearDepthx(depth);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glClientActiveTexture(GLenum texture)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glClientActiveTexture(texture);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glClipPlanex(GLenum plane, const GLfixed *equation)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glClipPlanex(plane, equation);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glColor4ub(red, green, blue, alpha);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glColor4x(red, green, blue, alpha);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glColorPointer(size, type, stride, pointer);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDepthRangex(GLclampx zNear, GLclampx zFar)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDepthRangex(zNear, zFar);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDisableClientState(GLenum array)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDisableClientState(array);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glEnableClientState(GLenum array)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glEnableClientState(array);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glFogx(GLenum pname, GLfixed param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glFogx(pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glFogxv(GLenum pname, const GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glFogxv(pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glFrustumx(left, right, bottom, top, zNear, zFar);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetClipPlanex(GLenum pname, GLfixed eqn[4])
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetClipPlanex(pname, eqn);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetFixedv(GLenum pname, GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetFixedv(pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetLightxv(light, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetMaterialxv(face, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetTexEnviv(GLenum env, GLenum pname, GLint *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetTexEnviv(env, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetTexEnvxv(env, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetTexParameterxv(target, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLightModelx(GLenum pname, GLfixed param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLightModelx(pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLightModelxv(GLenum pname, const GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLightModelxv(pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLightx(GLenum light, GLenum pname, GLfixed param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLightx(light, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLightxv(GLenum light, GLenum pname, const GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLightxv(light, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLineWidthx(GLfixed width)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLineWidthx(width);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLoadIdentity(void)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLoadIdentity();
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLoadMatrixx(const GLfixed *m)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLoadMatrixx(m);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLogicOp(GLenum opcode)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLogicOp(opcode);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMaterialx(GLenum face, GLenum pname, GLfixed param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMaterialx(face, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMaterialxv(face, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMatrixMode(GLenum mode)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMatrixMode(mode);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMultMatrixx(const GLfixed *m)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMultMatrixx(m);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMultiTexCoord4x(target, s, t, r, q);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glNormal3x(nx, ny, nz);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glNormalPointer(type, stride, pointer);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glOrthox(left, right, bottom, top, zNear, zFar);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glPointParameterx(GLenum pname, GLfixed param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPointParameterx(pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glPointParameterxv(GLenum pname, const GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPointParameterxv(pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glPointSizex(GLfixed size)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPointSizex(size);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glPolygonOffsetx(GLfixed factor, GLfixed units)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPolygonOffsetx(factor, units);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glPopMatrix(void)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPopMatrix();
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glPushMatrix(void)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPushMatrix();
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glRotatex (angle, x, y, z);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glSampleCoveragex(GLclampx value, GLboolean invert)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glSampleCoveragex(value, invert);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glScalex(GLfixed x, GLfixed y, GLfixed z)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glScalex (x, y, z);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glShadeModel(GLenum mode)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glShadeModel(mode);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexCoordPointer(size, type, stride, pointer);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexEnvi(GLenum target, GLenum pname, GLint param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexEnvi(target, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexEnvx(GLenum target, GLenum pname, GLfixed param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexEnvx(target, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexEnviv(GLenum target, GLenum pname, const GLint *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexEnviv(target, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexEnvxv(target, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexParameterx(GLenum target, GLenum pname, GLfixed param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexParameterx(target, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexParameterxv(target, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTranslatex(GLfixed x, GLfixed y, GLfixed z)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTranslatex(x, y, z);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glVertexPointer(size, type, stride, pointer);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-//OpenGL ES 1.1 extensions
-void
-tracepath_glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glPointSizePointerOES(type, stride, pointer);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDrawTexsOES(x, y, z, width, height);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDrawTexiOES(x, y, z, width, height);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDrawTexxOES(x, y, z, width, height);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDrawTexsvOES(const GLshort *coords)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDrawTexsvOES(coords);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDrawTexivOES(const GLint *coords)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDrawTexivOES(coords);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDrawTexxvOES(const GLfixed *coords)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDrawTexxvOES(coords);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDrawTexfOES(x, y, z, width, height);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glDrawTexfvOES(const GLfloat *coords)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glDrawTexfvOES(coords);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glCurrentPaletteMatrixOES(GLuint matrixpaletteindex)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glCurrentPaletteMatrixOES(matrixpaletteindex);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glLoadPaletteFromModelViewMatrixOES(void)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glLoadPaletteFromModelViewMatrixOES();
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glMatrixIndexPointerOES(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glMatrixIndexPointerOES(size, type, stride, pointer);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glWeightPointerOES(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glWeightPointerOES(size, type, stride, pointer);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-GLbitfield
-tracepath_glQueryMatrixxOES(GLfixed mantissa[16], GLint exponent[16])
-{
- GLuint ret = _COREGL_INT_INIT_VALUE;
-
- _COREGL_TRACEPATH_FUNC_BEGIN();
- ret = _orig_tracepath_glQueryMatrixxOES(mantissa, exponent);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
- return ret;
-}
-
-void
-tracepath_glTexGenfOES(GLenum coord, GLenum pname, GLfloat param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexGenfOES(coord, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexGenfvOES(GLenum coord, GLenum pname, const GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexGenfvOES(coord, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexGeniOES(GLenum coord, GLenum pname, GLint param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexGeniOES(coord, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexGenivOES(GLenum coord, GLenum pname, const GLint *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexGenivOES(coord, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexGenxOES(GLenum coord, GLenum pname, GLfixed param)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexGenxOES(coord, pname, param);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glTexGenxvOES(GLenum coord, GLenum pname, const GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glTexGenxvOES(coord, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetTexGenfvOES(coord, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetTexGenivOES(GLenum coord, GLenum pname, GLint *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetTexGenivOES(coord, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glGetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glGetTexGenxvOES(coord, pname, params);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
+/* common extensions in GLES1.1 and GLES2.0 */
void
tracepath_glRenderbufferStorageMultisampleAPPLE(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
{
}
void
-tracepath_glClipPlanefIMG(GLenum plane, const GLfloat *equation)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glClipPlanefIMG(plane, equation);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
-tracepath_glClipPlanexIMG(GLenum plane, const GLfixed *equation)
-{
- _COREGL_TRACEPATH_FUNC_BEGIN();
- _orig_tracepath_glClipPlanexIMG(plane, equation);
-
- goto finish;
-
-finish:
- _COREGL_TRACEPATH_FUNC_END();
-}
-
-void
tracepath_glRenderbufferStorageMultisampleIMG(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
{
_COREGL_TRACEPATH_FUNC_BEGIN();
finish:
_COREGL_TRACEPATH_FUNC_END();
}
-
-/* Ending of OpenGL ES 1.1*/
-
-/* OpenGL ES 2.0 */
+/* end of common extensions in GLES1.1 and GLES2.0 */
void
tracepath_glActiveTexture(GLenum texture)
--- /dev/null
+#include <stdio.h>
+#include <dlfcn.h>
+
+# include <GLES/glplatform.h>
+# include "../headers/gl.h"
+
+///////////////////////////////////////
+// Disable dlog for debugging urgent issues //
+//#define LOG_TAG "CoreGL_GLES2"
+//#include <dlog.h>
+#define LOGE(...) fprintf(stderr, __VA_ARGS__)
+#define LOGW(...) fprintf(stderr, __VA_ARGS__)
+#define LOGD(...) fprintf(stderr, __VA_ARGS__)
+///////////////////////////////////////
+
+#define COREGL_API __attribute__((visibility("default")))
+
+#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) COREGL_API extern RET_TYPE FUNC_NAME PARAM_LIST;
+#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
+# include "../headers/sym_gl1.h"
+#undef _COREGL_EXT_SYMBOL
+#undef _COREGL_SYMBOL
+
+#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) RET_TYPE (*ovr_##FUNC_NAME) PARAM_LIST = NULL;
+#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
+# include "../headers/sym_gl1.h"
+
+#undef _COREGL_EXT_SYMBOL
+#undef _COREGL_SYMBOL
+
+#define INIT_EXPORT()
+
+void *lib_handle = NULL;
+void (* set_driver_gl_version)(int version);
+
+__attribute__((constructor))
+int
+coregl_glwrap_init()
+{
+ lib_handle = dlopen("libCOREGL.so", RTLD_NOW);
+ if (!lib_handle) {
+ LOGE(" \E[40;31;1m%s\E[0m\n\n", dlerror());
+ LOGE(" \E[40;31;1mInvalid library link! (Check linkage of libEGL -> libCOREGL)\E[0m\n");
+ return 0;
+ }
+
+ set_driver_gl_version = dlsym(lib_handle, "set_driver_gl_version");
+ if(set_driver_gl_version)
+ set_driver_gl_version(1);
+ else
+ printf("%s\n", dlerror());
+
+#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) \
+ ovr_##FUNC_NAME = (__typeof__(ovr_##FUNC_NAME))dlsym(lib_handle, "coregl_api_"#FUNC_NAME); \
+ if (ovr_##FUNC_NAME == NULL) \
+ { \
+ LOGE("\E[40;31;1mCan't find a symbol '%s'!\E[0m\n\n", #FUNC_NAME); \
+ LOGE("\E[40;31;1mInvalid library link! (Check linkage of libGLESv1_CM -> libCOREGL)\E[0m\n"); \
+ }
+
+#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
+#include "../headers/sym_gl1.h"
+#undef _COREGL_EXT_SYMBOL
+#undef _COREGL_SYMBOL
+
+ return 1;
+}
+
+void
+glAlphaFunc(GLenum func, GLclampf ref)
+{
+ ovr_glAlphaFunc(func, ref);
+}
+
+void
+glClipPlanef(GLenum plane, const GLfloat *equation)
+{
+ ovr_glClipPlanef(plane, equation);
+}
+
+void
+glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ ovr_glColor4f(red, green, blue, alpha);
+}
+
+void
+glFogf(GLenum pname, GLfloat param)
+{
+ ovr_glFogf(pname, param);
+}
+
+void
+glFogfv(GLenum pname, const GLfloat *params)
+{
+ ovr_glFogfv(pname, params);
+}
+
+void
+glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ ovr_glFrustumf(left, right, bottom, top, zNear, zFar);
+}
+
+void
+glGetClipPlanef(GLenum pname, GLfloat eqn[4])
+{
+ ovr_glGetClipPlanef(pname, eqn);
+}
+
+void
+glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ ovr_glGetLightfv(light, pname, params);
+}
+
+void
+glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ ovr_glGetMaterialfv(face, pname, params);
+}
+
+void
+glGetTexEnvfv(GLenum env, GLenum pname, GLfloat *params)
+{
+ ovr_glGetTexEnvfv(env, pname, params);
+}
+
+void
+glLightModelf(GLenum pname, GLfloat param)
+{
+ ovr_glLightModelf(pname, param);
+}
+
+void
+glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ ovr_glLightModelfv(pname, params);
+}
+
+void
+glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ ovr_glLightf(light, pname, param);
+}
+
+void
+glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ ovr_glLightfv(light, pname, params);
+}
+
+void
+glLoadMatrixf(const GLfloat *m)
+{
+ ovr_glLoadMatrixf(m);
+}
+
+void
+glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ ovr_glMaterialf(face, pname, param);
+}
+
+void
+glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ ovr_glMaterialfv(face, pname, params);
+}
+
+void
+glMultMatrixf(const GLfloat *m)
+{
+ ovr_glMultMatrixf(m);
+}
+
+void
+glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ ovr_glMultiTexCoord4f(target, s, t, r, q);
+}
+
+void
+glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ ovr_glNormal3f(nx, ny, nz);
+}
+
+void
+glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
+{
+ ovr_glOrthof(left, right, bottom, top, zNear, zFar);
+}
+
+void
+glPointParameterf(GLenum pname, GLfloat param)
+{
+ ovr_glPointParameterf(pname, param);
+}
+
+void
+glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ ovr_glPointParameterfv(pname, params);
+}
+
+void
+glPointSize(GLfloat size)
+{
+ ovr_glPointSize(size);
+}
+
+void
+glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ ovr_glRotatef(angle, x, y, z);
+}
+
+void
+glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ ovr_glScalef(x, y, z);
+}
+
+void
+glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ ovr_glTexEnvf(target, pname, param);
+}
+
+void
+glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ ovr_glTexEnvfv(target, pname, params);
+}
+
+void
+glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ ovr_glTranslatef(x, y, z);
+}
+
+void
+glAlphaFuncx(GLenum func, GLclampx ref)
+{
+ ovr_glAlphaFuncx(func, ref);
+}
+
+void
+glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
+{
+ ovr_glClearColorx(red, green, blue, alpha);
+}
+
+void
+glClearDepthx(GLclampx depth)
+{
+ ovr_glClearDepthx(depth);
+}
+
+void
+glClientActiveTexture(GLenum texture)
+{
+ ovr_glClientActiveTexture(texture);
+}
+
+void
+glClipPlanex(GLenum plane, const GLfixed *equation)
+{
+ ovr_glClipPlanex(plane, equation);
+}
+
+void
+glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ ovr_glColor4ub(red, green, blue, alpha);
+}
+
+void
+glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ ovr_glColor4x(red, green, blue, alpha);
+}
+
+void
+glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ ovr_glColorPointer(size, type, stride, pointer);
+}
+
+void
+glDepthRangex(GLclampx zNear, GLclampx zFar)
+{
+ ovr_glDepthRangex(zNear, zFar);
+}
+
+void
+glDisableClientState(GLenum array)
+{
+ ovr_glDisableClientState(array);
+}
+
+void
+glEnableClientState(GLenum array)
+{
+ ovr_glEnableClientState(array);
+}
+
+void
+glFogx(GLenum pname, GLfixed param)
+{
+ ovr_glFogx(pname, param);
+}
+
+void
+glFogxv(GLenum pname, const GLfixed *params)
+{
+ ovr_glFogxv(pname, params);
+}
+
+void
+glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ ovr_glFrustumx(left, right, bottom, top, zNear, zFar);
+}
+
+void
+glGetClipPlanex(GLenum pname, GLfixed eqn[4])
+{
+ ovr_glGetClipPlanex(pname, eqn);
+}
+
+void
+glGetFixedv(GLenum pname, GLfixed *params)
+{
+ ovr_glGetFixedv(pname, params);
+}
+
+void
+glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
+{
+ ovr_glGetLightxv(light, pname, params);
+}
+
+void
+glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
+{
+ ovr_glGetMaterialxv(face, pname, params);
+}
+
+void
+glGetTexEnviv(GLenum env, GLenum pname, GLint *params)
+{
+ ovr_glGetTexEnviv(env, pname, params);
+}
+
+void
+glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
+{
+ ovr_glGetTexEnvxv(env, pname, params);
+}
+
+void
+glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
+{
+ ovr_glGetTexParameterxv(target, pname, params);
+}
+
+void
+glLightModelx(GLenum pname, GLfixed param)
+{
+ ovr_glLightModelx(pname, param);
+}
+
+void
+glLightModelxv(GLenum pname, const GLfixed *params)
+{
+ ovr_glLightModelxv(pname, params);
+}
+
+void
+glLightx(GLenum light, GLenum pname, GLfixed param)
+{
+ ovr_glLightx(light, pname, param);
+}
+
+void
+glLightxv(GLenum light, GLenum pname, const GLfixed *params)
+{
+ ovr_glLightxv(light, pname, params);
+}
+
+void
+glLineWidthx(GLfixed width)
+{
+ ovr_glLineWidthx(width);
+}
+
+void
+glLoadIdentity(void)
+{
+ ovr_glLoadIdentity();
+}
+
+void
+glLoadMatrixx(const GLfixed *m)
+{
+ ovr_glLoadMatrixx(m);
+}
+
+void
+glLogicOp(GLenum opcode)
+{
+ ovr_glLogicOp(opcode);
+}
+
+void
+glMaterialx(GLenum face, GLenum pname, GLfixed param)
+{
+ ovr_glMaterialx(face, pname, param);
+}
+
+void
+glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
+{
+ ovr_glMaterialxv(face, pname, params);
+}
+
+void
+glMatrixMode(GLenum mode)
+{
+ ovr_glMatrixMode(mode);
+}
+
+void
+glMultMatrixx(const GLfixed *m)
+{
+ ovr_glMultMatrixx(m);
+}
+
+void
+glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
+{
+ ovr_glMultiTexCoord4x(target, s, t, r, q);
+}
+
+void
+glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ ovr_glNormal3x(nx, ny, nz);
+}
+
+void
+glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ ovr_glNormalPointer(type, stride, pointer);
+}
+
+void
+glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
+{
+ ovr_glOrthox(left, right, bottom, top, zNear, zFar);
+}
+
+void
+glPointParameterx(GLenum pname, GLfixed param)
+{
+ ovr_glPointParameterx(pname, param);
+}
+
+void
+glPointParameterxv(GLenum pname, const GLfixed *params)
+{
+ ovr_glPointParameterxv(pname, params);
+}
+
+void
+glPointSizex(GLfixed size)
+{
+ ovr_glPointSizex(size);
+}
+
+void
+glPolygonOffsetx(GLfixed factor, GLfixed units)
+{
+ ovr_glPolygonOffsetx(factor, units);
+}
+
+void
+glPopMatrix(void)
+{
+ ovr_glPopMatrix();
+}
+
+void
+glPushMatrix(void)
+{
+ ovr_glPushMatrix();
+}
+
+void
+glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ ovr_glRotatex (angle, x, y, z);
+}
+
+void
+glSampleCoveragex(GLclampx value, GLboolean invert)
+{
+ ovr_glSampleCoveragex(value, invert);
+}
+
+void
+glScalex(GLfixed x, GLfixed y, GLfixed z)
+{
+ ovr_glScalex (x, y, z);
+}
+
+void
+glShadeModel(GLenum mode)
+{
+ ovr_glShadeModel(mode);
+}
+
+void
+glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ ovr_glTexCoordPointer(size, type, stride, pointer);
+}
+
+void
+glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ ovr_glTexEnvi(target, pname, param);
+}
+
+void
+glTexEnvx(GLenum target, GLenum pname, GLfixed param)
+{
+ ovr_glTexEnvx(target, pname, param);
+}
+
+void
+glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ ovr_glTexEnviv(target, pname, params);
+}
+
+void
+glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ ovr_glTexEnvxv(target, pname, params);
+}
+
+void
+glTexParameterx(GLenum target, GLenum pname, GLfixed param)
+{
+ ovr_glTexParameterx(target, pname, param);
+}
+
+void
+glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ ovr_glTexParameterxv(target, pname, params);
+}
+
+void
+glTranslatex(GLfixed x, GLfixed y, GLfixed z)
+{
+ ovr_glTranslatex(x, y, z);
+}
+
+void
+glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ ovr_glVertexPointer(size, type, stride, pointer);
+}
+
+/* Khronos GLES 1.1 CTS requires glPointSizePointerOES as shared library symbol.*/
+void
+glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ ovr_glPointSizePointerOES(type, stride, pointer);
+}
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) COREGL_API extern RET_TYPE FUNC_NAME PARAM_LIST;
#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
-# include "../headers/sym_gl.h"
+# include "../headers/sym_gl2.h"
#undef _COREGL_EXT_SYMBOL
#undef _COREGL_SYMBOL
#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) RET_TYPE (*ovr_##FUNC_NAME) PARAM_LIST = NULL;
#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
-# include "../headers/sym_gl.h"
+# include "../headers/sym_gl2.h"
#undef _COREGL_EXT_SYMBOL
#undef _COREGL_SYMBOL
#define INIT_EXPORT()
void *lib_handle = NULL;
+void (* set_driver_gl_version)(int version);
__attribute__((constructor))
int
return 0;
}
-#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) \
- ovr_##FUNC_NAME = (__typeof__(ovr_##FUNC_NAME))dlsym(lib_handle, "coregl_api_"#FUNC_NAME); \
- if (ovr_##FUNC_NAME == NULL) \
- { \
- LOGE("\E[40;31;1mCan't find a symbol '%s'!\E[0m\n\n", #FUNC_NAME); \
- LOGE("\E[40;31;1mInvalid library link! (Check linkage of libGLESv2 -> libCOREGL)\E[0m\n"); \
- }
-
-#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
-#include "../headers/sym_gl.h"
-#undef _COREGL_EXT_SYMBOL
-#undef _COREGL_SYMBOL
-
- return 1;
-}
-
-/* Beginning of OpenGL ES 1.1*/
-void
-glAlphaFunc(GLenum func, GLclampf ref)
-{
- ovr_glAlphaFunc(func, ref);
-}
-
-void
-glClipPlanef(GLenum plane, const GLfloat *equation)
-{
- ovr_glClipPlanef(plane, equation);
-}
-
-void
-glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
-{
- ovr_glColor4f(red, green, blue, alpha);
-}
-
-void
-glFogf(GLenum pname, GLfloat param)
-{
- ovr_glFogf(pname, param);
-}
-
-void
-glFogfv(GLenum pname, const GLfloat *params)
-{
- ovr_glFogfv(pname, params);
-}
-
-void
-glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
-{
- ovr_glFrustumf(left, right, bottom, top, zNear, zFar);
-}
-
-void
-glGetClipPlanef(GLenum pname, GLfloat eqn[4])
-{
- ovr_glGetClipPlanef(pname, eqn);
-}
-
-void
-glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
-{
- ovr_glGetLightfv(light, pname, params);
-}
-
-void
-glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
-{
- ovr_glGetMaterialfv(face, pname, params);
-}
-
-void
-glGetTexEnvfv(GLenum env, GLenum pname, GLfloat *params)
-{
- ovr_glGetTexEnvfv(env, pname, params);
-}
-
-void
-glLightModelf(GLenum pname, GLfloat param)
-{
- ovr_glLightModelf(pname, param);
-}
-
-void
-glLightModelfv(GLenum pname, const GLfloat *params)
-{
- ovr_glLightModelfv(pname, params);
-}
-
-void
-glLightf(GLenum light, GLenum pname, GLfloat param)
-{
- ovr_glLightf(light, pname, param);
-}
-
-void
-glLightfv(GLenum light, GLenum pname, const GLfloat *params)
-{
- ovr_glLightfv(light, pname, params);
-}
-
-void
-glLoadMatrixf(const GLfloat *m)
-{
- ovr_glLoadMatrixf(m);
-}
-
-void
-glMaterialf(GLenum face, GLenum pname, GLfloat param)
-{
- ovr_glMaterialf(face, pname, param);
-}
-
-void
-glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
-{
- ovr_glMaterialfv(face, pname, params);
-}
-
-void
-glMultMatrixf(const GLfloat *m)
-{
- ovr_glMultMatrixf(m);
-}
-
-void
-glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
-{
- ovr_glMultiTexCoord4f(target, s, t, r, q);
-}
-
-void
-glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
-{
- ovr_glNormal3f(nx, ny, nz);
-}
-
-void
-glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
-{
- ovr_glOrthof(left, right, bottom, top, zNear, zFar);
-}
-
-void
-glPointParameterf(GLenum pname, GLfloat param)
-{
- ovr_glPointParameterf(pname, param);
-}
-
-void
-glPointParameterfv(GLenum pname, const GLfloat *params)
-{
- ovr_glPointParameterfv(pname, params);
-}
-
-void
-glPointSize(GLfloat size)
-{
- ovr_glPointSize(size);
-}
-
-void
-glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
-{
- ovr_glRotatef(angle, x, y, z);
-}
-
-void
-glScalef(GLfloat x, GLfloat y, GLfloat z)
-{
- ovr_glScalef(x, y, z);
-}
-
-void
-glTexEnvf(GLenum target, GLenum pname, GLfloat param)
-{
- ovr_glTexEnvf(target, pname, param);
-}
-
-void
-glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
-{
- ovr_glTexEnvfv(target, pname, params);
-}
-
-void
-glTranslatef(GLfloat x, GLfloat y, GLfloat z)
-{
- ovr_glTranslatef(x, y, z);
-}
-
-void
-glAlphaFuncx(GLenum func, GLclampx ref)
-{
- ovr_glAlphaFuncx(func, ref);
-}
-
-void
-glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
-{
- ovr_glClearColorx(red, green, blue, alpha);
-}
-
-void
-glClearDepthx(GLclampx depth)
-{
- ovr_glClearDepthx(depth);
-}
-
-void
-glClientActiveTexture(GLenum texture)
-{
- ovr_glClientActiveTexture(texture);
-}
-
-void
-glClipPlanex(GLenum plane, const GLfixed *equation)
-{
- ovr_glClipPlanex(plane, equation);
-}
-
-void
-glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
-{
- ovr_glColor4ub(red, green, blue, alpha);
-}
-
-void
-glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
-{
- ovr_glColor4x(red, green, blue, alpha);
-}
-
-void
-glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- ovr_glColorPointer(size, type, stride, pointer);
-}
-
-void
-glDepthRangex(GLclampx zNear, GLclampx zFar)
-{
- ovr_glDepthRangex(zNear, zFar);
-}
-
-void
-glDisableClientState(GLenum array)
-{
- ovr_glDisableClientState(array);
-}
-
-void
-glEnableClientState(GLenum array)
-{
- ovr_glEnableClientState(array);
-}
-
-void
-glFogx(GLenum pname, GLfixed param)
-{
- ovr_glFogx(pname, param);
-}
-
-void
-glFogxv(GLenum pname, const GLfixed *params)
-{
- ovr_glFogxv(pname, params);
-}
-
-void
-glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
-{
- ovr_glFrustumx(left, right, bottom, top, zNear, zFar);
-}
-
-void
-glGetClipPlanex(GLenum pname, GLfixed eqn[4])
-{
- ovr_glGetClipPlanex(pname, eqn);
-}
-
-void
-glGetFixedv(GLenum pname, GLfixed *params)
-{
- ovr_glGetFixedv(pname, params);
-}
-
-void
-glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
-{
- ovr_glGetLightxv(light, pname, params);
-}
-
-void
-glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
-{
- ovr_glGetMaterialxv(face, pname, params);
-}
-
-void
-glGetTexEnviv(GLenum env, GLenum pname, GLint *params)
-{
- ovr_glGetTexEnviv(env, pname, params);
-}
-
-void
-glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
-{
- ovr_glGetTexEnvxv(env, pname, params);
-}
-
-void
-glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
-{
- ovr_glGetTexParameterxv(target, pname, params);
-}
-
-void
-glLightModelx(GLenum pname, GLfixed param)
-{
- ovr_glLightModelx(pname, param);
-}
-
-void
-glLightModelxv(GLenum pname, const GLfixed *params)
-{
- ovr_glLightModelxv(pname, params);
-}
-
-void
-glLightx(GLenum light, GLenum pname, GLfixed param)
-{
- ovr_glLightx(light, pname, param);
-}
-
-void
-glLightxv(GLenum light, GLenum pname, const GLfixed *params)
-{
- ovr_glLightxv(light, pname, params);
-}
-
-void
-glLineWidthx(GLfixed width)
-{
- ovr_glLineWidthx(width);
-}
-
-void
-glLoadIdentity(void)
-{
- ovr_glLoadIdentity();
-}
-
-void
-glLoadMatrixx(const GLfixed *m)
-{
- ovr_glLoadMatrixx(m);
-}
-
-void
-glLogicOp(GLenum opcode)
-{
- ovr_glLogicOp(opcode);
-}
-
-void
-glMaterialx(GLenum face, GLenum pname, GLfixed param)
-{
- ovr_glMaterialx(face, pname, param);
-}
-
-void
-glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
-{
- ovr_glMaterialxv(face, pname, params);
-}
-
-void
-glMatrixMode(GLenum mode)
-{
- ovr_glMatrixMode(mode);
-}
-
-void
-glMultMatrixx(const GLfixed *m)
-{
- ovr_glMultMatrixx(m);
-}
-
-void
-glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
-{
- ovr_glMultiTexCoord4x(target, s, t, r, q);
-}
-
-void
-glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
-{
- ovr_glNormal3x(nx, ny, nz);
-}
-
-void
-glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- ovr_glNormalPointer(type, stride, pointer);
-}
-
-void
-glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
-{
- ovr_glOrthox(left, right, bottom, top, zNear, zFar);
-}
-
-void
-glPointParameterx(GLenum pname, GLfixed param)
-{
- ovr_glPointParameterx(pname, param);
-}
-
-void
-glPointParameterxv(GLenum pname, const GLfixed *params)
-{
- ovr_glPointParameterxv(pname, params);
-}
-
-void
-glPointSizex(GLfixed size)
-{
- ovr_glPointSizex(size);
-}
-
-void
-glPolygonOffsetx(GLfixed factor, GLfixed units)
-{
- ovr_glPolygonOffsetx(factor, units);
-}
-
-void
-glPopMatrix(void)
-{
- ovr_glPopMatrix();
-}
-
-void
-glPushMatrix(void)
-{
- ovr_glPushMatrix();
-}
-
-void
-glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
-{
- ovr_glRotatex (angle, x, y, z);
-}
-
-void
-glSampleCoveragex(GLclampx value, GLboolean invert)
-{
- ovr_glSampleCoveragex(value, invert);
-}
-
-void
-glScalex(GLfixed x, GLfixed y, GLfixed z)
-{
- ovr_glScalex (x, y, z);
-}
-
-void
-glShadeModel(GLenum mode)
-{
- ovr_glShadeModel(mode);
-}
-
-void
-glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- ovr_glTexCoordPointer(size, type, stride, pointer);
-}
-
-void
-glTexEnvi(GLenum target, GLenum pname, GLint param)
-{
- ovr_glTexEnvi(target, pname, param);
-}
-
-void
-glTexEnvx(GLenum target, GLenum pname, GLfixed param)
-{
- ovr_glTexEnvx(target, pname, param);
-}
-
-void
-glTexEnviv(GLenum target, GLenum pname, const GLint *params)
-{
- ovr_glTexEnviv(target, pname, params);
-}
-
-void
-glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
-{
- ovr_glTexEnvxv(target, pname, params);
-}
-
-void
-glTexParameterx(GLenum target, GLenum pname, GLfixed param)
-{
- ovr_glTexParameterx(target, pname, param);
-}
-
-void
-glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
-{
- ovr_glTexParameterxv(target, pname, params);
-}
+ set_driver_gl_version = dlsym(lib_handle, "set_driver_gl_version");
+ if(set_driver_gl_version)
+ set_driver_gl_version(2);
+ else
+ LOGE("%s\n", dlerror());
-void
-glTranslatex(GLfixed x, GLfixed y, GLfixed z)
-{
- ovr_glTranslatex(x, y, z);
-}
+#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) \
+ ovr_##FUNC_NAME = (__typeof__(ovr_##FUNC_NAME))dlsym(lib_handle, "coregl_api_"#FUNC_NAME); \
+ if (ovr_##FUNC_NAME == NULL) \
+ { \
+ LOGE("\E[40;31;1mCan't find a symbol '%s'!\E[0m\n\n", #FUNC_NAME); \
+ LOGE("\E[40;31;1mInvalid library link! (Check linkage of libGLESv2 -> libCOREGL)\E[0m\n"); \
+ }
-void
-glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-{
- ovr_glVertexPointer(size, type, stride, pointer);
-}
-/* Ending of OpenGL ES 1.1*/
+#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
+#include "../headers/sym_gl2.h"
+#undef _COREGL_EXT_SYMBOL
+#undef _COREGL_SYMBOL
-void
-glActiveTexture(GLenum texture)
-{
- ovr_glActiveTexture(texture);
+ return 1;
}
void
}
void
-glBindBuffer(GLenum target, GLuint buffer)
-{
- ovr_glBindBuffer(target, buffer);
-}
-
-void
glBindFramebuffer(GLenum target, GLuint framebuffer)
{
ovr_glBindFramebuffer(target, framebuffer);
}
void
-glBindTexture(GLenum target, GLuint texture)
-{
- ovr_glBindTexture(target, texture);
-}
-
-void
glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
{
ovr_glBlendColor(red, green, blue, alpha);
}
void
-glBlendEquation(GLenum mode)
-{
- ovr_glBlendEquation(mode);
-}
-
-void
glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
{
ovr_glBlendEquationSeparate(modeRGB, modeAlpha);
}
void
-glBlendFunc(GLenum sfactor, GLenum dfactor)
-{
- ovr_glBlendFunc(sfactor, dfactor);
-}
-
-void
glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha,
GLenum dstAlpha)
{
}
void
-glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
-{
- ovr_glBufferData(target, size, data, usage);
-}
-
-void
-glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size,
- const void *data)
+glBlendEquation(GLenum mode)
{
- ovr_glBufferSubData(target, offset, size, data);
+ ovr_glBlendEquation(mode);
}
GLenum
}
void
-glClear(GLbitfield mask)
-{
- ovr_glClear(mask);
-}
-
-void
-glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
-{
- ovr_glClearColor(red, green, blue, alpha);
-}
-
-void
-glClearDepthf(GLclampf depth)
-{
- ovr_glClearDepthf(depth);
-}
-
-void
-glClearStencil(GLint s)
-{
- ovr_glClearStencil(s);
-}
-
-void
-glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
-{
- ovr_glColorMask(red, green, blue, alpha);
-}
-
-void
glCompileShader(GLuint shader)
{
ovr_glCompileShader(shader);
}
-void
-glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat,
- GLsizei width, GLsizei height, GLint border, GLsizei imageSize,
- const void *data)
-{
- ovr_glCompressedTexImage2D(target, level, internalformat, width, height, border,
- imageSize, data);
-}
-
-void
-glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset,
- GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize,
- const void *data)
-{
- ovr_glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height,
- format, imageSize, data);
-}
-
-void
-glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x,
- GLint y, GLsizei width, GLsizei height, GLint border)
-{
- ovr_glCopyTexImage2D(target, level, internalformat, x, y, width, height,
- border);
-}
-
-void
-glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
- GLint x, GLint y, GLsizei width, GLsizei height)
-{
- ovr_glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
-}
GLuint
glCreateProgram(void)
}
void
-glCullFace(GLenum mode)
-{
- ovr_glCullFace(mode);
-}
-
-void
-glDeleteBuffers(GLsizei n, const GLuint *buffers)
-{
- ovr_glDeleteBuffers(n, buffers);
-}
-
-void
glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
{
ovr_glDeleteFramebuffers(n, framebuffers);
}
void
-glDeleteTextures(GLsizei n, const GLuint *textures)
-{
- ovr_glDeleteTextures(n, textures);
-}
-
-void
-glDepthFunc(GLenum func)
-{
- ovr_glDepthFunc(func);
-}
-
-void
-glDepthMask(GLboolean flag)
-{
- ovr_glDepthMask(flag);
-}
-
-void
-glDepthRangef(GLclampf zNear, GLclampf zFar)
-{
- ovr_glDepthRangef(zNear, zFar);
-}
-
-void
glDetachShader(GLuint program, GLuint shader)
{
ovr_glDetachShader(program, shader);
}
void
-glDisable(GLenum cap)
-{
- ovr_glDisable(cap);
-}
-
-void
glDisableVertexAttribArray(GLuint index)
{
ovr_glDisableVertexAttribArray(index);
}
void
-glDrawArrays(GLenum mode, GLint first, GLsizei count)
-{
- ovr_glDrawArrays(mode, first, count);
-}
-
-void
-glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)
-{
- ovr_glDrawElements(mode, count, type, indices);
-}
-
-void
-glEnable(GLenum cap)
-{
- ovr_glEnable(cap);
-}
-
-void
glEnableVertexAttribArray(GLuint index)
{
ovr_glEnableVertexAttribArray(index);
}
void
-glFinish(void)
-{
- ovr_glFinish();
-}
-
-void
-glFlush(void)
-{
- ovr_glFlush();
-}
-
-void
glFramebufferRenderbuffer(GLenum target, GLenum attachment,
GLenum renderbuffertarget, GLuint renderbuffer)
{
}
void
-glFrontFace(GLenum mode)
-{
- ovr_glFrontFace(mode);
-}
-
-void
glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
{
ovr_glGetVertexAttribfv(index, pname, params);
}
void
-glHint(GLenum target, GLenum mode)
-{
- ovr_glHint(target, mode);
-}
-
-void
-glGenBuffers(GLsizei n, GLuint *buffers)
-{
- ovr_glGenBuffers(n, buffers);
-}
-
-void
glGenerateMipmap(GLenum target)
{
ovr_glGenerateMipmap(target);
}
void
-glGenTextures(GLsizei n, GLuint *textures)
-{
- ovr_glGenTextures(n, textures);
-}
-
-void
glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize,
GLsizei *length, GLint *size, GLenum *type, char *name)
{
}
void
-glGetBooleanv(GLenum pname, GLboolean *params)
-{
- ovr_glGetBooleanv(pname, params);
-}
-
-void
-glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
-{
- ovr_glGetBufferParameteriv(target, pname, params);
-}
-
-GLenum
-glGetError(void)
-{
- return ovr_glGetError();
-}
-
-void
-glGetFloatv(GLenum pname, GLfloat *params)
-{
- ovr_glGetFloatv(pname, params);
-}
-
-void
glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment,
GLenum pname, GLint *params)
{
}
void
-glGetIntegerv(GLenum pname, GLint *params)
-{
- ovr_glGetIntegerv(pname, params);
-}
-
-void
glGetProgramiv(GLuint program, GLenum pname, GLint *params)
{
ovr_glGetProgramiv(program, pname, params);
ovr_glGetShaderSource(shader, bufsize, length, source);
}
-const GLubyte *
-glGetString(GLenum name)
-{
- return ovr_glGetString(name);
-}
-
-void
-glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
-{
- ovr_glGetTexParameterfv(target, pname, params);
-}
-
-void
-glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
-{
- ovr_glGetTexParameteriv(target, pname, params);
-}
-
void
glGetUniformfv(GLuint program, GLint location, GLfloat *params)
{
}
GLboolean
-glIsBuffer(GLuint buffer)
-{
- return ovr_glIsBuffer(buffer);
-}
-
-GLboolean
-glIsEnabled(GLenum cap)
-{
- return ovr_glIsEnabled(cap);
-}
-
-GLboolean
glIsFramebuffer(GLuint framebuffer)
{
return ovr_glIsFramebuffer(framebuffer);
return ovr_glIsShader(shader);
}
-GLboolean
-glIsTexture(GLuint texture)
-{
- return ovr_glIsTexture(texture);
-}
-
-void
-glLineWidth(GLfloat width)
-{
- ovr_glLineWidth(width);
-}
-
void
glLinkProgram(GLuint program)
{
}
void
-glPixelStorei(GLenum pname, GLint param)
-{
- ovr_glPixelStorei(pname, param);
-}
-
-void
-glPolygonOffset(GLfloat factor, GLfloat units)
-{
- ovr_glPolygonOffset(factor, units);
-}
-
-void
-glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format,
- GLenum type, void *pixels)
-{
- ovr_glReadPixels(x, y, width, height, format, type, pixels);
-}
-
-void
glReleaseShaderCompiler(void)
{
ovr_glReleaseShaderCompiler();
}
void
-glSampleCoverage(GLclampf value, GLboolean invert)
-{
- ovr_glSampleCoverage(value, invert);
-}
-
-void
-glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
-{
- ovr_glScissor(x, y, width, height);
-}
-
-void
glShaderBinary(GLsizei n, const GLuint *shaders, GLenum binaryformat,
const void *binary, GLsizei length)
{
ovr_glShaderSource(shader, count, string, length);
}
-void
-glStencilFunc(GLenum func, GLint ref, GLuint mask)
-{
- ovr_glStencilFunc(func, ref, mask);
-}
void
glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
}
void
-glStencilMask(GLuint mask)
-{
- ovr_glStencilMask(mask);
-}
-
-void
glStencilMaskSeparate(GLenum face, GLuint mask)
{
ovr_glStencilMaskSeparate(face, mask);
}
void
-glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
-{
- ovr_glStencilOp(fail, zfail, zpass);
-}
-
-void
glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass)
{
ovr_glStencilOpSeparate(face, fail, zfail, zpass);
}
void
-glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width,
- GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels)
-{
- ovr_glTexImage2D(target, level, internalformat, width, height, border, format,
- type, pixels);
-}
-
-void
-glTexParameterf(GLenum target, GLenum pname, GLfloat param)
-{
- ovr_glTexParameterf(target, pname, param);
-}
-
-void
-glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
-{
- ovr_glTexParameterfv(target, pname, params);
-}
-
-void
-glTexParameteri(GLenum target, GLenum pname, GLint param)
-{
- ovr_glTexParameteri(target, pname, param);
-}
-
-void
-glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
-{
- ovr_glTexParameteriv(target, pname, params);
-}
-
-void
-glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
- GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)
-{
- ovr_glTexSubImage2D(target, level, xoffset, yoffset, width, height, format,
- type, pixels);
-}
-
-void
glUniform1f(GLint location, GLfloat x)
{
ovr_glUniform1f(location, x);
ovr_glVertexAttribPointer(index, size, type, normalized, stride, pointer);
}
-void
-glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
-{
- ovr_glViewport(x, y, width, height);
-}
-
/* OpenGL ES 3.0 */
void
glReadBuffer(GLenum mode)
{
ovr_glVertexBindingDivisor (bindingindex, divisor);
}
-
-void
-glGetPointerv(GLenum pname, GLvoid **params)
-{
- ovr_glGetPointerv(pname, params);
-}
-
-
--- /dev/null
+/*
+* File :
+* coregl_gl_common.c
+* Description:
+* APIs in this file are both implemented in GLES1.1 and GLES2.0, this file will be compiled into
+* libGLESv1_CM and libGLESv2
+*/
+
+#include <stdio.h>
+#include <dlfcn.h>
+
+# include <GLES/glplatform.h>
+# include "../headers/gl.h"
+
+///////////////////////////////////////
+// Disable dlog for debugging urgent issues //
+//#define LOG_TAG "CoreGL_GLES2"
+//#include <dlog.h>
+#define LOGE(...) fprintf(stderr, __VA_ARGS__)
+#define LOGW(...) fprintf(stderr, __VA_ARGS__)
+#define LOGD(...) fprintf(stderr, __VA_ARGS__)
+///////////////////////////////////////
+
+#define COREGL_API __attribute__((visibility("default")))
+
+#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) COREGL_API extern RET_TYPE FUNC_NAME PARAM_LIST;
+#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
+# include "../headers/sym_gl_common.h"
+#undef _COREGL_EXT_SYMBOL
+#undef _COREGL_SYMBOL
+
+#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) RET_TYPE (*ovr_##FUNC_NAME) PARAM_LIST = NULL;
+#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
+# include "../headers/sym_gl_common.h"
+#undef _COREGL_EXT_SYMBOL
+#undef _COREGL_SYMBOL
+
+#define INIT_EXPORT()
+
+void *lib_handle_common = NULL;
+
+__attribute__((constructor))
+int
+coregl_glwrap_init_common()
+{
+ lib_handle_common = dlopen("libCOREGL.so", RTLD_NOW);
+ if (!lib_handle_common) {
+ LOGE(" \E[40;31;1m%s\E[0m\n\n", dlerror());
+ LOGE(" \E[40;31;1mInvalid library link! (Check linkage of libEGL -> libCOREGL)\E[0m\n");
+ return 0;
+ }
+
+#define _COREGL_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST) \
+ ovr_##FUNC_NAME = (__typeof__(ovr_##FUNC_NAME))dlsym(lib_handle_common, "coregl_api_"#FUNC_NAME); \
+ if (ovr_##FUNC_NAME == NULL) \
+ { \
+ LOGE("\E[40;31;1mCan't find a symbol '%s'!\E[0m\n\n", #FUNC_NAME); \
+ LOGE("\E[40;31;1mInvalid library link! (Check linkage of libGLESv2 -> libCOREGL)\E[0m\n"); \
+ }
+
+#define _COREGL_EXT_SYMBOL(RET_TYPE, FUNC_NAME, PARAM_LIST)
+#include "../headers/sym_gl_common.h"
+#undef _COREGL_EXT_SYMBOL
+#undef _COREGL_SYMBOL
+
+ return 1;
+}
+
+void
+glActiveTexture(GLenum texture)
+{
+ ovr_glActiveTexture(texture);
+}
+
+void
+glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ ovr_glClearColor(red, green, blue, alpha);
+}
+
+void
+glClearDepthf(GLclampf depth)
+{
+ ovr_glClearDepthf(depth);
+}
+
+void
+glDepthRangef(GLclampf zNear, GLclampf zFar)
+{
+ ovr_glDepthRangef(zNear, zFar);
+}
+
+void
+glGetFloatv(GLenum pname, GLfloat *params)
+{
+ ovr_glGetFloatv(pname, params);
+}
+
+void
+glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ ovr_glGetTexParameterfv(target, pname, params);
+}
+
+void
+glLineWidth(GLfloat width)
+{
+ ovr_glLineWidth(width);
+}
+
+void
+glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ ovr_glPolygonOffset(factor, units);
+}
+
+void
+glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ ovr_glTexParameterf(target, pname, param);
+}
+
+void
+glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ ovr_glTexParameterfv(target, pname, params);
+}
+
+void
+glBindBuffer(GLenum target, GLuint buffer)
+{
+ ovr_glBindBuffer(target, buffer);
+}
+
+void
+glBindTexture(GLenum target, GLuint texture)
+{
+ ovr_glBindTexture(target, texture);
+}
+
+void
+glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ ovr_glBlendFunc(sfactor, dfactor);
+}
+
+void
+glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
+{
+ ovr_glBufferData(target, size, data, usage);
+}
+
+void
+glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size,
+ const void *data)
+{
+ ovr_glBufferSubData(target, offset, size, data);
+}
+
+void
+glClear(GLbitfield mask)
+{
+ ovr_glClear(mask);
+}
+
+void
+glClearStencil(GLint s)
+{
+ ovr_glClearStencil(s);
+}
+
+void
+glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ ovr_glColorMask(red, green, blue, alpha);
+}
+
+void
+glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat,
+ GLsizei width, GLsizei height, GLint border, GLsizei imageSize,
+ const void *data)
+{
+ ovr_glCompressedTexImage2D(target, level, internalformat, width, height, border,
+ imageSize, data);
+}
+
+void
+glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset,
+ GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize,
+ const void *data)
+{
+ ovr_glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height,
+ format, imageSize, data);
+}
+
+void
+glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x,
+ GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ ovr_glCopyTexImage2D(target, level, internalformat, x, y, width, height,
+ border);
+}
+
+void
+glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
+ GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ ovr_glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+void
+glCullFace(GLenum mode)
+{
+ ovr_glCullFace(mode);
+}
+
+void
+glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ ovr_glDeleteBuffers(n, buffers);
+}
+
+void
+glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ ovr_glDeleteTextures(n, textures);
+}
+
+void
+glDepthFunc(GLenum func)
+{
+ ovr_glDepthFunc(func);
+}
+
+void
+glDepthMask(GLboolean flag)
+{
+ ovr_glDepthMask(flag);
+}
+
+void
+glDisable(GLenum cap)
+{
+ ovr_glDisable(cap);
+}
+
+void
+glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ ovr_glDrawArrays(mode, first, count);
+}
+
+void
+glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)
+{
+ ovr_glDrawElements(mode, count, type, indices);
+}
+
+void
+glEnable(GLenum cap)
+{
+ ovr_glEnable(cap);
+}
+
+void
+glFinish(void)
+{
+ ovr_glFinish();
+}
+
+void
+glFlush(void)
+{
+ ovr_glFlush();
+}
+
+void
+glFrontFace(GLenum mode)
+{
+ ovr_glFrontFace(mode);
+}
+
+void
+glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ ovr_glGetBooleanv(pname, params);
+}
+
+void
+glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ ovr_glGetBufferParameteriv(target, pname, params);
+}
+
+void
+glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ ovr_glGenBuffers(n, buffers);
+}
+
+void
+glGenTextures(GLsizei n, GLuint *textures)
+{
+ ovr_glGenTextures(n, textures);
+}
+
+GLenum
+glGetError(void)
+{
+ return ovr_glGetError();
+}
+
+void
+glGetIntegerv(GLenum pname, GLint *params)
+{
+ ovr_glGetIntegerv(pname, params);
+}
+
+void
+glGetPointerv(GLenum pname, GLvoid **params)
+{
+ ovr_glGetPointerv(pname, params);
+}
+
+const GLubyte *
+glGetString(GLenum name)
+{
+ return ovr_glGetString(name);
+}
+
+void
+glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ ovr_glGetTexParameteriv(target, pname, params);
+}
+
+void
+glHint(GLenum target, GLenum mode)
+{
+ ovr_glHint(target, mode);
+}
+
+GLboolean
+glIsBuffer(GLuint buffer)
+{
+ return ovr_glIsBuffer(buffer);
+}
+
+GLboolean
+glIsEnabled(GLenum cap)
+{
+ return ovr_glIsEnabled(cap);
+}
+
+GLboolean
+glIsTexture(GLuint texture)
+{
+ return ovr_glIsTexture(texture);
+}
+void
+glPixelStorei(GLenum pname, GLint param)
+{
+ ovr_glPixelStorei(pname, param);
+}
+
+void
+glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format,
+ GLenum type, void *pixels)
+{
+ ovr_glReadPixels(x, y, width, height, format, type, pixels);
+}
+
+void
+glSampleCoverage(GLclampf value, GLboolean invert)
+{
+ ovr_glSampleCoverage(value, invert);
+}
+
+void
+glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ ovr_glScissor(x, y, width, height);
+}
+
+
+void
+glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ ovr_glStencilFunc(func, ref, mask);
+}
+
+void
+glStencilMask(GLuint mask)
+{
+ ovr_glStencilMask(mask);
+}
+
+void
+glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ ovr_glStencilOp(fail, zfail, zpass);
+}
+
+void
+glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width,
+ GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels)
+{
+ ovr_glTexImage2D(target, level, internalformat, width, height, border, format,
+ type, pixels);
+}
+
+void
+glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ ovr_glTexParameteri(target, pname, param);
+}
+
+void
+glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ ovr_glTexParameteriv(target, pname, params);
+}
+
+void
+glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
+ GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)
+{
+ ovr_glTexSubImage2D(target, level, xoffset, yoffset, width, height, format,
+ type, pixels);
+}
+
+void
+glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ ovr_glViewport(x, y, width, height);
+}