mirror of git://git.musl-libc.org/musl
0.8.0 release
This commit is contained in:
parent
28af39fe42
commit
801b311a5b
35
README
35
README
|
@ -18,24 +18,35 @@ under which the library as a whole is distributed.
|
|||
|
||||
|
||||
|
||||
Greetings libc hackers!
|
||||
Greetings!
|
||||
|
||||
This package is an _alpha_ release of musl, intended for the curious
|
||||
and the adventurous. While it can be used to build a complete small
|
||||
Linux system (musl is self-hosted on the system I use to develop it),
|
||||
at this point doing so requires a lot of manual effort. Nonetheless, I
|
||||
hope low-level Linux enthusiasts will try out building some compact
|
||||
static binaries with musl using the provided gcc wrapper (which allows
|
||||
you to link programs with musl on a "standard" glibc Linux system),
|
||||
find whatever embarassing bugs I've let slip through, and provide
|
||||
feedback on issues encountered building various software against musl.
|
||||
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; the main remaining applications
|
||||
which definitely will not work are those which require C++ support,
|
||||
which will be addressed during the 0.8 or 0.9 development series.
|
||||
|
||||
For bug reports, support requests, or to get involved in development,
|
||||
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
|
||||
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.
|
||||
|
||||
The musl project is actively seeking contributors, mostly in the areas
|
||||
of porting, testing, and application compatibility improvement. For
|
||||
bug reports, support requests, or to get involved in development,
|
||||
please visit #musl on Freenode IRC or subscribe to the musl mailing
|
||||
list by sending a blank email to musl-subscribe AT lists DOT openwall
|
||||
DOT com.
|
||||
|
||||
Thank you for trying out musl.
|
||||
Thank you for using musl.
|
||||
|
||||
Cheers,
|
||||
|
||||
|
|
43
WHATSNEW
43
WHATSNEW
|
@ -282,3 +282,46 @@ bug fixes:
|
|||
- workaround for bugs in linux mprotect syscall
|
||||
- thread-safety for random() functions
|
||||
- various minor issues
|
||||
|
||||
|
||||
|
||||
0.8.0 release notes (in progress)
|
||||
|
||||
new features:
|
||||
- chinese and japanese legacy charset support in iconv
|
||||
- zero-syscall clock_gettime support (dynamic-linked x86_64 only)
|
||||
- futex-based locking for stdio (previously used spinlocks)
|
||||
- LD_PRELOAD and RTLD_NEXT support in dynamic linker
|
||||
- strptime (mostly working but incomplete)
|
||||
- posix aio (mostly working but not entirely conformant)
|
||||
- memory streams (fmemopen, open_memstream, ...)
|
||||
- stub/dummy implementations for various useless legacy functions
|
||||
- if_nameindex
|
||||
|
||||
security hardening:
|
||||
- setuid, etc. should not longer be able to "partially fail" with threads
|
||||
- ensure suid programs start with fd 0,1,2 open
|
||||
- improved openpty/forkpty failure checks
|
||||
|
||||
threads/synchronization bug fixes:
|
||||
- dangerous spurious wakeup in pthread_join lead to early return
|
||||
- race condition enabling async cancellation (delayed/lost cancellation)
|
||||
- destruction/unmapping race conditions in semaphores, mutexes, rwlocks
|
||||
- recursive rwlock_rdlock deadlock when a writer is waiting
|
||||
- race condition in sigqueue with fork
|
||||
- timer expiration thread exit wasn't running dtors
|
||||
- timer threads weren't blocking signals
|
||||
- close was wrongly cancellable after succeeding on some devices
|
||||
- robust mutex list was not reset on fork
|
||||
|
||||
general bug fixes:
|
||||
- incorrect logic in fread (spurious blocking; crash on write-only files)
|
||||
- many corner cases and overflow cases for strtol-family functions
|
||||
- various printf integer formatting issues with flags/width/precision
|
||||
- incorrect iconv return value on failure
|
||||
- broken FD_* macros on 64-bit targets
|
||||
- clock function returning wrong value (real time not cpu time)
|
||||
- siglongjmp signal mask clobbering (off-by-one pointer error)
|
||||
- dynamic linker weak symbol resolution issues
|
||||
- fdopendir failure to set errno
|
||||
- various minor header fixes
|
||||
|
|
Loading…
Reference in New Issue