scripts to list libc symbols and declared variables
[musl-tables] / maketags.sh
diff --git a/maketags.sh b/maketags.sh
new file mode 100755 (executable)
index 0000000..c64907a
--- /dev/null
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+export LC_ALL=C
+MUSL=../musl
+
+(
+       cd $MUSL/include
+       ctags -f /tmp/musl.tags -R -n -u --language-force=c --c-kinds=pxdstuv --fields=k --exclude='*.sh' .
+)
+
+awk '
+BEGIN {
+       FS="\t"
+}
+/^[^!]/ {
+       gsub(/[^0-9]*/,"",$3)
+       if ($4 == "s")
+               $1 = "struct " $1
+       if ($4 == "u")
+               $1 = "union " $1
+       print $1 "\t" $2 "\t" $4 "\t" $3
+}' /tmp/musl.tags |sort >data/musl.tags
+rm -f /tmp/musl.tags