How to choose targets to build in CMake?

Hi all,

I understand from the document that I should be able to configure llvm with only specific targets
by passing -DLLVM_TARGETS_TO_BUILD=some-backend to cmake.

However, I get the following errors whenever I don’t include X86 in the target list:

CMake Error at cmake/modules/LLVMConfig.cmake:127 (message):
Library `X86’ not found in list of llvm libraries.
Call Stack (most recent call first):
cmake/modules/LLVMConfig.cmake:47 (explicit_map_components_to_libraries)
cmake/modules/LLVMConfig.cmake:40 (explicit_llvm_config)
cmake/modules/AddLLVM.cmake:82 (llvm_config)
cmake/modules/AddLLVM.cmake:114 (add_llvm_executable)
examples/Kaleidoscope/Chapter4/CMakeLists.txt:3 (add_llvm_example)

– Configuring incomplete, errors occurred!

When I try the autotools, I can get what I want by running configure with --enable-targets=some-backend

Any ideas? I use cmake 2.8.0 on a fedora 10 i686 and I check out llvm from the svn repository.

on top of trunk, it seems cmake requires at least "native" (for yours,
X86) target.
(I reconfirmed with -DLLVM_TARGETS_TO_BUILD=ARM on x86)
For workaround, you have to include "X86" always.

...Takumi

NAKAMURA Takumi <geek4civic@gmail.com> writes:

However, I get the following errors whenever I don't include X86 in the
target list:

on top of trunk, it seems cmake requires at least "native" (for yours,
X86) target.
(I reconfirmed with -DLLVM_TARGETS_TO_BUILD=ARM on x86)
For workaround, you have to include "X86" always.

Committed a fix on r127679.

I configured with -DLLVM_TARGETS_TO_BUILD=Sparc and LLVM and Clang
builds fine but check-all shows test failures:

  Expected Passes : 5077
  Expected Failures : 30
  Unsupported Tests : 3390
  Unexpected Failures: 291

"JIT" is mentioned a lot on the list of failed tests. Of course Sparc
has not JIT, but then I expect that those tests should be disabled.