diff options
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 189 |
1 files changed, 0 insertions, 189 deletions
@@ -1,189 +0,0 @@ -TODO list for every uClibc release: -------------------------------------------------- - *) Test cris, i386, mips, mipsel, sh, x86_64, arm, armeb, and powerpc - with the latest LTP testsuite. Fix any regressions and post LTP - testsuite results for each architecture on uclibc.org. - *) Audit header files. Remove prototypes for all functions that - are not supported -- especially needed for the libm headers. - *) Audit header files. When options are disabled, also disable - them in the include files as well by checking for the proper - define from include/bits/uClibc_config.h (pulled in from features.h) - -TODO list for the uClibc 1.0.0 release: -------------------------------------------------- - *) NPTL - support arches: (o todo; + done) - o alpha - + arm - o avr32 - o bfin - o cris - o e1 - o frv - o h8300 - o hppa - + i386 - o i960 - o ia64 - o m68k - o microblaze - + mips - o nios - o nios2 - + powerpc - + sh - + sh64 - o sparc - o v850 - o vax - o x86_64 - o xtensa - o ... - *) Go through SUSv4 - TOC: http://www.opengroup.org/onlinepubs/9699919799/xrat/contents.html - shell (busybox): http://www.opengroup.org/onlinepubs/9699919799/xrat/V4_xcu_chap01.html#tag_22_01_01 - interface: - http://www.opengroup.org/onlinepubs/9699919799/xrat/V4_xbd_chap13.html#tag_21_13_02 - http://www.opengroup.org/onlinepubs/9699919799/xrat/V4_xsh_chap01.html#tag_23_01_01 - *) glob / fnmatch tests fail - *) regex should pass AT&T conformance tests - *) Finish hiding uClibc internal symbols from our exported namespace - *) Add system for generating minimal system call asm wrappers that abuse - the C ABI to minimize amount of register/stack manipulation - *) Explicity add some sortof CONFIG_LINUX_2_2_ABI, CONFIG_LINUX_2_4_ABI - and CONFIG_LINUX_2_6_ABI type options, rather than having the abi - depend on the selected set of kernel headers. This will likely also - require that we provide a set of kernel headers (probably a derivitive - of Mazur's linux-libc-headers) that can supplies the 2.2, 2.4, and 2.6 - kernel abi. - *) Documentation updates: - *) Write a uClibc HOWTO document - *) Update README document - *) Update INSTALL document - *) Update docs/Glibc_vs_uClibc_Differences.txt document - and fully document all differences between the feature - set of uClibc and glibc. - *) Update docs/uClibc_vs_SuSv3.txt document - *) Update docs/threads.txt document - *) Write man pages for ldd and ldconfig utility binaries - *) Implement some mechanism (perhaps encoded in the .so name, - perhaps using an abi tag magically embedded into each object) - for flagging config options that break the ABI. Options - such as UCLIBC_HAS_SOFT_FLOAT, UCLIBC_HAS_THREADS, UCLIBC_HAS_LOCALE, - and perhaps others (finalize list) produce a lib with a differing - ABI. Make it so apps cannot use an ABI mis-matched uClibc. - This is most easily done using symbol versioning... - *) Implement the long double versions of math funcs on interrested - arches using wrappers on top of the double versions (size / precision - trade off where size clearly wins). - *) Make all small objects (>~50 bytes) into either inlines or - into a static library - *) Cleanup / rewrite sysconf.c. It should get some information - from ldso (such as HZ). Other stuff it currently just makes - up, which is obviously wrong. Also bits/uClibc_clk_tck.h - needs to be updated at the same time to get proper HZ values. - *) poll emulation using select() for old 2.0.x uClinux kernels - in libc/sysdeps/linux/common/poll.c fails some python self-tests. - Of course, modern systems using the actuall poll() syscall work fine. - *) Cleanup/scrub all the Makefile copyright junk - *) Fix dlopen, for both static and dynamic cases, and make it - fully comply with SuSv3 - *) check if sched_getcpu is only pulled in where it should be - *) remove HANDLE_OLDER_RLIMIT, NEW_GETRLIMIT (conditionalize on - ugetrlimit, it seems, else use the modern variant) - *) simplify exec*() in the light of execvpe (perhaps single internal - impl); USE_GNU for execvpe (and other GNU extensions, see psm). - *) Remove unused math complex hidden protos throughout - - -TODO list for AFTER the uClibc 1.0.0 release: -------------------------------------------------- - *) Add support for 64bit time (to deal withhttp://2038bug.com/): - date -s 011903142038 sets epoch to roll over in a few seconds (2^31) - *) Add support for Linux 2.6.x fast vsyscalls - *) Enable pristine source tree builds - *) Fix regex so it isn't so stinking big - *) Fix glob so it isn't so stinking big - *) run 'nm -D --size-sort -t d libuClibc-0.9.26.so' and work on the - biggest things (i.e. stuff at the end of the list) to make - them smaller. - *) Fix dlopen/dlsym/dlclose locking to more fine grained or use RCU - <more wishlist items here> - - -Arch specific TODO: -------------------------------------------------- - alpha: - ldso is not implemented - arm: - update crt1 code again for nommu (http://bugs.uclibc.org/view.php?id=538) - recruit jbowler and integrate thumb support - frv: - needs to be updated for the new ldso changes and unification of the - uClibc_main funcs (__uClibc_start_main doesnt exist anymore) - hppa: - errno.c test segfaults causes segfault in clone.S (seems to be in glibc too) - i386: - add support for fast system calls - ia64: - ldso is not implemented - m68k: - ldso lazy relocation doesnt work - sh64: - ldso is reasonably broken, presently requiring additional - coaxing/threatening. - sparc: - need a sigaction.c since common one doesnt work (signal tests) - ldso needs to be updated since it's totally broken atm - vax: - pthread support, linktime warning support (implies GAS patches), - general touchups, testing, ldso. - - ------------------------------------------------------------------------------ -Manuel's todo: - - 1) Little things that need fixing: - ---------------------------------- - a) Fix bug in *printf: outdigit precison bug - b) Check that gnu/bsd extension members tm_gmtoff and tm_zone in struct tm - are respected where they should be. - c) Implement the obstack printf funcs for glibc compat. - d) Implement glibc 'a' flag for scanf string conversions. - e) Allow use of the older non-table-based ctype functions when using - stub locale support. (smaller) - f) __drand48_iterate should be void - g) alphasort vs. versionsort. The former seems to be SVID, the latter GNU - i.e. reverse to what we currently do. The latter is unimplemented. - h) ponder removal/configs to turn off: __xpg_*, bsd_signal, dysize, - getw/putw, utimes, - - 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? - - 4) Misc: - -------- - a) Port uClibc to other OSs (including elks), or even bare metal (libgloss). - b) Write a space-efficient gettext substitute, to avoid storing large amounts - of redundant data. - - |