#!/bin/sh echo "/* Automatically generated by $0 */ struct cmdname_help { char name[16]; char help[80]; }; static struct cmdname_help common_cmds[] = {" sed -n -e 's/^perf-\([^ ]*\)[ ].* common.*/\1/p' command-list.txt | sort | while read cmd { sed -n ' /^NAME/,/perf-'"$cmd"'/H ${ x s/.*perf-'"$cmd"' - \(.*\)/ {"'"$cmd"'", "\1"},/ p }' "Documentation/perf-$cmd.txt" } echo "#ifdef HAVE_LIBELF_SUPPORT" sed -n -e 's/^perf-\([^ ]*\)[ ].* full.*/\1/p' command-list.txt | sort | while read cmd { sed -n ' /^NAME/,/perf-'"$cmd"'/H ${ x s/.*perf-'"$cmd"' - \(.*\)/ {"'"$cmd"'", "\1"},/ p }' "Documentation/perf-$cmd.txt" } echo "#endif /* HAVE_LIBELF_SUPPORT */" echo "#ifdef HAVE_LIBAUDIT_SUPPORT" sed -n -e 's/^perf-\([^ ]*\)[ ].* audit*/\1/p' command-list.txt | sort | while read cmd { sed -n ' /^NAME/,/perf-'"$cmd"'/H ${ x s/.*perf-'"$cmd"' - \(.*\)/ {"'"$cmd"'", "\1"},/ p }' "Documentation/perf-$cmd.txt" } echo "#endif /* HAVE_LIBELF_SUPPORT */" echo "};" (CommandList children: [ (C {(echo)} { (DQ ("/* Automatically generated by ") ($ VSub_Number "$0") (" */\n") ("struct cmdname_help\n") ("{\n") (" char name[16];\n") (" char help[80];\n") ("};\n") ("\n") ("static struct cmdname_help common_cmds[] = {") ) } ) (Pipeline children: [ (C {(sed)} {(-n)} {(-e)} {(SQ <"s/^perf-\\([^ \t]*\\)[ \t].* common.*/\\1/p">)} {(command-list.txt)} ) (C {(sort)}) (While cond: [(C {(read)} {(cmd)})] body: (DoGroup children: [ (C {(sed)} {(-n)} {(SQ <"\n"> <" /^NAME/,/perf-">) (DQ ($ VSub_Name "$cmd")) (SQ <"/H\n"> <" ${\n"> <" x\n"> <" s/.*perf-">) (DQ ($ VSub_Name "$cmd")) (SQ <" - \\(.*\\)/ {\"">) (DQ ($ VSub_Name "$cmd")) (SQ <"\", \"\\1\"},/\n"> <"\t p\n"> <" }">) } {(DQ (Documentation/perf-) ($ VSub_Name "$cmd") (.txt))} ) ] spids: [44 85] ) ) ] negated: False ) (C {(echo)} {(DQ ("#ifdef HAVE_LIBELF_SUPPORT"))}) (Pipeline children: [ (C {(sed)} {(-n)} {(-e)} {(SQ <"s/^perf-\\([^ \t]*\\)[ \t].* full.*/\\1/p">)} {(command-list.txt)}) (C {(sort)}) (While cond: [(C {(read)} {(cmd)})] body: (DoGroup children: [ (C {(sed)} {(-n)} {(SQ <"\n"> <" /^NAME/,/perf-">) (DQ ($ VSub_Name "$cmd")) (SQ <"/H\n"> <" ${\n"> <" x\n"> <" s/.*perf-">) (DQ ($ VSub_Name "$cmd")) (SQ <" - \\(.*\\)/ {\"">) (DQ ($ VSub_Name "$cmd")) (SQ <"\", \"\\1\"},/\n"> <"\t p\n"> <" }">) } {(DQ (Documentation/perf-) ($ VSub_Name "$cmd") (.txt))} ) ] spids: [118 159] ) ) ] negated: False ) (C {(echo)} {(DQ ("#endif /* HAVE_LIBELF_SUPPORT */"))}) (C {(echo)} {(DQ ("#ifdef HAVE_LIBAUDIT_SUPPORT"))}) (Pipeline children: [ (C {(sed)} {(-n)} {(-e)} {(SQ <"s/^perf-\\([^ \t]*\\)[ \t].* audit*/\\1/p">)} {(command-list.txt)}) (C {(sort)}) (While cond: [(C {(read)} {(cmd)})] body: (DoGroup children: [ (C {(sed)} {(-n)} {(SQ <"\n"> <" /^NAME/,/perf-">) (DQ ($ VSub_Name "$cmd")) (SQ <"/H\n"> <" ${\n"> <" x\n"> <" s/.*perf-">) (DQ ($ VSub_Name "$cmd")) (SQ <" - \\(.*\\)/ {\"">) (DQ ($ VSub_Name "$cmd")) (SQ <"\", \"\\1\"},/\n"> <"\t p\n"> <" }">) } {(DQ (Documentation/perf-) ($ VSub_Name "$cmd") (.txt))} ) ] spids: [198 239] ) ) ] negated: False ) (C {(echo)} {(DQ ("#endif /* HAVE_LIBELF_SUPPORT */"))}) (C {(echo)} {(DQ ("};"))}) ] )