<div dir="ltr">I think Alexey might know who wrote the libc++ tsan and msan build scripts. I suspect you don't need those, and that your build would succeed if you built libcxx instead of 'all'.<div><br></div><div>Clang (and clang tools) should work with all the major versions of libstdc++. I suspect fixing this will be more fruitful than trying to port your codebase to a new STL implementation. I think you sent email about those problems, let me try to go find those threads and reply there.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Apr 5, 2015 at 2:42 PM, Peter Stirling <span dir="ltr"><<a href="mailto:peter@pjstirling.plus.com" target="_blank">peter@pjstirling.plus.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
Since clang tools currently choke when using the gcc 4.9.2 libstdc++ headers (and 4.8.3, and 4.8.2, and testing against older versions is seriously inconvenient), I decided to try libcxx to work around it. I checked out the source as described in [1], but that caused the llvm build to fail with the following error:<br>
<br>
[9/24] Performing configure step for 'libcxx_tsan'<br>
FAILED: cd /home/peter/Programming/llvm/<u></u>ninja/projects/compiler-rt/<u></u>lib/tsan/libcxx_tsan/src/<u></u>libcxx_tsan-build && /usr/bin/cmake -P /home/peter/Programming/llvm/<u></u>ninja/projects/compiler-rt/<u></u>lib/tsan/libcxx_tsan/src/<u></u>libcxx_tsan-stamp/libcxx_tsan-<u></u>configure.cmake && /usr/bin/cmake -E touch /home/peter/Programming/llvm/<u></u>ninja/projects/compiler-rt/<u></u>lib/tsan/libcxx_tsan/src/<u></u>libcxx_tsan-stamp/libcxx_tsan-<u></u>configure<br>
CMake Error at /home/peter/Programming/llvm/<u></u>ninja/projects/compiler-rt/<u></u>lib/tsan/libcxx_tsan/src/<u></u>libcxx_tsan-stamp/libcxx_tsan-<u></u>configure.cmake:16 (message):<br>
  Command failed: 1<br>
<br>
   '/usr/bin/cmake' '-DCMAKE_C_COMPILER=/home/<u></u>peter/Programming/llvm/ninja/.<u></u>/bin/clang' '-DCMAKE_CXX_COMPILER=/home/<u></u>peter/Programming/llvm/ninja/.<u></u>/bin/clang' '-DCMAKE_C_FLAGS= -fsanitize=thread' '-DCMAKE_CXX_FLAGS= -fsanitize=thread' '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_INSTALL_PREFIX:PATH=/<u></u>home/peter/Programming/llvm/<u></u>ninja/projects/compiler-rt/<u></u>lib/tsan/libcxx_tsan' '-GNinja' '/home/peter/Programming/llvm/<u></u>llvm/projects/libcxx'<br>
<br>
  See also<br>
<br>
/home/peter/Programming/llvm/<u></u>ninja/projects/compiler-rt/<u></u>lib/tsan/libcxx_tsan/src/<u></u>libcxx_tsan-stamp/libcxx_tsan-<u></u>configure-*.log<br>
<br>
Close inspection reveals that it tries to run cmake passing -GNinja (the same as the main build) but doesn't supply -DCMAKE_MAKE_PROGRAM. Editing the file [2] to inject the missing parameter lets the build succeed, but as that file is generated, this edit needs to be repeated sometimes when I update svn, and I'm not sure where it is generated from for a more permanent fix.<br>
<br>
[1] <a href="http://libcxx.llvm.org/" target="_blank">http://libcxx.llvm.org/</a><br>
[2] $BUILD/projects/compiler-rt/<u></u>lib/tsan/libcxx_tsan/src/<u></u>libcxx_tsan-stamp/libcxx_tsan-<u></u>configure.cmake<br>
<br>
______________________________<u></u>_________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@cs.uiuc.edu" target="_blank">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailman/listinfo/cfe-dev</a><br>
</blockquote></div><br></div>