This is the mail archive of the
newlib@sources.redhat.com
mailing list for the newlib project.
Re: info abt newlib
- From: "J. Johnston" <jjohnstn at redhat dot com>
- To: krishna dot kn at ap dot sony dot com
- Cc: newlib at sources dot redhat dot com
- Date: Fri, 25 Apr 2003 11:48:30 -0400
- Subject: Re: info abt newlib
- Organization: Red Hat Inc.
- References: <NFBBLCPMCLHEJGHKEAIEMEFGCFAA.krishna.kn@ap.sony.com>
Krishna murthy wrote:
Hello all ,
I have some questions about the Newlib Library:.
1. Is it thread safe?
It is not thread safe by default. Thread safety is possible
via the reentrancy structure plus mutex support for the platform.
Reentrant versions of routines are supplied that take a reentrancy
struct as an argument. Functions that must alter global resources
have mutex calls in them, however, these mutexes are not supplied
for most platforms.
For example, the malloc family routines have calls to properly mutex
the code, but the default mutex code is an empty stub.
Similar protection exists for the I/O routines and getenv family.
2. Is it compatible to following standards ANSI C(ISO C 99), POSIX.1c,
POSIX.1j, POSIX.1d, UNIX98, XPG3,XPG4 and POSIX96
Newlib is ANSI C plus extensions and is also EL/IX compliant. There are C99 extensions,
POSIX extensions, etc... If you need full POSIX/XPG compliance, use a native C library
like glibc.
3. Can we built as shared library?
Yes, but currently only for x86 linux built natively. This could be expanded
in the future to include other linux platforms and other OSes. The design
uses libtool.
4. Is it supports Symbol versioning?
It needs some work. A version specifier is used when forming the shared library
for x86 linux, but proper tagging of all items has not been done.
-- Jeff J.