-
Notifications
You must be signed in to change notification settings - Fork 252
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[bug] v0.18.0+ does not recognize Clang with GNU-like command-line on Windows #459
Comments
Agree. However, there is something I need to clarify. If we install Clang/LLVM from llvm-project, we can see the following two types of Clang compilers:
According to the issue (conan-io/conan#12424) that I posted previously, both of them should use the SAME the [settings]
os=Windows
arch=x86_64
build_type=Release
compiler=clang
compiler.version=13
compiler.cppstd=gnu14
compiler.runtime=dynamic
compiler.runtime_type=Release
compiler.runtime_version=v143 We should call them MSVC-based Clang compilers. The only difference between them is their FRONTEND. Therefore, the condition statement should be like: elseif ("${CMAKE_${LANGUAGE}_COMPILER_ID}" STREQUAL "Clang"
AND "${CMAKE_${LANGUAGE}_SIMULATE_ID}" STREQUAL "MSVC")
# using MSVC-based Clang compilers
# For example:
# C:\Program Files\LLVM\bin\clang.exe
# C:\Program Files\LLVM\bin\clang++.exe
# C:\Program Files\LLVM\bin\clang-cl.exe
endif () |
I already planned to fulfill the detection of MSVC-based Clang and ClangCL. However, it is required to detect I'm still waiting this PR to be merged, so that I can start to implement the dection of MSVC-based Clang. |
It seems that MSVC and Clang are not detected as of 0.18.1. It worked fine in 0.17.0 |
Any update on this issue? It is blocking project_options' Cmake conan update to 0.18.1 You can see the list of all failing compilers in project_options' testing matrix |
No updates here, sorry, we are prioritizing at this moment the |
I've noticed that a compiler setup with
clang
(notclang-cl
) is not auto-detected on windows any more.This bug was introduced in the v0.18.0, while on v0.17.0 it works correctly.
The configuration is recognized by cmake like this:
This setup is not recognized by the condition for clang:
I think that the last condition can simply be dropped-
clang
that produces MSVC-ABI code should be recognized asclang
.Without this condition the setup is recognized correctly.
The text was updated successfully, but these errors were encountered: