blob: 378717d8bf0597200f01fa73908db3fee986ec7e [file] [log] [blame]
Eric Andersenb186d981999-12-03 09:19:54 +00001TODO list for busybox in no particular order. Just because something
2is listed here doesn't mean that it is going to be added to busybox,
3or that doing so is even a good idea. It just means that I _might_ get
4around to it some time. If you have any good ideas, please let me know.
Eric Andersen394f7641999-11-23 21:38:12 +00005
Erik Andersen1c5b2581999-12-16 20:59:36 +00006* login/sulogin/passwd/getty/etc are part of tinylogin, and so are not
Erik Andersen94f5e0b2000-05-01 19:10:52 +00007 needed or wanted in busybox (or else I'd have to link to libcrypt).
Erik Andersen1c5b2581999-12-16 20:59:36 +00008
Eric Andersenc5cd4702001-01-24 18:47:30 +00009* 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
Eric Andersen8ec10a92001-01-27 09:33:39 +000011 to happen. False alarm. Sorry about the confusion.
12
Erik Andersen31638212000-01-15 22:28:50 +000013
Eric Andersenb186d981999-12-03 09:19:54 +000014 -Erik
15
16-----------
Eric Andersenbefda6e1999-11-25 08:06:22 +000017
Eric Andersen235f66d2000-12-13 18:07:38 +000018Possible apps to include some time:
19
Eric Andersenb186d981999-12-03 09:19:54 +000020* hwclock
Mark Whitley0a027e62000-05-08 23:25:59 +000021* group/commonize strings, remove dups (for i18n, l10n)
Eric Andersen372f1262001-11-19 22:51:41 +000022* login/sulogin/passwd/etc are part of tinylogin. These are
23 being merged into busybox as time allows.
Erik Andersenfac10d72000-02-07 05:29:42 +000024
Eric Andersen98e599c2001-02-14 18:47:33 +000025-----------
26
Eric Andersenb0aca922001-05-03 17:35:48 +000027With sysvinit, reboot, poweroff and halt all used a named pipe,
28/dev/initctl, to communicate with the init process. Busybox
29currently uses signals to communicate with init. This makes
30busybox incompatible with sysvinit. We should probably use
31a named pipe as well so we can be compatible.
Eric Andersen98e599c2001-02-14 18:47:33 +000032
Erik Andersene2729152000-02-18 21:34:17 +000033-----------------------
34
Eric Andersen98e599c2001-02-14 18:47:33 +000035Run the following:
Erik Andersenf378fce2000-05-01 19:27:17 +000036
Erik Andersen12d1b372000-05-01 19:50:37 +000037 rm -f busybox && make LDFLAGS+=-nostdlib 2>&1 | \
38 sed -ne 's/.*undefined reference to `\(.*\)..*/\1/gp' | sort | uniq
Erik Andersenf378fce2000-05-01 19:27:17 +000039
Eric Andersen77d92682001-05-23 20:32:09 +000040reveals the list of all external (i.e., libc) things that BusyBox depends on.
Eric Andersen235f66d2000-12-13 18:07:38 +000041It would be a very nice thing to reduce this list to an absolute minimum, to
Eric Andersenc5cd4702001-01-24 18:47:30 +000042reduce the footprint of busybox, especially when staticly linking with
43libraries such as uClibc.
Erik Andersenf378fce2000-05-01 19:27:17 +000044
Eric Andersen235f66d2000-12-13 18:07:38 +000045-----------------------
46
Erik Andersen7c4b2f32000-02-29 21:49:22 +000047Compile with debugging on, run 'nm --size-sort ./busybox'
48and then start with the biggest things and make them smaller...
49
Erik Andersen7c4b2f32000-02-29 21:49:22 +000050-----------------------
51
Eric Andersencaffb6e2000-09-25 21:28:07 +000052 du.c probably ought to have an -x switch like GNU du does...
Erik Andersen029011b2000-03-04 21:19:32 +000053
John Beppu5d817682001-04-17 17:09:34 +000054-----------------------
55
56xargs could use a -l option
57
Erik Andersen298854f2000-03-23 01:09:18 +000058------------------------------------------------------------------
Aaron Lehmannebd80652001-12-06 03:32:12 +000059
60libbb/unzip.c and archival/gzip.c have common constant static arrays and
61code for initializing the CRC array. Both use CRC-32 and could use
62common code for CRC calculation. Within archival/gzip.c, the CRC
63array should be malloc-ed as it is in libbb/unzip.c .