Index: src/route-rnd/route-rnd.c =================================================================== --- src/route-rnd/route-rnd.c (revision 1397) +++ src/route-rnd/route-rnd.c (revision 1398) @@ -137,6 +137,27 @@ return 0; } +static void help_generic(const char *prg) +{ + printf("route-rnd: external PCB autorouter\n"); + printf("Usage: %s [-v] -m method [-o out_fn] inp_fn\n", prg); + printf(" %s -m method -l\n", prg); + printf(" %s -M\n", prg); + printf("\nOptions:\n"); + printf(" -M list available methods (in TSV format)\n"); + printf(" -m method set method (by name, as returned by -M, first column)\n"); + printf(" -l list config options of a method (in tEDAx route res)\n"); + printf(" -v increase verbosity (can be specified multiple times)\n"); + printf(" -o ofn output file name (for tEDAx route result)\n"); + printf(" inp_fn input file name (tEDAx route request)\n"); + printf("\n"); +} + +static void help(const char *prg, const char *topic) +{ + help_generic(prg); +} + int route_rnd_main(int argc, char *argv[]) { char *ifn = NULL, *ofn = NULL, *method = "horver"; @@ -151,6 +172,7 @@ if (*cmd == '-') { while(*cmd == '-') cmd++; switch(*cmd) { + case 'h': help(argv[0], arg); exit(0); case 'v': verbose++; break; case 'm': method = arg; n++; break; case 'l': list_conf = 1; break;