This is the mail archive of the
libc-ports@sources.redhat.com
mailing list for the libc-ports project.
OpenSolaris Port
- From: "David Bartley" <dtbartle at csclub dot uwaterloo dot ca>
- To: libc-ports at sourceware dot org
- Date: Sat, 30 Aug 2008 22:17:57 -0400
- Subject: OpenSolaris Port
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:sender :to:subject:mime-version:content-type:content-transfer-encoding :content-disposition:x-google-sender-auth; bh=AGtam91E0a6iJ8fYEFIeG2Jh9vBz2mTzKh2ugQ7CzDA=; b=ENvfAu+EOMAHCE3bo84godUFogqNQWy2nw25GYklHq5kYOTk5lTt7Uh7kcmHrU7kU8 KKyB70hDrSkJ3JKVQ6exia3UbvABJ1x64IwWFbHct2RJHZl8jnNFXCjVepa0R5TBqcXN jqub7MIeCMrhSIFrAdlub1c4T0tydQPaxunlg=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:sender:to:subject:mime-version:content-type :content-transfer-encoding:content-disposition:x-google-sender-auth; b=cA+QErRf5a0+XBn1KSdv9F37lBFACtZ6jImrVbBlxJUQeY1usQYKwZVNY+11Cm2P9E XyADI4+XlnNYLH3tlKdRadtTDnU+iQfIaFM+YJDSv1IFC5JyiJUPnr3oPY+3Si2vdLQn 9pPxMeFmMsUTV3R2KH1hFTJHgo/5DTKwIB0V4=
Hello,
I've been working on porting GNU libc to OpenSolaris for the past few
months. I've put a web page detailing my work [0] (the actual diff is
in glibc-2.7-kopensolaris-gnu.diff.gz). NPTL has also been ported; the
mutex/rwlock/semaphore parts and thread parts have been rewritten to
use OpenSolaris-specifc locking/threading syscalls. Most of the patch
could theoretically be added to glibc-ports, although there are a
number of changes that would need to be made to base glibc,
particularly in NPTL. Any patches to non-sysdeps stuff has been done
in a way that would not affect building on the supported platforms;
i.e. I've added #define's and used #if/#else blocks to add the
OpenSolaris-specific functionality. A good example is the use of
PTHREAD_T_IS_TID, which causes pthread_t's to be thread/lwp id's
instead of pointers to the actual thread descriptor, which is what
sun's libpthread/libthread does.
My current goal is to end up with something that would completely
replace sun's libc. Many of sun's extensions (f.e. the zone_* bits in
libc) are simply wrappers around syscalls, so I've reimplemented them
in the port. Since glibc is licensed under LGPL and includes a linking
exception, it should be legal to link OpenSolaris CDDL components
(e.g. libzonecfg.so.1 or /usr/bin/zonecfg) against glibc. I've been
focusing on i386, but it should be little work to make an x86_64 and
sparc port.
There's not much point in merging any changes yet, since it's still a
work in progress. This email is just a notification. Comments and
ideas are appreciated.
-- David
[0] http://csclub.uwaterloo.ca/~dtbartle/opensolaris/