From 1de2f174c2dceefeff6886f84c0a6b658c3665f0 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Wed, 13 Nov 2019 13:42:11 +1000 Subject: test: let rmlvo-to-kccgst take long options like rmlvo-to-keymap The short options were left for backwards compatibility. Signed-off-by: Peter Hutterer --- test/rmlvo-to-kccgst.c | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'test') diff --git a/test/rmlvo-to-kccgst.c b/test/rmlvo-to-kccgst.c index f3c8076..99e5064 100644 --- a/test/rmlvo-to-kccgst.c +++ b/test/rmlvo-to-kccgst.c @@ -22,6 +22,7 @@ */ #include +#include #include "test.h" #include "xkbcomp/xkbcomp-priv.h" @@ -30,13 +31,29 @@ int main(int argc, char *argv[]) { - int opt; struct xkb_rule_names rmlvo = { NULL }; struct xkb_context *ctx; struct xkb_component_names kccgst; - while ((opt = getopt(argc, argv, "r:m:l:v:o:h")) != -1) { - switch (opt) { + static struct option opts[] = { + {"help", no_argument, 0, 'h'}, + {"rules", required_argument, 0, 'r'}, + {"model", required_argument, 0, 'm'}, + {"layout", required_argument, 0, 'l'}, + {"variant", required_argument, 0, 'v'}, + {"options", required_argument, 0, 'o'}, + {0, 0, 0, 0}, + }; + + while (1) { + int c; + int option_index = 0; + + c = getopt_long(argc, argv, "r:m:l:v:o:h", opts, &option_index); + if (c == -1) + break; + + switch (c) { case 'r': rmlvo.rules = optarg; break; -- cgit v1.2.1