Magellan Linux

Diff of /trunk/mkinitrd-magellan/busybox/TODO

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 815 by niro, Sat Sep 1 22:45:15 2007 UTC revision 816 by niro, Fri Apr 24 18:33:46 2009 UTC
# Line 6  do one of these bounce an email off the Line 6  do one of these bounce an email off the
6  have any suggestions how they plan to go about it, and to minimize conflicts  have any suggestions how they plan to go about it, and to minimize conflicts
7  between your work and theirs.  But otherwise, all of these are fair game.  between your work and theirs.  But otherwise, all of these are fair game.
8    
9  Rob Landley <rob@landley.net>:  Rob Landley suggested these:
   Add BB_NOMMU to platform.h and migrate __uClinux__ tests to that.  
     #if defined __UCLIBC__ && !defined __ARCH_USE_MMU__  
10    Add a libbb/platform.c    Add a libbb/platform.c
11      Implement fdprintf() for platforms that haven't got one.      Implement fdprintf() for platforms that haven't got one.
12      Implement bb_realpath() that can handle NULL on non-glibc.      Implement bb_realpath() that can handle NULL on non-glibc.
13      Cleanup bb_asprintf()      Cleanup bb_asprintf()
14    
   Migrate calloc() and bb_calloc() occurrences to bb_xzalloc().  
15    Remove obsolete _() wrapper crud for internationalization we don't do.    Remove obsolete _() wrapper crud for internationalization we don't do.
16    Figure out where we need utf8 support, and add it.    Figure out where we need utf8 support, and add it.
17    
18    sh    sh
19      The command shell situation is a big mess.  We have three or four different      The command shell situation is a big mess.  We have three different
20      shells that don't really share any code, and the "standalone shell" doesn't      shells that don't really share any code, and the "standalone shell" doesn't
21      work all that well (especially not in a chroot environment), due to apps not      work all that well (especially not in a chroot environment), due to apps not
22      being reentrant.  I'm writing a new shell (bbsh) to unify the various      being reentrant.
23      shells and configurably add the minimal set of bash features people      lash is phased out. hush can be configured down to be nearly as small,
24      actually use.  The hardest part is it has to configure down as small as      but less buggy :)
     lash while providing lash's features.  The rest is easy in comparison.  
   bzip2  
     Compression-side support.  
25    init    init
26      General cleanup (should use ENABLE_FEATURE_INIT_SYSLOG and ENABLE_FEATURE_INIT_DEBUG).      General cleanup (should use ENABLE_FEATURE_INIT_SYSLOG and ENABLE_FEATURE_INIT_DEBUG).
   depmod  
     busybox lacks a way to update module deps when running from firmware without the  
     use of the depmod.pl (perl is to bloated for most embedded setups) and or orig  
     modutils. The orig depmod is rather pointless to have to add to a firmware image  
     in when we already have a insmod/rmmod and friends.  
   Unify base64 handling.  
     There's base64 encoding and decoding going on in:  
       networking/wget.c:base64enc()  
       coreutils/uudecode.c:read_base64()  
       coreutils/uuencode.c:tbl_base64[]  
       networking/httpd.c:decodeBase64()  
     And probably elsewhere.  That needs to be unified into libbb functions.  
27    Do a SUSv3 audit    Do a SUSv3 audit
28      Look at the full Single Unix Specification version 3 (available online at      Look at the full Single Unix Specification version 3 (available online at
29      "http://www.opengroup.org/onlinepubs/009695399/nfindex.html") and      "http://www.opengroup.org/onlinepubs/009695399/nfindex.html") and
# Line 117  Rob Landley <rob@landley.net>: Line 99  Rob Landley <rob@landley.net>:
99      This one's open to everybody, but I'll wind up doing it...      This one's open to everybody, but I'll wind up doing it...
100    
101    
102  Bernhard Fischer <busybox@busybox.net> suggests to look at these:  Bernhard Reutner-Fischer <busybox@busybox.net> suggests to look at these:
103    New debug options:    New debug options:
104      -Wlarger-than-127      -Wlarger-than-127
105      Cleanup any big users      Cleanup any big users
# Line 130  Bernhard Fischer <busybox@busybox.net> s Line 112  Bernhard Fischer <busybox@busybox.net> s
112      make bb_common_bufsiz1 configurable, size wise.      make bb_common_bufsiz1 configurable, size wise.
113      make pipesize configurable, size wise.      make pipesize configurable, size wise.
114      Use bb_common_bufsiz1 throughout applets!      Use bb_common_bufsiz1 throughout applets!
   Add chrt applet. Please CC Bernhard if you suggest a patch.  
115    
116  As yet unclaimed:  As yet unclaimed:
117    
118  ----  ----
 find  
   doesn't understand (), lots of susv3 stuff.  
 ----  
119  diff  diff
120    Make sure we handle empty files properly:    Make sure we handle empty files properly:
121      From the patch man page:      From the patch man page:
# Line 163  man Line 141  man
141    (How doclifter might work into this is anybody's guess.)    (How doclifter might work into this is anybody's guess.)
142  ---  ---
143  ar  ar
144    Write support?    Write support!
145  ----  ---
146  stty / catv  stty / catv
147    stty's visible() function and catv's guts are identical. Merge them into    stty's visible() function and catv's guts are identical. Merge them into
148    an appropriate libbb function.    an appropriate libbb function.
149  ----  ---
150    struct suffix_mult
151      Several duplicate users of: grep -r "1024\*1024" * -B2 -A1
152      Merge to a single size_suffixes[] in libbb.
153      Users: head tail od_bloaty hexdump and (partially as it wouldn't hurt) svlogd
154    ---
155    tail
156      ./busybox tail -f foo.c~ TODO
157      should not print fmt=header_fmt for subsequent date >> TODO; i.e. only
158      fmt+ if another (not the current) file did change
159    
160  Architectural issues:  Architectural issues:
161    
# Line 291  Minor stuff: Line 278  Minor stuff:
278    use bb_perror_msg where appropriate: See    use bb_perror_msg where appropriate: See
279    egrep "[^_]perror"    egrep "[^_]perror"
280  ---  ---
   Remove superfluous fmt occurances: e.g.  
   fprintf(stderr, "%s: %s not found\n", "unalias", *argptr);  
   -> fprintf(stderr, "unalias: %s not found\n", *argptr);  
 ---  
281    possible code duplication ingroup() and is_a_group_member()    possible code duplication ingroup() and is_a_group_member()
282  ---  ---
283    Move __get_hz() to a better place and (re)use it in route.c, ash.c, msh.c    Move __get_hz() to a better place and (re)use it in route.c, ash.c, msh.c
284  ---  ---
285      See grep -r strtod
286      Alot of duplication that wants cleanup.
287    ---
288      in_ether duplicated in network/{interface,ifconfig}.c
289    ---
290    
291    
292  Code cleanup:  Code cleanup:
293    
294  Replace deprecated functions.  Replace deprecated functions.
295    
 bzero() -> memset()  
 ---  
 sigblock(), siggetmask(), sigsetmask(), sigmask() -> sigprocmask et al  
296  ---  ---
297  vdprintf() -> similar sized functionality  vdprintf() -> similar sized functionality
298  ---  ---

Legend:
Removed from v.815  
changed lines
  Added in v.816