Wir haben eine Reihe von plattformübergreifenden CMake-Build-Skripten und unterstützen das Erstellen mit Visual C ++ und GCC .
Wir probieren Clang aus , aber ich kann nicht herausfinden, wie ich mit unserem CMake-Skript testen kann, ob der Compiler Clang ist oder nicht.
Was soll ich testen, um festzustellen, ob der Compiler Clang ist oder nicht? Wir verwenden MSVC
und CMAKE_COMPILER_IS_GNU<LANG>
testen derzeit Visual C ++ bzw. GCC.
__GNUC__
und _MSC_VER
, aber es kann die gleichen Programme wie jeder Compiler nicht verbrauchen. Das Erkennen von LLVM Clang und Apple Clang ist entscheidend, um sicherzustellen, dass der Code wie erwartet kompiliert und ausgeführt wird. Ich bin es so leid, mich mit Clangs BS zu beschäftigen, dass wir die Kompilierung unter Windows einfach unterbrechen . Wir haben die Richtlinie übernommen, Benutzer bei LLVM beschweren zu lassen, damit die Clang-Entwickler ihr Verhalten ändern. Siehe auch Wie man Clang sagt, er soll aufhören, sich als andere Compiler auszugeben?