summaryrefslogtreecommitdiff
path: root/libguile/pthread-threads.h
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/pthread-threads.h')
-rw-r--r--libguile/pthread-threads.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/libguile/pthread-threads.h b/libguile/pthread-threads.h
index c180af252..b5fff834d 100644
--- a/libguile/pthread-threads.h
+++ b/libguile/pthread-threads.h
@@ -38,8 +38,19 @@
#define scm_i_pthread_self pthread_self
#define scm_i_pthread_create GC_pthread_create
#define scm_i_pthread_detach GC_pthread_detach
+
+#if SCM_HAVE_GC_PTHREAD_EXIT
#define scm_i_pthread_exit GC_pthread_exit
+#else
+#define scm_i_pthread_exit pthread_exit
+#endif
+
+#if SCM_HAVE_GC_PTHREAD_CANCEL
#define scm_i_pthread_cancel GC_pthread_cancel
+#else
+#define scm_i_pthread_cancel pthread_cancel
+#endif
+
#define scm_i_pthread_cleanup_push pthread_cleanup_push
#define scm_i_pthread_cleanup_pop pthread_cleanup_pop
#define scm_i_sched_yield sched_yield