This allows building libc++ against winpthreads from mingw-w64 to support operating systems older than Windows 7.
The remaining libc++ code already supports WIN32 with LIBCXX_HAS_PTHREAD_API.
Note that there is also the older "pthreads-win32". However, that support library implements pthread_t as a struct, which violates the libc++ assumption that pthread_t is always a scalar and can be compared, ordered, and set to zero.
This is the cmake define for when pthread api is explicitly forced to be used, instead of autodetection based on platform and __has_include(<pthread.h>) and such - right? In that case I guess it's ok.
There's also been a desire (in https://reviews.llvm.org/D88124#change-1LdJXjC8YEPj) to make compilation of this file optional based on LIBCXX_ENABLE_THREADS - I guess it'd be nice to do that at the same time while adding conditionals here.