Building libc++ with libsupc++ puts "bits/" headers in the wrong spot(?)

I tried building libc++ with libsupc++ as described in the documentation*, and while most of the stuff works, I can't #include <cxxabi.h>. It's possible I'm just doing something dumb, but it looks like libc++ is copying over some files from libsupc++ and putting them in the include directory along with the rest of libc++, instead of in a "bits/" subdirectory like cxxabi.h assumes (namely bits/c++config.h, bits/cxxabi_tweaks.h, and bits/cxxabi_forced.h).

Is this a bug in libc++? I can't really tell what CMakeLists.txt is doing, since I'm not an expert on CMake, but it seems like it's copying the files and not making appropriate subdirectories for them. Of course, if I'm just doing this wrong, let me know so I can fix it on my end. :slight_smile:

- Jim

* Here's the command I used to build:

CC=clang CXX=clang++ cmake -G "Unix Makefiles" -DLIBCXX_CXX_ABI=libsupc++ -DLIBCXX_LIBSUPCXX_INCLUDE_PATHS="/usr/include/c++/4.8/;/usr/include/x86_64-linux-gnu/c++/4.8/" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR $SRC_DIR

Hi Jim,

Thanks for the report. There is a bug report for this already. I’ll make it higher priority.

http://llvm.org/bugs/show_bug.cgi?id=20936

/Eric

Great, thanks!

- Jim