conan icon indicating copy to clipboard operation
conan copied to clipboard

Integration for ``msvc`` compiler clang/llvm toolsets

Open memsharded opened this issue 2 years ago • 2 comments

Recently added support for v14x_xp toolsets, but still missing the clang/llvm ones. It seems the idea would be:

  • The compiler is clang
  • Add necessary information to settings or conf to define which VS version to be used.
  • Define mapping between clang versions and vs toolsets
  • Have toolchains to use that.

Originally posted by @memsharded in https://github.com/conan-io/conan/issues/10815#issuecomment-1073610480

memsharded avatar Mar 21 '22 08:03 memsharded

I have done a first quick research for this. I cannot find anything out there that tells which clang version are the toolsets LLVM-vs2013, LLVM-vs2013_xp, LLVM-vs2014, LLVM-vs2014_xp, LLVM-vs2017, LLVM-vs2017_xp etc.

I guess it might be possible to install them and build something to check the versions manually from compiler definitions.

memsharded avatar Apr 25 '22 15:04 memsharded

I am starting to divide use cases in https://github.com/conan-io/conan/issues/10955#issuecomment-1135551506

memsharded avatar May 24 '22 08:05 memsharded

This PR https://github.com/conan-io/conan/pull/11492, merged for next 1.53 contains a few changes to better support clang in Windows, mainly for the new CMakeToolchain integration, but some minor changes for others too.

Closing this issue now, but we know that there might still be some gaps, so please try to update to the new integration (this is necessary for 2.0 anyway), and report what might still be failing against this new integration. The best starting point would be the tests in https://github.com/conan-io/conan/blob/develop/conans/test/functional/toolchains/cmake/test_cmake_toolchain_win_clang.py, or using any of the predefined templates conan new hello/0.1 -m=cmake_lib|autotools_lib|msbuild_lib|meson_lib, and open a new issue. Many thanks!

memsharded avatar Sep 30 '22 14:09 memsharded