mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 06:20:09 +01:00
set log level w/ env var
This commit is contained in:
parent
d2b06403c6
commit
20e851bb9a
1 changed files with 39 additions and 2 deletions
|
|
@ -6,13 +6,44 @@
|
|||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "egllog.h"
|
||||
|
||||
#define MAXSTRING 1000
|
||||
#define FALLBACK_LOG_LEVEL _EGL_DEBUG
|
||||
#define FALLBACK_LOG_LEVEL_STR "debug"
|
||||
|
||||
static EGLint ReportingLevel = -1;
|
||||
|
||||
|
||||
/* XXX init this with an env var or something */
|
||||
static EGLint ReportingLevel = _EGL_DEBUG;
|
||||
static void
|
||||
log_level_initialize (void)
|
||||
{
|
||||
char *log_env = getenv ("EGL_LOG_LEVEL");
|
||||
|
||||
if (log_env == NULL) {
|
||||
ReportingLevel = FALLBACK_LOG_LEVEL;
|
||||
}
|
||||
else if (strcasecmp (log_env, "fatal") == 0) {
|
||||
ReportingLevel = _EGL_FATAL;
|
||||
}
|
||||
else if (strcasecmp (log_env, "warning") == 0) {
|
||||
ReportingLevel = _EGL_WARNING;
|
||||
}
|
||||
else if (strcasecmp (log_env, "info") == 0) {
|
||||
ReportingLevel = _EGL_INFO;
|
||||
}
|
||||
else if (strcasecmp (log_env, "debug") == 0) {
|
||||
ReportingLevel = _EGL_DEBUG;
|
||||
}
|
||||
else {
|
||||
fprintf (stderr, "Unrecognized EGL_LOG_LEVEL environment variable value. "
|
||||
"Expected one of \"fatal\", \"warning\", \"info\", \"debug\". "
|
||||
"Got \"%s\". Falling back to \"%s\".\n",
|
||||
log_env, FALLBACK_LOG_LEVEL_STR);
|
||||
ReportingLevel = FALLBACK_LOG_LEVEL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -25,6 +56,12 @@ _eglLog(EGLint level, const char *fmtStr, ...)
|
|||
va_list args;
|
||||
char msg[MAXSTRING];
|
||||
const char *levelStr;
|
||||
static int log_level_initialized = 0;
|
||||
|
||||
if (!log_level_initialized) {
|
||||
log_level_initialize ();
|
||||
log_level_initialized = 1;
|
||||
}
|
||||
|
||||
if (level <= ReportingLevel) {
|
||||
switch (level) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue