Merge pull request #495 from nicolas-raoul/fix-for-issue2907-with-no-formatting-changes
[mono.git] / mono / utils / mono-logger-internal.h
index f9afdfb56bab25ee98d9d447bdde298e9c2fbe95..1b50682e43b64dcd620bedcda6f310b981f7643a 100644 (file)
@@ -12,13 +12,15 @@ typedef enum {
        MONO_TRACE_DLLIMPORT            = (1<<2),
        MONO_TRACE_GC                   = (1<<3),
         MONO_TRACE_CONFIG              = (1<<4),
-       MONO_TRACE_AOT          = (1<<5),
+       MONO_TRACE_AOT                  = (1<<5),
+       MONO_TRACE_SECURITY             = (1<<6),
        MONO_TRACE_ALL                  = MONO_TRACE_ASSEMBLY |
                                          MONO_TRACE_TYPE |
                                          MONO_TRACE_DLLIMPORT |
                                          MONO_TRACE_GC |
-                         MONO_TRACE_CONFIG |
-                         MONO_TRACE_AOT
+                                         MONO_TRACE_CONFIG |
+                                         MONO_TRACE_AOT |
+                                         MONO_TRACE_SECURITY
 } MonoTraceMask;
 
 void 
@@ -60,7 +62,7 @@ mono_trace_is_traced (GLogLevelFlags level, MonoTraceMask mask) MONO_INTERNAL;
 #define mono_trace_message(format...) mono_trace(G_LOG_LEVEL_MESSAGE, \
                                                                                        format)
 #else /* no varargs macros */
-static void
+G_GNUC_UNUSED static void
 mono_trace_error(MonoTraceMask mask, const char *format, ...)
 {
        va_list args;
@@ -69,7 +71,7 @@ mono_trace_error(MonoTraceMask mask, const char *format, ...)
        va_end (args);
 }
 
-static void
+G_GNUC_UNUSED static void
 mono_trace_warning(MonoTraceMask mask, const char *format, ...)
 {
        va_list args;
@@ -78,7 +80,7 @@ mono_trace_warning(MonoTraceMask mask, const char *format, ...)
        va_end (args);
 }
 
-static void
+G_GNUC_UNUSED static void
 mono_trace_message(MonoTraceMask mask, const char *format, ...)
 {
        va_list args;
@@ -89,6 +91,27 @@ mono_trace_message(MonoTraceMask mask, const char *format, ...)
 
 #endif /* !__GNUC__ */
 
+#if defined (PLATFORM_ANDROID) || (defined (TARGET_IOS) && defined (TARGET_IOS))
+
+#define mono_gc_printf(gc_log_file, format, ...) g_log ("mono-gc", G_LOG_LEVEL_MESSAGE, format "\n", ##__VA_ARGS__)
+#define mono_runtime_printf(format, ...) g_log ("mono-rt", G_LOG_LEVEL_MESSAGE, format "\n", ##__VA_ARGS__)
+#define mono_runtime_printf_err(format, ...) g_log ("mono-rt", G_LOG_LEVEL_ERROR, format "\n", ##__VA_ARGS__)
+#define mono_runtime_stdout_fflush() do { } while (0)
+
+#else
+
+#define mono_gc_printf(gc_log_file, format, ...) do {  \
+       fprintf (gc_log_file, format "\n", ##__VA_ARGS__);      \
+       fflush (gc_log_file);   \
+} while (0)
+
+#define mono_runtime_printf(format, ...) fprintf (stdout, format "\n", ##__VA_ARGS__)
+#define mono_runtime_printf_err(format, ...) fprintf (stderr, format "\n", ##__VA_ARGS__)
+#define mono_runtime_stdout_fflush() do { fflush (stdout); } while (0)
+
+#endif
+
+
 G_END_DECLS
 
 #endif /* __MONO_LOGGER_INTERNAL_H__ */