} while (0);
+/* Note: We only need to perform a lookup in libEGL.so.1, (not
+ * libGLESv2.so.2). This is because the functions we wrap, (currently
+ * eglSwapBufers, eglGetProcAddress, and eglMakeCurrent), exist only
+ * in libEGL.so.1.
+ */
static void *
eglwrap_lookup (char *name)
{
EGLBoolean ret;
EGLWRAP_DEFER_WITH_RETURN (ret, eglSwapBuffers, dpy, surface);
+
+ metrics_counter_stop ();
+
metrics_end_frame ();
+ metrics_counter_start ();
+
+ return ret;
+}
+
+void (*eglGetProcAddress (char const *func))(void)
+{
+ void *ret;
+
+ /* If our library has this symbol, that's what we want to give. */
+ ret = dlwrap_real_dlsym (NULL, (const char *) func);
+ if (ret)
+ return ret;
+
+ /* Otherwise, just defer to the real eglGetProcAddress */
+ EGLWRAP_DEFER_WITH_RETURN (ret, eglGetProcAddress, func);
+
return ret;
}
EGLWRAP_DEFER_WITH_RETURN (ret, eglMakeCurrent, display, draw, read, context);
+ metrics_info_init ();
+
+ metrics_set_current_op (METRICS_OP_SHADER + 0);
+ metrics_counter_start ();
+
return ret;
}