TODO 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. Erik's TODO list for the next release:
  2. 1) Reentrancy auditing
  3. 2) Better configuration system (CML1 + kbuild + menuconfig)
  4. 3) When fixing the config system, ensure that _every_ option
  5. that is enabled or disabled is listed in uClibc_config.h
  6. 4) When options are disabled, also disable them in the
  7. include files as well.
  8. 5) Make all small objects (>~50 bytes) into either inlines or
  9. into a static library
  10. 6) Rework code that fails POSIX conformance tests
  11. 7) Fix the bugs in libcrypt so it passes conformance tests
  12. 8) Split the tests up into two parts -- a compile phase, and
  13. a separate shell-script-driven test phase, allowing the
  14. tests to be run when cross compiling....
  15. Other random things:
  16. *) Add struct _res support to libc/inet/resolv.c. Right now,
  17. struct _res, and res_init do nothing. The other res_*
  18. functions are not yet implemented. So fix that.
  19. *) Fix uClibc timezone support so date(1) will show a real
  20. timezone, instead of just '???'
  21. *) Rework code that fails POSIX conformance tests
  22. *) Rework pwd/grp for standards compliance (and integrate
  23. Jeff Garzik's key-value reading code for pwd/grp, and
  24. perhaps for /etc/hosts and friends as well)
  25. *) Document all differences between the feature set of uClibc
  26. and glibc.
  27. *) Add missing syscall() function to allow arbitraty syscalls
  28. to be made.
  29. -----------------------------------------------------------------------------
  30. Manuel's todo:
  31. Implement wide unformatted i/o. (current project)
  32. Implement wide formatted output (printf).
  33. Update the strto* funcs to my current versions to remove the dependency
  34. on the long long support funcs from libgcc.a.
  35. Update some other stdlib and (possibly) string funcs.
  36. Update the ctype code to my latest stuff... smaller plus supports new isblank()
  37. for locales while still keeping byte table entries.
  38. Reimplement scanf for narrow and wide streams.
  39. Improve customization of the new stdio code.
  40. Reimplement _dtostr to correct its deficiencies and hopefully reduce its size.
  41. Revisit the unified syscall stuff which has been broken for a while now.
  42. Older stuff...
  43. Move the target-specific sysconf.c generator to extra (as it needs to be
  44. run on the target) and fix libc/unistd/Makefile.
  45. Add a usage message to the gcc wrapper.
  46. Make errno and endptr handling the default in the strto* functions and
  47. document how to turn those off to save space.
  48. -----------------------------------------------------------------------------
  49. ds's list:
  50. Search for string literals that are not in the .rodata section. (Varies
  51. by architecture and gcc version.)
  52. man pages for binaries
  53. add obstack stuff for gettext (?)
  54. check compiling without FP support -- are FP instructions still generated?
  55. Needs a uClibc_config.h entry dependent on HAS_FLOATING_POINT.
  56. Why does ld.so search /usr/powerpc-uclibc/lib before LD_LIBRARY_PATH?
  57. -----------------------------------------------------------------------------
  58. Any takers?
  59. *) Fix regex so it isn't so stinking big
  60. *) Fix glob so it isn't so stinking big
  61. *) Documentation
  62. - List all differences between the feature set of uClibc and glibc.
  63. *) run 'nm -D --size-sort -t d libuClibc-0.9.5.so' and work on the biggest things
  64. (i.e. stuff at the end of the list) to make them smaller.
  65. *) make inb/outb work for all arches. This is complete for i386 and arm.
  66. Other archs like powerpc, still need fixing.
  67. -----------------------------------------------------------------------------
  68. PORTING
  69. -------
  70. bits/dirent.h currently differs from the glibc version (d_type unsupported)