OSDN Git Service

Android: redirect debug messages to logcat
authorChih-Wei Huang <cwhuang@linux.org.tw>
Fri, 11 Jan 2019 09:19:39 +0000 (17:19 +0800)
committerMauro Rossi <issor.oruam@gmail.com>
Thu, 17 Oct 2019 18:11:23 +0000 (20:11 +0200)
Android.mk
xf86drm.c

index 1950b89..d30f908 100644 (file)
@@ -102,6 +102,7 @@ LOCAL_EXPORT_C_INCLUDE_DIRS := \
        $(LOCAL_PATH)/android
 
 LOCAL_SHARED_LIBRARIES := \
+       liblog \
        libcutils
 
 LOCAL_C_INCLUDES := \
index b7d5865..693ff4d 100644 (file)
--- a/xf86drm.c
+++ b/xf86drm.c
 
 #include "util_math.h"
 
+#ifdef __ANDROID__
+#include <log/log.h>
+#endif
+
 #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
 #define DRM_MAJOR 145
 #endif
@@ -130,16 +134,22 @@ drm_public void drmSetServerInfo(drmServerInfoPtr info)
 static int DRM_PRINTFLIKE(1, 0)
 drmDebugPrint(const char *format, va_list ap)
 {
+#ifdef __ANDROID__
+    return __android_log_vprint(ANDROID_LOG_DEBUG, "libdrm", format, ap);
+#else
     return vfprintf(stderr, format, ap);
+#endif
 }
 
 drm_public void
 drmMsg(const char *format, ...)
 {
     va_list ap;
+#ifndef __ANDROID__
     const char *env;
     if (((env = getenv("LIBGL_DEBUG")) && strstr(env, "verbose")) ||
         (drm_server_info && drm_server_info->debug_print))
+#endif
     {
         va_start(ap, format);
         if (drm_server_info) {