]> git.sur5r.net Git - openldap/blobdiff - include/ldap_pvt_thread.h
cleanup old TOOLID macro
[openldap] / include / ldap_pvt_thread.h
index 77b19031bad0b283e00535007cb161f74e491a6b..53a42f89d1247855b27ce5bb5ade347e4000ba87 100644 (file)
@@ -1,5 +1,6 @@
+/* $OpenLDAP$ */
 /*
- * Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA
+ * Copyright 1998-2000 The OpenLDAP Foundation, Redwood City, California, USA
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms are permitted only
@@ -67,6 +68,24 @@ typedef struct condition     ldap_pvt_thread_cond_t;
 
 LDAP_END_DECL
 
+#elif defined( HAVE_GNU_PTH )
+/***********************************
+ *                                 *
+ * thread definitions for GNU Pth  *
+ *                                 *
+ ***********************************/
+
+#include <pth.h>
+
+LDAP_BEGIN_DECL
+
+typedef pth_t          ldap_pvt_thread_t;
+typedef pth_mutex_t    ldap_pvt_thread_mutex_t;
+typedef pth_cond_t     ldap_pvt_thread_cond_t;
+
+LDAP_END_DECL
+
+
 #elif defined( HAVE_THR )
 /********************************************
  *                                          *
@@ -118,16 +137,16 @@ typedef struct ldap_pvt_thread_lwp_cv ldap_pvt_thread_cond_t;
 
 LDAP_END_DECL
 
-#elif HAVE_NT_THREADS
-
-#include <windows.h>
-#include <process.h>
+#elif defined(HAVE_NT_THREADS)
 
 LDAP_BEGIN_DECL
 
-typedef HANDLE                 ldap_pvt_thread_t;
-typedef HANDLE                 ldap_pvt_thread_mutex_t;
-typedef HANDLE                 ldap_pvt_thread_cond_t;
+#include <process.h>
+#include <windows.h>
+
+typedef unsigned long  ldap_pvt_thread_t;
+typedef HANDLE ldap_pvt_thread_mutex_t;
+typedef HANDLE ldap_pvt_thread_cond_t;
 
 LDAP_END_DECL
 
@@ -154,86 +173,83 @@ LDAP_END_DECL
 
 #endif /* no threads support */
 
-#ifndef NO_THREADS
-#      define HAVE_THREADS 1
-
-#endif
-
 LDAP_BEGIN_DECL
 
-LDAP_F int
+LIBLDAP_F( int )
 ldap_pvt_thread_initialize LDAP_P(( void ));
-LDAP_F int
+
+LIBLDAP_F( int )
 ldap_pvt_thread_destroy LDAP_P(( void ));
 
-LDAP_F unsigned int
+LIBLDAP_F( unsigned int )
 ldap_pvt_thread_sleep LDAP_P(( unsigned int s ));
 
 #ifdef HAVE_GETCONCURRENCY
-LDAP_F int
+LIBLDAP_F( int )
 ldap_pvt_thread_get_concurrency LDAP_P(( void ));
 #endif
+
 #ifdef HAVE_SETCONCURRENCY
 #      ifndef LDAP_THREAD_CONCURRENCY
        /* three concurrent threads should be enough */
 #      define LDAP_THREAD_CONCURRENCY  3
 #      endif
-LDAP_F int
+LIBLDAP_F( int )
 ldap_pvt_thread_set_concurrency LDAP_P(( int ));
 #endif
 
 #define LDAP_PVT_THREAD_CREATE_JOINABLE 0
 #define LDAP_PVT_THREAD_CREATE_DETACHED 1
 
-LDAP_F int 
+LIBLDAP_F( int ) 
 ldap_pvt_thread_create LDAP_P((
        ldap_pvt_thread_t * thread, 
        int     detach,
        void *(*start_routine)( void * ), 
        void *arg));
 
-LDAP_F void 
+LIBLDAP_F( void ) 
 ldap_pvt_thread_exit LDAP_P(( void *retval ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_join LDAP_P(( ldap_pvt_thread_t thread, void **status ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_kill LDAP_P(( ldap_pvt_thread_t thread, int signo ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_yield LDAP_P(( void ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_cond_init LDAP_P(( ldap_pvt_thread_cond_t *cond ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_cond_destroy LDAP_P(( ldap_pvt_thread_cond_t *cond ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_cond_signal LDAP_P(( ldap_pvt_thread_cond_t *cond ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_cond_broadcast LDAP_P(( ldap_pvt_thread_cond_t *cond ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_cond_wait LDAP_P((
        ldap_pvt_thread_cond_t *cond, 
        ldap_pvt_thread_mutex_t *mutex ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_mutex_init LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_mutex_destroy LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_mutex_lock LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_mutex_trylock LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_mutex_unlock LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 
 typedef struct ldap_pvt_thread_rdwr_var {
@@ -248,29 +264,38 @@ typedef struct ldap_pvt_thread_rdwr_var {
        int ltrw_w_wait;
 } ldap_pvt_thread_rdwr_t;
 
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_init LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
-LDAP_F int 
+
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_destroy LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
-LDAP_F int 
+
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_rlock LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
-LDAP_F int 
+
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_rtrylock LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
-LDAP_F int 
+
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_runlock LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
-LDAP_F int 
+
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_wlock LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
-LDAP_F int 
+
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_wtrylock LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
-LDAP_F int 
+
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_wunlock LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
 
 #ifdef LDAP_DEBUG
-LDAP_F int 
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_readers LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
-LDAP_F int 
+
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_writers LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
-LDAP_F int 
+
+LIBLDAP_F( int )
 ldap_pvt_thread_rdwr_active LDAP_P((ldap_pvt_thread_rdwr_t *rdwrp));
 #endif /* LDAP_DEBUG */