last_patch89 from vodz:
authorEric Andersen <andersen@codepoet.org>
Fri, 20 Jun 2003 09:01:58 +0000 (09:01 -0000)
committerEric Andersen <andersen@codepoet.org>
Fri, 20 Jun 2003 09:01:58 +0000 (09:01 -0000)
commit8876fb2f59a0b515b3121d5894933eef88ce566a
treef67de9320202043aca8ded20fb80d668c3b0c2d8
parentdfce3536ace2bcd38bdd3731841998ce344d786e
last_patch89 from vodz:

    Manuel,

    I rewrite bb_getopt_ulflags() function for more universal usage.
    My version support now:
    - options with arguments (optional arg as GNU extension also)
    - complementaly and/or incomplementaly and/or incongruously and/or list
    options
    - long_opt (all applets may have long option, add supporting is trivial)
    This realisation full compatibile from your version.
    Code size grow 480 bytes, but only coreutils/* over compensate this size
    after using new function. Last patch reduced over 800 bytes and not full
    applied to all. "mkdir" and "mv" applets have long_opt now for demonstrate
    trivial addition support long_opt with usage new bb_getopt_ulflags().
    Complementaly and/or incomplementaly and/or incongruously and/or list options
    logic is not trivial, but new "cut" and "grep" applets using this logic
    for examples with full demostrating. New "grep" applet reduced over 300
    bytes.

    Mark,
    Also. I removed bug from "grep" applet.
    $ echo a b | busybox grep -e a b
    a b
    a b
    But right is printing one only.

    --w
    vodz
19 files changed:
coreutils/cut.c
coreutils/date.c
coreutils/dd.c
coreutils/df.c
coreutils/du.c
coreutils/env.c
coreutils/mkdir.c
coreutils/mv.c
coreutils/rm.c
coreutils/stty.c
coreutils/test.c
findutils/grep.c
findutils/xargs.c
include/libbb.h
libbb/getopt_ulflags.c
libbb/inode_hash.c
loginutils/addgroup.c
loginutils/adduser.c
miscutils/crond.c