update readme and release notes for 0.9.0 release (not yet final)
authorRich Felker <dalias@aerifal.cx>
Sat, 5 May 2012 06:39:51 +0000 (02:39 -0400)
committerRich Felker <dalias@aerifal.cx>
Sat, 5 May 2012 06:39:51 +0000 (02:39 -0400)
README
WHATSNEW

diff --git a/README b/README
index 666176c7deeb25b18420b1ca95eab0c722c4becd..ddc5b6b4885f39a0ae2bbe6da7811b2b19648d23 100644 (file)
--- a/README
+++ b/README
@@ -12,30 +12,37 @@ comparison chart on the project website,
 
 For installation instructions, see the INSTALL file.
 
-Please refer to the COPYRIGHT file for details on the copyright status
-of code included in musl, and the COPYING file for the license (LGPL)
-under which the library as a whole is distributed.
+Please refer to the COPYRIGHT file for details on the copyright and
+license status of code included in musl (standard MIT license).
 
 
 
 Greetings!
 
-As of the 0.8.0 release, musl is in _beta_ status. While some
-interfaces remain incomplete or yet to be implemented, the ABI is
-intended to be stable at this point, and serious efforts have been
-made, using three separate test frameworks, to verify the correctness
-of the implementation. Many major system-level and user-level programs
-are known to work with musl, either out-of-the-box or with minor
-patches to address portability errors.
+With the 0.9.0 release, musl has reached a milestone in completeness
+and compatibility. All interfaces in ISO C99 and POSIX 2008 base exist
+in musl, along with a number of non-standardized interfaces based on
+GNU and BSD libraries and syscall interfaces for Linux-kernel-specific
+functions. Some interfaces lack obscure or rarely-used functionality
+needed for strict conformance, but the vast majority of interfaces go
+above and beyond the requirements for conformance, often promising
+success where other implementations can fail under resource exhaustion
+or other corner-case conditions.
+
+At this point, hundreds of packages have been successfully built
+against musl, either out-of-the-box or with minor patches to address
+portability errors. Testing has been conducted using three separate
+test frameworks and numerous additional standalone test cases to
+verify the correctness of the implementation.
 
 Included with this package is a gcc wrapper script (musl-gcc) which
-allows you to build musl-linked programs using an existing gcc 4.x
-toolchain on the host. There are also now at least two mini
+allows you to build musl-linked programs using an existing gcc 3.x or
+4.x toolchain on the host. There are also now at several mini
 distributions (in the form of build scripts) which provide a
-self-hosting musl-based toolchain and system root: Sabotage Linux and
-Bootstrap Linux. These are much better options than the wrapper script
-if you wish to use dynamic linking or build packages with many library
-dependencies.
+self-hosting musl-based toolchain and system root. These are much
+better options than the wrapper script if you wish to use dynamic
+linking or build packages with many library dependencies. See the musl
+website for details.
 
 The musl project is actively seeking contributors, mostly in the areas
 of porting, testing, and application compatibility improvement. For
index ff93ce70ac92378ff77abe6f292306cdfc93319f..f3db8ad4f208e4993b202da379e7a51c09256b25 100644 (file)
--- a/WHATSNEW
+++ b/WHATSNEW
@@ -529,3 +529,36 @@ bug fixes:
 - scanf and strtod wrongly treating "0.00000000001", etc. as 0
 - many bugs in towupper/towlower (never seriously tested before)
 - int8_t definition was wrong when gcc -funsigned-char was used
+
+
+
+0.9.0 release notes
+
+license change: MIT
+
+new features:
+- configure script, improved build system
+- full stack protector support
+- PIE support on x86 and x86_64
+- new O(1) space, O(nm) time implementation of fnmatch
+- improved support for sse2 floating point mode on x86
+
+compatibility:
+- added linux unshare syscall
+- exp10 function
+- sqrtl support on arm (previously missing)
+- removed minimal linux/*.h headers that could conflict with real ones
+- support for _LARGEFILE64_SOURCE (mapped to standard fcns with #define)
+- better c89 compatibility in headers
+- stub versions of sched_* functions (previously missing)
+- pthread stacks no longer executable (compat with hardened kernels)
+
+optimization:
+- additional x86_64 math asm
+- better formula for acos use in i386 asm
+
+bug fixes:
+- large (up to a few %) errors in strtod for certain values due to bug
+- mbsnrtowcs and wcsnrtombs were completely broken (bad exit logic)
+- wide printf %.0s could fail due to uninitialized variable
+- missing dlerror strings for dlsym in some cases