summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorM Joonas Pihlaja <jpihlaja@cc.helsinki.fi>2010-03-04 04:41:18 +0200
committerM Joonas Pihlaja <jpihlaja@cc.helsinki.fi>2010-03-04 04:41:18 +0200
commit0b5579b5d13a6060a3e3eef4bc3b5d9242117d3c (patch)
tree214bd28d43453330d0e05285f38274d0fd9886a4
parent0d240fd95201b1f301f82d3b4e80cf1df41b5740 (diff)
Add mutex attribute setters.
-rw-r--r--list.txt14
-rw-r--r--stubs.c63
2 files changed, 70 insertions, 7 deletions
diff --git a/list.txt b/list.txt
index 75db1d6..1a0dba1 100644
--- a/list.txt
+++ b/list.txt
@@ -53,21 +53,21 @@ alias("na", [[pthread_join]])
alias("na", [[pthread_key_create]])
alias("na", [[pthread_key_delete]])
alias("na", [[pthread_kill]])
-alias("na", [[pthread_mutexattr_destroy]])
+alias("zero", [[pthread_mutexattr_destroy]])
alias("na", [[pthread_mutexattr_getprioceiling]])
alias("na", [[pthread_mutexattr_getprotocol]])
alias("na", [[pthread_mutexattr_getpshared]])
alias("na", [[pthread_mutexattr_gettype]])
-alias("na", [[pthread_mutexattr_init]])
-alias("na", [[pthread_mutexattr_setprioceiling]])
-alias("na", [[pthread_mutexattr_setprotocol]])
-alias("na", [[pthread_mutexattr_setpshared]])
-alias("na", [[pthread_mutexattr_settype]])
+alias("zero", [[pthread_mutexattr_init]])
+alias("zero", [[pthread_mutexattr_setprioceiling]])
+alias("zero", [[pthread_mutexattr_setprotocol]])
+alias("zero", [[pthread_mutexattr_setpshared]])
+alias("zero", [[pthread_mutexattr_settype]])
alias("zero", [[pthread_mutex_destroy]])
alias("na", [[pthread_mutex_getprioceiling]])
alias("zero", [[pthread_mutex_init]])
alias("zero", [[pthread_mutex_lock]])
-alias("na", [[pthread_mutex_setprioceiling]])
+alias("zero", [[pthread_mutex_setprioceiling]])
alias("na", [[pthread_mutex_timedlock]])
alias("na", [[pthread_mutex_trylock]])
alias("zero", [[pthread_mutex_unlock]])
diff --git a/stubs.c b/stubs.c
index 2f386b6..19338f6 100644
--- a/stubs.c
+++ b/stubs.c
@@ -237,6 +237,60 @@ void pthread_exit() __attribute__ ((weak, alias ("__pthread_exit_stub")));
# endif
#endif
+#ifndef HAVE_PTHREAD_MUTEXATTR_DESTROY
+#define NEED_ZERO_STUB
+# ifdef SUPPORT_ATTRIBUTE_ALIAS
+int pthread_mutexattr_destroy() __attribute__ ((weak, alias ("__pthread_zero_stub")));
+# else
+# pragma weak pthread_mutexattr_destroy = __pthread_zero_stub
+# endif
+#endif
+
+#ifndef HAVE_PTHREAD_MUTEXATTR_INIT
+#define NEED_ZERO_STUB
+# ifdef SUPPORT_ATTRIBUTE_ALIAS
+int pthread_mutexattr_init() __attribute__ ((weak, alias ("__pthread_zero_stub")));
+# else
+# pragma weak pthread_mutexattr_init = __pthread_zero_stub
+# endif
+#endif
+
+#ifndef HAVE_PTHREAD_MUTEXATTR_SETPRIOCEILING
+#define NEED_ZERO_STUB
+# ifdef SUPPORT_ATTRIBUTE_ALIAS
+int pthread_mutexattr_setprioceiling() __attribute__ ((weak, alias ("__pthread_zero_stub")));
+# else
+# pragma weak pthread_mutexattr_setprioceiling = __pthread_zero_stub
+# endif
+#endif
+
+#ifndef HAVE_PTHREAD_MUTEXATTR_SETPROTOCOL
+#define NEED_ZERO_STUB
+# ifdef SUPPORT_ATTRIBUTE_ALIAS
+int pthread_mutexattr_setprotocol() __attribute__ ((weak, alias ("__pthread_zero_stub")));
+# else
+# pragma weak pthread_mutexattr_setprotocol = __pthread_zero_stub
+# endif
+#endif
+
+#ifndef HAVE_PTHREAD_MUTEXATTR_SETPSHARED
+#define NEED_ZERO_STUB
+# ifdef SUPPORT_ATTRIBUTE_ALIAS
+int pthread_mutexattr_setpshared() __attribute__ ((weak, alias ("__pthread_zero_stub")));
+# else
+# pragma weak pthread_mutexattr_setpshared = __pthread_zero_stub
+# endif
+#endif
+
+#ifndef HAVE_PTHREAD_MUTEXATTR_SETTYPE
+#define NEED_ZERO_STUB
+# ifdef SUPPORT_ATTRIBUTE_ALIAS
+int pthread_mutexattr_settype() __attribute__ ((weak, alias ("__pthread_zero_stub")));
+# else
+# pragma weak pthread_mutexattr_settype = __pthread_zero_stub
+# endif
+#endif
+
#ifndef HAVE_PTHREAD_MUTEX_DESTROY
#define NEED_ZERO_STUB
# ifdef SUPPORT_ATTRIBUTE_ALIAS
@@ -264,6 +318,15 @@ int pthread_mutex_lock() __attribute__ ((weak, alias ("__pthread_zero_stub")));
# endif
#endif
+#ifndef HAVE_PTHREAD_MUTEX_SETPRIOCEILING
+#define NEED_ZERO_STUB
+# ifdef SUPPORT_ATTRIBUTE_ALIAS
+int pthread_mutex_setprioceiling() __attribute__ ((weak, alias ("__pthread_zero_stub")));
+# else
+# pragma weak pthread_mutex_setprioceiling = __pthread_zero_stub
+# endif
+#endif
+
#ifndef HAVE_PTHREAD_MUTEX_UNLOCK
#define NEED_ZERO_STUB
# ifdef SUPPORT_ATTRIBUTE_ALIAS