* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#include "glapi/glapi_priv.h"
#include "glapi/glapitable.h"
-#include "glapi/glapidispatch.h"
+
#if !(defined(USE_X86_ASM) || defined(USE_X86_64_ASM) || defined(USE_SPARC_ASM))
-#if defined(WIN32)
+#if defined(_WIN32)
#define KEYWORD1 GLAPI
#else
#define KEYWORD1 PUBLIC
#define NAME(func) gl##func
#endif
+#if 0 /* Use this to log GL calls to stdout (for DEBUG only!) */
+
+#define F stdout
+#define DISPATCH(FUNC, ARGS, MESSAGE) \
+ fprintf MESSAGE; \
+ GET_DISPATCH()->FUNC ARGS
+
+#define RETURN_DISPATCH(FUNC, ARGS, MESSAGE) \
+ fprintf MESSAGE; \
+ return GET_DISPATCH()->FUNC ARGS
+
+#else
+
#define DISPATCH(FUNC, ARGS, MESSAGE) \
- CALL_ ## FUNC(GET_DISPATCH(), ARGS);
+ GET_DISPATCH()->FUNC ARGS
#define RETURN_DISPATCH(FUNC, ARGS, MESSAGE) \
- return CALL_ ## FUNC(GET_DISPATCH(), ARGS);
+ return GET_DISPATCH()->FUNC ARGS
+
+#endif /* logging */
#ifndef GLAPIENTRY
#include "glapi/glapitemp.h"
#endif /* USE_X86_ASM */
-
-
-#ifdef DEBUG
-
-static void *logger_data;
-static void (*logger_func)(void *data, const char *fmt, ...);
-static struct _glapi_table *real_dispatch; /* FIXME: This need to be TLS etc */
-
-#define KEYWORD1 static
-#define KEYWORD1_ALT static
-#define KEYWORD2
-#define NAME(func) log_##func
-#define F logger_data
-
-static void
-log_Unused(void)
-{
-}
-
-#define DISPATCH(FUNC, ARGS, MESSAGE) \
- logger_func MESSAGE; \
- CALL_ ## FUNC(real_dispatch, ARGS);
-
-#define RETURN_DISPATCH(FUNC, ARGS, MESSAGE) \
- logger_func MESSAGE; \
- return CALL_ ## FUNC(real_dispatch, ARGS);
-
-#define DISPATCH_TABLE_NAME __glapi_logging_table
-
-#define TABLE_ENTRY(func) (_glapi_proc) log_##func
-
-#include "glapi/glapitemp.h"
-
-int
-_glapi_logging_available(void)
-{
- return 1;
-}
-
-void
-_glapi_enable_logging(void (*func)(void *data, const char *fmt, ...),
- void *data)
-{
- real_dispatch = GET_DISPATCH();
- logger_func = func;
- logger_data = data;
- _glapi_set_dispatch(&__glapi_logging_table);
-}
-
-#else
-
-int
-_glapi_logging_available(void)
-{
- return 0
-}
-
-void
-_glapi_enable_logging(void (*func)(void *data, const char *fmt, ...),
- void *data)
-{
-}
-
-#endif