[LLVMdev] C++0x Bug in CMake?

Renato Golin renato.golin at linaro.org
Tue Jan 21 10:03:00 PST 2014


Chandler,

I may be doing this wrong, but I'm getting a weird error in building LLVM
with Clang via CMake.

On x86_64:
$ CC=clang CXX=clang++ cmake -G Ninja ../../src/llvm
-DCMAKE_BUILD_TYPE=Release -DLLVM_BUILD_TESTS=True
-DLLVM_ENABLE_ASSERTIONS=True

On ARM:
$ CC=clang CXX=clang++ cmake -G Ninja ../src/ -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=../install -DCMAKE_C_FLAGS=-mcpu=cortex-a15
-DCMAKE_CXX_FLAGS=-mcpu=cortex-a15 -DLLVM_TARGETS_TO_BUILD=ARM
-DLLVM_BUILD_TESTS=True -DLLVM_ENABLE_ASSERTIONS=True

Warning:
CMake Warning at cmake/modules/HandleLLVMOptions.cmake:117 (message):
  -fPIC is not supported.
Call Stack (most recent call first):
  cmake/modules/HandleLLVMOptions.cmake:150 (add_flag_or_print_warning)
  CMakeLists.txt:286 (include)

Error log:
Run Build Command:/usr/local/bin/ninja cmTryCompileExec3815591925
[1/2] Building C object CMakeFiles/cmTryCompileExec3815591925.dir/src.c.o
FAILED: /home/user/devel/llvm/build/bin/clang   -mcpu=cortex-a15
 -DC_SUPPORTS_FLAG -std=c++0x   -fPIC -o
CMakeFiles/cmTryCompileExec3815591925.dir/src.c.o   -c src.c
error: invalid argument '-std=c++0x' not allowed with 'C/ObjC'
ninja: build stopped: subcommand failed.

Why is it adding --std=c++0x on a C compiler?

Needless to say that with GCC, that doesn't happen (ie. --std=c++0x doesn't
get added). Happens both on ARM and x86_64.

Is this a side effect of your changes?

cheers,
--renato
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140121/92ae3113/attachment.html>


More information about the llvm-dev mailing list