OSDN Git Service

Add a new *scanf implementation, includeing the *wscanf functions.
[uclinux-h8/uClibc.git] / TODO
diff --git a/TODO b/TODO
index 50b3d9c..0737971 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,64 +1,67 @@
 Erik's TODO list for the next release:
 
-    1) Reentrancy auditing
-    2) Better configuration system (CML1 + kbuild + menuconfig)
-    3) When fixing the config system, ensure that _every_ option 
-       that is enabled or disabled is listed in uClibc_config.h
-    4) When options are disabled, also disable them in the
+    *) Implement getgrgid_r and getgrnam_r, per SuSv3 
+    *) When options are disabled, also disable them in the
        include files as well.
-    5) Make all small objects (>~50 bytes) into either inlines or
+    *) Make all configured out symbols optionally add a linker warning saying
+       "Hey!  You are trying to use a function that you have configured out.  
+       If you really want to use this function, enable CONFIG_FOO and rebuild
+       uClibc".
+    *) Make all small objects (>~50 bytes) into either inlines or
        into a static library
-    6) Rework code that fails POSIX conformance tests
-    7) Fix the bugs in libcrypt so it passes conformance tests  
-    8) Split the tests up into two parts -- a compile phase, and
-       a separate shell-script-driven test phase, allowing the
-       tests to be run when cross compiling....
-
-Other random things:
-
-    *) Add struct _res support to libc/inet/resolv.c.  Right now, 
-       struct _res, and res_init do nothing.  The other res_* 
-       functions are not yet implemented.  So fix that.
-    *) Fix uClibc timezone support so date(1) will show a real
-       timezone, instead of just '???'
-    *) Rework code that fails POSIX conformance tests
-    *) Rework pwd/grp for standards compliance (and integrate 
-       Jeff Garzik's key-value reading code for pwd/grp, and
-       perhaps for /etc/hosts and friends as well)
     *) Document all differences between the feature set of uClibc 
        and glibc.
-    *) Add missing syscall() function to allow arbitraty syscalls 
-       to be made. 
-
-
+    *) Fix regex so it isn't so stinking big
+    *) Fix glob so it isn't so stinking big
+    *)  Fix the dlopen() bug with handling of symbols that are already
+       resolved.  Seems if it is already resolved it ignores them rather than
+       resolving the new symbol and overriding.
+    *) Adapt uClibc to use Linux 2.5.x pthreads
 
 -----------------------------------------------------------------------------
 Manuel's todo:
 
-Wrap up the current work on locale issues, finish the mb<->wc functions.
-    
-Implement wide unformatted i/o.  (current project)
-
-Implement wide formatted output (printf).
-
-Reimplement scanf for narrow and wide streams.
-
-Improve customization of the new stdio code.
-
-Reimplement _dtostr to correct its deficiencies and hopefully reduce its size.
-
-Revisit the unified syscall stuff which has been broken for a while now.
-
-Older stuff...
+I'm currently working on completing the wide char and locale support.
+
+  1) Little things that need fixing:
+  ----------------------------------
+  a) Fix the ctype support for 8-bit locales.
+  b) Fix bug in *printf: outdigit precison bug
+  c) Check that gnu/bsd extension members tm_gmtoff and tm_zone in struct tm
+     are respected where they should be.
+  d) Implement the obstack printf funcs for glibc compat.
+  e) Implement glibc 'a' flag for scanf string conversions.
+  f) Allow use of the older non-table-based ctype functions when using
+     stub locale support. (smaller)
+  
+  2) Additional str{f|p}time issues.
+  ----------------------------------
+  a) Spacing issue wrt strptime.
+  b) Support locale specific alternate digits.  (data is in place)
+  c) Support locale era in year designations.   (data is in place)
+  d) Deal with mb format string issues in strftime.
+  e) Implement wcsftime.
+  
+  3) Other locale issues (my implementation):
+  -------------------------------------------
+  a) Do a little more clean up of ctype and wctype.
+  b) Rework of the locale data organization to make using locales reasonable
+     when staticly linking.  (mmap)
+  c) Rewrite the locale data generation tools to process the text specifications
+     rather than relying on glibc.
+  d) Adapt regex lib to use my collation data and add the necessary collating
+     item tables to support SUSv3 required features.
+  e) transliteration of unsupported wchars in 8-bit locales (like glibc).
+  f) Support ISO/IEC 14652 draft locale extensions (LC_PAPER, etc).
+  g) Implement strfrom.
+  h) Shift-state codeset locale support?
+
+
+Other stuff:
 
 Move the target-specific sysconf.c generator to extra (as it needs to be
        run on the target) and fix libc/unistd/Makefile.
 
-Add a usage message to the gcc wrapper.
-
-Make errno and endptr handling the default in the strto* functions and
-       document how to turn those off to save space.
-
 -----------------------------------------------------------------------------
 ds's list:
 
@@ -78,8 +81,6 @@ Why does ld.so search /usr/powerpc-uclibc/lib before LD_LIBRARY_PATH?
 
 Any takers?
 
-*) Fix regex so it isn't so stinking big
-*) Fix glob so it isn't so stinking big
 *) Documentation
        - List all differences between the feature set of uClibc and glibc.
 *) run 'nm -D --size-sort -t d libuClibc-0.9.5.so' and work on the biggest things 
@@ -89,9 +90,5 @@ Any takers?
 
 -----------------------------------------------------------------------------
 
-PORTING
--------
-
-bits/dirent.h currently differs from the glibc version (d_type unsupported)