4 o Add full shared library support for mips (big and little
5 endian), thanks to a lot of hard work from Steven J. Hill
6 o i960 architecture support, thanks to Martin Proulx
7 o An initial alpha port (works, but needs some cleanup)
8 o Fixes shared library support for powerpc
9 o Fixes for mmu-less systems
10 o Much improved thread locking and reentrance.
11 o More gcc wrapper updates. XFree86 really does link
12 this time around. It still didn't last time.
13 o Libcrypt now passes conformance tests
14 o Nearly complete locale supporti thanks to a lot
15 of hard work by Manuel Novoa III. This stuff is
16 _way_ smaller than glibc's
17 o Completely new time handling functions also by Manuel
18 o Lots of other bug fixes and cleanups.
20 See Changelog.full for the complete list of who did what.
32 o Much better large file support
33 o Several gcc wrapper bug fixes, so things like iproute2 and
34 XFree86 should now link properly.
35 o Fixes a stdio thread locking bug that could cause random
36 deadlocks on s*printf calls when threading was enabled.
39 o Added a generic implementation of truncate64.c and ftruncate64.c
40 o Added missing creat64, glob64, mkstemp64, getrlimit64, setrlimit64
41 o Removed internal erroneous use of __USE_FILE_OFFSET64
42 o Made libpthread compile on sparc and powerpc
43 o Made libpthread soname and symlinks match the other libraries.
44 o Added finite() to the C89 math lib, since some math functions use it.
45 o Added missing function pointer to error.c (some apps wanted it)
46 o Fixed initfini build for arches where gcc tries to be sneaky
47 o Fixed m68k/bits/setjmp.h which I has broken in the last release.
48 o Fixed a buffer overflow in the dynamic library loader
49 o Fixed a stdio thread locking bug that could cause random
50 deadlocks on s*printf calls when threading was enabled.
51 o Implemented sqrtf(), needed for libstdc++ on arm
53 o Make clean fixes to not blindly wipe all symlinks
54 o Re-enabled clnt_perror()
55 o Re-implemented swab()
57 o Many updates to the uClibc Working Application List
59 o Many updates to the mips dynamic loader. Not yet working but
60 getting very close now.
61 o Fixed locking bug in getttyent()
62 o Support libpthread on mips
64 o Fixed several bugs in utmp code (pututline was only writing the
65 first sizeof-a-pointer bytes to the utmpfile).
66 o setutent() was only opening utmp readonly.
68 o Fixed a silly typing problem with the getuid syscall.
70 o Fixed stdio FILE read/write auto-transition bugs.
71 o Better stdio errno handling
72 o Changed setvbuf() to more closely match glibc's behavior
73 o Fixed getpass() to not echo passwords to the console
74 o Fixed locale ISblank flag.
75 o Fixed an arg promotion handling bug in _do_one_spec for %c reported
80 o Fixed h8300 architecture support for pthreads and changes to
83 o Made powerpc assembly code PIC-compatible
84 o Removed powerpc R_PPC_REL24 handling, since it was deceptively useless.
86 o Several types on powerpc, such as dev_t, are different than on other
87 architectures. John spotted this, which fixed a _ton_ of problems since
88 anything calling stat() was previously broken.
90 o Eliminated use of alarm() from the DNS resolver by converting
91 it to use select instead (much cleaner).
103 o pthreads support (derived from glibc 2.1.3's linuxthreads library)
104 by Stefan Soucek and Erik Andersen
105 o pthreads support for MMU-less systems, by Stefan Soucek
106 o Complete rewrite of all stdio functions for standards compliance,
107 small size, pthreads support, wide/narrow stream support, large
108 file support, unbuffered support, etc, etc by Manuel Novoa III
109 o gcc wrapper reworked by Erik Andersen. Now operated correctly in
110 all known cases, and now wraps g++ as well for C++ support.
111 o constructor/destructor support, for C++ by Erik Andersen.
112 o Eliminated duplicate include/bits header files, by Erik Andersen.
113 Now all common include/bits headers are grouped together.
117 o Lots of changes and improvements to the shared library loader
118 o Cleaned up a piles of bugs
119 o Fixed a segfault when scandir was called on empty directories.
120 o Several syscalls added: pread/pwrite
121 o Makefile/build system cleanups
123 o pthreads support (with Stefan Soucek)
124 o Added ldexp to the C89 math library, per POSIX
125 o fclose() EINTR handling is now correct per IEEE Std 1003.1-2001
127 o Reworked libcrypt to avoid leaking private symbols into the namespace
128 o Added strtof(), strtold(), updwtmp(), strptime()
129 o Fix ldso build for older arm cross compilers
132 o fixed gcc wrapper handling of -M* options
133 o Fixed truncate64/ftruncate64 to restrict them to 64-bit systems,
134 since we can't be sure that the _syscall macros can cope with 64
135 bit args on 32 bit arches.
136 o Large File support on the v850
137 o Fixed v850 headers after Erik messed them up
138 o Eliminate include/features.h namespace pollution
140 o Fixed pthread support for SH, and fixed SH vfork as well
141 o Fixed SH headers after Erik messed them up
143 o Mips architecture cleanups. Now works perfectly
144 with busybox, vi, ash, etc...
145 o Merged in the random number support (rand, srand, etc) from glibc.
147 o Fixes DNS resolver bug from 0.9.9
149 o Fixed build to support both mips and mipsel
150 o Beginnings of a mips ldso port
152 o Support for gnu error() functions
154 o Coldfire platform updates: clone, setjmp
155 o Fixed simple malloc to work on systems with an MMU
157 o Rewrote all stdio functions for standards compliance, small size,
158 pthreads support, wide/narrow stream support, large file support,
159 unbuffered support, etc, etc, etc.
160 o Rewrote the various string to int functions to be smaller, more
161 standards compilant, and reduce dependance on libgcc.a.
163 o ptrace for the Hitachi h8300 fix
165 o Debian packaging updates
166 o Check for proper 16-byte aliged stack pointer on powerpc
168 o pthreads support for MMU-less systems
169 o pthreads support (with Erik Andersen)
171 o Rewrote strcasecmp() per SUSv2.
173 o Added missing IPV6 support and reentrant networking function
174 additions so iptables now runs with IPV6 support.
181 0.9.9 February 4, 2002
184 o A bunch of doc updates. Major update to the working
186 o Added a configurator script (extra/Configs/uClibc_config_fix.pl)
187 which can simplify configuring uClibc.
188 o Fixed setjmp/longjmp on x86,arm,powerpc,mips,and sparc.
189 Hitting ^C in ash kills client apps now, not ash.
190 o Reworked signal handling code so it now passes POSIX
192 o Fixed sleep and usleep to work correctly when
193 interrupted by signals.
194 o Made getopt behave the same when staticly linking
195 as when dynamicly linking. It was using different
196 implementations depending on how apps were linked.
197 o Added missing inttypes.h header file
198 o Eliminate all C++ style comments from header files
199 o Support statvfs and statfs
200 o Support getmntent_r
201 o Scandir and scandir64 were calling malloc without
203 o Fixed stpcpy function declaration
204 o Many large file support improvements.
205 o Fixed fcntl to work when DOLFS is enabled
206 o Fixed termios code to do the Right Thing(tm)
207 o Allow regex to be excluded at compile time
208 o Implemented mempcpy
209 o Build ldd and readelf for the target system and for the
211 o Fix several cases where get-needed-libgcc-objects.sh
212 could fail, breaking the shared uClibc library.
213 o Include all shared library loader objects into a
214 single C file, thereby reducing its size further.
215 o Reworked the shared library linking process to be more
216 flexible so that gcc and ld can more easily be built to
217 target uClibc library.
218 o Better error checking in the Makefiles. Be more pedantic
219 about tar, chmod, etc to avoid system dependent failures.
220 o We can now autodetect the target architecture
221 o Hide references to wchar_t so GNU autoconf
222 configure scripts won't get confused and try to
223 enable wide char support.
224 o Fixed stdio.h so apps can use varargs.h if they want to.
225 o Added brk/sbrk support for ARM, powerpc, mips, and sparc
226 and set them to default to the much faster brk using malloc
227 o Added missing syscalls: get_kernel_syms, fcntl64,
228 fdatasync, sched_setparam, sched_getparam,
229 sched_setscheduler, sched_getscheduler,
230 sched_get_priority_max, sched_get_priority_min,
231 sched_rr_get_interval, sigaltstack, sendfile,
232 pivot_root, sigsuspend, setfsuid, and setfsgid
233 o Force DOPIC be true when HAVE_SHARED is true.
235 o Implemented gethostent(), sethostent(), and endhostent()
236 o Added arch specific support so that sparc and mips actually
239 o Fixes for the v850 architecture: crt0, setjmp,
240 arch autodetection, etc.
241 o Fixed `make install' to not build ldso stuff on
242 non-shared-library systems.
244 o Allow the gcc wrapper to support setting DEVEL_PREFIX
245 and BUILD_DIR at runtime (no more need to recompile).
246 M. R. Brown and Erik Andersen:
247 o Fixed the SH port so it now works. Tested and shown
248 working on an SH4 Dreamcast system.
250 o Made 'make clean' remove generated bits/syscall.h
252 o SH architecture updates. Added brk, sbrk,
253 o Fixed simple malloc to work on systems with an MMU
254 o Taught getutent to return NULL if utmp doesn't exist.
255 o Added insque/remque support
256 o Fixed DNS resolver version number so apps won't get
257 confused and use the wrong API.
258 o Added Config selectable shadow password support
260 o Contributed support for the Hitach H8/300H architecture
262 o Add support for inet_netof, inet_lnaof, inet_makeaddr
265 o Added libstrip, a nifty script to automagically
266 strip unneeded content from the uClibc shared
269 o Added getw() and putw()
270 o Added missing header files -- lastlog.h, sgtty.h,
271 netipx/ipx.h, sys/perm.h
273 o Add rcmd support, i.e. rsh, rlogin, etc.
274 o Fix rcmd to avoid alloca, which is dangerous
276 spudmonkey@racsa.co.cr:
277 o Eliminate a buffer overflow in the shared library loader
279 o Enable support for Unix98 PTYs, and add option
280 to disable old style PTYs.