From c85f7b024445795bf1d818e646088cee327c8b01 Mon Sep 17 00:00:00 2001 From: Prasad Joshi Date: Fri, 8 Apr 2011 17:43:06 +0100 Subject: [PATCH] kvm tools: Generate list of common kvm tool commands - The Documentation/ directory will have a text file for each commmand. The text file should contain the information about the command in manpage format. - command-list.txt: is a list of common commands used with the kvm tool. - util/generate-cmdlist.sh: is a shell script that uses command-list.txt and text files in Documentation/ directory to generate the common-cmds.h file in the include directory. The header file is furthur used to display a usage messgae. Almost the entire script is copied from the tools/perf. Signed-off-by: Prasad Joshi Signed-off-by: Pekka Enberg --- tools/kvm/Documentation/kvm-run.txt | 53 +++++++++++++++++++++++++++++ tools/kvm/command-list.txt | 5 +++ tools/kvm/util/generate-cmdlist.sh | 24 +++++++++++++ 3 files changed, 82 insertions(+) create mode 100644 tools/kvm/Documentation/kvm-run.txt create mode 100644 tools/kvm/command-list.txt create mode 100755 tools/kvm/util/generate-cmdlist.sh diff --git a/tools/kvm/Documentation/kvm-run.txt b/tools/kvm/Documentation/kvm-run.txt new file mode 100644 index 000000000000..c56434f59651 --- /dev/null +++ b/tools/kvm/Documentation/kvm-run.txt @@ -0,0 +1,53 @@ +kvm-run(1) +================ + +NAME +---- +kvm-run - Start the virtual machine + +SYNOPSIS +-------- +[verse] +'kvm run' [-k | --kernel ] + +DESCRIPTION +----------- +The command starts a virtual machine. + +OPTIONS +------- +-m:: +--mem=:: + Virtual machine memory size in MiB. + +-p:: +--params:: + Additional kernel command line arguments. + +-r:: +--initrd=:: + Initial RAM disk image. + +-k:: +--kernel=:: + The virtual machine kernel. +-d +--kvm-dev=:: + KVM device file + +-i:: +--image=:: + A disk image file. + +-s:: +--single-step:: Enable single stepping. + +-g:: +--ioport-debug:: Enable ioport debugging. + +-c:: +--enable-virtio-console:: Enable the virtual IO console + +SEE ALSO +-------- +linkkvm: diff --git a/tools/kvm/command-list.txt b/tools/kvm/command-list.txt new file mode 100644 index 000000000000..4eaf3996afd7 --- /dev/null +++ b/tools/kvm/command-list.txt @@ -0,0 +1,5 @@ +# +# List of known perf commands. +# command name category [deprecated] [common] +# +kvm-run mainporcelain common diff --git a/tools/kvm/util/generate-cmdlist.sh b/tools/kvm/util/generate-cmdlist.sh new file mode 100755 index 000000000000..c3fd1723b616 --- /dev/null +++ b/tools/kvm/util/generate-cmdlist.sh @@ -0,0 +1,24 @@ +#!/bin/sh + +echo "/* Automatically generated by $0 */ +struct cmdname_help +{ + char name[16]; + char help[80]; +}; + +static struct cmdname_help common_cmds[] = {" + +sed -n 's/^kvm-\([^ \t]*\).*common/\1/p' command-list.txt | +sort | +while read cmd +do + # TODO following sed command should be fixed + sed -n '/^NAME/,/^kvm-'"$cmd"'/ { + /NAME/d + /--/d + s/.*kvm-'"$cmd"' - \(.*\)/ {"'"$cmd"'", "\1"},/ + p + }' "Documentation/kvm-$cmd.txt" +done +echo "};" -- 2.39.5