OSDN Git Service

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