From 7350d1d3b2ec940c89a2b20f9d09985d9fd9e9d7 Mon Sep 17 00:00:00 2001 From: julian Date: Tue, 20 Aug 1996 08:22:01 +0000 Subject: Submitted by: John Birrell Here are the diffs for libc_r to get it one step closer to P1003.1c These make most of the thread/mutex/condvar structures opaque to the user. There are three functions which have been renamed with _np suffixes because they are extensions to P1003.1c (I did them for JAVA, which needs to suspend/resume threads and also start threads suspended). I've created a new header (pthread_np.h) for the non-POSIX stuff. The egrep tags stuff in /usr/src/lib/libc_r/Makefile that I uncommented doesn't work. I think its best to delete it. I don't think libc_r needs tags anyway, 'cause most of the source is in libc which does have tags. also: Here's the first batch of man pages for the thread functions. The diff to /usr/src/lib/libc_r/Makefile removes some stuff that was inherited from /usr/src/lib/libc/Makefile that should only be done with libc. also: I should have sent this diff with the pthread(3) man page. It allows people to type make -DWANT_LIBC_R world to get libc_r built with the rest of the world. I put this in the pthread(3) man page. The default is still not to build libc_r. also: The diff attached adds a pthread(3) man page to /usr/src/share/man/man3. The idea is that without libc_r installed, this man page will give people enough info to know that they have to build libc_r. --- lib/libc_r/uthread/uthread_init.c | 12 ------------ 1 file changed, 12 deletions(-) (limited to 'lib/libc_r/uthread/uthread_init.c') diff --git a/lib/libc_r/uthread/uthread_init.c b/lib/libc_r/uthread/uthread_init.c index 6139935..d044063 100644 --- a/lib/libc_r/uthread/uthread_init.c +++ b/lib/libc_r/uthread/uthread_init.c @@ -202,18 +202,6 @@ _thread_main(int argc, char *argv[], char *env) _thread_init(); return (main(argc, argv, env)); } -#else -/* - * Force our auto-initialization module to be pulled in from the library, - * by referencing a symbol that is defined in it. - * - * The auto-initialization module is a small C++ module. It has a static - * constructor that calls _thread_init() automatically, at the beginning - * of program execution. That eliminates the need for any special hooks - * in crt0.o. - */ -extern int _thread_autoinit_dummy_decl; -static int *_thread_autoinit_dummy_ref = &_thread_autoinit_dummy_decl; #endif #else /* -- cgit v1.1