Patch from larry to fix some grammar errors.
[platform/upstream/busybox.git] / TODO
1 TODO list for busybox in no particular order. Just because something
2 is listed here doesn't mean that it is going to be added to busybox,
3 or that doing so is even a good idea. It just means that I _might_ get
4 around to it some time. If you have any good ideas, please let me know.
5
6 * login/sulogin/passwd/getty/etc are part of tinylogin, and so are not
7     needed or wanted in busybox (or else I'd have to link to libcrypt).
8
9 * We _were_ going to split networking apps into a new package called 
10     netkit-tiny.  Per discussions on the mailing list, this isn't going
11     to happen.  False alarm.  Sorry about the confusion.  
12
13 * The default busybox shell, lash, is really too weak for serious use,
14     although it is possible to run many simple systems with it.  BusyBox
15     0.52 now contains a rewritten shell, hush, which understands most
16     Bourne grammar, with only about a 4 Kbyte binary size penalty.  You can
17     engage hush at pre-compile time by "ln -sf hush.c sh.c; touch hush.c".
18     Hush is young, and has plenty of bugs to shake out, so think twice before
19     using it for production systems.  We welcome bug reports and patches.
20
21  -Erik
22
23 -----------
24
25 Possible apps to include some time:
26
27 * hwclock
28 * group/commonize strings, remove dups (for i18n, l10n)
29
30 -----------
31
32 With sysvinit, reboot, poweroff and halt all used a named pipe, 
33 /dev/initctl, to communicate with the init process.  Busybox
34 currently uses signals to communicate with init.  This makes
35 busybox incompatible with sysvinit.  We should probably use
36 a named pipe as well so we can be compatible.
37
38 -----------------------
39
40 Run the following:
41
42     rm -f busybox && make LDFLAGS+=-nostdlib 2>&1 | \
43         sed -ne 's/.*undefined reference to `\(.*\)..*/\1/gp' | sort | uniq
44
45 reveals the list of all external (i.e., libc) things that BusyBox depends on.
46 It would be a very nice thing to reduce this list to an absolute minimum, to
47 reduce the footprint of busybox, especially when staticly linking with
48 libraries such as uClibc.
49
50 -----------------------
51
52 Compile with debugging on, run 'nm --size-sort ./busybox'
53 and then start with the biggest things and make them smaller...
54
55 -----------------------
56
57  du.c probably ought to have an -x switch like GNU du does...
58
59 -----------------------
60
61 xargs could use a -l option
62
63 ------------------------------------------------------------------