[bug] CMAKE_lang_COMPILER_ARCHITECTURE_ID is not working with C/C++ compilers installed in MSYS2.
Problem Description
Originally, I want to use CMAKE_lang_COMPILER_ARCHITECTURE_ID to detect the target architecture of MinGW installed in MSYS2. However, it turns out that this variable is EMPTY.
After doing some experiments, I found that this variable is
-
SPECIFIED when we use the following compilers:
%VCToolsInstallDir%\bin\Hostx64\x64\cl.exe
%VCToolsInstallDir%\bin\Hostx64\x86\cl.exe
%VCToolsInstallDir%\bin\Hostx86\x64\cl.exe
%VCToolsInstallDir%\bin\Hostx86\x86\cl.exe
C:\Program Files\LLVM\bin\clang.exe
C:\Program Files\LLVM\bin\clang-cl.exe
C:\Program Files (x86)\LLVM\bin\clang.exe
C:\Program Files (x86)\LLVM\bin\clang-cl.exe
-
EMPTY when we use the following compilers:
C:/msys64/mingw64/bin/gcc.exe
C:/msys64/mingw32/bin/gcc.exe
C:/msys64/clang64/bin/clang.exe
C:/msys64/clang32/bin/clang.exe
C:/msys64/usr/bin/gcc.exe
It seems that this variable is not working with C/C++ compilers installed in MSYS2.
Environments and Versions
- OS version: Windows 11
- CMake version: CMake 3.24.2