}
}
-/**
- * Print informational message to stderr if LIBGL_DEBUG is set to
- * "verbose".
- */
-_X_HIDDEN void
-InfoMessageF(const char *f, ...)
-{
- va_list args;
- const char *env;
-
- if ((env = getenv("LIBGL_DEBUG")) && strstr(env, "verbose")) {
- fprintf(stderr, "libGL: ");
- va_start(args, f);
- vfprintf(stderr, f, args);
- va_end(args);
- }
-}
-
-/**
- * Print error message to stderr if LIBGL_DEBUG is set to anything but
- * "quiet", (do nothing if LIBGL_DEBUG is unset).
- */
-_X_HIDDEN void
-ErrorMessageF(const char *f, ...)
-{
- va_list args;
- const char *env;
-
- if ((env = getenv("LIBGL_DEBUG")) && !strstr(env, "quiet")) {
- fprintf(stderr, "libGL error: ");
- va_start(args, f);
- vfprintf(stderr, f, args);
- va_end(args);
- }
-}
-
-/**
- * Print error message unless LIBGL_DEBUG is set to "quiet".
- *
- * The distinction between CriticalErrorMessageF and ErrorMessageF is
- * that critcial errors will be printed by default, (even when
- * LIBGL_DEBUG is unset).
- */
-_X_HIDDEN void
-CriticalErrorMessageF(const char *f, ...)
-{
- va_list args;
- const char *env;
-
- if (!(env = getenv("LIBGL_DEBUG")) || !strstr(env, "quiet")) {
- fprintf(stderr, "libGL error: ");
- va_start(args, f);
- vfprintf(stderr, f, args);
- va_end(args);
-
- if (!env || !strstr(env, "verbose"))
- fprintf(stderr, "libGL error: Try again with LIBGL_DEBUG=verbose for more details.\n");
- }
-}
-
#ifndef DEFAULT_DRIVER_DIR
/* this is normally defined in Mesa/configs/default with DRI_DRIVER_SEARCH_PATH */
#define DEFAULT_DRIVER_DIR "/usr/local/lib/dri"
#include <GL/internal/dri_interface.h>
#include <stdbool.h>
+#include "loader.h"
#if (__GNUC__ >= 3)
#define PRINTFLIKE(f, a) __attribute__ ((format(__printf__, f, a)))
extern void dri_message(int level, const char *f, ...) PRINTFLIKE(2, 3);
-extern void InfoMessageF(const char *f, ...);
-extern void ErrorMessageF(const char *f, ...);
-extern void CriticalErrorMessageF(const char *f, ...);
+#define InfoMessageF(...) dri_message(_LOADER_INFO, __VA_ARGS__)
+#define ErrorMessageF(...) dri_message(_LOADER_WARNING, __VA_ARGS__)
+#define CriticalErrorMessageF(...) dri_message(_LOADER_FATAL, __VA_ARGS__)
extern void *driOpenDriver(const char *driverName);