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:
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
-----------------------------------------------------------------------------
-PORTING
--------
-
-bits/dirent.h currently differs from the glibc version (d_type unsupported)