Release Notes: This is a bugfix release for a serious bug that slipped into the previous release: all static linked programs that performed DNS lookups but did not use pthreads were crashing due to a logic error in the weak linking of pthread cancellation cleanup functions.
Release Notes: This release includes numerous additions of small legacy interfaces and previously-omitted standard functions that were determined to be important for building real-world programs. Global constructor/destructor support was provided in the main program and shared libraries/dynamic loader. Thread cancellation requests are now able to cancel blocked stdio operations. A bug in GCC 3 that prevented building a shared libc has been worked around. The GCC wrapper now supports generating shared libraries. Various obscure bugs have also been fixed.
Release Notes: Better ARM support, including dynamic linking. Many improvements and fixes in pthread cond vars, barriers, and rwlocks. Assorted small compatibility improvements and bugfixes all around.
Release Notes: This is a new experimental ARM port (armv4l+ w/EABI). An improved musl-gcc wrapper now works with pre-4.4 gcc versions (including 3.x) and behaves more transparently. The clone syscall is now exported. statfs/statvfs ABI issues have been fixed, along with a number of small header file errors.
Release Notes: Support for the ptrace syscall (process tracing/debugging) has been added, and an error in pointer const-correctness (fortunately treated as just a warning by most compilers) has been fixed. Some other small portability fixes/improvements have been made in preparation for new ports.
Release Notes: This release addresses a build failure on 64-bit systems, minor header file prototype errors and inconsistencies, and a small omission related to posix_spawn.
Release Notes: First post-alpha release. Major improvements to dynamic linker/loader, iconv, stdio, integer formatting/parsing, threads/synchronization, and hardening for poorly-written suid programs. New implementations of previously-missing functionality including memory streams, time parsing, and POSIX AIO. Many unlock/destroy-type race condition bugs have been fixed in pthread locks; such races are nearly impossible to trigger but persist in other implementations such as glibc/NPTL. A number of other bugs have also been fixed, including bugs in stdio, clock, iconv, siglongjmp, and various header files.
Release Notes: New improvements to the dynamic linker (TEXTREL and RPATH) increase compatibility with applications which don't follow best practices for building and installing libraries. A bug in dlopen that affected only certain compiler versions (misuse of local variables with longjmp) is fixed. Support is added for the stdio_ext.h family of interfaces, making it easier to compile buggy gnulib programs that try to poke at stdio FILE internals, the random() function is now thread-safe, mprotect works around a bug in the Linux syscall, and uninitialized long double values are handled safely in printf.
Release Notes: Shared libraries and dynamic loading (dlopen/dlsym) are now supported through an integrated dynamic linker with near-zero overhead. Other new features include POSIX message queues, posix_spawn, the search.h interfaces, the random() PRNG, and floating point environment manipulation. Moderately severe bugs in several string and wide string interfaces and glob(), as well as various minor bugs, have been fixed.
Release Notes: Support for numeric IPv6 address parsing has been added. Compiling musl with PCC should now succeed and result in a working library. The heap sort implementation of qsort has been replaced by smooth sort, yielding nearly-linear run time on arrays that are already mostly sorted. Various bugs including printf floating point rounding and scanf EOF handling have been fixed, as well as minor prototype issues in the public headers and an issue where variadic functions were incorrectly inlined on i386 with recent gcc versions.