Changelog 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804
  1. 0.9.31 not yet released
  2. Upgrade notices from previous versions.
  3. o On x86_64 the format of /var/run/utmp changed compared to previous
  4. versions. To retain compatibility with glibc we now define
  5. __WORDSIZE_COMPAT32. If you are certain that you will never use
  6. glibc nor run in i386 mode on your x86_64 installation, you can
  7. remove this definition from wordsize.h.
  8. Otherwise you have to delete /var/run/utmp on x86_64 hosts when
  9. upgrading to 0.9.31
  10. o The SHARED_LIB_LOADER_PREFIX was renamed to a single path
  11. component called MULTILIB_DIR and defaults to 'lib'.
  12. 0.9.27 12 January 2005
  13. This has been a long time in the making... Release highlights:
  14. o New stdio implementation
  15. o New optimized string functions
  16. o Major improvements to the shared lib loader
  17. o Shared libraries work properly on powerpc
  18. o Debugging works on mips
  19. o New architectures: frv, nios, nios2, bfin
  20. o Linux 2.6.x kernel support
  21. o Lots and lots of bug fixes
  22. This release is NOT binary compatible with uClibc 0.9.26 or any earlier
  23. release, so be prepared to recompile your software if you are still using
  24. an old version of uClibc.
  25. -Erik
  26. 0.9.26 3 January 2004
  27. This simply adds a fix for a pthread bug that was noticed a few hours
  28. after the previous release. Otherwise identical to 0.9.25.
  29. This release remains binary compatible with uClibc 0.9.21-25 as long as
  30. you take care to avoid any configuraton changes that will break things.
  31. We _were_ planning to break binary compatibilty in this release, but
  32. decided to hold those changes so we could push out a bugfix release.
  33. We _will_ break binary compatibilty in the upcoming 0.9.27 release to
  34. implement a few things we have been postponing. That should hopefully be
  35. the last ABI change before we freeze the ABI for the upcoming 1.0.x
  36. stable uClibc series.
  37. Release highlights:
  38. o A trivial fix for a pthread bug
  39. o Nothing else
  40. -Erik
  41. 0.9.25 3 January 2004
  42. See Changelog.full for the complete list of who did what.
  43. Note:
  44. This release remains binary compatible with uClibc 0.9.21-24 as long as
  45. you take care to avoid any configuraton changes that will break things.
  46. We _were_ planning to break binary compatibilty in this release, but
  47. decided to hold those changes so we could push out a bugfix release.
  48. We _will_ break binary compatibilty in the upcoming 0.9.26 release to
  49. implement a few things we have been postponing. That should hopefully be
  50. the last ABI change before we freeze the ABI for the upcoming 1.0.x
  51. stable uClibc series.
  52. Release highlights:
  53. o Fixed a ton of problems found using the LTP and NIST test suites.
  54. The few remaining test failures are obscure corner cases, such as
  55. a few functions that fail (correctly) with incorrect errno values.
  56. o Fixed a longstanding pthreads bug -- amoung other things, you no
  57. longer need to explicitly add -lpthread for perl to work.
  58. o Added some sh optimized string functions
  59. o Added sh64 shared library support
  60. o The default malloc implementation has been replaced, and will
  61. now actually free memory when told to do so.
  62. o Both popen() and exec*() now behave themselves per SuSv3
  63. o Better 2.6.x kernel header support
  64. o Added support for Position Independent Executables (PIE) on x86
  65. o Lots of other minor cleanups
  66. -Erik
  67. 0.9.24 15 December 2003
  68. See Changelog.full for the complete list of who did what.
  69. Note:
  70. This release remains binary compatible with uClibc 0.9.21-23 as
  71. long as you take care to avoid any configuraton changes that will
  72. break things.
  73. We currently plan to break binary compatibilty in the upcoming 0.9.25 to
  74. implement a few things we have been postponing, which will hopefully be
  75. the last change....
  76. Release highlights:
  77. o Fixed several silly configuration problems
  78. o Added arm optimized string functions
  79. o Lots of minor cleanups
  80. -Erik
  81. 0.9.23 13 November 2003
  82. See Changelog.full for the complete list of who did what.
  83. Note:
  84. This release is binary compatible with uClibc 0.9.21 and 0.9.22 as
  85. long as you take care to avoid any configuraton changes that will
  86. break things. Enabling or disabling things like soft-float,
  87. locale, wide wchar support, or changing cpu type are all good
  88. examples of things that will break binary compatibility.
  89. Release highlights:
  90. o Fixed several silly configuration problems that were
  91. present in the 0.9.22 release.
  92. o Fixed compilation problem with soft-float support on
  93. several architectures.
  94. o Lots of cleanup work on the powepc shared lib loader
  95. thanks to Joakim Tjernlund.
  96. o Updated the debian packaging for use in a standalone uClibc
  97. system, rather than being a subordinate library under a
  98. glibc based system.
  99. -Erik
  100. 0.9.22 8 November 2003
  101. See Changelog.full for the complete list of who did what.
  102. Note:
  103. This release is binary compatible with the 0.9.21 release
  104. if you take care to avoid any configuraton changes that
  105. might break things for you (i.e. enabling or disabling things
  106. like soft-float, locale, wide wchar support, or changing cpu
  107. type are all good examples of binary incompatible config options).
  108. Release highlights:
  109. o Added e1, microblaze, and sh64 architectures.
  110. o Much improved soft-float support
  111. o Rewrote the passwd and group handing functions
  112. and implemented all SuSv3 required reentrant
  113. versions.
  114. o Reworked and updated the Config system. You now
  115. get to select your target architecture with the
  116. config system.
  117. o Fixed pthreads for mmuless m68k systems
  118. o Added some x86 optimized string functions.
  119. o Lots and lots of bugs fixed.
  120. -Erik
  121. 0.9.21 9 September 2003
  122. See Changelog.full for the complete list of who did what.
  123. Note:
  124. This release is not binary compatible with earlier releases.
  125. Sorry about that. We have never promised to provide binary
  126. compatibility until we hit version 1.0, and even then, if
  127. you change your configuration.
  128. Release highlights:
  129. o uClibc now has full ANSI/ISO C99 locale support (except
  130. for wcsftime() and collating items in regex).
  131. o Added support for using pre-generated locale data, making
  132. it easy for mere mortals to use uClibc w/locale support.
  133. o Lots of new tuning options added to trade size
  134. for features, allowing for smaller static binaries.
  135. o The "dlopen()'ing libraries that depend on libraries"
  136. problem was fixed.
  137. o A new scanf implementation. Well tested, but
  138. brand new so watch for obscure bugs...
  139. o Reworked and updated the Config system, adding several
  140. nice new features which we now use.
  141. o Lots and lots of sundry bug fixes and cleanups.
  142. -Erik
  143. 0.9.20 30 June 2003
  144. See Changelog.full for the complete list of who did what.
  145. Note:
  146. This release remains binary compatible with 0.9.18 and 0.9.19.
  147. Release highlights:
  148. o Some ldd, profiling, and gcc wrapper updates
  149. o Updated to support and compile with gcc 3.3
  150. o Several needed mips updates
  151. o Building under cygwin should now work...
  152. o Prevent non-PIC code getting into PIC libs
  153. o Added mmap64 support
  154. o mmu-less systems now get a 16k default thread stack size
  155. which is much more sane than the old 2 MB default...
  156. o Implemented syscall() for powerpc
  157. o Optionally struct tm extension support
  158. o Lots of other sundry little fixes and cleanups.
  159. o Prevent buffer overflows in the passwd and group functions.
  160. -Erik
  161. 0.9.19 3 March 2003
  162. See Changelog.full for the complete list of who did what.
  163. Note:
  164. This release remains binary compatible with 0.9.18 (except
  165. for mips, but then mips was unusable in stock 0.9.18 anyways).
  166. Release highlights:
  167. Stefan Allius
  168. o Some Makefile and warning fixes
  169. David Airlie
  170. o Fixed gcc wrapper handling of ctor/dtor stuff when used in
  171. with and w/o the nostdinc and nostdlib options
  172. Erik Andersen
  173. o Fixed a number of system call kernel type/user type translation
  174. problems that scrambled a handful of system calls.
  175. o Fixup powerpc syscalls to eliminate warnings with gcc-3.2
  176. o Fixed several ioctl special cases for powerpc
  177. o Checked in forgotten mips kernel_types.h changes
  178. o Fixed mips shared library loader bug that caused segfaults
  179. o Major update to the pthreads library. Should improve performance.
  180. o Fixed uClibc's shared library loader so we can properly debug
  181. applications using pthreads (must use gdb 5.3 or newer which
  182. was compiled using uClibc).
  183. o Made uClibc's ldd act just the glibc provided one (i.e. relying
  184. on the shared lib loader to do the work) when it is possible to
  185. doi so, and only rummage about the ELF headers when we have no
  186. other choice (such as when using 'ldd' on cross compiled stuff).
  187. Miles Bader
  188. o header file updates for v850 architecture
  189. o Fixed v850 crt0.S __uClibc_main argument stack space
  190. Jeffrey Damick
  191. o Fixed res_init() so it properly reloads /etc/resolv.conf
  192. Vadim Lebedev
  193. o Fixed ARM setjmp when floating point was disabled
  194. David McCullough
  195. o Removed debug (-g) when building crti.o and crtn.o, as
  196. debug would mess up the build for SH4 and probably others.
  197. o Fixed SH setjmp when floating point was enabled
  198. -Erik
  199. 0.9.18 12 February 2003
  200. See Changelog.full for the complete list of who did what.
  201. Note:
  202. Once again, this release is _NOT_ binary compatible with earlier
  203. releases. I _think this will be the last time (with the possible
  204. exception of some future changes to our locale support...)
  205. Release highlights:
  206. Stefan Allius
  207. o fixed a compile problem when large file support was disabled
  208. o fixed dlib_pic.o to compile with proper flags
  209. o fixed a shared lib loader compile warning
  210. o Made adding libgcc functions to uClibc optional
  211. Erik Andersen
  212. o Fixed scandir64 to not free the wrong pieces of memory
  213. which caused segfaults
  214. o Fixed mismatches between kernel and libc dirent structures
  215. o Fixed mismatches between the size of uClibc's struct dirent
  216. and struct dirent64 so that when _FILE_OFFSET_BITS=64 we
  217. do not lose part of the filename
  218. o Fixed getdents64.c so the build will not break when compiling
  219. vs a 2.0.x Linux kernel when UCLIBC_HAS_LFS is enabled
  220. o Create stub crti.o and crtn.o files when UCLIBC_CTOR_DTOR is disabled
  221. o Fixed licenses for a few files that erroneously were listed as GPL
  222. but were really LGPL after discussing with authors
  223. o sigaction for x86 had an extra and unwanted sigaction syscall
  224. o Fixed debugging of arm binaries by adding a .note.ABI-tag section
  225. Miles Bader
  226. o header file updates for v850 architecture
  227. o Fixed v850 clone syscall
  228. Christian Krause
  229. o Fixed pthread_cond_timedwait to properly uses rt singals
  230. when available
  231. Christophe Massiot
  232. o Added mips _flush_cache syscall
  233. David McCullough
  234. o Added m68k brk syscall
  235. Marshall M. Midden
  236. o Fixed pipe implementation for mips
  237. -Erik
  238. 0.9.17 25 January 2003
  239. See Changelog.full for the complete list of who did what.
  240. Note:
  241. I have always reserved the right to make binary incompatible changes as
  242. needed prior to the "1.0" release. This release is a good example of
  243. that. A few bugs turned up that needed to be fixed and the only good way
  244. to fix them was to change some fundamental data structure sizes. So I did
  245. just that. As a result, this release is _NOT_ binary compatible with
  246. earlier releases -- you will need to recompile your applications.
  247. Release highlights:
  248. Stefan Allius
  249. o fixed a number of shared library loader bugs
  250. o setjmp, longjmp, clone, and vfork cleanups for the SH architecture
  251. o Don't build the config system with ncurses unless asked to
  252. Tobias Anderberg
  253. o cris architecture updates
  254. Erik Andersen
  255. o Changed 'struct stat' and 'struct stat64' so they use types that
  256. are consistant with use elsewhere in the library. Without this,
  257. subtle bugs would occur due to comparing signed and unsigned
  258. types (for example, GNU tar wouldn't work)
  259. o Fixed dlopen so it works with staticly linked apps
  260. o Fixed sigaction on arm architecture so sa_restorer works properly
  261. o Fixed sigaction on x86 architecture for (fixed debugging threads)
  262. o Fixed a wide char related segfault in the regular expression code
  263. o Powerpc pread and pwrite are now implemented correctly
  264. o Powerpc syscall mechanism re-implemented
  265. o Sparc architecture and syscall mechanism fixed up so things compile
  266. o usershell reimplemented
  267. o Fixed global destructors for staticly linked applications
  268. o Added dynamic atexit support (needed for full C++ ctor/dtor support)
  269. o The ldd utility now acts more like the GNU utility
  270. o Added a stub libnsl library to make stupid configure scripts bahave
  271. o Always build crt1.o as well as crt0.o to minimize the need to mess
  272. with the compiler
  273. o Rewrote powerpc crt0.S to properly handle ctors/dtors
  274. o Removed unimplemented and legacy stuff from our header files to
  275. make configure behave better
  276. o Made the lib loader also support libs in /usr/X11R6/lib by default
  277. o Config system updates
  278. o networking function updates
  279. o Large file support updates
  280. o Lots of other little bug fixes and cleanups
  281. Nick Fedchik
  282. o Support ether_aton
  283. Nathan Field
  284. o Fixed pthread_mutex_lock and pthread_mutex_unlock so they
  285. actually work as advertised on mips
  286. o Fixed several nasty pthread bugs fixing debugging
  287. Brett Hunt
  288. o Fixed potential segfaults during 'make menuconfig'
  289. Jay Kulpinski
  290. o Fixed a subtle problem in the DNS resolver that prevented
  291. uncompressed DNS lookup responses from working
  292. David McCullough
  293. o Fixed pclose error handling
  294. David Meggy
  295. o fixed the problem where arm binaries would crash on start
  296. that Erik stupidly caused right before the last release.
  297. Manuel Novoa III
  298. o Major locale support update!
  299. o Allow people to use pregenerated locale data instead of generating
  300. approx 40Mb of glibc locales to get the 300+ locales currently
  301. supported.
  302. o locale dependent collation support
  303. o Fixed locale support tools to work when cross-compiling
  304. o Added the *wprintf functions
  305. o Added the wcsto{inttype} functions
  306. o Added iconv() and a mini iconv utility
  307. o Added hsearch and hsearch_r
  308. o Fixed a silly bug allowing wprintf %s to work correctly.
  309. o Fixed fdopen when used with "a" (append).
  310. o Fixed stdio file position handing to be sure fell() always
  311. gives correct results
  312. Luc Van Oostenryck
  313. o Fixed a buffer overflow in getlogin_r
  314. Yoshinori Sato
  315. o Hitachi h8300 architecture update
  316. Ronald Wahl
  317. o Powerpc shared library relocation fixes
  318. -Erik
  319. 0.9.16 8 November 2002
  320. See Changelog.full for the complete list of who did what.
  321. Release highlights:
  322. o CRIS architecture and shared library support from Tobias Anderberg
  323. o New uClibc configuration system
  324. o shared library global constructors and destructors initialization
  325. ordering fixed by Stefan Allius
  326. o More SuperH architecture fixes from Stefan Allius
  327. o uClibc now compiles with newer versions of gcc (i.e. RedHat 8.0)
  328. o uClibc no longer requires perl to compile
  329. o mips dlopen was fixed by Steven J. Hill
  330. o pty and tty handling fixes
  331. o Manuel Novoa added support for a new /etc/TZ file for globally
  332. setting the system timezone.
  333. o Manuel also fixed up a number of remaining wide char issues.
  334. o Lots of other little bug fixes and cleanups
  335. -Erik
  336. 0.9.15 27 August 2002
  337. This is a minor bugfix release.
  338. See Changelog.full for the complete list of who did what.
  339. Release highlights:
  340. o Eliminated the HAS_LONG_LONG option. gcc always supports
  341. long long, and the option never excluded all long long anyways.
  342. o ctype.h no longer allows multiple argument evaluation in
  343. compliance with ANSI/ISO C99
  344. o Obscure printf fixes -- one involving %o and one involving %f.
  345. o Bugfixes for locking and reentrance in password/group functions
  346. o Directly use kernel types for most items, eliminating needless
  347. translation and fixing several bugs.
  348. o Directly use kernel struct stat -- no more translating
  349. o More superH (sh) architecture merging from Stefan Allius
  350. o Errno values and strerror are now correct on alpha, sparc, and mips
  351. o Fixed an obscure bug with fclose when custom streams are enabled.
  352. o Lots of other little bug fixes and cleanups
  353. -Erik
  354. 0.9.14 12 August 2002
  355. This is a minor bugfix release.
  356. See Changelog.full for the complete list of who did what.
  357. Release highlights:
  358. o Fix a compile error when RPC and Pthread support
  359. were both enabled.
  360. o Eliminate duplicate define warnings in wstring.c.
  361. o Fix potentially broken preprocessor comparisons.
  362. o Erik was an idiot and broke thread locking in exit(),
  363. atexit() and friends. Fix that.
  364. o Fix the gcc wrapper to use crtbeginS.o and crtendS.o when
  365. compiling PIC code (crtbegin.o and crtend.o) otherwise.
  366. -Erik
  367. 0.9.13 9 August 2002
  368. Security Fixes
  369. o There was an off-by-one buffer overflow in the group
  370. handling code, fix thanks to Joseph Chiu.
  371. o There was an integer overflow bug in calloc, per
  372. http://online.securityfocus.com/bid/5398
  373. o There was an integer overflow bug in the xdr_array
  374. RPC code, per http://online.securityfocus.com/bid/5356
  375. See Changelog.full for the complete list of who did what.
  376. Release highlights:
  377. o Add full shared library support for Hitachi SuperH (sh)
  378. thanks to Stefan Allius and Edie C. Dost
  379. o Lots of reentrance cleanups (we should now be fully
  380. reentrant when compiled with pthread support).
  381. o Miles Bader implemented a new mmap based malloc which is much
  382. smarter than the old "malloc-simple", and actually works, unlike
  383. the old "malloc". This is now the default for mmu-less systems
  384. and should greatly help reduce memory fragmentation and wastage.
  385. o Reworked syscall handling for i386 and ARM, smaller and cleaner.
  386. o Support for the syscall() function on i386 and ARM
  387. o The uClibc g++ wrapper now automagically adds the proper include
  388. search path and and libraries.
  389. o Lots of shared library loader updates
  390. o dlopen'd shred libraries not properly run destructors
  391. when ctor/dtor support is enabled
  392. o pread/pwrite/pread64/pwrite64 now all work as expected
  393. o Lots and lots of other bug fixes and cleanups.
  394. -Erik
  395. 0.9.12 20 June 2002
  396. See Changelog.full for the complete list of who did what.
  397. Release highlights:
  398. o Add full shared library support for mips (big and little
  399. endian), thanks to a lot of hard work from Steven J. Hill
  400. o i960 architecture support, thanks to Martin Proulx
  401. o An initial alpha port (works, but needs some cleanup)
  402. o Fixes shared library support for powerpc
  403. o Fixes for mmu-less systems
  404. o Much improved thread locking and reentrance.
  405. o More gcc wrapper updates. XFree86 really does link
  406. this time around. It still didn't last time.
  407. o Libcrypt now passes conformance tests
  408. o Nearly complete locale supporti thanks to a lot
  409. of hard work by Manuel Novoa III. This stuff is
  410. _way_ smaller than glibc's
  411. o Completely new time handling functions also by Manuel
  412. o Lots of other bug fixes and cleanups.
  413. -Erik
  414. Erik Andersen:
  415. 0.9.11 10 April 2002
  416. Release highlights:
  417. o Lots of bug fixes
  418. o Much better large file support
  419. o Several gcc wrapper bug fixes, so things like iproute2 and
  420. XFree86 should now link properly.
  421. o Fixes a stdio thread locking bug that could cause random
  422. deadlocks on s*printf calls when threading was enabled.
  423. Erik Andersen:
  424. o Added a generic implementation of truncate64.c and ftruncate64.c
  425. o Added missing creat64, glob64, mkstemp64, getrlimit64, setrlimit64
  426. o Removed internal erroneous use of __USE_FILE_OFFSET64
  427. o Made libpthread compile on sparc and powerpc
  428. o Made libpthread soname and symlinks match the other libraries.
  429. o Added finite() to the C89 math lib, since some math functions use it.
  430. o Added missing function pointer to error.c (some apps wanted it)
  431. o Fixed initfini build for arches where gcc tries to be sneaky
  432. o Fixed m68k/bits/setjmp.h which I has broken in the last release.
  433. o Fixed a buffer overflow in the dynamic library loader
  434. o Fixed a stdio thread locking bug that could cause random
  435. deadlocks on s*printf calls when threading was enabled.
  436. o Implemented sqrtf(), needed for libstdc++ on arm
  437. Miles Bader:
  438. o Make clean fixes to not blindly wipe all symlinks
  439. o Re-enabled clnt_perror()
  440. o Re-implemented swab()
  441. Dwayne Fontenot:
  442. o Many updates to the uClibc Working Application List
  443. Steven J. Hill:
  444. o Many updates to the mips dynamic loader. Not yet working but
  445. getting very close now.
  446. o Fixed locking bug in getttyent()
  447. o Support libpthread on mips
  448. Richard June:
  449. o Fixed several bugs in utmp code (pututline was only writing the
  450. first sizeof-a-pointer bytes to the utmpfile).
  451. o setutent() was only opening utmp readonly.
  452. m4@brecis.COM:
  453. o Fixed a silly typing problem with the getuid syscall.
  454. Manuel Novoa III:
  455. o Fixed stdio FILE read/write auto-transition bugs.
  456. o Better stdio errno handling
  457. o Changed setvbuf() to more closely match glibc's behavior
  458. o Fixed getpass() to not echo passwords to the console
  459. o Fixed locale ISblank flag.
  460. o Fixed an arg promotion handling bug in _do_one_spec for %c reported
  461. by Ilguiz Latypov.
  462. Kensuke Otake:
  463. o Implemented swab()
  464. Yoshinori Sato:
  465. o Fixed h8300 architecture support for pthreads and changes to
  466. the include files
  467. David Schleef:
  468. o Made powerpc assembly code PIC-compatible
  469. o Removed powerpc R_PPC_REL24 handling, since it was deceptively useless.
  470. John Traill:
  471. o Several types on powerpc, such as dev_t, are different than on other
  472. architectures. John spotted this, which fixed a _ton_ of problems since
  473. anything calling stat() was previously broken.
  474. Jim Treadway:
  475. o Eliminated use of alarm() from the DNS resolver by converting
  476. it to use select instead (much cleaner).
  477. 0.9.10 21 March 2002
  478. Major new features:
  479. o pthreads support (derived from glibc 2.1.3's linuxthreads library)
  480. by Stefan Soucek and Erik Andersen
  481. o pthreads support for MMU-less systems, by Stefan Soucek
  482. o Complete rewrite of all stdio functions for standards compliance,
  483. small size, pthreads support, wide/narrow stream support, large
  484. file support, unbuffered support, etc, etc by Manuel Novoa III
  485. o gcc wrapper reworked by Erik Andersen. Now operated correctly in
  486. all known cases, and now wraps g++ as well for C++ support.
  487. o constructor/destructor support, for C++ by Erik Andersen.
  488. o Eliminated duplicate include/bits header files, by Erik Andersen.
  489. Now all common include/bits headers are grouped together.
  490. Erik Andersen:
  491. o Lots of changes and improvements to the shared library loader
  492. o Cleaned up a piles of bugs
  493. o Fixed a segfault when scandir was called on empty directories.
  494. o Several syscalls added: pread/pwrite
  495. o Makefile/build system cleanups
  496. o Sighandling fixes
  497. o pthreads support (with Stefan Soucek)
  498. o Added ldexp to the C89 math library, per POSIX
  499. o fclose() EINTR handling is now correct per IEEE Std 1003.1-2001
  500. o Support isblank()
  501. o Reworked libcrypt to avoid leaking private symbols into the namespace
  502. o Added strtof(), strtold(), updwtmp(), strptime()
  503. o Fix ldso build for older arm cross compilers
  504. Miles Bader:
  505. o atexit cleanups
  506. o fixed gcc wrapper handling of -M* options
  507. o Fixed truncate64/ftruncate64 to restrict them to 64-bit systems,
  508. since we can't be sure that the _syscall macros can cope with 64
  509. bit args on 32 bit arches.
  510. o Large File support on the v850
  511. o Fixed v850 headers after Erik messed them up
  512. o Eliminate include/features.h namespace pollution
  513. M. R. Brown:
  514. o Fixed pthread support for SH, and fixed SH vfork as well
  515. o Fixed SH headers after Erik messed them up
  516. Geoffrey Espin:
  517. o Mips architecture cleanups. Now works perfectly
  518. with busybox, vi, ash, etc...
  519. o Merged in the random number support (rand, srand, etc) from glibc.
  520. Thomas Fritzsche:
  521. o Fixes DNS resolver bug from 0.9.9
  522. Steven J. Hill:
  523. o Fixed build to support both mips and mipsel
  524. o Beginnings of a mips ldso port
  525. Andrew Ip:
  526. o Support for gnu error() functions
  527. David McCullough:
  528. o Coldfire platform updates: clone, setjmp
  529. o Fixed simple malloc to work on systems with an MMU
  530. Manuel Novoa III:
  531. o Rewrote all stdio functions for standards compliance, small size,
  532. pthreads support, wide/narrow stream support, large file support,
  533. unbuffered support, etc, etc, etc.
  534. o Rewrote the various string to int functions to be smaller, more
  535. standards compilant, and reduce dependance on libgcc.a.
  536. Yoshinori Sato:
  537. o ptrace for the Hitachi h8300 fix
  538. David Schleef:
  539. o Debian packaging updates
  540. o Check for proper 16-byte aliged stack pointer on powerpc
  541. Stefan Soucek:
  542. o pthreads support for MMU-less systems
  543. o pthreads support (with Erik Andersen)
  544. Brian Stafford:
  545. o Rewrote strcasecmp() per SUSv2.
  546. Bart Visscher:
  547. o Added missing IPV6 support and reentrant networking function
  548. additions so iptables now runs with IPV6 support.
  549. 0.9.9 February 4, 2002
  550. Erik Andersen:
  551. o A bunch of doc updates. Major update to the working
  552. apps list.
  553. o Added a configurator script (extra/Configs/uClibc_config_fix.pl)
  554. which can simplify configuring uClibc.
  555. o Fixed setjmp/longjmp on x86,arm,powerpc,mips,and sparc.
  556. Hitting ^C in ash kills client apps now, not ash.
  557. o Reworked signal handling code so it now passes POSIX
  558. conformance tests.
  559. o Fixed sleep and usleep to work correctly when
  560. interrupted by signals.
  561. o Made getopt behave the same when staticly linking
  562. as when dynamicly linking. It was using different
  563. implementations depending on how apps were linked.
  564. o Added missing inttypes.h header file
  565. o Eliminate all C++ style comments from header files
  566. o Support statvfs and statfs
  567. o Support getmntent_r
  568. o Scandir and scandir64 were calling malloc without
  569. checking for ENOMEM
  570. o Fixed stpcpy function declaration
  571. o Many large file support improvements.
  572. o Fixed fcntl to work when DOLFS is enabled
  573. o Fixed termios code to do the Right Thing(tm)
  574. o Allow regex to be excluded at compile time
  575. o Implemented mempcpy
  576. o Build ldd and readelf for the target system and for the
  577. host system
  578. o Fix several cases where get-needed-libgcc-objects.sh
  579. could fail, breaking the shared uClibc library.
  580. o Include all shared library loader objects into a
  581. single C file, thereby reducing its size further.
  582. o Reworked the shared library linking process to be more
  583. flexible so that gcc and ld can more easily be built to
  584. target uClibc library.
  585. o Better error checking in the Makefiles. Be more pedantic
  586. about tar, chmod, etc to avoid system dependent failures.
  587. o We can now autodetect the target architecture
  588. o Hide references to wchar_t so GNU autoconf
  589. configure scripts won't get confused and try to
  590. enable wide char support.
  591. o Fixed stdio.h so apps can use varargs.h if they want to.
  592. o Added brk/sbrk support for ARM, powerpc, mips, and sparc
  593. and set them to default to the much faster brk using malloc
  594. o Added missing syscalls: get_kernel_syms, fcntl64,
  595. fdatasync, sched_setparam, sched_getparam,
  596. sched_setscheduler, sched_getscheduler,
  597. sched_get_priority_max, sched_get_priority_min,
  598. sched_rr_get_interval, sigaltstack, sendfile,
  599. pivot_root, sigsuspend, setfsuid, and setfsgid
  600. o Force DOPIC be true when HAVE_SHARED is true.
  601. o Fixed hstrerror()
  602. o Implemented gethostent(), sethostent(), and endhostent()
  603. o Added arch specific support so that sparc and mips actually
  604. compile and work
  605. Miles Bader:
  606. o Fixes for the v850 architecture: crt0, setjmp,
  607. arch autodetection, etc.
  608. o Fixed `make install' to not build ldso stuff on
  609. non-shared-library systems.
  610. Michael E Brown:
  611. o Allow the gcc wrapper to support setting DEVEL_PREFIX
  612. and BUILD_DIR at runtime (no more need to recompile).
  613. M. R. Brown and Erik Andersen:
  614. o Fixed the SH port so it now works. Tested and shown
  615. working on an SH4 Dreamcast system.
  616. Kim Heino:
  617. o Made 'make clean' remove generated bits/syscall.h
  618. David McCullough:
  619. o SH architecture updates. Added brk, sbrk,
  620. o Fixed simple malloc to work on systems with an MMU
  621. o Taught getutent to return NULL if utmp doesn't exist.
  622. o Added insque/remque support
  623. o Fixed DNS resolver version number so apps won't get
  624. confused and use the wrong API.
  625. o Added Config selectable shadow password support
  626. Yoshinori Sato
  627. o Contributed support for the Hitach H8/300H architecture
  628. Cédric Schieli:
  629. o Add support for inet_netof, inet_lnaof, inet_makeaddr
  630. and hstrerror.
  631. David Schleef:
  632. o Added libstrip, a nifty script to automagically
  633. strip unneeded content from the uClibc shared
  634. libraries.
  635. Martin Sieper
  636. o Added getw() and putw()
  637. o Added missing header files -- lastlog.h, sgtty.h,
  638. netipx/ipx.h, sys/perm.h
  639. Stefan Soucek:
  640. o Add rcmd support, i.e. rsh, rlogin, etc.
  641. o Fix rcmd to avoid alloca, which is dangerous
  642. on mmu-less systems
  643. spudmonkey@racsa.co.cr:
  644. o Eliminate a buffer overflow in the shared library loader
  645. Brian Stafford:
  646. o Enable support for Unix98 PTYs, and add option
  647. to disable old style PTYs.