summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconfigure10
-rw-r--r--monitor.c8
2 files changed, 18 insertions, 0 deletions
diff --git a/configure b/configure
index 0a84b0ebcf..2c2e7ae048 100755
--- a/configure
+++ b/configure
@@ -266,6 +266,7 @@ linux_aio=""
gprof="no"
debug_tcg="no"
+debug_mon="no"
debug="no"
strip_opt="yes"
bigendian="no"
@@ -514,9 +515,14 @@ for opt do
;;
--disable-debug-tcg) debug_tcg="no"
;;
+ --enable-debug-mon) debug_mon="yes"
+ ;;
+ --disable-debug-mon) debug_mon="no"
+ ;;
--enable-debug)
# Enable debugging options that aren't excessively noisy
debug_tcg="yes"
+ debug_mon="yes"
debug="yes"
strip_opt="no"
;;
@@ -1918,6 +1924,7 @@ echo "host CPU $cpu"
echo "host big endian $bigendian"
echo "target list $target_list"
echo "tcg debug enabled $debug_tcg"
+echo "Mon debug enabled $debug_mon"
echo "gprof enabled $gprof"
echo "sparse enabled $sparse"
echo "strip binaries $strip_opt"
@@ -1995,6 +2002,9 @@ echo "ARCH=$ARCH" >> $config_host_mak
if test "$debug_tcg" = "yes" ; then
echo "CONFIG_DEBUG_TCG=y" >> $config_host_mak
fi
+if test "$debug_mon" = "yes" ; then
+ echo "CONFIG_DEBUG_MONITOR=y" >> $config_host_mak
+fi
if test "$debug" = "yes" ; then
echo "CONFIG_DEBUG_EXEC=y" >> $config_host_mak
fi
diff --git a/monitor.c b/monitor.c
index 6eb0e2cfa9..2a14e81614 100644
--- a/monitor.c
+++ b/monitor.c
@@ -143,6 +143,14 @@ struct Monitor {
QLIST_ENTRY(Monitor) entry;
};
+#ifdef CONFIG_DEBUG_MONITOR
+#define MON_DEBUG(fmt, ...) do { \
+ fprintf(stderr, "Monitor: "); \
+ fprintf(stderr, fmt, ## __VA_ARGS__); } while (0)
+#else /* !CONFIG_DEBUG_MONITOR */
+#define MON_DEBUG(fmt, ...) do { } while (0)
+#endif /* CONFIG_DEBUG_MONITOR */
+
static QLIST_HEAD(mon_list, Monitor) mon_list;
static const mon_cmd_t mon_cmds[];