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