]> granicus.if.org Git - llvm/commitdiff
[cmake] Fix bug in r358779 - [CMake] Pass monorepo build settings in cross compile
authorDon Hinton <hintonda@gmail.com>
Sun, 21 Apr 2019 19:20:13 +0000 (19:20 +0000)
committerDon Hinton <hintonda@gmail.com>
Sun, 21 Apr 2019 19:20:13 +0000 (19:20 +0000)
Escape semicolons in the targets list so that cmake doesn't expand
them to spaces.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@358859 91177308-0d34-0410-b5e6-96231b3b80d8

cmake/modules/CrossCompile.cmake

index 6d186de272429a262044a71ed13fa47bf15578b9..d6b416131fe2f5ce31ddd7ef52a30581346f2f96 100644 (file)
@@ -45,6 +45,11 @@ function(llvm_create_cross_target_internal target_name toolchain buildtype)
   string(REPLACE ";" "$<SEMICOLON>" experimental_targets_to_build_arg
          "${LLVM_EXPERIMENTAL_TARGETS_TO_BUILD}")
 
+  string(REPLACE ";" "$<SEMICOLON>" llvm_enable_projects_arg
+         "${LLVM_ENABLE_PROJECTS}")
+  string(REPLACE ";" "$<SEMICOLON>" llvm_external_projects_arg
+         "${LLVM_EXTERNAL_PROJECTS}")
+
   add_custom_command(OUTPUT ${LLVM_${target_name}_BUILD}/CMakeCache.txt
     COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}"
         -DCMAKE_MAKE_PROGRAM="${CMAKE_MAKE_PROGRAM}"
@@ -54,8 +59,8 @@ function(llvm_create_cross_target_internal target_name toolchain buildtype)
         -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${experimental_targets_to_build_arg}"
         -DLLVM_DEFAULT_TARGET_TRIPLE="${TARGET_TRIPLE}"
         -DLLVM_TARGET_ARCH="${LLVM_TARGET_ARCH}"
-        -DLLVM_ENABLE_PROJECTS="${LLVM_ENABLE_PROJECTS}"
-        -DLLVM_EXTERNAL_PROJECTS="${LLVM_EXTERNAL_PROJECTS}"
+        -DLLVM_ENABLE_PROJECTS="${llvm_enable_projects_arg}"
+        -DLLVM_EXTERNAL_PROJECTS="${llvm_external_projects_arg}"
         -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN="${LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN}"
         ${build_type_flags} ${linker_flag} ${external_clang_dir}
     WORKING_DIRECTORY ${LLVM_${target_name}_BUILD}