[llvm] r320413 - [cmake] Pass TARGETS_TO_BUILD through to host tools build

Alex Bradbury via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 12 06:08:46 PST 2017


On 12 December 2017 at 13:32, Don Hinton via llvm-commits
<llvm-commits at lists.llvm.org> wrote:
> Yes, for this to work, we'd need to pass LLVM_EXPERIMENTAL_TARGETS_TO_BUILD
> as well.
>
> However, since Native is the only target actually used, I'd lean toward
> reverting this change and perhaps adding a comment.
>
> hth...
> don

Many thanks Don. I hadn't spotted that experimental targets are
tolerated in LLVM_TARGETS_TO_BUILD if they're listed in
LLVM_EXPERIMENTAL_TARGETS_TO_BUILD.

Justin: which resolution would you prefer? Passing through an escaped
LLVM_EXPERIMENTAL_TARGETS_TO_BUILD does fix the build for me. So does
reverting of course :)

diff --git a/cmake/modules/CrossCompile.cmake b/cmake/modules/CrossCompile.cmake
index 117eda7..0ec76ea 100644
--- a/cmake/modules/CrossCompile.cmake
+++ b/cmake/modules/CrossCompile.cmake
@@ -40,12 +40,15 @@ function(llvm_create_cross_target_internal
target_name toolchain buildtype)
   # them to spaces.
   string(REPLACE ";" "$<SEMICOLON>" targets_to_build_arg
          "${LLVM_TARGETS_TO_BUILD}")
+  string(REPLACE ";" "$<SEMICOLON>" experimental_targets_to_build_arg
+         "${LLVM_EXPERIMENTAL_TARGETS_TO_BUILD}")

   add_custom_command(OUTPUT ${LLVM_${target_name}_BUILD}/CMakeCache.txt
     COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}"
         ${CROSS_TOOLCHAIN_FLAGS_${target_name}} ${CMAKE_SOURCE_DIR}
         -DLLVM_TARGET_IS_CROSSCOMPILE_HOST=TRUE
         -DLLVM_TARGETS_TO_BUILD="${targets_to_build_arg}"
+        -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${experimental_targets_to_build_arg}"
         ${build_type_flags} ${linker_flag} ${external_clang_dir}
     WORKING_DIRECTORY ${LLVM_${target_name}_BUILD}
     DEPENDS CREATE_LLVM_${target_name}


Best,

Alex


More information about the llvm-commits mailing list