[libc++][AIX] Initial patch to unblock the libc++ build on AIX
authorjasonliu <jasonliu.development@gmail.com>
Wed, 24 Mar 2021 17:26:52 +0000 (17:26 +0000)
committerjasonliu <jasonliu.development@gmail.com>
Wed, 24 Mar 2021 22:13:20 +0000 (22:13 +0000)
commit158026301b4842bb877fc8a6a444c348da6d9f3b
treeddb9c92568e67ec36bb50e43f2a4a541b0c754c7
parentadf42dff421c0509cc8d2fe103d6e6fe3a30f855
[libc++][AIX] Initial patch to unblock the libc++ build on AIX

This path would unblock the build of libc++ library on AIX:
1. Add _AIX guard for _LIBCPP_HAS_THREAD_API_PTHREAD
2. Use uselocale to actually take the locale setting
   into account.
3. extract_mtime and extract_atime mod needed for AIX. As stat
   structure on AIX uses internal structure st_timespec to store
   time for binary compatibility reason. So we need to convert it
   back to timespec here.
4. Do not build cxa_thread_atexit.cpp for libcxxabi on AIX.

Differential Revision: https://reviews.llvm.org/D97558
libcxx/include/__config
libcxx/include/__support/ibm/xlocale.h
libcxx/src/filesystem/filesystem_common.h
libcxxabi/src/CMakeLists.txt