Closed Bug 31697 Opened 25 years ago Closed 25 years ago

Porting NSPR to Mac OS X (Rhapsody)

Categories

(NSPR :: NSPR, defect, P3)

PowerPC
Other
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: wtc, Assigned: wtc)

Details

Attachments

(2 files)

We need to port NSPR to Mac OS X (Rhapsody). Mac OS X has pthreads. As far as NSPR is concerned, Mac OS X is a Unix variant.
Attached patch Proposed patch.Splinter Review
Comments on the patch: 1. The default implementation strategy is pthreads. Specify CLASSIC_NSPR=1 if you want to use NSPR's user-level threads. 2. I provide dummy stubs for these unimplemented pthread functions: pthread_condattr_init, pthread_kill, and sigtimedwait. 3. Interprocess named semaphores and shared memory are not implemented. (These are not used by the Mozilla client.)
Status: NEW → ASSIGNED
the patch looks good to me. I am doing a clean mozilla build on OSX now with your patch to make sure a) I didn't miss anything when I landed mozilla changes and b) the pthread stuff works
is it safe to build mozilla with nspr tip?
Define PR_HAVE_SYSV_NAMED_SHARED_MEMORY in _rhapsody.h because Mac OS X has System V shared memory. /cvsroot/mozilla/nsprpub/pr/include/md/_rhapsody.h, revision 3.8
I merged the Mac OS X (Darwin) port onto NSPRPUB_RELEASE_4_0_BRANCH. /cvsroot/mozilla/nsprpub/config/Rhapsody.mk, revision 3.8.58.1 /cvsroot/mozilla/nsprpub/config/arch.mk, revision 3.14.4.1 /cvsroot/mozilla/nsprpub/pr/include/md/_pth.h, revision 3.15.32.1 /cvsroot/mozilla/nsprpub/pr/include/md/_rhapsody.h, revision 3.6.58.1 /cvsroot/mozilla/nsprpub/pr/src/linking/prlink.c, revision 3.32.4.3 /cvsroot/mozilla/nsprpub/pr/src/md/unix/rhapsody.c, revision 3.4.58.1 /cvsroot/mozilla/nsprpub/pr/src/md/unix/uxproces.c, revision 3.9.18.1 /cvsroot/mozilla/nsprpub/pr/src/md/unix/uxrng.c, revision 1.7.4.1 /cvsroot/mozilla/nsprpub/pr/src/pthreads/ptio.c, revision 3.42.4.15 /cvsroot/mozilla/nsprpub/pr/tests/Makefile, revision 3.47.2.5 /cvsroot/mozilla/nsprpub/pr/tests/Makefile.in, revision 1.10.6.5 I will merge it onto NSPRPUB_CLIENT_BRANCH (which the mozilla client pulls) when the mozilla tree reopens.
Merged the Mac OS X (Darwin) port onto the NSPRPUB_CLIENT_BRANCH. /cvsroot/mozilla/nsprpub/config/Rhapsody.mk, revision 3.8.72.1 /cvsroot/mozilla/nsprpub/config/arch.mk, revision 3.14.18.1 /cvsroot/mozilla/nsprpub/pr/include/md/_pth.h, revision 3.15.46.1 /cvsroot/mozilla/nsprpub/pr/include/md/_rhapsody.h, revision 3.6.72.1 /cvsroot/mozilla/nsprpub/pr/src/linking/prlink.c, revision 3.34.2.1 /cvsroot/mozilla/nsprpub/pr/src/md/unix/rhapsody.c, revision 3.4.72.1 /cvsroot/mozilla/nsprpub/pr/src/md/unix/uxproces.c, revision 3.9.32.1 /cvsroot/mozilla/nsprpub/pr/src/md/unix/uxrng.c, revision 1.7.18.1 /cvsroot/mozilla/nsprpub/pr/src/pthreads/ptio.c, revision 3.43.2.1 /cvsroot/mozilla/nsprpub/pr/tests/Makefile, revision 3.48.2.1 /cvsroot/mozilla/nsprpub/pr/tests/Makefile.in, revision 1.11.2.1
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Target Milestone: --- → 4.1
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: