mirror of
git://git.musl-libc.org/musl
synced 2025-03-06 20:48:29 +01:00
musl - an implementation of the standard library for Linux-based systems
really wchar_t should never vary, but the ARM EABI defines it as an unsigned 32-bit int instead of a signed one, and gcc follows this nonsense. thus, to give a conformant environment, we have to follow (otherwise L""[0] and L'\0' would be 0U rather than 0, but the application would be unaware due to a mismatched definition for WCHAR_MIN and WCHAR_MAX, and Bad Things could happen with respect to signed/unsigned comparisons, promotions, etc.). fortunately no rules are imposed by the C standard on the relationship between wchar_t and wint_t, and WEOF has type wint_t, so we can still make wint_t always-signed and use -1 for WEOF. |
||
---|---|---|
arch | ||
crt | ||
dist | ||
include | ||
lib | ||
src | ||
tools | ||
COPYING | ||
COPYRIGHT | ||
INSTALL | ||
Makefile | ||
README | ||
WHATSNEW |
musl libc - a new standard library to power a new generation of Linux-based devices. musl is lightweight, fast, simple, free, and strives to be correct in the sense of standards-conformance and safety. musl is an alternative to glibc, eglibc, uClibc, dietlibc, and klibc. For reasons why one might prefer musl, please see the FAQ and libc comparison chart on the project website, http://www.etalabs.net/musl/ 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. 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; 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. 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 using musl. Cheers, Rich Felker / dalias