- add sources.
[platform/framework/web/crosswalk.git] / src / third_party / sqlite / src / mkopcodec.awk
1 #!/usr/bin/awk -f
2 #
3 # This AWK script scans the opcodes.h file (which is itself generated by
4 # another awk script) and uses the information gleaned to create the
5 # opcodes.c source file.
6 #
7 # Opcodes.c contains strings which are the symbolic names for the various
8 # opcodes used by the VDBE.  These strings are used when disassembling a
9 # VDBE program during tracing or as a result of the EXPLAIN keyword.
10 #
11 BEGIN {
12   print "/* Automatically generated.  Do not edit */"
13   print "/* See the mkopcodec.awk script for details. */"
14   printf "#if !defined(SQLITE_OMIT_EXPLAIN)"
15   printf    " || !defined(NDEBUG)"
16   printf    " || defined(VDBE_PROFILE)"
17   print     " || defined(SQLITE_DEBUG)"
18   print "const char *sqlite3OpcodeName(int i){"
19   print " static const char *const azName[] = { \"?\","
20 }
21 /define OP_/ {
22   sub("OP_","",$2)
23   i++
24   printf "     /* %3d */ \"%s\",\n", $3, $2
25 }
26 END {
27   print "  };"
28   print "  return azName[i];"
29   print "}"
30   print "#endif"
31 }