[PATCH] D67195: Adding support for overriding LLVM_ENABLE_RUNTIMES for runtimes builds.
Puyan Lotfi via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 10 17:38:58 PDT 2019
plotfi added a comment.
Nice! Thanks @phosek. I’m fine with a revert. Currently away from keyboard.
In D67195#1665516 <https://reviews.llvm.org/D67195#1665516>, @phosek wrote:
> I think I see the issue, if you look at `LLVMExternalProjectUtils.cmake`, it uses the following logic for `PASSTHROUGH_PREFIXES`:
>
> list(APPEND ARG_PASSTHROUGH_PREFIXES ${nameCanon})
> foreach(prefix ${ARG_PASSTHROUGH_PREFIXES})
> foreach(variableName ${variableNames})
> if(variableName MATCHES "^${prefix}")
> string(REPLACE ";" "|" value "${${variableName}}")
> list(APPEND PASSTHROUGH_VARIABLES
> -D${variableName}=${value})
> endif()
> endforeach()
> endforeach()
>
>
> We then set `LIST_SEPARATOR |` when invoking `ExternalProject_Add`.
>
> Changing the list separator is really critical when passing through lists, as is the case for `LLVM_ENABLE_RUNTIMES` where the value would typically be `-DLLVM_ENABLE_RUNTIMES=compiler-rt;libcxx;libcxxabi;libunwind`. With your change, only the first value (i.e. `compiler-rt`) would be passed through to the `llvm_ExternalProject_Add` and the rest will be dropped hence this error we're seeing (because none of the other runtimes was built).
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D67195/new/
https://reviews.llvm.org/D67195
More information about the llvm-commits
mailing list