]>
git.ipfire.org Git - thirdparty/e2fsprogs.git/blob - lib/ss/ct_c.awk
3 printf "/* %s.c - automatically generated from %s.ct */\n", \
4 rootname
, rootname
> outfile
5 print "#include <ss/ss.h>" > outfile
13 printf "static char const * const ssu%05d[] = {\n", cmdnum
> outfile
17 subr =
substr($
0, 6, length($
0)-5)
21 help =
substr($
0, 6, length($
0)-5)
25 cmd =
substr($
0, 6, length($
0)-5)
26 printf "%s\"%s\",\n", cmdtab
, cmd
> outfile
31 opt =
substr($
0, 6, length($
0)-5)
32 if (opt ==
"dont_list") {
35 if (opt ==
"dont_summarize") {
41 print " (char const *)0" > outfile
43 printf "extern void %s __SS_PROTO;\n", subr
> outfile
44 # Work around a bug in gawk 3.0.5
46 subr_tab
[awk_bug
] = subr
47 options_tab
[awk_bug
] = options
48 help_tab
[awk_bug
] = help
56 error =
substr($
0, 8, length($
0)-7)
57 printf "Error in line %d: %s\n", linenum
, error
58 print "#__ERROR_IN_FILE__" > outfile
62 printf "static ss_request_entry ssu%05d[] = {\n", cmdnum
+1 > outfile
63 for (i=
1; i
<= cmdnum
; i
++) {
64 printf " { ssu%05d,\n", i
> outfile
65 printf " %s,\n", subr_tab
[i
] > outfile
66 printf " \"%s\",\n", help_tab
[i
] > outfile
67 printf " %d },\n", options_tab
[i
] > outfile
69 print " { 0, 0, 0, 0 }" > outfile
72 printf "ss_request_table %s = { 2, ssu%05d };\n", \
73 cmdtbl
, cmdnum
+1 > outfile