I am wondering about the meaning of the cmake flags LLVM_ENABLE_LIBCXX and LLVM_ENABLE_LIBCXXABI. Are they used to indicate that if the C/C++ compiler for building LLVM is clang, and if this clang has support for libc++ with libc++Abi, that both lib++ and libc++abi should be used (instead of linking to the default, which at least on Linux is libstdc++)?
llvm/trunk/CMakeLists.txt option(LLVM_ENABLE_MODULES "Compile with C++ modules enabled." OFF) option(LLVM_ENABLE_CXX1Y "Compile with C++1y enabled." OFF) option(LLVM_ENABLE_LIBCXX "Use libc++ if available." OFF) option(LLVM_ENABLE_LIBCXXABI "Use libc++abi when using libc++." OFF) option(LLVM_ENABLE_PEDANTIC "Compile with pedantic enabled." ON) option(LLVM_ENABLE_WERROR "Fail and stop if a warning is triggered." OFF)
I had the impression that Michael actually wanted the latter, like GCC
has autoconf options to change the default behaviour of the compiler
at build time.
I may be wrong, though.
Are they used to indicate that if the C/C++ compiler for building LLVM is clang
I think you are more correct though
MichaelAlso said his name twice,
In short Michael
That's how I read it. :)
On 28 July 2015 at 14:14, Martell Malone <martel...@gmail.com> wrote:
> Meant to say more likely correct. :)
That's how I read it. :)
cheers,
--renato
I am wondering about the meaning of the cmake flags LLVM_ENABLE_LIBCXX and LLVM_ENABLE_LIBCXXABI. Are they used to indicate that if the C/C++ compiler for building LLVM is clang, and if this clang has support for libc++ with libc++Abi, that both lib++ and libc++abi should be used (instead of linking to the default, which at least on Linux is libstdc++)?
Yes that is actually what they are used for.
-DCLANG_DEFAULT_OPENMP_RUNTIME=libomp
at configuration time when building LLVM. That way things would not break for existing users with unsupported systems while making things for users like us *much* easier :)
Regards,
Michael