[all-commits] [llvm/llvm-project] e6bb1d: libclc: Fix LLVM library linking on Windows

Daniel Stone via All-commits all-commits at lists.llvm.org
Tue Apr 14 07:04:31 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: e6bb1d69eccc612e54fd1a0b63ca3dcc84c3a6fa
      https://github.com/llvm/llvm-project/commit/e6bb1d69eccc612e54fd1a0b63ca3dcc84c3a6fa
  Author: Daniel Stone <daniels at collabora.com>
  Date:   2020-04-14 (Tue, 14 Apr 2020)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  libclc: Fix LLVM library linking on Windows

CMake requires library lists on Windows to be split by semi-colons,
rather than the spaces we get from llvm-config. Fix this by a
substitution on Windows.

reviewer: jvesely
Differential Revision: https://reviews.llvm.org/D77162


  Commit: acf079006e6dbdd23300e9289cc8d8197aab5fb5
      https://github.com/llvm/llvm-project/commit/acf079006e6dbdd23300e9289cc8d8197aab5fb5
  Author: Daniel Stone <daniels at collabora.com>
  Date:   2020-04-14 (Tue, 14 Apr 2020)

  Changed paths:
    M libclc/cmake/CMakeTestCLCCompiler.cmake
    M libclc/cmake/CMakeTestLLAsmCompiler.cmake

  Log Message:
  -----------
  libclc: Use echo rather than true for try_compile

When providing a fake compiler, libclc currently uses 'true' which does
not exist on Windows. Use echo instead as the no-op.

reviewer: jvesely
Differential Revision: https://reviews.llvm.org/D77163


  Commit: cccdd0579b5027d0a21fd2dbc0a6a50330134976
      https://github.com/llvm/llvm-project/commit/cccdd0579b5027d0a21fd2dbc0a6a50330134976
  Author: Daniel Stone <daniels at collabora.com>
  Date:   2020-04-14 (Tue, 14 Apr 2020)

  Changed paths:
    M libclc/cmake/CMakeCLCInformation.cmake
    M libclc/cmake/CMakeLLAsmInformation.cmake

  Log Message:
  -----------
  libclc: Don't pass linker flags to CLC/LLAsm

We don't want the regular linker flags for these invocations, since
we're not compiling to the target machine anyway. This fixes things like
'/machine:x64' being unknown when invoked under Windows.

reviewer: jvesely
Differential Revision: https://reviews.llvm.org/D77164


  Commit: 24fad7278a391c6f8af664f4ac691c1719008a09
      https://github.com/llvm/llvm-project/commit/24fad7278a391c6f8af664f4ac691c1719008a09
  Author: Daniel Stone <daniels at collabora.com>
  Date:   2020-04-14 (Tue, 14 Apr 2020)

  Changed paths:
    M libclc/cmake/CMakeLLAsmInformation.cmake

  Log Message:
  -----------
  libclc: Use temporary files rather than a pipe

This is required for using the Ninja backend on Windows, as it passes
commands directly to CreateProcess, and does not allow the shell to
interpret them: https://ninja-build.org/manual.html#ref_rule_command

Using the Visual Studio backend is not possible as attempting to create
a static library target comprised entirely of novel languages not known
to the Visual Studio backend built in to CMake's C++ source will
generate nothing at all.

reviewer: jvesely
Differential Revision: https://reviews.llvm.org/D77165


Compare: https://github.com/llvm/llvm-project/compare/100483b969b8...24fad7278a39


More information about the All-commits mailing list