162306a36Sopenharmony_ci#!/bin/sh
262306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
362306a36Sopenharmony_ci
462306a36Sopenharmony_ciecho "/* Automatically generated by $0 */
562306a36Sopenharmony_cistruct cmdname_help
662306a36Sopenharmony_ci{
762306a36Sopenharmony_ci    char name[16];
862306a36Sopenharmony_ci    char help[80];
962306a36Sopenharmony_ci};
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_cistatic struct cmdname_help common_cmds[] = {"
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_cised -n -e 's/^perf-\([^ 	]*\)[ 	].* common.*/\1/p' command-list.txt |
1462306a36Sopenharmony_cisort |
1562306a36Sopenharmony_ciwhile read cmd
1662306a36Sopenharmony_cido
1762306a36Sopenharmony_ci     sed -n '
1862306a36Sopenharmony_ci     /^NAME/,/perf-'"$cmd"'/H
1962306a36Sopenharmony_ci     ${
2062306a36Sopenharmony_ci            x
2162306a36Sopenharmony_ci            s/.*perf-'"$cmd"' - \(.*\)/  {"'"$cmd"'", "\1"},/
2262306a36Sopenharmony_ci	    p
2362306a36Sopenharmony_ci     }' "Documentation/perf-$cmd.txt"
2462306a36Sopenharmony_cidone
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ciecho "#ifdef HAVE_LIBELF_SUPPORT"
2762306a36Sopenharmony_cised -n -e 's/^perf-\([^ 	]*\)[ 	].* full.*/\1/p' command-list.txt |
2862306a36Sopenharmony_cisort |
2962306a36Sopenharmony_ciwhile read cmd
3062306a36Sopenharmony_cido
3162306a36Sopenharmony_ci     sed -n '
3262306a36Sopenharmony_ci     /^NAME/,/perf-'"$cmd"'/H
3362306a36Sopenharmony_ci     ${
3462306a36Sopenharmony_ci            x
3562306a36Sopenharmony_ci            s/.*perf-'"$cmd"' - \(.*\)/  {"'"$cmd"'", "\1"},/
3662306a36Sopenharmony_ci	    p
3762306a36Sopenharmony_ci     }' "Documentation/perf-$cmd.txt"
3862306a36Sopenharmony_cidone
3962306a36Sopenharmony_ciecho "#endif /* HAVE_LIBELF_SUPPORT */"
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ciecho "#if defined(HAVE_LIBTRACEEVENT) && (defined(HAVE_LIBAUDIT_SUPPORT) || defined(HAVE_SYSCALL_TABLE_SUPPORT))"
4262306a36Sopenharmony_cised -n -e 's/^perf-\([^ 	]*\)[ 	].* audit*/\1/p' command-list.txt |
4362306a36Sopenharmony_cisort |
4462306a36Sopenharmony_ciwhile read cmd
4562306a36Sopenharmony_cido
4662306a36Sopenharmony_ci     sed -n '
4762306a36Sopenharmony_ci     /^NAME/,/perf-'"$cmd"'/H
4862306a36Sopenharmony_ci     ${
4962306a36Sopenharmony_ci            x
5062306a36Sopenharmony_ci            s/.*perf-'"$cmd"' - \(.*\)/  {"'"$cmd"'", "\1"},/
5162306a36Sopenharmony_ci	    p
5262306a36Sopenharmony_ci     }' "Documentation/perf-$cmd.txt"
5362306a36Sopenharmony_cidone
5462306a36Sopenharmony_ciecho "#endif /* HAVE_LIBTRACEEVENT && (HAVE_LIBAUDIT_SUPPORT || HAVE_SYSCALL_TABLE_SUPPORT) */"
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ciecho "#ifdef HAVE_LIBTRACEEVENT"
5762306a36Sopenharmony_cised -n -e 's/^perf-\([^ 	]*\)[ 	].* traceevent.*/\1/p' command-list.txt |
5862306a36Sopenharmony_cisort |
5962306a36Sopenharmony_ciwhile read cmd
6062306a36Sopenharmony_cido
6162306a36Sopenharmony_ci     sed -n '
6262306a36Sopenharmony_ci     /^NAME/,/perf-'"$cmd"'/H
6362306a36Sopenharmony_ci     ${
6462306a36Sopenharmony_ci            x
6562306a36Sopenharmony_ci            s/.*perf-'"$cmd"' - \(.*\)/  {"'"$cmd"'", "\1"},/
6662306a36Sopenharmony_ci            p
6762306a36Sopenharmony_ci     }' "Documentation/perf-$cmd.txt"
6862306a36Sopenharmony_cidone
6962306a36Sopenharmony_ciecho "#endif /* HAVE_LIBTRACEEVENT */"
7062306a36Sopenharmony_ciecho "};"
71