Loading...
Searching...
No Matches
Go to the documentation of this file.
22#ifndef WG14_SIGNALS_CONFIG_H
23#define WG14_SIGNALS_CONFIG_H
25#ifndef WG14_SIGNALS_PREFIX
26#define WG14_SIGNALS_PREFIX(x) x
29#ifndef WG14_SIGNALS_INLINE
30#define WG14_SIGNALS_INLINE inline
33#ifndef WG14_SIGNALS_HAVE_ASYNC_SAFE_THREAD_LOCAL
38#if (defined(__GNUC__) || defined(_MSC_VER)) && !defined(__APPLE__)
39#define WG14_SIGNALS_HAVE_ASYNC_SAFE_THREAD_LOCAL 1
41#define WG14_SIGNALS_HAVE_ASYNC_SAFE_THREAD_LOCAL 0
45#ifndef WG14_SIGNALS_ASYNC_SAFE_THREAD_LOCAL
46#if WG14_SIGNALS_HAVE_ASYNC_SAFE_THREAD_LOCAL
52#define WG14_SIGNALS_ASYNC_SAFE_THREAD_LOCAL \
53 _Thread_local __attribute__((tls_model("initial-exec")))
54#elif defined(_MSC_VER)
56#define WG14_SIGNALS_ASYNC_SAFE_THREAD_LOCAL _Thread_local
61#ifndef WG14_SIGNALS_NULLPTR
62#if __STDC_VERSION__ >= 202300L
63#define WG14_SIGNALS_NULLPTR nullptr
65#define WG14_SIGNALS_NULLPTR NULL
69#ifndef WG14_SIGNALS_DEFAULT_VISIBILITY
71#define WG14_SIGNALS_DEFAULT_VISIBILITY
73#define WG14_SIGNALS_DEFAULT_VISIBILITY __attribute__((visibility("default")))
77#ifndef WG14_SIGNALS_EXTERN
78#if WG14_SIGNALS_SOURCE
80#define WG14_SIGNALS_EXTERN extern __declspec(dllexport)
82#define WG14_SIGNALS_EXTERN extern __attribute__((visibility("default")))
85#define WG14_SIGNALS_EXTERN extern
89#ifndef WG14_SIGNALS_STDERR_PRINTF
91#define WG14_SIGNALS_STDERR_PRINTF(...) fprintf(stderr, __VA_ARGS__)