Module Name: src
Committed By: christos
Date: Wed Feb 24 14:51:21 UTC 2016
Added Files:
src/bin/sh: mknodenames.sh
Log Message:
Simple script to create node names for debugging
To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 src/bin/sh/mknodenames.sh
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Added files:
Index: src/bin/sh/mknodenames.sh
diff -u /dev/null src/bin/sh/mknodenames.sh:1.1
--- /dev/null Wed Feb 24 09:51:21 2016
+++ src/bin/sh/mknodenames.sh Wed Feb 24 09:51:20 2016
@@ -0,0 +1,40 @@
+#! /bin/sh
+
+test -t 1 && test "$#" -eq 0 && exec > nodenames.h
+
+echo "#ifdef DEBUG"
+echo '
+/*
+ * Automatically generated by '"$0"'
+ * DO NOT EDIT. Do Not "cvs add".
+ */
+'
+
+MAX=$(awk < nodes.h '
+ /#define/ {
+ if ($3 > MAX) MAX = $3
+ }
+ END { print MAX }
+')
+
+echo
+echo "STATIC const char * const NodeNames[${MAX} + 1] = {"
+
+grep '^#define' nodes.h | sort -k2n | while read define name number opt_comment
+do
+ : ${next:=0}
+ while [ "$number" -gt "$next" ]
+ do
+ echo ' "???",'
+ next=$(( next + 1))
+ done
+ echo ' "'"$name"'",'
+ next=$(( number + 1 ))
+done
+
+echo "};"
+echo
+echo '#define NODETYPENAME(type) \'
+echo ' ((unsigned)(type) <= '"${MAX}"' ? NodeNames[(type)] : "??OOR??")'
+echo
+echo '#endif'