Optimized debugging API to reduce code size.
diff --git a/tools/make_debug b/tools/make_debug
index a7d8bb9..e5a59f0 100755
--- a/tools/make_debug
+++ b/tools/make_debug
@@ -21,16 +21,14 @@
#define DEBUG_CLASS_COUNT __DBCL_COUNT
-#ifdef DEBUG_RUNTIME
-
-const char * const debug_cl_name[] = { "fixme", "err", "warn", "trace" };
+static const char * const debug_cl_name[] = { "fixme", "err", "warn", "trace" };
EOF
chno=0
for ch in $DEBUG_CHANNELS
do
- echo "const int dbch_$ch = $chno;"
+ echo "char dbch_$ch[] = \"\\003$ch\";"
chno=`expr $chno + 1`
done
echo
@@ -38,35 +36,25 @@
count=1
echo
-echo 'char __debug_msg_enabled[DEBUG_CHANNEL_COUNT][DEBUG_CLASS_COUNT] = {'
+echo 'static char * const debug_channels[DEBUG_CHANNEL_COUNT] = {'
for ch in $DEBUG_CHANNELS
do
if [ "${count}" != "${chno}" ]; then
- echo "{1, 1, 0, 0},"
+ echo " dbch_${ch},"
else
- echo "{1, 1, 0, 0}"
+ echo " dbch_${ch}"
fi
count=`expr $count + 1`
done
echo '};'
-count=1
-echo
-echo 'const char * const debug_ch_name[DEBUG_CHANNEL_COUNT] = {'
-for ch in $DEBUG_CHANNELS
+for cls in err fixme warn trace
do
- if [ "${count}" != "${chno}" ]; then
- echo "\"${ch}\",";
- else
- echo "\"${ch}\"";
- fi
- count=`expr $count + 1`
-done
-echo '};'
+ cat <<EOF
-cat <<EOF
-
-#endif /*DEBUG_RUNTIME*/
-
-/* end of automatically generated debug.h */
+int dbg_header_$cls( const char *dbg_channel, const char *func )
+{
+ return dbg_printf( "$cls:%s:%s ", dbg_channel + 1, func );
+}
EOF
+done