From 66d611543bd8bf605c77bc51c2930c9c6008353f Mon Sep 17 00:00:00 2001
From: Jakob Olsson <Jakob Olsson>
Date: Tue, 10 Dec 2019 13:11:13 +0100
Subject: [PATCH] add debug src and header

---
 src/debug.cpp | 21 +++++++++++++++++++++
 src/debug.h   | 19 +++++++++++++++++++
 2 files changed, 40 insertions(+)
 create mode 100644 src/debug.cpp
 create mode 100644 src/debug.h

diff --git a/src/debug.cpp b/src/debug.cpp
new file mode 100644
index 0000000..d3faae6
--- /dev/null
+++ b/src/debug.cpp
@@ -0,0 +1,21 @@
+extern "C"
+{
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdarg.h>
+}
+#include "debug.h"
+
+void log_message(int level, const char *fmt, ...)
+{
+	va_list args;
+
+	/** TODO: properly implement debug levels
+	 * if (iop_debug < level)
+	 *	return;
+	 */
+
+	va_start(args, fmt);
+	vfprintf(stderr, fmt, args);
+	va_end(args);
+}
diff --git a/src/debug.h b/src/debug.h
new file mode 100644
index 0000000..dc1e2ab
--- /dev/null
+++ b/src/debug.h
@@ -0,0 +1,19 @@
+#ifndef DEBUG_H
+#define DEBUG_H
+
+#ifdef JSON_VALIDATOR_DEBUG
+void log_message(int level, const char *fmt, ...);
+
+#define err(...)	log_message(0, __VA_ARGS__)
+#define warn(...)	log_message(1, __VA_ARGS__)
+#define info(...)	log_message(2, __VA_ARGS__)
+#define dbg(...)	log_message(3, __VA_ARGS__)
+
+#else
+#define err(...)
+#define warn(...)
+#define info(...)
+#define dbg(...)
+#endif
+
+#endif /* DEBUG_H */
-- 
GitLab