Cmake обнаруживает Clang-Cl как Clang

Я построил boringssl с помощью cmake и msvc
Затем я попытался собрать с помощью clang-cl, поэтому я использовал -T «LLVM-vs2014» в аргументах vmake.

Clang-cl использует аргументы cl, однако cmake использовал аргументы стиля gcc без добавления -Xclang

1

Решение

Правильный способ справиться с этим делом — проверить

(${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang" AND "x${CMAKE_CXX_SIMULATE_ID}" STREQUAL "xMSVC"))
1

Другие решения

проблема была здесь:

if(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wshadow -Werror -Wno-error=shadow -Wno-error=unused-value -ggdb -std=gnu89")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wshadow -Werror -Wno-error=shadow -Wno-error=unused-value -ggdb -std=c++0x")

Я изменил Clang на Clng, поэтому clang-cl не был идентифицирован как clang.exe, который принимает аргументы в стиле gcc

0

По вопросам рекламы [email protected]