about summary refs log tree commit diff
path: root/mach
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2000-03-30 19:26:35 +0000
committerRoland McGrath <roland@gnu.org>2000-03-30 19:26:35 +0000
commit693ef46bb12bd665f0eea874dde42fc433b41f44 (patch)
treecb14d5110db6c28fe447eefd6419017653b26fc9 /mach
parent841288ec5363f5bcb68b18d9f0707e8ed4c1501f (diff)
downloadglibc-693ef46bb12bd665f0eea874dde42fc433b41f44.tar.gz
glibc-693ef46bb12bd665f0eea874dde42fc433b41f44.tar.xz
glibc-693ef46bb12bd665f0eea874dde42fc433b41f44.zip
2000-03-30 Roland McGrath <roland@baalperazim.frob.com>
	* mach/Versions (libc: GLIBC_2.0)
	[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]: Conditionalize
	__vm_allocate on this.
	[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)]: Conditionalize
	mutex- and spinlock-related symbols on this.
	[!SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)] (libc: HURD_CTHREADS_0.3):
	New version set.  Lock-related symbols go here instead in this case.
	* sysdeps/mach/hurd/Versions (libc: GLIBC_2.0): Remove
	_cthread_exit_routine, _cthread_init_routine, cthread_keycreate,
	cthread_getspecific, cthread_setspecific, __libc_getspecific.
	* hurd/Versions
	[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)] (libc: GLIBC_2.0):
	Put them here instead.
	[!SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)] (libc: HURD_CTHREADS_0.3):
	New version set.  Those cthreads symbols go here instead in this case.
	* Versions.def (libc) [USE_IN_LIBIO]: Add HURD_CTHREADS_0.3 version.
Diffstat (limited to 'mach')
-rw-r--r--mach/Versions16
1 files changed, 16 insertions, 0 deletions
diff --git a/mach/Versions b/mach/Versions
index cb282bda15..2adf2820e8 100644
--- a/mach/Versions
+++ b/mach/Versions
@@ -1,9 +1,14 @@
+%define PIC
+%include <shlib-compat.h>
+
 libc {
   GLIBC_2.0 {
+%if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
     # This symbol is here only for binary compatibility with the
     # pre-versioning libc.so.0.2 ABI.  When the soname changes,
     # it can be removed.
     __vm_allocate;
+%endif
 
     # variables used in Mach-specific macros
     __mach_task_self_;
@@ -11,10 +16,12 @@ libc {
 
     # functions used in inline functions and macros
     __mach_port_deallocate; __mach_thread_self;
+%if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
     __mutex_init; __mutex_lock; __mutex_lock_solid; __mutex_trylock;
     __mutex_unlock; __mutex_unlock_solid;
     __spin_lock; __spin_lock_init; __spin_lock_solid; __spin_try_lock;
     __spin_unlock;
+%endif
 
     # functions used by RPC stubs
     __mach_msg;
@@ -55,4 +62,13 @@ libc {
     task_create; task_set_special_port; task_suspend; task_terminate;
     thread_depress_abort; thread_switch;
   }
+
+%if !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
+  HURD_CTHREADS_0.3 {
+    __mutex_init; __mutex_lock; __mutex_lock_solid; __mutex_trylock;
+    __mutex_unlock; __mutex_unlock_solid;
+    __spin_lock; __spin_lock_init; __spin_lock_solid; __spin_try_lock;
+    __spin_unlock;
+  }
+%endif
 }