about summary refs log tree commit diff
path: root/sysdeps/mach/bits/libc-lock.h
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2000-03-09 22:44:39 +0000
committerRoland McGrath <roland@gnu.org>2000-03-09 22:44:39 +0000
commit224a12bcb24482855424c7a9478c00a445f1b86a (patch)
treeb6453dcbd3bb40d72fe2034bb1f5bb48cde61bc6 /sysdeps/mach/bits/libc-lock.h
parent9ab47461ed5dbad684fdda5a82f07205e170a0df (diff)
downloadglibc-224a12bcb24482855424c7a9478c00a445f1b86a.tar.gz
glibc-224a12bcb24482855424c7a9478c00a445f1b86a.tar.xz
glibc-224a12bcb24482855424c7a9478c00a445f1b86a.zip
* sysdeps/mach/hurd/sigstack.c (sigstack): Remove `const' from
	argument type, for 2000-02-22 change in signal/signal.h declaration.

	* sysdeps/generic/getdents64.c (__getdirentries64): Renamed
	to getdirentries64 (no __), since the Linux implementation
	has no __ name, and there is no declaration for the __ name.

	* sysdeps/mach/bits/libc-lock.h (__libc_cleanup_end): New macro.

	* sysdeps/mach/hurd/Makefile ($(common-objpfx)errnos.d): Tighten up
	sed regexp so as not to break directory names including /../ within.

	* sysdeps/unix/bsd/bits/waitflags.h: File removed.
	The sysdeps/generic file is right for BSD.  This file was in fact the
	Hurd file, but the only difference was the WNOREAP flag that was never
	actually implemented or used anywhere.
Diffstat (limited to 'sysdeps/mach/bits/libc-lock.h')
-rw-r--r--sysdeps/mach/bits/libc-lock.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/sysdeps/mach/bits/libc-lock.h b/sysdeps/mach/bits/libc-lock.h
index acee2bf405..7ba326039c 100644
--- a/sysdeps/mach/bits/libc-lock.h
+++ b/sysdeps/mach/bits/libc-lock.h
@@ -1,5 +1,5 @@
 /* libc-internal interface for mutex locks.  Mach cthreads version.
-   Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+   Copyright (C) 1996,97,98,2000 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -62,6 +62,19 @@ typedef cthread_key_t __libc_key_t;
 /* Unlock the named lock variable.  */
 #define __libc_lock_unlock(NAME) __mutex_unlock (&(NAME))
 
+
+/* XXX for now */
+#define __libc_rwlock_define		__libc_lock_define
+#define __libc_rwlock_define_initialized __libc_lock_define_initialized
+#define __libc_rwlock_init		__libc_lock_init
+#define __libc_rwlock_fini		__libc_lock_fini
+#define __libc_rwlock_rdlock		__libc_lock_lock
+#define __libc_rwlock_wrlock		__libc_lock_lock
+#define __libc_rwlock_tryrdlock		__libc_lock_trylock
+#define __libc_rwlock_trywrlock		__libc_lock_trylock
+#define __libc_rwlock_unlock		__libc_lock_unlock
+
+
 /* Start a critical region with a cleanup function */
 #define __libc_cleanup_region_start(FCT, ARG)				    \
 {									    \
@@ -75,6 +88,12 @@ typedef cthread_key_t __libc_key_t;
     (*__save_FCT)(__save_ARG);						    \
 }
 
+/* Sometimes we have to exit the block in the middle.  */
+#define __libc_cleanup_end(DOIT)					    \
+  if (DOIT)								    \
+    (*__save_FCT)(__save_ARG);						    \
+
+
 /* Use mutexes as once control variables. */
 
 struct __libc_once