ObjFW  Diff

Differences From Artifact [82e5d91bee]:

To Artifact [fd3b6fe4a7]:


15
16
17
18
19
20
21
22
23


24
25
26


27
28
29


30
31
32
33
34
35

36
37
38
15
16
17
18
19
20
21


22
23
24


25
26
27


28
29
30
31
32
33
34

35
36
37
38







-
-
+
+

-
-
+
+

-
-
+
+





-
+




#include "objfw-defs.h"

#include "platform.h"

#if defined(OF_HAVE_PTHREADS)
# include <pthread.h>
typedef pthread_once_t of_once_t;
# define OF_ONCE_INIT PTHREAD_ONCE_INIT
typedef pthread_once_t OFOnceControl;
# define OFOnceControlInitValue PTHREAD_ONCE_INIT
#elif defined(OF_HAVE_ATOMIC_OPS)
typedef volatile int of_once_t;
# define OF_ONCE_INIT 0
typedef volatile int OFOnceControl;
# define OFOnceControlInitValue 0
#elif defined(OF_AMIGAOS) || !defined(OF_HAVE_THREADS)
typedef int of_once_t;
# define OF_ONCE_INIT 0
typedef int OFOnceControl;
# define OFOnceControlInitValue 0
#endif

#ifdef __cplusplus
extern "C" {
#endif
extern void of_once(of_once_t *control, void (*func)(void));
extern void OFOnce(OFOnceControl *control, void (*func)(void));
#ifdef __cplusplus
}
#endif