[PATCH] D73512: [runtimes] Fix passing lists to runtimes configures

Shoaib Meenai via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 27 17:11:09 PST 2020


smeenai created this revision.
smeenai added reviewers: beanz, compnerd, phosek, plotfi.
Herald added subscribers: llvm-commits, mgorny.
Herald added a project: LLVM.

We have to replace the ";" with "|" (since LLVMExternalProjectUtils uses
"|" as the `LIST_SEPARATOR` when invoking `ExternalProject_Add`) in
order for lists to be passed correctly to the runtimes CMake configures.
Remove the special case for `LLVM_ENABLE_RUNTIMES`, since it'll just get
handled by the general logic now.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D73512

Files:
  llvm/runtimes/CMakeLists.txt


Index: llvm/runtimes/CMakeLists.txt
===================================================================
--- llvm/runtimes/CMakeLists.txt
+++ llvm/runtimes/CMakeLists.txt
@@ -266,7 +266,8 @@
       string(FIND "${variableName}" "BUILTINS_${target}" out)
       if("${out}" EQUAL 0)
         string(REPLACE "BUILTINS_${target}_" "" new_name ${variableName})
-        list(APPEND ${target}_extra_args "-D${new_name}=${${variableName}}")
+        string(REPLACE ";" "|" new_value "${${variableName}}")
+        list(APPEND ${target}_extra_args "-D${new_name}=${new_value}")
       endif()
     endforeach()
 
@@ -452,22 +453,19 @@
       string(FIND "${variableName}" "RUNTIMES_${target}_" out)
       if("${out}" EQUAL 0)
         string(REPLACE "RUNTIMES_${target}_" "" new_name ${variableName})
-        list(APPEND ${name}_extra_args "-D${new_name}=${${variableName}}")
+        string(REPLACE ";" "|" new_value "${${variableName}}")
+        list(APPEND ${name}_extra_args "-D${new_name}=${new_value}")
       endif()
     endforeach()
     foreach(variableName ${variableNames})
       string(FIND "${variableName}" "RUNTIMES_${name}_" out)
       if("${out}" EQUAL 0)
         string(REPLACE "RUNTIMES_${name}_" "" new_name ${variableName})
-        list(APPEND ${name}_extra_args "-D${new_name}=${${variableName}}")
+        string(REPLACE ";" "|" new_value "${${variableName}}")
+        list(APPEND ${name}_extra_args "-D${new_name}=${new_value}")
       endif()
     endforeach()
 
-    if(NOT RUNTIMES_${name}_LLVM_ENABLE_RUNTIMES)
-      string(REPLACE ";" "|" LLVM_ENABLE_RUNTIMES_PASSTHROUGH "${LLVM_ENABLE_RUNTIMES}")
-      list(APPEND ${name}_extra_args -DLLVM_ENABLE_RUNTIMES=${LLVM_ENABLE_RUNTIMES_PASSTHROUGH})
-    endif()
-
     if(target IN_LIST LLVM_RUNTIME_BUILD_ID_LINK_TARGETS)
       list(APPEND EXTRA_ARGS STRIP_TOOL ${CMAKE_CURRENT_BINARY_DIR}/llvm-strip-link)
     endif()


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D73512.240737.patch
Type: text/x-patch
Size: 1901 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200128/f7b29544/attachment.bin>


More information about the llvm-commits mailing list