[PATCH] D42214: libcxx: Move Windows threading support into a .cpp file.

Evgeny Astigeevich via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 24 02:41:45 PST 2018


eastig added a comment.

Hi Peter,

We have libcxx-externally-threaded-x86 failing due to the changes:

  $ cmake ../llvm -DCMAKE_BUILD_TYPE=MinSizeRel -DCMAKE_C_COMPILER=/work/clang-3.9/bin/clang -DCMAKE_CXX_COMPILER=/work/clang-3.9/bin/clang++ -DLLVM_ENABLE_ASSERTIONS=ON -DLIBCXX_ENABLE_ASSERTIONS=ON -DLIBCXXABI_USE_LLVM_UNWINDER=ON -DLLVM_LIT_ARGS=-sv -DLIBCXX_ENABLE_SHARED=OFF -DLIBCXXABI_ENABLE_SHARED=OFF -DLIBUNWIND_ENABLE_SHARED=OFF -DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON -DLIBCXX_BUILD_EXTERNAL_THREAD_LIBRARY=ON -DLIBCXXABI_BUILD_EXTERNAL_THREAD_LIBRARY=ON -G Ninja
  ...
  $ ninja -j32 cxxabi
  ...
  /work/clang-3.9/bin/clang++   -DHAVE___CXA_THREAD_ATEXIT_IMPL -DLIBCXXABI_USE_LLVM_UNWINDER -D_DEBUG -D_GNU_SOURCE -D_LIBCPP_DISABLE_EXTERN_TEMPLATE -D_LIBCPP_HAS_THREAD_LIBRARY_EXTERNAL -D_LIBCXXABI_BUILDING_LIBRARY -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Iprojects/libcxxabi/src -I/work/llvm-test/slave/libcxx-externally-threaded-x86/llvm/projects/libcxxabi/src -I/usr/include/libxml2 -Iinclude -I/work/llvm-test/slave/libcxx-externally-threaded-x86/llvm/include -I/work/llvm-test/slave/libcxx-externally-threaded-x86/llvm/projects/libcxxabi/include -I/work/llvm-test/slave/libcxx-externally-threaded-x86/llvm/projects/libunwind/include -I/work/llvm-test/slave/libcxx-externally-threaded-x86/llvm/projects/libcxx/include -fPIC -fvisibility-inlines-hidden -Werror=date-time -std=c++11 -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fcolor-diagnostics -ffunction-sections -fdata-sections  -Os  -fPIC   -UNDEBUG -nostdinc++ -Werror=return-type -W -Wall -Wchar-subscripts -Wconversion -Wmismatched-tags -Wmissing-braces -Wnewline-eof -Wunused-function -Wshadow -Wshorten-64-to-32 -Wsign-compare -Wsign-conversion -Wstrict-aliasing=2 -Wstrict-overflow=4 -Wunused-parameter -Wunused-variable -Wwrite-strings -Wundef -Wno-error -pedantic -fstrict-aliasing -funwind-tables -D_DEBUG -D_LIBCPP_BUILD_STATIC -std=c++11 -MD -MT projects/libcxxabi/src/CMakeFiles/cxxabi_objects.dir/cxa_guard.cpp.o -MF projects/libcxxabi/src/CMakeFiles/cxxabi_objects.dir/cxa_guard.cpp.o.d -o projects/libcxxabi/src/CMakeFiles/cxxabi_objects.dir/cxa_guard.cpp.o -c /work/llvm-test/slave/libcxx-externally-threaded-x86/llvm/projects/libcxxabi/src/cxa_guard.cpp
  In file included from /work/llvm-test/slave/libcxx-externally-threaded-x86/llvm/projects/libcxxabi/src/cxa_guard.cpp:13:
  /work/llvm-test/slave/libcxx-externally-threaded-x86/llvm/projects/libcxx/include/__threading_support:117:35: error: unknown type name '__libcpp_recursive_mutex_t'
  int __libcpp_recursive_mutex_init(__libcpp_recursive_mutex_t *__m);
  ...

You can see we use Clang 3.9.
Any idea how to fix it?

Thanks,
Evgeny Astigeevich


Repository:
  rL LLVM

https://reviews.llvm.org/D42214





More information about the llvm-commits mailing list