diff options
Diffstat (limited to 'libcxx/include')
-rw-r--r-- | libcxx/include/__config | 10 | ||||
-rw-r--r-- | libcxx/include/__config_site.in | 1 | ||||
-rw-r--r-- | libcxx/include/__threading_support | 6 |
3 files changed, 11 insertions, 6 deletions
diff --git a/libcxx/include/__config b/libcxx/include/__config index bbddcbcaf02..91fb1c0f84f 100644 --- a/libcxx/include/__config +++ b/libcxx/include/__config @@ -813,19 +813,23 @@ extern "C" void __sanitizer_annotate_contiguous_container( #endif // Thread API -#ifndef _LIBCPP_HAS_NO_THREADS +#if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_HAS_THREAD_API_PTHREAD) # if defined(__FreeBSD__) || \ defined(__NetBSD__) || \ defined(__linux__) || \ defined(__APPLE__) || \ defined(__CloudABI__) || \ defined(__sun__) -# define _LIBCPP_THREAD_API_PTHREAD +# define _LIBCPP_HAS_THREAD_API_PTHREAD # else # error "No thread API" -# endif // _LIBCPP_THREAD_API +# endif // _LIBCPP_HAS_THREAD_API #endif // _LIBCPP_HAS_NO_THREADS +#if defined(_LIBCPP_HAS_NO_THREADS) && defined(_LIBCPP_HAS_THREAD_API_PTHREAD) +# error _LIBCPP_HAS_THREAD_API_PTHREAD may only be defined when \ + _LIBCPP_HAS_NO_THREADS is not defined. +#endif #if defined(_LIBCPP_HAS_NO_MONOTONIC_CLOCK) && !defined(_LIBCPP_HAS_NO_THREADS) # error _LIBCPP_HAS_NO_MONOTONIC_CLOCK may only be defined when \ diff --git a/libcxx/include/__config_site.in b/libcxx/include/__config_site.in index ec64485289f..6c2b7bb446d 100644 --- a/libcxx/include/__config_site.in +++ b/libcxx/include/__config_site.in @@ -19,5 +19,6 @@ #cmakedefine _LIBCPP_HAS_NO_MONOTONIC_CLOCK #cmakedefine _LIBCPP_HAS_NO_THREAD_UNSAFE_C_FUNCTIONS #cmakedefine _LIBCPP_HAS_MUSL_LIBC +#cmakedefine _LIBCPP_HAS_THREAD_API_PTHREAD #endif // _LIBCPP_CONFIG_SITE diff --git a/libcxx/include/__threading_support b/libcxx/include/__threading_support index 49fdca27806..c9a4ea9d094 100644 --- a/libcxx/include/__threading_support +++ b/libcxx/include/__threading_support @@ -19,14 +19,14 @@ #ifndef _LIBCPP_HAS_NO_THREADS -#if defined(_LIBCPP_THREAD_API_PTHREAD) +#if defined(_LIBCPP_HAS_THREAD_API_PTHREAD) #include <pthread.h> #include <sched.h> #endif _LIBCPP_BEGIN_NAMESPACE_STD -#if defined(_LIBCPP_THREAD_API_PTHREAD) +#if defined(_LIBCPP_HAS_THREAD_API_PTHREAD) // Mutex #define _LIBCPP_MUTEX_INITIALIZER PTHREAD_MUTEX_INITIALIZER @@ -194,7 +194,7 @@ void __libcpp_tl_set(__libcpp_tl_key __key, void* __p) pthread_setspecific(__key, __p); } -#else // !_LIBCPP_THREAD_API_PTHREAD +#else // !_LIBCPP_HAS_THREAD_API_PTHREAD #error "No thread API selected." #endif |