@@ -6,21 +6,29 @@ HXCOMM construct option structures, enums and help message for specified
HXCOMM architectures.
HXCOMM HXCOMM can be used for comments, discarded from both texi and C
-#if defined(QEMU_HELP_SELECT_STANDARD) || !defined(QEMU_HELP_SELECT)
-#undef QEMU_HELP_SELECT_STANDARD
-DEFHEADING(Standard options:)
+#if defined(QEMU_HELP_SELECT_HELP) || !defined(QEMU_HELP_SELECT)
+#undef QEMU_HELP_SELECT_HELP
+DEFHEADING(Help/version options:)
STEXI
@table @option
ETEXI
DEF("help", 0, QEMU_OPTION_h,
- "-h or -help display all help options and exit\n", QEMU_ARCH_ALL)
+ "-h or -help list all help options\n", QEMU_ARCH_ALL)
STEXI
@item -h
@findex -h
Display all help options and exit
ETEXI
+DEF("help-all", 0, QEMU_OPTION_h_all,
+ "-help-all display all help options\n", QEMU_ARCH_ALL)
+STEXI
+@item -help-all
+@findex -help-all
+Display all help options and exit
+ETEXI
+
DEF("help-standard", 0, QEMU_OPTION_h_standard,
"-help-standard display standard options\n", QEMU_ARCH_ALL)
STEXI
@@ -133,6 +141,19 @@ STEXI
Display version information and exit
ETEXI
+STEXI
+@end table
+ETEXI
+DEFHEADING()
+#endif
+
+#if defined(QEMU_HELP_SELECT_STANDARD) || !defined(QEMU_HELP_SELECT)
+#undef QEMU_HELP_SELECT_STANDARD
+DEFHEADING(Standard options:)
+STEXI
+@table @option
+ETEXI
+
DEF("machine", HAS_ARG, QEMU_OPTION_machine, \
"-machine [type=]name[,prop[=value][,...]]\n"
" selects emulated machine ('-machine help' for list)\n"
@@ -1911,7 +1911,7 @@ static void version(void)
printf("QEMU emulator version " QEMU_VERSION QEMU_PKGVERSION ", Copyright (c) 2003-2008 Fabrice Bellard\n");
}
-static void help(int exitcode)
+static void help_all(int exitcode)
{
version();
printf("usage: %s [options] [disk_image]\n\n"
@@ -1932,6 +1932,13 @@ static void help(int exitcode)
}
#define QEMU_HELP_SELECT
+static void help(int exitcode)
+{
+#define QEMU_HELP_SELECT_HELP
+#define QEMU_OPTIONS_GENERATE_HELP
+#include "qemu-options-wrapper.h"
+ exit(exitcode);
+}
static void help_standard(int exitcode)
{
#define QEMU_HELP_SELECT_STANDARD
@@ -3413,6 +3420,9 @@ int main(int argc, char **argv, char **envp)
case QEMU_OPTION_h:
help(0);
break;
+ case QEMU_OPTION_h_all:
+ help_all(0);
+ break;
case QEMU_OPTION_h_standard:
help_standard(0);
break;
A slight change of behavior: -help-all displays all helps (like -help/-h before) -help/-h lists only the available help commands Signed-off-by: Laurent Vivier <lvivier@redhat.com> --- v3: add this patch to add an help section, -help displays only this section qemu-options.hx | 29 +++++++++++++++++++++++++---- vl.c | 12 +++++++++++- 2 files changed, 36 insertions(+), 5 deletions(-)