The 8.0 release of clang/llvm moved the VirtualFileSystem.h header to from clang to llvm. This change causes a compile error, causing perf to not detect clang/llvm.
Fix by including the right header for the different versions of llvm, using the older header for llvm < 8, and the new header for llvm >= 8. Signed-off-by: Matthew Dawson <matt...@mjdsystems.ca> --- tools/build/feature/test-clang.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tools/build/feature/test-clang.cpp b/tools/build/feature/test-clang.cpp index a2b3f092d2f0..313ef1568880 100644 --- a/tools/build/feature/test-clang.cpp +++ b/tools/build/feature/test-clang.cpp @@ -1,10 +1,14 @@ // SPDX-License-Identifier: GPL-2.0 -#include "clang/Basic/VirtualFileSystem.h" #include "clang/Driver/Driver.h" #include "clang/Frontend/TextDiagnosticPrinter.h" #include "llvm/ADT/IntrusiveRefCntPtr.h" #include "llvm/Support/ManagedStatic.h" #include "llvm/Support/raw_ostream.h" +#if LLVM_VERSION_MAJOR >= 8 +#include "llvm/Support/VirtualFileSystem.h" +#else +#include "clang/Basic/VirtualFileSystem.h" +#endif using namespace clang; using namespace clang::driver; -- 2.21.0