--- busybox-1.19.2/applets/applet_tables.c +++ busybox-1.19.2-buildsys/applets/applet_tables.c @@ -80,8 +80,15 @@ int main(int argc, char **argv) printf("#define NUM_APPLETS %u\n", NUM_APPLETS); if (NUM_APPLETS == 1) { + char *dash_to_underscore, *p; printf("#define SINGLE_APPLET_STR \"%s\"\n", applets[0].name); - printf("#define SINGLE_APPLET_MAIN %s_main\n", applets[0].name); + /* Example: "ether-wake" -> "ether_wake" */ + p = dash_to_underscore = strdup(applets[0].name); + p--; + while (*++p) + if (*p == '-') + *p = '_'; + printf("#define SINGLE_APPLET_MAIN %s_main\n", dash_to_underscore); } printf("\n");