clover: Pass unquoted compiler arguments to Clang

Graphics / Mesa 3D Graphics Library / Mesa - Vedran Miletić [miletic.net] - 30 October 2016 14:14 UTC

OpenCL apps can quote arguments they pass to the OpenCL compiler, most commonly include paths containing spaces.

If the Clang OpenCL compiler was called via a shell, the shell would split the arguments with respect to to quotes and then remove quotes before passing the arguments to the compiler. Since we call Clang as a library, we have to split the argument with respect to quotes and then remove quotes before passing the arguments.

v2: move to tokenize(), remove throwing of CL_INVALID_COMPILER_OPTIONS

v3: simplify parsing logic, use more C++11

v4: restore error throwing, clarify a comment

e327286 clover: Pass unquoted compiler arguments to Clang
src/gallium/state_trackers/clover/llvm/util.hpp | 40 ++++++++++++++++++++---
1 file changed, 36 insertions(+), 4 deletions(-)

Upstream: cgit.freedesktop.org


  • Share