program_invocation_short_name isn't portable.
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
+#include <string.h>
#include "xkbcommon/xkbcommon.h"
static bool print = false;
static void
-usage(void)
+usage(char **argv)
{
printf("Usage: %s [--print] [--rules <rules>] [--layout <layout>] [--variant <variant>] [--options <option>]\n",
- program_invocation_short_name);
+ basename(argv[0]));
printf("This tool tests the compilation from RMLVO to a keymap.\n");
printf("--print print the resulting keymap\n");
}
switch (c) {
case 'h':
- usage();
+ usage(argv);
exit(0);
case OPT_PRINT:
print = true;
names->options = optarg;
break;
default:
- usage();
+ usage(argv);
exit(1);
}
int rc;
if (argc <= 1) {
- usage();
+ usage(argv);
return 1;
}