diff options
Diffstat (limited to 'applets')
-rw-r--r-- | applets/busybox.c | 12 | ||||
-rwxr-xr-x | applets/busybox.mkll | 16 |
2 files changed, 14 insertions, 14 deletions
diff --git a/applets/busybox.c b/applets/busybox.c index 9986af3..c36bc26 100644 --- a/applets/busybox.c +++ b/applets/busybox.c @@ -195,6 +195,7 @@ int main(int argc, char **argv) int busybox_main(int argc, char **argv) { + int col=0; argc--; argv++; @@ -208,18 +209,19 @@ int busybox_main(int argc, char **argv) fprintf(stderr, "BusyBox v%s (%s) multi-call binary -- GPL2\n", BB_VER, BB_BT); fprintf(stderr, "Usage: busybox [function] [arguments]...\n"); + fprintf(stderr, "or\nUsage: [function] [arguments]...\n"); fprintf(stderr, "\n\tMost people will create a symlink to busybox for each\n" "\tfunction name, and busybox will act like whatever you invoke it as.\n"); fprintf(stderr, "\nCurrently defined functions:\n"); - if (a->name != 0) { - fprintf(stderr, "%s", a->name); - a++; - } while (a->name != 0) { - fprintf(stderr, ", %s", a->name); + col+=fprintf(stderr, "%s%s", ((col==0)? "\t":", "), a->name); a++; + if (col>60) { + fprintf(stderr, ",\n"); + col=0; + } } fprintf(stderr, "\n\n"); exit(-1); diff --git a/applets/busybox.mkll b/applets/busybox.mkll index e43a1cc..f79462b 100755 --- a/applets/busybox.mkll +++ b/applets/busybox.mkll @@ -2,16 +2,14 @@ #Make busybox links list file DF="busybox.def.h" -MF="main.c" +MF="busybox.c" LIST="$(sed -n '/^#define/{s/^#define //p;}' $DF)" - for def in ${LIST}; do - - set -- $(sed -n '/^#ifdef '$def'[ +| +].*/,/^#endif/{s/.*\/\///p; /^{ /{ s/^{ "//; s/",.*$//p;}; }' $MF) - path=$1; shift - - for n in $@; do - echo "$path/$n" - done +for def in ${LIST}; do + i=`sed -n 's/^#ifdef '$def'.*\/\/\(.*$\)/\/\1\//gp' $MF` + j=`sed -n '/^#ifdef '$def'.*/,/^#endif/{ s/.*\"\(.*\)\".*/\1/gp; }' $MF` + for k in $j; do + echo $i$k done +done |