一連のクロスプラットフォームCMakeビルドスクリプトがあり、Visual C ++およびGCCでのビルドをサポートしています。
Clangを試していますが、CMakeスクリプトでコンパイラがClangであるかどうかをテストする方法がわかりません。
コンパイラがClangかどうかを確認するには何をテストすればよいですか?現在Visual C ++とGCC を使用MSVC
しCMAKE_COMPILER_IS_GNU<LANG>
てテストしています。
__GNUC__
して_MSC_VER
、それがいずれかのコンパイラと同じプログラムを消費することはできません。LLVM ClangおよびApple Clangを検出することは、コードが期待どおりにコンパイルおよび実行されるようにするために重要です。ClangのBSに対処するのにうんざりしているので、Windowsでコンパイルを中断するだけです。ユーザーがLLVMに文句を言うことを許可するポリシーを採用して、Clang開発者が動作を変更するようにしました。他のコンパイラを装うのをやめるようにClangに指示する方法