У нас есть набор межплатформенных сценариев сборки CMake , и мы поддерживаем сборку с помощью Visual C ++ и GCC .
Мы пробуем Clang , но я не могу понять, как проверить, является ли компилятор Clang с нашим сценарием CMake.
Что я должен проверить, чтобы увидеть, является ли компилятор Clang или нет? В настоящее время мы используем MSVC
и CMAKE_COMPILER_IS_GNU<LANG>
для тестирования Visual C ++ и GCC, соответственно.
__GNUC__
и другим _MSC_VER
, но он не может использовать те же программы, что и любой компилятор. Обнаружение LLVM Clang и Apple Clang имеет решающее значение для обеспечения того, чтобы код компилировался и выполнялся как ожидалось. Я так устал от работы с BS Clang, что мы просто ломаем компиляцию на Windows . Мы приняли политику разрешать пользователям жаловаться в LLVM, чтобы разработчики Clang меняли свое поведение. Также смотрите Как сказать Clang перестать притворяться другими компиляторами?